@charset "UTF-8";

.all_wrapper {
  display: block;
}

.left_container {
  width: 100%;
}

#header {
  padding-top: 0;
  width: 100%;
  height: 60px;
  z-index: 9999;
  left: 0;
  top: 0;
}

.header_logo {
  width: 75%;
  margin: 0;
  padding-top: 14px;
}

.humberger {
  top: 10px;
  left: auto;
  right: 0;
  width: 125px;
}

.humberger span {
  width: 32px;
  left: 85px;
}

.humberger.is-open span:nth-of-type(1) {
  -webkit-transform: translate(-50%, 8px) rotate(-40deg);
  transform: translate(-50%, 8px) rotate(-40deg);
}

.humberger span:nth-of-type(2) {
  top: 35%;
}

.humberger span:nth-of-type(3) {
  bottom: 7px;
}

.humberger::after {
  left: 64px;
  bottom: -21px;
}

.g-navi {
  width: 100%;
}

.g-navi .navi-inner {
  padding: 65px 20px 20px 50px;
}

.g-navi .h-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 20px;
}

.main-visual {
  background: url(../images/main.jpg) no-repeat 22% center/cover;
}

.main_img {
  position: absolute;
  top: 70px;
  right: 70%;
}

.main_img img {
  width: 80%;
}

.main_txt {
  top: 50%;
  left: 0;
  right: 0;
  width: 95%;
  margin: auto;
  background-color: rgba(255, 255, 255, 0.7);
  padding: 20px;
}

.main_txt01 {
  font-size: 35px;
  line-height: 1.5;
}

.main_txt02 {
  font-size: 15px;
  line-height: 1.5;
}

.contents01 {
  padding: 30px 0;
}

.sub-title01 {
  padding-top: 30px;
  margin-bottom: 40px;
  font-size: 18px;
}

.top_inner {
  width: 95%;
}

.mfp-img-mobile .mfp-image-holder {
  padding-left: 0;
  padding-right: 0;
}

.mfp-img-mobile img.mfp-img {
  padding: 0;
}

.mfp-img-mobile .mfp-figure:after {
  top: 0;
  bottom: 0;
}

.mfp-img-mobile .mfp-figure small {
  display: inline;
  margin-left: 5px;
}

.mfp-img-mobile .mfp-bottom-bar {
  background: rgba(0, 0, 0, 0.6);
  bottom: 0;
  margin: 0;
  top: auto;
  padding: 3px 5px;
  position: fixed;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.mfp-img-mobile .mfp-bottom-bar:empty {
  padding: 0;
}

.mfp-img-mobile .mfp-counter {
  right: 5px;
  top: 3px;
}

.mfp-img-mobile .mfp-close {
  top: 0;
  right: 0;
  width: 35px;
  height: 35px;
  line-height: 35px;
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  text-align: center;
  padding: 0;
}

.mfp-arrow {
  -webkit-transform: scale(0.75);
  transform: scale(0.75);
}

.mfp-arrow-left {
  -webkit-transform-origin: 0;
  transform-origin: 0;
}

.mfp-arrow-right {
  -webkit-transform-origin: 100%;
  transform-origin: 100%;
}

.mfp-container {
  padding-left: 6px;
  padding-right: 6px;
}

.contents02 {
  padding: 30px 0;
}

.cont02_layout {
  position: static;
  width: 100%;
  height: auto;
  margin-bottom: 20px;
}

.cont02_layout_txt {
  position: static;
}

.sub-title02 {
  margin-bottom: 10px;
  font-size: 40px;
}

.cont02_layout_catch {
  font-size: 15px;
}

.contents03 {
  padding: 30px 0;
}

.flex-container {
  display: block;
}

.cont03_top {
  margin-bottom: 30px;
}

.cont03_topics {
  width: 100%;
}

.cont03_topics_txt {
  padding-top: 0;
  overflow: hidden;
  font-size: 14px;
  line-height: 1.5;
}

.txt-bnr {
  width: 100%;
  display: block;
  margin-bottom: 20px;
}

.txt-bnr_img {
  text-align: center;
  margin-bottom: 20px;
}

.txt-bnr_text01 {
  width: 100%;
}

.txt-bnr_text02 {
  width: 100%;
}

.txt-bnr_text {
  position: static;
}

.txt-bnr_text .text-btn01 {
  position: static;
  margin: auto;
  width: 80px;
  height: 24px;
}

.contents04 {
  padding: 30px 0;
}

.case_bnr-list {
  display: block;
}

.case_bnr-list li {
  margin: 0 auto 20px;
  width: 280px;
}

.contents05 {
  padding: 30px 0;
}

.cont05_bnr {
  margin-bottom: 30px;
  padding: 15px;
  background: none;
}

.cont05_bnr_img {
  margin-bottom: 20px;
  width: 100%;
  height: 200px;
  background: url(../images/cont05_img01.png) no-repeat center center/cover;
}

.sub-title04 {
  font-size: 18px;
  margin-bottom: 30px;
}

.sub-title04::after {
  width: 100%;
}

.contents06 {
  padding: 30px 0;
}

.cont06_contact {
  width: 100%;
  margin-bottom: 30px;
}

.cont06_contact .text-btn02 {
  margin: auto;
  right: 0;
}

.footer_bnr_list {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: 0 auto;
}

.footer_bnr_list li {
  margin: 0 0 16px;
  width: 48%;
}

.footer_navi_list li {
  display: block;
  margin-right: auto;
  line-height: 1;
}

.footer_navi_list li a {
  display: block;
  padding: 10px;
  border-bottom: 1px dotted #ddd;
}

/*------------
下層レイアウト
--------------*/
#under-middle {
  margin-bottom: 0;
}

