@charset "UTF-8";
@import "base.css";
@import "fonts.css";
@import url('https://fonts.googleapis.com/css2?family=Jost:ital,wght@0,100..900;1,100..900&display=swap');
/*==========================================================================*/
/*                                                                          */
/*    base.css  --> スタイルの初期設定を行うため、変更しないで下さい。      */
/*    fonts.css --> フォントの初期設定を行うため、変更しないで下さい。      */
/*                                                                          */
/*==========================================================================*/

/*==========================================================================*/
/*                           Common-Setting                                 */
/*==========================================================================*/
/* 基本タグのフォントサイズを指定（12px -> 120% or 1.2em ） */
h1, h2, h3, h4, h5, h6, input, button, textarea, select, p, blockquote, th, td, pre, address, li, dt, dd {
font-size: 160%;
-webkit-text-size-adjust: none;
font-weight: 400;
}
html:focus-within {scroll-behavior: smooth;}
img {vertical-align: middle;max-width: 100%;flex-shrink: 0;height: auto;}
*,
::before,
::after{box-sizing:border-box;outline: none;}
select { visibility: visible !important; }
a{transition:all ease 0.3s;text-decoration:none;color: var(--txt);}
a[href^="tel:"] {word-break: keep-all;}
/*==========================================================================*/
/*                               Container                                  */
/*==========================================================================*/
html{background:#fff}
body{color:var(--txt);-webkit-text-size-adjust:none;min-width:320px;font-family: var(--font-main)}
#fmail select,
#fmail input,
#fmail textarea{font-family: var(--font-main)}
table {width: 100%}
h1,h2,h3,h4,h5,h6{line-height: 1.5;}
p,
dd,
dt,
li,
th,
td,
address{line-height: 1.8em;letter-spacing: 0.05em;}
p {margin: 0 0 1.5em;}
p:last-child{margin-bottom: 0}

.bold{font-weight: bold;}
.left{text-align:left}
.right{text-align: right;}
.auto{margin-left: auto; margin-right: auto;}
.red{color: var(--red);}
.txt_line{text-decoration: underline;}
.m0a{display: block;margin: 0 auto;}
.f_big{font-size: 150%;}
.f_sm{font-size: 80%;}
*[class$="_en"], .en {font-family: var(--f-en);}

:root {
  --font-main: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif ; 
	--f-ja: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
	--f-en: "Jost", sans-serif;
  --txt: #333;     
  --mcolor: #267B7F;
  --scolor: #746C63; 
  --site_size: 1230px;
  
  --gray: #A2A2A2;
	--light: #E2E2E2;
	--green-dark: #9FAAA5;
  --blue: blue;
  --red: red;
}

#wrapper{min-width: 1260px;overflow:hidden;margin:0 auto}
.inner{width: var(--site_size);margin:0 auto;position:relative;max-width: 100%;padding: 0 15px;}

/*==========================================================
                       H E A D E R  
==========================================================*/
header{position: relative; z-index: 10;}
h1 { font-size: 14px; padding: 0; color: #000; margin: 10px 0 10px 2px; font-family: var(--f-ja); letter-spacing: 0.05em; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;transition: all 0.3s; }
#logo {margin: 0;}
.h_box{width:100%;position: absolute;padding: 14px 120px 0 200px;}
.h_inner{display:flex;justify-content:space-between;align-items: flex-end;height: 100%;width: 100%;padding: 0;transition: all 0.3s;}
.h_right { margin: 0 0 -8px; }

.h_contact{display: flex;align-items: center;}
.h_contact p {margin-bottom: 0;width: 280px;}
.h_contact p:not(:last-child) {margin-right: 32px;}
.h_contact p a {display: flex;justify-content: center;align-items: center;text-align: center;color: #fff;background: var(--mcolor);font-size: 14px;font-family: var(--f-ja);letter-spacing: 0.1em;height: 72px;line-height: 2em;padding: 0 0 2px;}
.h_contact p a .lager {display: block;font-size: 128.58%;letter-spacing: 0.1em;}
.h_contact p:nth-child(2) a {background-color: var(--scolor);}

/* HAMBUGER BUTTON */
.hamburger { font: inherit; display: block; overflow: visible; margin: 0; padding: 10px 8px 5px; cursor: pointer; transition-timing-function: linear; transition-duration: .15s; transition-property: opacity, filter; text-transform: none; color: inherit; border: 0; width: 80px; height: 80px; background: #EFEFEF; position: absolute; right: 0; top: 0; display: flex;justify-content: center;align-items: center;text-align: center;flex-direction: column;font-size: 16px;font-family: var(--f-en);font-weight: 300;letter-spacing: 0.05em;transition: all 0.3s;z-index: 20;}
.hamburger-box{position:relative;display:inline-block;width:46px;height:15px;margin: 3px 0 4px;}
.hamburger-inner{top:50%;display:block;margin-top:-2px}
.hamburger-inner,
.hamburger-inner::after,
.hamburger-inner::before{position:absolute;width:37px;height:1px;transition:all ease 0.15s;background-color:#333}
.hamburger-inner::after,
.hamburger-inner::before{display:block;content:""}
.hamburger-inner::before{top:-8px;width: calc(100% + 9px);}
.hamburger-inner::after{bottom:-8px;width: calc(100% - 9px);}
.hamburger--3dxy .hamburger-box{perspective:80px}
.hamburger--3dxy .hamburger-inner{transition:transform .15s cubic-bezier(0.645,0.045,0.355,1),background-color 0 cubic-bezier(0.645,0.045,0.355,1) .1s}
.hamburger--3dxy .hamburger-inner::after,
.hamburger--3dxy .hamburger-inner::before{transition:transform cubic-bezier(0.645,0.045,0.355,1) .1s}
.hamburger--3dxy.is_active .hamburger-inner{transform:rotateX(180deg) rotateY(180deg);background-color:transparent!important;margin-left: 9px;}
.hamburger--3dxy.is_active .hamburger-inner::before{transform:translate3d(0,8px,0) rotate(20deg)}
.hamburger--3dxy.is_active .hamburger-inner::after{transform:translate3d(0,-8px,0) rotate(-20deg);width: calc(100% + 9px);}
.hamburger .txt {position: relative;}
.hamburger .txt >span.close{position: absolute;width: 100%;height: 100%;top: 0;left: 0;visibility: hidden;}
.hamburger--3dxy.is_active .txt >span.close{opacity:1;visibility: visible;}
.hamburger--3dxy.is_active .txt >span.open{opacity:0;visibility: hidden;}

nav {position: fixed;width: 100%;height: 100%;top: 0;left: 0;z-index: 10;backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); display: none;}
.nav_main { width: 953px; margin: 0 0 0 auto; position: relative; background: url("../images/nav_bg.jpg");padding: 140px 135px 130px 140px;}
.nav_main:after {content: '';position: absolute;width: 100%;height: 100%;z-index: -2;background: var(--green-dark);top: 50px;left: -70px;pointer-events: none;}
.nav_en { margin: 0; font-size: 150px; line-height: 1em; position: absolute; font-weight: 100; font-style: italic; color: #DCE2DF; mix-blend-mode: multiply; -webkit-writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-text-orientation: mixed; -moz-text-orientation: mixed; -ms-text-orientation: mixed; text-orientation: mixed; -ms-writing-mode: tb-rl; height: 100%; left: -43px; top: 50px; text-align: center; letter-spacing: 0;}
.nav_list { grid-column-gap: 80px; grid-row-gap: 42px; display: inline-grid; grid-auto-flow: column; grid-template-columns: repeat(auto-fit, 4.6em); max-width: -webkit-fill-available; font-family: var(--f-ja);}
.nav_list> li:nth-child(1) { grid-area: 1 / 1 / 3 / 2; }
.nav_list> li:nth-child(2) { grid-area: 1 / 2 / 2 / 4; width: 412px;}
.nav_list> li:nth-child(3) { grid-area: 2 / 2 / 3 / 4;width: 547px; }
.nav_list li.parent .sub ul {display: flex; flex-direction: column; flex-wrap: wrap;height: 175px;}
.nav_list li.parent:last-child .sub ul {height: 105px;}
.nav_list> li>*:nth-child(1) {font-size: 18px;font-weight: 700;letter-spacing: 0.1em;color: #fff;}
.nav_list li.parent .sub ul li a {position: relative;padding-left: 24px;color: #fff;display: inline-block;}
.nav_list li.parent .sub ul li a:before {content: '';position: absolute;width: 14px;height: 1px;background: #fff;left: 0;top: 11px;}
.nav_list li.parent .sub ul li { margin: 0 0 6px; }
.nav_list> li>.sub_btn { display: block; margin: 0 0 18px; }
.nav_list a {position: relative;display: inline-block;}
.nav_list a:after {content: ''; position: absolute;width: 0;height: 1px;background: #fff;left: 0;bottom: 5px;transition: all 0.3s;}
.nav_list .sub a:after {left: 24px;}
.nav_list> li:nth-child(2) .sub ul li:nth-child(-n+5) {margin-right: 63px;}
.nav_list li.parent:last-child .sub ul li:nth-child(-n+3) { margin-right: 63px; }
.noscroll {overflow: hidden;}
header.fixed .h_box { position: fixed; background: rgba(255, 255, 255, 0.95); padding: 15px 24px 15px 100px;display: flex;align-items: center;}
header.fixed h1 {visibility: hidden;margin: 0;height: 0;}
header.fixed #logo {width: 322px;}
body:not(.noscroll) header.fixed .hamburger {position: relative;margin-left: 40px;}
header.fixed .h_inner {align-items: center;}
header.fixed .h_right {margin: 0;}
/*==========================================================
                  M A I N    V I S U A L
==========================================================*/
main{position: relative;padding-top: 190px;z-index: 2;word-break: break-all;}
.mv{position: relative;padding: 0 0 0 200px;}
.mv:after {content: '';position: absolute;width: 100%;height: 1284px;top: 77px;right: 136px;z-index: -2;pointer-events: none;background: url("../images/idx_main_bg.jpg");}
.mv:before {content: '';position: absolute;width: 100%;height: 80%;background: #B5BCB9;left: calc(50% - 95px);top: -190px;z-index: -1;pointer-events: none;}
.mv_en { margin: 0; position: absolute; -webkit-writing-mode: vertical-rl; -moz-writing-mode: vertical-rl; -ms-writing-mode: vertical-rl; writing-mode: vertical-rl; -webkit-text-orientation: mixed; -moz-text-orientation: mixed; -ms-text-orientation: mixed; text-orientation: mixed; -ms-writing-mode: tb-rl; font-size: 150px; color: #E2E2E2; white-space: nowrap; line-height: 1em; font-weight: 100; font-style: italic; mix-blend-mode: multiply; left: -23px; top: 2px; letter-spacing: 0; }
.mv .inner {width: 100%;padding: 0;}
.mv_bg{position:relative;opacity:0;transition:all .3s;}
.mv_bg.init{opacity:1}
.main_slider{position:absolute;top:0;left:0;width:100%;height:100%;margin: 0!important;}
.mv_bg,.main_slider .slide_item{width:100%;height:759px}
.main_slider .slide_item{background: #535353;}
.main_slider .slide_item .bg{position:absolute;width:100%;height:100%;z-index:0;top:0;left:0;background-size:cover;background-position:center;mix-blend-mode: soft-light;}
/*.main_slider .slide_item.zoomed .bg{animation-name:zoomImg;animation-duration:6s;animation-timing-function:linear;animation-fill-mode:forwards}*/
.main_slider .slick-dots {left: -52px;bottom: 0;width: auto;}
.main_slider .slick-dots li {width: 12px;height: 12px;margin: 16px 0 0;display: block;}
.main_slider .slick-dots li.slick-active button { background: #6E9193; cursor: default;}
.main_slider .slick-dots li button {width: 100%;height: 100%;padding: 0;background: #C8C8C8;}
.main_slider .slick-dots li button::before {display: none;}


.mv_main { position: absolute; width: 100%; height: 100%; left: 0; display: flex; flex-direction: column; justify-content: center; color: #fff; font-family: var(--f-ja); z-index: 3;top: 0;padding: 15px 0 0 159px;}
.mv_main h2 {font-size: 48px;letter-spacing: 0.2em;line-height: 1.95em;margin-bottom: 36px;}
.mv_txt { display: flex; }
.mv_txt li {display: flex;height: 63px;justify-content: center;align-items: center;text-align: center;border-right: 1px solid #C8C8C8;padding-right: 52px;margin-right: 49px;font-size: 18px;line-height: 1.5em;}
.mv_txt li:last-child {border-right: none;margin: 0;padding: 0;}

/*@keyframes zoomImg { 0%{transform:scale(1.2)} 100%{transform:scale(1.0)}}*/
.idx_news { width: 817px; position: absolute; right: 0; background: #A2A2A2; bottom: -60px; padding: 41px 96px 32px 70px; z-index: 3;color: #fff;}
.idx_news_ttl { display: flex; align-items: center;margin: 0 0 30px;color: #EFEFEF; }
.idx_news_ttl .en {display: flex;align-items: center;overflow: hidden;font-size: 112.5%;letter-spacing: 0.05em;width: 98px;margin-right: 72px;}
.idx_news_ttl .en:after {content: '';position: relative;flex: 1;height: 1px;background: #EFEFEF;margin-left: 16px;top: -1px;}
.idx_news_ttl .ttl {font-size: 112.5%;font-family: var(--f-ja);letter-spacing: 0.1em;color: #fff;}
.idx_news_item { display: flex; align-items: center;margin: 0 0 16px; }
.idx_news_item .cate {border: 1px solid #fff;height: 30px;width: 90px;letter-spacing: 0.1em;font-size: 93.75%;padding: 0;display: inline-flex;justify-content: center;align-items: center;text-align: center;flex-shrink: 0;margin-right: 25px;font-family: var(--f-ja);line-height: 1em;}
.idx_news_item .date { font-family: var(--f-ja);flex-shrink: 0;width: 117px;}
.idx_news_item .ttl { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;color: #fff;text-decoration: underline;text-underline-offset: 2px;}
.idx_news .btn a {width: 160px;height: 47px;color: #fff;border-color: #fff;background-image: url("../images/ic_arr_white.svg");padding: 5px 13px 3px;background-size: 21px auto;background-position: right 13px center}
.idx_news .btn {position: absolute;right: 100px;top: 32px;}
/*==========================================================
                M A I N    C O N T E N T
==========================================================*/
/* DEFAULT TITLE */
.idx_ttl_en { color: #6E9193; display: flex; align-items: center; font-size: 18px;margin: 0 0 26px;font-family: var(--f-en);}
.idx_ttl_en:after {content: '';position: relative;display: inline-block;width: 37px;background: #6E9193;margin-left: 16px;height: 1px;}
.idx_ttl {font-family: var(--f-ja);font-size: 40px;letter-spacing: 0.1em;margin: 0 0 36px;line-height: 1.8em;}
.idx_ttl .small {display: block;font-size: 80%;letter-spacing: 0.1em;}
/* DEFAUTL NAME BUTTON */
.btn a{width: 400px; height: 56px; display: flex; align-items: center; background: url('../images/ic_arr.svg') no-repeat right 24px center /22px; text-decoration: none;padding: 13px 24px 10px;border: 1px solid #9CA29F}
.btn.center a{margin-left: auto; margin-right: auto;}
.btn_box {display: flex;justify-content: center;flex-wrap: wrap;}
.btn_box .btn:not(:last-child) {margin-right: 40px;}
.btn.white a {border-color: #fff;color: #fff;background-image: url("../images/ic_arr_white.svg");}

/*==================== SEC01 ===================*/
.sec01 { padding: 130px 0 78px; }
.sec01_add { display: flex; align-items: center;margin: 0 0 33px; }
.sec01_add .txt  {flex-shrink: 0;margin-right: 24px;}
.sec01_txt { display: flex; align-items: center; font-family: var(--f-ja);margin: 0 0 16px; }
.sec01_txt:after {content: '';position: relative;display: inline-block;flex: 1;margin-left: 12px;background: #C8C8C8;height: 1px;}
.sec01_main { display: flex; justify-content: space-between; align-items: flex-start; margin: 0 0 46px;}
.sec01_calendar_txt { line-height: 2.3em; }
.sec01_calendar { margin: -8px 0 12px; }
.sec01_main_right { width: 561px; }
.sec01_info { display: flex; justify-content: space-between; align-items: flex-start; }
.sec01_map { width: 592px; }
.sec01_map iframe { width: 100%;height: 281px; }
.sec01_info_main {width: 561px;}
.sec01_info_ttl { font-size: 28px; color: #000; font-family: var(--f-ja); margin: -7px 0 22px;}
.sec01_info_txt { margin: 0 0 35px; }
.sec01_info_txt li { position: relative; font-family: var(--f-ja); color: #000; margin: 0 0 3px;padding-left: 16px; }
.sec01_info_txt li:before {position: absolute;content: '';width: 6px;height: 6px;background: #6E9193;left: 0;top: 10px;}
.sec01_info_main .btn a {width: 265px;height: 56px;}
.sec01_info_main .btn_box {justify-content: space-between;}
.sec01_info_main .btn:not(:last-child) {margin: 0;}
.sec01_calendar_txt:before {content: '';position: relative;display: inline-block;background: #919191;width: 12px;height: 10px;clip-path: polygon(50% 0%, 0% 100%, 100% 100%);margin: 0 5px 0 0;}
/*==================== SEC02 ===================*/
.sec02 { padding: 38px 0 156px;position: relative;max-width: 1920px; margin: 0 auto;}
.sec02 .inner {display: flex;justify-content: space-between;align-items: flex-start;}
.sec02_info { flex-shrink: 0; width: 570px;margin-top: 77px; }
.sec02 .idx_ttl_en { margin: 0 0 14px; }
.sec02_txt { font-size: 18px; font-family: var(--f-ja); }
.sec02_main { flex: 1; padding: 60px 0 58px 88px; position: relative;color: #fff; }
.sec02_main:after {content: '';position: absolute;width: 100vw;height: 100%;min-width: 150%;left: 0;top: 0;z-index: -2;pointer-events: none;background: var(--green-dark);}
.sec02_list li { font-family: var(--f-ja); position: relative; padding-left: 22px;margin: 0 0 23px;line-height: 1.85em;}
.sec02_list li:last-child {margin-bottom: 0;}
.sec02_list li:before {content: '';position: absolute;width: 6px;height: 6px;background: #fff;left: 0;top: 11px;}
.sec02_list li .lager {font-weight: 600;background: url("../images/sec02_line.png") repeat-x left bottom/3px auto;padding: 0 0 4px;}
.sec02_img { margin: -171px 0 0 -7px; width: calc(100vw / 2.33)}
/*==================== SEC03 ===================*/
.sec03 { position: relative; padding: 141px 0 156px;max-width: 1920px; margin: 0 auto; }
.sec03:after {content: '';position: absolute;width: 100%;background: #F8F8F8;top: 0;right: calc(50% - 600px);height: 100%;z-index: -3;pointer-events: none;}
.sec03_img_top { margin: 0; position: absolute; right: -8px; top: -191px; width: calc(100vw /8.34);max-width: 230px;}
.sec03 .idx_ttl_en { margin: 0 0 19px; }
.sec03_img_doctor { margin: 0; position: absolute; top: 3px; width: calc(100vw / 2.1); left: 648px; }
.sec03_txt { width: 568px; color: #171717; margin: 0 0 51px; }
.sec03_txt p:not(:last-child) { margin-bottom: 1.8em; }
.sec03_main .idx_ttl {margin: 0 0 51px;}
.sec03_name_doctor { width: 572px; text-align: right; font-size: 25px; font-family: var(--f-ja); color: #000000; line-height: 1.97em;letter-spacing: 0.15em;margin: 0; }
.sec03_name_doctor .small {font-size: 96%;}
.sec03_name_doctor .lager { margin: 0 11px 0 2px; font-size: 120%; letter-spacing: 0.15em; }
.sec03_main { position: relative; margin: 0 0 94px; min-height: 713px; }
.sec03_name_img { position: absolute; right: 100%; bottom: -44px; width: calc(100vw / 5.3);max-width: 360px; }
.sec03_info { display: flex; justify-content: space-between; margin: 0 0 90px;padding-right: 80px;}
.sec03_info dl { width: 560px; }
.sec03_info dl:nth-child(2) { width: 480px; }
.sec03_info dt { font-size: 24px; letter-spacing: 0.15em; font-family: var(--f-ja);display: flex;align-items: center;margin: 0 0 9px;}
.sec03_info dt:after {content: '';position: relative;display: inline-block;flex: 1;height: 1px;background: #C8C8C8;margin-left: 24px;}
.sec03_info dd p {line-height: 2.5em;margin: 0;}
.sec03_info ul li {line-height: 2.5em;position: relative;padding-left: 17px;}
.sec03_info ul li:before {content: '';position: absolute;width: 6px;height: 6px;background: #6E9193;left: 0;top: 16px;}
.sec03_list { display: flex; justify-content: space-between; max-width: 1920px; margin: 0 auto 72px; align-items: flex-start; }
.sec03_item { width: calc((100% - 100px) / 2); position: relative; color: #fff;}
.sec03_item:after {content: '';position: absolute;width: 100%;height: calc(100% - 224px);bottom: 0;left: 0;background: #9FAAA5;z-index: -2;pointer-events: none;}
.sec03_item_img {width: calc(100% - 42px);margin: 0 0 33px -7px;}
.sec03_item_main { padding: 0 154px 60px 98px; position: relative;}
.sec03_item_ttl { text-align: center; font-size: 28px; font-family: var(--f-ja); letter-spacing: 0.05em; line-height: 1.8em;margin: 0 0 21px; }
.sec03_item:nth-child(2) .sec03_item_img {margin-right: -7px;margin-left: auto;}
.sec03_item:nth-child(2) .sec03_item_main { padding-right: 96px; padding-left: 155px; left: 0; }
.sec03_item:nth-child(2) { margin-top: 80px; }
.sec03_item_en { font-size: clamp(80px, calc(100vw/16), 120px);; margin: 0; white-space: nowrap; color: #EFEFEF; font-style: italic; font-weight: 100; line-height: 1em; position: absolute; right: -11px; top: -103px; mix-blend-mode: multiply;font-family: var(--f-en);}
/*==================== SEC04 ===================*/
.sec04 { padding: 1px 0 0; background: #9FAAA5; position: relative; margin-top: 395px; }
.sec04_img_top { margin: -252px calc((100% - min(100%, 1910px)) / 2 - 8px) 143px auto; width: calc(100vw / 1.424);max-width: 1348px; }
.sec04_en { margin: 0; position: absolute; left: calc((100% - min(100%, 1910px)) / 2 - 7px); color: #C8C8C8; font-style: italic; font-weight: 100; mix-blend-mode: multiply; line-height: 1em; top: 74px;font-size: clamp(16px, calc(100vw / 7.68), 250px);font-family: var(--f-en); }
.sec04_img_bot { margin: 0; position: absolute; left: calc((100% - min(100%, 1910px)) / 2 - 7px); width: calc(100vw / 4.61); bottom: 180px; z-index: 3;max-width: 416px; }
.sec04_ttl { font-size: 50px; font-family: var(--f-ja); color: #fff; letter-spacing: 0.1em; text-align: right; margin: 0 0 47px; display: flex; justify-content: flex-end; align-items: center; }
.ic_multi { margin: 0 40px 0 33px; }
.sec04_main { width: 853px; margin: 0 142px 0 auto; position: relative; z-index: 2; padding: 55px 0 65px;}
.sec04_main:after {content: '';position: absolute;width: 100vw;height: 100%;right: -142px;min-width: calc(100% + 142px);top: 0;background: #fff;z-index: -2;pointer-events: none;}
.sec04_main .idx_ttl { margin: 0 0 19px; }
.sec04_txt { color: #171717; }
.sec04_txt p:not(:last-child) { margin: 0 0 1.8em; }
/*==================== SEC05 ===================*/
.sec05 { position: relative; color: #fff;padding: 181px 0 0;max-width: 1920px;margin: 0 auto;margin-top: 223px;}
.sec05:after {content: '';position: absolute;width: 100vw;min-width: 1400px;height: 1109px;left: calc(100vw/16.95);top: 0;background: #A2A2A2;z-index: -3;pointer-events: none;}
.sec05_main { width: 600px; position: relative; min-height: 475px;margin-bottom: 81px;}
.sec05_img { margin: 0; position: absolute; left: calc(100% + 60px); width: calc(100vw / 2.13); top: 15px; }
.sec05_en { margin: 0; position: absolute; color: #C8C8C8; font-style: italic; font-weight: 100; text-align: right; right: -11px; top: -165px; line-height: 1em; mix-blend-mode: multiply;font-size: clamp(16px, calc(100vw / 7.68), 250px);font-family: var(--f-en); }
.sec05_main .idx_ttl .small { margin: 0 0 -2px 5px; white-space: nowrap; }
.sec05_main .idx_ttl { margin: 0 0 43px; }
.sec05_info_ttl { font-size: 28px; font-family: var(--f-ja); letter-spacing: 0.1em; position: relative; padding-left: 18px; margin: 0 0 45px; }
.sec05_info_ttl:before {content: '';position: absolute;width: 1px;height: calc(100% - 8px);background: #fff;left: 0;top:0;bottom: 0;margin: auto 0;}
.sec05_list { display: flex; justify-content: space-between;margin: 0 0 61px; }
.sec05_item { width: calc((100% - 120px) / 4); text-align: center;font-family: var(--f-ja);}
.sec05_info {position: relative;padding: 69px 0 72px;}
.sec05_info:after {content: '';position: absolute;width: calc(100vw - 170px);min-width: 1260px;height: 100%;background: url("../images/sec05_bg.png") no-repeat top center/cover;right: -188px; top: 0; z-index: -2; pointer-events: none;opacity: 0.97;}
.sec05_item_ttl { font-size: 22px; letter-spacing: 0.05em;white-space: nowrap;}
.sec05_item_img { text-align: center; margin: 0 0 22px; }
.sec05_txt { max-width: 540px; }
/*==================== SEC06 ===================*/
.sec06 {max-width: 1920px;margin: 0 auto;margin-top: 293px;position: relative;color: #fff;padding: 181px 0 0;}
.sec06:after {content: '';position: absolute;width: 100vw;min-width: 1400px;height: 1109px;right: calc(100vw/16);top: 0;background: #A2A2A2;z-index: -3;pointer-events: none;}
.sec06 .sec05_en {text-align: left;left: 15px;right: auto;top: -346px;font-family: var(--f-en);}
.sec06 .sec05_main { margin: 0 0 80px auto; }
.sec06 .sec05_img { left: auto; right: calc(100% + 58px); max-width: 900px;}
.sec06 .sec05_info:after { left: -187px; background-position: left top; background-image: url("../images/sec06_bg.png");}
.sec06 .sec05_info { padding-bottom: 47px; }
/*==================== SEC07 ===================*/
.sec07 {margin-top: 120px;background: url("../images/sec07_bg.png") no-repeat top center/cover;padding: 118px 0 120px;}
.sec07 .idx_ttl_en { margin: 0 0 19px; }
.sec07 .idx_ttl { line-height: 1.55em;margin: 0 0 51px; }
.sec07_list {display: grid; grid-template-columns: repeat(4, 1fr); grid-template-rows: repeat(2, 1fr); grid-column-gap: 67px; grid-row-gap: 56px;}
.sec07_item {height: 250px;}
.sec07_item  a {background: #746C63; text-align: center; color: #fff; display: flex; justify-content: center; align-items: center;height: 100%;padding: 26px 0 0;position: relative;}
.sec07_item a:after {content: '';position: absolute;width: 16px;height: 16px;border: 1px solid #fff;border-top: none;border-left: none;right: 15px;bottom: 15px;}
.sec07_item .ttl { display: block; font-family: var(--f-ja); font-weight: 600; letter-spacing: 0.05em; font-size: 125%; margin: 7px 0 21px;}
/*==================== SEC08 ===================*/
.sec08 {margin-top: 287px;position: relative;color: #fff;padding: 89px 0 118px;}
.sec08:after {content: '';position: absolute;width: 100%;height: 100%;background: #9FAAA5;right: calc(50% - 785px);top: 0;z-index: -3;pointer-events: none;}
.sec08_img_top { margin: 0; position: absolute; right: -8px; width: calc(100vw / 2.073); top: -167px; }
.sec08 .idx_ttl_en {color: #EFEFEF;margin: 0 0 24px;}
.sec08 .idx_ttl_en:after {background: #EFEFEF;}
.sec08 .idx_ttl { line-height: 1.57em; }
.sec08_main { display: flex; justify-content: space-between; align-items: flex-start; }
.sec08_list { margin: 14px 0 0; }
.sec08_list li { font-size: 20px; font-family: var(--f-ja); padding-left: 22px; margin: 0 0 22px; position: relative;}
.sec08_list li:last-child {margin-bottom: 0;}
.sec08_list li:before {content: '';position: absolute;width: 6px;height: 6px;background: #fff;left: 0;top: 15px;}
.sec08_list li .lager { font-weight: 600; background: #8b9b93; padding: 2px 6px; }
.sec08_info { width: 536px; margin-top: 14px;}
.sec08_txt { font-size: 22px; font-weight: 500; line-height: 1.5em; margin: 0 0 15px; }
.sec08_note { margin: 0 0 45px; }
.sec08_info_ttl { font-size: 24px; font-family: var(--f-ja); display: flex; align-items: center; margin: 0 0 20px;letter-spacing: 0.1em; }
.sec08_info_ttl:after {content: '';position: relative;display: inline-block;background: #fff;flex: 1;height: 1px;background: #fff;margin-left: 15px;}
/*==================== SEC09 ===================*/
.sec09 {background: url("../images/sec09_bg.jpg") no-repeat top center/cover;;margin-top: 120px;padding: 117px 0 120px;}
.sec09 .idx_ttl { margin: 0 0 46px; }
.sec09 .idx_ttl_en { margin: 0 0 18px; }
.sec09_list { display: flex; justify-content: space-between; align-items: flex-start;margin-bottom: 72px; }
.sec09_item { width: 380px;margin: 0 15px;}
.twentytwenty-wrapper { margin: 0 0 12px; }
.sec09_item_img {height: 252px!important;padding-top: 0;}
.sec09_item_img img {top: 0;width: 100%;height: 100%;object-fit: cover;}
.sec09_item_ttl { text-align: center; font-size: 18px; font-weight: 500; }
.sec09_item_ttl a { display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; }
.sec09_item_more { height: 50px; display: flex; justify-content: center; align-items: center; background: #fff; position: relative; font-family: var(--f-ja);cursor: pointer;transition: all 0.3s;margin: 0;order: 2;padding: 2px 0 0;}
.sec09_item_more .close {width: 100%;position: absolute;height: 100%;text-align: center;left: 0;top: 0;opacity: 0;visibility: hidden;display: flex; justify-content: center; align-items: center;}
.sec09_item_more:before,.sec09_item_more:after {content: '';position: absolute;height: 14px;width: 1px;background: #919191;right: 30px;top: calc(50% - 7px);transition: all 0.3s;}
.sec09_item_more:after {transform: rotate(90deg);}
.sec09_item_more.active:before {transform: rotate(90deg);}
.sec09_item_more.active .close {opacity: 1;visibility: visible;}
.sec09_item_more.active .open {opacity: 0;visibility: hidden;}
.sec09_item_info { background: #fff; padding: 33px 24px 18px;font-family: var(--f-ja);display: none; }
.sec09_item_info dt { background: #9FAAA5; text-align: center; color: #fff; padding: 4px 0 2px; line-height: 1.5em; }
.sec09_item_info dd { padding: 17px 0 27px; }
.sec09_item_info dd:last-child {border-bottom: 1px solid #C8C8C8;}
.sec09_item_main {display: flex;flex-direction: column;background: #fff;}
.sec09_item_more.active {margin-bottom: 25px;}
.sec09_item_top { display: flex; gap: 0; position: absolute; z-index: 20; top: 0; left: 0; width: 100%; }
.sec09_item_top > span { flex: 1; height: 34px; display: flex; justify-content: center; align-items: center; color: #ffffff; font-weight: bold; font-size: 17px; background: #9FAAA5; line-height: 1; position: relative; z-index: 1;font-family: var(--f-ja);letter-spacing: 0.1em;font-weight: 400; }
.sec09_item_top > span::after{width: var(--width-item);content: '';position: absolute;height: 100%;top: 0;z-index: -1;}
.sec09_item_top > span:nth-of-type(1)::after{background-color: #9FAAA5;left: 0;}
.sec09_item_top > span:nth-of-type(2)::after{background-color: #838E89;right: 0;}
.sec09_item_top > span.active{z-index: -1;}
.sec09_item_top > span.active::after{opacity: 1;}
.sec09_item_top > span:last-child {background: #838E89;}
/*==================== SEC10 ===================*/
.sec10 {margin-top: 120px;position: relative;color: #fff;padding: 117px 0 96px;}
.sec10:after {content: '';position: absolute;background: var(--green-dark);height: 100%;width: 100%;left: calc(50% - 740px);top: 0;z-index: -3;pointer-events: none;}
.sec10 .idx_ttl_en {color: #EFEFEF;margin: 0 0 20px;}
.sec10 .idx_ttl_en:after {background: #EFEFEF;}
.sec10_top { display: flex; justify-content: space-between; align-items: center;margin: 0 0 74px; }
.sec10_top_info { flex-shrink: 0;margin: 0 0 -8px; }
.sec10_top_txt { width: 540px;margin-top: 60px; }
.sec10 .idx_ttl {margin: 0;}
.sec10_main { position: relative; padding: 94px 0 12px;margin-bottom: 72px;}
.sec10_main:after { position: absolute;width: calc(100% + 500px);left: calc(50% - 890px);top: 0;z-index: -2;pointer-events: none;background: #B3BAB7;content: '';height: 100%;}
.sec10_list { display: flex; flex-wrap: wrap; align-items: flex-start;counter-reset: item10; }
.sec10_item { width: 488px; margin: 0 120px 83px 0; position: relative;counter-increment: item10;}
.sec10_item:before { counter-increment: div; content: counter(item10, decimal-leading-zero); font-size: 150px; line-height: 1em; color: #9FAAA5; position: absolute; letter-spacing: 0.05em; font-family: var(--f-en); font-weight: 200; mix-blend-mode: multiply; font-style: italic; top: 184px; left: -39px; }
.sec10_item:nth-child(2n) {margin-right: 0;}
.sec10_item:nth-child(3) {margin-left: auto;}
.sec10_main_ttl { font-size: 26px; letter-spacing: 0.15em; font-family: var(--f-ja); margin: 0 0 52px; position: relative;padding-left: 16px;}
.sec10_main_ttl:before {content: '';position: absolute;width: 1px;height: calc(100% - 5px);left: 0;top: 0;bottom: 0;margin: auto 0;background: #EFEFEF;}
.sec10_item_img { text-align: center; margin: 0 0 29px; }
.sec10_item_ttl { text-align: center; font-size: 28px; font-family: var(--f-ja); letter-spacing: 0.05em; margin: 0 0 20px; }
.sec10_item_txt { line-height: 1.5em; }
/*==================== SEC11 ===================*/
.sec11 {margin-top: 136px;position: relative;padding: 92px 0 81px;}
.sec11:after {content: '';position: absolute;width: 1482px;height: 100%;z-index: -1;left: 50%;transform: translateX(-50%);background: #F8F8F8;top: 0;pointer-events: none;}
.sec11_en { margin: 0; position: absolute; line-height: 1.05em; color: #E2E2E2; font-weight: 100; font-style: italic; left: calc(50% - 44px); white-space: nowrap; top: -61px; letter-spacing: 0;font-size: clamp(16px, calc(100vw / 14.22), 135px);font-family: var(--f-en); }
.sec11 .idx_ttl .small { line-height: 1.8em; }
.sec11 .idx_ttl_en { margin: 0 0 21px; }
.sec11 .idx_ttl { margin: 0 0 45px; }
.sec11_main { display: flex; justify-content: space-between; align-items: flex-start; }
.sec11_txt p:not(:last-child) { margin-bottom: 1.8em; }
.sec11_txt {width: 560px;position: relative;}
.sec11_txt:after {content: '';position: absolute;width: 1px;height: calc(100% - 9px);background: #C8C8C8;top: 4px;left: calc(100% + 93px);}
.sec11_info { width: 456px; }
.sec11_info_ttl { font-size: 24px; font-family: var(--f-ja); margin: -1px 0 19px; }
.sec11_info_txt li { font-size: 18px; font-family: var(--f-ja); padding-left: 22px; margin: 0 0 15px;position: relative;white-space: nowrap;}
.sec11_info_txt li:last-child {margin-bottom: 0;}
.sec11_info_txt li:before {content: '';position: absolute;width: 6px;height: 6px;background: #6E9193;left: 0;top: 12px;}
/*==================== SEC12 ===================*/
.sec12 {padding: 120px 0;overflow: hidden;}
.sec12_item {margin: 0 71px 0 0;}
.sec12_item.itm_odd {margin-top: 127px;}
/*==================== SEC13 ===================*/
.sec13 {background: url("../images/sec13_bg.jpg") no-repeat top center/cover;color: #fff;padding: 132px 0 112px;}
.sec13_ttl { display: flex; align-items: center; margin: 0 0 59px;}
.sec13_ttl .en { font-size: 112.5%; color: #EFEFEF; display: flex; align-items: center; width: 98px; margin-right: 32px; letter-spacing: 0.05em;}
.sec13_ttl .en:after {content: '';position: relative;display: inline-block;background: #EFEFEF;flex: 1;margin-left: 16px;height: 1px;}
.sec13_ttl .jp {font-size: 250%;font-family: var(--f-ja);letter-spacing: 0.1em;}
.sec13_main { display: flex; justify-content: space-between; align-items: flex-start; }
.sec13_cate { width: 210px; position: relative; }
.sec13_cate li {display: flex;height: 48px;border: 1px solid #F1F2F1;justify-content: center;align-items: center;text-align: center;font-size: 18px;font-family: var(--f-ja);margin-bottom: 20px;cursor: pointer;transition: all 0.3s;padding: 4px 0 0;}
.sec13_info { width: 765px;min-height: 365px;position: relative;}
.sec13_info:before {content: '';position: absolute;width: 1px;height: calc(100% - 8px);background: #D0D6D4;top: 0;left: -100px;}
.sec13_list {display: none;}
.sec13_list.current{display: inherit;}
.sec13_cate li:after {content: '';position: absolute;width: 9px;height: 16px;left: calc(100% + 20px);background: #fff;clip-path: polygon(100% 0, 0 50%, 100% 100%);transition: all 0.3s;opacity: 0;}
.sec13_cate li.current:after {left: calc(100% + 16px);opacity: 1;}
.sec13_cate li.current {cursor: default;}
.sec13 .btn a {width: 210px;}
.sec13_list li {display: flex;align-items: center;font-size: 18px; font-family: var(--f-ja);margin-bottom: 39px;}
.sec13_list li:last-child {margin-bottom: 0;}
.sec13_list li .cate {width: 120px;flex-shrink: 0;border: 1px solid #F1F2F1;display: flex;justify-content: center;align-items: center;text-align: center; height: 40px;padding: 3px 0 0;margin-right: 20px;}
.sec13_list li .date {width: 129px;flex-shrink: 0;}
.sec13_list li .ttl {display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden;color: #fff;text-decoration: underline;text-underline-offset: 2px;}
.sec13 .btn { position: absolute; bottom: 8px; }

/*==========================================================
                        F O O T E R
==========================================================*/
footer{position: relative;z-index: 3;padding-top: 150px;}

.ft_top{position: relative;padding: 120px 0 372px;}
.ft_top:after {content: '';position: absolute;width: 100%;height: 100%;background: #F8F8F8;top: 0;right: calc(50% - 840px);z-index: -3;pointer-events: none;}
.ft_info { display: flex; justify-content: space-between; align-items: flex-end; margin: 0 0 105px;}
.ft_info_txt {display: flex;font-size: 18px;font-family: var(--f-ja);line-height: 1.5em;text-align: center;}
.ft_info_txt .txt {display: flex;justify-content: center;align-items: center;border-right: 1px solid #9FA5A2;padding: 5px 30px 4px;}
.ft_info_txt .txt:last-child {padding-right: 0;border-right: none;}
.ft_info_logo { margin: 0 0 -8px; }
.ft_main { display: flex; justify-content: space-between; align-items: flex-start; }

.ft_main_right {width: 561px;}
.ft_main_right .sec01_map {width: 100%;margin: 0 0 23px;}
.ft_map_btn { float: right; margin: 31px -2px 0 0; position: relative; z-index: 2; }
.ft_map_btn a {display: flex;align-items: center;font-family: var(--f-ja);}
.ft_map_btn a:before {content: '';position: relative;display: inline-block;background: url("../images/ic_map.svg") no-repeat center center/100% auto;width: 12px;height: 18px;margin-right: 8px;}
.ft_main_left .sec01_calendar { margin: 56px 0 18px; }
.ft_main_left .sec01_calendar_txt { line-height: 2em; }
.ft_main_right .sec01_info_txt { margin-bottom: 20px; }
.ft_main_right .sec01_map iframe {height: 259px;}
.ft_main .sec01_info_txt li:before {background: #C8C8C8;}
.ft_link{position: relative;padding: 119px 0 64px;margin-top: -268px;color: #fff;font-family: var(--f-ja);}
.ft_link:after {content: '';position: absolute;width: 100%;height: 100%;background: #737876;top: 0;left: calc(50% - 840px);z-index: -2;pointer-events: none;}
.ft_link_list { display: flex;margin-bottom: 50px;padding-left: 9px; }
.ft_link_list li{flex-shrink: 0;}
.ft_link_list>li>a,.ft_link_list>li>span { color: #fff;font-size: 112.5%;font-weight: 600;letter-spacing: 0.1em;position: relative;}
.ft_link_list ul li a {color: #fff;position: relative;padding-left: 24px;}
.ft_link_list ul li a:before {content: '';position: absolute;width: 14px;height: 1px;background: #C8C8C8;left: 0;top: 9px;}
.ft_link_list ul {display: flex;flex-direction: column;flex-wrap: wrap;height: 175px;}
.ft_link_list>li>span { display: block; margin: 0 0 28px; }
.ft_link_list ul li { margin: 0 0 11px; line-height: 1.5em; }
.ft_link_list ul li:nth-child(-n+5) {margin-right: 62px;}
.ft_link_list a:after {content: '';position: absolute;width: 0;height: 1px;background: #fff;transition: all 0.3s;left: 0;bottom: 0;}
.ft_link_list ul li a:after {left: 24px;}
.ft_link_list>li:not(:last-child) {margin-right: 87px;}
.ft_link_list>li:not(:last-child):nth-child(2) { margin-right: 118px; }
.ft_link_list li:nth-child(3) ul {height: 130px;}

.ft_bnr { display: grid; grid-template-columns: repeat(5, 1fr); grid-template-rows: repeat(2, 1fr); grid-column-gap: 18px; grid-row-gap: 18px;margin: 0 0 62px; }
.ft_txt { margin: 0 0 64px; }
address{}

/* BACK TO TOP */
.to_top{position:fixed;z-index:9;width:80px;margin: 0;bottom:20px;right:20px;cursor:pointer;transition:all .2s;opacity:0;visibility:hidden}
.to_top.show{transform:scale(1);opacity:1;visibility:visible}