/*
====>> サイト(案件)毎にスタイルを記述していくファイル <<====

・このファイルはサイト(案件)独自のスタイルを記述するファイル
・ここに記述するファイルは、接頭辞に「p-」を付けたセレクタにする事　/　例：「.p-project-item」

*/


/*		TOPページ
-----------------------------------------------------*/

.p-main-visual{
    position: relative;
    background: url(../img/page/mv_bg.jpg) no-repeat center top;
    background-size: cover;
    min-height: 596px;
    height: 90.5vh;
    margin-bottom: 168px;
    z-index: 1;
    &::after{
        content: "";
        position: absolute;
        display: block;
        bottom: -78px;
        background: url(../img/page/mv_bg_bar.jpg) no-repeat center top / cover;
        width: 100%;
        height: 78px;
        z-index: -1;
    }
    .l-container{
        padding-top:50px;
        padding-bottom:60px;
    }
    .c-title_l{
        margin-bottom: 22px;
        font-size: 4.5rem;
        font-weight: normal;
        color: var(--color-white);

        .c-title_l_text{
            font-size: 6.5rem;
        }

    }/* END .c-title_l */

    .p-site_name{
        margin-bottom: 30px;
        color: var(--color-white);
    
        & p{
            margin-bottom: 10px;
            font-size: 2.4rem;
        }

    }/* END .p-site_name */
    
    .p-held{
        margin-bottom: 30px;
        justify-content: flex-start;
        align-items: flex-start;
        gap: 15px;
        color: var(--color-white);
    
        .p-held_icon{
            display: flex;
            align-items: center;
            justify-content: center;
            aspect-ratio: 1 / 1;
            padding: 9px 14px;
            border: 2px solid var(--color-gold);
            border-radius: 50%;
            color: var(--color-gold);
            line-height: 1.2;
        }
    
    }/* END .p-held */
    
    .p-held_schedule{
    
        .p-held_schedule_text{
            margin-bottom: 5px;
            font-size: 2.4rem;
            letter-spacing: 0.05em;
            font-weight: normal;
        }
        .is-flex{
            align-items: flex-start;
            justify-content:start;
        }
        
    }/* END .p-held_schedule */

    .c-link_btn{
        position: relative;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap:15px;
        min-width: 370px;
        color:var(--color-base);
        background-color: #050716;
        border: 2px solid var(--color-gold);
        border-radius: 100px;
        padding: 15px 30px;
        text-align: center;
        color: var(--color-gold);

        &::after{
            position: static;
            content:"";
            display: inline-block;
            width: 21px;
            aspect-ratio: 1 / 1;
            -webkit-mask-image:url(../img/common/icon_arrow_under.svg) ;
            mask-image:url(../img/common/icon_arrow_under.svg) ;
            -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
            -webkit-mask-position: center center;
            mask-position: center center;
            -webkit-mask-size: 100% auto;
            mask-size: 100% auto;
            background-color: currentColor;
            transform: translateX(0px);
            transition: all 0.2s ease;
        }
        &:hover::after{
            transform: translateY(3px);
        }

    }/* END .c-link_btn */
}/* END .p-main-visual */
@media (max-width: 600px){
    .p-main-visual{
        position: relative;
        background:#07001D url(../img/page/mv_bg_sp.jpg) no-repeat center top / 100% auto;
        min-height: 100vh;
        height:100%;
        margin-bottom: 55px;
        &::after{
            display: none;
        }
        .l-container{
            display: flex;
            height: 100%;
            flex-direction: column;
            align-items: center;
            justify-content: flex-end;
            padding-top:300px;
            padding-bottom:60px;
            position:relative;
            &::after{
                position:absolute;
                left:calc(50% - 13.5px);
                bottom:10px;
                display:inline-block;
                content:url(../img/common/icon_scroll.svg);
                width: 27px;
                height: 32.4px;
            }
        }
        .c-title_l{
            text-align: center;
            font-size: 3.5rem;
            margin-bottom: 20px;
    
            .c-title_l_text{
                font-size: 4.5rem;
            }
    
        }/* END .c-title_l */
    
        .p-site_name{
            margin-bottom: 33px;
            & p{
                font-size: 1.4rem;
                margin-bottom: 5px;
            }
            & svg{
                max-width: 300px;
                margin:auto;
            }
    
        }/* END .p-site_name */
        
        .p-held{
            margin-bottom: 30px;
            justify-content: flex-start;
            align-items: flex-start;
            gap: 15px;
            color: var(--color-white);
        
            .p-held_icon{
                display: flex;
                align-items: center;
                justify-content: center;
                aspect-ratio: 1 / 1;
                padding: 9px 14px;
                border: 2px solid var(--color-gold);
                border-radius: 50%;
                color: var(--color-gold);
                line-height: 1.2;
            }
        
        }/* END .p-held */
        
        .p-held_schedule{
            .p-held_schedule_text{
                font-size: 1.2rem;
            }
            .is-flex{
                align-items: flex-start;
                justify-content:start;
            }
            & dl dt{
                color:var(--color-gold);
                font-size:1.2rem;
            }
            & dl dd{
                font-size:1.2rem;
            }            
        }/* END .p-held_schedule */
    
        .c-link_btn{
            display: flex;
            align-items: center;
            justify-content: center;
            gap:10px;
            font-size:1.4rem;
            min-width: unset;
            width: fit-content;
            color:var(--color-base);
            background-color: #050716;
            border-radius: 100px;
            padding: 8px 35px;
            margin:auto;
            text-align: center;
            color: var(--color-gold);
            border: 2px solid var(--color-gold);
    
            &::after{
                position: static;
                content:"";
                display: inline-block;
                width: 21px;
                aspect-ratio: 1 / 1;
                -webkit-mask-image:url(../img/common/icon_arrow_under.svg) ;
                mask-image:url(../img/common/icon_arrow_under.svg) ;
                -webkit-mask-repeat: no-repeat;
                mask-repeat: no-repeat;
                -webkit-mask-position: center center;
                mask-position: center center;
                -webkit-mask-size: 100% auto;
                mask-size: 100% auto;
                background-color: currentColor;
                transform: translateX(0px);
                transition: all 0.2s ease;
            }
            &:hover::after{
                transform: translateY(3px);
            }
    
        }/* END .c-link_btn */
    }/* END .p-main-visual */
    
}
.p-top-about{

    .c-title_l{
        position: relative;
        margin-bottom: 56px;
        text-align: center;
        color: var(--color-white);
        font-weight: normal;
        padding: 15px 50px;
        background: var(--color-navy);
        clip-path: polygon(30px 0%, 100% 0%, calc(100% - 30px) 100%, 0% 100%);

        & span{
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            gap:10px;

            &:before{
                flex-shrink: 0;
                content:"";
                display:inline-block;
                width: 45px;
                aspect-ratio: 100 / 44.4;
                background: url(../img/page/title_left.png) no-repeat center center / contain;
            }

            &:after{
                flex-shrink: 0;
                content:"";
                display:inline-block;
                width: 45px;
                aspect-ratio: 100 / 44.4;
                background: url(../img/page/title_right.png) no-repeat center center / contain;
            }

        }/* END & span */
    }/* END & c-title_l */

    .p-top-about_lead-text{
        margin-bottom: 90px;
        padding: 0 40px;
    }

    .p-top-about_subject{
        margin-bottom: 100px;
        padding: 0 40px;

        .c-title_m{
            margin-bottom: 20px;
            text-align: left;
            font-weight: normal;

        }

        .p-top-about_subject_list{
            display: flex;
            flex-wrap: wrap;
            gap:25px 20px;
            justify-content: space-between;
            align-items: center;

            & > li{
                width: calc(50% - 10px);
                display: flex;
                justify-content: space-between;
                align-items: stretch;
            }

            .p-top-about_subject_list_num{
                position: relative;
                max-width: 93px;
                background: var(--color-navy);
                display: flex;
                align-items: center;
                padding:20px 20px 20px 10px;
                margin-right:-30px;
                color: var(--color-white);
                clip-path: polygon(0 0, 100% 0%, calc(100% - 40px) 100%, 0% 100%);
            }

            .p-top-about_subject_list_num p{
                font-size:1.6rem;
                letter-spacing: 0.06em;
                line-height: 1.3;
                -ms-writing-mode: tb-rl;
                writing-mode: vertical-rl;
                margin-right:-0px;
            }

            .p-top-about_subject_list_num span{
                font-size: 7.2rem;
                line-height: 1;
                margin-top:-0.1em;
            }

            .p-top-about_subject_list_text{
                position: relative;
                display: flex;
                align-items: center;
                background: #E1E1E1;
                width: calc(100% - 63px);
                padding: 15px 25px 15px 60px;
                font-size: 2.4rem;
                line-height: 1.5;
                clip-path: polygon(40px 0, 100% 0%, 100% 100%, 0% 100%);
                & b{
                    color:var(--color-navy);
                    font-weight: normal;
                }
                & span{
                    display:inline-block;
                }
            }


        }/* END .p-top-about_subject_list */

    }/* END .p-top-about_subject */
    
}/* END .p-top-about */
@media (max-width: 900px){
    .p-top-about{
        .p-top-about_subject{
            
            .p-top-about_subject_list{

                & > li{
                    width: 100%;
                }
            }
        }
    }
}
@media (max-width: 600px){
    .p-top-about{

        .c-title_l{
            margin-bottom: 20px;
            padding: 12px 30px;
    
            & span{
                gap:10px;
    
                &:before{
                    width: 25px;
                }
    
                &:after{
                    width: 25px;
                }
    
            }/* END & span */
        }/* END & c-title_l */

        .p-top-about_lead-text{
            margin-bottom: 50px;
            padding: 0 20px;
        }
    
        .p-top-about_subject{
            margin-bottom: 50px;
            padding: 0;
    
            .c-title_m{
                font-size:1.8rem;
                font-weight: bold;
                text-align: center;
                margin-bottom: 20px; 
            }
    
            .p-top-about_subject_list{
                /*flex-wrap: wrap;
                flex-direction: column;
                gap:20px;
                justify-content: space-between;
                align-items: center;*/
    
                & > li{
                    width: 100%;
                    display: flex;
                    justify-content: space-between;
                    align-items: stretch;
                }
    
                .p-top-about_subject_list_num{
                    position: relative;
                    max-width: 70px;
                    background: var(--color-navy);
                    display: flex;
                    align-items: center;
                    padding:8px 16px 10px 10px;
                    margin-right:-30px;
                    color: var(--color-white);
                    clip-path: polygon(0 0, 100% 0%, calc(100% - 30px) 100%, 0% 100%);
                }
    
                .p-top-about_subject_list_num p{
                    font-size:1.2rem;
                }
    
                .p-top-about_subject_list_num span{
                    font-size: 4.3rem;
                }
    
                .p-top-about_subject_list_text{
                    width: calc(100% - 45px);
                    justify-content: center;
                    font-size: 1.4rem;
                    letter-spacing: 0.05em;
                    text-align: center;
                    padding: 15px 35px 15px 60px;
                    clip-path: polygon(30px 0, 100% 0%, 100% 100%, 0% 100%);
                }
    
    
            }/* END .p-top-about_subject_list */
    
        }/* END .p-top-about_subject */
        
    }/* END .p-top-about */    
}

