@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=PT+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap');
a{
cursor: pointer;
}
.eng{
font-family: "futura-pt", sans-serif;
}
body{
font-family: "Zen Kaku Gothic New", sans-serif;
margin: 0;
overflow-x: clip;
color: #333333;
background-color: #FFFFFF;
font-weight: 500;
}
.cta-recruit .scroll-text{
display: none !important;
}
section {
position: relative;
overflow-x: clip;
}
html{
font-family: "Zen Kaku Gothic New", sans-serif;
}
.w-1280{
width: 100%;
margin: auto;
max-width: 1200px;
}
.w-1100{
width: 100%;
margin: auto;
max-width: 1100px;
}
.w-860{
width: 100%;
margin: auto;
max-width: 860px;
}
header.section-header {
position: fixed;
width: calc(100% - 40px);
left: 0;
z-index: 99999;
top: 0;
margin-left: 20px;
margin-right: 20px;
margin-top: 40px;
}

.section-header_inner {
display: flex;
justify-content: space-between    ;
padding: 14px 40px;
align-items: center;
background: #fff;
border-radius: 10px;
}
.section-header__logo a{
display: block;
}
.section-header__logo{
width: 110px;
}
.section-header__logo img{
width: 100%;
height: 100%;
object-fit: contain;
object-position: top center;
}

.sub-ttl::before{
width: 16px;
height: 16px;
content: "";
background-color: #EEC1EB;
border: 5px solid #FBEFFA;
border-radius: 100000px;
display: block;
}

.sub-ttl {
font-size: 18px;
display: flex;
gap: 10px;
text-align: center;
color: #3C3E77;
position: relative;
align-items: center;
justify-content: center;
margin-bottom: 15px;
}
.main-ttl{
font-size: 32px;
color: #3C3E77;
font-weight: 700;
text-align: center;
margin-bottom: 24px;
}

