@charset "UTF-8";
@import "base.css";
@import "fonts.css";
/*==========================================================================*/
/*                                                                          */
/*    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%;}

:root {
  --font-main: "游ゴシック体", "Yu Gothic", YuGothic, sans-serif ; 
	--f-ttl: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝B", serif;
  --txt: #343434;     
  --mcolor: #ED7100;
  --scolor: #93C33B; 
  --site_size: 1230px;
  
  --gray: #F8F8F8;
  --blue: #3B84C3;
	--dark: #333333;
  --red: red;
}

#wrapper{min-width: 1260px;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;}
header:before {content: '';position: absolute;width: 100%;height: 279px;left: 0;top: 0;pointer-events: none;background: #ffffff; background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.85) 60%, rgba(255, 255, 255, 0.82) 100%);transition: all 0.3s;}
h1{font-size:12px; overflow:hidden;text-overflow:ellipsis;white-space:nowrap; padding: 20px 0 13px;width: 100%;}
#logo {margin: 0;}
.h_box{width:100%;position: absolute;transition: all 0.3s;}
.h_inner{display:flex;justify-content:space-between;align-items: center;height: 100%;flex-wrap: wrap;}

.h_right { display: flex; align-items: center;gap:15px; }

.sub{position:absolute;z-index:1;transition:all .3s;opacity:0;visibility:hidden;background: var(--dark);min-width:200px;top:100%;left:50%;transform: translateX(-50%);padding: 17px 20px 15px 30px;border-radius: 10px;}
.sub ul li a{letter-spacing: 0.087em;color: #fff;position: relative;padding-left: 17px;white-space: nowrap;}
.sub ul li a:before{content: '';position: absolute;background: url("../images/nav_arr_right.svg") no-repeat center center/100% auto;width: 10px;height: 7px;left: 0;top: 7px;}
.sub ul li { line-height: 1.75em; }
.sub ul li:not(:last-child) { margin: 0 0 7px; }

header.fixed .h_box { background: #fff; position: fixed; padding: 10px 0; box-shadow: 0px 0px 6px rgba(0, 0, 0, 0.1); }
header.fixed h1 {display: none;}
header.fixed:before {opacity: 0;height: 0;}

/* HAMBUGER BUTTON */
.hamburger{font:inherit;display:flex;justify-content: center;align-items: center;overflow:visible;margin:0;padding:5px;cursor:pointer;transition-timing-function:linear;transition-duration:.15s;transition-property:opacity,filter;text-transform:none;color:inherit;border:0;background: #000000;width: 50px;height: 50px;}
.hamburger-box{position:relative;display:inline-block;width:20px;height:16px}
.hamburger-inner{top:50%;display:block;margin-top:0}
.hamburger-inner,
.hamburger-inner::after,
.hamburger-inner::before{position:absolute;width:20px;height:1px;transition:all ease 0.15s;background-color:#fff}
.hamburger-inner::after,
.hamburger-inner::before{display:block;content:""}
.hamburger-inner::before{top:-8px}
.hamburger-inner::after{bottom:-8px}
.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}
.hamburger--3dxy.is_active .hamburger-inner::before{transform:translate3d(0,8px,0) rotate(45deg)}
.hamburger--3dxy.is_active .hamburger-inner::after{transform:translate3d(0,-8px,0) rotate(-45deg)}

/*==========================================================
                  M A I N    V I S U A L
==========================================================*/
main{position: relative;z-index: 2;}
.mv{position: relative;padding: 0;height: 100vh;height: 100dvh;height: calc(var(--vh) * 100);overflow: hidden;}
.mv_bg{position:fixed;overflow:hidden;opacity:0;transition:all .3s;width: 100%;height: 100%;top: 0;left: 0;}
.mv_bg:before { content: ''; position: absolute; height: 100%; top: 0; width: 70%; max-width: 1284px; left: 50%; transform: translateX(-50%); pointer-events: none; z-index: 2; background: #333333; background: linear-gradient(90deg, rgba(51, 51, 51, 0) 0%, rgba(51, 51, 51, 0.62) 50%, rgba(51, 51, 51, 0) 100%); mix-blend-mode: multiply; }
.mv_bg.init{opacity:1}
.main_slider{position:relative;top:0;left:0;width:100%;height: 100%;z-index:1}
.slide_item {display: flex;justify-content: space-between;height: 100%;position: absolute;width: 100%;left: 0;top: 0;}
.slide_item_img {margin: 0;flex: 1;display: flex;justify-content: center;align-items: center;overflow: hidden;}
.slide_item_img.item_right { margin-left: -1px; }
.slide_item_img.item_left { margin-right: -1px; }
.slide_item_img img {width: 110%;height: 110%;object-fit: cover;}
.slide_item.before .slide_item_img.item_left img {position: relative; z-index: 2; clip-path: polygon(0% 0%,100% 0%,100% 100%,0% 100%); animation-name: mvSlide_before_left; animation-duration: 7.5s; animation-fill-mode: forwards; transition-timing-function: linear;}
.slide_item.active .slide_item_img.item_left img {position: relative; z-index: 3; animation-name: mvSlide_left; animation-duration: 3s; transition-timing-function: linear;}
.slide_item.before .slide_item_img.item_right img {position: relative; z-index: 2; clip-path: polygon(0% 0%,100% 0%,100% 100%,0% 100%); animation-name: mvSlide_before_right; animation-duration: 5s; animation-fill-mode: forwards; transition-timing-function: linear;}
.slide_item.active .slide_item_img.item_right img {position: relative; z-index: 3; animation-name: mvSlide_right; animation-duration: 3s; transition-timing-function: linear;}
@keyframes mvSlide_left {
  0% {
    clip-path: polygon(0% 0%,100% 0%,100% 0%,0% 0%);
    transform: scale(1.0) translateY(0);
  }
  50% {
    clip-path: polygon(0% 0%,100% 0%,100% 100%,0% 100%);
  }
  100% {
    clip-path: polygon(0% 0%,100% 0%,100% 100%,0% 100%);
    transform: scale(1.0) translateY(30px);
  }
}
@keyframes mvSlide_before_left {
  0% {
    transform: scale(1.0) translateY(30px);
  }
  100% {
    transform: scale(1.0) translateY(100px);
  }
}
@keyframes mvSlide_right {
  0% {
    clip-path: polygon(0% 100%,100% 100%,100% 100%,0% 100%);
    transform: scale(1.0) translateY(70px);
  }
  50% {
    clip-path: polygon(0% 0%,100% 0%,100% 100%,0% 100%);
  }
  100% {
    clip-path: polygon(0% 0%,100% 0%,100% 100%,0% 100%);
    transform: scale(1.0) translateY(0px);
  }
}
@keyframes mvSlide_before_right {
  0% {
    transform: scale(1.0) translateY(0px);
  }
  100% {
    transform: scale(1.0) translateY(-30px);
  }
}
.mv_txt{position:absolute;z-index:2;top:63.5%;left:50%;transform:translate(-50%,-50%);width:100%;height:auto}
.mv_txt h2{text-align:center}

/*==========================================================
                M A I N    C O N T E N T
==========================================================*/
/* DEFAULT TITLE */
.idx_ttl{margin-bottom: 71px;}
.idx_ttl .ja{font-size: 80px;font-family: var(--f-ttl);letter-spacing: 0.05em;color: var(--dark);}
.idx_ttl .en{font-size: 40px;color: var(--mcolor);text-transform: uppercase;line-height: 1em;margin: 0 0 16px;}
.txt_clr1 {color: var(--mcolor);}
.txt_clr2 {color: var(--scolor);}

/* DEFAUTL NAME BUTTON */
.btn a { display: inline-flex; justify-content: center; align-items: center; font-size: 20px; color: var(--dark); font-weight: 700; gap: 9px; margin: 0 auto; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 8px; }
.btn a:after {content: '';position: relative;display: inline-block;width: 50px;height: 26px;border-radius: 5px;background: url("../images/ic_arr.svg") no-repeat center center/5px auto var(--mcolor);top: -1px;transition: all 0.3s;}
.btn{text-align: center;}
.btn.btn_green a:after {background-color: var(--scolor);}
.btn.btn_white a:after {background-color: var(--mcolor);}
.btn.btn_white a:not(:hover) {color: #fff;}

/*==================== SEC01 ===================*/
.sec01 {position: relative;z-index: 1;padding: 530px 0 202px;}
.sec01:before, .sec01:after {position: absolute;content: '';width: 100%;left: 0;opacity: 0.3;pointer-events: none;z-index: -1;}
.sec01:before {height: 390px;background: #000000; background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.82) 100%);top: 0;opacity: 0.36;}
.sec01:after {height: calc(100% - 390px);bottom: 0;background: #000;}
.sec01 .idx_ttl .ja {color: #fff;}
.sec01 .idx_ttl .en {margin-bottom: 17px;}
.sec01 .idx_ttl {margin-bottom: 240px;}
.sec01_list { width: 560px; margin: 0 0 0 auto; }
.sec01_item:not(:last-child) {margin-bottom: 80px;}
.sec01_item {position: relative;}
.sec01_item_img {margin: 0;}
.sec01_item_ttl { padding: 8px 10px 7px; background: rgb(237 113 0 / 90%); position: absolute; left: 0; bottom: 0; width: 100%; color: #fff; font-size: 24px; letter-spacing: 0.05em; font-weight: 700; line-height: 1.5625; min-height: 60px; display: flex; align-items: center; }
/*==================== SEC02 ===================*/
.sec02 {background: #fff;position: relative;padding: 192px 0 204px;z-index: 2;overflow: hidden;}
.sec02:before {background: url("../images/sec02_bg.png") no-repeat top center;content: '';position: absolute;width: 100%;max-width: 1920px;height: 100%;top: 0;left: 50%;transform: translateX(-50%);pointer-events: none;z-index: -2;border-bottom-left-radius: 150px;border-bottom-right-radius: 150px;}
.sec02_ttl { text-align: center; position: relative; margin: 0 0 156px;}
.sec02_ttl:before,.sec02_ttl:after {content: '';position: absolute;background: var(--mcolor);min-width: 1000px;height: 2px;width: 100vw;}
.sec02_ttl:before { top: 120px; right: calc(50% - 40px); }
.sec02_ttl:after { bottom: -13px; left: calc(50% - 270px); }
.sec02_txt { text-align: center; font-family: var(--f-ttl);margin: 0 0 74px;}
.sec02_txt p {font-size: 20px;}
/*==================== SEC03 ===================*/
.sec03 {background: #fff;position: relative;padding: 207px 0 353px;overflow: hidden;}
.sec03_list { display: flex; flex-wrap: wrap; gap: 80px; }
.sec03_item { width: calc((100% - 80px) / 2); }
.sec03_item_ttl { text-align: center; font-size: 25px; font-weight: 700; letter-spacing: 0.05em; margin: 0 0 14px; }
.sec03_item_txt { color: var(--dark); }
.sec03_item_img { text-align: center; margin: 0 0 18px;position: relative;}
.sec03_item_note { display: flex; gap: 20px; text-align: center; margin: 0 0 17px;}
.sec03_item_note dl {position: relative;}
.sec03_item_note dl:before,.sec03_item_note dl:after, .sec03_item_note dd:before, .sec03_item_note dd:after {content: '';position: absolute;width: 30px;height: 30px;bottom: 0;border: 1px solid var(--mcolor);}
.sec03_item_note dl:before {left: 0;border-right: none;border-top: none;}
.sec03_item_note dl:after {right: 0;border-left: none;border-top: none;}
.sec03_item_note dd:before {left: 0;border-right: none;border-bottom: none;top: 0;}
.sec03_item_note dd:after {right: 0;border-left: none;border-bottom: none;top: 0;}
.sec03_item_note dl { flex: 1; position: relative;}
.sec03_item_note dt { width: 160px; background: var(--mcolor); color: #fff; font-weight: 700; line-height: 1.5em; height: 24px; display: flex; justify-content: center; align-items: center; padding: 2px 0 0; margin: 0 auto; }
.sec03_item_note dd {height: 121px;position: relative;text-align: center;display: flex;justify-content: center;align-items: center;line-height: 1.375em;font-weight: 700;padding: 4px 0 0;margin-top: -12px;}
.sec03_item_img .txt { width: 180px; height: 180px; display: flex; position: absolute; bottom: 40px; left: -50px; background: var(--scolor); flex-direction: column; justify-content: center; align-items: center; border-radius: 50%; color: #fff;line-height: 1.5em;gap: 6px;padding: 12px 0 0; }
.sec03_item_img .txt:after {content: '';position: absolute;top: 2px;left: 2px;bottom: 2px;right: 2px;border: 1px solid #fff;border-radius: 50%;pointer-events: none;}
.sec03_item_img .lager {font-size: 112.5%;font-weight: 700;line-height: 1.5em;}
.sec03_item_img .txt.ver_right {left: auto;right: -40px;}
.sec03_item.item_full { width: 100%; display: flex; gap: 50px; }
.sec03_item.item_full .sec03_item_ttl {text-align: left;}
.sec03_item.item_full .sec03_item_img {flex-shrink: 0;}
.sec03_item_certificate { display: flex; justify-content: center; gap: 49px; text-align: center; }
.sec03_item_certificate li {display: flex;justify-content: center;align-items: center;text-align:center;width: 186px;height: 186px;border: 1px solid var(--scolor);border-radius: 50%;position: relative;font-size: 20px;line-height: 1.5em;font-weight: 700;box-shadow: 0px 0px 10px 0px rgba(147,195,59,0.44);}
.sec03_item_certificate li:before {content: '';position: absolute;top: 6px;left: 6px;right: 6px;bottom: 6px;border-radius: 50%;box-shadow: inset 0px 0px 8px 0px rgba(182,190,167,1);border: 1px solid var(--scolor);pointer-events: none;}
.sec03_item_txt:not(:last-child) { margin: 0 0 45px; }
/*==================== SEC04 ===================*/
.sec04 {position: relative;padding: 132px 0 202px;margin-top: -150px;z-index: 1;background: #fff;overflow: hidden;}
.sec04:before {content: '';position: absolute;width: 100%;max-width: 1920px;height: 100%;top: 0;left: calc(50% - 953px);background: url("../images/sec04_bg_pc.jpg") no-repeat top left #F5FFE1;border-top-left-radius: 150px;border-top-right-radius: 150px;pointer-events: none;z-index: -2;}
.sec04 .idx_ttl {text-align: right;margin-bottom: 69px;}
.sec04 .idx_ttl .en {color: var(--scolor);}
.sec04_ttl { max-width: 916px; margin: 0 auto 34px; text-align: center; font-weight: 700; font-size: 25px; color: var(--scolor); line-height: 1.5em; position: relative; }
.sec04_ttl:before, .sec04_ttl:after {content: '';position: absolute;height: 32px;width: 180px;border: 1px solid #707070;top: 18px;border-bottom: none;}
.sec04_ttl:before {left: 0;border-right: none;}
.sec04_ttl:after {right: 0;border-left: none;}
.sec04_list { display: flex; gap: 20px; justify-content: space-between; text-align: center; margin: 0 0 77px;}
.sec04_item { flex: 1; }
.sec04_item_ttl { font-size: 18px; font-weight: 700; line-height: 1.5em; }
.sec04_item_img { margin: 0 0 18px; }
/*==================== SEC05 ===================*/
.sec05 {background: url("../images/sec05_bg.jpg") no-repeat left top/cover;position: relative;padding: 206px 0 199px;}
.sec05:before {content: '';position: absolute;width: 100%;background: url("../images/sec05_txt_en.svg") repeat-x left center/auto 100%;animation: bgScroll 700s linear infinite;height: 110px;left: 0;top: -61px;z-index: 2;}
.sec05 .idx_ttl {text-align: center;margin-bottom: 30px;}
@keyframes bgScroll {
    from {
        background-position-x: 0;
    }
    to {
        background-position-x: -50000px;
    }
}
.sec05_tab {display: flex;justify-content: center;gap: 20px;margin-bottom: 60px;}
.sec05_tab li {width: 235px;height: 60px;display: flex;justify-content: center;align-items: center;text-align: center;border-radius: 60px;font-size: 20px;font-weight: 700;cursor: pointer;box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.16);transition: all 0.3s;background: #fff;color: var(--dark);}
.sec05_tab li.current {background-color: var(--mcolor);color: #fff;cursor: default;}
.sec05_main {display: none;}
.sec05_main.current {display: inherit;}
.sec05_item {padding: 20px 50px;text-align: center;width: 530px;height: auto;position: relative;}
.sec05_item>a {position: absolute;top: 0;left: 0;right: 0;bottom: 0;z-index: 2;}
.sec05_item.slick-slide { display: flex; flex-direction: column; justify-content: center; }
.sec05_item_img {margin: 0;text-align: center;position: relative;}
.sec05_item_img:before {content: '';position: absolute;top: 0;left: 0;bottom: 0;right: 0;pointer-events: none;opacity: 0.42;transition: all 0.3s;background: #EDAE00; background: linear-gradient(51deg, rgba(237, 174, 0, 1) 0%, rgba(237, 113, 0, 1) 100%);}
.sec05_item_ttl { font-size: 25px; font-weight: 700; line-height: 1.5em;}
.sec05_item.slick-current .sec05_item_img{margin-bottom: 18px;}
.sec05_item.slick-current .sec05_item_img img{box-shadow: 0px 0px 14px 0px rgba(237,113,0,0.4);}
.sec05_item.slick-current .sec05_item_img:before {opacity: 0;}
.sec05_item_ttl .txt { font-size: 72%; background: var(--mcolor); color: #fff; font-weight: 400; display: inline-block; line-height: 1.5em; padding: 3px 10px; letter-spacing: 0.05em; margin-top: 7px; }
.sec05_item:not(.slick-current) .sec05_item_ttl {display: none;}
.sec05_list .slick-track {display: flex;}
.sec05_list.slick-slider {display: flex;flex-wrap: wrap;justify-content: center;align-items: center;}
.sec05_list .slick-list {order: -1;margin-bottom: 35px;width: 100%;}
.sec05_list .slick-arrow {position: relative;top: 0;transform: none;width: 40px;height: 30px;background: var(--dark);border-radius: 5px;}
.sec05_list .slick-arrow:before {content: '';position: absolute;background: url("../images/ic_arr.svg") no-repeat center center;width: 100%;height: 100%;top: 0;left: 0;opacity: 1;}
.sec05_list .slick-prev:before {transform: rotateY(-180deg);}
.sec05_list .slick-prev {left: 0;}
.sec05_list .slick-next{order: 2;right: 0;}
.sec05_list .slick-dots {position: relative;width: auto;bottom: 0;display: flex;justify-content: center;gap: 10px;margin: 0 40px;}
.sec05_list .slick-dots li {margin: 0;padding: 0;width: 18px;height: 18px;}
.sec05_list .slick-dots li button {width: 100%;height: 100%;border: 1px solid #707070;border-radius: 50%;transition: all 0.3s;padding: 0;}
.sec05_list .slick-dots li button:before {display: none;}
.sec05_list .slick-dots li.slick-active button {background-color: var(--mcolor);border-color: var(--mcolor);cursor: default;}


/*==================== SEC06 ===================*/
.sec06 {background: url("../images/sec06_bg.jpg") no-repeat top center/cover #fff;position: relative;z-index: 2;padding: 206px 0 461px;overflow: hidden;}
.sec06:before {content: '';position: absolute;width: 100%;min-width: 1920px;height: 1025px;left: calc(50% - 657px);z-index: -2;pointer-events: none;background: #000;opacity: 0.75;clip-path: polygon(37% 0%, 100% 0, 100% 100%, 0% 100%);top: 0;}
.sec06:after {content: '';position: absolute;width: 100%;height: calc(100% - 1025px);left: 0;bottom: 0;background: url("../images/sec06_img_bottom.jpg") no-repeat center center/cover;z-index: -1;pointer-events: none;}
.sec06_main { width: 560px; margin: 0 40px 49px auto; color: #fff; }
.sec06 .idx_ttl .ja {color: #fff;font-size: 60px;white-space: nowrap;}
.sec06 .idx_ttl .en { margin-bottom: 19px; }
.sec06 .idx_ttl { margin-bottom: 40px; }
.sec06 .btn {text-align: left;}
.sec06_name { font-size: 20px; font-family: var(--f-ttl); margin: 0 0 34px;}
.sec06_name .doctor {font-size: 120%;letter-spacing: 0.05em;margin: 3px 0 0 19px;display: inline-block;}
.sec06_txt { margin: 0 0 44px; }
.sec06_top { display: flex;align-items: flex-end;}
.sec06_img { margin: 0; order: -1; }
.sec06_info { background: var(--mcolor); width: 100%; color: #fff; padding: 36px 40px 37px; display: flex; gap: 40px; }
.sec06_info dt {font-size: 18px;font-weight: 700;border-bottom: 1px solid;padding: 0 0 5px;margin: 0 0 17px;}
.sec06_info_list li {position: relative;padding-left: 9px;}
.sec06_info_list li:before {content: '';position: absolute;width: 4px;height: 4px;background: #fff;left: 0;top: 11px;}
.sec06_info_list li .small {font-size: 75%;letter-spacing: 0.05em;}
@-moz-document url-prefix() {
	.sec06_info_list li:before {top: 13px;}
}

/*==================== SEC07 ===================*/
.sec07 {background: url("../images/sec07_bg.jpg") no-repeat left center #fff;position: relative;padding: 50px 0;overflow: hidden;}
.sec07_bnr { max-width: 1000px; margin: 0 auto;font-size: 35px;font-family: var(--f-ttl);position: relative;}
/*
.sec07_bnr:before, .sec07_bnr:after {content: '';position: absolute;pointer-events: none;bottom: -50px;width: 374px;height: 400px;opacity: 0.8;}
.sec07_bnr:before {background: url("../images/sec07_img1.png") no-repeat bottom center/100% auto;right: calc(50% + 489px);}
.sec07_bnr:after {background: url("../images/sec07_img2.png") no-repeat bottom center/100% auto;left: calc(50% + 484px);}
*/
.sec07_bnr a {display: flex;height: 300px;justify-content: center;align-items: center;text-align: center;position: relative;color: #fff;border: 1px solid;border-radius: 10px;}
.sec07_bnr a .lager {display: block;font-size: 142.86%;letter-spacing: 0.05em;margin: 12px 0 9px;}
.sec07_bnr a:after {content: '';position: absolute;width: 40px;height: 130px;background: url("../images/ic_arr_lager.svg") no-repeat center center/11px auto #fff;border-radius: 5px;right: 50px;top: 50%;transform: translateY(-50%);}
/*==================== SEC08 ===================*/
.sec08 {background: url("../images/sec08_bg.png");position: relative;padding: 206px 0 235px;overflow: hidden;}
.sec08_top { display: flex; justify-content: space-between; align-items: flex-start; gap: 40px; }
.sec08 .idx_ttl {flex-shrink: 0;}
.sec08_txt {max-width: 560px;margin-top: 61px;}
.sec08_list { display: flex; flex-wrap: wrap; gap: 50px;align-items: flex-start;margin-bottom: 88px;}
.sec08_item { background: var(--mcolor); color: #fff; padding: 26px 40px 37px; position: relative; border-radius: 10px;}
.sec08_item:before, .sec08_item:after {content: '';position: absolute;pointer-events: none;}
.sec08_item:nth-child(2):before {background: url("../images/sec08_img3.svg") no-repeat center center/100% auto;width: 87px;height: 265px;top: -104px;left: -28px;}
.sec08_item:nth-child(4):before {background: url("../images/sec08_img4.svg") no-repeat center center/100% auto;width: 123px;height: 159px;top: -115px;left: -69px;}
.sec08_item:nth-child(4):after {background: url("../images/sec08_img5.svg") no-repeat center center/100% auto;width: 230px;height: 247px;bottom: -28px;right: calc(100% + 22px);}
.sec08_item:nth-child(5):before {background: url("../images/sec08_img6.svg") no-repeat center center/100% auto;width: 169px;height: 94px;bottom: 15px;right: calc(100% + 656px);}
.sec08_item:nth-child(5):after {background: url("../images/sec08_img7.svg") no-repeat center center/100% auto;width: 129px;height: 81px;top: 81px;right: calc(100% + 752px);}
.sec08_item.item_full { width: 100%; padding: 37px 50px 51px; }
.sec08_item_ttl { text-align: center; font-size: 30px; font-weight: 700; line-height: 1.5em; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 10px;margin-bottom: 43px; }
.sec08_item_col { display: flex; justify-content: center; gap: 40px; }
.sec08_item_col_item { border-radius: 10px; width: 480px; border: 2px solid rgb(255 255 255 / 50%); padding: 1px 40px 8px; }
.sec08_item_col_item_ttl { width: 200px; height: 200px; background: #fff; display: flex; justify-content: center; align-items: center; border-radius: 50%; color: var(--mcolor); text-align: center; margin: -106px auto 12px; position: relative;}
.sec08_item.item_full .sec08_item_ttl {margin-bottom: 72px;}
.sec08_item_col_item_ttl .lager {display: block;font-weight: 700;font-size: 187.5%;letter-spacing: 0.05em;margin: 12px 0 7px;}
.sec08_item_col_item_ttl:before {content: '';position: absolute;background: url("../images/sec08_img1.svg") no-repeat center center/100% auto;width: 61px;height: 200px;top: 0;left: -40px;}
.sec08_item_col_item:nth-child(2) .sec08_item_col_item_ttl:before{background-image: url("../images/sec08_img2.svg");width: 97px;left: auto;right: -63px;}
.sec08_item_col_item_txt li { height: 142px; display: flex; align-items: center; justify-content: space-between; font-size: 24px; font-weight: 700; line-height: 1.5em; padding: 14px 0 0;}
.sec08_item_col_item_txt li:not(:last-child) {background: url("../images/sec08_line.png") repeat-x bottom left/auto 1px;}
.sec08_item_col_item_txt li .num { flex-shrink: 0;margin-top: 5px; }
.sec08_item_col_item_txt li .count { font-size: 90px; display: inline-block; margin: 0 6px 0 0; }
.sec08_item_col_item_txt li:nth-child(1) { padding-top: 14px; }
.sec08_item.item_green { background: var(--scolor); }
.sec08_item.item_blue { background: var(--blue); }
.sec08_item:nth-child(2) {width: 460px;}
.sec08_item:nth-child(3) { width: 690px; padding: 27px 40px 43px 296px; }
.sec08_item:nth-child(5) { margin: -155px 0 0 0; width: 325px; padding: 27px 30px 34px; }
.sec08_item:nth-child(4) { margin: -155px -10px 0 auto; width: 325px; padding: 27px 30px 34px; }
.sec08_item_count { text-align: center; font-size: 24px; font-weight: 700; line-height: 1.5em;margin: 0 0 40px;white-space: nowrap;}
.sec08_item_count .num {font-size: 93px;letter-spacing: 0.05em;line-height: 1em;}
.sec08_item_count .num .small:not(:last-child):after {content: '';position: absolute;background: url("../images/sec08_line_num.svg") no-repeat center center/100% auto;width: 65px;height: 85px;right: -44px; top: 28px;}
.sec08_item_count .num .small {position: relative;display: inline-block;line-height: 1em;}
.sec08_item:nth-child(4) .sec08_item_ttl , .sec08_item:nth-child(5) .sec08_item_ttl { text-underline-offset: 8px; margin: 0 0 31px; }
.sec08_item:nth-child(4) .sec08_item_count , .sec08_item:nth-child(5) .sec08_item_count { margin: 0 0 12px; }
.sec08_item:nth-child(3) .sec08_item_count { margin: 0; position: absolute; left: 44px; top: 44px;display: flex; align-items: flex-end; }
.sec08_item:nth-child(3) .sec08_item_count .num {display: flex;align-items: flex-start;}
.sec08_item_count .num .small:last-child { margin: 56px 0 0 27px; letter-spacing: 0; }
.sec08_item:nth-child(3) .sec08_item_ttl {text-align: left;margin: 0 0 24px;}
/*==================== SEC09 ===================*/
.sec09 {position: relative;padding: 205px 0 198px;margin-top: -150px;z-index: 2;background: url("../images/sec08_bg.png");}
.sec09:before {content: '';position: absolute;width: 100%;max-width: 1920px;height: 100%;pointer-events: none;z-index: -2;background: url("../images/sec09_img_bg.png") no-repeat right top/780px auto #FFFBF1;border-top-left-radius: 150px;border-top-right-radius: 150px;top: 0;left:calc(50% - 953px);}
.sec09 .idx_ttl { margin-bottom: 81px; }
.sec09_list { display: flex; gap: 40px; margin: 0 0 37px;}
.sec09_item { margin: 0; position: relative; font-size: 24px;font-weight: 700;}
.sec09_item img {border-radius: 1999px;}
.sec09_item .ttl { width: 54px; height: 132px; position: absolute; top: -10px; left: 50%; transform: translateX(-50%); background: var(--mcolor); color: #fff;-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; text-orientation: upright;display: flex; align-items: center; padding: 13px 0 0 0; letter-spacing: 0.13em; }
.sec09_item .ttl:after {content: '';position: absolute;width: 10px;height: 10px;top: 0;left: 100%;clip-path: polygon(0 0, 0% 100%, 100% 100%);background: #954700;}
.sec09_item:nth-child(2) .ttl {background-color: var(--scolor);}
.sec09_item:nth-child(2) .ttl:after {background-color: #4E7800;}
.sec09_item:nth-child(3) .ttl {background-color: var(--blue);}
.sec09_item:nth-child(3) .ttl:after {background-color: #033F72;}
.sec09_txt { max-width: 800px; margin: 0 auto 79px; }
/*==================== SEC10 ===================*/
.sec10 {background: url("../images/sec10_bg.png");position: relative;padding: 50px 0;overflow:hidden;}
.sec10_slide_item {margin: 0 20px;}
.sec10_slide {height: 300px;overflow: hidden;}
.sec10_slide.slick-initialized {height: auto;overflow: visible;}
/*==================== SEC11 ===================*/
.sec11 {background: url("../images/sec11_bg.jpg");position: relative;padding: 112px 0 100px;overflow: hidden;}
.sec11 .idx_ttl {text-align: center;}
.sec11 .idx_ttl .ja, .sec11 .idx_ttl .en {color: #fff;}
.sec11 .inner {width: 100%;padding: 0;}
.sec11_list { display: flex; }
.sec11_item {flex: 1;font-size: 40px;font-weight: 700;}
.sec11_item a {display: flex;height: 650px;position: relative;z-index: 2;align-items: flex-end;padding: 70px 40px;color: #fff;justify-content: center;}
.sec11_item .img {position: absolute;width: 100%;height: 100%;top: 0;left: 0;display: flex;justify-content: center;align-items: center;overflow: hidden;}
.sec11_item .img:before {content: '';position: absolute;width: 100%;height: 100%;top: 0;left: 0;pointer-events: none;background: #B4B4B4; background: linear-gradient(180deg, rgba(180, 180, 180, 0) 0%, rgba(122, 122, 122, 0.82) 100%);mix-blend-mode: multiply;z-index: 2;}
.sec11_item .img img {width: 100%;height: 100%;object-fit: cover;transition: all 0.3s;}
.sec11_item .ttl { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: 20px; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 11px; }
.sec11_item .ttl:after {content: '';position: relative;display: inline-block;width: 50px;height: 26px;background: url("../images/ic_arr_lager.svg") no-repeat center center/5px auto #fff;border-radius: 5px;}
/*==================== SEC12 ===================*/
.sec12 {padding: 150px 0;background: #fff;position: relative;overflow: hidden;}
.sec12_img {width: 100%;height: 100%;top: 0;left: 0;position: absolute;display: flex;flex-wrap: wrap;}
.sec12_img .img {width: calc(100%/4);display: flex;justify-content: center;align-items: center;overflow: hidden;height: 50%;}
.sec12_img .img img {width: 100%;height: 100%;object-fit: cover;}
.sec12_main {max-width: 800px;margin: 0 auto;background: rgba(255,255,255,0.9);padding: 92px 80px 100px;color: var(--dark);}
.sec12 .idx_ttl {text-align: center;margin-bottom: 35px;}
.sec12_ttl { text-align: center; font-family: var(--f-ttl); font-size: 25px; margin: 0 0 20px;}
.sec12_txt { max-width: 602px; margin: 0 auto 96px; }
.sec12 .btn a { gap: 20px; }
/*==================== SEC13 ===================*/
.sec13 {background: #fff;position: relative;padding: 151px 0;overflow: hidden;}
.sec13:before, .sec13:after {content: '';position: absolute;width: 100%;height: 20px;left: 0;background: #F0AC55; background: linear-gradient(90deg, rgba(240, 172, 85, 1) 0%, rgba(228, 87, 54, 1) 20%, rgba(204, 28, 99, 1) 50%, rgba(85, 58, 147, 1) 100%);pointer-events: none;}
.sec13:before {top: 0;}
.sec13:after {bottom: 0;}
.sec13 .idx_ttl .en { width: 275px; height: 60px; background: #F0AC55; background: linear-gradient(117deg, rgba(240, 172, 85, 1) 0%, rgba(228, 87, 54, 1) 20%, rgba(204, 28, 99, 1) 50%, rgba(85, 58, 147, 1) 100%); color: #fff; margin: 0 auto 11px; display: flex; justify-content: center; align-items: center; text-transform: capitalize; }
.sec13 .idx_ttl {margin-bottom: 51px;}
.sec13_list { display: flex; justify-content: space-between; gap: 40px; margin-bottom: 80px;}
.sec13_item { height: 270px; flex: 1; background: url("../images/sec13_img1.jpg") no-repeat center center/contain #C8C8C8; }
.sec13 .btn a:after {background-color: var(--dark);}
/*==================== SEC14 ===================*/
.sec14 {padding: 200px 0;position: relative;overflow: hidden;}
.sec14_main {height: 600px;position: relative;z-index: 2;}
.sec14_main_info {position: relative;display: flex;justify-content: center;align-items: center;text-align: center;flex-direction: column;height: 100%;}
.sec14_ttl { font-size: 90px; font-family: var(--f-ttl); line-height: 1.5em; margin: -8px 0 50px; }
.btn_contact a { width: 402px; display: flex; justify-content: center; align-items: center; background: var(--mcolor); color: #fff; height: 80px; border-radius: 80px; gap: 10px;}
.btn_contact a:before {content: '';position: relative;display: inline-block;background: url("../images/ic_mail.svg") no-repeat center center/100% auto;width: 20px;height: 16px;}
.btn_contact {font-size: 20px;font-weight: 700;}
/*==========================================================
                        F O O T E R
==========================================================*/
footer{position: relative;background: #fff;border-top: 2px solid #E1E1E1;overflow: hidden;}

.ft_top{padding: 106px 0 79px;}
.ft_top .inner{display: flex;justify-content: center;gap: 40px;}

/* FOOTER INFORMATION */
.ft_info_logo { margin: 0 0 22px; }
.ft_info{width: 480px;}
.ft_calendar {table-layout: fixed;margin: 0 0 41px;}
.ft_calendar th,.ft_calendar td {border: none;border-bottom: 1px dashed #9A9A9A;color: #000;font-size: 15px;font-weight: 700;}
.ft_calendar td {text-align: center;padding: 0;font-weight: 500;}
.ft_calendar th:nth-child(1) {text-align: left;padding: 11px 20px;width: 30%;letter-spacing: 0.1em;}
.ft_calendar tr:last-child td {text-align: left;font-weight: 700;letter-spacing: 0.1em;padding: 7px 20px;border-bottom: none;}

.ft_btn { display: flex; gap: 20px; }
.ft_btn li {width: calc((100% - 20px)/2);font-size: 18px;font-weight: 700;letter-spacing: 0.1em;}
.ft_btn li a {display: flex;justify-content: center;align-items: center;text-align: center;height: 60px;border-radius: 5px;gap: 10px;background: var(--scolor);color: #fff;}
.ft_btn li a:before {content: '';position: relative;display: inline-block;background: url("../images/ic_tel.svg") no-repeat center center/100% auto;width: 6px;height: 19px;}
.ft_btn li.ft_btn_mail a:before {background-image: url("../images/ic_mail.svg");width: 20px;height: 16px;}
.ft_btn li.ft_btn_mail a {background-color: var(--mcolor);}

.ft_map{width: 480px;}
.ft_map_iframe{width: 100%;height: 250px;}
.ft_map_iframe iframe{width: 100%;height: 100%;border:none;outline:none;}
.ft_add { font-size: 15px; font-weight: 500; letter-spacing: 0.1em; color: #000000; margin: -14px 0 6px; }
.ft_map .gg_link{position: relative;margin-top: 4px;}
.ft_map .gg_link a { display: inline-flex; align-items: center; letter-spacing: 0.087em; color: var(--dark); gap: 8px; font-weight: 700; text-decoration: underline; text-underline-offset: 2px; }
.ft_map .gg_link a::before{background: url('../images/ic_map.svg') no-repeat center center/100% auto;width: 11px;height: 18px;content: '';display: inline-block;position: relative;top: -1px;}

/* FOOTER LINK */
.ft_link{background: var(--dark);padding: 90px 0 74px;color: #fff;}
.ft_link_list { display: flex; gap: 50px; margin: 0 0 70px;}
.ft_link_list >ul>li>a,.ft_link_list >ul>li>span {color: #fff;display: block;text-decoration: none;position: relative;padding: 0 0 2px 19px;border-bottom: 1px solid #fff;letter-spacing: 0.087em;}
.ft_link_list >ul>li>a:before,.ft_link_list >ul>li>span:before {content: '';position: absolute;width: 9px;height: 9px;background: #fff;border-radius: 50%;left: 0;top: 8px;}
.ft_link_list >ul>li:not(:last-child) {margin-bottom: 34px;}
.ft_link_sub li a {position: relative;display: inline-block;color: #fff;letter-spacing: 0.087em;padding-left: 18px;}
.ft_link_sub li a:before {content: '';position: absolute;background: url("../images/ft_arr.svg") no-repeat center center/100% auto;width: 10px;height: 7px;left: 0;top: 8px;}
.ft_link_sub li { margin: 0 0 11px; line-height: 1.5em; }
.ft_link_sub li:last-child {margin-bottom: 0;}
.ft_link_sub { margin-top: 14px; }
.ft_link_sub.col2 {display: flex;flex-wrap: wrap;gap: 40px;}
.ft_link_sub.col2 li {margin: 0;}
.ft_link_list >ul:nth-child(3)>li:not(:last-child) { margin-bottom: 23px; }
.ft_bnr {display: flex;gap: 40px;}
.ft_bnr li {flex: 1;font-size: 20px;font-family: var(--f-ttl);line-height: 1.5em;position: relative;}
.ft_bnr li a {background: #fff;display: flex;height: 100%;justify-content: center;align-items: center;text-align: center;color: var(--scolor);}
.ft_bnr li a:before {content: '';position: absolute;top: 0;left: 0;bottom: 0;right: 0;pointer-events: none;}
.ft_bnr li:nth-child(2) a:before {border: 3px solid var(--scolor);}
.ft_bnr li:nth-child(3) a:before {border: 3px solid var(--blue);}
.ft_bnr li:nth-child(3) a {color: var(--blue);}

address{text-align:center;background-color: #000;color:#fff;font-size: 12px; padding: 21px 15px;letter-spacing: 0.087em;line-height: 1.5em;}

.bnr_fixed { width: 160px; margin: 0; position: fixed; right: 50px; bottom: 60px; z-index: 5; font-size: 20px; font-weight: 700; line-height: 1.5em; text-align: center; opacity: 0;visibility: hidden;transition: all 0.3s;}
.bnr_fixed.show {opacity: 1;visibility: visible;}
.bnr_fixed a {height: 160px;display: flex;justify-content: center;align-items: center;border: 4px solid #fff;background: var(--mcolor);color: #fff;border-radius: 50%;flex-direction: column;gap: 8px; padding: 14px 0 0;position: relative;}
.bnr_fixed a .img { position: absolute; top: -29px; width: calc(100% + 15px); }
.bnr_fixed a:before {content: '';position: relative;display: inline-block;background: url("../images/ic_mail.svg") no-repeat center center/100% auto;width: 34px;height: 26px;}
.bnr_fixed a:after {content: '';position: relative;display: inline-block;background: url("../images/ic_arr_down.svg") no-repeat center center/100% auto;width: 10px;height: 5px;}

/* BACK TO TOP */
.to_top { margin: 0; position: fixed; z-index: 5; width: 160px; height: 40px; bottom: 0; right: 50px; cursor: pointer; transition: all .2s; opacity: 0; visibility: hidden; border-top-left-radius: 10px; border-top-right-radius: 10px; text-align: center; background: var(--dark); color: #fff; font-size: 14px; font-weight: 700; display: flex; justify-content: center; align-items: center; padding: 3px 0 0; }
.to_top.show{transform:scale(1);opacity:1;visibility:visible}