.p-top-program{
    margin-bottom:100px;

    .c-title_l{
        position: relative;
        margin-bottom: 56px;
        text-align: center;
        color: var(--color-white);
        font-weight: normal;
        padding: 15px 50px;
        background: var(--color-navy);
        clip-path: polygon(30px 0%, 100% 0%, calc(100% - 30px) 100%, 0% 100%);

        & span{
            position: relative;
            display: flex;
            align-items: center;
            justify-content: center;
            gap:10px;

            &:before{
                flex-shrink: 0;
                content:"";
                display:inline-block;
                width: 45px;
                aspect-ratio: 100 / 44.4;
                background: url(../img/page/title_left.png) no-repeat center center / contain;
            }

            &:after{
                flex-shrink: 0;
                content:"";
                display:inline-block;
                width: 45px;
                aspect-ratio: 100 / 44.4;
                background: url(../img/page/title_right.png) no-repeat center center / contain;
            }

        }/* END & span */
    }/* END & c-title_l */
    .p-top-program_lead-text{
        letter-spacing: 0.05em;
        line-height: 2;
        margin-bottom: 90px;
        padding: 0 60px;
        & li{
            position:relative;
            padding-left:1.5em;
            &::before{
                content:"●";
                position:absolute;
                top:0;
                left:0;
            }
            & +li{
                margin-top:20px;
            }    
        }
    }

    .p-top-program_list{
        position:relative;
        width: 100%;
        min-height: 1000px;
        margin-bottom:55px;
        &::before{
            content:"";
            display:block;
            width:70%;
            aspect-ratio: 1 / 1;
            border:10px solid var(--color-gray-pale);
            border-radius: 50%;
            position:absolute;
            top:50%;
            left:50%;
            transform: translate(-50% , -50%);
        }
        & .p-top-program_list-title{
            position:absolute;
            top:50%;
            left:50%;
            transform: translate(-50%, -50%);
        }
        & .p-top-program_list-item1{
            position: absolute;
            top:0;
            left:50%;
            transform: translateX(-50%);
        }
        & .p-top-program_list-item2{
            position: absolute;
            top:17%;
            right:0;
        }
        & .p-top-program_list-item3{
            position: absolute;
            top:51%;
            right:0;
        }
        & .p-top-program_list-item4{
            position: absolute;
            top:68%;
            left:50%;
            transform: translateX(-50%);
        }
        & .p-top-program_list-item5{
            position: absolute;
            top:51%;
            left:0;
        }
        & .p-top-program_list-item6{
            position: absolute;
            top:17%;
            left:0;
        }
    }
    & .p-top-program_message{
        position:relative;
        padding-top:75px;
        &::before{
            content:"";
            width: 70px;
            height: 25px;
            display: block;
            position: absolute;
            top:0;
            left:50%;
            transform: translateX(-50%);
            clip-path: polygon(50% 100%, 0 0, 100% 0);
            background-color: var(--color-navy);
        }
        & p{
            position: relative;
            width: fit-content;
            font-size:3.2rem;
            letter-spacing: 0.05em;
            text-align: center;
            padding:15px 25px;
            margin:auto;
            border-top: 4px solid var(--color-navy);
            border-bottom: 4px solid var(--color-navy);
            &::before{
                position: absolute;
                top: 2px;
                left: 0;
                width: 100%;
                height: calc(100% - 8px);
                content: '';
                border-top: 2px solid var(--color-navy);
                border-bottom: 2px solid var(--color-navy);
            }
            & span{
                display: inline-block;
                margin-left:0.5em;
            }
        }
    }
}/* END .p-top-program */
@media (max-width: 880px){
    .p-top-program{
        .p-top-program_list{
            min-height: unset;
            margin-bottom:55px;
            &::before{
                display: none;
            }
            .p-top-program_list-items{
                display:flex;
                flex-direction: column;
                align-items: center;
                gap:45px;
                position: relative;
                &::before{
                    content:"";
                    display:block;
                    width:9px;
                    height: 90%;
                    aspect-ratio: unset;
                    background-color: var(--color-gray-pale);
                    border:0 ;
                    border-radius: 0;
                    position:absolute;
                    top:20vw;
                    left:50%;
                    transform: translateX(-50%);
                    z-index: -1;
                }
            }
            & .p-top-program_list-title{
                position:static;
                transform:none;
                text-align: center;
                margin-bottom:30px;
            }
            & .p-top-program_list-item1{
                position:static;
                transform:none;
            }
            & .p-top-program_list-item2{
                position:static;
                transform:none;
            }
            & .p-top-program_list-item3{
                position:static;
                transform:none;
            }
            & .p-top-program_list-item4{
                position:static;
                transform:none;
            }
            & .p-top-program_list-item5{
                position:static;
                transform:none;
            }
            & .p-top-program_list-item6{
                position:static;
                transform:none;
            }
        }
    }/* END .p-top-program */
}
@media (max-width: 600px){
    .p-top-program{
        margin-bottom:50px;

        .c-title_l{
            font-size: 2rem;
            margin-bottom: 20px;
            padding: 12px 30px;
    
            & span{
                gap:10px;
    
                &:before{
                    width: 25px;
                }
    
                &:after{
                    width: 25px;
                }
    
            }/* END & span */
        }/* END & c-title_l */

        .p-top-program_lead-text{
            margin-bottom: 60px;
            padding: 0 20px;
            & li + li{
                margin-top:25px;
            }    
        }
        & .p-top-program_message{
            padding-top:75px;
            &::before{
                width: 55px;
                height: 20px;
            }
            & p{
                font-size:2rem;
                letter-spacing: 0;
                border-top: 5px solid var(--color-navy);
                border-bottom: 5px solid var(--color-navy);
                & span{
                    display:block;
                    margin-left:0;
                }
            }
        }
    }/* END .p-top-program */
}

