@charset "UTF-8";

/*
Theme Name:LYA Partners
*/

/*-----------------------------------------------------------------------------
 WordPress CMS Theme.
---------------------------------------------------------------------------- */


:root{
	--vw:0.1vw;
  --base:calc(var(--vw) * 34);

  /* colors */
  --white:#fff;
  --fc2:#d1d1d1;
  --green:#193b39;
  --green2:#1c403e;
  --green3:#152726;
  --yellow:#ECE26E;

  /* margin */
	--s16:calc(var(--vw) * 16);
	--s32:calc(var(--vw) * 32);
	--s64:calc(var(--vw) * 64);
	--s128:calc(var(--vw) * 128);
	--s256:calc(var(--vw) * 256);
	--s320:calc(var(--vw) * 320);
}

a{transition: all .3s;}
a:hover{opacity: .5; transition: all .3s;}

html{background:linear-gradient(to right,#193b39 0%,#1c403e 52.71%,#152726 100%);height:100%;}
*{box-sizing:border-box;list-style-type:none;padding:0;margin:0;}
body{color:var(--white);font-size:var(--base);font-family:"Noto Sans JP",sans-serif;font-optical-sizing:auto;font-style:normal;background:linear-gradient(to right,#193b39 0%,#1c403e 52.71%,#152726 100%);min-height:100vh; overflow-x: hidden;}
a{color:inherit;text-decoration:none; width: 100%; overflow-x: hidden;}
img{max-width:100%;height:auto;vertical-align:bottom;}
button,input,textarea,select{font:inherit;color:inherit;}
.serif{font-family:"Noto Serif JP",serif;font-optical-sizing:auto;font-style:normal;}

.ppSet {margin-top: var(--s64);padding-top: var(--s64); border-top: solid 1px rgba(255,255,255,.15);}
.ppSet:nth-last-of-type(1) {margin-bottom: var(--s64);padding-bottom: var(--s64); border-bottom: solid 1px rgba(255,255,255,.15);}
.ppHeader h3 {font-size: 130%;}
.ppTxt p { margin-top: var(--s32);}

.header{position:fixed;top:0;left:0;z-index:100;width:100vw;padding:4vw; box-sizing: border-box; opacity: 0; filter: blur(10px); transition: all 1s; }
.header.clear {opacity: 1; filter: blur(0);}
.header .inner{display:flex;align-items:center;justify-content:space-between;width:100%;}
.header .inner .logo{display:block;width:calc(var(--vw) * 130);}
.header .inner .logo svg{display:block;width:100%;height:auto;}
.header .inner .gmenu{display:none;}
.header .inner .spbtn{position:relative;z-index:120;display:flex;flex-direction:column;justify-content:center;gap:calc(var(--vw) * 14);width:calc(var(--vw) * 60);height:calc(var(--vw) * 60);}
.header .inner .spbtn p{display:block;width:100%;height:1px;background:var(--white);transition:transform .45s cubic-bezier(.77,0,.175,1),opacity .3s ease;}

body.isMenuOpen .header .inner .spbtn p:nth-child(1){	transform:translateY(calc(var(--vw) * 8)) rotate(45deg);}
body.isMenuOpen .header .inner .spbtn p:nth-child(2){opacity:0;}
body.isMenuOpen .header .inner .spbtn p:nth-child(3){	transform:translateY(calc(var(--vw) * -26)) rotate(-45deg);}

.header .pageIndicator {display: none; opacity: 0; visibility: hidden;}
.header .inner .logo,.header .inner .gmenu{transition:opacity .45s ease,transform .45s ease,visibility .45s ease;}
body.isGmenuHide .header .inner .logo ,body.isGmenuHide .header .inner .gmenu{opacity:0;visibility:hidden;pointer-events:none;}

.spmenu{position:fixed;top:0;left:0;z-index:90;width:100%;height:100vh;background:#152726;opacity:0;visibility:hidden;pointer-events:none;clip-path:inset(0 0 100% 0);transition:opacity .5s ease,visibility .5s ease,clip-path .7s cubic-bezier(.77,0,.175,1);}
.spmenu .spmenuInner{display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;}
.spmenu .spmenuInner a{display:flex;justify-content:space-between;align-items:center;width:90%;padding:calc(var(--vw) * 64) calc(var(--vw) * 16);border-bottom:1px solid rgba(255,255,255,.1);line-height:1;letter-spacing:.04em;opacity:0;transform:translateY(calc(var(--vw) * 26));transition:opacity .5s ease,transform .7s cubic-bezier(.77,0,.175,1);}
.spmenu .spmenuInner a:hover span{opacity: .5; transition: all .3s;}

.spmenu .spmenuInner a:first-child{border-top:1px solid rgba(255,255,255,.1);}
.spmenu .spmenuInner a span:nth-child(1) {flex:1;}
.spmenu .spmenuInner a span:nth-child(2){display: block; width:calc(var(--vw) * 25); aspect-ratio:1/1;}
.spmenu .spmenuInner a span:nth-child(2) svg{display:block;width:100%;height:auto; object-fit: contain;}
.spmenu .spmenuInner a span:nth-child(2) svg path { fill: var(--white);}

body.isMenuOpen{overflow:hidden;}
body.isMenuOpen .spmenu{opacity:1;visibility:visible;pointer-events:auto;clip-path:inset(0 0 0 0);}
body.isMenuOpen .spmenu .spmenuInner a{opacity:1;transform:translateY(0);}
body.isMenuOpen .spmenu .spmenuInner a:nth-child(1){transition-delay:.18s;}
body.isMenuOpen .spmenu .spmenuInner a:nth-child(2){transition-delay:.24s;}
body.isMenuOpen .spmenu .spmenuInner a:nth-child(3){transition-delay:.30s;}
body.isMenuOpen .spmenu .spmenuInner a:nth-child(4){transition-delay:.36s;}
body.isMenuOpen .spmenu .spmenuInner a:nth-child(5){transition-delay:.42s;}

footer{width:100%;background:#D3D3D3; color:#164E50;}
footer .inner{display:flex;justify-content:space-between;align-items:flex-start; flex-direction: column; width:100%;padding:var(--s64) 4vw; box-sizing: border-box;}
footer .inner .left{order:2; display:flex;flex-direction:column;width:100%;}
footer .inner .left a{display:flex;justify-content:space-between;align-items:center;width:100%;padding:calc(var(--vw) * 64) calc(var(--vw) * 16);border-top:1px solid rgba(22,78,80,.2);line-height:1;letter-spacing:.04em;}
footer .inner .left a:nth-last-of-type(1) {border-bottom:1px solid rgba(22,78,80,.2);}
footer .inner .left a:hover span{opacity: .5; transition: all .3s;}
footer .inner .left a span:nth-child(1) {flex:1;}
footer .inner .left a span:nth-child(2){display: block; width:calc(var(--vw) * 25); aspect-ratio:1/1;}
footer .inner .left a span:nth-child(2) svg{display:block;width:100%;height:auto;}
footer .inner .left a span:nth-child(2) svg path {fill:#164E50;}

footer .inner .right{order:1; position:relative;width:100%; display: flex; justify-content: flex-end; flex-direction: column;margin-bottom:var(--s64);}
footer .inner .right .logo{width:calc(var(--vw) * 560);margin-bottom:var(--s32); margin-right: auto;}
footer .inner .right .logo svg{display:block;width:100%;height:auto;}
footer .inner .right p{font-weight:400;line-height:1.5;letter-spacing:.04em; text-align: left;}
footer .inner .right .gotop{display: none;}
footer .cp{ background: #152827; padding: var(--s16) 0; color: var(--white);line-height:1;letter-spacing:.04em; text-align: center;}


.wow {opacity: 0;}
.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-40px);transform:translateY(-40px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-40px);-ms-transform:translateY(-40px);transform:translateY(-40px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}


/* subpages */
main {position: relative;width: auto; margin: var(--s256) 4vw; box-sizing: border-box;opacity: 0; filter: blur(10px); transition: all 1s; counter-reset: sp-section;}
main.clear { opacity: 1; filter: blur(0);}
main h1.pagettl {font-size:calc(var(--vw) * 100); font-weight: 400;line-height:1;letter-spacing:.03em; margin-bottom: var(--s256); opacity: 0; filter: blur(10px); transition: all 1s;}
main h1.pagettl.clear { opacity: 1; filter: blur(0);}
main h1.pagettl.set { margin-bottom: var(--s64);}

main .h1subTxt {margin-bottom: var(--s256); opacity: 0; filter: blur(10px); transition: all 1s;}
main .h1subTxt p {font-size:calc(var(--vw) * 36); font-weight: 400;line-height:1.8;letter-spacing:.03em; padding-left: var(--s32); border-left: solid 1px rgba(255,255,255,.2);}
main .h1subTxt p span { display: block; margin-top: var(--s32); color: var(--fc2);}
main .h1subTxt.clear {opacity: 1; filter: blur(0);}

main section {width: 100%; margin-bottom: var(--s320);}

.duocell { width: 100%; display: block; margin: 0 auto;}
.duocell .left { display: none;}
.duocell .right { counter-increment: sp-section; width: 100%; margin-left: auto; text-align: left;}
.partHeader { position: relative; top: 0; z-index: 10; display: grid; grid-template-columns: calc(var(--vw) * 100) calc(var(--vw) * 50) 1fr; grid-template-rows: auto auto; column-gap: calc(var(--vw) * 2); align-items: center; width: 100%;}
.partHeader::before { content: counter(sp-section, decimal-leading-zero); grid-column: 1; grid-row: 1 / 3; font-size: calc(var(--vw) * 72); font-weight: 400; line-height: 1;}
.partHeader::after { content: ""; grid-column: 2; grid-row: 1 / 3; display: block; width: calc(var(--vw) * 30); height: 1px; background: rgba(255,255,255,.45);}
.partHeader p { grid-column: 3; grid-row: 1; order: initial; font-size: calc(var(--vw) * 22); line-height: 1.4; margin: 0 0 calc(var(--vw) * 8);}
.partHeader h3 { grid-column: 3; grid-row: 2; order: initial; font-size: calc(var(--vw) * 56); line-height: 1.25; letter-spacing: .07em; font-weight: 400;  margin: 0;}
.partHeader h3.multi { line-height: 1.25; margin-top: 0;}


.philosophyCell { margin-top: calc(var(--vw)*180);}
.philosophyCell .eyebrush {font-size:calc(var(--vw) * 32); margin-bottom:calc(var(--vw) * 47);}
.philosophyCell h4 {position: relative; width: fit-content; font-size:calc(var(--vw) * 46); margin-bottom:calc(var(--vw) * 64);font-family:"Noto Serif JP",serif;font-optical-sizing:auto;font-style:normal;font-weight: 400;line-height:1.6;letter-spacing:0; padding-left: calc(var(--vw) * 44); padding-right: calc(var(--vw) * 44);}
.philosophyCell h4 br {display: none;}
.philosophyCell h4:before {position: absolute; content:"“";font-size:calc(var(--vw) * 56); left: 0; top: 0; }
.philosophyCell h4:after {position: absolute; content:"”";font-size:calc(var(--vw) * 56); right: 0; bottom: 0; }
.philosophyCell .enTxt { color: var(--fc2); line-height: 1.6;letter-spacing:.03em;}
.philosophyCell .ValueBox {width: 100%; display: flex; justify-content: flex-start; gap:6vw; flex-direction: column;}
.philosophyCell .ValueBox .cell {width: 100%; background: rgba(255,255,255,.03); padding: calc(var(--vw) * 32); text-align: left; box-sizing: border-box;}
.philosophyCell .ValueBox .cell svg {display: none;}
.philosophyCell .ValueBox .cell .top { display: flex; justify-content: space-between; align-items: center; margin-bottom: calc(var(--vw) * 40); text-align: center;}
.philosophyCell .ValueBox .cell .top p:first-child {font-size:calc(var(--vw) * 52); letter-spacing:.03em;font-family:"Noto Serif JP",serif;font-optical-sizing:auto;font-style:normal; margin-bottom: calc(var(--vw) * 4);}
.philosophyCell .ValueBox .cell .top p:last-child {font-size:calc(var(--vw) * 24); color: var(--fc2);letter-spacing:.03em;}
.philosophyCell .ValueBox .cell .btm {display: block; margin: 0; color: var(--fc2); line-height: 1.6;letter-spacing:.03em; text-align: left;}
.philosophyCell .ValueBox .cell .btm br {display: none;}

.reasonBox{display:flex;flex-direction:column;gap:var(--s64);width:100%; margin-top: var(--s128);}
.reasonBox .cell{position:relative;display:flex;justify-content:space-between;align-items:center; flex-direction: column; width:100%;padding:calc(var(--vw) * 64); background:rgba(255,255,255,.03); box-sizing: border-box;}
.reasonBox .cell .num{display: none;}
.reasonBox .cell .mainCell{order:1;}
.reasonBox .cell .mainCell h3{margin-bottom:calc(var(--vw) * 38);font-size:calc(var(--vw) * 36);font-weight:500;line-height:1.45;letter-spacing:.04em; text-align: left;}
.reasonBox .cell .mainCell p{font-weight:400;line-height:1.8;letter-spacing:.04em;opacity:.82; color: var(--fc2);}
.reasonBox .cell .icon{order:2; width:calc(var(--vw) * 200);height:auto; aspect-ratio:1/1; margin: calc(var(--vw)*64) auto;}
.reasonBox .cell .icon img{display:block;width:100%;height:auto;}

.companyCell{width:100%; margin-top: var(--s128); display: flex; justify-content: flex-start; flex-direction: column; gap:calc(var(--vw) * 64);}
.companyCell .cell{width:100%;padding:0;border-bottom:1px solid rgba(255,255,255,.15);}
.companyCell .cell h4{font-size:calc(var(--vw) * 36);font-weight:400;line-height:1.8;letter-spacing:.06em; margin-bottom:var(--s16);}
.companyCell .cell p{font-weight:400;line-height:1.8;letter-spacing:.04em; color: var(--fc2); margin-bottom: var(--s32);}

.blueTxtP {color: var(--fc2); font-size: calc(var(--vw)*22); line-height: 1.8; margin-top: var(--s128);}
.whiteTxtP { font-size: calc(var(--vw)*22); line-height: 1.8; margin-top: var(--s128);}

.subtxtSet{color: var(--fc2); margin-top: var(--s128); line-height: 1.8;}
.subtxtSet p:first-child { font-size: calc(var(--vw)*35); color: var(--white); font-weight: 500; margin-bottom: var(--s32);}
.subtxtSet p br {display: none;}


.structualBarriersCell{width:100%; margin-top: var(--s128); display: flex; justify-content: flex-start; flex-direction: column; gap:calc(var(--vw) * 113) calc(var(--vw) * 113);}
.structualBarriersCell .cell{width:100%;padding:0;}
.structualBarriersCell .cell .top{display:flex;justify-content:flex-start;align-items:center;width:100%;border-bottom:1px solid rgba(255,255,255,.1);}
.structualBarriersCell .cell .top .num{display: flex; justify-content: center; align-items: center; flex-direction: column; width:calc(var(--vw) * 105); height: calc(var(--vw) * 105); aspect-ratio:1/1; font-size:calc(var(--vw) * 35);font-weight:300;line-height:1;border-right:1px solid rgba(255,255,255,.1); background: rgba(0,0,0,.1); }
.structualBarriersCell .cell .top .num span {font-size: calc(var(--vw) * 24);  margin-bottom: 4px; color: var(--yellow);}
.structualBarriersCell .cell .top .txt{flex:1;padding-left: calc(var(--vw) * 16); display: flex; justify-content: center; align-items: flex-start; flex-direction: column;height:calc(var(--vw) * 85)}
.structualBarriersCell .cell .top .txt h4{ order:2; font-size:calc(var(--vw) * 36);font-weight:400;line-height:1.5;letter-spacing:.04em;}
.structualBarriersCell .cell .top .txt p{ order:1; margin-bottom:calc(var(--vw) * 4);font-size:calc(var(--vw) * 18);font-weight:400;line-height:1.8;letter-spacing:.08em;color:var(--fc2);opacity:.8;}
.structualBarriersCell .cell .btm{padding-top:calc(var(--vw) * 40);font-weight:400;line-height:2;letter-spacing:.04em;color:var(--fc2);}
.structualBarriersCell .cell.img {display: flex; justify-content: center; align-items: center;}
.structualBarriersCell .cell.img img {display: block; width: 60%; height: auto;}

.decisionEnablementBox {width: 100%; display: flex; justify-content: flex-start;flex-direction: column; gap:calc(var(--vw) * 64); margin-top: var(--s128);}
.decisionEnablementBox .cell {width: 100%; background: rgba(255,255,255,.03); padding: var(--s64); text-align: center; display: flex;flex-direction: column; box-sizing: border-box;}
.decisionEnablementBox .cell .top {order:1; margin-bottom: var(--s32); text-align: center; font-size: calc(var(--vw) * 36);}
.decisionEnablementBox .cell .top br {display: none;}
.decisionEnablementBox .cell .img {order:3;  width: 30%; margin: 0 auto;}
.decisionEnablementBox .cell .img img {width: 100%; height: auto }
.decisionEnablementBox .cell .btm {order:2; display: block; margin: var(--s32) auto; color: var(--fc2); line-height: 1.8;letter-spacing:.03em; text-align: left; flex:1;}
.decisionEnablementBox .cell .num {order:4; text-align: right; font-size: calc(var(--vw) * 36); font-weight: 600; color: var(--fc2);}

.fromDtoECell{width:100%; margin-top: var(--s128); display: block;}
.fromDtoECell .cell{width:100%;padding:0; margin-bottom: calc(var(--vw) * 113);}
.fromDtoECell .cell .top{display:flex;justify-content:flex-start;align-items:center;width:100%;border-bottom:1px solid rgba(255,255,255,.1);}
.fromDtoECell .cell .top .num{display: flex; justify-content: center; align-items: center; width:calc(var(--vw) * 90); height: calc(var(--vw) * 130); aspect-ratio:1/1; font-size:calc(var(--vw) * 30);font-weight:300;line-height:1;border-right:1px solid rgba(255,255,255,.1); background: rgba(0,0,0,.1);color:var(--yellow); }
.fromDtoECell .cell .top .txt{flex:1;padding-left: calc(var(--vw) * 30); display: flex; justify-content: space-between; align-items: center;height:calc(var(--vw) * 130)}
.fromDtoECell .cell .top .txt h4{ order:1; font-size:calc(var(--vw) * 36);font-weight:400;line-height:1.5;letter-spacing:.04em;}
.fromDtoECell .cell .top .txt p{ display: none;}
.fromDtoECell .cell .btm{padding-top:calc(var(--vw) * 40);font-weight:400;line-height:2;letter-spacing:.04em;color:var(--fc2);}

.faqGroup {width:100%; margin-top: var(--s128); display: block; padding-bottom: var(--s64); border-bottom: solid 1px rgba(255,255,255,.1);}
.faqGroup h4 {font-size:calc(var(--vw) * 36);font-weight:400;line-height:1.5;letter-spacing:.04em;}
.faqGroup .faqList {width:100%; margin-top: var(--s32); display: block;}
.faqGroup .faqList .cell { margin-top: var(--s64); padding-top: var(--s64); border-top: solid 1px rgba(255,255,255,.1);}
.faqGroup .faqList .cell .qcell { display: flex; justify-content: flex-start; align-items: center; cursor: pointer;}
.faqGroup .faqList .cell .qcell:before {display: flex; justify-content: center; align-items: center; border-radius: 50%; background: rgba(0,0,0,.1); content:"Q"; font-weight: 500; font-size: calc(var(--vw)*32); width: calc(var(--vw)*80);  height: calc(var(--vw)*80); margin-right: 1em; line-height:1; aspect-ratio:1/1;}
.faqGroup .faqList .cell .acell { margin-top: var(--s16); display: flex; justify-content: flex-start; align-items: flex-start;}
.faqGroup .faqList .cell .acell:before {display: flex; justify-content: center; align-items: center; border-radius: 50%; background: rgba(0,0,0,.1); content:"A"; font-weight: 500; font-size: calc(var(--vw)*32); color: var(--yellow); width: calc(var(--vw)*80);  height: calc(var(--vw)*80); margin-right: 1em; line-height:1; aspect-ratio:1/1;}
.faqGroup .faqList .cell .qcell p{width: 100%; font-weight: normal;line-height:1.8;font-size:calc(var(--vw) * 36); font-weight: 400;}
.faqGroup .faqList .cell .acell p{width: 100%; font-weight: normal;line-height:1.8; color: var(--fc2);}












/* contact Modal */
.contactModal{position:fixed;top:0;left:0;z-index:200;width:100%;height:100vh;background:rgba(0,0,0,.6);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .45s ease,visibility .45s ease;overflow:scroll; display: flex; justify-content: center;align-items: flex-start; }
body.isContactOpen .contactModal{opacity:1;visibility:visible;pointer-events:auto;}
body.isContactOpen{overflow:hidden;}
.contactModal .inner{position: relative;display:flex;justify-content:flex-start; flex-direction: column; width:100%; background: linear-gradient(#193b39 0%, #1c403e 52.71%, #152726 100%); overflow: hidden; padding: var(--s128) var(--s32);}
.contactModal .inner a.closebtn {position: absolute;z-index: 2; top: 1em; right: 1em; width: 5vw; height: 5vw;}
.contactModal .inner a.closebtn svg {width: 100%; height: 100%; object-fit: contain;}

.contactModal .leftCell{width:100%; margin-bottom:var(--s128) ;}
.contactModal .leftCell .eyebrush{margin:var(--s32) 0 var(--s32);line-height:1;letter-spacing:.04em;color:var(--fc2);}
.contactModal .leftCell h1{margin-bottom:var(--s64);font-size:calc(var(--vw) * 40);font-weight:400;line-height:1.3;letter-spacing:.06em;}
.contactModal .leftCell h1 br {display: none;}
.contactModal .leftCell h1:after {display: block; width: 100%; content:""; height: 3px; background: linear-gradient(to right,rgba(255,255,255,1) 20%, rgba(255,255,255,.2) 20%); margin: var(--s32) 0}
.contactModal .leftCell p{line-height:1.6;color:var(--fc2);}
.contactModal .leftCell p br {display: none;}
.contactModal .rightCell{width:100%;}
.contactModal .rightCell form{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;width:100%;margin:var(--s32) 0 0;}
.contactModal .rightCell .formCell{width:100%; margin-bottom:var(--s64);}
.contactModal .rightCell .formCell label{display:flex;justify-content:flex-start;align-items:center; margin-bottom:var(--s16);line-height:1;letter-spacing:.04em; }
.contactModal .rightCell .formCell label span{display:inline-flex;justify-content:center;align-items:center;padding:calc(var(--vw) * 4) calc(var(--vw) * 10);line-height:1;color:#152726;border: solid 1px var(--fc2);color: var(--fc2); border-radius: 3px; margin-left: 1em;font-size:calc(var(--vw) * 20);}
.contactModal .rightCell input,.contactModal .rightCell select,.contactModal .rightCell textarea{width:100%;border:none;border-radius:0;padding:var(--s16);color:rgba(255,255,255,.4);outline:none; background: rgba(10,33,35,.54);}
.contactModal .rightCell select{appearance:none;}
.contactModal .rightCell textarea{height:calc(var(--vw) * 180);resize:vertical;}
.contactModal .rightCell input::placeholder,.contactModal .rightCell textarea::placeholder{color:rgba(255,255,255,.45);}
.contactModal .rightCell .ppBox{display:flex;justify-content:center;align-items:center;width:100%;gap:var(--s16);}
.contactModal .rightCell .ppBox input{width:calc(var(--vw) * 40);height:calc(var(--vw) * 40);accent-color:var(--fc2);}
.contactModal .rightCell .ppBox label{color:var(--fc2);font-size:calc(var(--vw) * 30);}
.contactModal .rightCell .submitBtn{ margin: var(--s64) auto;}
.contactModal .rightCell .submitBtn button{display:flex;justify-content:space-between;align-items:center;width:70vw;padding:var(--s32);border:none;background: linear-gradient(#1b5854 0%, #152827 100%);color:var(--white);cursor:pointer;border: 1px solid #070707; border-radius: .3em;filter: drop-shadow(0px 3px 6px rgba(0, 0, 0, 0.16));}
.contactModal .rightCell .submitBtn button span:first-child{ flex:1;letter-spacing:.04em; text-align: center;}
.contactModal .rightCell .submitBtn button span:last-child{display:block;width:calc(var(--vw) * 30);height:calc(var(--vw) * 30);}
.contactModal .rightCell .submitBtn button span:last-child svg{display:block;width:100%;height:100%;}

.hpField{
	position:absolute;
	left:-9999px;
}

/* article archive */
.archiveTitle{ display: flex; justify-content: flex-start; align-items: flex-start; flex-direction: column; width: 100%; margin-bottom: var(--s128);}
.archiveTitle h1.pagettl{ width: calc(var(--vw) * 1017); margin-bottom: 0;}
.archiveTitle h1 span {display: block; font-size: calc(var(--vw) * 24); margin-top: calc(var(--vw) * 48); color: #fff;}
.archiveTitle .categoryList{ width: 100%; display: flex; flex-direction: column; opacity: 0; filter: blur(10px); transition: all 1s; margin-top: var(--s128);}
.archiveTitle .categoryList.clear {opacity: 1; filter: blur(0);}
.archiveTitle .categoryList ul{order:2;list-style-type: none;}
.archiveTitle .categoryList ul li{display: block; margin-bottom: var(--s16);}
.archiveTitle .categoryList a{display: flex; justify-content: flex-start; align-items: center;}
.archiveTitle .categoryList a span{display: block; margin-left: 1em; color: #fff;}
.archiveTitle .categoryList > a{ order:1; margin-bottom: var(--s16);}
.archiveTitle .categoryList > a span{}

.articleList{ opacity: 0; filter: blur(10px); transition: all 1s;}
.articleList.clear {opacity: 1; filter: blur(0);}
.articleList .alHeader{ display: none;}

.articleLink { display: flex; justify-content: flex-start; align-items: center; flex-wrap: wrap; width: 100%; padding:calc(var(--vw) * 64) 0; box-sizing: border-box; border-top: solid 1px rgba(255,255,255,.1);}
.articleLink:nth-last-of-type(1){border-bottom: solid 1px rgba(255,255,255,.1);}
.articleLink div.no{order:3;width: 15%; font-weight: 500;}
.articleLink div.ttlMain{order:4;width: 85%; box-sizing: border-box; margin-top: calc(var(--vw) * 36);}
.articleLink div.ttlMain h2 { letter-spacing: .06em; font-weight: 400; line-height: 1.6; box-sizing: border-box;font-size: calc(var(--vw) * 36);}
.articleLink div.ttlMain .tags {display: flex; justify-content: flex-start; flex-wrap: wrap; gap:5px; margin-top: calc(var(--vw) * 16);}
.articleLink div.ttlMain .tags a {display: block; width: fit-content; border-radius: 6px; background: rgba(255,255,255,.05); padding: 2px 16px; text-align: center; margin: 0 10px 10px 0;}
.articleLink div.cat{order:1;width: 50%; margin-left: 15%; font-size: calc(var(--vw) * 24); color: var(--fc2);}
.articleLink div.date{order:2;width: 35%; font-size: calc(var(--vw) * 24); color: var(--fc2); text-align: right;}
.articleLink div.arrow{display: none;}








/* article single */
.articleSingle{ display: flex; flex-direction: column; opacity: 0; filter: blur(10px); transition: all 1s;}
.articleSingle.clear {opacity: 1; filter: blur(0);}
.articleSingle .pankz {width: 100%; margin-bottom: var(--s32);}
.articleSingle .pankz span,.articleSingle .pankz a {margin-right: 1em;}
.articleSingle .pankz a {text-decoration: underline;}
.articleSingle .articleBody{width: 100%; background: #E8ECEC; padding: var(--s64) 0 var(--s128); box-sizing: border-box; color: #1A1A1A;}
.articleSingle .articleBody h3 {margin: var(--s64) 0 var(--s32);font-size: calc(var(--vw)*40);font-weight: 600;line-height: 1.4;}
.articleSingle .articleBody h4 {margin: var(--s64) 0 var(--s32);font-size: calc(var(--vw)*38);font-weight: 600;line-height: 1.4;}
.articleSingle .articleBody h5 {margin: var(--s64) 0 var(--s32);font-size: calc(var(--vw)*36);font-weight: 600;line-height: 1.4;}
.articleSingle .articleBody p {margin-bottom: 16px; line-height: 1.7;}
.articleSingle .articleBody p:last-child {margin-bottom: 0!important;}
.articleSingle .articleBody hr {margin: var(--s128) 0 var(--s32);}
.articleSingle .articleBody img {display: block; max-width: 100%; margin-bottom: var(--s32);}


.articleSingle .articleBody .articleHeaderBox{ margin-right: var(--s64); margin-left: var(--s64); box-sizing: border-box;}
.articleSingle .articleBody .articleHeaderBox .top{width: 100%; display: flex; justify-content: space-between; align-items: center; margin-bottom: var(--s32);}
.articleSingle .articleBody .articleHeaderBox .top .cat{text-align: left; margin-bottom: 0;}
.articleSingle .articleBody .articleHeaderBox .top .date{text-align: right;}
.articleSingle .articleBody .articleHeaderBox h1{font-size: calc(var(--vw)*46); line-height: 1.4; font-weight: 600; margin-bottom: var(--s64);}
.articleSingle .articleBody .articleHeaderBox .tags{display: flex; justify-content: flex-start; flex-wrap: wrap; gap:5px; margin-bottom: var(--s64);}
.articleSingle .articleBody .articleHeaderBox .tags a{display: block; width: fit-content; border-radius: 6px; border: solid 1px rgba(0,0,0,.25); padding: 2px 16px; text-align: center; margin: 0 10px 10px 0;}
.articleSingle .articleBody .articleHeaderBox .summary{ background: rgba(255,255,255,.3); border-left: solid 8px #4B7A7C; padding: var(--s32);}
.articleSingle .articleBody .articleHeaderBox .summary .summaryTxtBox{}

.articleMainCont{	counter-reset: insight-section;}
.articleMainCont h2{counter-increment: insight-section;	position: relative;	margin-top: var(--s128);margin-bottom: var(--s64);font-size: calc(var(--vw)*46);font-weight: 600;line-height: 1.4;padding-left: calc(var(--vw) * 110);}
.articleMainCont h2::before{content: counter(insight-section, decimal-leading-zero);position: absolute;left: 0;top: 50%;transform: translateY(-50%);font-size: calc(var(--vw)*60);font-weight: normal;color: #4B7A7C;line-height: 1;}
.articleMainCont h2::after{content:"";position:absolute;left:calc(var(--vw) * -64);top:50%;width:calc(var(--vw) * 52);height:1px;background:#333;opacity:.4;}

/* authorBox */
.authorBox {padding: var(--s128) var(--s64) 0; box-sizing: border-box;}
.authorBox h2 {padding-bottom: var(--s32);margin-bottom: var(--s32);border-bottom: solid 1px var(--fc2);}
.authorBox .authorName {width: 100%; display: flex; justify-content: space-between; align-items: center;margin-bottom: var(--s64);padding-bottom: var(--s32);border-bottom: solid 1px var(--fc2);}
.authorBox .authorName h3 {flex:1; color: var(--green); margin: 0; padding: 0;}
.authorBox .authorName h3 span {padding-left: .5em; font-size: var(--base);}
.authorBox .authorName a {display: block; width: auto; height: 100%;}
.authorBox .authorName a svg {display: block; width: var(--s32); height: auto; fill:var(--green2);}
.authorBox .authorProfile {}
.authorBox .authorProfile p {position: relative; padding-left: 2em; margin-bottom: 1.8em; line-height: 1.3;}
.authorBox .authorProfile p:before {content:""; display: block; position: absolute; top: .6em; left: 0; width: 1em; height: 3px; background: var(--fc2);}


.articleSingle .articleBody .articleMainCont.news { margin-right: var(--s64); margin-left: var(--s64); box-sizing: border-box;}

.articleSingle .articleBody .articleMainCont .articleSection p{ margin: 0 var(--s64) var(--s32) calc(var(--vw)*168) ; color: #4B7A7C;}
.articleSingle .articleBody .articleMainCont .articleSection ul{ margin: 0 var(--s64) var(--s32) calc(var(--vw)*168) ; color: #4B7A7C;}
.articleSingle .articleBody .articleMainCont .articleSection ul li{}

.articleSingle .side{width: 100%; margin-top: var(--s128);}
.articleSingle .side .sideBox{ margin-bottom: var(--s128);}
.articleSingle .side .sideBox h2{font-size: calc(var(--vw) * 46); font-weight: 500; margin-bottom: var(--s32);}
.articleSingle .side .sideBox ul{}
.articleSingle .side .sideBox ul li{display: block; margin-bottom: var(--s16);}
.articleSingle .side .sideBox ul li a{}
.articleSingle .side .sideBox ul li a span{}
.articleSingle .side .indexList {display: none;}
.articleSingle .side .catList{}
.articleSingle .side .catList a{display: flex; justify-content: flex-start; align-items: center;}
.articleSingle .side .catList a span{display: block; margin-left: 10px; color: var(--fc2);}
.articleSingle .side .tagList{}
.articleSingle .side .tagList ul{ display: flex; flex-wrap: wrap; gap: 10px;}
.articleSingle .side .tagList ul li{}
.articleSingle .side .tagList ul li a{text-decoration: underline;}


/* insights single */
.articleSingle.insights { }
.articleSingle .spTocList {margin-bottom: var(--s128);}
.articleSingle .spTocList .toc-h2 {margin-top: calc(var(--vw)*32);}
.articleSingle .spTocList .toc-h3{	padding-left: calc(var(--vw)*32);	margin-top: calc(var(--vw)*32);	font-size: var(--base);}




/* top */
body.home{overflow:hidden;}
body.home footer{position:fixed;left:0;bottom:0;z-index:70;width:100%; background: none; color:}
body.home footer .inner {padding: 0; color:var(--white);display: none!important;}
body.home footer .cp {background: none;}


.dotnavi {position: fixed; top: 0; bottom: 0; margin: auto; z-index: 20; width: 2px; height: fit-content; left: calc(var(--vw)*50); opacity: 1; transition: all 1s;}
.dotnavi.on {opacity: 1; transition: all 1s;}
.dotnavi p { display: block; width: 2px; height: 1px; overflow: hidden; margin-bottom: 30px; background:#fff; transition: all 1s;}
.dotnavi p.current {background:#fff; transition: all 1s; height: 170px;}

.topMain{position:relative;width:100%;height:100vh;margin:0;overflow:hidden;}
.topMain .topMessage{position:absolute;top:0;left:0;width:100%;height:100vh;display:flex;justify-content:flex-start;align-items:center;padding:0 calc(var(--vw) * 126);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(calc(var(--vw) * 40));transition:opacity .8s ease,visibility .8s ease,transform .8s cubic-bezier(.77,0,.175,1);}
.topMain .topMessage.isActive{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0);}
.topMain .topMessage .inner{width:calc(var(--vw) * 1300);}
.topMain .topMessage .eyebrush{margin-bottom:var(--s32);font-size:calc(var(--vw) * 44);line-height:1;letter-spacing:.04em;color:var(--fc2);}
.topMain .topMessage h1{margin-bottom:var(--s64);font-size:calc(var(--vw) * 128);font-weight:400;line-height:1.05;letter-spacing:.03em;}
.topMain .topMessage h2{margin-bottom:var(--s64);font-size:calc(var(--vw) * 70);font-weight:400;line-height:1.6;letter-spacing:.06em;}
.topMain .topMessage .lead{margin-bottom:var(--s64);font-size:calc(var(--vw) * 36);font-weight:400;line-height:2.1;letter-spacing:.05em;color:var(--fc2);}
.topMain .topMessage .lead br {display: none;}
.topMain .topMessage .viewMore{display:flex;justify-content:flex-start;align-items:center;gap:calc(var(--vw) * 18);width:fit-content;font-size:calc(var(--vw) * 36);line-height:1;letter-spacing:.04em;}
.topMain .topMessage .viewMore span:last-child{display:block;width:calc(var(--vw) * 32);height:calc(var(--vw) * 32);}
.topMain .topMessage .viewMore span:last-child svg{display:block;width:100%;height:100%;}





/* three.js */
.threeBg{position:fixed;top:0;left:0;z-index:1;width:100%;height:100%;pointer-events:none; overflow: hidden;}
.threeBg canvas{display:block;width:100%;height:100%;}


/* loading */
.loading { position: fixed; inset: 0; z-index: 9999; background:#D3D3D3; display: flex; align-items: center; justify-content: center;width: 100%; height: 100%;padding: 0 30vw;box-sizing: border-box;overflow: hidden; opacity: 1; visibility: visible; transition: opacity .8s ease, visibility .8s ease;}
.loading.is-hide { opacity: 0; visibility: hidden; pointer-events: none;}
.loading__inner { opacity: 1;}
.loading__inner svg{ display: block; width: 100%; height: 100%; object-fit: contain;}
body.is-ready .loading { opacity: 0; visibility: hidden; pointer-events: none;}
body.is-loading-check .loading { display: none;}
body.is-loading .loading { display: flex;}
.scrollGuide{	display:none;}
