@charset "UTF-8";

html{scroll-behavior:smooth;scroll-padding-top:80px;}
.pagelink-list{display:flex;margin-bottom:80px;width: 96%;margin: 2% auto;max-width: 1000px;}
.pagelink-list li{width:calc(100%/5);text-align:center;position:relative;font-size:14px;border-left:1px solid #1f1f1f;}
.pagelink-list li:last-child{border-right:1px solid #1f1f1f;}
.pagelink-list li a{color:#1f1f1f;display:block;}
.pagelink-list li::after{content:"";width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-top:7px solid #1f1f1f;position:absolute;margin:0 auto;bottom:-10px;left:0;right:0;}
.section-title{display:flex;align-items:center;justify-content:center;gap:20px;text-align:center;}
.section-title.is-active{opacity:1;transform:translateX(0);}
.section-title::before{content:"";display:block;width:120px;height:1px;background:#1f1f1f;width:60px;}
.section-title .en{font-size:40px;font-weight:500;margin-right:5px;line-height:1;}
.section-title .ja{font-size:14px;line-height:1;}
.pagelink-list br.sp{display: none;}


@media screen and (max-width:767px){
.pagelink-list li::after{bottom: -10px;}
.pagelink-list{display:flex;justify-content:center;flex-wrap:nowrap;margin:2% auto 30px;width:96%;max-width:1000px;}
.pagelink-list li{flex:1;text-align:center;position:relative;font-size:14px;border-left:1px solid #1f1f1f;}
.pagelink-list br.sp{display: inline;}
}


@media screen and (max-width:500px){
.pagelink-list li{font-size: 10px;}}


#philosophy{margin-bottom:clamp(60px,8vw,120px);overflow:hidden;max-width: 1200px;margin: 2% auto;margin-top: 40px;}
#philosophy .vision-item{display:flex;align-items:center;gap:clamp(20px,5vw,60px);}
#philosophy .vision-item .text-area{flex:0 0 60%;box-sizing:border-box;background:#fafafa;padding:clamp(20px,4vw,60px);margin:clamp(20px,4vw,60px) 0;}
#philosophy .vision-item .text-area .catchphrase{font-size:clamp(24px,3.2vw,45px);font-weight:700;line-height:1.6;letter-spacing:.05em;margin-bottom:clamp(12px,2vw,20px);}
#philosophy .vision-item .text-area .description{font-size:clamp(14px,1.4vw,18px);line-height:1.8;}
#philosophy .vision-item .img{flex:1;min-width:0;}
#philosophy .vision-item .img img{width:100%;height:auto;display:block;}
#philosophy .vision-item.is-reverse{flex-direction:row-reverse;}

@media screen and (max-width:767px){
#philosophy{margin-bottom:60px;margin-top: 0;}
#philosophy .vision-item{flex-direction:column;}
#philosophy .vision-item .img{display:none;}
#philosophy .vision-item .text-area{flex:0 0 100%;max-width:100%;width:100%;margin:0;padding:20px;}
#philosophy .vision-item .text-area .catchphrase{font-size:16px;margin-bottom:12px;white-space: nowrap;}
#philosophy .vision-item .text-area .description{font-size:14px;}
.catchphrase br{display:none;}
.section-title .en {font-size: 24px;}
.section-title .ja {font-size: 12px;}
.section-title{justify-content: flex-start;}}


/*行動指針*/
.corevalue{position:relative;margin:0 auto ;width: 90%;max-width: 1200px;}
.corevalue .description{font-size:18px;font-weight:500;padding:0 100px;margin-bottom:30px;text-align: center;}
.value-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:40px;margin-top:60px;}
.value-grid .value-card:nth-child(1),.value-grid .value-card:nth-child(2){grid-column:span 3;}
.value-grid .value-card:nth-child(3),.value-grid .value-card:nth-child(4),.value-grid .value-card:nth-child(5){grid-column:span 2;}
.value-card{position:relative;border:1px solid #ddd;padding:40px 30px;background:#fff;}
.value-card .num{position:absolute;top:-32px;left:5px;font-size:42px;font-weight:700;}
.value-card h4{text-align:center;margin-bottom:12px;}
.value-card hr{border:none;border-top:1px solid #777;margin:12px 0 20px;}
.value-card p{line-height:1.8;}
.corevalue br.sp{display:none;}

@media screen and (max-width:900px){
.value-grid{grid-template-columns:1fr;gap:24px;margin-top:40px;width:90%;margin-left:auto;margin-right:auto;justify-items:center;}
.value-grid .value-card{grid-column:span 1 !important;}
.value-card{padding:24px 20px;}
.value-card .num{top:-20px;font-size:28px;}
.value-card h4{font-size:18px;margin-bottom:10px;}
.value-card p{font-size:14px;line-height:1.7;}
.corevalue .description{font-size:14px;font-weight:500;padding:0 ;margin-bottom:30px;text-align: center;width: 80%;margin: 0 auto;margin-top: 20px;}
.corevalue{padding-top: 0;width: 100%;}
.corevalue br.sp{display:inline;}
}


#message{margin-bottom:120px;}
.message-inner{max-width: 1200px;margin: 10% auto;width: 80%;}
.message-image{margin-top:70px;}
.message-image img{width:100%;height:auto;display:block;border-radius:4px;}
.message-content .en{font-size:42px;font-weight:700;margin-bottom:8px;}
.message-content .ja{display:inline-block;background:linear-gradient(135deg,#4f7cff,#4840a3);color:#fff;font-size:14px;padding:6px 12px;margin-bottom:24px;letter-spacing:.1em;}
.message-text{margin-right: 5%;}
.message-text p{font-size:15px;line-height:1.9;margin-bottom:20px;}
.message-sign{text-align:right;margin-top:40px;font-weight:500;}

@media screen and (max-width:1000px){
#message{margin-bottom:60px;}
.message-inner{grid-template-columns:1fr;gap:40px;width: 80%;margin: 2% auto;}
.message-image{display: none;}
.message-content .en{font-size:26px;}
.message-content .ja{font-size:12px;margin-bottom:16px;}
.message-text{margin-right: 0 ;}
.message-text p{font-size:14px;line-height:1.8;margin-bottom:16px;}
.message-sign{text-align:right;margin-top:24px;}
}

#overview{margin-bottom:120px;width: 90%;max-width: 1200px;margin: 0 auto;}
#overview .section-title .ja{display:inline-block;color:#fff;font-size:14px;font-weight:400;padding:8px 15px;margin-bottom:0;letter-spacing:.1em;white-space: nowrap;}
#overview .overview-list{display:flex;flex-wrap:wrap;}
#overview .overview-list dt{width:200px;border-top:1px solid #1f1f1f;font-size:15px;padding:40px 0;}
#overview .overview-list dt:last-of-type{border-bottom:1px solid #1f1f1f;}
#overview .overview-list dd{width:calc(100% - 200px);border-top:1px solid #ccc;font-size:15px;padding:40px;line-height:1.8;}
#overview .overview-list dd:last-of-type{border-bottom:1px solid #ccc;}
.section-divider{position:relative;height:350px;display:flex;justify-content:center;overflow:hidden;}
.company-place{margin-bottom: 10px;}
#overview .overview-list br.sp{display: none;}

@media screen and (max-width:767px){
#overview{margin-bottom:60px;}
#overview .overview-list{display:block;}
#overview .overview-list dt{width:100%;padding:20px 0;border-top:1px solid #1f1f1f;font-size:14px;}
#overview .overview-list dt:last-of-type{border-bottom:none;}
#overview .overview-list dd{width:100%;padding:20px 0;border-top:1px solid #ccc;font-size:14px;}
#overview .overview-list dd:last-of-type{border-bottom:1px solid #ccc;}
.section-divider{height:120px;}
.divider-line{height:120px;}
}
@media screen and (max-width:465px){
#overview .overview-list{white-space:normal;}
#overview .overview-list br.sp{display: block;}}



.section-title{padding:16px 20px;color:#fff;font-size:26px;background:linear-gradient(to right,#2c6bed,#7a6ce8);margin-bottom:50px;margin-top: 0;}
#group{width: 80%;margin: 2% auto; max-width: 1200px;margin-top: 100px;}
#group .section-title{display: flex;flex-direction: column;}
#group .section-title::before{display: none;}
.card-a{background:#ffffff;color:#1f1d1d;padding:40px 70px;display:flex;flex-direction:column;align-items:center;gap:30px;position:relative;text-align:center;border: solid 1px #1f1d1d;}
.card-a .description{order:2;max-width:800px;text-align: left;}
.card-a{display:flex;flex-direction:column;gap:30px;margin-bottom: 40px;}
.card-a .img{flex:0 0 160px;margin-bottom: 8px;}
.card-a .img img{width:100%;max-width:160px;height:auto;}
.card-a .group-name{margin:0;font-size:20px;font-weight:600;}
.card-a .group-desc{line-height:1.8;text-align: left;border-bottom: solid 1px #1f1e1e;padding-bottom: 12px;}
.group-contact{display:flex;gap:24px;flex-wrap:nowrap;}
.group-contact .item{display:flex;gap:6px;white-space:nowrap;}
.card-a .group-contact dt{margin-right:6px;}
.card-a .group-contact dd{margin-right:24px;font-weight: 700;}
.card-a .group-contact dt, .card-a .group-contact dd{white-space:nowrap;}
.card-b{background:#515151;color:#fff;padding:80px 70px 80px;display:flex;flex-direction:column;align-items:center;gap:30px;position:relative;text-align:center;}
.card-b .img{order:1;margin-bottom: 20px;border-bottom: solid 1px #fff;padding-bottom: 26px;}
.card-b .img img{width:100%;max-width:180px;height:auto;}
.card-b .description{order:2;max-width:800px;text-align: left;margin-bottom: 30px;line-height: 1.8;}
.card-b .btn{order:3;position:static;}
.card-b .btn a::after{content:none;}
.card-b .btn{width:auto;max-width:none;background:none;padding:0;z-index:auto;}
.card-b .btn a{background:#fff;color:#161515;border-radius:999px;padding:0 28px;height:44px;min-width:180px;display:inline-flex;align-items:center;justify-content:center;transition:none;}
.card-b .btn:hover{transform:none;filter:none;}
.card-b .btn::after{content:none;}
.card-b .btn a::after{content:none;}

@media (max-width:767px){
#group{width:92%;margin:20px auto;}
.section-title{margin-bottom: 0;}
.card-a{padding:24px 18px;gap:20px;margin-top: 12px;}
.card-a .img{flex:0 0 auto;margin-bottom:6px;}
.card-a .img img{max-width:120px;}
.card-a .group-name{font-size:18px;}
.card-a .group-desc{font-size:14px;padding-bottom:10px;}
.card-a .description{max-width:100%;font-size:14px;}

.card-b{padding:40px 18px;gap:20px;}
.card-b .img{margin-bottom:10px;padding-bottom:14px;}
.card-b .img img{max-width:140px;}
.card-b .description{max-width:100%;font-size:14px;margin-bottom:16px;}
.card-b .btn a{min-width:140px;height:40px;font-size:14px;}
}

@media (max-width:620px){
.card-a .group-contact{grid-template-columns:1fr;}
.card-a .group-contact{grid-template-columns:1fr;justify-items:start;}
}

@media screen and (max-width:400px)
{.card-a .group-contact{display:grid;grid-template-columns:1fr;justify-items:start;gap: 0;}}

#map{width: 90%;max-width: 1200px;margin: 80px auto 60px;}
.office-block{margin-bottom:clamp(60px,6vw,100px);width: 100%;}
.office-layout{background:#f7f9fc;display:grid;grid-template-columns:minmax(280px,420px) 1fr;gap:clamp(24px,5vw,60px);align-items:start;margin-bottom:clamp(40px,6vw,80px);padding:clamp(24px,4vw,40px) clamp(20px,5vw,48px);}
.office-text{display:flex;flex-direction:column;gap:clamp(20px,4vw,32px);}
.office-group-title{font-size:clamp(16px,2vw,18px);font-weight:600;text-align:left;}
.office-item{font-size:clamp(13px,1.6vw,14px);line-height:1.8;}
.office-item h4{display:flex;align-items:center;gap:8px;font-size:clamp(14px,1.8vw,15px);font-weight:600;margin-bottom:6px;}
.map-area{width:100%;aspect-ratio:4/3;overflow:hidden;}
.map-area iframe{width:100% !important;height:100% !important;display:block;border:0;}

@media(max-width:900px){
.office-layout{grid-template-columns:1fr;}
.map-area{aspect-ratio:auto;height:220px;}}

.section-title .en{margin-bottom: 0;}
.section-title::before{background: #fff;}
.section-title .ja{background: none;}