.p-top-profile{
    background: var(--color-navy);
    margin-bottom: 100px;
    padding: 80px 0 90px;
    color: var(--color-white);

    .c-title_l{
        padding-left: 10px;
        border-left: 2px solid var(--color-white );
        font-weight: normal;
        font-size: 2.4rem;
        letter-spacing: 0.05em;
        line-height: 1;
    }/* END .c-title_l */

    .p-top-profile_detail.c-unit{
        background: url(../img/page/p-top-profiel_bg-img.jpg) no-repeat bottom center;
        margin: -20px auto 20px;
        flex-direction: row-reverse;
        justify-content: center;
        align-items: center;
        gap:15px 7%;

        & section{
            max-width: 340px;
            padding:20px 0 0 15px;
        }
        & figure{
            max-width:406px;
        }

        .c-title_m{
            margin-bottom: 12px;
            padding-bottom: 12px;
            border-bottom: 1px solid var(--color-white);
            font-weight: normal;
            font-size: 2.4rem;

            & span{
                font-size: 1.6rem;
            }

        }/* END .c-title_m */

    }/* END .p-top-profile_detail */

    .p-top-profile_text{

        & > p{
            margin-bottom: 30px;
        }
    }

}/* END .p-top-profile */
@media (max-width: 800px){
    .p-top-profile{

        .p-top-profile_detail.c-unit{
            flex-direction: column;
            justify-content: center;
            align-items:stretch;
            gap:30px;
            background-image: none;
            padding-bottom:18px;
            margin: 20px auto;
            background-image : linear-gradient(to right, #fff, #fff 2px, transparent 2px, transparent 8px);  /* 幅2の線を作る */
            background-size: 8px 2px;          /* グラデーションの幅・高さを指定 */
            background-position: left bottom;  /* 背景の開始位置を指定 */
            background-repeat: repeat-x;       /* 横向きにのみ繰り返す */

            & section{
                max-width: 100%;
                width:fit-content;
                margin:0 auto;
                padding:0;
            }
            & figure{
                display: block;
                text-align: center;
                max-width:100%;
                width: 100%;
                background: url(../img/page/p-top-profiel_bg-img.jpg) no-repeat bottom center / auto 85%;
            }
        }/* END .p-top-profile_detail */
    }
}
@media (max-width: 600px){
    .p-top-profile{
        margin-bottom: 50px;
        padding: 40px 20px 50px;
    
        .c-title_l{
            padding-left: 0;
            border-left: none;
            text-align: center;
            font-size: 2rem;
            line-height: 1.5;
        }/* END .c-title_l */
    
        .p-top-profile_detail.c-unit{
    
            .c-title_m{
                font-size: 2rem;
                margin-bottom: 18px;
    
                & span{
                    font-size: 1.4rem;
                }
    
            }/* END .c-title_m */
    
        }/* END .p-top-profile_detail */
    
        .p-top-profile_text{
    
            & > p{
                margin-bottom: 30px;
            }
        }
    
    }/* END .p-top-profile */
    
}
.p-top-contact{
    margin-bottom: 100px;
    .c-title_l{
        margin-bottom: 28px;
        .en,.ja{
            display: block;
            text-align: center;
        }
        .en{
            font-size: 6rem;
            color: #E1E1E1;
        }
        .ja{
            display: flex; 
            justify-content: center;
            align-items: center; 
            gap:5px;
            font-size: 1.6rem;
            font-weight: normal;
            letter-spacing: 0.05em;
            position: relative;
            &::before,
            &::after{
                content:"";
                width:20px;
                height:1px;
                background: currentColor;
            }
        }
    }/* END .c-title_l */

    .p-top-contact_lead-text{
        margin-bottom: 21px;
        text-align: center;
        font-size: 2.6rem;
        letter-spacing: 0.05em;
    }
    .p-top-contact_info-text{
        margin-bottom:20px;
    }
    .p-top-contact_caution-text{
        font-size: 1.4rem;

        & span{
            color: var(--color-red);
        }

    }/* END .p-top-contact_caution-text */

    .c-table_plane{
        margin-bottom:60px;
        & th{
            background: #E9E9E9;
            border-bottom: 1px solid #B5B5B5;

            & span{
                display:inline-block;
                color: var(--color-red);
                margin-left:3px;
            }

        }

        & td{
            border-bottom: 1px solid #B5B5B5;

            & input{
                width: var(--w-liquid);
                padding: 10px;
                border: 1px solid #B5B5B5;
                border-radius: 4px;
            }

            & textarea{
                width: var(--w-liquid);
                padding: 10px;
                border: 1px solid #B5B5B5;
                border-radius: 4px;
            }
        }
    }/* END .c-table_plane */
    .p-top-contact_btn-wrap{
        display:flex;
        justify-content: center;
        align-items: center;
        gap:20px 30px;
        }
    .c-link_btn{
        min-width:446px;
        font-size:1.6rem;
        letter-spacing: 0.05em;
        text-align: center;
        padding:22px 40px;
        border-radius: 100px;
        cursor: pointer;
        &.btn-navy{
            color:#fff;
            background-color: var(--color-navy);
            transition: all 0.2s ease-in-out;
            border:2px solid var(--color-navy);
            &:hover{
                color:var(--color-navy);
                background-color: #fff;
            }
        }
        &.btn-gray{
            color:var(--color-black);
            background-color: var(--color-gray-pale);
            border-color:transparent;
            &:hover{
                color:var(--color-black);
                background-color: #fff;
                border-color: currentColor;
            }
        }
        &::after{
            content:"";
            display: inline-block;
            width:22px;
            aspect-ratio: 1 / 1 ;
            background-color: currentColor;
            -webkit-mask-image: url('../img/common/icon_arrow.svg');
            mask-image: url('../img/common/icon_arrow.svg');
            -webkit-mask-repeat: no-repeat;
            mask-repeat: no-repeat;
            -webkit-mask-position: center;
            mask-position: center;
            -webkit-mask-size: 100% auto;
            mask-size: 100% auto;
            transform: translateY(-50%);
        }
    }
    .btn-reverse{
        &::after{
            right:unset;
            left:5%;
            -webkit-mask-image: url('../img/common/icon_arrow_left.svg');
            mask-image: url('../img/common/icon_arrow_left.svg');
        }
        &:hover::after{
            left:4%;
        }
    }
    & .p-top-contact_tel{
        width: fit-content;
        max-width: 510px;
        color:var(--color-base);
        margin:100px auto 0;
        & a{
            display:block;
        }
        & span{
            display: inline-block;
            font-size:7rem;
            line-height:1.3;
            &::before{
                content:"";
                display:inline-block;
                width:41.6px;
                aspect-ratio: 100 / 138;
                margin-right:0.3em;
                background-color: currentColor;
                -webkit-mask-image: url('../img/common/icon_tel.svg');
                mask-image: url('../img/common/icon_tel.svg');
                -webkit-mask-repeat: no-repeat;
                mask-repeat: no-repeat;
                -webkit-mask-position: center;
                mask-position: center;
                -webkit-mask-size: 100% auto;
                mask-size: 100% auto;
            }
        }
        & small{
            display:block;
            font-size:1.6rem;
            text-align: center;
            letter-spacing: 0.05em;
            padding-top:5px;
            margin-top:5px;
            border-top:2px solid currentColor;
        }
    
    }
}/* END .p-top-contact */
@media (max-width: 600px){
    .p-top-contact{
        margin-bottom: 50px;
        .c-title_l{
            margin-bottom: 15px;
            .en{
                font-size: 5rem;
            }
            .ja{
                font-size: 1.4rem;
                &::before,
                &::after{
                    width:12px;
                }
            }
        }/* END .c-title_l */
    
        .p-top-contact_lead-text{
            font-size: 1.4rem;
        }
    
        .p-top-contact_caution-text{
            font-size: 1rem;
    
            span{
                color: var(--color-red);
            }
    
        }/* END .p-top-contact_caution-text */
    
        .c-table_plane{
            display:block;
            width: 100%;
            margin-bottom:25px;
            & tbody,
            & tr{
                display:block;
                width: 100%;
            }
            & th{
                display: block;
                width: 100%;
                text-align: left;
                border-bottom: none;
    
                & span{
                    font-size:1.4rem;
                    color: var(--color-red);
                }
    
            }
    
            & td{
                display: block;
                width: 100%;
                padding:8px 0 20px;
                border-bottom: none;
    
                & input{
                    width: var(--w-liquid);
                    padding: 10px;
                    border: 1px solid #B5B5B5;
                    border-radius: 4px;
                }
    
                & textarea{
                    width: var(--w-liquid);
                    padding: 10px;
                    border: 1px solid #B5B5B5;
                    border-radius: 4px;
                }
            }
        }/* END .c-table_plane */
        .p-top-contact_btn-wrap{
            display:flex;
            justify-content: center;
            align-items: center;
            gap:20px 30px;
            }
        .c-link_btn{
            min-width:unset;
            width: 100%;
            padding:22px 40px;
        }
        & .p-top-contact_tel{
            width: fit-content;
            max-width: 510px;
            color:var(--color-base);
            margin:100px auto 0;

            & span{
                font-size:4.4rem;
                font-size: clamp(3rem, -0.266rem + 11.667vw, 4.4rem);
                &::before{
                    width:26px;
                    width: clamp(16px, -7.333px + 8.333vw, 26px);
                    aspect-ratio: 100 / 138;
                }
            }

            & small{
                font-size:1.2rem;
                border-top:1px solid currentColor;
            }
        
        }
    }/* END .p-top-contact */
    
}


/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/
/*		下層ページ
-----------------------------------------------------*/


.taken{
    width: 369px;
    text-align: center;
}
.taken p{
    color: #d6c677;
    font-size: 2rem;
}
.radio_btn td input{
    width: unset !important;
    margin-left: 25px;
    position: relative;
    top: -4px;
}
@media screen and (min-width:601px) {
    .nopc{display: none;}
}
@media screen and (max-width:600px) {
    .taken{
        width: 100%;
    }
}

.tab_info table{
    margin: auto;
    margin-top: 90px;
    width: 88%;
}
.tab_info td, .tab_info th, .tab_info tr {
    border-color: #110341;
    border: 1px solid;
    padding: 1.3em;
}
.seminar-info__item {
    width: 25%;
    background-color: #110341;
    border-color: #110341 !important;
    letter-spacing: 0.04em;
    color: #fff;
    vertical-align: middle;
    text-align: center;
    border-bottom-color: white !important;
}
.seminar-info__item.last{
    border-bottom-color: #110341 !important;
}
@media screen and (max-width:600px) {
    .tab_info{
        font-size: 14px;
    }
    .tab_info table{
        width: 100%;
    }
    .tab_info td, .tab_info th, .tab_info tr {
        padding: 0.5em;
    }
}

/* 241217 受講者の声 */

/* 親コンテナ */
.layout-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 20px;
    margin: 20px;
}

