@charset "UTF-8";
@import "base.css";
@import "fonts.css";
@import url('https://fonts.googleapis.com/css2?family=Corinthia:wght@400;700&family=EB+Garamond:ital,wght@0,400..800;1,400..800&family=Gwendolyn:wght@400;700&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..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, 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.79;letter-spacing: 0.06rem;}
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);}
.green{color: var(--green);font-weight: bold;}
.txt_u{text-decoration: underline;}
.f_big{font-size: 150%;}
.f_sm{font-size: 80%;}
.m0a{display: block;margin-left: auto;margin-right: auto;}

:root {
  --txt: #191919;
  --mcolor: #004ea2;
  --scolor: #c7a630;
  --container: 150rem;

  --gray: #e9e9e9;
  --green: #00b7ee;
  --red: red;

  --f-main:'Noto Sans JP', sans-serif;
  --f-nsr: 'Noto Serif JP', serif;
  --f-rbt: 'Roboto', sans-serif;
  --f-gwd: 'Gwendolyn', cursive;
  --f-eb: 'EB Garamond', serif;
}

#wrapper{min-width: 1260px;overflow:hidden;margin:0 auto}
.inner{width: var(--container);margin:0 auto;position:relative;max-width: 100%;padding: 0 20px;}
.sub ul li a::before{content: '';position: absolute;width:5px;height: 8px;background: url('../images/nav_ic.png') no-repeat center /contain;top: calc(50% - 4px);left: 20px;}
[data-aos=fade-up] { transform: translate3d(0, 5rem, 0); }
/*==========================================================
                       H E A D E R
==========================================================*/
/* 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:35px;height:24px}
.hamburger-inner{top:50%;display:block;margin-top:-2px}
.hamburger-inner,
.hamburger-inner::after,
.hamburger-inner::before{position:absolute;width:35px;height:2px;transition:all ease 0.15s;background-color:#fff}
.hamburger-inner::after,
.hamburger-inner::before{display:block;content:""}
.hamburger-inner::before{top:-10px}
.hamburger-inner::after{bottom:-10px}
.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,10px,0) rotate(45deg)}
.hamburger--3dxy.is_active .hamburger-inner::after{transform:translate3d(0,-10px,0) rotate(-45deg)}

header{position: relative; z-index:9;}
h1{padding-bottom: 0.1rem;}
.h_box{width:100%;position: fixed;height: 11rem;background-color: rgba(0, 0, 0, 0.5);}
.h_inner{display:flex;justify-content:space-between;align-items: center;height: 100%;width: 100%;padding: 0 3rem 0 5rem;max-width: 1920px;margin: 0 auto;}

.h_contact{display: flex;align-items: center;justify-content: flex-end;gap: 1.5rem;margin-bottom: 1rem;padding-top: 0.7rem;}
.h_contact > p{margin-bottom: 0;}
.h_contact > p a{height: 4.6rem;border-radius: 99.9rem;font-weight: bold;color: var(--mcolor);display: flex;justify-content: center;align-items: center;flex-direction: column;background-color:#FFF;}
.h_contact_tel a{width: 27rem;padding-bottom: 0.4rem;}
.h_contact_tel .num{font-size: 2.4rem;padding-left: 2.1rem;position: relative;line-height: 1;display: block;letter-spacing: 0.13rem;}
.h_contact_tel .num::before{content: '';position: absolute;width: 1.7rem;height: 1.7rem;background: url('../images/ic_tel.png') no-repeat center /contain;top: 0.5rem;left: 0;}
.h_contact_tel .time{font-size: 1.1rem;display: block;line-height: 1.3;color: var(--mcolor);font-weight: 400;transition: all 0.3s;}
.h_contact_mail a{text-align: center;font-size: 1.6rem;width: 23.6rem;}

/*==========================================================
                  M A I N    V I S U A L
==========================================================*/
main{position: relative;z-index: 2;}
.mv{position: relative;padding: 0;}
.mv .inner{width: 100%;height: 100%;display: flex;align-items: center;flex-direction: column;justify-content: center;}
.mv *{color: #FFF;}
.mv_en{font-size: 12.8rem;color: #FFF;font-family: var(--f-gwd);line-height: 0.8;letter-spacing: 0.5rem;font-style: italic;position: relative;z-index: 3;}
.mv_ja{margin-bottom: 0rem;font-family: var(--f-nsr);font-weight: 500;}
.mv_ja .sm{font-size: 3.8rem;display: block;line-height: 1.54;letter-spacing: 0.05rem;font-weight: 400;}
.mv_ja .lg{font-size: 5.4rem;display: block;letter-spacing: -.04rem;}
.mv_ja .lg .big{font-size: 7.4rem;}
.mv_des{font-size: 2.4rem;font-weight: 300;letter-spacing: 0.14rem;}
.mv_list{display: flex;justify-content: center;gap: 1.3rem;}
.mv_list dl{width: 38.8rem;height: 12.4rem;display: flex;align-items: center;border: 0.1rem solid #FFF;background-color: rgba(1, 55, 113, 0.7);padding: 1.2rem 0.7rem 1.2rem 2.3rem;}
.mv_list dl dt{flex-shrink: 0;width: 6.8rem;border-right: 0.1rem solid #FFF;height: 8.2rem;display: flex;align-items: center;margin-right: 2.2rem;font-size: 5rem;color: #e0c566;font-family: var(--f-eb);padding-bottom: 0.6rem;}
.mv_list dl dd{height: 100%;}
.mv_list dl dd .tt{margin-bottom: 0.4rem;font-size: 1.7rem;font-weight: bold;letter-spacing: 0.17rem;margin-top: 0.1rem;}
.mv_list dl dd .des{font-size: 1rem;line-height: 1.4;letter-spacing: 0.03rem;font-weight: 300;}

.mv_ttl{position: relative;margin-bottom: 3.1rem;}
.mv_ttl .hide{position: absolute;top: 0;z-index: 2;text-shadow: rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem;mix-blend-mode: multiply;}
.mv_ttl .hide *{color: transparent !important;}
.mv_des.hide{width: 100%;text-align: center;top: 80%;}
.mv_ttl .show{position: relative;z-index: 3;}
.shadow01{transform: translateY(-15px);display: inline-block;text-shadow: rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem,rgba(5, 64, 127, 0.6) 0rem 0.3rem 7rem;}

.mv{position: relative;padding: 0;}
.mv_box{z-index: 3;position: absolute;width: 100%;height: 100%;top: 0;left: 0;}
.mv_bg{position:relative;overflow:hidden;opacity:0;transition:all .3s;}
.mv_bg.init{opacity:1}
.mv_slider{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}
.mv_bg,.mv_slider_ite{width:100%;height:96rem}
.mv_slider_ite .bg{position:absolute;width:100%;height:100%;z-index:0;top:0;left:0;background-size:cover;background-position:center}
.mv_slider_ite.zoomed .bg{animation-name:zoomImg;animation-duration:6s;animation-timing-function:linear;animation-fill-mode:forwards}
@keyframes zoomImg { 0%{transform:scale(1)} 100%{transform:scale(1.05)}}

/*==========================================================
                M A I N    C O N T E N T
==========================================================*/
/* DEFAULT TITLE */
.ttl_h3{font-weight: 500;}
.ttl_h3:not(:last-child){margin-bottom: 0.7rem;}
.ttl_h3 span{display: block;}
.ttl_h3 .en{font-size: 12.8rem;font-family: var(--f-gwd);color: var(--green);letter-spacing: 0.2rem;line-height: 1;margin-left: -8.8rem;}
.ttl_h3 .ja{font-size: 5.5rem;font-family: var(--f-nsr);color: var(--mcolor);}
.ttl_h4 {font-size: 4.8rem;font-family: var(--f-nsr);color: var(--mcolor);padding-left: 12.7rem;position: relative;margin-bottom: 2.2rem;letter-spacing: -.3rem;}
.ttl_h4::before{content: '';position: absolute;width: 9.3rem;height: 7.4rem;background: url('../images/ttl_h4_ic.png') no-repeat center /contain;left: 0;top: -1.2rem;}
.heading_box_w .ttl_h3 .en,.heading_box_w .ttl_h3 .ja{color: #FFF;}
.heading_box .ttl_h3{text-align: center;position: relative;z-index: 2;}
.heading_box .ttl_h3::after{content: '';position: absolute;width: 12.3rem;height: 9.6rem;background: url('../images/ttl_h3_ic1.png') no-repeat center /contain;left: calc(50% - 6.1rem);top: -1.6rem;z-index: -1;}
.heading_box .des{text-align: center;color: var(--mcolor);font-size: 2rem;}
.heading_box_w .ttl_h3::after{background: url('../images/ttl_h3_ic2.png') no-repeat center /contain;}
.heading_box_w .des{color: #FFF;}
/* DEFAUTL NAME BUTTON */
.btn a{width:25rem;height: 5.1rem;border: 0.1rem solid var(--scolor);font-weight: 500;color: var(--scolor);display: flex;justify-content: center;align-items: center;padding-bottom: 0.2rem;}
.btn_w a{background-color: #FFF;border-color: #FFF;}
.btn.center a{margin-left: auto; margin-right: auto;}
.btn_box:not(:last-child){margin-bottom: 3rem;}
.btn_box{display: flex;flex-wrap: wrap;align-items: center;justify-content: center;}
.btn_box .btn{margin: 1rem;}

/*============= SEC01 ==============*/
.sec01{position: relative;}
.sec01::before,.sec01::after{content: '';position: absolute;width: 50%;height: 100%;top: 0;z-index: -1;}
.sec01::before{right: 50%;background: url('../images/sec01_img1.jpg') no-repeat center /cover;}
.sec01::after{left: 50%;background: url('../images/sec01_img2.jpg') no-repeat center /cover;}
.sec01 .ttl_h3 .ja{font-weight:300;color: #FFF;}
.sec01_head *{color: #FFF;}
.sec01_head .tt{font-size: 3.6rem;font-weight: bold;margin-bottom: 2.4rem;}
.sec01_frame{background-color: #FFF;padding: 10rem 9rem 8rem;border-radius: 1.4rem 1.4rem 0 0;position: relative;}
.sec01_frame::before{content: '';position: absolute;width: 0.2rem;height: 7rem;background-color: var(--scolor);left: calc(50% - 0.1rem);top: 0;}
.sec01_frame .tt{font-weight: 500;font-family: var(--f-nsr);text-align: center;color: var(--mcolor);margin-bottom: 1rem;font-size: 4.4rem;}
.sec01_frame .des{text-align: center;color: var(--mcolor);font-size: 2rem;margin-bottom: 4.2rem;}
.sec01_frame .list{display: grid;grid-template-columns: repeat(3,1fr);gap: 4rem;}
.sec01_frame .list li{min-height: 14rem;display: flex;align-items: center;padding: 1.9rem 3.4rem 1.9rem 5rem;font-size: 2rem;background-color: #f4f5f7;border-radius: 1.4rem;justify-content: center;line-height: 1.55;}

/*============= SEC02 ==============*/
.sec02{background-color: #f4f5f7;}
.sec02_list{position: relative;z-index: 2;margin-bottom: 7rem;}
.sec02_ite {counter-increment: li; }
.sec02_ite_content {background-color: #FFF;position: relative;}
.sec02_ite_content::after{height: calc(100% - 5.8rem);top: 15.8rem;z-index: -1;background-color: var(--mcolor);content: '';position: absolute;width: 100vw;min-width: 960px;}
.sec02_ite_content .tt{font-size: 3.6rem;color: var(--mcolor);font-weight: 500;font-family: var(--f-nsr);margin-bottom: 3rem;position: relative;width: fit-content;}
.sec02_ite_content .tt::before{content: '0' counter(li);position: absolute;font-size: 9.4rem;color: #FFF;font-family: var(--f-eb);background-color: var(--scolor);padding: 0 1.9rem 0.6rem 2.9rem;line-height: 1;width: 100vw;display: flex;top: 0.9rem;letter-spacing: -.15rem;font-weight: 400;}
.sec02_ite_content .tt .lg{font-size: 4.8rem;letter-spacing: -0.15rem;}
.sec02_ite_content .des {letter-spacing: 0.08rem;}
.sec02_ite_thumb {position: relative;z-index: 2;}

/*============= SEC03 ==============*/
.sec03 {background-color: #02468f;position: relative;z-index: 1;}
.sec03::after{content: '';position: absolute;width: 70%;max-width: 133rem;background-color: #05407f;clip-path: polygon(0 0, 100% 0, 69% 100%, 21% 100%);height: 100%;top: 0;left: 50%;transform: translateX(-50%);z-index: -1;}
.sec03_list dl dd{background-color: #FFF;}
.sec03_list dl dd .des{line-height: 1.6;}
.sec03_list .tt {font-size: 3.4rem;font-weight: 500;color: var(--mcolor);margin-bottom: 1.7rem;line-height: 1.4;letter-spacing: 0.25rem;}

/*============= SEC04 ==============*/
.sec04 {position: relative;}
.sec04::after{content: '';position: absolute;background: url('../images/sec04_bg.jpg') no-repeat center /cover;width: 100%;height: 100%;top: 0;left: 0;pointer-events: none;z-index: -1;}
.sec04_list {display: flex;justify-content: center;flex-wrap: wrap;gap: 2.5rem 3.2rem;}
.sec04_list li{width: calc(50% - 1.6rem);}
.sec04_list li a{height: 15.2rem;width: 100%;border:0.1rem solid #FFF;background-color: rgba(1, 55, 113, 0.7);padding: 2rem 2rem;display: flex;align-items: center;border: 0.1rem solid #FFF;background-color: rgba(1, 55, 113, 0.7);padding: 0.9rem 4rem;font-size: 3.2rem;font-weight: bold;color: #FFF;line-height: 1.4;letter-spacing: 0;}
.sec04_list li.big{width: 100%;}
.sec04_list li .num{flex-shrink: 0;width: 12.7rem;border-right: 0.2rem solid #FFF;height: 7.2rem;display: flex;align-items: center;margin-right: 4.3rem;font-size: 9.2rem;color: #e0c566;font-family: var(--f-eb);font-weight: 400;line-height: 1;padding-bottom: 1.5rem;}

/*============= SEC05 ==============*/
.sec05 {position: relative;z-index: 1;overflow: hidden;}

/*============= SEC06 ==============*/
.sec06 {background-color: #f4f5f7;z-index: 2;position: relative;padding: 19.5rem 0 0;}
.sec06::before{content: '';position: absolute;width: 100%;height: 50.5rem;background-color: #FFF;top: 0;left: 0;z-index: -1;}
.sec06_box_l .des {color: var(--mcolor);}
.sec06_list{position: relative;z-index: 2;}
.sec06_list dl{width: 43.8rem;margin: 0 0.8rem;}
.sec06_list dl dt{display: flex;justify-content: center;align-items: center;overflow: hidden;height: 37.1rem;margin-bottom: 2.2rem;}
.sec06_list dl dd .cate{color: #a8a188;font-family: var(--f-eb);margin-bottom: 0rem;letter-spacing: 0.1rem;}
.sec06_list dl dd .tt{font-size:2.8rem;font-weight: 500;color: var(--mcolor);margin-bottom: 1rem;letter-spacing: 0;}

/*============= SEC07 ==============*/
.sec07 {background-color: #f4f5f7;}
.sec07_frame {padding: 8rem 12rem 8.2rem;position: relative;z-index: 1;width: 100%;}
.sec07_frame_list li{padding: 4.3rem 0;border-bottom: 0.2rem solid #f0ede9;width: 100%;}
.sec07_frame_list li:nth-of-type(1){border-top: 0.2rem solid #f0ede9;}
.sec07_frame_list li .cat {font-size: 1.2rem;font-weight: 500;color: #FFF;padding: 0.5rem 1.6rem;border-radius: 99.9rem;background-color: var(--scolor);}
.sec07_frame_list li .date {font-family: var(--f-eb);margin-left: 2.3rem;letter-spacing: 0.13rem;color: #a8a188;}
.sec07_frame_list li .tt {font-size: 2rem;font-weight: 500;color: #1a1a1a;display: block;margin-top: 1.2rem;letter-spacing: -0.1rem;width: fit-content;max-width: 100%;  overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}

/*============= SEC08 ==============*/
.sec08{background-color: #f4f5f7;}
.sec08_head{margin-bottom: 4.2rem;}
.sec08_list .slick-list{overflow: inherit;}
.sec08_ite{margin: 0 2rem;}

.fw5{font-weight: 500;}
.desc{color: var(--mcolor);font-size: 2rem;letter-spacing: 0;}

/*==========================================================
                        F O O T E R
==========================================================*/
footer{position: relative;z-index: 3;background-color: var(--mcolor);}
footer *{color: #FFF;}
.ft_top_r iframe{border: 0;}
.ft_box{position: relative;}
.ft_box::after{content: '';position: absolute;top: 0;height: 100%;background: url('../images/ft_bg.jpg') no-repeat center /cover;width: 49.6rem;right: 113.3%;}
.ft_add,.ft_tel,.ft_time{font-size: 1.6rem;}
.ft_btn a{color: #FFF;background-color: var(--scolor);font-weight: 400;}
.ft_bot ul li:not(.sm) a,.ft_bot ul li:not(.sm) > span{font-size: 2rem;font-weight: 500;}
.ft_bot ul:not(.ft_bot_bnr) li:not(.sm,:first-child){margin-top: 2.3rem;}
.ft_bot ul li.sm{font-size: 1.6rem;}
.ft_bot ul li.sm:not(:first-child){margin-top: 1rem;}
.ft_logo{margin-bottom: 2.3rem;}
.ft_add{margin-bottom: 1.7rem;line-height: 1.5;}
.ft_tel{line-height: 1.5;margin-bottom: 0.3rem;}
/* BACK TO TOP */
.to_top{position:fixed;z-index:8;width:7rem;height:7rem;bottom:2rem;right:2rem;cursor:pointer;transition:all .2s;opacity:0;visibility:hidden}
.to_top.show{transform:scale(1);opacity:1;visibility:visible}

@media screen and (min-width: 751px) {
  .mv .inner{padding-top: 9.5rem;}
  .mv{height: 96rem;}
  .mv_en{margin-bottom: 4.5rem;margin-left: -3.2rem;}
  .sec01{padding: 11.6rem 0 0;}
  .heading_box .ttl_h3 .en{margin: -2.2rem 0 -5.7rem -0.9rem;}
  .heading_box:not(:last-child){margin-bottom: 4.3rem;}
  .sec01_head .des{font-size: 2rem;line-height: 2.2;}
  .sec01_head{width: 50%;margin-bottom: 10.8rem;}
  .sec01 .ttl_h3{display: flex;flex-direction: column-reverse;margin-bottom: 5rem;}
  .sec01 .ttl_h3 .ja{-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;width: fit-content;margin-left: 14%;margin-bottom: -17.5%;line-height: 2;letter-spacing: 0.2rem;}

  .sec02{padding: 15.8rem 0 12.2rem;}
  .sec02_ite {display: flex;}
  .sec02 .heading_box .ttl_h3 .en{margin-left: -5.7rem;}
  .sec02_ite:not(:last-child){margin-bottom: 8rem;}
  .sec02_ite:nth-child(even){flex-direction: row-reverse;}
  .sec02_ite:nth-child(even) .sec02_ite_thumb{display: flex;justify-content: flex-end;width: 41%;}
  .sec02_ite:nth-child(even) .sec02_ite_content{padding: 5rem 13.5rem 5.5rem 17.6rem;margin-left: -8rem;}
  .sec02_ite:nth-child(odd) .sec02_ite_content{padding: 5rem 17rem 5.4rem 14.2rem;margin-right: -10rem;}
  .sec02_ite:nth-child(odd) .sec02_ite_content::after{right: 0;}
  .sec02_ite:nth-child(even) .sec02_ite_content::after{left: 0;}
  .sec02_ite:nth-child(odd) .sec02_ite_content .tt::before{right: calc(100% + 3.6rem);justify-content: flex-end;}
  .sec02_ite:nth-child(even) .sec02_ite_content .tt::before{left: calc(100% + 2rem);}
  .sec02_ite_thumb{max-width: 63rem;width: 48%;margin-top: 5.5rem;}
  .sec02_ite_thumb img{max-width: 99rem;}
  .sec02_ite_content{width: 65%;max-width: 93rem;height: 100%;}

  .sec03{padding: 9.7rem 0 12rem;}
  .sec03_box,.sec06_box,.sec07_box,.ft_bg{max-width: 1920px;margin: 0 auto;}
  .sec03 .heading_box_w .ttl_h3::after{top: 4.4rem;}
  .sec03 .heading_box .ttl_h3 .en{margin-left: 0.7rem;margin-bottom: -5.2rem;}
  .sec03 .heading_box .ttl_h3 .ja{letter-spacing: 0.3rem;}
  .sec03 .heading_box .ttl_h3{margin-bottom:1.3rem;}
  .sec03_list {display: grid;grid-template-columns: repeat(2,1fr);gap: 3.2rem;margin-bottom: 5rem;}
  .sec03_list dl{display: flex;align-items: center;justify-content: flex-end;}
  .sec03_list dl dt{flex-shrink: 0;}
  .sec03_list dl:nth-child(even){flex-direction: row-reverse;justify-content: flex-end;}
  .sec03_list dl:nth-of-type(odd) dd{border-right: 1.2rem solid var(--scolor);}
  .sec03_list dl:nth-of-type(even) dd{border-left: 1.2rem solid var(--scolor);}
  .sec03_list dl dd{padding: 2.2rem 2rem 2.1rem 5rem;width: 44%;flex-shrink: 0;height: calc(100% - 4.4rem);display: flex;flex-direction: column;justify-content: center;}

  .sec04{padding: 16rem 0 11.9rem;}
  .sec04 .heading_box .ttl_h3{margin-bottom: 1.2rem;}
  .sec04 .heading_box .ttl_h3 .en{margin-bottom: -7.3rem;}
  .sec05{padding: 11.3rem 0 12rem;background: url('../images/sec05_bg.png') no-repeat left bottom /cover;max-width: 1920px;margin: 0 auto;}
  .sec05_box{display: flex;justify-content: space-between;}
  .sec05_thumb{position: relative;width: 50%;display: flex;justify-content: center;padding-left: 8.6%;}
  .sec05 .img2 {position: absolute;top: 0;left: -0.6rem;}
  .sec05 .img3 {position: absolute;left: 2.8%;top: 45%;}
  .sec05_content{padding-left: 3rem;width: 50%;padding-top: 1.8rem;}
  .ttl_h4.nowrap{white-space: nowrap;letter-spacing: 0.15rem;}
  .sec05_ite:not(:last-child){margin-bottom: 14.5rem;}
  .sec05_ite .des{margin-bottom: 3.4rem;}

  .sec06 .ttl_h3 .ja{letter-spacing: 0.2rem;}
  .sec06_box_l{width: 30%;max-width: 30rem;flex-shrink: 0;}
  .sec06 .ttl_h3{margin-bottom: 3rem;margin-top: -1.4rem;}
  .sec06_box{display: flex;gap: 10.7rem;}

  .sec07{padding: 11.5rem 0 8rem;}
  .sec07_head {flex-shrink: 0;width: 38%;max-width: 37.7rem;}
  .sec07_head .ttl_h3{margin-top: -1.6rem;margin-bottom: 2.9rem;}
  .sec07_box{display: flex;gap: 3rem;}
  .sec07_frame{width: 81.3%;}
  .sec07_frame::after{content: '';position: absolute;width: 100vw;left: 0;top: 0;height: 100%;background-color: #FFF;z-index: -1;min-width: 960px;}

  .sec08{padding: 3.5rem 0 12rem;}
  .sec08 .ttl_h3{margin-bottom: 1.2rem;}
  .sec08 .ttl_h3 .ja{letter-spacing: -.35rem;}
  .ft_box{padding: 10rem 0 7.6rem 0;width: 72.1%;margin-left: auto;}
  .ft_top{display: flex;align-items: center;gap: 3rem;margin-bottom: 6.7rem;justify-content: space-between;}
  .ft_bot{display: flex;justify-content: space-between;}
  .ft_bot ul:nth-of-type(2){margin-left: 3.5rem;}
  .ft_bot ul:nth-of-type(3){margin-top: 1rem;}
  .ft_bot_bnr li:not(:last-child){margin-bottom: 1.5rem;}
  .ft_top_r{width: 63%;max-width: 66rem;}
  .ft_top_r iframe{width: 100% !important;height: 42.2rem !important;}
}

/* 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) {}
