@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, del{
  font-size: 1.8rem;
  -webkit-text-size-adjust: none;
  font-weight: 400;
}
*,::before,::after{box-sizing:border-box;outline: none;}
img {vertical-align: middle;max-width: 100%;flex-shrink: 0;height: auto;}
select { visibility: visible !important; }
a{transition:all ease 0.3s;text-decoration:none;color: var(--txt);}
a[href^="tel:"] {word-break: keep-all;}
video{max-width: 100%;height: auto;}
figure{margin: 0;}
figure:not(:last-child){margin-bottom: 20px;}
/*==========================================================================*/
/*                               Container                                  */
/*==========================================================================*/
html{background:#fff;font-size:clamp(8px,0.520834vw,10px)}
body{-webkit-text-size-adjust:none;min-width:320px;color:var(--txt);font-family: var(--f-main)}
table {width: 100%}
h1,h2,h3,h4,h5,h6{line-height: 1.4;}
p,dd,dt,li,th,td,address{line-height: 1.8;letter-spacing: 0.09rem;}
p{margin: 0 0 1.55em;}
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);}
.blue{color: var(--mcolor);}
.txt_u{text-decoration: underline;}
.f_big{font-size: 150%;}
.f_sm{font-size: 80%;}
.m0a{display: block;margin-left: auto;margin-right: auto;}
[data-aos=fade-up] {transform: translate3d(0, 50px, 0);}
:root {
  --txt: #333333;
  --mcolor: #03517c;
  --scolor: #00314b;
  --container: 143rem;

  --gray: #f9f9f9;
  --blue: #03517c;
  --red: red;

  --f-main: 'Noto Sans JP', sans-serif;
  --f-mincho: "Shippori Mincho", serif;
}

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

/*==========================================================
                       H E A D E R
==========================================================*/
/* HAMBUGER BUTTON */
.hamburger{font:inherit;display:block;overflow:visible;margin:0;padding:1rem 0.8rem 0.5rem;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:3.5rem;height:2.4rem}
.hamburger-inner{top:50%;display:block;margin-top:-0.2rem}
.hamburger-inner,
.hamburger-inner::after,
.hamburger-inner::before{position:absolute;width:3.5rem;height:2px;transition:all ease 0.15s;background-color:#000}
.hamburger-inner::after,
.hamburger-inner::before{display:block;content:""}
.hamburger-inner::before{top:-1rem}
.hamburger-inner::after{bottom:-1rem}
.hamburger--3dxy .hamburger-box{perspective:8rem}
.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,1rem,0) rotate(45deg)}
.hamburger--3dxy.is_active .hamburger-inner::after{transform:translate3d(0,-1rem,0) rotate(-45deg)}

header{position: relative; z-index:9999;}
.h_box{width:100%;position: fixed;}
.h_inner{display:flex;justify-content:flex-end;align-items: center;height: 100%;}