/* グループ全体 */
.layout-group {
    display: flex;
    flex: 1 1 calc(50% - 20px); /* 2カラム (PC表示) */
    background-color: #f9f9f9;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
    overflow: hidden;
}

/* 画像部分 */
.layout-image {
    width: 50%;
    background-color: #f0f0f0;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
}

.layout-image img {
    max-width: 100%;
    height: auto;
    display: block;
}

/* テキスト部分 */
.layout-content {
    width: 50%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 20px;
    background-color: #f0f0f0;
}

.layout-text {
    text-align: left;
    margin-bottom: 20px;
    font-size: 1.1rem;
}

.layout-info {
    text-align: right;
    font-weight: bold;
}
.layout-group-noimage {
    background-color: #f0f0f0;
    padding: 20px;
    width: 49%;
}
.layout-container-noimage {
    display: flex
;
    flex-wrap: wrap;
    gap: 17px;
}

/* SP表示用 */
@media screen and (max-width: 768px) {
    .layout-container {
        flex-direction: column;
    }

    .layout-group {
        flex-direction: column; /* 画像とテキストを縦並び */
        width: 100%;
    }

    .layout-image {
        width: 100%;
        order: 1;
    }

    .layout-content {
        width: 100%;
        order: 2;
        padding: 10px;
        text-align: left;
    }

    .layout-info {
        text-align: left;
    }
    .layout-group-noimage {
        background-color: #f0f0f0;
        padding: 20px;
        width: 100%;
    }
}
