@charset "UTF-8";
@import "base.css";
@import "fonts.css";
/*@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@900&family=Noto+Sans+JP:wght@100..900&family=Roboto: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: 500;
}
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;}
iframe{width: 100%;height: 100%;border:none;outline:none;}
/*==========================================================================*/
/*                               Container                                  */
/*==========================================================================*/
html{background:#fff}
body{color:var(--txt);-webkit-text-size-adjust:none;min-width:320px;font-family: var(--font-main)}
select,
input,
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.875em;letter-spacing: 0.02em;}
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_medium{font-size: 120%;}
.f_medium2{font-size: 125%;}
.f_medium3{font-size: 130%;}
.f_big_u{font-size: 200%;}
.f_sm{font-size: 80%;}
.blue{color:var(--mcolor);}
:root {
--font-main:"Noto Sans JP", sans-serif;
--txt: #333;     
--mcolor: #27499d;
--scolor: #eb9500; 
--site_size: 1430px;
--font-roboto:"Roboto", sans-serif;
--font-YuGothic:"游ゴシック体", "Yu Gothic", YuGothic, sans-serif;
--font-NotoSanV:"Noto Sans JP V", sans-serif;
--gray: #ccc;
--u_blue: #00aaba;
--organ: #eb9500;
--green: #06c755;
--red: red;
--yellow: #ebc700;

}

