/* =================== base =================== */

@font-face {
  font-family: 'DINCondensed';
  src: url(../font/DINCondensed-Bold.ttf);
  font-weight: 700;
}

:root {
  --en-font: 'Roboto', sans-serif;
  --din-font: 'DINCondensed', sans-serif;
  --main-color: #262626;
  --red-color: #B7362A;
}

html { font-family: sans-serif; -ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%; }

html { margin: 0; overflow-x: hidden; font-size: 62.5%; box-sizing: border-box; }
body { font-size: 1.6rem; letter-spacing: .05em; font-family: 'Noto Sans JP', sans-serif; color: #000; }
*{ box-sizing: border-box; color: #000; }
a{ text-decoration: none; color: #000; cursor: pointer; transition: 0.3s; }
img { vertical-align: bottom; width: 100%; height: auto; }
pre { width: 70%; margin: 1em auto; padding: 1em; border-radius: 5px; background: #25292f; color: #fff; overflow-x: auto; /* ⭐ */ -webkit-overflow-scrolling: touch; /* ⭐ */ }
button{ background-color: transparent; border: none; cursor: pointer; outline: none; padding: 0; appearance: none; }
li{ list-style: none; }
.flex { display: -webkit-box; display: -ms-flexbox; display: flex; }
.clear{ clear: both; }
.pc { display: block; }
.sp { display: none; }
.ipad { display: none; }
p{ line-height: 1.5em; }
.red{ color: var(--red-color); }
.btn{ min-width: 190px; position: relative; transition: all .3s; padding: 17px 40px; background: #000; text-align: center; color: #fff; font-size: 1.5rem; border-radius: 100px; display: inline-flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
.en{ font-family: var(--en-font); }
.din{ font-family: var(--din-font); }

::placeholder { color: #C5C5C5; }
::-ms-input-placeholder { color: #C5C5C5; }
:-ms-input-placeholder { color: #C5C5C5; }

.container { max-width: 1080px; margin: 0 auto; padding: 0 20px; }

@media screen and (max-width: 1080px) {
.container { max-width: 980px; }

}

@media screen and (max-width: 768px) {
.container { padding: 0 15px; }
}

.pagenavi-box .wp-pagenavi{ text-align: center; margin-top: 100px; }
.wp-pagenavi .pages{ display: none; }
.wp-pagenavi a{ color: #AFAFAF; }
.wp-pagenavi span{ color: var(--main-color); }
.wp-pagenavi a, .wp-pagenavi span{ width: 25px; height: 30px; display: inline-block; margin: 0 8px; overflow: hidden; border: none; position: relative; }
.wp-pagenavi a:before, .wp-pagenavi span:before{ content: ""; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: #AFAFAF; }
.wp-pagenavi span:before{ background: var(--main-color); }
.wp-pagenavi a:after{ content: ""; position: absolute; bottom: 0; left: -100%; width: 100%; height: 2px; background: var(--main-color); transition: 0.3s; }
.wp-pagenavi a:hover:after{ left: 0; width: 100%; }
.wp-pagenavi .nextpostslink{ position: relative; }
.wp-pagenavi .nextpostslink:before{ content: ""; z-index: 0; transition: all 0.4s; position: absolute; background: url(../images/nav-icon2.svg) no-repeat; background-size: contain; height: 12px; width: 12px; left: 0; right: 0; top: 0; bottom: 0; margin: auto; }
.wp-pagenavi .nextpostslink:after{ content: none; }
.wp-pagenavi .nextpostslink:hover:before{ left: auto; }
.wp-pagenavi .previouspostslink{ position: relative; }
.wp-pagenavi .previouspostslink:before{ content: ""; z-index: 0; transition: all 0.4s; position: absolute; background: url(../images/nav-icon2.svg) no-repeat; background-size: contain; height: 12px; width: 12px; left: 0; right: 0; top: 0; bottom: 0; margin: auto; -webkit-transform: rotate(180deg); transform: rotate(180deg);  }
.wp-pagenavi .previouspostslink:after{ content: none; }
.wp-pagenavi .previouspostslink:hover:before{ right: auto; }

/* =================== header =================== */

header { background: var(--main-color); position: fixed; top: 0; left: 0; width: 100%; z-index: 998; }
header .box{ position: relative; height: 70px; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
header .box .center{ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); height: 100%; display: inline-flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
header .box .right a{ padding-bottom: 3px; font-weight: 700; font-size: 2.3rem; color: #fff; transition: all .3s; position: relative; width: 210px; display: inline-flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; background: var(--red-color); height: 100%; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; }
header .box .right a:before{ transition: all .3s; content: ""; z-index: 0; position: absolute; right: 18px; top: 0; bottom: 0; margin: auto; background: url(../images/arrow.svg) no-repeat; background-size: contain; background-position: right; width: 25px; height: 100%; }
header .box .right a:hover:before{ right: 8px; }
header .box .left nav{ overflow-y: scroll; transition: 0.3s; background: var(--main-color); position: fixed; top: 0; left: -100%; bottom: 0; height: 100%; width: 50%; max-width: 530px; z-index: 990; padding: 80px; }
header .box .left nav{ overflow-y: scroll; -ms-overflow-style: none; scrollbar-width: none; }
header .box .left nav::-webkit-scrollbar { display:none; }
header .box .left .active{ left: 0; }
header .box .left ul li a{ overflow: hidden; display: inline-block; height: 1.5em; line-height: 1.5em; font-weight: 700; color: #fff; font-size: 6rem; text-align: left; }
header .box .left ul li a:hover .en{ margin-top: -1.5em; }
header .box .left ul li a span{ transition: 0.3s; display: block; color: var(--main-color); line-height: 1.5em; }
header .box .left ul li{ margin-bottom: 40px; }
header .box .left nav .btn-box p{ margin-bottom: 15px;color: #fff; font-size: 1.5rem; font-weight: 700; white-space: nowrap;}
header .box .left nav .btn-box a{ display: block; background: #fff; text-align: center; color: #000; width: 100%; max-width: 273px; padding: 10px; }
header .box .left nav .btn-box a:not(:last-child) { margin-bottom: 15px; }
header .box .left nav .btn-box a img{max-width: 157px;}
header .box .left nav .btn-box a::after{ content: ""; position: absolute; background: url(../images/brank2.svg) no-repeat; background-size: contain; background-position: center; width: 12px; height: 100%; top: 0; bottom: 0; right: 30px;}
header .box .left .modalbtn{ transition: 0.3s; padding: 13px; display: block; position: fixed; left: 0; top: 0; width: 70px; height: 70px; z-index: 999; }
header .box .left .modalbtn span{ position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; transition: 0.3s; height: 2px; width: 20px; background: #fff; }
header .box .left .modalbtn:before{ content: ""; transition: 0.3s; position: absolute; width: 20px; height: 2px; background: #fff; top: 28px; left: 0; right: 0; margin: auto; }
header .box .left .modalbtn:after{ content: ""; transition: 0.3s; position: absolute; width: 20px; height: 2px; background: #fff; bottom: 28px; left: 0; right: 0; margin: auto; }
header .box .left .modalbtn.active:before{ content: ""; -webkit-transform: rotate(45deg); transform: rotate(45deg); top: 34px; }
header .box .left .modalbtn.active:after{ content: ""; -webkit-transform: rotate(-45deg); transform: rotate(-45deg); bottom: 34px; }
header .box .left .modalbtn.active span{ opacity: 0; }
.black-bg { display: block; position: fixed; left: 0; top: 0; width: 100vw; height: 100vh; z-index: 100; background-color: #000; opacity: 0; visibility: hidden; transition: all .3s; }
.black-bg.active{ opacity: .5; visibility: visible; }
.wrapper{ padding-top: 70px; position: relative; overflow: hidden; }

/* =================== footer =================== */

footer{ padding: 105px 0 45px; background: var(--main-color); }
footer .box{position: relative; text-align: center; }
footer .box .page-top{position: absolute; bottom: 20px; right: 0; cursor: pointer; writing-mode: vertical-rl; color: #E3DCDC; font-size: 1rem; letter-spacing: -0.16px; line-height: 15px; font-weight: 900;}
footer .box .page-top::before{display: inline-block; content: ""; height: 50px; width: 1px; background-color: #fff; margin-bottom: 11px;}
footer .box .logo{ margin-bottom: 35px; max-width: 180px; display: inline-block; }
footer .box .nav1{ margin-bottom: 80px; }
footer .box .nav1 ul{ -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; }
footer .box .nav1 ul li:not(:last-child){ margin-right: 55px; }
footer .box .nav1 a{ font-weight: 700; position: relative; color: #FCFCFC; font-size: 4rem; padding-right: 20px; }
footer .box .nav2{ margin-bottom: 55px; }
footer .box .nav2 ul{ padding-left: 30px; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; }
footer .box .nav2 ul li:not(:last-child){ margin-right: 30px; }
footer .box .nav2 a{ font-weight: 700; position: relative; color: #fff; font-size: 1.8rem; padding-right: 20px; }
footer .box .nav2 a:before{ content: ""; z-index: 0; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; background: url(../images/brank.svg) no-repeat; background-size: contain; background-position: right; width: 10px; height: 100%; }
footer .box small{ font-size: 1.3rem; width: 100%; color: #E3DCDC; text-align: center; display: block; }
#top .footer-bg{ background: #FBFBFB; }


/* =================== top =================== */

#top .top-wrap{padding-bottom: 191px;}
#top.wrapper{padding: 0;}
#top .fv{position: relative; margin-top: 70px; padding: 0 0 56.25%; width: 100%; }
#top .fv iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

#top .fv .fv-img{width: 100%;}
#top .fv .container{ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); text-align: center; max-width: 100%; width: 100%;}
#top .fv .container h2{ color: #fff; font-weight: 700; font-size: 1.7rem; }
#top .fv .container h2 .ttl{display: block; font-family: var(--en-font); color: #fff; font-size: 10rem; line-height: 132px;}
#top .fv .container h2 .text{display: block; color: #fff; font-size: 4.3rem; font-weight: 700;}
#top section{ padding: 150px 0; }
#top h3{position: relative; font-family: var(--en-font); font-weight: 700; font-size: 11.2rem; line-height: 147px; letter-spacing: -5.6px;  color: var(--main-color); text-align: center; margin-bottom: 40px;  }
#top h3::before{position: absolute; bottom:-25px; left: 50%; content: ""; height: 32px; border-left: 1px solid #707070;}
#top .sec-subttl{font-weight: 700; font-size: 2.4rem; color: var(--main-color); text-align: center;}
#top .person{padding: 0;}
#top .person .container{padding-top: 87px; padding-bottom: 81px;  background-image: url(../images/person-back.svg); background-repeat: no-repeat; background-position: bottom 94px right 0;}
#top .person .container .person-list{margin-top: 109px; margin-bottom: 79px;} 
#top .person .container .person-list .person-box{ position: relative; display: flex; justify-content: space-between; }
#top .person .container .person-list .person-box .person-link{ position: absolute; top: 0; bottom:0; left: 0; right: 0; height: 100%; width: 100%;}
#top .person .container .person-list .person-box:nth-child(2){margin-top: 85px; margin-bottom: 79px;}
#top .person .container .person-list .person-box:nth-child(2){flex-flow: row-reverse;}
#top .person .container .person-list .person-box .person-left{ position: absolute; /*transform: translateX(-34px);*/}
#top .person .container .person-list .person-box .person-left{ display: flex; padding-top: 32px;}
#top .person .container .person-list .person-box .person-left .num{ font-family: var(--din-font); font-size: 15.4rem;letter-spacing: -4.62px; color: var(--main-color);}
#top .person .container .person-list .person-box .person-left .content{
  padding-left: 30px;
}
#top .person .container .person-list .person-box .person-left .content .ttl{ /*max-width: 290px;*/ white-space: nowrap; font-size: 5.2rem; line-height: 55px ; letter-spacing: -3.28px; font-weight: 900; color: var(--main-color); }
#top .person .container .person-list .person-box .person-left .content .position{ font-size: 1.6rem; line-height: 21px; font-weight: 500; margin-top: 31px; margin-bottom: 23px; color: var(--main-color); }
#top .person .container .person-list .person-box .person-left .content .name{ font-family: var(--din-font); font-size: 6.9rem; letter-spacing: -0.48px;  color: var(--main-color); margin-bottom: 36px; }
#top .person .container .person-list .person-box .person-left .content .link{ z-index: 1; overflow: hidden; position: relative; display: block; text-align: center; width: 207px; padding-top: 13px; padding-bottom: 14px; background-color: #B7362A; color: #fff; font-size: 1.8rem; letter-spacing: -0.31px; font-family: var(--en-font); line-height: 24px;
}
#top .person .container .person-list .person-box .person-left .content .link::before{position: absolute; content: ""; top: 50%; left: 22.3px; transform: translate(0%, -50%); -webkit-transform: translate(0%, -50%); -ms-transform: translate(0%, -50%); width: 23px; height: 15px; background-image: url(../images/youtube.svg); background-size: contain; background-repeat: no-repeat;}

#top .person .container .person-list .person-box .person-left .content .link:after {
 content: "";
 background: var(--main-color);
 position: absolute;
 z-index: -1;
 left: -20%;
 right: -20%;
 top: 0;
 bottom: 0;
 transform: skewX(-45deg) scale(0, 1);
 transition: all 0.5s;
}

#top .person .container .person-list .person-box .person-left .content .link:hover:after {
 transform: skewX(-45deg) scale(1, 1);
 -webkit-transition: all 0.5s;
 transition: all 0.5s;
}
#top .person .container .person-list .person-box .person-right{ width: 100%; text-align: right; }
#top .person .container .person-list .person-box:nth-child(2) .person-right{ text-align: left; }
#top .person .container .person-list .person-box img{ max-width: 628px; }
#top .person .more{text-align: right; width: 132px; margin-left: auto; margin-bottom: 111px;}
#top .person .person-text{ font-size: 4.1rem; letter-spacing: -2.25px; line-height: 66px; font-weight: 900;  color: var(--main-color); padding-bottom: 59px;}
#top .person .person-text span{ display: block; font-size: 7.3rem; letter-spacing: -3.72px;  color: var(--main-color); margin-top: 160px; margin-bottom: 108px;}
#top .flow{padding-top: 147px; padding-bottom: 228px;}
#top .flow .container{max-width: 853px;}
#top .flow .flow-content{position: relative; max-width: 801px; margin-top: 101px;}
#top .flow .flow-content .flow-line{display: block; position: absolute; top: 43px; left: 29px; width: 21px;}
#top .flow .flow-content .flow-line_sp{display: none;}
#top .flow .flow-content .flow-box{ display: flex; justify-content: space-between; position: relative; margin-bottom: 71px;}
#top .flow .flow-content .flow-box:last-child{margin-bottom: 0;}
#top .flow .flow-content .flow-text{padding-top: 30px; margin-left: 102px; max-width: 232px;}
#top .flow .flow-content .flow-text .time{font-family: var(--din-font); font-size: 6.3rem; letter-spacing: -1.89px; line-height: 75px; font-weight: bold; color: var(--main-color);}
#top .flow .flow-content .flow-text .ttl{margin-top: 1px; margin-bottom: 23px; font-size: 3.7rem; line-height: 54px; font-weight: 700; color: var(--main-color); }
#top .flow .flow-content .flow-text .text{font-size: 1.4rem; letter-spacing: -1.12px; line-height: 26px; font-weight: 500;}
#top .flow .flow-content .flow-img{position: relative; width: 412px;}
#top .flow .flow-content .flow-img .flow-comment{position: absolute; top: -101px; right: -91px;;}
#top .flow .flow-content .flow-img .flow-comment .comment-box{ position: relative; width: 220px; height: 220px;  background: url(../images/comment-b1.svg) no-repeat; background-size: cover; text-align: center;}
#top .flow .flow-content .flow-img .flow-comment .comment-box p{display: block; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -56%); -webkit-transform: translate(-50%, -56%); -ms-transform: translate(-50%, -56%); white-space: nowrap; font-size: 1.3rem; letter-spacing: -0.12px; line-height: 16px; color: #fff; font-weight: 700}
#top .flow .flow-content .flow-img .flow-comment .comment-box p span{ font-size: 1.3rem; letter-spacing: -0.12px; line-height: 16px; color: #FFF500!important; }
#top .flow .flow-content .flow-box:nth-child(even) .flow-img .flow-comment{top:-87px; left: -66px;}
#top .flow .flow-content .flow-box:nth-child(even) .flow-img .flow-comment .comment-box{background-image: url(../images/comment-b2.svg); }
#top .qa{padding-top: 0px; padding-bottom: 250px;}
#top .qa .container{padding: 0 19px;}
#top .qa .qa-list{display: flex; justify-content: space-between; flex-wrap: wrap; margin-top: 120px;}
#top .qa .qa-list .qa-box:hover img{ transform: scale(1.1); }
#top .qa .qa-list .qa-box{position: relative; height: 450px; width: 505px; border: 5px solid var(--main-color); margin-bottom: 38px; cursor: pointer;}
#top .qa .qa-list .qa-box::after{position: absolute; bottom: 22px; right: 22px; content: url(../images/plus.svg);}
#top .qa .qa-list .qa-box img{ -webkit-transition: all 0.3s; transition: all 0.5s; width: 319px; margin-top: 61px; margin-left: 100px;}
#top .qa .qa-list .qa-box .qa-text{ display: flex; margin-top: 32px; margin-left: 38px; margin-bottom: 20px;}
#top .qa .qa-list .qa-box .qa-text .num{margin-right: 17px; font-family: var(--din-font); color: #8A1A10; font-size: 11.4rem; letter-spacing: -5.7px; line-height: 1.14;}
#top .qa .qa-list .qa-box .qa-text .text{ width: 331px; color: var(--main-color); font-size: 3.4rem; line-height: 46px; letter-spacing: -4.08px; font-weight: 900;}
#top .qa .qa-list .qa-box:nth-child(3) .qa-text .text{font-size: 2.9rem;}
#top .qa .qa-list .qa-box .qa-text .text span{
  display: block; margin-top: 3px; font-size: 1.75rem; letter-spacing: -0.97px; line-height: 23px;
}
#top .modal{ visibility: hidden; position: fixed; top: 0; z-index: 10; width: 100%; height: 100%; z-index: 999; }
#top .modal .modal-bg{ height: 100%; width: 100%; background-color: #ffffff90;}
#top .modal.open{visibility: visible;}
#top .modal .modal-wrap{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 940px;}
#top .modal .modal-wrap .modal-box { z-index: 999; display: flex; justify-content: space-between; width: 830px;background-color: #fff; border: 8px solid var(--main-color); box-sizing: border-box; margin: 0 auto;}
#top .modal .modal-wrap .modal-box .modal-left{ display: inline-flex; align-items: center; flex-shrink: 0; max-width: 360px;}
#top .modal .modal-wrap .modal-box .modal-right{position: relative; border-left: 8px solid var(--main-color); padding: 29px 25px 27px;}
#top .modal .modal-wrap .modal-box .modal-right .num{font-family: var(--din-font); color: #8A1A10; font-size: 10.3rem; line-height: 95px;}
#top .modal .modal-wrap .modal-box .modal-right .ttl{margin-bottom: 20px; color: var(--main-color); font-size: 2.6rem; line-height: 36px; letter-spacing: -3.12px; font-weight: 900;}
#top .modal .modal-wrap .modal-box .modal-right .text{ color: var(--main-color); font-weight: 400; font-size: 1.6rem; letter-spacing: -1.12px; line-height: 1.7em;}
#top .modal .modal-wrap .modal-box .modal-right .close{position: absolute; top: 25px; right: 25px; height: 25px; width: 25px; cursor: pointer; padding: 13px 0;}
#top .modal .modal-wrap .modal-box .modal-right .close .var{position: relative; background-color: #00000000; width: 26px; height: 3px;}
#top .modal .modal-wrap .modal-box .modal-right .close .var::after{position: absolute; content: ""; top: 0; background-color: var(--main-color); transform: rotate(45deg); width: 26px; height: 3px; }
#top .modal .modal-wrap .modal-box .modal-right .close .var::before{position: absolute; content: ""; top: 0; transform: rotate(-45deg); background-color: var(--main-color); width: 26px; height: 3px;}
#top .modal .swiper-button-prev:after,#person-page .swiper-rtl .swiper-button-next:after{ content: ""; position: absolute; background:url(../images/prev2.svg) no-repeat; background-size: contain; background-position: center right; width: 20px; height: 100%; }
#top .modal .swiper-button-next:after,#person-page .swiper-rtl .swiper-button-prev:after{ content: ""; position: absolute; background: url(../images/next2.svg) no-repeat; background-size: contain; background-position: center left; width: 20px; height: 100%; }

/* #entry::before{display: block; content: ""; height: 200px; width: 10px; background-color: #fff;} */
.entry{background:linear-gradient(90deg,var(--main-color) 0%,var(--main-color) 50%,#00000000 50%,#00000000 100%);}
.entry .container{position: relative; background-color: var(--main-color); background-clip: content-box; background-image: url(../images/entry-back.png); background-repeat: no-repeat; background-position: top -100px right -328px; transition: all .3s;}
.entry .entry-ttl{text-align: center; padding: 0 10px; font-size: 5.2rem; letter-spacing: -5px; margin-bottom: 14px; color: #fff; font-weight: 900; padding-top: 50px;}
.entry .entry-text{text-align: center; padding: 0 10px;  font-size: 1.9rem; font-weight: 700; letter-spacing: -0.8px; color: #fff;}
.entry .entry-comment{position: absolute; width: 200px; top: -70px; right: 90px;}
.entry .entry-link{display: flex; justify-content: space-between; max-width: 721px; margin: 0 auto;  padding: 0 10px; padding-bottom: 46px; margin-top: 54px; gap:3rem;}
.entry .entry-btn{position: relative; display: block; width: 338px; height: 67px; border-radius: 46px; background-color: #fff;}
.entry .entry-btn1{ padding:5px 0px; display: inline-flex; justify-content: center; align-items: center; }
.entry .entry-btn2{ display: inline-flex; justify-content: center; align-items: center; }
.entry .entry-btn1 img{ max-width: 211px; box-sizing: content-box;}
.entry .entry-btn2 img{ max-width: 149px;  box-sizing: content-box;}
.entry .entry-btn::after{ content: ""; position: absolute; background: url(../images/brank2.svg) no-repeat; background-size: contain; background-position: center; width: 15px; height: 100%; top: 0; bottom: 0; right: 30px; }
/* =================== sub =================== */

.sub.wrapper{padding-top: 135px;}
.sub .title-box{ padding: 70px 0; }
.sub .title-box h2{ text-align: center; font-size: 1.8rem; color: var(--main-color); }
.sub .title-box h2 span{ margin-bottom: 9px; font-size: 4rem; display: block; color: var(--main-color); }
.sub section{ padding-bottom: 120px; }

/* parson */
#person-page{padding-bottom: 213px;}
#person-page .detail{background: linear-gradient(180deg, #fff 0%, #fff 50%,#26262605 50%,#26262605 100%); padding-bottom: 140px;}
#person-page .detail .detail-box{display: flex;justify-content: space-between;}
#person-page .detail .detail-box .detail-left{ display: flex; margin-bottom: 20px;}
#person-page .detail .detail-box .detail-left .num{ margin-right: 10px; font-family: var(--din-font); color: var(--main-color); font-size: 15rem;}
#person-page .detail .detail-box .detail-left .text{font-family: var(--din-font); color: var(--main-color); font-size: 4.6rem; letter-spacing: -0.32px; line-height: 55px;}
#person-page .detail .detail-box .detail-left .text span{ display: block; margin-top: 5px; font-size: 1.8rem; line-height: 26px; font-weight: 500; }
#person-page .movie{ position: relative; padding-bottom: 56.25%; height: 0; overflow: hidden; }
#person-page .movie iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

#person-page .cause{ padding-top: 0; }
#person-page .detail .detail-box .detail-right{color: var(--main-color); font-size: 5rem; letter-spacing: -2.65px; line-height: 58px; font-weight: 900;}
#person-page .cause .cause1{ padding-top: 100px; background-color: #26262605; padding-bottom: 368px;}
#person-page .cause .sec-ttl{ line-height: 1.3em; text-align: center; color: #000; font-size: 6.1rem; letter-spacing: -5.49px; font-weight: 900;}
#person-page .cause .sec-ttl span{ color: #8A1A10;}
#person-page .cause .cause-box1 .cause-img1{padding: 0 50px; margin: 0 auto; transform: translateY(50px);}
#person-page .cause .cause-box1 .q1{padding: 0 50px; padding-top: 102px; padding-bottom: 50px; background-color: #ffffff; border-radius: 14px;}
#person-page .cause .cause-box1 .q1 .ttl{margin-bottom: 25px; font-size: 3.1rem; letter-spacing: -2.17px; font-weight: 700;}
#person-page .cause .cause-box1 .q1 .ttl span{display: block; margin-bottom: 15px; font-family: "DIN Alternate" , sans-serif; color: #8A1A10; font-size: 2.8rem; letter-spacing: -1.68px; font-weight: bold;}
#person-page .cause .cause-box1 .text-box{display: flex; justify-content: space-between; font-size: 1.6rem; letter-spacing: -1.12px; line-height: 27px; font-weight: 400;}
#person-page .cause .cause-box1 .text-box .text{width: 47.5%; line-height: 1.7em; }
#person-page .photo .container{position: relative; max-width:  1500px;}
#person-page .photo .photo1, #person-page .photo .photo3{width: 29%;}
#person-page .photo .container .photo1{position: absolute; top:-124px; left: 0%;}
#person-page .photo .container .photo2{position: absolute; top: -268px; left: 32.5%; width: 35%; }
#person-page .photo .container .photo3{position: absolute; top:-204px; right: 0%;}
#person-page .cause{padding-bottom: 206px;}
#person-page .cause .cause2{padding-top: 400px; font-size: 3.37rem;}
#person-page .cause .cause2 .container{max-width: 1002px; box-sizing: content-box;}
#person-page .cause .cause2 .cause-box-right{ max-width: 432px; width:  100%; margin-left: 20px;}
#person-page .cause .cause2 .cause-box-right .sp{display: none;}
#person-page .cause .cause2 .cause-box-left{ width: 500px;}
#person-page .cause .cause2 .cause-box2{display: flex; justify-content: space-between;}
#person-page .cause .cause2 .cause-box2:first-child{margin-bottom: 120px;}
#person-page .cause .cause2 .cause-ttl{margin-bottom: 40px; font-size: 4rem; color:var(--main-color); font-weight: 900;}
#person-page .cause .cause2 .ttl{margin-bottom: 30px; font-size: 2.3rem; color:var(--main-color); letter-spacing: -1.61px; font-weight: 700;}
#person-page .cause .cause2 .ttl span{display: block; margin-bottom: 15px; font-family: "DIN Alternate" , sans-serif; letter-spacing: -1.38px; color: #8A1A10; font-weight: bold; font-size: 2.8rem;}
#person-page .cause .cause2 .ttl .sp{display: none;}
#person-page .cause .cause2 .text{font-size: 1.6rem; color: var(--main-color); line-height: 1.7em; font-weight: 400;}
#person-page .cause .cause2 .cause-box-left .q2{ margin-bottom: 40px;}
#person-page .cause .cause2 .cause-box2:nth-child(2){flex-direction: row-reverse;}
#person-page .cause .cause2 .cause-box2:nth-child(2) .cause-box-right{ max-width: 432px; width:  100%; margin-right: 20px; }
#person-page .cause .cause2 .cause-box-left .q4{ margin-bottom: 40px;}
#person-page .outlook{background-color: #F2f2f2; padding-bottom: 90px;}
#person-page .outlook .sec-ttl{text-align: center; transform: translateY(-57px); color: var(--main-color); font-size: 9.5rem; font-weight: 900; letter-spacing: -5.35px; line-height: 90px;}
#person-page .outlook .sec-ttl span{color: #8A1A10;}
#person-page .outlook .outlook-img1{width: 100vw; margin-bottom: 95px;}
#person-page .outlook .outlook-box .container{display: flex; justify-content: space-between; max-width: 1000px; box-sizing: content-box;}
#person-page .outlook .outlook-box .outlook-box-left{width: 567px; font-size: 2.53rem;}
#person-page .outlook .outlook-box .outlook-box-left .q6 ,#person-page .outlook .outlook-box .outlook-box-left .q7{background-color: #ffffff; border-radius: 10px; padding-left: 35px;}
#person-page .outlook .outlook-box .outlook-box-left .q6{margin-bottom: 9px; padding-top: 32px; padding-bottom: 29px;}
#person-page .outlook .outlook-box .outlook-box-left .q7{padding-top: 22px; padding-bottom: 39px;}
#person-page .outlook .outlook-box .outlook-box-right{width: 385px;}
#person-page .outlook .outlook-box .outlook-box-right img{ height: 100%; object-fit: cover; }
#person-page .outlook .outlook-box .ttl{margin-bottom: 15px; font-size: 2.3rem; color:var(--main-color); letter-spacing: -1.61px; line-height: 32px; font-weight: 700;}
#person-page .outlook .outlook-box .ttl span{display: block; margin-bottom: 11px; font-family: "DIN Alternate" , sans-serif; font-size: 2.1rem; letter-spacing: -1.26px; color: #8A1A10; font-weight: bold; line-height: 28px;}
#person-page .outlook .outlook-box .text{width: 458px; font-size: 1.2rem; color: var(--main-color); line-height: 17px; letter-spacing: -0.84px; font-weight: 400;} 
#person-page .person-slide{padding-top: 178px; padding-bottom: 181px;}
#person-page .person-slide .container{max-width: 1000px; padding: 0;}
#person-page .person-slide .swiper-slide{padding: 0 88px;}

#person-page .person-slide .person-box{ display: flex; justify-content: space-between; }
#person-page .person-slide .person-box .person-left{ display: flex; padding-top: 25px; color: var(--main-color);}
#person-page .person-slide .person-box .person-left.sp{display: none;}
#person-page .person-slide .person-box .person-left .num{ font-family: var(--din-font); color: var(--main-color); font-size: 12.8rem; letter-spacing: -3.84px; line-height: 128px;}
#person-page .person-slide .person-box .person-left .content{ transform: translateX(48px);}
#person-page .person-slide .person-box .person-left .ttl{
  max-width: 257px; white-space: nowrap; font-size: 3.5rem; line-height: 50px ; letter-spacing: -2.71px; font-weight: 900; color: var(--main-color); }
#person-page .person-slide .person-box .person-left .name{ font-family: var(--din-font); font-size: 3.8rem; color: var(--main-color); letter-spacing: -0.27px; line-height: 46px; margin-top: 20px; }
#person-page .person-slide .person-box .person-left .position{ font-size: 1.5rem; line-height: 22.5px; font-weight: 500; margin-top: 13px; margin-bottom: 40px;}
#person-page .person-slide .person-box .person-left a{ z-index: 1; overflow: hidden; position: relative; display: block; text-align: center; width: 174px; height: 43px; background-color: var(--red-color); font-family: var(--en-font); color: #fff; font-size: 1.8rem; letter-spacing: -0.9px; line-height: 43px; 
}

#person-page .person-slide .person-box .person-left a:after {
 content: "";
 background: var(--main-color);
 position: absolute;
 z-index: -1;
 left: -20%;
 right: -20%;
 top: 0;
 bottom: 0;
 transform: skewX(-45deg) scale(0, 1);
 transition: all 0.5s;
}

#person-page .person-slide .person-box .person-left a:hover:after {
 transform: skewX(-45deg) scale(1, 1);
 -webkit-transition: all 0.5s;
 transition: all 0.5s;
}
#person-page .person-slide .person-box .person-left .content a::before{position: absolute; top:1px; left: 9.3px; content: url(../images/youtube2.svg);}
#person-page .person-slide .person-box img{ width: 479px; }

#person-page .swiper-button-prev:after,#person-page .swiper-rtl .swiper-button-next:after{ content: ""; position: absolute; background:url(../images/prev2.svg) no-repeat; background-size: contain; background-position: center right; width: 20px; height: 100%; }
#person-page .swiper-button-next:after,#person-page .swiper-rtl .swiper-button-prev:after{ content: ""; position: absolute; background: url(../images/next2.svg) no-repeat; background-size: contain; background-position: center left; width: 20px; height: 100%; }

/* =================== not-found =================== */

#not-found section p{ margin-bottom: 30px; }


/* 202501追記 */
.entry .entry-link{
  justify-content: center;
}
.sns-btn-wrap{
  display: flex;
  gap: 1rem;
  margin-top: 5rem;
}
footer .sns-btn-wrap{
  justify-content: center;
  margin-bottom: 2rem;
}