.section-top__intro__inner p{
line-height: 2;
font-size: 16px;
text-align: center;
}
section.section-top__separate {
height: 40vw;
max-height: 400px;
}
.section-top__separate__inner{
height: 100%;
}
section.section-top__separate img{
height: 100%;
width: 100%;
object-fit: cover;
object-position: center;
}
.section-fv__inner .text-box {
    margin-top: 10px;
    background: #3c3e77d1;
    padding: 20px;
    border-radius: 10px;
    width: max-content;
    max-width: calc(100% - 40px);
}
.section-fv__inner .text-box p{
line-height: 1.6;
font-size: 16px;
color: #fff;
filter: drop-shadow(0px 0px 10px #000000);
}
nav.section-header__navi a.eng {
background: #3C3E77;
color: #fff;
padding: 10px 56px;
margin-left: 40px;
border-radius: 10px;
font-size: 14px;
font-weight: 700;
transition: .25s;
}

nav.section-header__navi a.eng:hover{
    transition: .25s;
    background: #1a1a1a;
color: #fff;
}
.section-page-header{
padding-top: 210px;
padding-bottom: 120px;
}
.feature-section__inner__attencion{
line-height: 2;
}
.section-page-header{
    background-size: cover;
    background-position: center;

}
.section-page-header.real{
background-image: url('../images/works/header-01.png');
}
.section-page-header.guidance{
background-image: url('../images/works/header-02.png');
}
.section-page-header.lecture{
background-image: url('../images/works/header-03.png');
}
.section-page-header.sponsor{
background-image: url('../images/works/header-04.png');
}
.section-page-header.news{
background-image: url('../images/works/header-05.png');
}
.section-page-header.contact{
background-image: url('../images/works/header-06.png');
}
.section-page-header.company{
background-image: url('../images/works/header-07.png');
}
/* 基本レイアウト */
.contact-form {
max-width: 900px;
width: 100%;
margin: 0 auto;
padding: 20px;
box-sizing: border-box;
font-family: sans-serif;
font-size: 18px;
color: #333;
}

/* テーブルレイアウト */
.form-wrap {
width: 100%;
border-collapse: collapse;
}

.form-content {
vertical-align: top;
padding: 12px 0;
}

/* ラベル部分 */
.form-content__ttl {
width: 240px;
padding: 16px 10px 16px 0;
text-align: right;
font-size: 18px;
font-weight: 500;
}

/* バッジ */
.req,
.opt {
display: inline-block;
font-size: 14px;
border-radius: 12px;
margin-left: 8px;
vertical-align: middle;
}

.req {
background-color: #EEC1EB;
padding: 2px 10px;
color: #434343;
}

.opt {
color: #999999;
padding: 0px 10px;
}

/* 入力欄 */
.form-content__input {
padding: 12px 0;
}

.form-content__input input[type="text"],
.form-content__input input[type="email"],
.form-content__input input[type="tel"],
.form-content__input textarea {
width: 100%;
padding: 12px;
font-size: 18px;
background: #F9F8FD;
border-radius: 6px;
box-sizing: border-box;
}
.form-privacy {
margin-top: 32px;
font-size: 16px;
text-align: center;
}
.form-content__input textarea {
min-height: 120px;
resize: vertical;
}
.wpcf7-spinner{
display: none !important;
}
/* 電話番号・メールの注記 */
.note {
font-size: 14px;
color: #666;
margin-top: 4px;
display: inline-block;
}

/* プライバシー同意 */
.form-privacy {
margin-top: 32px;
font-size: 16px;
}

.form-privacy label {
display: inline-block;
margin-top: 8px;
}

/* 送信ボタン */
.submit-wrap {
text-align: center;
margin-top: 30px;
}

.submit-wrap input[type="submit"] {
background-color: #3C3E77;
color: #fff;
font-size: 18px;
padding: 18px 40px;
max-width: 300px;
width: 100%;
border: none;
border-radius: 28px;
cursor: pointer;
transition: background 0.3s;
}
section.form-section{
margin-bottom: 120px;
}
td.form-content__input.tel-box {
display: flex;
gap: 24px;
align-items: center;
}
.submit-wrap input[type="submit"]:hover {
background-color: #3C3E77;
}

/* レスポンシブ対応 */
@media screen and (max-width: 600px) {
.form-content__ttl {
display: block;
width: 100%;
padding-bottom: 8px;
}

.form-content__input {
display: block;
width: 100%;
}

.form-wrap {
display: block;
}

.form-content {
display: block;
}

.form-privacy,
.submit-wrap {
padding: 0 10px;
}
}

.sponsor-merit-taxt{
line-height: 2;
margin-bottom: 48px;
}
.about-section__inner {
padding-top: 120px;
padding-bottom: 120px;
}
.about-section__flex {
display: flex;
justify-content: space-between;
gap: 24px;
}
.about-section__flex b{
font-size: 18px;
color: #3C3E77;
}
.about-section__flex img {
width: 50%;
height: 300px;
object-fit: cover;
object-position: center;
border-radius: 10px;
}
.about-section__inner__text-box {
width: 50%;
}
.about-section__inner__text-box p{
line-height: 1.8;
}

section.about-section .main-ttl{
text-align: left;
}

section.about-section .sub-ttl{
justify-content: flex-start;
}

.feature-section__inner__ttl h3.sub-ttl{
justify-content: flex-start;
}

.feature-section__inner__ttl h2.main-ttl{
text-align: left;
margin-bottom: 40px;
}

section.about-section .btn{
margin: auto;
margin-top: 40px;
}

section.feature-section{
background-color: #F9F8FD;
padding-top: 120px;
padding-bottom: 120px;
margin-bottom: 120px;
}

.feature__list{
display: flex;
flex-wrap: wrap;
gap: 72px;
}

.feature__list li{
display: flex;
justify-content: space-between;
gap: 24px;
width: 100%;
padding-bottom: 72px;
border-bottom: 1px solid #CCCCCC;
}
.feature__list li img{
width: 50%;
height: 100%;
object-fit: cover;
object-position: center;
background-color: #000;
}

.feature__list li:nth-of-type(2n) img{
order: 10000;
}
.feature__text-box{
width:50%;
}
.feature__text-box h3{
justify-content: flex-start;
font-size: 18px;

}
.feature__text-box p{
line-height: 2;
}
.feature__text-box h2{
text-align: left;
font-size: 32px;
line-height: 1.5;
margin-bottom: 24px;
}
.section-page-header h3,
.section-page-header h2{
color: #fff !important;
}
.footer-logo {
    width: 300px;
}

.footer-logo a{
    width: 110px;
    margin-bottom: 24px;
    display: block;
}

.footer-info {
    display: flex;
    justify-content: space-between;
}

.footer-info ul.right{
display: flex;
}
.footer-info ul.right li{
margin-left: 20px;
font-weight: 500;
font-size: 14px;
}
.footer-info ul.right .footer-service li{
    margin-left: 0;
    margin-top: 14px;
    color: #A7A7A7;
}
.section-top__recruit .scroll-text li {
margin-right: 20px;
}
.footer__inner.w-1100 {
    padding-top: 80px;
    padding-bottom: 110px;
}
p.copy-right {
margin-top: 40px;
text-align: center;
font-size: 12px;
}
.footer-logo > a {
width: 180px;
height: auto;
}
.footer-logo > a img{
width: 100%;
height: auto;
object-fit: contain;
}

.footer-logo p{
    line-height: 1.8;
}

.footer-privacy{
    width: max-content;
    margin-right: 0;
    margin-left: auto;
    text-align: right;
    font-size: 14px;
}

.fv-slider {
height: 100%;
}

.fv-slider picture,
.fv-slider picture img {
width: 100%;
height: 100%;
object-fit: cover;

object-position: top center;
}
.fv-slider div {
height: 100%;
}
/* スライド間の隙間を開ける */
.fv-slider .slick-slide {
margin-right: 14px;
border-radius: 20px;
overflow: hidden;
height: 100%;
}


.section-fv{
position: relative;
min-height: 740px;
height: 90vh;
}

.section-fv__inner{
position: absolute;
left: 0;
bottom: 0;
z-index: 2;
padding: 40px;
}
.section-fv__inner h1{
position: relative;
}
.section-fv__inner h1 span.h1-ttl {
font-size: 32px;
display: block;
font-weight: 700;
background-color: #ffffffbb;
padding: 12px 14px;
border-radius: 10px;
color: #3C3E77;
}
.section-fv__inner h1 span.h1-jump{
font-size: 48px;
}
.section-fv__inner h1 span.eng {
font-size: 32px;
position: absolute;
bottom: 0;
right: 0;
font-weight: 700;
}
.section-top__intro__inner {
padding-top: 120px;
padding-bottom: 120px;
}



.top-service__inner{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
align-items: flex-start; /* 追加 */
}

.top-service__images{
width: 50%;
position: sticky;
top: 0;
align-self: flex-start; /* 追加: sticky対象を左列に固定 */
height: 100vh;
overflow: hidden;
align-self: flex-start; /* 追加: sticky対象を左列に固定 */
}

.top-service__images li{
height: 100vh;
position: absolute;
opacity: 0;
transition: .25s;
}

.top-service__images li.is-active{
transition: .25s;
opacity: 1;
}

.top-service__images li::before {
content: "REAL ESTATE";
display: block;
position: absolute;
left: 0;
top: -70px;
font-family: "futura-pt", sans-serif;
font-size: 64px;
font-weight: 700;
color: #ffffff9c;
transform: rotate(90deg);
transform-origin: left bottom;
}

.top-service__images li:nth-of-type(1):before {
content: "REAL ESTATE";
}

.top-service__images li:nth-of-type(2)::before{
content: "GUIDANCE";
}

.top-service__images li:nth-of-type(3)::before{
content: "LECTURE";
}



.top-service__images li:nth-of-type(1):after {
    content: "";
    background-image: url('../images/top/img01.png');
    width: 240px;
    height: 200px;
    position: absolute;
    right: 0;
    bottom: 0;
    background-position: right bottom;
    background-size: contain;
    background-repeat: no-repeat;
    }
    
    .top-service__images li:nth-of-type(2)::after{
        content: "";
        background-image: url('../images/top/img02.png');
        width: 240px;
        height: 200px;
        position: absolute;
        right: 0;
        bottom: 0;
        background-position: right bottom;
        background-size: contain;
        background-repeat: no-repeat;
    }
    
    .top-service__images li:nth-of-type(3)::after{
        content: "";
        background-image: url('../images/top/img03.png');
        width: 240px;
        height: 200px;
        position: absolute;
        right: 0;
        bottom: 0;
        background-position: right bottom;
        background-size: contain;
        background-repeat: no-repeat;
    }
    
section.about-section{
    position: relative;
}

.real section.about-section::before{
background-image: url('../images/works/color-01.png');
width: 468px;
height: 326px;
background-size: contain;
background-position: right bottom;
content: "";
display: block;
position: absolute;
right: 0;
bottom: 0;
z-index: -1;
}

.guidance section.about-section::before{
    width: 468px;
    height: 326px;
    background-size: contain;
    background-position: right bottom;
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
background-image: url('../images/works/color-02.png');
}

.lecture section.about-section::before{
    width: 468px;
    height: 326px;
    background-size: contain;
    background-position: right bottom;
    content: "";
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    z-index: -1;
background-image: url('../images/works/color-03.png');
}

.section-header_inner {
    display: flex;
    justify-content: space-between;
    padding: 14px 40px;
    align-items: center;
    background: #fff;
    border-radius: 10px;
    filter: drop-shadow(0px 0px 6px #00000020);
}

.sinako{
text-align: center;
margin-top: 72px;
text-align: center;
font-size: 32px;
font-weight: 700;
}

.top-service__images img{
width: 100%;
height: 100%;
object-fit: cover;
object-position: center;
}

.top-service__text{
width: 50%;
padding-left: 80px;
padding-right: 80px;
padding-top: 120px;
padding-bottom: 120px;
}


.top-service__inner .sub-ttl {
justify-content: flex-start;
}

.top-service__inner .main-ttl{
text-align: left;
margin-bottom: 80px;
}


.top-service__inner h4::before{
width: 16px;
height: 16px;
content: "";
background-color: #3C3E77;
border: 5px solid #CECFDD;
border-radius: 100000px;
display: block;
}

.top-service__inner h4 {
font-size: 18px;
display: flex;
gap: 10px;
text-align: center;
color: #3C3E77;
position: relative;
align-items: center;
margin-bottom: 15px;
}

nav.section-header__navi > ul {
display: flex;
gap: 24px;
}
nav.section-header__navi > ul li a{
    transition: .25s;

}
nav.section-header__navi > ul li a:hover{
    color: #EEC1EB;
    transition: .25s;
}
.top-service__text ul{
width: 100%;
max-width: 450px;
display: flex;
flex-wrap: wrap;
gap: 72px;
}
.top-service__text ul li h3{
font-size: 28px;
font-weight: 700;
margin-bottom: 32px;
color: #3C3E77;
transition: .25s;
}

section.top-service{
background-color: #F9F8FD;
}
.top-service__text ul li p{
margin-bottom: 32px;
line-height: 2.2;
color: #434343;
transition: .25s;

font-weight: 400;
}
.top-service__text ul li{
padding-bottom: 72px;
border-bottom: 1px solid #CCCCCC;
}
a.btn{
color: #fff;
background-color: #434343;
transition: .25s;
font-size: 14px;
padding: 12px 13px;
max-width: 170px;
border-radius: 10px;
display: block;
width: 100%;
position: relative;
}
a.btn:hover{
    color: #fff;
    background-color: #3C3E77;
}
a.btn img{
width: 24px;
height: 24px;
display: block;
position: absolute;
right: 10px;
top: 50%;
transform: translateY(-50%);
}

.top-suponsor{
padding-top: 120px;
padding-bottom: 120px;
background-image: url(../images/top/suponsor.png);
background-position: center;
background-size: cover;
color: #fff;
}


.top-suponsor p{
font-size: 16px;
line-height: 2;
color: #fff;
}
.top-suponsor .sub-ttl {
display: flex;
gap: 10px;
text-align: center;
color: #fff;
position: relative;
align-items: center;
justify-content: flex-start;
margin-bottom: 15px;
}
.top-suponsor .main-ttl{
color: #fff;
font-weight: 700;
text-align: left;
margin-bottom: 0;
}

.top-suponsor__inner__ttl {
display: flex;
align-items: flex-end;
flex-wrap: wrap;
margin-bottom: 24px;
justify-content: space-between;
}

.scroll-text {
display: flex;
align-items: center;
font-size: 180px; /* 文字サイズ */
white-space: nowrap;
overflow: hidden;
width: 100%;
}

.scroll-text li {
margin-right: 90px; /* 文字間の余白 */
list-style: none;
white-space: nowrap;
color: #F5F5F5;
line-height: 1;
}
.page-environment__head{
position: relative;
}
.page-environment__head .scroll-text{
position: absolute;
z-index: -1;
bottom: 0;
left: 0;
}


.section-top__intro{
position: relative;
}

.section-top__intro::before {
    content: "";
    width: 430px;
    height: 360px;
    position: absolute;
    z-index: -1;
    left: 0;
    top: 0;
    background-image: url('../images/top/circle01.png');
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
}

.section-top__intro::after{
    content: "";
    width: 480px;
    height: 380px;
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;
    background-image: url('../images/top/circle02.png');
    display: block;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: right bottom;
}
.section-top__intro__inner{
position: relative;
}
.section-top__intro .scroll-text{
position: absolute;
top: 80px;
left: 0;
width: 100%;
font-size: 140px;
}
.section-top__intro .scroll-text li{
margin-right: 20px;
}


a.link-btn {
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
display: flex;
align-items: center;
padding: 2px 2px 2px 40px;
border-radius: 10000px;
transition: .25s;
max-width: 310px;
width: 100%;
font-weight: 500;
font-size: 18px;
justify-content: space-between;
}
a.link-btn:hover {
background: linear-gradient(180deg, #097E5F, #02B686);
color: #fff;
display: flex;
align-items: center;
padding: 2px 2px 2px 40px ;
border-radius: 10000px;
transition: .25s;
}
.single-interview__cont__inner__right__sec03 a.link-btn {
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
display: flex;
align-items: center;
padding: 2px 2px 2px 40px;
border-radius: 10000px;
transition: .25s;
max-width: 400px;
width: 280px;
font-weight: 500;
font-size: 18px;
justify-content: space-between;
}
.section-top__intro a.link-btn{
margin: auto;
}
a.link-btn span {
width: 56px;
height: 56px;
background-color: #fff;
display: flex;
align-items: center;
justify-content: center;
border-radius: 10000px;
}
a.link-btn span img{
width: 18px;
height: 14px;
display: block;
}
section.section-fv {
    margin-top: 20px;
}
span.top-ttl-h2-span {
margin-bottom: 32px;
display: block;
font-size: 24px;
font-weight: 700;
padding-left: 32px;
position: relative;
}
span.top-ttl-h2-span::before {
display: block;
width: 10px;
height: 10px;
border-radius: 10000px;
top: 50%;
left: 0;
transform: translateY(-50%);
background-color: #3C3E77;
content: "";
position: absolute;
}
.top-ttl-h2{
font-size: 40px;
color: #3C3E77;
display: flex;
align-items: center;
height: max-content;
font-weight: 700;
}
.top-ttl-h2 a{
width: 38px;
height: 38px;
background-color: #fff;
border-radius: 100000px;
display: flex;
align-items: center;
justify-content: center;
margin-left: 24px;
border: 1px solid;
}
.section-top__company__inner__text .top-ttl-h2 {
margin-bottom: 40px;
}
.section-top__company__inner__text a.link-btn{
margin-bottom: 12px;
}
.top-ttl-h2 a img {
width: 18px;
height: 14px;
display: block;
}
.section-top__company__inner__text p{
line-height: 2.5;
font-size: 16px;
margin-bottom: 40px;
}

.section-top__company__inner.w-1280 {
padding: 80px;
background: #f5f5f5;
border-radius: 40px 0 0 40px;
}
section.section-top__company {
position: relative;
}
section.section-top__company::before {
position: absolute;
z-index: -1;
width: 50vw;
right: 0;
top: 0;
height: 100%;
background-color: #f5f5f5;
content: "";
}.section-top__interview__inner.w-1100 {
padding-top: 240px;
padding-bottom: 120px;
}
button.slick-next.slick-arrow {
margin-left: 16px;
width: 52px;
height: 52px;
}
button.slick-prev.slick-arrow{
width: 52px;
height: 52px;
}
button.slick-prev.slick-arrow img,
button.slick-next.slick-arrow img{
width: 100%;
height: 100%;
object-fit: contain;
}
.interview-text {
display: flex;
align-items: flex-end;
justify-content: space-between;
}
.interview-text p{
line-height: 2;
}
.section-top__interview__inner.w-1100 .top-ttl-h2{
margin-bottom: 24px;
}
.section-top__environment__inner {
padding-bottom: 80px;
}.top__environment__text {
display: flex;
align-items: center;
justify-content: space-between;
padding: 20px 40px;
background: #f5f5f5;
border-radius: 10px;
}
.top__environment__text div {
width: calc(100% - 200px);
}
.top__environment__text h3{
font-size: 24px;
margin-bottom: 24px;
color: #3C3E77;
font-weight: 700;
}
.top__environment__text p{
line-height: 1.8;
}
.top__environment__text img{
width: 164px;
height: 164px;
display: block;
}
.section-top__environment__inner .top-ttl-h2{
margin-bottom: 32px;
}
.section-top__recruit{
background-color: #f5f5f5;
border-radius: 100px 100px 0 0;
position: relative;
}
.section-top__recruit .scroll-text{
bottom: 0;
left: 0;
position: absolute;
}
.section-top__recruit .scroll-text li{
color: #fff;
}
.section-top__recruit__inner {
padding-top: 90px;
padding-bottom: 190px;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.section-top__recruit__text {
width: calc(50% - 50px);
}

.section-top__recruit__text p{
line-height: 2;
font-size: 16px;
}
.section-top__recruit .btn-group{
width: 50%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
.section-top__recruit .btn-group a.link-btn{
margin-bottom: 12px;
width: 49%;
}
.section-top__recruit .top-ttl-h2{
width: 100%;
margin-bottom: 32px;
}
.section-top__recruit__inner {
padding-top: 90px;
padding-bottom: 190px;
display: flex;
justify-content: space-between;
align-items: flex-start;
}
.section-top__company__inner.w-1280 > img:nth-of-type(1) {
position: absolute;
top: 90px;
right: 0;
width: 50%;
height: auto;
object-fit: contain;
max-width: 780px;
}
.section-top__company__inner.w-1280 > img:nth-of-type(2) {
position: absolute;
top: 50%;
left: -70px;
width: 11%;
height: auto;
object-fit: contain;
display:none !important;
}

footer {
background: #F9F8FD;
}
.section-header__logo a img {
display: block;
width: 100%;
object-fit: contain;

object-position: center;
}


nav.section-header__navi {
display: flex;
align-items: center;
}
nav.section-header__navi > ul{
display: flex;
align-items: center;

}
nav.section-header__navi > ul >li{
font-size: 14px;
}

section.news-list {
    margin-top: 80px;
    margin-bottom: 80px;
}


.page-company__intro__thumbnail img{
width: 100%;
height: auto;
object-fit: contain;
border-radius: 10px;
overflow: hidden;
}
.page-environment__intro__thumbnail img{
width: 100%;
height: auto;
object-fit: contain;
}
section.page-company__head.page-head {
position: relative;
}
section.page-company__head.page-head .scroll-text{
position: absolute;
z-index: -1;
bottom: 0;
left: 0;
font-family: 140px;
}

.form-tab {
    display: flex;
    justify-content: center;
    gap: 24px;
    align-items: center;
}

.form-tab li {
    width: calc(100% - 40px);
    max-width: 300px;
    padding: 12px 24px;
    font-size: 16px;
    font-weight: 700;
    background-color: transparent;
    color: #3C3E77;
    border: 1px solid #3C3E77;
    text-align: center;
    border-radius: 100000px;
}

.form-tab li.active {
    background-color: #3C3E77;
    color: #fff;
    border: 1px solid #3C3E77;
}

.form-section.privacy{
padding-top: 120px;
padding-bottom: 120px;
}


.form-section.privacy h2{
    font-size: 24px;
    margin-top: 40px;
    font-weight: 700;
    border-bottom: 1px solid #3C3E77;
    padding: 8px 12px;
    color: #3C3E77;
    }

.form-section.privacy h3{
    font-size: 18px;
    margin-top: 32px;
    font-weight: 700;
    border-bottom: 1px solid #ccc;
    padding: 6px 12px;
    color: #3C3E77;
    }

.thanks{
    padding-top: 120px;
}
.thanks span.ttl-tag {
        font-size: 24px;
        text-align: center;
        width: 100%;
        display: block;
        margin-bottom: 24px;
    }
    .thanks p{
        margin-bottom: 40px;
        text-align: center;
    }

    .thanks a.btn{
        margin: auto;
    }

.form-section.privacy p{
    margin-top: 24px;
    line-height: 2;

}

.form-01,
.form-02 {
    display: none;
}

.form-01.active,
.form-02.active {
    display: block;
}


.tag-list{
    width: max-content;
    max-width: 100%;
    padding: 32px 80px;
    border-radius: 20px;
    filter: drop-shadow(0 0 5px #0000003a);
    background-color: #F9F8FD;
    margin: auto;
    margin-bottom: 64px;
}
ul.news-cat-links {
    display: flex;
    gap: 20px;
}

ul.news-cat-links li a{
    padding: 8px 14px;
    display: block;
    line-height: 1;
    width: max-content;
    border-radius: 10000px;
    background-color: transparent;
    border: 1px solid #3C3E77;
    color: #3C3E77;
    transition: .25s;
}

ul.news-cat-links li a:hover{
    background-color: #3C3E77;
    border: 1px solid #3C3E77;
    color: #fff;
    transition: .25s;
}

.tag-list h3{
    font-size: 24px;
    text-align: center;
    font-weight: 700;
    margin-bottom: 24px;
}

section.news-list ul.news-list li {
    border-bottom: 1px solid #CCCCCC;
}

section.news-list ul.news-list li a{
    padding: 24px 0;
    display: flex;
    font-size: 18px;
    gap: 18px;
    align-items: center;
}
section.news-list ul.news-list li a h3{
    transition: .25s;
    
}
section.news-list ul.news-list li:hover a h3{
    transition: .25s;
    color: #EEC1EB;
}

section.news-list ul.news-list li a .date_news{
    font-weight: 500;
    transition: .25s;
    color: #3C3E77;
}

section.news-list ul.news-list li:hover a .date_news{
    font-weight: 500;
    transition: .25s;
    color: #EEC1EB;
}


section.news-list ul.news-list li a .term_news{
    font-size: 10px;
    padding: 4px 10px;
    transition: .25s;
    color: #3C3E77;
    border: 1px solid #3C3E77;
    border-radius: 10000000px;
}

section.news-list ul.news-list li:hover a .term_news{
    transition: .25s;
    color: #EEC1EB;
    border: 1px solid #EEC1EB;
}

section.page-company__head.page-head .scroll-text li{
margin-right: 20px;
}

.page-head {
padding-top: 220px;
padding-bottom: 100px;
}
.page-head h1{
font-size: 52px;
margin-bottom: 32px;
color: #3C3E77;
font-weight: 700;
}
.bread-list{
font-size: 16px;
display: flex;
align-items: center;
}
.bread-list li{
font-size: 16px;
display: flex;
align-items: center;
margin-right: 18px;
}.page-company__intro__thumbnail {
position: relative;
margin-bottom: 80px;
}
.page-company__intro__thumbnail::before {
position: absolute;
width: 100vw;
height: 50%;
background: linear-gradient(90deg, #097E5F, #02B686);
content: "";
display: block;
left: 50%;
transform: translateX(-50%);
bottom: -40px;
z-index: -1;
}

.page-environment__intro__thumbnail {
position: relative;
margin-bottom: 130px;
}
.page-environment__intro__thumbnail::before {
position: absolute;
width: 100vw;
height: 50%;
background: linear-gradient(90deg, #097E5F, #02B686);
content: "";
display: block;
left: 50%;
transform: translateX(-50%);
bottom: -40px;
z-index: -1;
}
.page-company__intro__text span{
background: linear-gradient(90deg, #097E5F, #02B686);
padding: 10px 32px;
border-radius: 1000px;
font-size: 18px;
display: block;
margin-bottom: 14px;
width: max-content;
font-weight: 700;
}
.page-company__intro__text h4{
font-size: 40px;
margin-bottom: 18px;
font-weight: 700;
color: #464646;
}
h3.go-ttl {
margin-bottom: 32px;
font-weight: 700;
}
.page-company__intro__text p{
font-size: 18px;
color: #464646;
}
.page-company__intro__text {
position: absolute;
bottom: 32px;
left: 32px;
color: #fff;
}
.page-company__intro__inner {
padding-bottom: 120px;
}
.page-company__intro__inner > p{
line-height: 1.8;
}
section.page-company__philosophy {
background: #f5f5f5;
}
.page-company__philosophy__inner{
padding-top: 80px;
padding-bottom: 80px;
}
.company__philosophy__cont {
display: flex;
justify-content: space-between;
margin-bottom: 32px;
}

.company__philosophy__cont h3{
font-size: 48px;
font-weight: 700;
color: #3C3E77;
position: relative;
height: max-content;
}
.company__philosophy__cont h3::before{
height: 3px;
width: 100%;
bottom: -10px;
left: 0;
content: "";
display: block;
background-color: #3C3E77;
position: absolute;
}

.company__philosophy__cont .text-box{
max-width: 780px;
width: 70%;
padding: 32px;
border-radius: 10px;
background-color: #fff;
}
.company__philosophy__cont .text-box h4{
font-size: 32px;
padding-bottom: 24px;
margin-bottom: 18px;
border-bottom: 1px solid #ccc;
color: #3C3E77;
margin-top: 22px;
}
.page-company__philosophy__inner h2.top-ttl-h2 {
margin-bottom: 56px;
}
.company__philosophy__cont .text-box h4:nth-of-type(1){
margin-top: 0;
}

.company__philosophy__cont .text-box p{
line-height: 1.5;
}


.page-company__ideal__inner.w-1100 {
padding-top: 120px;
padding-bottom: 120px;
}

.page-company__ideal__inner.w-1100 ul {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.page-company__ideal__inner.w-1100 ul li{
width: calc((100% - 50px) / 3);
background-color: #f5f5f5;
padding: 32px 20px;
border-radius: 10px;
margin-bottom: 32px;
}

.page-company__ideal__inner.w-1100 ul li img{
width: 80%;
display: block;
height: auto;
margin: auto;
max-width: 160px;
margin-bottom: 24px;
}
.page-company__ideal__inner.w-1100 ul li span{
text-align: center;
display: block;
margin-bottom: 8px;
font-size: 14px;
font-weight: 700;
}
.page-company__ideal__inner.w-1100 ul li h4{
font-size: 24px;
margin-bottom: 16px;
text-align: center;
color: #3C3E77;
font-weight: 700;
}
.page-company__ideal__inner.w-1100 ul li p{
font-size: 16px;
text-align: left;
font-weight: 400;
line-height: 1.5;
}

.page-company__ideal__inner h2.top-ttl-h2 {
padding-bottom: 24px;
margin-bottom: 32px;
border-bottom: 1px solid #ccc;
}

.page-company__history__inner.w-1100 {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
position: relative;
margin-bottom: 120px;
}
.page-company__history__text{
width: 50%;
}.page-company__history__text p{
line-height: 2;
}.page-company__history__text .top-ttl-h2{
padding-bottom: 24px;
margin-bottom: 32px;
line-height: 1.5;
border-bottom: 1px solid #ccc;
}

.page-company__ideal__img {
position: absolute;
left: calc(50% - -40px);
width: calc(50vw - 40px);
height: 100%;
object-fit: cover;

object-position: top center;
}
.page-company__ideal__img::before{
left: 20px;
top: 20px;
width: calc(100% - 20px);
height: 100%;
background: linear-gradient(90deg, #097E5F, #02B686);
content: "";
display: block;
z-index: -1;
position: absolute;
}
.page-company__ideal__img img{
width: 100%;
height: 100%;
object-fit: cover;

object-position: top center;
}
section.page-company__history span.top-ttl-h2-span{
width: 100%;
margin-bottom: 24px;
}

.history-slider {
height: 160px;
overflow-y: hidden; /* 縦スクロールを無効化 */
overflow-x: scroll;
cursor: grab;
padding-left: 170px;
}

.history-slider:active {
cursor: grabbing;
}

.history-slider img{
height: 160px;
width: max-content;
}

.history-slider-text{
text-align: center;
margin-top: 24px;
margin-bottom: 120px;
}

.page-company__numbers{
background-color: #f5f5f5;
}
.page-company__numbers__inner{
padding-top: 120px;
padding-bottom: 120px;
}
.page-company__numbers__inner h2{
padding-bottom: 24px;
margin-bottom: 32px;
border-bottom: 1px solid #ccc;
}

.page-company__numbers__inner ul {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.page-company__numbers__inner ul li {
width: calc((100% - 50px) / 3);
margin-bottom: 50px;
}
.page-company__numbers__inner ul li img {
width: 100%;
height: auto;
}

.page-company__environment__inner{
padding-top: 120px;
padding-bottom: 80px;
}
.page-company__environment__inner img{
width: 100%;
height: auto;
object-fit: contain;
}
.page-company__environment__inner .top-ttl-h2{
padding-bottom: 24px;
margin-bottom: 32px;
border-bottom: 1px solid #ccc;
}
.page-company__environment__inner p{
line-height: 2;
margin-bottom: 40px;
}


.panel {
display: none;
}
.panel.active {
display: block;
}
.tab-list{
justify-content: space-between;
display: flex;
}
.tab-list li.active {
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
}

.tab-list li {
cursor: pointer;
padding: 18px 24px;
display: inline-block;
background: #333333;
color: #fff;
width: calc((100% - 18px) / 4);
text-align: left;
border-radius: 10px 10px 0 0;
}
.tab-cont .panel {
padding: 40px 20px;
background: #f5f5f5;
border: 1px solid;
}
.tab-cont .panel h3{
font-size: 24px;
margin-bottom: 24px;
line-height: 40px;
}
.tab-cont .panel > p{
line-height: 2;
font-weight: 400;
margin-bottom: 30px;
font-size: 16px;
}
.tab-cont .panel h2 {
font-size: 32px;
color: #3C3E77;
padding-left: 24px;
border-left: 4px solid;
margin-bottom: 24px;
}
ul.tag-list{
margin-bottom: 22px;
display: flex;
}
ul.tag-list li{
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
padding: 10px 24px;
border-radius: 10000px;
margin-right: 20px;
font-size: 14px;
}
.panel-point {
background: #fff;
display: flex;
padding: 20px 32px;
justify-content: space-between;
}
.panel-point h4{
color: #3C3E77;
margin-bottom: 20px;
font-size: 24px;
margin-top: 18px;
font-weight: 700;
}
.panel-point h4:first-of-type{
margin-top: 0px;
}
.panel-point > h4:first-of-type{
margin-top: 0;
}.panel-point p {
padding-left: 10px;
font-size: 16px;
line-height: 2;
font-weight: 400;
}
.panel-point div{
width: calc(60% - 70px);
}
.panel-point img{
width: 40%;
height: 100%;
object-fit: cover;

object-position: top center;
}


.page-environment__intro__inner.w-1100 h2 {
font-size: 40px;
text-align: center;
margin-bottom: 24px;
color: #3C3E77;
}
.page-environment__intro__inner.w-1100 p {
font-size: 20px;
text-align: center;
line-height: 2;
max-width: 900px;
margin-left: auto;
margin-right: auto;
margin-bottom: 80px;
}
.page-environment__cont__inner.w-1100  ul.tab-cont{
padding: 72px 24px;
background: #f5f5f5;
}

.page-environment__cont__inner.w-1100 ul.tab-cont {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
.page-environment__cont__inner.w-1100 ul.tab-cont::before{
width: calc((100% - 50px) / 3);
content: "";
display: block;
order: 10000000;

}
.page-environment__cont__inner.w-1100 ul.tab-cont li{
width: calc((100% - 50px) / 3);
background-color: #fff;
border-radius: 10px;
}
.page-environment__cont__inner.w-1100 ul.tab-cont li {
width: calc((100% - 50px) / 3);
background-color: #fff;
border-radius: 10px;
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
padding: 100px 0px 32px;
position: relative;
height: 340px;
margin-bottom: 40px;
overflow: hidden;
}
.page-environment__cont__inner.w-1100 ul.tab-cont li span {
width: 100%;
height: auto;
/* padding: 22px; */
font-size: 20px;
text-align: center;
background-color: #3C3E77;
color: #fff;
position: absolute;
top: 0;
left: 0;
height: 70px;
display: flex;
align-items: center;
justify-content: center;
}
.page-environment__cont__inner.w-1100 ul.tab-cont li img{
width: 170px;
height: 80px;
object-fit: contain;
}
ul.tab-cont.environment-panel02.environment-panel li:first-of-type {
width: calc(((100% - 15px) / 3) * 2);
}
.page-environment__cont__inner.w-1100 ul.tab-cont li p{
width: 100%;
font-size: 18px;
text-align: center;
color: #3C3E77;
line-height: 1.5;
font-weight: 700;
}
.page-environment__cont__inner{
padding-bottom: 120px;
}

.environment-panel {
display: none;
}
.environment-panel.active {
display: block;
}
ul.page-environment__cont {
display: flex;
justify-content: space-between;
margin-bottom: 50px;
}
.page-environment__cont .page-environment__cont li {
cursor: pointer;
color: #fff;
background-color: #333333;
width: calc((100% - 50px) / 3);
padding: 20px 32px;
display: flex;
justify-content: space-between;
align-items: center;
font-size: 18px;
}
.page-environment__cont .page-environment__cont li img{
width: 18px;
height: 14px;
display: block;
}
.page-environment__cont .page-environment__cont li.active {
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
}
.tab-cont{
display: none !important;
}
.tab-cont.active{
display: flex !important;
}

section.page-interview__comment {
margin-bottom: 56px;
}

section.interview-category-list .w-1100 {
padding: 40px 32px 32px;
background: #f5f5f5;
margin-bottom: 72px;
}

section.interview-category-list .w-1100 h2{
font-size: 24px;
font-weight: 700;
color: #3C3E77;
margin-bottom: 32px;
}


ul.category-list {
display: flex;
flex-wrap: wrap;
}
ul.category-list li {
margin-right: 18px;
margin-bottom: 8px;
}

ul.category-list li a {
display: block;
padding: 12px 22px;
border-radius: 10000px;
background-color: #333333;
color: #fff;
font-size: 16px;
line-height: 1;
}
.page-head{
position: relative;
}
.page-head .scroll-text {
position: absolute;
bottom: 0;
z-index: -1;
}
.page-recruit__cont__inner > p {
margin-bottom: 40px;
font-weight: 400;
}
.page-recruit__cont__thumbnail {
width: 100%;
height: 300px;
position: relative;
}
.page-recruit__cont__thumbnail::before {
position: absolute;
left: 20px;
top: 20px;
background: linear-gradient(90deg, #097E5F, #02B686);
content: "";
width: 100%;
height: 100%;
z-index: -1;
transition: .25s;
}
.page-recruit__cont__thumbnail:hover::before {
transition: .25s;
left: 0px;
top: 0px;
}
.page-recruit__cont__thumbnail img{
width: 100%;
height: 100%;
object-fit: cover;
object-position: top center;
}
section.recruit-list li h3{
margin-top: 46px;
font-size: 24px;
margin-bottom: 24px;
font-weight: 700;
color: #3C3E77;
}
section.page-recruit__cont {
padding-bottom: 80px;
}
section.recruit-list li > p{
font-weight: 400;
font-size: 14px;
}
ul.interview-items {
display: flex;
justify-content: space-between;
flex-wrap: wrap;
overflow-x: clip;
}
ul.interview-items::before{
width: calc((100% - 80px) / 3);
content: "";
height: 0;
order: 100000;
}
ul.interview-items li {
width: calc((100% - 80px) / 3);
height: 520px;
position: relative;
margin-bottom: 40px;
font-weight: 700;
}

ul.interview-items li .thumbnail {
width: 100%;
height: 100%;
border-radius: 10px;
overflow: hidden;
}

ul.interview-items li .thumbnail img {
width: 100%;
height: 100%;
object-fit: cover;
object-position: top center;
}

.page ul.interview-items li,
.single ul.interview-items li {
margin: 0 20px;
position: relative;
top: 0;
transition: .25s;
}

section.interview-list .w-1100 {
padding-bottom: 0px;
max-width: 1200px;
}
span.circle.circle-100 {
width: 200px;
height: 200px;
left: 0;
top: 280px;
}
span.circle.circle-110 {
width: 320px;
height: 320px;
right: -56px;
bottom: -120px;
}
.annotation {
margin-bottom: 20px;
font-size: 12px;
}
ul.interview-items li .interview-item__text{
position: absolute;
left: 20px;
bottom: 20px;
color: #fff;
width: calc(100% - 40px);
}

ul.interview-items li .interview-item__text h3{
font-size: 20px;
line-height: 1.5;
margin-bottom: 14px;
border-bottom: 1px solid #fff;
padding-bottom: 14px;
}
span.tag {
padding: 6px 14px;
display: block;
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
border-radius: 1000px;
margin-bottom: 8px;
width: max-content;
font-size: 14px;
}

span.recruit-type-tag {
position: absolute;
top: 0;
left: 0;
padding: 12px 24px;
display: block;
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
border-radius: 0 0 10px 0;
margin-bottom: 8px;
width: max-content;
font-size: 14px;
}

.interview-name {
display: flex;
align-items: center;
justify-content: space-between;
}

.interview-name h4{
font-size: 28px;
font-weight: 700;
}
.interview-name p{
font-size: 14px;
}

.single-interview__head__inner__left h1 {
margin-top: 30px;
margin-bottom: 20px;
font-size: 16px;
padding-left: 40px;
font-weight: 700;
position: relative;
}
.single-interview__head__inner__left h1::before {
position: absolute;
left: 0;
top: 50%;
transform: translateY(-50%);
width: 20px;
height: 1px;
background-color: #3C3E77;
display: block;
content: "";
}

.single-interview__head__inner__left h2 span {
display: block;
font-size: 32px;
padding: 8px 14px;
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
width: max-content;
margin-bottom: 6px;
}
.single-interview__head__text-box {
margin-top: 20px;
background: #f5f5f5;
padding: 20px;
width: max-content;
}
.single-interview__head__text-box span {
padding: 6px 14px;
display: block;
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
border-radius: 1000px;
margin-bottom: 8px;
width: max-content;
font-size: 14px;
}
.single-interview__head__name-box h3{
font-size: 40px;
margin-right: 8px;
}
.single-interview__head__name-box {
display: flex;
align-items: center;
}
.single-interview__head__name-box p{
font-size: 14px;
color: #3C3E77;
}
section.single-interview__head{
position: relative;
}
section.single-interview__head .scroll-text{
bottom: 0;
left: 0;
position: absolute;

}
section.single-interview__head {
margin-top: 100px;
height: 100vh;
max-height: 740px;
position: relative;
}
.single-interview__head__inner.w-1100 {
display: flex;
justify-content: space-between;
align-items: center;
position: relative;
height: 100%;
}
.single-interview__head__inner__right {
position: absolute;
left: 50%;
top: 50%;
transform: translateY(-50%);
height: 100%;
border-radius: 10px;
overflow: hidden;
width: 47vw;
}
.single-interview__cont__inner.w-1100 {
display: flex;
justify-content: space-between;
}
.single-interview__head__inner__right img{
width: 100%;
height: 100%;
object-fit: cover;
object-position: top center;
}

.single-interview__cont__inner__left {
width: 300px;
position: sticky;
top: 180px; /* 固定する位置を調整 */
height: fit-content; /* コンテンツの高さに応じて調整 */
}
.single-interview__cont__inner__left li{
margin-bottom: 18px;
padding: 0;
position: relative;
transition: .25s;
}
.single-interview__cont__inner__left li::before{
background-color: #FC452D;
width: 0;
top: 50%;
left: 0;
transform: translateY(-50%);
content: "";
height: 1px;
position: absolute;
transition: .25s;
}
section.single-interview__cont {
margin-top: 56px;
}
.single-interview__cont__inner__left li:hover{
color: #FC452D;
padding-left: 40px;
transition: .25s;
}
.single-interview__cont__inner__left li:hover::before{
background-color: #FC452D;
width: 20px;
left: 0;
transition: .25s;
}

.single-interview__cont__inner__right {
width: calc(100% - 300px);
}
.single-interview__cont__inner__right__sec01 {
padding: 64px 40px;
border: 1px solid #3C3E77;
margin-bottom: 80px;
font-size: 14px;
}

.single-interview__cont__inner__right__sec01 > h3 {
margin-bottom: 30px;
font-weight: 700;
}

.single-interview__cont__inner__right__sec01 h2{
font-size: 24px;
margin-bottom: 32px;
color: #3C3E77;
}
.single-interview__cont__inner__right__sec01 ul li {
padding-left: 72px;
padding-bottom: 32px;
position: relative;
}
.single-interview__cont__inner__right__sec01 ul li::before {
position: absolute;
height: calc(100% - 37px);
width: 1px;
content: "";
left: 7.5px;
top: 27px;
background-color: #464646;
}
.single-interview__cont__inner__right__sec01 ul li::after {
position: absolute;
width: 16px;
height: 16px;
border-radius: 1000px;
background-color: #FC452D;
top: 0;
left: 0;
content: "";
}
.single-interview__cont__inner__right__sec01 ul li h3 {
font-size: 18px;
margin-bottom: 8px;
font-weight: 700;
}

.single-interview__cont__inner__right__sec01 ul li span {
padding: 6px 14px;
display: block;
background: linear-gradient(90deg, #097E5F, #02B686);
color: #fff;
border-radius: 1000px;
margin-bottom: 8px;
width: max-content;
font-size: 14px;
}

span.single-interview__cont__sub-ttl {
margin-bottom: 24px;
display: flex;
font-size: 24px;
position: relative;
align-items: center;
font-weight: 700;
}
span.single-interview__cont__sub-ttl .eng {
display: block;
font-size: 24px;
font-weight: 700;
color: #3C3E77;
margin-right: 14px;
width: max-content;
}

h2.single-interview__cont__main-ttl {
font-size: 32px;
line-height: 1.5;
font-weight: 700;
margin-bottom: 30px;
color: #3C3E77;
}
.single-interview__cont__inner__right p{
line-height: 2;
}

.single-interview__cont__thumbnail {
margin-top: 40px;
}

.single-interview__cont__thumbnail img{
width: 100%;
height: auto;
}
.single-interview__cont__inner__right__sec02,
.single-interview__cont__inner__right__sec03 {
margin-bottom: 120px;
}

.single-interview__cont__thumbnail{
position: relative;
}
.single-interview__cont__thumbnail::before {
position: absolute;
width: 100%;
height: 100%;
background: linear-gradient(90deg, #097E5F, #02B686);
content: "";
left: 20px;
top: 20px;
z-index: -1;
}
.recruit-cta {
display: flex;
align-items: center;
justify-content: center;
background-color: #f5f5f5;
margin-top: 60px;
border-top: 1px solid;
border-bottom: 1px solid;
padding: 20px 20px;
font-weight: 700;
}
.recruit-cta__left{
width: 230px;
height: auto;
display: block;
margin-right: 40px;
}
.recruit-cta__left img{
width: 100%;
height: auto;
display: block;
}
.recruit-cta__right p {
font-size: 20px;
margin-bottom: 14px;
}
.single-interview-recomend{
background-color: #f5f5f5;
padding-top: 120px;
padding-bottom: 80px;
}
.single-interview-recomend-page{
padding-top: 80px;
padding-bottom: 80px;

}
.single-interview-recomend-page h2{
margin-bottom: 64px;

}
.single-interview-recomend h2{
margin-bottom: 64px;
}

.single-interview-recomend-page.company-interview h2{
margin-bottom: 24px;
}

.single-interview-recomend-page.company-interview .w-1100 > p{
margin-bottom: 16px;
line-height: 2;
margin-bottom: 72px;
font-size: 18px;
}
.sp{
display: none;
}

.top-interview {
max-width: 1200px;
margin: auto;
}.top-interview .slick-center {
position: relative;
top: 0px;
transition: .2s;
}
.slick-list {
overflow: visible !important;
}

.slick-center {
position: relative;
top: -10px;
}

.top-interview  .interview-item {
margin: 0 40px;
}
section.section-top__environment {
padding-top: 120px;
}


.single-recruit__cont__inner.w-1100 {
display: flex;
justify-content: space-between;
}



.single-recruit__cont__left {
width: 300px;
position: sticky;
top: 180px; /* 固定する位置を調整 */
height: fit-content; /* コンテンツの高さに応じて調整 */
}

.single-recruit__cont__right{
width: calc(100% - 300px);
}



.single-recruit__cont__left li{
margin-bottom: 18px;
padding: 0;
position: relative;
transition: .25s;
}
.single-recruit__cont__left li::before{
background-color: #FC452D;
width: 0;
top: 50%;
left: 0;
transform: translateY(-50%);
content: "";
height: 1px;
position: absolute;
transition: .25s;
}
section.single-interview__cont {
margin-top: 56px;
}
.single-recruit__cont__left li:hover{
color: #FC452D;
padding-left: 40px;
transition: .25s;
}
.single-recruit__cont__left li:hover::before{
background-color: #FC452D;
width: 20px;
left: 0;
transition: .25s;
}

.single-recruit__cont__right h2 {
padding-bottom: 24px;
margin-bottom: 32px;
border-bottom: 1px solid #ccc;
}


.single-recruit__cont__right table{
border-top: 1px solid #ccc;
background-color: #fff;
}
.single-recruit__cont__right table,
.single-recruit__cont__right tbody{
width: 100%;
}
.single-recruit__cont__right tbody tr{
border-bottom: 1px solid #ccc;
}
.single-recruit__cont__right tbody th{
width: 160px;
background-color: #f5f5f5;
padding: 32px;
}
.single-recruit__cont__right tbody td{
width: calc(100% - 160px);
padding: 32px;
line-height:1.5;
}

.single-recruit__cont .link-btn {
margin:  40px auto 100px;
}
.single-recruit__cont__inner.w-1100 {
display: flex;
justify-content: space-between;
padding-top: 56px;
}

.recruit-flow li{
display: flex;
justify-content: space-between;
align-items: center;
background-color: #f5f5f5;
margin-bottom: 48px;
padding: 24px 32px;
position: relative;
}

.recruit-flow li::before{
position: absolute;
width: 35px;
height: 16px;
content: "";
display: block;
left: 50%;
transform: translateX(-50%);
bottom: -40px;
background-image: url(../images/flow-arrows.png);
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}

.img-vrt{
    background-image: url(../images/works/bg-vrt.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    color: #fff;
    margin-bottom: 120px;
}
section.about-section.img-vrt .sub-ttl,
section.about-section.img-vrt .main-ttl {
    color: #fff;
}
.recruit-flow li::before {
position: absolute;
width: 35px;
height: 16px;
content: "";
display: block;
left: 50%;
transform: translateX(-50%);
bottom: -35px;
background-image: url(../images/flow-arrows.png);
background-size: contain;
background-position: center;
background-repeat: no-repeat;
}
.recruit-flow li:last-of-type{
margin-bottom: 0;
}

.recruit-flow li img{
width: 200px;
height: auto;
display: block;
}
.recruit-flow li .text-box{
width: calc(100% - 240px);
}
.recruit-flow li h4{
font-size: 24px;
display: flex;
align-items: center;
margin-bottom: 14px;

}
.recruit-flow li h4 span{
font-size: 20px;
color: #FC452D;
margin-right: 14px;
display: block;
width: max-content;
}
.recruit-flow li p{
font-size: 16px;
line-height: 1.8;
}
.acordion-tab {
list-style: none;
padding: 0;
margin: 0;
}

.acordion-tab li {
margin-bottom: 16px; /* li同士の間隔 */
padding: 0;
}

.acordion-ttl {
font-size: 18px;
line-height: 1.5;
background-color: #464646;
color: #fff;
padding: 20px 56px 20px 24px;
cursor: pointer;
display: block;
}
.acordion-ttl{
position: relative;
}
.acordion-ttl::before{
position: absolute;
top: 50%;
transform: translateY(-50%);
width: 18px;
height: 9px;
right: 24px;
background-image: url(../images/arrow-down.png);
background-repeat: no-repeat;
background-size: cover;
content: "";
display: block;
}
span.circle {
background: #88BE13;
position: absolute;
border-radius: 100000000px;
display: block;
z-index: -2;
opacity: .2;
}span.circle.circle-1 {
width: 20vw;
height: 20vw;
right: -5vw;
bottom: -6vw;
}
span.circle.circle-2 {
width: 40px;
height: 40px;
left: 2vw;
top: 50%;
}
span.circle.circle-3 {
width: 190px;
height: 190px;
top: 60%;
left: 5vw;
}
span.circle.circle-4 {
width: 180px;
height: 180px;
top: 50%;
right: 1vw;
}
span.circle.circle-5 {
width: 36px;
height: 36px;
top: 80%;
right: 12vw;
}span.circle.circle-6 {
width: 25vw;
height: 25vw;
right: -2vw;
top: -6vw;
}span.circle.circle-7 {
width: 5vw;
height: 5vw;
right: 29vw;
top: 13vw;
}
span.circle.circle-8 {
width: 30vw;
height: 30vw;
top: -9vw;
left: -9vw;
}
span.circle.circle-9 {
width: 3vw;
height: 3vw;
right: 7vw;
top: 2vw;
}
span.circle.circle-10 {
width: 6vw;
height: 6vw;
right: 0vw;
top: 5vw;
}
span.circle.circle-11 {
width: 6vw;
height: 6vw;
left: -2vw;
top: 26vw;
}
section.section-top__environment{
position: relative;
}

section.section-top__interview {
position: relative;
overflow-x: clip;
}
.acordion-text {
display: none;
font-size: 16px;
padding: 0 24px;
margin: 16px 0 24px 0;
line-height: 24px;
}
.section-fv {
position: relative;
overflow-x: clip;
}
section.section-top__interview {
position: relative;
}
.acordion-tab li.active .acordion-text {
display: block; /* activeのli内だけ表示 */
}

.acordion-h3-ttl{
font-size: 24px;
margin-bottom: 20px;
color: #3C3E77;
}
span.circle.circle-12 {
width: 330px;
height: 330px;
top: 386px;
left: -112px;
}span.circle.circle-13 {
width: 40px;
height: 40px;
bottom: 177px;
right: 213px;
}span.circle.circle-14 {
width: 194px;
height: 194px;
bottom: 18px;
right: 10px;
}
span.circle.circle-16 {
width: 7vw;
height: 7vw;
bottom: 1vw;
right: 0vw;
z-index: 1;
}

span.circle.circle-15 {
width: 40px;
height: 40px;
bottom: 140px;
right: 120px;
z-index: 1;
}

span.circle.circle-17 {
width: 280px;
height: 280px;
top: 16px;
z-index: 1;
left: -166px;
}

span.circle.circle-18 {
width: 80px;
height: 80px;
top: 275px;
z-index: 1;
left: 77px;
}
span.circle.circle-19 {
width: 120px;
height: 120px;
top: 18px;
left: 10px;
}
span.circle.circle-20 {
width: 5vw;
height: 5vw;
top: 30%;
right: 2vw;
}
span.circle.circle-21 {
width: 100px;
height: 100px;
top: 260px;
left: 82px;
}

span.circle.circle-22 {
width: 500px;
height: 500px;
top: -258px;
left: -267px;
}
span.circle.circle-23 {
width: 330px;
height: 330px;
top: -153px;
z-index: 1;
right: -87px;
}
span.circle.circle-24 {
width: 98px;
height: 98px;
top: 110px;
z-index: 1;
right:260px;
}span.circle.circle-25 {
width: 360px;
height: 360px;
top: 0vw;
left: -70px;
}
span.circle.circle-27 {
width: 110px;
height: 110px;
top: 1100px;
right: 12px;
}
span.circle.circle-28 {
width: 500px;
height: 500px;
top: -367px;
left: -244px;
}span.circle.circle-26 {
width: 40px;
height: 40px;
top: 1070px;
right: 130px;
}


span.circle.circle-29 {
width: 40px;
height: 40px;
left: 2vw;
top: 37vw;
}
span.circle.circle-30 {
width: 190px;
height: 190px;
top: 41vw;
left: 5vw;
}
span.circle.circle-31 {
width: 180px;
height: 180px;
top: 37vw;
right: 1vw;
}
span.circle.circle-32 {
width: 36px;
height: 36px;
top: 51vw;
right: 12vw;
}
span.circle.circle-33 {
width: 20vw;
height: 20vw;
top: 50%;
left: -3vw;
}
span.circle.circle-34 {
width: 20vw;
height: 20vw;
top: 60%;
right: -3vw;
}
span.circle.circle-36 {
width: 4vw;
height: 4vw;
top: -3vw;
right: 17vw;
}span.circle.circle-37 {
width: 14vw;
height: 14vw;
top: 4vw;
right: 0;
}

span.circle.circle-38 {
width: 40px;
height: 40px;
left: 2vw;
top: -6vw;
}
span.circle.circle-39 {
width: 190px;
height: 190px;
top: -3vw;
left: 5vw;
}
span.circle.circle-40 {
width: 180px;
height: 180px;
top: -6vw;
right: 1vw;
}
span.circle.circle-41 {
width: 36px;
height: 36px;
top: 6vw;
right: 12vw;
}
span.circle.circle-42 {
width: 10vw;
height: 10vw;
top: 0vw;
left: 5vw;
}

span.circle.circle-43 {
width: 10vw;
height: 10vw;
top: 20vw;
left: 8vw;
}span.circle.circle-44 {
width: 10vw;
height: 10vw;
top: 26%;
right: 0vw;
}::-webkit-scrollbar{
display:none;
}

span.circle.circle-45 {
width: 15vw;
height: 15vw;
top: 40%;
left: 8vw;
}
span.circle.circle-46 {
width: 25vw;
height: 25vw;
top: 60%;
right: -3vw;
}
.page-company__numbers{
overflow-x: clip;
}
.page-company__numbers__inner{

position: relative;
z-index: 2;
}
.page-company__philosophy__inner {
padding-top: 80px;
padding-bottom: 80px;
position: relative;
z-index: 2;
}
@keyframes floatAnimation1 {
0% { transform: translateY(0); }
50% { transform: translateY(-15px); }
100% { transform: translateY(0); }
}

@keyframes floatAnimation2 {
0% { transform: translateY(0); }
50% { transform: translateY(15px); }
100% { transform: translateY(0); }
}

span.circle {
position: absolute;
animation-duration: 4s;
animation-timing-function: ease-in-out;
animation-iteration-count: infinite;
}

span.circle:nth-of-type(2n) {
animation-name: floatAnimation1;
}

span.circle:nth-of-type(2n+1) {
animation-name: floatAnimation2;
}


.acordion-tab{
margin-bottom: 80px;
}

.cta-recruit{
padding: 120px 0 130px;
background-image: url(../images/bg-contact.png);
background-size: cover;
background-repeat: no-repeat;
background-position: center top;
color: #fff;
text-align: center;
border-radius: 40px 40px 0 0;
overflow: hidden;
position: relative;
}
.cta-recruit h2{
font-size: 24px;
line-height: 2;
margin-bottom: 24px;
position: relative;
z-index: 2;
}
.cta-recruit a{
font-size: 16px;
padding: 23px 40px;
display: flex;
align-items: center;
justify-content: center;
background-color: #FC452D;
width: max-content;
margin: auto;
position: relative;
z-index: 2;
}
.cta-recruit a img{
width: 20px;
height: 20px;
display: block;
margin-left: 24px;
}
.cta-recruit .scroll-text{
position: absolute;
bottom: -20px;
left: 0;
opacity: .4;
font-weight: 700;
font-size: 140px;
}
.cta-recruit .scroll-text li{
margin-right: 20px;
}
.header-acordion {
position: relative; /* 子メニューの基準位置 */
}
section.interview-list.company-interview .w-1100 {
padding-bottom: 0;
max-width: 1280px;
}
.header-acordion a{
display: flex;
align-items: center;

}
.header-acordion:hover > ul {
display: block; /* ホバー時に表示 */
}nav.section-header__navi-01{
    display: none;
}

.header-acordion ul {
display: none;
position: absolute;
background: #ffffffda;
padding: 20px;
list-style: none;
width: max-content;
border-radius: 5px;
top: 20px;
}
.header-acordion img {
width: 13px;
height: 7px;
object-fit: contain;
display: block;
margin-left: 14px;
}
.header-acordion ul li{
margin-bottom: 14px;
}
.header-acordion ul li:last-of-type{
margin-bottom: 0px;
}.header-acordion ul {
display: none;
position: absolute;
background: #fff;
padding: 20px;
list-style: none;
border: 1px solid #ccc;
width: max-content;
border-radius: 5px;
left: 50%;
transform: translateX(-50%);
}

.hamburger-box{
display: none;
}
.pc{
display: block;
}




span.circle.circle-200 {
width: 230px;
height: 230px;
top: 1000px;
left: 80px;
}
span.circle.circle-210 {
width: 40px;
height: 40px;
top: 1160px;
left: 20px;
}
span.circle.circle-220 {
width: 40px;
height: 40px;
top: 2000px;
right: 200px;
}
span.circle.circle-230 {
width: 190px;
height: 190px;
top: 2300px;
right: 0px;
}
span.circle.circle-240 {
width: 280px;
height: 280px;
top: 3000px;
left: 12px;
}

a.top-back {
position: fixed;
bottom: 20px;
right: 20px;
z-index: 9999;
width: 48px;
height: 48px;
display: none;
}

a.top-back img{
width: 100%;
height: 100%;
}


.recruit-flow li:last-of-type::before{
display: none;
}



.page section.interview-list h2,
.single section.interview-list h2 {
margin-bottom: 24px;
}
.single .single-interview-recomend-page {
padding-top: 80px;
padding-bottom: 40px;
background: #f5f5f5;
}

.more-button {
display: none;
}



.page-environment__cont__inner.w-1100 ul.tab-cont li p span {
display: block;
position: relative;
background: none;
color: #3C3E77;
font-size: 14px;
top: 0;
height: max-content;
margin-top: 3px;
}


div[id^="sec"] {
scroll-margin-top: 100px;
}


.section-page-content-news__inner.w-860 {
    margin-top: 80px;
    margin-bottom: 80px;
}

h2.section-page-content-news__inner__ttl {
    font-size: 24px;
    margin-bottom: 18px;
    font-weight: 700;
}

.section-page-content-news__inner__group{
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 40px;
}


.section-page-content-news__inner__group .section-page-content-news__inner__date{
    font-size: 20px;
    font-weight: 700;
}

.section-page-content-news__inner__tag{
    padding: 8px 18px;
    display: block;
    width: max-content;
    background-color: #3C3E77;
    border-radius: 10000000px;
    color: #fff;
}

.section-page-content-news__inner__thumbnail {
    margin-bottom: 40px;
}

.section-page-content-news__inner.w-860 p {
    line-height: 1.8;
}

.section-page-content-news__inner.w-860 h2{
    font-size: 24px;
    color: #3C3E77;
    font-weight: 700;
    padding-bottom: 14px;
    margin-bottom: 24px;
    border-bottom: 1.5px solid #ccc;
    margin-top: 32px;
}

.section-page-content-news__inner.w-860 h3{
    font-size: 18px;
    color: #3C3E77;
    font-weight: 700;
    padding-bottom: 12px;
    margin-bottom: 18px;
    margin-top: 32px;
    border-bottom: 1.5px solid #ccc;
}

.section-page-content-news__inner__ttl{
    border-bottom: none !important;
}

.top-back01{
    background-color: #3C3E77;
    color: #fff;
    font-size: 20px;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 280px;
    padding: 18px 0;
    border-radius: 100000px;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
}

.form-section.contact {
    margin-top: 80px;
}

.section-page-company .sub-ttl,
.section-page-company .main-ttl,
.section-page-access .sub-ttl,
.section-page-access .main-ttl{
    margin-left: 0;
    text-align: left;
    justify-content: flex-start;
}

.section-page-company{
    margin-top: 120px;
    margin-bottom: 120px;
}

.section-page-company__inner table{
    border-top: 1px solid #A7A7A7;
}
.section-page-company__inner table,
.section-page-company__inner tbody{
    width: 100%;
}

.section-page-company__inner tbody{
    border-left: 1px solid #A7A7A7;
    border-right: 1px solid #A7A7A7;
}

.section-page-company__inner table tr{
    width: 100%;
    display: flex;
    border-bottom: 1px solid #A7A7A7;
}

.section-page-company__inner table tr th{
    padding: 27px 0;
    text-align: center;
    border-right: 1px solid #A7A7A7;
    width: 200px;
    background-color: #3C3E77;
    color: #fff;
}

.section-page-company__inner table tr td{
    padding: 27px ;
    line-height: 1.8;
}

.section-page-access{
    margin-bottom: 120px;
}

.section-page-access__inner__access-flex {
    display: flex;
    justify-content: space-between;
    gap: 24px;
}

.section-page-access__inner__access-flex iframe {
    width: 50%;
    height: 300px;
}

.section-page-access__inner__access-flex .text-box {
    width: 50%;
    font-size: 18px;
    line-height: 1.8;
}


.section-page-access__inner__access-flex .text-box h2{
    position: relative;
}

.section-page-access__inner__access-flex .text-box h2::before{
        position: absolute;
        content: "";
        width: 8px;
        height: 8px;
        display: block;
        top: 13px;
        left: -18px;
        background: #eec1eb;
        border-radius: 100000px;
}

.access-info{
    padding-left: 18px;
    padding-top: 16px;
    margin-top: 24px;
    border-top: 1px solid #323232;
}


@media screen and (max-width:1200px) {
    .w-1100 {
        width: 100%;
        margin: auto;
        max-width: 1100px;
        padding-left: 20px;
        padding-right: 20px;
    }
    .w-860 {
        width: 100%;
        margin: auto;
        max-width: 860px;
        padding-left: 20px;
        padding-right: 20px;
    }
    .section-page-content-news__inner__thumbnail{
        width: max-content;
        max-width: 100%;
    }.section-page-content-news__inner__group .section-page-content-news__inner__date {
        font-size: 16px;
        font-weight: 700;
    }
    .section-page-content-news__inner.w-860 p {
        line-height: 1.8;
        font-size: 14px;
    }
    .section-page-content-news__inner__tag {
        padding: 6px 14px;
        display: block;
        width: max-content;
        background-color: #3C3E77;
        border-radius: 10000000px;
        color: #fff;
        font-size: 12px;
    }
    .section-page-content-news__inner__thumbnail img{
        width: 100%;
        height: auto;
        object-fit: contain;
        object-position: center;
    }
    .section-page-header {
        padding-top: 120px;
        padding-bottom: 80px;
    }
    section.news-list ul.news-list li a {
        padding: 20px 0;
        display: flex;
        font-size: 16px;
        gap: 14px;
        align-items: center;
    }
    .footer-logo {
        width: 240px;
    }
    .footer-logo p {
        line-height: 1.8;
        font-size: 12px;
    }
    .footer-privacy {
        width: max-content;
        margin-right: 0;
        margin-left: auto;
        text-align: right;
        font-size: 12px;
    }
    .section-fv__inner {
        position: absolute;
        left: 0;
        bottom: 0;
        z-index: 2;
        padding: 20px;
    }









.hamburger-menu {
    display: flex;
    flex-direction: column;
    gap: 5px;
    background: none;
    border: none;
    cursor: pointer;
    width: 30px;
    height: 19px;
  }
  
  .hamburger-menu span {
    display: block;
    height: 3px;
    background: #000;
    border-radius: 2px;
  }
  
  /* メニュー本体の表示制御 */
  .section-header__navi {
    display: flex;
    align-items: center;
  }
  
    .hamburger-box {
      display: block;
    }
  
    .section-header__navi-01 {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        width: 100vw;
        background: #3c3e77e3;
        padding: 20px;
        z-index: 1000;
        flex-direction: column;
        height: 100vh;
        color: #fff;
    }
  
    .section-header__navi-01.active {
      display: flex;
      padding-top: 140px;
    }
  
    .section-header__navi-01 ul.right {
        flex-direction: column;
        gap: 0px;
        display: flex;
        flex-wrap: wrap;
    }
  
    .section-header__navi-01 ul.right li ul {
      padding-left: 15px;
    }

    .section-header__navi-01 ul.right li a{
       padding-top: 14px;
       padding-bottom: 14px;
       border-bottom: 1px solid #fff;
       display: block;
      }
  
    .section-header__navi-01 a.eng {
      margin-top: 20px;
      align-self: flex-start;
    }
    .hamburger-menu {
        display: flex;
        flex-direction: column;
        justify-content: center;
        gap: 5px;
        background: none;
        border: none;
        cursor: pointer;
        width: 30px;
        height: 25px;
        position: relative;
        z-index: 1001;
      }
      
      .hamburger-menu span {
        display: block;
        height: 3px;
        background: #323232;
        border-radius: 2px;
        transition: all 0.3s ease;
        width: 100%;
        position: relative;
      }
      
      /* アニメーション時の状態 */
      .hamburger-menu.open span:nth-child(1) {
        transform: rotate(45deg) translate(6px, 6px);
      }
      
      .hamburger-menu.open span:nth-child(2) {
        opacity: 0;
      }
      
      .hamburger-menu.open span:nth-child(3) {
        transform: rotate(-45deg) translate(6px, -6px);
      }

      .section-header__navi-01 ul.right li ul {
        display: block;
        background-color: transparent;
        position: relative;
        width: 100%;
        padding: 0;
        border: none;
        transform: none;
        left: 0;
        top: 0;
    }

    .section-header__navi-01 ul.right li ul li{
       margin-bottom: 0;
    }
    .section-header__navi-01 ul.right li ul li a{
       padding-left: 20px;
       font-size: 14px;
    }

    .section-header__navi-01 a.eng {
        margin-top: 20px;
        align-self: flex-start;
        display: block;
        margin: 40px auto 0;
        background: #fff;
        padding: 14px;
        width: 80%;
        border-radius: 1000px;
        color: #000;
        text-align: center;
        font-weight: 700;
    }
      
  }

.sp{
    display: none !important; 
}

@media screen and (max-width: 1200px) {
    .section-header_inner {
        padding: 14px 20px;
    }
    nav.section-header__navi{
        display: none;
    }
    header.section-header {
        width: calc(100% - 20px);
        margin-left: 10px;
        margin-right: 10px;
        margin-top: 20px;
    }
  }
@media screen and (max-width:640px) {
    .top-suponsor p {
        font-size: 14px;
        line-height: 2;
        color: #fff;
        margin-bottom: 40px;
    }
    section.news-list ul.news-list li a {
        flex-wrap: wrap;
    }
    section.news-list ul.news-list li h3 {
        width: 100%;
    }
    .top-suponsor {
        padding-top: 80px;
        padding-bottom: 80px;
        background-image: url(../images/top/suponsor.png);
        background-position: center;
        background-size: cover;
        color: #fff;
    }
    .footer-logo {
        width: 100%;
    }
    .footer-info {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .footer-info ul.right {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
    }
    .footer-info ul.right li {
        margin-left: 0;
        font-weight: 500;
        font-size: 14px;
        width: 100%;
    }

    .section-fv{
    min-height: auto;
    }
    .section-fv__inner h1 span.h1-ttl {
        font-size: 24px;
        line-height: 1.5;
        width: max-content;
        max-width: calc(100%);

    }
    .section-fv__inner{
        width: 100%;
    }
    .footer-info ul.right {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        gap: 14px;
    }
    .section-fv__inner .text-box p {
        line-height: 1.6;
        font-size: 14px;
        color: #fff;
        filter: drop-shadow(0px 0px 10px #000000);
    }.section-fv__inner .text-box {
        max-width: calc(100%);
    }
    .section-top__intro__inner p {
        line-height: 2;
        font-size: 14px;
        text-align: left;
    }
    .main-ttl {
        font-size: 24px;
        color: #3C3E77;
        font-weight: 700;
        text-align: center;
        margin-bottom: 14px;
    }
    .sub-ttl {
        font-size: 14px;
        display: flex;
        gap: 10px;
        text-align: center;
        color: #3C3E77;
        position: relative;
        align-items: center;
        justify-content: center;
        margin-bottom: 15px;
    }
    .section-top__intro__inner {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .top-service__text {
        width: 100%;
        padding-left: 20px;
        padding-right: 20px;
        padding-top: 80px;
        padding-bottom: 80px;
    }
    .top-service__images{
    display: none;
    }
    .top-service__inner .main-ttl {
        text-align: left;
        margin-bottom: 40px;
    }
    .top-service__inner h4 {
        font-size: 14px;
        margin-bottom: 15px;
    }
    .top-service__text ul li h3 {
        font-size: 24px;
        margin-bottom: 24px;
    }
    .top-service__text ul li p {
        margin-bottom: 24px;
        font-size: 14px;
    }
    .top-service__text ul li {
        padding-bottom: 32px;
    }
    .top-service__text ul {
        gap: 40px;
    }
    .sp{
        display: block !important;
    }
    .pc{
        display: none !important;
    }
    .footer-privacy{
        margin-top: 40px;
    }
    .about-section__flex {
        display: flex;
        justify-content: space-between;
        gap: 24px;
        flex-wrap: wrap;
    }
    .about-section__flex img {
        width: 100%;
        height: 50vw;
        object-fit: cover;
        object-position: center;
        border-radius: 10px;
    }
    .about-section__inner__text-box {
        width: 100%;
        font-size: 14px;
    }
    .about-section__inner {
        padding-top: 80px;
        padding-bottom: 80px;
    }
    section.feature-section {
        background-color: #F9F8FD;
        padding-top: 80px;
        padding-bottom: 80px;
        margin-bottom: 80px;
    }
    .feature-section__inner__ttl h2.main-ttl {
        text-align: left;
        margin-bottom: 24px;
    }
    .sponsor-merit-taxt {
        line-height: 2;
        margin-bottom: 40px;
        font-size: 14px;
    }
    .feature__list li {
        gap: 24px;
        width: 100%;
        padding-bottom: 24px;
        flex-wrap: wrap;
    }
    .feature__list li img {
        width: 100%;
        height: 50vw;
        object-fit: cover;
        object-position: center;
        background-color: #000;
        order: 2 !important;
    }
    .feature__text-box {
        width: 100%;
        order: 1 !important;
    }
    .feature__text-box h2 {
        text-align: left;
        font-size: 20px;
        line-height: 1.5;
        margin-bottom: 14px;
    }
    .feature__text-box p {
        line-height: 2;
        font-size: 14px;
    }
    .feature__list {
        display: flex;
        flex-wrap: wrap;
        gap: 32px;
    }
    .sinako {
        text-align: center;
        margin-top: 40px;
        text-align: center;
        font-size: 18px;
        font-weight: 700;
    }
    .contact-form {
        max-width: 900px;
        width: 100%;
        margin: 0 auto;
        padding: 0;
        box-sizing: border-box;
        font-family: sans-serif;
        font-size: 14px;
        color: #333;
    }
    .form-content__ttl {
        width: 240px;
        padding: 0;
        text-align: left;
        font-size: 16px;
        font-weight: 500;
    }
    .req, .opt {
        display: inline-block;
        font-size: 12px;
        border-radius: 12px;
        margin-left: 6px;
        vertical-align: middle;
    }
    .form-content__input input[type="text"], .form-content__input input[type="email"], .form-content__input input[type="tel"], .form-content__input textarea {
        width: 100%;
        padding: 12px;
        font-size: 16px;
        background: #F9F8FD;
        border-radius: 6px;
        box-sizing: border-box;
    }
    .form-content {
        display: block;
        padding: 0;
        margin-bottom: 14px !important;
    }
    td.form-content__input.tel-box {
        display: flex;
        gap: 4px;
        align-items: center;
        flex-wrap: wrap;
    }
    .form-privacy {
        margin-top: 32px;
        font-size: 14px;
    }
     section.about-section::before {
        width: 50vw !important;
        height: 35vw !important;
        background-size: contain;
        background-position: right bottom;
        content: "";
        display: block;
        position: absolute;
        right: 0;
        bottom: 0;
        z-index: -1;
        background-repeat: no-repeat !important;
    }
    .section-page-company__inner table tr {
        width: 100%;
        display: flex;
        border-top: none;
        border-bottom: none;
        flex-wrap: wrap;
    }
    .section-page-company__inner table tr th {
        padding: 18px ;
        text-align: center;
        border-right:none;
        width: 200px;
        background-color: #3C3E77;
        color: #fff;
        width: 100%;
        font-size: 14px;
    }
    .section-page-company__inner table tr td {
        padding: 18px;
        width: 100%;
        font-size: 16px;
    }
    .section-page-company__inner table tr:last-of-type{
        border-bottom: 1px solid #A7A7A7;
    }
    .section-page-company {
        margin-top: 80px;
        margin-bottom: 80px;
    }
    .section-page-access__inner__access-flex iframe {
        width: 100%;
        height: 50vw;
    }
    .section-page-access__inner__access-flex {
        display: flex;
        justify-content: space-between;
        gap: 24px;
        flex-wrap: wrap;
    }
    .section-page-access__inner__access-flex .text-box {
        width: 100%;
        font-size: 14px;
        line-height: 1.8;
    }
    .section-page-access {
        margin-bottom: 80px;
    }
    .section-page-content-news__inner.w-860 h2 {
        font-size: 20px;
        color: #3C3E77;
        font-weight: 700;
        padding-bottom: 14px;
        margin-bottom: 24px;
        border-bottom: 1.5px solid #ccc;
        margin-top: 32px;
    }
    .section-page-content-news__inner.w-860 p {
        line-height: 1.8;
        font-size: 14px;
        margin-top: 24px;
    }
    .footer-logo > a {
        width: 180px;
        height: auto;
        margin: auto;
        margin-bottom: 24px;
    }
    .section-top__intro::after {
        content: "";
        width: 170px;
        height: 140px;
    }
    .section-top__intro::before {
        content: "";
        width: 140px;
        height: 140px;
    }
    .tag-list {
        width: 100%;
        max-width: 100%;
        padding: 32px;
        border-radius: 20px;
        filter: drop-shadow(0 0 5px #0000003a);
        background-color: #F9F8FD;
        margin: auto;
        margin-bottom: 32px;
    }
    .tag-list h3 {
        font-size: 20px;
        text-align: center;
        font-weight: 700;
        margin-bottom: 24px;
    }
    ul.news-cat-links li a{
        font-size: 12px;
    }
    p.footer-addr.sp {
        width: 100%;
        margin-top: 24px;
        line-height: 1.8;
        font-size: 14px;
        padding-top: 24px;
        border-top: 1px solid #ccc;
    }
}

.section-page-content-news__inner img,
.section-page-content-news__inner video{
    width: max-content;
    height: auto;
    object-fit: contain;
    max-width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
}