#wrapper{min-width: 1260px;overflow:hidden;margin:0 auto;max-width: 1920px;}
.inner{width: var(--site_size);margin:0 auto;position:relative;max-width: 100%;padding: 0 15px;}
body.active_popup{overflow: hidden}
/*==========================================================
             H E A D E R  
==========================================================*/
header{position: relative; z-index: 10;}
.h_box{width:100%;position: fixed;max-width: 1920px;}
.h_inner{display:flex;justify-content:space-between;align-items: center;height: 100%;width: 100%;padding: 0 0 0 17px;}
.h_right{display: flex;align-items: center;}
.h_contact{display: flex;align-items: center;}
.h_contact > p{margin-bottom: 0;}
.h_contact > p:not(:last-child){margin-right: 27px;padding: 7px 0 0 0;}
.h_contact_mail a{color:#FFF;font-weight: bold;text-align: center;background-color: var(--green);display: flex;justify-content: center;align-items: center;width: 160px;height: 120px;position: relative;border-radius: 0 0 0 32px;padding: 24px 0 0 0;}
.h_contact_mail a span{position: relative;z-index: 2;font-size: 18px;display: inline-block;padding-top: 30px;font-weight: 600;letter-spacing: 0.025em;}
.h_contact_mail a span::before{content: '';position: absolute;width: 54px;height: auto;left: 0;right:0;margin: 0 auto;top: -26px;background: url('../images/ic_h_line.png') no-repeat center /cover;aspect-ratio: 27 / 26;}
.h_contact_tel a{font-size: 30px;color: var(--mcolor);font-weight: 900;position: relative;line-height: 1;display: block;font-family: var(--font-YuGothic);letter-spacing: 0.055em;margin-bottom: 1px;}
.h_contact_tel a .ic_tel{position: relative;padding-left: 22px;}
.h_contact_tel a .ic_tel::before{content: '';position: absolute;width: 17px;height: auto;left: 0;top: calc(50% - 11px);background: url('../images/ic_h_tel.png') no-repeat center /cover;aspect-ratio: 17 / 21;}
.h_contact_tel .time{font-size: 16px;display: block;line-height: 1.6; text-align: center;color:#413c36}

header.show .h_box{box-shadow: 0 2px 6px rgb(0,0,0,20%);background-color: #fff;}
header.show #logo{padding: 0;}
header.show .h_contact_mail a{height: 100px;width: 150px;}
header.show .h_contact_mail a span{padding-top: 22px;}

/* 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}
.hamburger-box{position:relative;display:inline-block;width: 28px;height:24px}
.hamburger-inner{top:50%;display:block;margin-top: -2px;}
.hamburger-inner,
.hamburger-inner::after,
.hamburger-inner::before{position:absolute;width: 28px;height:2px;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;padding-top: 123px;z-index: 2;}
.mv{position: relative;padding: 0;height: 870px;width: 1920px;}
.mv::before{position: absolute;left: 0;top: 0;width: 1638px;height: auto;background: url(../images/mv_before.png) center /cover no-repeat;content:"";aspect-ratio: 819/ 428;}
.mv_bg{position:relative;overflow:hidden;opacity:0;transition:all .3s;}
.mv_bg.init{opacity:1}
.main_slider{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}
.mv_bg,
.main_slider .slide_item{width: 1468px;height: 800px;margin-left: auto;}
.main_slider .slide_item .bg{position:absolute;width:100%;height:100%;z-index:0;top:0;left:0;background-size:cover;background-position:center}
.main_slider .slide_item.zoomed .bg{ -webkit-animation: scale-zoom 6s 0s linear infinite; animation: scale-zoom 6s 0s linear infinite; }

.mv_txt{position:absolute;z-index:2;top: 45px;left: 60px;width:auto;height:auto}
.mv_txt .img_mv{margin: 0 0 34px -33px;position: relative}
.mv_txt .img_mv .image-map{position: absolute;left: 0;top: 0;width: 100%;height: 100%}
.mv_txt h2{font-size:52px;font-weight: bold;text-align: left;font-family: var(--font-YuGothic);color:var(--mcolor);letter-spacing: 0.05em;line-height: 1.5em;margin-bottom: 5px;}
.mv_txt h2 .txt{display: block;position: relative}
.mv_txt h2 .txt1{font-size:70%}
.mv_txt h2 .txt2{line-height: 1.5em;}
.mv_txt h2 .bg_line{position: relative}
.mv_txt h2 .bg_line::before{position: absolute;content:"";left: 0;bottom: 8px;height: 31px;background: var(--yellow);z-index: -1;width: 100%;}
.mv_txt h2 .txt3{margin: -2px 0 0 0;display: block;letter-spacing: 0.056em;}
.mv_txt h2 .txt3 .txt_small{font-size: 80.78%}
.mv_txt h2 .txt-b{}
.mv_txt .tt_mv{font-size: 26px;font-weight: bold;color:var(--u_blue);margin-bottom: 8px;}
.mv_txt .desc_mv{font-size:18px;font-weight: 500;line-height: 1.777em;    color: var(--mcolor);}
.txt-mv{display: flex;margin: 0;border-radius: 5px 0px 0px 5px;background: var(--yellow);flex-direction: column;height: 260px;margin-left: 15px;justify-content: center;}
.txt-mv .txt{font-weight: bold;position: relative;color: var(--mcolor);font-size: 13px;-webkit-writing-mode: vertical-rl;-moz-writing-mode: vertical-rl;-ms-writing-mode: tb-rl;writing-mode: vertical-rl;-webkit-text-orientation: upright;-moz-text-orientation: upright;-ms-text-orientation: upright;text-orientation: upright;margin: 5px 0;}
.txt-mv .txt:last-child{margin-right: 0}
.txt-mv .txt:not(:last-child)::before{position: absolute;content:"";width: 2px;height: 15px;background: var(--mcolor);right: 0;bottom: -13px;transform: rotate(90deg);margin: 0 auto;left: 0;}


@keyframes scale-zoom { 0% { -webkit-transform: scale(1.1);
transform: scale(1.1); }
100% { -webkit-transform: scale(1);
transform: scale(1); } }
.tool-sroll{position: fixed;top: 168px;right: 0;transition: 0.3s all ease;z-index: 3;}
.tool-sroll .item{transition: 0.3s all ease;position: relative;box-shadow: 0 2px 6px rgb(0,0,0,20%);position: relative;}
.tool-sroll .item1{display: flex;background: var(--mcolor);border-radius:  20px 0px 0px 20px;padding: 17px 0 0 16px;height: 240px;justify-content: center;left: 0;margin-bottom: 30px;}

.tool-sroll .item1 .info_tt{display: flex;margin-right: 4px;padding-right: 15px;}
.tool-sroll .item1 .info{position: relative;right: -10px;}
.tool-sroll .item .tt{color:#fff;-webkit-writing-mode: vertical-rl;-moz-writing-mode: vertical-rl;-ms-writing-mode: tb-rl;writing-mode: vertical-rl;-webkit-text-orientation: upright;-moz-text-orientation: upright;-ms-text-orientation: upright;text-orientation: upright;font-weight: 600;margin-bottom: 0;padding: 7px 0 0 0;letter-spacing: 0.16em;line-height: 1.2em;}
.tool-sroll .item1 .tt1{font-size: 18px;font-weight: 500;margin-right: 5px;}
.tool-sroll .item1 .tt2{font-size: 29px}
.tool-sroll .item1 .txt_small{font-size: 62.1%;}
.tool-sroll .item2{width: 100px;background:var(--scolor);border-radius:  20px 0px 0px 40px;height: 409px;display: flex;justify-content: flex-end;padding: 35px 0 47px 0;}
.tool-sroll .item2::before{display: none;width: 92px;height: auto;aspect-ratio: 1 / 1;position: absolute;content:"";top: -36px;left: 0;right: 0;margin: 0 auto;background: url(../images/ic_contact.png) center /cover no-repeat}
.tool-sroll .item2 .tt{font-size: 30px;}
.tool-sroll .item2 .tt2{position: absolute;color:var(--u_blue);width: 90px;height: 70px;border-radius: 10px 0 0 30px;background: #fff;bottom: -11px;right: 0;text-align: center;padding: 20px  0 0 3px;}
.tool-sroll .item2 .tt2 .txt-en{display: block;font-family: var(--font-roboto);font-size: 30px;font-weight: bold;line-height: 0.4em;}
.tool-sroll .item2 .tt2 .time{font-size: 76.7%}
.tool-sroll .item2 .tt2 .txt_small{font-size: 16px;font-weight: bold;line-height: 0.5em;}
.tool-sroll .item2 .full_hover{height: calc(100% + 36px);top: -36px;}
.tool-sroll.show{top: 120px}
.tool-sroll.show .item2{height: 380px;padding: 25px 0 47px 0;}


.tool-mv{width: 100%;max-width: 1165px;height: 166px;border-radius: 999px;box-shadow: -5px 6px 0 rgb(0,170,186,20%);position: absolute;bottom: 62px;left: 70px;background: #fff;display: flex;padding: 25px 34px 15px 34px;align-items: center;z-index: 2;justify-content: space-between;}
.tool-mv .item3{text-align: center}
.tool-mv .item{width: calc((100% - 40px) / 5);}
.tool-mv .item p{margin-bottom: 0}
.tool-mv .item .tt-google,.tool-mv .item .tt-b{font-size: 18px;line-height:1.44em;font-weight: bold;position: relative}
.tool-mv .item .tt-b{text-align: center;position: relative;}
.tool-mv .item4 .tt-b{text-align: left}
.tool-mv .item .tt-b1{color:var(--u_blue);}
.tool-mv .item .num{font-size:56px;font-family: var(--font-YuGothic);color: var(--mcolor);font-weight: 700;line-height: 1em;text-align: center;letter-spacing: 0em;}
.tool-mv .item4 .info{display: flex;align-items: center;}
.tool-mv .item4 .info-t{display: flex;flex-direction: column;align-items: center;}
.tool-mv .item4 .info-t .txt-dv{font-size: 25px;font-family: var(--font-YuGothic);color: var(--mcolor);font-weight: 700;line-height: 0.8em;}
.tool-mv .item1 .num{text-align: left;}
.tool-mv .item .num .txt-dv{font-size: 41.1%;}
.tool-mv .item3 .num{letter-spacing: -0.02em;line-height: 0.8;margin-bottom: 12px;font-size: 43px;}
.tool-mv .item3 .num .txt-dv{font-size: 57.2%;position: relative;top: -1px;}
.tool-mv .item3 .tt-b1{margin-bottom: 3px}
.tool-mv .item .tt-b2 {font-size: 8px;}
.tool-mv .item,.tool-mv .item .ic-num,.tool-mv .item .info{position: relative}
.tool-mv .item .ic-num::before,.tool-mv .item .ic-num::after,.tool-mv .item .info::before,.tool-mv .item .tt-google::before{position: absolute;content:"";top: 0;height: auto}
.tool-mv .item .tt-google::before{width: 30px;background: url(../images/ic_mes.png) center /cover no-repeat;right: -5px;aspect-ratio: 5 / 4;top: 4px;}
.tool-mv .item1 .ic-num::after{width: 65px;background: url(../images/ic_start.png) center /cover no-repeat;right: -67px;aspect-ratio: 50 / 31;top: 18px;}
.tool-mv .item2 .info::before{width: 55px;left: 10px;top: 27px;background: url(../images/ic_mv_2.png) center /cover no-repeat;aspect-ratio: 186 / 161;}
.tool-mv .item3 .info::before{width: 40px;left: 28px;top: -15px;background: url(../images/ic_mv_3.png) center /cover no-repeat;aspect-ratio: 113 / 100;}
.tool-mv .item1 .tt-b{text-align: left}
.tool-mv .item3 .num{margin-bottom: 0}
.tool-mv .item3 .tt-b0,.tool-mv .item3 .tt-b1{font-size: 16px;}
.tool-mv .item3 .tt-b0{text-align: right;margin: 0 30px 3px 0;}
.tool-mv .item3 .tt-b1{margin-bottom: 0;font-size: 14px;text-align: center;left: 3px;}
.tool-mv .item3 .tt-b2{text-align: center}
.tool-mv .item4 .info::before{width: 58px;right: -12px;top: 0px;background: url(../images/ic_mv_4.png) center /cover no-repeat;aspect-ratio: 113 / 100;}
.tool-mv .item5 .info::before{width: 85px;background: url(../images/ic_mv_5.png) center /cover no-repeat;aspect-ratio: 113 / 100;right: 0px;top: initial;bottom: 12px;}
.tool-mv .item5 .num{text-align: left}
/*==========================================================
      M A I N    C O N T E N T
==========================================================*/
/* DEFAULT TITLE */
.ttl{font-weight: bold;background: url(../images/ic_title.png) no-repeat top left 10px /51px;padding-top: 73px;}
.ttl span{display: block;}
.ttl .ja{font-size: 48px;font-family: var(--font-YuGothic);letter-spacing: 0.05em;line-height: 1.5em;margin-bottom: 0;}
.ttl .en{font-size: 24px;font-family: var(--font-roboto);font-weight: 500;color: var(--u_blue);letter-spacing:0.025em;}

/* DEFAUTL NAME BUTTON */
.btn a{width: 264px;height: 58px;border-radius: 8px;display: flex;justify-content: center;align-items: center;background: url('../images/ic-right.png') no-repeat right 26px center /22px #fff;font-size: 18px;color: var(--organ);text-decoration: none;font-weight: bold;border: 1px solid var(--organ);font-weight: bold;padding-right: 26px;box-shadow: 0 2px 6px rgb(0, 0, 0, 20%);padding-bottom: 2px;}
.btn.center a{margin-left: auto; margin-right: auto;}

section{padding: 40px 0;}

/*==================== SEC01 ===================*/
.sec01{padding: 250px 0 0px 0;position: relative}
.sec01 .inner{width: 1098px;}
.sec01::before{width: 2124px;left: -111px;position: absolute;content:"";top: 2px;background: url(../images/bg_sec01.jpg) center /cover no-repeat;height: 882px;}
@keyframes river{0%{left: 0}100%{left: -39500px}}
.sec01 .info_sec01{padding: 98px 0 0 0;}
.sec01 .sub_info{position: relative;margin: 67px 0 0 0;}
.sec01 .sub_info::before{right: -192px;position: absolute;content:"";height: auto;width: 140px;background: url(../images/ic_sec01.png) center /cover no-repeat;bottom: -2px;aspect-ratio: 7 / 19;}
.sec01 .sub_info .tt-name{font-size: 32px;font-weight: bold;font-family: var(--font-YuGothic);color:var(--u_blue);letter-spacing: 0.02em;margin-bottom: 33px;}
.sec01 .sub_info .desc{margin-bottom: 45px}



/*==================== SEC02 ===================*/
.sec02{position: relative;padding: 200px 0 145px 0;z-index: 2;}
.sec02::before,.info_sec02::before{position: absolute;content:"";}
.sec02::before{left: -15px;top: 0px;width: 100%;height: 100%;background: url(../images/bg_sec02.png) center /cover no-repeat;background-size: 100% 100%;}
.sec02 .inner{width: 1592px;}
.sec02 .ttl{margin-bottom: 58px;text-align: center;background-position: center top 10px;padding-top: 82px;}
.info_sec02{display: flex;justify-content: space-between;position: relative;z-index: 789;}
.info_sec02::before{height: auto;width: 311px;top: -246px;right: 117px;background: url(../images/ic_sec02.png) center /cover no-repeat;aspect-ratio: 311 / 320;}
.info_sec02 .item{position: relative;width: calc((100% - 60px) / 3);transition: 0.3s all ease;}
.info_sec02 .item .img{margin-bottom: 0}
.info_sec02 .item .img img{border-radius: 20px;box-shadow: 0 2px 6px rgb(0, 0, 0, 20%);}
.sec02_banner{margin: 62px auto 0 auto;max-width: 885px;box-shadow: 0 2px 6px rgb(0, 0, 0, 20%);min-height: 208px;border-radius: 24px;position: relative;overflow: hidden;}
.sec02_banner .ct_sec02_banner{position: relative}
.sec02_banner .ct_sec02_banner::before{background: #eb9500;width: 100%;height: 100%;right: 0;top: 0;}
.sec02_banner .info_banner{position: relative}
.sec02_banner::before,.sec02_banner::after,.sec02_banner .info_banner::before,.sec02_banner .info_banner::after,.sec02_banner .info_banner .tt-sub .txt::before,.sec02_banner .ct_sec02_banner::before{position: absolute;content:""}
.sec02_banner::before{width: 130px;height: auto;background: url(../images/bg_banner.png) center /cover no-repeat;aspect-ratio: 65 / 116;left: -7px;top: -15px;z-index: 1;}
.sec02_banner::after{height: auto;aspect-ratio: 16 / 9;width: 480px;background: url(../images/bg_banner2.png) center /cover no-repeat;mix-blend-mode: multiply;right: -89px;bottom: -61px;}
.sec02_banner .info_banner{padding:31px 0 35px 178px;}
.sec02_banner .info_banner::before{aspect-ratio: 57 / 59;width: 114px;background: url(../images/ic_banner.png) center /cover no-repeat;left: 22px;top: 47px;height: auto;z-index: 2;}
.sec02_banner .info_banner::after{z-index: 2;height: auto;aspect-ratio: 149 / 119;right: -49px;bottom: -55px;width: 298px;background: url(../images/ic_banner2.png) center /cover no-repeat}
.sec02_banner .info_banner .tt-sub,.sec02_banner .info_banner .tt-name{color:#fff;font-weight: 700;}
.sec02_banner .info_banner .tt-sub{font-size: 26px;margin-bottom: 16px;}
.sec02_banner .info_banner .tt-sub .txt{display: inline-block;padding: 3px 27px 6px 25px;background: var(--mcolor);border-radius: 22px;position: relative}
.sec02_banner .info_banner .tt-sub .txt::before{width: 28px;aspect-ratio: 7 / 3;background: url(../images/ic_txt.png) center /cover no-repeat;left: 157px;bottom: -9px;height: auto;}
.sec02_banner .info_banner .tt-name{font-size: 57px;text-shadow:2px 3px 0px #b97901;line-height: 1.2em;}


/*==================== SEC03 ===================*/
.sec03{background: #e2f8fa;margin: -50px 0 0 0px;position: relative;border-radius: 0 0 0px 400px;}

.sec03::before{width: 110px;height: auto;aspect-ratio: 55 / 201;background: url(../images/ic_sec03_after.png) center /cover no-repeat;left: 78px;bottom: -38px;}
.sec03::after{height: auto;width: 180px;aspect-ratio: 113 / 211;background: url(../images/ic_sec03.png) center /cover no-repeat;top: 64px;right: 135px;z-index: 1;}

.sec03 .ttl{margin-bottom: 40px;text-align: center;background-position: center top 10px;padding-top: 82px;width: 100%;}
.sec03 .inner{padding: 0}

.info_sec03 .item{display: flex;align-items: center;justify-content: space-between;background: #e2f8fa;}
.info_sec03 .item .img{position: relative;z-index: 1;width: 560px;height: 390px}
.info_sec03 .item .img::before{width: 100%;height: 100%;background: #fff;top: 0;left: 0;z-index: -1;display: none}
.info_sec03 .item .img::after{width: 1096px;height: auto;aspect-ratio: 548 / 217;background: url(../images/bg_sec03_item.png) center /cover no-repeat;z-index: -2;display: none}
.info_txt{position: relative}
.info_txt .tt-name{position: relative;font-weight: bold;font-size: 30px;font-family: var(--font-YuGothic);letter-spacing: 0.05em;line-height: 1.75em;padding-bottom: 15px;margin-bottom: 38px;}
.info_txt .tt-name .txt1{position: relative;left: -20px}
.info_txt .info{padding: 0;border-radius: 20px;width: calc(100% - 650px);position: relative;z-index: 2;}
.info_txt .num{color:#fff;font-weight: 500;width: 72px;height: 72px;display: flex;align-items: center;justify-content: center;background: #ebc700;border-radius: 50%;font-size: 38px;font-family: var(--font-roboto);margin-bottom: 15px;position: relative;top: 0;left: 0;padding: 6px 0 0 3px;letter-spacing: 0;}
.info_txt .desc{font-size: 21px}
.info_txt .num::before{width: 52px;height: auto;aspect-ratio: 26 / 21;background: url(../images/ic_num.png) center /cover no-repeat;right: -44px;bottom: -3px;}
.info_txt .tt-name::before,.info_txt .tt-name::after{left: 0;bottom: 0;height: 2px;}
.info_txt .tt-name::before{width: 80px;background: var(--u_blue);}
.info_txt .tt-name::after{width: 40px;background: var(--mcolor);}
.info_sec03 .item1{z-index: 1}
.info_sec03 .item2{z-index: 2}
.info_sec03 .item3{z-index: 3}
.info_sec03 .item4{z-index: 4}

.info_sec03 .item1 .img::before,.info_sec03 .item3 .img::before{top: 13px;left: 12px;}
.info_sec03 .item1 .img::after,.info_sec03 .item3 .img::after{right: -410px;top: 126px;}

.info_sec03 .item2 .img::after,.info_sec03 .item4 .img::after{background: url(../images/bg_sec03_item2.png) center /cover no-repeat;}
.info_sec03 .item2 .img::before,.info_sec03 .item4 .img::before{top: 13px;left: -12px;}
.info_sec03 .item2 .img::after,.info_sec03 .item4 .img::after{left: -407px;top: 126px;}

.sec03::before,.info_txt .tt-name::before,.info_txt .tt-name::after,.info_txt .num::before,.info_sec03 .item .img::before,.info_sec03 .item .img::after,.sec03::after{position: absolute;content:""}

.info_sec03_2{background: rgb(255,255,255,80%);width: 1400px;margin: 80px auto 0 auto;padding: 50px 39px 50px 40px;border-radius: 30px 30px 0 0;}
.info_sec03_2 .ttl{background: none;padding-top: 0;margin-bottom: 40px;}
.info_sec03_2 .ttl .ja{color:var(--mcolor);font-size:42px;}
.info_sec03_2 .ttl .ja2{font-size: 32px;font-family: var(--font-YuGothic);letter-spacing: 0.05em;}
.info_sec03_2 .ttl .ja2 .txt-ja{display: inline-block;padding: 3px 12px 1px 14px;color: #fff;border-radius: 12px;background: var(--yellow);line-height: 1.5em;margin-right: 5px;}
.info_list_sec03{display: flex;justify-content: space-between;}
.info_list_sec03 .item{padding: 19px 16px 29px 16px;border-radius: 30px;width: calc((100% - 31px) / 2);background: #fff;position: relative;}
.info_list_sec03{display: flex;justify-content: space-between;}
.info_list_sec03 .item .tt{font-size: 28px;font-weight: bold;font-family: var(--font-YuGothic);width: 100%;padding: 12px 30px 14px 30px;border-radius: 999px;text-align: center;line-height: 1.071em;margin-bottom: 32px;}
.info_list_sec03 .item .img{text-align: center}
.info_list_sec03 .item .desc{text-align: center;margin-bottom: 40px;}
.info_list_sec03 .item .tt-b{font-size: 32px;font-weight: 900;color:var(--mcolor);line-height: 1.2em;text-align: center;}
.info_list_sec03 .item .tt-b .txt_small{font-size: 75%;color: var(--txt);font-weight: bold;}
.info_list_sec03 .item1{border: 1px solid #d1f3f6}
.info_list_sec03 .item1 .tt{background: #e2f8fa}
.info_list_sec03 .item2{border: 1px solid var(--yellow);}
.info_list_sec03 .item2 .tt{background: var(--yellow);color: #fff}
.info_sec03_2 .desc-b{max-width: 1180px;margin: 37px auto 0 auto;font-size: 20px;}
.top_lineup-content .content-item .text .text-inner{position: relative}


/*==================== SEC04 ===================*/
.sec04{position: relative;padding: 100px 0 96px;}
.sec04 .inner{width: 1830px}
.bg_sec04{min-height: 400px;position: relative}
.bg_sec04::before,.sec04 .ttl::before,.sec04 .ttl::after,.info_sec04::before{position: absolute;content:""}
.bg_sec04::before{width: 1920px;height: 100%;left: 0;top: 0;background: url(../images/bg_sec04.jpg) center /cover no-repeat;z-index: -2;}
.sec04 .info_ttl{text-align: center}
.sec04 .info_ttl::before{display: none}
.sec04 .ttl{text-align: center;background-position: center top 10px;padding-top: 82px;margin: -127px auto 60px auto;position: relative;display: inline-block;}
.sec04 .ttl::before{background: url(../images/bg_tt_sec04.svg) center /cover no-repeat;width: 1249px;height: auto;aspect-ratio: 1249 / 522;top: -12px;left: -211px;right: 0;margin: 0 auto;z-index: -1;}
.sec04 .ttl::after{width: 116px;aspect-ratio: 58 / 47;right: -155px;top: 64px;background: url(../images/ic_tt_sec04.png) center /cover no-repeat}
.info_sec04{display: flex;position: relative;justify-content: space-between;}
.info_sec04::before{width: 100%;height: 100%;left: 0;top: -123px;background: #fff;z-index: -1;}
.info_sec04 .item{width: calc((100% - 69px) / 4);background: #f5f5f5;border-radius: 20px;position: relative;padding: 0 0 22px 0;transition: 0.3s all ease;}
.info_sec04 .item .img{margin-bottom: 0}
.info_sec04 .item .img img{border-radius: 20px}
.info_sec04 .item .info{padding: 10px 32px;margin: -29px 0 0 0;position: relative}

.info_sec04 .item .tt-sub{color:#fff;font-size: 20px;font-weight: 500;margin-bottom: 2px;}
.info_sec04 .item .tt-sub .txt{background: var(--mcolor);border-radius: 999px;padding: 2px 16px 4px 15px;}
.info_sec04 .item .tt-name{font-size: 24px;font-family: var(--font-YuGothic);font-weight: bold;margin-bottom: 32px;}
.info_sec04 .item .view{text-align: center;color:var(--scolor);font-size: 18px;font-weight: bold;position: relative;padding: 13px 0 0 0;}
.info_sec04 .item .view::before{position: absolute;left: -10px;top: 0;width: calc(100% + 18px);background: #ccc;height: 1px;content:""}
.info_sec04 .item .view .ic{position: relative;padding-right: 30px;}
.info_sec04 .item .view .ic::before{position: absolute;content:"";right: 0;top: 10px;background: url(../images/ic-right.png) center /cover no-repeat;width: 22px;aspect-ratio: 11 / 3;}

/*==================== SEC05 ===================*/
.sec05{padding: 100px 0;background-color: #fff9f0;}
.btn_banner{max-width: 1200px;border-radius: 20px;background: #fff8d6;position: relative;min-height: 242px;margin: 0 auto;padding: 15px 34px;transition: 0.3s all ease;}
.btn_banner::before,.btn_banner::after,.btn_banner .tt-sub .txt::before,.btn_banner .tt-btn .ic::before{position: absolute;content:"";height: auto}
.btn_banner::before{background: #f1e49b;width: 100%;height: 100%;left: 7px;top: 7px;z-index: -1;border-radius: 20px;}
.btn_banner::after{bottom: -43px;right: -52px;width: 524px;aspect-ratio: 262 / 179;background: url(../images/btn_banner_after.png) center /cover no-repeat;}
.btn_banner .tt-sub{font-size: 20px;color:#fff;line-height: 1.5em;margin: -36px 0 23px 0;}
.btn_banner .tt-sub .txt{display: inline-block;padding: 7px 29px 8px 25px;background: var(--u_blue);border-radius: 999px;box-shadow: -1px 2px 6px rgb(0, 0, 0, 20%);transform: rotate(-2deg);position: relative}
.btn_banner .tt-sub .txt::before{width: 22px;left: 0;right: 0;margin: 0 auto;bottom: -10px;display: inline-block;width: 0;height: 0;border-style: solid;border-width: 12px 11px 0px 11px;border-color: var(--u_blue) transparent transparent transparent;filter: drop-shadow(1px 1px 1px rgb(0, 0, 0, 20%));}
.btn_banner .tt-name,.btn_banner .tt-btn{margin: 0 0 0 28px;}
.btn_banner .tt-name{font-size: 46px;font-weight: bold;font-family: var(--font-YuGothic);color:var(--mcolor);margin-bottom: 13px;}
.btn_banner .tt-btn{color:#fff;font-weight: 600;font-size: 22px;display: inline-block;border-radius: 8px;padding: 8px 22px 11px 31px;background: var(--scolor);box-shadow: 1px 2px 6px rgb(0, 0, 0, 20%);}
.btn_banner .tt-btn .ic{position: relative;padding-right: 37px;}
.btn_banner .tt-btn .ic::before{right: 0;top: 15px;width: 24px;aspect-ratio: 3 / 1;background: url(../images/ic-right-w.png) center /cover no-repeat;}
.btn_banner .full_hover{width: calc(100% + 55px);height: calc(100% + 120px);top: -75px;}

.sec06{padding: 100px 0}
.sec06 .info_sec04 .item .info{margin: 0;padding: 0 10px}
.sec06 .info_sec04 .slick-list{margin: 0 -10px}
.sec06 .info_sec04 .item{border-radius: 0;padding: 10px;margin: 0 10px}
.sec06 .info_sec04 .item .img{margin-bottom: 25px}
.sec06 .info_sec04 .item img{border-radius: 0}
.sec06 .info_sec04 .item .txt{margin-bottom: 0;text-align: center;line-height: 1.3em;}
.sec06 .info_sec04 .item .tt-name,.sec06 .info_sec04 .item .tt-name-en{color: var(--mcolor);}
.sec06 .info_sec04 .item{padding-bottom: 25px}
.sec06 .info_sec04 .item .fancybox_staff{cursor: pointer;position: absolute;width: 100%;top: 0;z-index: 4;height: 100%;left: 0}
.sec06 .info_sec04 .item .tt-name1,.sec06 .info_sec04 .item .tt-name-en{font-size: 14px}
.sec06 .info_sec04 .slick-dots{bottom: -40px}
.sec06 .info_sec04 .slick-dots li{margin: 0}
.sec06 .info_sec04 .slick-dots li button::before{font-size: 13px;}
.sec06 .info_sec04 .slick-dots li.slick-active button::before,.info_sec04 .slick-dots li button:focus::before{color: var(--mcolor);opacity: 1;}


.info_list{max-width: 580px;margin: 0 auto}
.list-index{margin-bottom: 30px;}
.list-index li{display:block;padding-left:22px;margin-bottom:6px;position:relative;font-size: 19px;}
.list-index li::before{background:var(--organ);width:10px;height:10px;position:absolute;top: 15px;left:0;content:'';border-radius: 50%}

.cta-section .ttl{background-position: center top 10px;margin-bottom: 70px;}
.cta-section .info_ttl::before{display: none}
/*#top_lineup{
overflow: hidden;
}*/
.top_lineup {
position: relative;
overflow: hidden;
width: 100vw;
height: 100vh;
display: flex;
align-items: center;
justify-content: center;
}
.top_lineup.fixed {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
z-index: 10;
}

.ft_map_iframe{width: 100%;height: 220px;}

/*SITE OVER*/
.nayami-section {
/* 背景色：少し緊急度を感じさせる薄いイエローや、悩み解決の「夜明け」をイメージさせるグラデーションなどが効果的 */padding: 60px 20px 0px 20px;color: #333;}
.nayami-section .ttl{background: none;padding-top: 0}
.nayami-section .ttl .ja{display: inline-block;position: relative;padding: 0 71px;}
.nayami-section .ttl .ja::before,.nayami-section .ttl .ja::after{position: absolute;content:"";height: auto;width: 75px;aspect-ratio: 75 / 112;top: -22px;}
.nayami-section .ttl .ja::before{
      background: url(../images/ic-tt.png) center /cover no-repeat;
      left: 0;
}
.nayami-section .ttl .ja::after{
      background: url(../images/ic-tt2.png) center /cover no-repeat;
      right: 0;
}
.nayami-container {
max-width: 1200px;
margin: 0 auto;
}

.nayami-header {
text-align: center;
margin-bottom: 50px;
}
.box_checklist{display: flex;justify-content: space-between;}
.box_checklist .box{width: calc((100% - 60px) / 3);}
.nayami-header h2 {
font-size: 28px;
color: #333;
font-weight: bold;
position: relative;
display: inline-block;
}
/* タイトルの強調線 */
.nayami-header h2::after {
content: "";
position: absolute;
bottom: -10px;
left: 50%;
transform: translateX(-50%);
width: 60px;
height: 4px;
background-color: #ff9900; /* 注意・共感を引くオレンジ */
border-radius: 2px;
}

.nayami-header p {
margin-top: 20px;
color: #666;
font-size: 16px;
}
.nayami-container .tt-bottm{text-align: center;margin-bottom: 30px}
.nayami-container .tt-list {font-size: 30px;font-weight: bold;font-family: var(--font-YuGothic);padding: 15px 30px 12px 30px;border-radius: 999px;text-align: center;line-height: 1.071em;margin: 0 auto;background: var(--yellow);color: #fff;display: inline-block;box-shadow: 0 10px 30px rgba(0,0,0,0.05);position: relative;}
.nayami-container .tt-bottm2{font-size: 18px}
/* ▼▼▼ 新しいレイアウト：チェックリスト型 ▼▼▼ */
.checklist-wrapper {

/* アイテム間の余白 */
position: relative;
}
.checklist-wrapper .img_big{position: absolute;}

/* PC表示の時は2列にする（flex-wrap） */
@media (min-width: 768px) {
.checklist-wrapper {
}
.check-item {
/* 2列配置（余白分を引いて計算） */
}
}

.check-item {
background: #fff;
/* 薄い枠線 */
border-radius: 12px;
padding: 20px;
display: flex;
align-items: flex-start; /* 上揃え */
transition: all 0.3s ease;
position: relative;
}

/* ホバー時の動き（少し浮き上がり、枠線が色づく） */


/* 左側のチェックマークエリア */
.check-icon-area {
flex-shrink: 0;
width: 40px;
height: 40px;
background: #ff9900; /* アクセントカラー */
border-radius: 50%;
display: flex;
align-items: center;
justify-content: center;
margin-right: 15px;
margin-top: 2px; /* テキストとの位置調整 */
}

.check-icon-area svg {
width: 24px;
height: 24px;
fill: #fff;
}

/* テキストエリア */
.check-text {
flex: 1;
}

.check-title {
font-size: 22px;
font-weight: bold;
color: #333;
margin: 0 0 8px 0;
line-height: 1.4;
}

/* 強調したいキーワードを色付けする用 */
.highlight {
color: #d35400; /* 濃いオレンジ */
}

.check-desc {
font-size: 14px;
color: #666;
line-height: 1.6;
margin: 0;
}

.cta-section {background-color: #fff9f0; /* ペールオレンジ */padding: 60px 20px;display: flex;justify-content: center;}

.container {max-width: 1200px;width: 100%;}

/* --- ヘッダーテキスト --- */
.section-title {
text-align: center;
font-size: 24px;
font-weight: bold;
color: #e67e22; /* タイトルもオレンジ系で統一 */
margin-bottom: 40px;
text-shadow: 1px 1px 0 #fff;
}
.section-title .tt-small{
font-size: 16px; font-weight: normal; color:#666;
}



/* --- 比較表のラッパー --- */
.comparison-wrapper {
display: flex;
flex-direction: column;
gap: 15px;
position: relative;
}

/* 「売却」列を強調する背景（絶対配置） */
.highlight-bg {position: absolute;top: -18px;bottom: -50px;left: 300px; /* 左ラベル幅 + 余白 */width: 25%; /* 3列の均等割り */background-color: #ffffff; /* 白で抜くことで青い表とコントラストを出す */box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); /* 影で浮かせる */border: 4px solid #f39c12; /* 金色の枠線で「おすすめ感」 */z-index: 0;}

/* --- ヘッダー行 --- */
.header-row {
display: flex;
padding-left: 25%;
margin-bottom: -6px;
position: relative;
z-index: 1;
}

.col-header {
flex: 1;
text-align: center;
font-weight: bold;
font-size: 21px;
color: #555;
display: flex;
flex-direction: column;
align-items: center;
justify-content: flex-end;
}

/* 売却ヘッダー */
.col-header.highlight {
color: #e67e22; /* ここだけ暖色にして目立たせる */
}

.badge {
background-color: #f39c12;
color: #fff;
font-size: 15px;
padding: 4px 15px;
border-radius: 20px;
margin-bottom: 5px;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);
letter-spacing: 0.05em;
}

/* --- データ行 --- */
.row-item {
display: flex;
align-items: stretch;
position: relative;
z-index: 1;
}

/* 左側の項目ラベル */
/* 参考画像[1]に合わせて青系のグラデーションに変更 */
.row-label {justify-content: center;width: 25%;flex-shrink: 0;color: white;font-weight: bold;display: flex;align-items: center;padding: 15px 10px 15px 25px;border-top-left-radius: 50px;border-bottom-left-radius: 50px;font-size: 20px;box-sizing: border-box;text-shadow: 1px 1px 2px rgba(0,0,0,0.1);}

/* 参考画像のような3段階の青グラデーション */
.row-money {background: linear-gradient(90deg, #49B3C4 0%, #C9D9B8 100%); } /* 水色 */
.row-effort { background: linear-gradient(90deg, #49B3C4 0%, #C9D9B8 100%); } /* 青緑 */
.row-risk {background: linear-gradient(90deg, #49B3C4 0%, #C9D9B8 100%);}   /* 青 */

/* 行の中身エリア */
.row-content {
flex: 1;
display: flex;
}

.cell {flex: 1;display: flex;align-items: center;justify-content: center;padding: 4px 5px 20px 5px;font-size: 22px;text-align: center;border-bottom: 1px solid #e0e0e0;}
.tt-cell{font-size: 23px;align-items: flex-start;}
.tt-cell .circle{position: relative;top: -2px}
.cell:last-child {
border-right: none;
}

/* 売却セル（強調） */
.cell.highlight {
font-weight: bold;
color: #2c3e50; /* 文字は濃い色で読みやすく */
border-bottom: 1px solid #f1c40f; /* 金色の下線 */

}

/* アイコン装飾 */
.mark {
display: inline-block;
width: 20px;
font-weight: bold;
font-size: 1.1em;
margin-right: 5px;
}
.circle { color: #e74c3c; } /* 赤丸（日本式） */
.triangle { color: #f39c12; } 
.cross { color: #95a5a6; } 

/* --- 結論＆CTAエリア --- */
.footer {
text-align: center;
margin-top: 77px;
position: relative;
z-index: 2;
}

.message {font-size: 25px;margin-bottom: 30px;color: #444;}

.text-em {
color: #e67e22;
font-weight: bold;
font-size: 1.2em;
border-bottom: 2px solid #f39c12;
}

/* CTAボタン（黄色系で青い表との対比を作る） */
.cta-btn {
display: inline-block;
background: linear-gradient(to bottom, #ffeb3b, #fdd835);
color: #333; /* 文字は黒系で視認性重視 */
font-size: 20px;
font-weight: bold;
padding: 18px 50px;
border-radius: 50px;
text-decoration: none;
box-shadow: 0 4px 10px rgba(0,0,0,0.15);
transition: transform 0.2s, opacity 0.2s;
}


.seminar-orange-banner {
/* サイトの幅に合わせて調整してください */max-width: 1200px;margin: 40px auto;text-decoration: none;display: block; /* リンクとして機能させる */box-sizing: border-box;

/* モダンな影と角丸 */box-shadow: 0 10px 25px rgba(255, 126, 0, 0.15);border-radius: 12px;background: #fff;transition: transform 0.3s ease;position: relative;

/* 外枠のデザイン（オレンジの太枠） */border: 4px solid #ff8c00;}
.seminar-orange-banner .tt-banner {width: 150px;height: 100px;border-radius: 50%;position: absolute;right: -40px;top: -50px;background: yellow;z-index: 2;display: flex;align-items: center;justify-content: center;text-align: center;line-height: 1.2em;font-size: 22px;box-shadow: 10px 3px 0px var(--mcolor);font-weight: bold;color: var(--mcolor);margin-bottom: 0;}


/* 内部レイアウト */
.banner-inner {padding: 0px 30px 0px 30px;background: #fff;position: relative;border-radius: 40px;display: flex;justify-content: space-between;align-items: center;background-image: repeating-linear-gradient(45deg, #fff, #fff 10px, #fffaf0 10px, #fffaf0 20px);}
.banner-inner .info_ttl{margin: 0 0 54px 0;left: 40px;position: absolute;text-align: left;top: -20px;}
/* 装飾：上部のラベル（囲いデザインの一部） */
.banner-label {background-color: #ff8c00;color: #fff;font-size: 20px;font-weight: bold;padding: 6px 20px;border-radius: 20px;letter-spacing: 0.1em;position: relative;display: inline-block;}
/* ラベルの下に小さな三角形をつけて吹き出し風にする装飾 */
.banner-label::after {content: "";position: absolute;bottom: -8px;left: 50%;transform: translateX(-50%);border-width: 10px 10px 0;border-style: solid;border-color: #ff8c00 transparent transparent transparent;}

/* キャッチコピー */
.banner-catch {font-size: 18px;color: #555;font-weight: bold;text-align: left;margin-bottom: 0;line-height: 1.4;}

/* 強調したい部分 */
.highlight-text {color: #ff6600; /* 文字色を濃いオレンジに */border-bottom: 2px dashed yellow; /* 下線装飾 */}

/* 装飾：区切り線（罫線） */
.banner-separator {width: 60px;height: 3px;margin: 5px 0;}

/* メインタイトル（無料相続セミナー） */
.banner-title {font-weight: 900;text-align: left;line-height: 1.2;letter-spacing: 0.05em;margin-bottom: 10px;font-family: var(--font-PLUSRounded);display: inline-block;position: relative;}
.banner-title span{

color: #ff8c00;

position: relative;

z-index: 2;

-webkit-text-stroke: 2px #fff; /* viền trắng */

text-shadow: 4px 0 #1e3a8a,
    -5px 0 #1e3a8a,
    0 5px #1e3a8a,
    0 -4px #1e3a8a,
    4px 4px #1e3a8a,
    -4px -4px #1e3a8a,
    4px -4px #1e3a8a,
    -4px 4px #1e3a8a;

}
.banner-title span::before{content: attr(data-text);position: absolute;left: 0;top: 0}
.banner-inner .txt-info{font-size: 18px;margin-bottom: 15px;}
/* 「無料」の部分を目立たせる囲い */
.title-badge {
display: inline-block;
background: #ff8c00;
color: #fff;
padding: 2px 12px;
border-radius: 6px;
font-size: 0.7em; /* タイトルに対して少し小さく */
vertical-align: middle;
margin-right: 10px;
transform: translateY(-4px); /* 少し位置調整 */
}

/* CTAボタン */
.banner-btn {background: #ff6600; /* グラデーションでも可 */background: linear-gradient(to right, #ff8c00, #ff5500);color: #fff;font-size: 18px;font-weight: bold;padding: 16px 60px;border-radius: 50px;box-shadow: 0 4px 10px rgba(255, 102, 0, 0.3);position: relative;overflow: hidden;max-width: 260px;}

.banner-btn::after {
content: " >"; /* 矢印 */
font-weight: normal;
margin-left: 10px;
}

/* 右上の装飾リボン（モダンなアクセント） */
.corner-ribbon {position: absolute;top: -3px;right: 0;width: 0;height: 0;opacity: 0.8;z-index: 2;}
.banner-inner::before,.banner-inner::after{height: auto;position: absolute;content:"";aspect-ratio: 15 / 8;width: 300px;}

.info_ttl{position: relative;text-align: center;}
.info_ttl::before {aspect-ratio: 1 / 1;width: 70px;background: url(../images/ic_banner.png) center / cover no-repeat;right: -80px;top: -17px;height: auto;z-index: 2;position: absolute;content:"";}
.banner-inner .info_ttl::before{display: none}
.banner-inner .banner-label::before {aspect-ratio: 1 / 1;width: 70px;background: url(../images/ic_banner.png) center / cover no-repeat;right: -80px;top: -17px;height: auto;z-index: 2;position: absolute;content:"";}
.members-detail {
    position: fixed;
    top: 0;
    right: -100vw;
    width: 100%;
    height: 100%;
    z-index: 10005;
    pointer-events: none;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    opacity: 0;
    visibility: hidden;
}
.members-detail.active {
    right: 0;
    pointer-events: auto;
    opacity: 1;
    visibility: visible;
}
.members-detail__bg {
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    -webkit-transition: opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: opacity 1s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.members-detail.active .members-detail__bg {
    opacity: 1;
}
.members-detail__wrapper {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    background-color: #f6f6f6;
    -webkit-transform: translate3d(100%, 0px, 0px);
    transform: translate3d(100%, 0px, 0px);
    -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.members-detail.active .members-detail__wrapper {
    -webkit-transform: translate3d(0px, 0px, 0px);
    transform: translate3d(0px, 0px, 0px);
}
.members-detail__content {
    position: relative;
    height: 100%;
    overflow-y: scroll;
}
.members-detail__images {
    display: inline-block;
    width: 45%;
    max-width: 510px;
    overflow: hidden;
    position: relative;
}
.members-detail__info{width: calc(100% - 45%);position: relative;z-index: 789;}
.members-detail__close-button {
    position: absolute;
    top: 30px;
    right: 30px;
    background-color: #fff;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    cursor: pointer;
}
.members-detail__close-button:before {
    content: "";
    width: 25px;
    height: 3px;
    background-color: #000;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0px) rotate(45deg);
    transform: translate3d(-50%, -50%, 0px) rotate(45deg);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.members-detail__close-button:after {
    content: "";
    width: 25px;
    height: 3px;
    background-color: #000;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate3d(-50%, -50%, 0px) rotate(-45deg);
    transform: translate3d(-50%, -50%, 0px) rotate(-45deg);
    -webkit-transition: -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    -o-transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
    transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), -webkit-transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.item-member-detail{display: none;z-index: 78999;position: relative;height: 100%;}
.item-member-detail.active{display: block;}
.list-detail-staff .txt-ja,.list-detail-staff .txt-en{color: var(--mcolor);}
.list-detail-staff .name-big{margin: 15px 0}
.list-detail-staff .txt-ja{font-size: 30px;font-weight: bold;margin-right: 15px;}
.list-detail-staff .line-dot{text-decoration: underline;text-decoration-style: dotted;text-underline-offset: 3px;}

/*==========================================================
              F O O T E R
==========================================================*/

.full_hover{position: absolute;width: 100%;height: 100%;top: 0;z-index: 3;left: 0}

footer{position: relative;z-index: 3;}
.dot{position: relative;}
.dot::before{width: 12px;height: 12px;top: -10px;left: 0;right: 0;margin: 0 auto;background: var(--yellow);border-radius: 50%;position: absolute;content:""}

.ft_top{position: relative;padding: 100px 0 97px;min-height: 963px}
.ft_top::before,.ft_top::after{position: absolute;content:"";width: 100vw;left: 50%;min-width: 1260px;transform: translateX(-50%);}
.ft_top::before{height: 100%;top: 0;background: url(../images/bg_footer.png) center /cover no-repeat;z-index: -2}
.ft_top::after{top: 130px;height: 693px;background: url(../images/bg_footer_2.png) center /cover no-repeat;z-index: -1}
.ft_top .info_ft{position: relative;padding: 311px 0 0 0;margin: -114px 0 47px;}
.ft_top .info_ft::before{width: 910px;height: auto;aspect-ratio: 455 / 171;background: url(../images/tt-ft.png) center /cover no-repeat;top: 0;right: 0;margin: 0 auto;position: absolute;content:"";left: -8px;}
.ft_top .tt-name{color:#fff;font-weight: bold;font-family: var(--font-YuGothic);font-size: 52px;text-align: center;line-height: 1.65em;letter-spacing: 0.05em;margin-bottom: 39px;}
.ft_top .tt-name .txt{display: inline-block;padding: 14px 15px 8px 21px;background: var(--mcolor);border-radius: 12px;line-height: 1.2em;margin-right: 2px;}
.ft_top .tt-desc{font-size: 18px;font-weight: 500;color:#fff;line-height: 1.77em;text-align: center}
.ft_top .tt-desc .txt{display: inline-block;padding: 4px 4px 6px 4px;color: var(--mcolor);border-radius: 4px;background: #fff;line-height: 1em;font-weight: bold;}
.info_link{position: absolute;width: 100%;height: 230px;max-width: 768px;top: 30px;left: 0;right: 0;margin: 0 auto;display: flex;justify-content: space-between;}
.info_link .link{height: 100%;width: 49%;display: block;}
.info_contact{max-width: 1200px;min-height: 182px;background: #fff;border-radius: 999px;margin: 0 auto;display: flex;padding: 48px 67px 130px 67px;}
.info_contact .item{position: relative}
.info_contact .item1{padding: 10px 0 0 0;margin: 0 37px 0 0;}
.info_contact .item2{margin: 0 40px 0 0;}
.info_contact .item2 .btn-contact{margin-bottom: 0}
.tel{margin-bottom: 0px;}
.tel a{color:var(--mcolor);font-size: 36px;font-family: var(--font-YuGothic);font-weight: 700;letter-spacing: 0.032em;}
.tel a .ic-tel{position: relative;padding-left: 28px;}
.tel a .ic-tel::before{position: absolute;content:"";left: 0;top: 10px;aspect-ratio: 11 / 14;width: 22px;background: url(../images/ic_tel.png) center /cover no-repeat}
.time-ft{text-align: center;font-size: 20px;color:#413c36;margin-bottom: 0;}
.time-ft .time1{margin-right: 33px;position: relative}
.time-ft .time1::before{position: absolute;content:"";right: -18px;width: 1px;height: 20px;background: #413c36;top: 4px;}
.btn-group a{border-radius: 12px;height: 86px;display: flex;align-items: center;justify-content: center;color:#fff;font-weight: 600;font-size: 24px;box-shadow: 0 2px 6px rgb(0, 0, 0, 20%);color:#fff;position: relative}
.ic-btn{position: relative}
.ic-btn::before{position: absolute;content:"";height: auto}
.btn-contact a{width: 399px;background: var(--scolor);} 
.btn-line a{width: 305px;background: var(--green);} 
.btn-contact a .ic-btn{padding-left: 40px;}
.btn-contact a .ic-btn::before{width: 30px;aspect-ratio: 1 / 1;background: url(../images/ic_h_mail.png) center /cover no-repeat;left: 0;top: 1px;}
.btn-line a .ic-btn{padding-left: 46px;}
.btn-line a .ic-btn::before{width: 54px;aspect-ratio: 27 / 26;background: url(../images/ic_h_line.png) center /cover no-repeat;left: -17px;top: -11px;}
.desc_box a{text-decoration: underline;text-underline-offset: 3px;}

/* FOOTER INFORMATION */
.ft_top2{padding: 107px 0 25px;}
.info_top_2{display: flex}
.info_top_2 .box_left{margin-right: 98px;width: 380px;}
.info_top_2 .box_cen{margin-right: 100px;width: 419px;}
.logo_ft,.ft_info_address{text-align: center}
.logo_ft{margin-bottom: 32px}
.ft_info_address{margin-bottom: 21px;}
.ft_info_tel{display: flex;margin: 0 0 16px 35px;align-items: center;position: relative}
.ft_info_tel .txt-tel{display: flex;height: 25px;width: 66px;color:#fff;background: var(--mcolor);justify-content: center;align-items: center;border-radius: 999px;margin-right: 12px;padding-bottom: 1px;}
.ft_info_tel a,.txt-fax{font-size: 32px;color: var(--mcolor);font-weight: bold;position: relative;line-height: 1;display: block;font-family: var(--font-roboto);}
.ft_info_tel a{display: flex;}
.ft_info_tel a .txt-tel{font-size: 16px;padding-top: 2px;font-weight: 500;position: relative;top: 3px;}

.box_ft{padding: 20px 3px 18px 3px;border-top: 1px solid #0cb5c5;border-bottom: 1px solid #0cb5c5;margin: 28px 0;}
.box_ft .tt-name{color:#0cb5c5;font-weight: bold;font-size: 20px;line-height: 1.4em;margin-bottom: 4px;}
.desc_ft{font-size: 14px;line-height: 1.7em;margin-left: 2px;margin-bottom: 35px;}
.banner_ft2{margin: 15px  0 0 0;text-align: right}
.banner_ft2 a:not(:last-child){margin: 0 5px 0 0}
.iframe_form{width: 100%;margin: 30px 0 0 }

.iframe_form iframe{height:1370px;border-radius: 20px}

/* FOOTER LINK */
.ft_link{margin: 92px 0 0 0;}
.ft_link .inner{display: flex;justify-content: center}
.ft_link ul{border-bottom: 1px solid #ccc;margin-bottom: 31px;padding-bottom: 25px;padding-left: 0px;}
.ft_link .ul_2{margin-bottom: 29px;padding-bottom: 24px;}
.ft_link ul:last-child{border-bottom: none;padding-bottom: 0;margin-bottom: 0;}
.ft_link ul li p{font-size: 125%;font-weight: bold;color: var(--u_blue);font-family: var(--font-YuGothic);margin-bottom: 16px;}
.ft_link ul li p a{}

.ft_link ul li{margin-bottom: 9px;}
.ft_link ul li > a{position: relative;}

.box_right{margin: 102px 0 -26px 0;width: 412px;}
.banner_ft .item{margin-bottom: 15px;text-align: center}
.banner_ft .item img{box-shadow: 0 2px 6px rgb(0, 0, 0, 20%);border-radius: 10px}

address{text-align:center;font-size: 15px;padding: 38px 0px;font-family: var(--font-roboto);}

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

}