@keyframes scrolltop {
    0%{transform:translateY(-9rem);transform-origin:center;opacity:0;transition:ease-in-out}
    100%{transform:translateY(0);opacity:1}
}
.is_scroll .h_box{animation: scrolltop 1s; animation-iteration-count: 1; background-color: rgba(255,255,255,1); box-shadow: 0.2rem 0 1.5rem rgb(0 0 0 / 20%);}
/*==========================================================
                  M A I N    V I S U A L
==========================================================*/
main{position: relative;z-index: 3;}
.mv{position: relative;padding: 0;background: url('../images/mv_bg.jpg') no-repeat center /cover;}
.mv::after{content: "";background: url('../images/mv_map.png') no-repeat center /contain;z-index:0;pointer-events: none;position: absolute;}
.mv_inner{max-width: 192rem;margin: 0 auto;height: 100%;position: relative;}
.mv_box{height: 100%;display: flex;justify-content: center;align-items: center;padding-bottom: 3rem;}
.mv_tt,.mv_des{text-align: center;font-weight: bold;color: var(--scolor);font-family: var(--f-mincho);text-shadow: 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9) ;}
.mv_tt {font-size: 4.8rem;margin-bottom: 3rem;line-height: 1.8;letter-spacing: 0.25rem;}
.mv_tt .lg {font-size: 6.2rem;letter-spacing: 0.6rem;}
.mv_des {font-size: 3.8rem;letter-spacing: 0.18rem;}
.mv_fr {padding: 1.4rem 5.2rem 1.3rem 1rem;border-left: 0.6rem solid var(--mcolor);font-size: 2rem;font-weight: 500;z-index: 1;line-height: 1.6;letter-spacing: 0.12rem;text-align: center;}
.mv_fr::after{content: "";position: absolute;width: calc(100% + 0.9rem);height: calc(100% + 1.5rem);top: -0.6rem;left: 0;background: url('../images/mv_fr_bg.png') no-repeat center right /cover;z-index: -1;pointer-events: none;}
.mv_fr .lg {font-size: 2.4rem;font-weight: 800;color: #035582;font-family: var(--f-mincho);display: inline-block;transform: translateY(-0.2rem);}
.mv_fr .sm {font-size: 1.6rem;margin-top: 0rem;display: block;}
.mv_cta {display: flex;align-items: center;gap: 2.4rem;width: fit-content;margin-left: auto;bottom: 2rem;right: 6.6rem;position: fixed;z-index: 99;transition: all 0.3s;}
.mv_cta_ite a{border-radius: 0.8rem;display: flex;flex-direction: column;align-items: center;justify-content: center;text-align: center;color: #FFF;box-shadow:0.2rem 0 1.5rem rgba(0, 0, 0, 0.2);position: relative;height: 14.4rem;font-family: var(--f-mincho);}
.mv_cta_btn a{width: 28.4rem;padding-top: 1.8rem;}
.mv_cta_btn a .slg {font-size: 2rem;font-weight: 600;width: 22.8rem;height: 3.6rem;display: flex;justify-content: center;align-items: center;background-color: #76919f;position: absolute;top: -1.4rem;left: calc(50% - 11.4rem);letter-spacing: 0.1rem;}
.mv_cta_btn a .slg span{display: inline-block;padding-left: 2rem;position: relative;}
.mv_cta_btn a .slg span::before{content: '';position: absolute;left: 0;}
.mv_cta_btn a .num {font-size: 2.8rem;font-weight: 600;line-height: 1;margin-bottom: 0.8rem;letter-spacing: 0.23rem;}
.mv_cta_btn a .date {font-size: 1.6rem;font-weight: 400;font-family: var(--f-main);line-height: 1.65;letter-spacing: 0.09rem;}
.mv_cta_btn a .tt {font-size: 2.4rem;font-weight: 600;line-height: 1.6;letter-spacing: 0.1rem;}
.mv_cta_tel a{background-color: var(--scolor);}
.mv_cta_tel a .slg span::before{background: url('../images/ic_tel.svg') no-repeat center /contain;width: 1.9rem;height: 1.8rem;top: calc(50% - 0.9rem);left: -0.4rem;}
.mv_cta_contact a{background-color: var(--mcolor);}
.mv_cta_contact a .slg span{padding-left: 3.3rem;}
.mv_cta_contact a .slg span::before{background: url('../images/ic_mail.svg') no-repeat center /contain;width: 2.6rem;height: 2rem;top: calc(50% - 1rem);}
.mv_cta_line a{width: 14.4rem;background-color: #06c755;font-size: 1.8rem;font-weight: 800;padding-bottom: 0.7rem;letter-spacing: 0.1rem;}
.mv_cta_line a::before{content: '';width: 9rem;height: 8.9rem;background: url('../images/ic_line.svg') no-repeat center /contain;display: block;margin: 0 auto 0.5rem;}
.mv_cta.show{right: 13rem;}
@media screen and (min-width: 751px) {
  .mv{height: 920px;min-height: 70vh;}
  .mv_fr {position: absolute;left: 4rem;top: 52.5%;min-height: 12rem;width: 33.9rem;}
  .mv::after{transition: all 0.4s !important;transition-delay: 0.3s;bottom: -18.3rem;left: 1.8rem;width: 51rem;height: 57.6rem;}
  .mv:has(.mv_fr.aos-animate)::after{bottom: -15.3rem;}
}

/*==========================================================
                M A I N    C O N T E N T
==========================================================*/
/* DEFAUTL NAME BUTTON */
.btn a{width: 28.3rem;height: 6.7rem;border-radius: 99.9rem;display: flex;justify-content: center;align-items: center;font-size: 2rem;color: #fff;font-weight: 600;position: relative;overflow: hidden;box-shadow:0 0.2rem 0.6rem rgba(0, 0, 0, 0.4);background: linear-gradient( 140deg,#035a88 0%,#035a88 54%,#024a72 52%,#024a72 100% );max-width: 100%;text-align: center;}
.btn a::after{content: '';position: absolute;width: 0.8rem;height: 1.3rem;background: url('../images/ic_arrow.svg') no-repeat center /contain;top: calc(50% - 0.6rem);right: 2.3rem;}
.btn.center a{margin-left: auto; margin-right: auto;}
.btn.btn_cus a{width: fit-content;padding: 1rem 6.9rem 1.5rem;height: auto;font-size: 2.8rem;letter-spacing: 0.14rem;}

.btn_box:not(:last-child){margin-bottom: 3rem;}
.btn_box{display: flex;flex-wrap: wrap;align-items: center;gap: 3rem;}
.btn_box.center{justify-content: center;}
.btn_box .btn{margin: 0;}

.ttl_h3{text-align: center;font-size: 4.8rem;font-family: var(--f-mincho);font-weight: bold;color: var(--scolor);margin-bottom: 2.8rem;letter-spacing: 0.22rem;}
.ttl_h3 .bg{color: #FFF;background-color: var(--scolor);padding: 0.3rem 1.1rem 0.7rem;line-height: 1.2;display: inline-block;margin-right: -0.8rem;}
.ttl_en {font-weight: 500;font-size: 2rem;width: 100%;overflow: hidden;gap: 1.2rem;display: flex;align-items: center;margin-bottom: 4.2rem;}
.ttl_en::after{content: "";background-color: var(--scolor);height: 1px;width: 100%;margin-top: 0.3rem;}
.ttl_en span{display: block;flex-shrink: 0;width: fit-content;}

/*============= SEC01 ==============*/
.sec01 {position: relative;}
.sec01::after{content: '';position: absolute;width: 100%;height: 35.6rem;background-color: var(--gray);z-index: -1;pointer-events: none;left: 0;bottom: 0;}
.sec01_container .ttl_h3 .sm {font-size: 3.8rem;color: var(--txt);}
/* .sec01_frame {background-color: #dfebf2;border-radius: 2.4rem;box-shadow: 0.2rem 0 2rem rgba(0, 0, 0, 0.1);padding: 4.1rem 4rem;} */
.sec01_frame {border-radius: 2.4rem;box-shadow: 0.2rem 0 2rem rgba(0, 0, 0, 0.1);}
.sec01_frame_tt {background-color: #FFF;text-align: center;position: relative;border-radius: 0.8rem;color: var(--scolor);font-size: 2.4rem;margin-bottom: 2rem;font-weight: bold;line-height: 1.2;padding: 1.2rem 1rem 1.3rem;letter-spacing: 0.1rem;}
.sec01_frame_tt:not(:last-child){margin-bottom: 2.5rem;}
.sec01_frame_tt:not(:first-child)::before{content: '';position: absolute;width: 0.2rem;height: 2.4rem;background-color: var(--scolor);top: -2.4rem;left: calc(50% - 0.1rem);}
.sec01_frame_tt:first-child::before{content: '';position: absolute;width: 0.2rem;height: 2.4rem;background-color: var(--scolor);bottom: -2.4rem;left: calc(50% - 0.1rem);}
.sec01_frame_tt .sm {font-size: 2rem;line-height: 1.6;}
.sec01_frame_tt.blue{color: var(--mcolor);}
.sec01_frame_tt2 {text-align: center;font-size: 2.4rem;font-weight: bold;color: var(--scolor);margin: 3.4rem 0.8rem 3.4rem 0;line-height: 1.45;letter-spacing: 0.15rem;}
.sec01_frame_tt2 .lg {font-size: 3.2rem;color: var(--mcolor);}

.sec01_frame_tt::after{content: "";position: absolute;bottom: 0;pointer-events: none;z-index: 1;}
.sec01_frame_tt.st1::after{width: 5.9rem;height: 7.1rem;background: url('../images/sec01_frame_tt_ic1.png') no-repeat center bottom /contain;left: 1.5rem;}
.sec01_frame_tt.st2::after{width: 11.1rem;height: 14.4rem;background: url('../images/sec01_frame_tt_ic2.png') no-repeat center bottom /contain;right: 1.3rem;}
.sec01_frame_tt.st3{text-align: left;padding: 1.8rem 2.5rem;}
.sec01_frame_tt.st3::after{width: 20.6rem;height: 12.2rem;background: url('../images/sec01_frame_tt_ic3.png') no-repeat center bottom /contain;right: -2.5rem;}

@media screen and (min-width: 751px) {
  .sec01{padding: 20.5rem 0 6.3rem;}
  .sec01_box {display: flex;justify-content: space-between;}
  .sec01_frame {width: 45%;max-width: 60rem;}
  .sec01_container {width: 52%;max-width: 72rem;margin-top: -1.1rem;}
  .sec01_container .ttl_h3 {text-align: left;}
  .sec01_container .ttl_h3 .bg {margin-top: 1.7rem;}
  .sec01_container .des {margin-bottom: 5.3rem;}
}

/*============= SEC02 ==============*/
.sec02_box .ttl_sm{font-size: 3.2rem;font-weight: bold;font-family: var(--f-mincho);width: fit-content;margin-bottom: 1.8rem;border-bottom: 0.1rem solid var(--scolor);letter-spacing: 0.18rem;line-height: 1.45;}
.sec02_box .ttl_h3{text-align: left;text-shadow: 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9), 0rem 0rem 1.4rem rgba(255, 255, 255, 0.9)}
.sec02_box_item{position: relative;}
.sec02_box_item:nth-of-type(1) {background: url('../images/sec02_img1.png') no-repeat top right -0.7rem/auto;margin-left: 1.5rem;}
.sec02_box_item:nth-of-type(2) {background: url('../images/sec02_img2.png') no-repeat top right -0.8rem/auto;}
.sec02_slg {background-color: rgba(223, 235, 242, 0.8);text-align: center;z-index: 1;}
.sec02_slg .en {font-weight: 500;color: var(--scolor);margin-bottom: 1rem;}
.sec02_slg .ja {font-weight: bold;color: var(--scolor);letter-spacing: 0.15rem;}
.sec02_reason {position: relative;z-index: 2;}
.sec02_reason dl{display: flex;align-items: center;gap: 3rem;border: 1px solid var(--mcolor);border-radius: 1.3rem;border-left: 1.4rem solid var(--mcolor);box-shadow: 0.2rem 0 0.6rem rgba(0, 0, 0, 0.2);padding: 1.6rem 1.7rem 1.7rem;background-color: #FFF;}
.sec02_reason dl:not(:last-child){margin-bottom: 1.5rem;}
.sec02_reason dl dt{font-size: 2rem;flex-shrink: 0;text-align: center;line-height: 1.2;font-weight: bold;color: var(--mcolor);padding-top: 0.2rem;}
.sec02_reason dl dt span{font-size: 3.2rem;display: block;}
.sec02_reason dl dd{font-size: 2.8rem;font-weight: bold;letter-spacing: 0.14rem;}

@media screen and (min-width: 751px) {
  .sec02{padding: 3rem 0 11.8rem;}
  .sec02_box{display: flex;justify-content: center;gap: 3.9%;padding-left: 2.2%;}
  .sec02_box_item{width: 48%;max-width: 89.7rem;padding-top: 20.6rem;}
  .sec02_box .ttl_h3{font-size: 5.2rem;letter-spacing: 0.26rem;}
  .sec02_box_item .btn{padding-right: 5.5rem;}
  .sec02_slg{padding: 2rem 1rem 6.2rem;width: 18.3rem;height: 34.4rem;display: flex;flex-direction: column;justify-content: center;align-items: center;position: absolute;right: 2.1rem;top: 16rem;white-space: nowrap;}
  .sec02_slg .en {font-size: 2rem;}
  .sec02_slg .ja {font-size: 5.8rem;-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;}
  .sec02_reason {max-width: 94%;margin-bottom: 4rem;}
  .sec02_head{margin-bottom: 4.6rem;padding-left: 0.5rem;}

}

/*============= SEC03 ==============*/
.sec03 {background: url('../images/sec03_bg.jpg') no-repeat center /cover;}
.sec03_h3{font-size: 4.2rem;width: fit-content;z-index: 2;position: relative;margin: 0 auto 10.1rem;}
.sec03_h3::before{content: "";position: absolute;width: 100vw;min-width:192rem;right: -6.3rem;z-index: -1;top: -1.5rem;height: calc(100% + 3.6rem);background-color: #FFF;}
.sec03_h3::after{content: "";position: absolute;width: 100vw;min-width:192rem;left: calc(50% - 86rem);z-index: -2;top: 1.5rem;height: calc(100% + 3.6rem);background-color: var(--mcolor);opacity: 0.7;}
.sec03_h3 .lg{font-size: 6.2rem;}
.sec03_tt {text-align: center;display: flex;justify-content: center;align-items: center;gap: 3.1rem;color: #FFF;font-size: 4.2rem;font-weight: bold;margin-bottom: 2.2rem;letter-spacing: 0.2rem;}
.sec03_frame {background-color: #FFF;padding: 5.4rem 5rem 2.7rem;display: flex;justify-content: center;gap: 2.5rem;box-shadow: 0.2rem 0 1.6rem rgba(0, 0, 0, 0.3);position: relative;}
.sec03_frame::before,.sec03_frame::after{width: 10.8rem;height: 19.6rem;content: "";position: absolute;pointer-events: none;}
.sec03_frame::before{border-top: 0.4rem solid #8497a3;border-right: 0.4rem solid #8497a3;right: -2.6rem;top: -2.6rem;}
.sec03_frame::after{border-left: 0.4rem solid #8497a3;border-bottom: 0.4rem solid #8497a3;left: -2.6rem;bottom: -2.6rem;}
.sec03_btn {width: 38rem;text-align: center;}
.sec03_btn .tt {font-size: 2rem;font-weight: bold;position: relative;width: fit-content;margin: 0 auto 2.9rem;padding-left: 4.8rem;}
.sec03_btn .tt::after{content: '';position: absolute;width: 20.1rem;height: 2.2rem;background: url('../images/sec03_btn_tt_line.png') no-repeat center /contain;left: calc(50% - 10.1rem);bottom: -2.6rem;}
.sec03_btn .tt::before{content: "";position: absolute;}
.sec03_btn_tel .tt{padding-left: 2.5rem;}
.sec03_btn_tel .tt::before{width: 1.9rem;height: 1.8rem;background: url('../images/ic_tel2.svg') no-repeat center /contain;top: calc(50% - 0.8rem);left: 0;}
.sec03_btn_mail .tt::before{width:2.6rem;height: 2rem;background: url('../images/ic_mail2.svg') no-repeat center /contain;top: calc(50% - 0.9rem);left: 1.5rem;}
.sec03_btn_line .tt::before{width: 3.2rem;height: 3.1rem;background: url('../images/ic_line2.svg') no-repeat center /contain;top: calc(50% - 1.6rem);left: 0.7rem;}

.sec03_btn .cta {margin-bottom: 1rem;}
.sec03_btn .cta a {width: 100%;height: 10.3rem;display: flex;justify-content: center;align-items: center;color: #FFF;font-weight: bold;font-family: var(--f-mincho);border-radius: 0.8rem;box-shadow: 0.2rem 0 1.5rem rgba(0, 0, 0, 0.2);letter-spacing: 0.14rem;padding-left: 0.5rem;}
.sec03_btn .des {font-weight: 500;line-height: 1.55;}
.sec03_btn_tel a{font-size: 2.8rem;background-color: var(--scolor);}
.sec03_btn_mail a{font-size: 2.4rem;background-color: var(--mcolor);}
.sec03_btn_line a{font-size: 2.4rem;background-color: #06c755;}

@media screen and (min-width: 751px) {
  .sec03{padding: 7.1rem 0 8rem;}
  .sec03_tt img{display: block;transform: translateY(-2.6rem);}

}
/*============= SEC04 ==============*/
.sec04_head {background-color: rgba(255, 255, 255, 0.95);position: relative;z-index: 2;}
.sec04_thumb {background: url('../images/sec04_img1.png') no-repeat center left /cover;margin-left: auto;position: relative;}
.sec04_thumb::before {border-left: 0.4rem solid var(--scolor);border-top: 0.4rem solid var(--scolor);left: 0.3rem;top: 0.1rem;height: 10.8rem;width: 19.6rem;content: "";position: absolute;pointer-events: none;}

.sec04_frame {background-color: rgba(255, 255, 255, 0.95);padding: 4.2rem 8rem 4rem;margin-top: -22.3rem;margin-bottom: 6rem;}
.sec04_frame .tt .ico{margin-bottom: 0;}
.sec04_frame .ttl span{display: block;}
.sec04_frame .ttl .ja{color: var(--mcolor);font-size: 3.2rem;font-family: var(--f-mincho);font-weight: bold;margin-bottom: 1rem;letter-spacing: 0.1rem;padding-top: 0.5rem;}
.sec04_frame .ttl .en {padding-left: 1.7rem;letter-spacing: 0.12rem;}
.sec04_frame .ttl .sys{display: inline-block;margin: 0 -1.2rem;}
.sec04_frame .des {margin-bottom: 1.9rem;}
.sec04_list {display: grid;grid-template-columns: repeat(4,1fr);gap: 2.4rem;}
.sec04_list li {background-color: rgba(255, 255, 255, 0.95);padding: 0 2rem 3.2rem 2rem;}
.sec04_list li .ico {margin: -2rem auto 0 auto;width: fit-content;min-height: 8.8rem;display: flex;justify-content: center;align-items: center;}
.sec04_list li .tt1 {font-size: 2.4rem;font-weight: bold;font-family: var(--f-mincho);text-align: center;color: var(--scolor);line-height: 1.6;margin-bottom: 0.8rem;}
.sec04_list li .tt1 .lg{font-size: 2.8rem;line-height: 1.35;}
.sec04_list li .tt2 {font-size: 1.6rem;font-weight: 500;margin-bottom: 1.8rem;text-align: center;}
.sec04_list li .des {margin-bottom: 5rem;padding: 0 0.2rem;}
.sec04_list li:nth-of-type(1) .ico{padding-top: 0.3rem;}
.sec04_list li:nth-of-type(2) .ico{padding-left: 0.9rem;}
.sec04_list li:nth-of-type(3) .ico{padding-left: 2.1rem;padding-bottom: 0.6rem;}
.sec04_list li:nth-of-type(4) .ico{padding-right: 1rem;padding-bottom: 0.8rem;}

.sec04_inner{max-width: 192rem;margin: 0 auto;}
.sec04_box{position: relative;padding-bottom: 10rem;}
.sec04_box::before {border-right: 0.4rem solid var(--scolor);border-bottom: 0.4rem solid var(--scolor);right: 3.3%;bottom: -2rem;width: 10.8rem;height: 19.6rem;content: "";position: absolute;pointer-events: none;}

@media screen and (min-width: 751px) {
  .sec04{padding: 11.6rem 0;}
  .sec04_head{padding: 6rem 2rem;width: fit-content;margin: 0 auto -12.6rem;min-width: 88rem;}
  .sec04_thumb{height: 78rem;width: 96%;width: 184.2rem;max-width: 97%;}
  .sec04_list li:not(:nth-of-type(1)) .tt1,.sec04_list li:not(:nth-of-type(1)) .tt2{padding-right: 0.8rem;}
  .sec04_frame .tt {margin-bottom: 3rem;display: flex;gap: 0.6rem;align-items: center;justify-content: center;text-align: left;padding-right: 2.1rem;}
  .sec04_box_img{position: absolute;z-index: -1;left: -0.7rem;bottom: -11.4rem;pointer-events: none;}
  .sec04_list li .tt1{min-height: 7.9rem;}
  .sec04_thumb::after{content: "";position: absolute;width: 100%;height: 121%;max-width: 182rem;background-color: #f9f9f9;right: 5%;top: 79.5%;z-index: -2;pointer-events: none;}

}

/*============= SEC05 ==============*/
.sec05_head .ttl{width: fit-content;margin: 0 auto 4.4rem;}
.sec05_frame {padding: 4.3rem 4rem 4.8rem;background-color: #FFF;box-shadow: 0.2rem 0 2rem rgba(0, 0, 0, 0.2);height: 100%;border: 1px solid var(--scolor);}
.sec05_frame .ttl {display: flex;align-items: center;gap: 2.3rem;margin-bottom: 2.2rem;padding-bottom: 2.5rem;border-bottom: 0.1rem solid var(--scolor);padding-left: 1.5rem;}
.sec05_frame .ttl .tt {font-size: 2.8rem;font-weight: bold;font-family: var(--f-mincho);letter-spacing: 0.15rem;line-height: 1.52;}
.sec05_frame .ttl .tt .sm {font-size: 2.4rem;display: block;}
.sec05_col{position: relative;}
.sec05_col::before,.sec05_col::after{content: '';position: absolute;width: 182rem;height: 48rem;pointer-events: none;}
.sec05_col::before{background: url('../images/sec05_frame.png') repeat;z-index: -1;right: -25.9rem;bottom: -6rem;height: 52rem;}
.sec05_col::after{z-index: -2;background-color: #e5eff5;left: -26rem;bottom: -11.8rem;}

@media screen and (min-width: 751px) {
  .sec05{padding: 10.6rem 0 23.6rem;}
  .sec05_head {margin-bottom: 6.2rem;}
  .sec05_col {display: flex;gap: 2%;}
  .sec05_col .sec05_frame{width: 49%;max-width: 68rem;}
  .sec05_frame:nth-of-type(even){margin-top: 6rem;padding-top: 5rem;}
  .sec05_frame .ttl .ico {padding-top: 0.4rem;}
  .sec05_frame .des {margin-bottom: 3.7rem;}
}

/*============= SEC06 ==============*/
.sec06 {background: url('../images/sec06_bg.png') repeat;}
.sec06 .inner{position: relative;z-index: 2;}
.sec06_thumb {background: url('../images/sec06_thumb.jpg') no-repeat center /cover;height: 58rem;}
.sec06_head {max-width: 110rem;margin: -9.7rem auto 15.8rem auto;background-color: #f9f9f9;padding: 4.2rem 4rem;position: relative;}
.sec06_head::before{content: "";position: absolute;background: url('../images/sec06_head_before.png') no-repeat center /contain;width: calc(100% + 10.8rem);height: 20.8rem;z-index: -1;top:-5rem;left: calc(50% - (50% + 5.4rem));pointer-events: none;}
.sec06_head .ttl{width: fit-content;margin: 0 auto 4.5rem;}
.sec06_frame {background-color: #FFF;padding: 0 4rem 4rem;box-shadow: 0.2rem 0 2rem rgba(0, 0, 0, 0.2);}
.sec06_frame .thumb {width: fit-content;margin: -11rem auto 3.1rem;position: relative;box-shadow: 0 0.2rem 2rem rgba(0, 0, 0, 0.2);}
.sec06_frame .thumb::before{content: "";position: absolute;width: 12.1rem;height: 12.1rem;background: url('../images/sec06_frame_ic.png') no-repeat center /contain;top: -4rem;right: -6.2rem;}
.sec06_frame .thumb::after{border-left: 0.4rem solid var(--scolor);border-bottom: 0.4rem solid var(--scolor);left: -1.8rem;bottom: -2.1rem;width: 8.8rem;height: 15rem;content: "";position: absolute;pointer-events: none;}
.sec06_frame .ttl {text-align: center;margin-bottom: 0.9rem;}
.sec06_frame .ttl span{display: block;}
.sec06_frame .ttl .en {margin-bottom: 0.6rem;}
.sec06_frame .ttl .ja{font-family: var(--f-mincho);font-size: 2.8rem;color: var(--mcolor);font-weight: bold;letter-spacing: 0.14rem;}

@media screen and (min-width: 751px) {
  .sec06{padding: 0 0 10rem;}
  .sec06_frame{width: 49%;max-width: 68rem;}
  .sec06_col{display: flex;gap: 2.8rem;}
  .sec06_frame .des {margin-bottom: 2.8rem;min-height: 12.9rem;}

}

/*============= SEC07 ==============*/
.sec07_list {max-width: 192rem;margin: 0 auto;}
.sec07_ite {position: relative;}
.sec07_ite::after{content: '';position: absolute;width: 127.2rem;height: 64.3rem;pointer-events: none;z-index: -1;}
.sec07_ite:not(:last-child){margin-bottom: 0;}
.sec07_ite .box{max-width: 90rem;padding: 4rem 4.5rem 4rem 5.5rem;}
.sec07_ite .slg {font-size: 4.2rem;font-weight: 800;color: #FFF;font-family: var(--f-mincho);padding: 2.1rem 5.3rem 2.5rem;position: relative;letter-spacing: 0.2rem;margin-bottom: 0.9rem;}
.sec07_ite .slg::after{content: '';position: absolute;width: 100%;left: 0;bottom: -1.1rem;background-color: var(--scolor);height: 1px;}
.sec07_ite .slg .en {line-height: 1;position: absolute;font-size: 13.2rem;opacity: 0.5;display: block;width: fit-content;top: 0.4rem;font-weight: 400;font-style: italic;letter-spacing: 0.1rem;transform: skewX(5deg);}
.sec07_ite .ttl {font-size: 4.8rem;color: var(--scolor);margin-bottom: 2rem;font-weight: bold;font-family: var(--f-mincho);letter-spacing: 0.25rem;}
.sec07_ite .ttl .blue{color: #035582;}

@media screen and (min-width: 751px) {
  .sec07{padding: 10rem 0 0;margin-bottom: -0.8rem;}
  .sec07_ite{min-height: 72.5rem;}
  .sec07_ite .slg{max-width: 112rem;}
  .sec07_ite .pick {position: absolute;pointer-events: none;max-width: 65%;}
  .sec07_ite .pick img{height: auto !important;}
  .sec07_ite:nth-of-type(1){padding-top: 5.2rem;}
  .sec07_ite:nth-of-type(odd)::after{background: url('../images/sec07_item_bg1.jpg') no-repeat center /contain;right: 0;bottom: 7rem;}
  .sec07_ite:nth-of-type(odd) .pick {right: -0.8rem;top: -2.5rem;}
  .sec07_ite:nth-of-type(odd) .slg{background: linear-gradient(90deg,rgba(0, 49, 75, 1) 0, rgba(96, 126, 143, 1) 58%, rgba(164, 181, 191, 1) 75%, rgba(255, 255, 255, 1) 98%);}
  .sec07_ite:nth-of-type(odd) .slg .en{right: 19.5%;}
  .sec07_ite:nth-of-type(even)::after{background: url('../images/sec07_item_bg2.jpg') no-repeat center /contain;left: 0;bottom: 2rem;}
  .sec07_ite:nth-of-type(even) .pick{left: -0.7rem;top: -4.3rem;}
  .sec07_ite:nth-of-type(even) .slg{text-align: right;margin-left: auto;background: linear-gradient(-90deg,rgba(0, 49, 75, 1) 0%, rgba(96, 126, 143, 1) 58%, rgba(164, 181, 191, 1) 74%, rgba(255, 255, 255, 1) 100%);}
  .sec07_ite:nth-of-type(even) .slg .en{left: 12.5%;}
  .sec07_ite:nth-of-type(even) .box{margin-left: auto;padding-right: 5.6rem;padding-left: 4.4rem;}
  .sec07_ite:nth-of-type(even) .btn a{margin-left: auto;}
  .sec07_ite .des {margin-bottom: 4.6rem;}

}

/*============= SEC08 ==============*/
.sec08 {position: relative;}
.sec08::after{content: "";position: absolute;width: 182rem;min-width: 95%;height: 100%;background-color: var(--gray);pointer-events: none;z-index: -1;top: 0;right: -0.8rem;}
.sec08_head *{text-align: left;}
.sec08_list li{display: flex;align-items: center;border-bottom: 0.1rem solid #cccccc;padding-bottom: 2.2rem;padding-left: 0.7rem;}
.sec08_list li:not(:last-child){margin-bottom: 2.3rem;}
.sec08_list li > p{margin-bottom: 0;}
.sec08_list .date {font-weight: 500;margin-right: 1rem;min-width: 11rem;flex-shrink: 0;}
.sec08_list .cate {margin-right: 2.3rem;flex-shrink: 0;}
.sec08_list .cate span{display: inline-block;padding: 0.5rem 1.2rem 0.7rem;background-color: #035582;color: #FFF;font-weight: 600;line-height: 1.2;min-width: 14rem;text-align: center;}
.sec08_list .ttl {font-size: 2rem;font-weight: bold;font-family: var(--f-mincho);max-width: 100%; display: inline-block; width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}

@media screen and (min-width: 751px) {
  .sec08{padding: 8.8rem 0 10.1rem;margin-bottom: 12rem;}
  .sec08_head .ttl_h3{font-size: 4.8rem;}
  .sec08_box {display: flex;align-items: center;justify-content: space-between;padding-right: 1%;}
  .sec08_head{width: 22%;max-width: 28.4rem;}
  .sec08_list{width: 73.8%;padding-top: 1rem;}
  .ft_bnr_ite {display: flex;align-items: center;padding: 0rem 5.4rem;}
  .ft_bnr_ite dl{margin-top: -1.6rem;display: flex;gap: 5.5rem;align-items: center;}
  .ft_bnr_ite:nth-of-type(1){padding: 0 6rem 0 5rem;}
  .ft_bnr_ite:nth-of-type(2){padding-top: 0;}
  .ft_links_list{display: flex;justify-content: center;gap: 7.8rem;padding: 18.6rem 0 7.1rem;}
  .ft_bnr{display: flex;align-items: center;padding: 4.6rem 0;width: 96%;max-width: 181.3rem;margin: 0 auto -10rem auto;transform: translateX(-4.6rem);}
  .ft_bnr_ite:not(:last-child)::after{width: 1px; height: 100px;top: calc(50% - 50px);right: 0;}
  .ft_bnr_cta{margin-right: 2.5rem;}
  .ft_bnr_insta {margin-right: 1.6rem;}
  #index address{padding-bottom: 21rem;}
}

/*==========================================================
                        F O O T E R
==========================================================*/
footer{position: relative;z-index: 2;background-color: var(--scolor);padding-top: 6.4rem;}
address{font-weight: 500;padding: 3.1rem 1.5rem;background-color: #FFF;text-align: center;letter-spacing: 0.11rem;}
.ft_bnr {background-color: #FFF;box-shadow: 0 0 3rem rgba(0, 0, 0, 0.1);position: relative;z-index: 1;}
.ft_bnr_ite{position: relative;}
.ft_bnr_ite:not(:last-child)::after{content: "";position: absolute;background-color: #cccccc;}
.ft_bnr_add {font-weight: 500;margin-bottom: 1.1rem;padding-left: 0.2rem;}
.ft_bnr_map a{font-weight: 500;padding: 0.4rem 1.5rem 0.9rem;border-radius: 0.4rem;border: 1px solid var(--txt);box-shadow: 0rem 0.1rem 0.4rem rgba(0, 0, 0, 0.3);}
.ft_bnr_map a span{display: inline-block;padding-left: 2rem;position: relative;}
.ft_bnr_map a span::before{content: '';position: absolute;width: 1.4rem;height: 1.9rem;background: url('../images/ic_map.png') no-repeat center /contain;top: calc(50% - 0.8rem);left: 0;transition: all 0.3s;}
.ft_bnr_ite > p{margin-bottom: 0;}
.ft_bnr_tel {margin-bottom: 1.2rem;line-height: 1.1;}
.ft_bnr_tel a {font-size: 2.4rem;font-weight: bold;color: #035582;padding-left: 2.5rem;position: relative;font-family: var(--f-mincho);letter-spacing: 0.12rem;}
.ft_bnr_tel a::before{content: '';position: absolute;width: 1.8rem;height: 1.7rem;background: url('../images/ic_tel_bl.svg') no-repeat center /contain;left: 0.3rem;top: calc(50% - 0.6rem);}
.ft_bnr_time {font-weight: 500;line-height: 1.9;}
.ft_bnr_time .sm {font-size: 1.6rem;}
.ft_bnr_cta a{width: 35rem;height: 8.6rem;display: flex;justify-content: center;align-items: center;border-radius: 0.8rem;box-shadow: 0.2rem 0 1.5rem rgba(0, 0, 0, 0.2);background-color: var(--mcolor);color: #FFF;font-family: var(--f-mincho);font-size: 2rem;font-weight: bold;padding-bottom: 0.3rem;max-width: 100%;}
.ft_bnr_cta a span{display: inline-block;padding-left: 4.8rem;position: relative;}
.ft_bnr_cta a span::before{content: '';position: absolute;width:2.8rem;height:2.2rem;background: url('../images/ic_contact2.svg') no-repeat center /contain;top: calc(50% - 1rem);left: 0.5rem;}

.ft_links {background-color: var(--gray);}
.ft_links_list > dl > dt{font-size: 2.4rem;font-weight: bold;color: var(--scolor);font-family: var(--f-mincho);margin-bottom: 1.3rem;letter-spacing: 0.13rem;}
.ft_links_list ul li:not(:last-child){margin-bottom: 0.9rem;}
.ft_links_list ul li a{font-weight: 500;color: var(--mcolor);padding-left: 1.8rem;position: relative;}
.ft_links_list ul li a::before{content: "";position: absolute;width: 0.9rem;height: 1.4rem;background: url('../images/ft_link_ic.png') no-repeat center /contain;top:0.7rem;left: 0;}
.sidebar{position: fixed;right: 0;top: 12.8rem;z-index: 999;}
.sidebar_cta:not(:last-child){margin-bottom: 1.6rem;}
.sidebar_cta a{width: 8rem;height: 27.5rem;display: flex;flex-direction: column;justify-content: center;align-items: center;border-radius: 1rem 0 0 1rem;box-shadow: 0.2rem 0 1rem rgba(0, 0, 0, 0.3);padding-top: 0.6rem;padding-left: 1.1rem;}
.sidebar_cta a .ico{margin-bottom: 0.5rem;text-align: center;min-height: 5.7rem;}
.sidebar_cta a .txt{padding: 1.9rem 2.5rem;-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-size: 2.4rem;font-weight: bold;font-family: var(--f-mincho);line-height: 1;position: relative;z-index: 1;}
.sidebar_cta a .txt::after{content: '';position: absolute;width: 100%;height: 100%;background-color: #FFF;top: 0;right: -0.2rem;z-index: -1;border-radius: 1rem 0 0 1rem;}
.sidebar_cta:nth-of-type(1) a{background-color: #01468c;}
.sidebar_cta:nth-of-type(1) a .txt span{color: #01468c;}
.sidebar_cta:nth-of-type(2) a{background-color: #007388;padding-top: 0.4rem;}
.sidebar_cta:nth-of-type(2) a .txt span{color: #007388;}

/* BACK TO TOP */
.to_top{position:fixed;z-index:8;bottom:2rem;right:1rem;cursor:pointer;transition:all .2s;opacity:0;visibility:hidden;box-shadow: 0.2rem 0 1rem rgba(0, 0, 0, 0.3);border-radius: 50%;overflow: hidden;}
.to_top.show{transform:scale(1);opacity:1;visibility:visible}

/* FIREFOX ONLY */
@-moz-document url-prefix() {}

/* Safari 10.1+ (which is the latest version of Safari at this time) */
@media not all and (min-resolution: 0.001dpcm) {}