#under-middle .contents {
  width: 95%;
}

.page-title {
  padding: 90px 0 30px;
}

.page-title h2 {
  font-size: 25px;
}

.breadcrumb ul {
  text-align: center;
}

.catch-copy01 {
  font-size: 18px;
  padding-left: 35px;
}

.catch-copy01::before {
  width: 30px;
  top: 12px;
}

.name02 span {
  margin-left: 15px;
}

.under_sub-title01 {
  padding-top: 30px;
  font-size: 18px;
}

.under_sub-title02 {
  font-size: 18px;
  padding-bottom: 10px;
}

.under_topics_thumb {
  margin: 0 auto 15px;
  text-align: center;
  float: none;
  width: 100%;
}

.category-navi {
  width: 95%;
}

/*------------
下層パーツ
--------------*/
.short {
  margin: 0 0 30px;
}

.tall {
  margin: 0 0 60px;
}

.col2>li {
  margin: 0 0 25px;
  width: 100%;
}

.col3 {
  margin: 0;
}

.col3>li {
  margin: 0 0 25px;
  width: 100%;
}

.col4 {
  margin: 0;
}

.col4>li {
  margin: 0 0 25px;
  width: 100%;
}

.col2-col2,
.col3-col2,
.col4-col2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.col2-col2>li,
.col3-col2>li,
.col4-col2>li {
  margin: 0 auto 15px;
  width: 49%;
}

.l-imgR,
.l-imgL {
  display: block;
}

.l-imgR .l-ttl,
.l-imgL .l-ttl {
  font-size: 22px;
  padding: 0 0 20px;
  margin: 0 0 20px;
}

.l-imgR .l-img,
.l-imgL .l-img {
  margin: 0 0 15px;
  text-align: center;
  width: 100%;
}

.l-imgR .l-img {
  margin: 0 0 15px;
}

.l-imgL.l-imgL02 .l-img,
.l-imgR.l-imgR02 .l-img {
  width: 100%;
}

/*------------
Commmon
--------------*/
.pc-only {
  display: none !important;
}

.sp-only {
  display: block;
}

.sp-tac {
  text-align: center !important;
}

.sp-tar {
  text-align: right !important;
}

.sp-tal {
  text-align: left !important;
}

.mb40-20 {
  margin-bottom: 30px !important;
}

.mb50-30 {
  margin-bottom: 30px !important;
}

.sp-map {
  position: relative;
  padding-bottom: 56.25%;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
}

.sp-map iframe,
.sp-map object,
.sp-map embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.under_table02 table {}

.under_table02 table th {
  display: block;
}

.under_table02 table td {
  display: block;
  margin-bottom: 20px;
}

.contact-form {
  width: 100%;
}

.contact-form table th {
  width: 100%;
  text-align: center;
  display: block;
}

.contact-form table td {
  width: 100%;
  display: block;
  padding: 10px 0;
}

.contact-form .submit-btn [type="submit"] {
  padding: 15px;
  width: 250px;
}

.contact-form .submit-btn [type="submit"].back-btn {
  margin-right: 25px;
}

/* カレンダーレスポンシブ */
.g-calendar {
  padding-bottom: 100%;
}

.under_sub-title03 {
  font-size: 16px;
  padding-bottom: 10px;
}

/*＝＝＝＝＝＝＝＝＝
 プロフィール
＝＝＝＝＝＝＝＝＝*/

.profile_qr_ttl img {
  width: 150px;
}

.profile_qr_list li {
  width: 100px;
  margin-left: 15px;
}
