@charset "UTF-8";

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
base
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
:root {
    --main-color: #0086C9;
    --sub-color: #005BAC;
    --third-color: #BAE3F9;
    --accent-color: #FFF100;
    --white-color: #ffffff;
    --text-color: #262626;
    --bg-color: #F7FEFF;
}

html {
    font-size: 100%;
    text-size-adjust: 100%;
    scroll-behavior: smooth;
    scroll-padding-top: 100px;
}

body {
    line-height: 1.75;
    word-wrap: break-word;
    word-break: break-all;
    font-display: auto;
    letter-spacing:0;
    font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-weight: 500;
    font-style: normal;
    color: var(--text-color);
    overflow-x: clip;
}

img {
    width: 100%;
    height: auto;
}

.pc-only {
    display: block;
}

.tb-only {
    display: none;
}

.sp-only {
    display: none;
}

@media screen and (max-width: 1024px) {
    html {
        scroll-padding-top: 80px;
    }
}

@media screen and (max-width: 768px) {
    .pc-only {
        display: none;
    }

    .tb-only {
        display: block;
    }
}

@media screen and (max-width: 576px) {
    html {
        scroll-padding-top: 60px;
    }

    .sp-only {
        display: block;
    }
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
header
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.l-header__spButtonWrap {
    position: fixed;
    bottom: 0;
	width: 100%;
	z-index: 900;
	display:none;
}

.l-header__spButton {
    display: flex;
	
	& .listItem{
		flex-basis: 50%;
		a{
			display:block;
			text-align:center;
			padding: 16px 0;
            font-weight: 700;
            color: var(--sub-color);
			
			& .c-arrow{
				color: var(--sub-color);
			}
		}
	}
	
	& .join{
		background:var(--accent-color);
		& .c-arrow{
			&::before{
				border-top: solid 2px var(--accent-color);
                border-right: solid 2px var(--accent-color);
			}
		}
	}
	
	& .documents{
		background: var(--third-color);
		& .c-arrow{
			&::before{
				border-top: solid 2px var(--third-color);
                border-right: solid 2px var(--third-color);
			}
		}
	}
}

/* ーーーーーーーーーーーーーーーーーーーー
PC - header
ーーーーーーーーーーーーーーーーーーーーー */
.l-header__spWrap {
    display: none;
}

.l-header__pcInner {
    justify-content: space-between;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 999;
    height: 100px;
    background: var(--white-color);
    display: flex;
    align-items: center;
    padding: 0 32px;
}

/* logo　 */
.l-header__pcInner-logo {
    img {
        width: clamp(15rem, 12.865rem + 9.49vw, 24.25rem);
    }
}


/* button */
.l-header__pcInner-buttonContainer {
    display: flex;

    & .c-button{
        &:not(:first-child){
            margin-left: 14px;
        }

        a{
            font-size: clamp(1rem, 0.942rem + 0.26vw, 1.25rem);
            width: auto;
            padding: clamp(0.375rem, 0.346rem + 0.13vw, 0.5rem) clamp(0.75rem, 0.635rem + 0.51vw, 1.25rem);

            & .c-arrow {
                width: clamp(1.375rem, 1.332rem + 0.19vw, 1.563rem);
                height: clamp(1.375rem, 1.332rem + 0.19vw, 1.563rem);

                &::before {
                    width: 8px;
                    height: 8px;
                    border-top: solid 2px var(--accent-color);
                    border-right: solid 2px var(--accent-color);
                }
            }

        }
    }


    & .c-button.documents{
        a{
            background: var(--third-color);
        }

        & .c-arrow {
            &::before {
                border-top: solid 2px var(--third-color);
                border-right: solid 2px var(--third-color);
            }
        }
    }

    & .c-button.apply{
        a{
            background: #FADCE9;
            color: #E9559C;
            box-shadow: 4px 4px 0px 0px #E9559C;
        }

        & .c-arrow {
            color: #E9559C;

            &::before {
                border-top: solid 2px #FADCE9;
                border-right: solid 2px #FADCE9;
            }
        }
    }
    
}

/* ーーーーーーーーーーーーーーーーーーーー
SP - header
ーーーーーーーーーーーーーーーーーーーーー */
.l-header__spWrap {
    position: fixed;
    z-index: 999;
    top: 0;
    right: 0;
    width: 100%;
    height: 80px;
    display: none;
    font-weight: 700;
    background: var(--white-color);
}

.l-header__spWrap-logo {
    width: clamp(15rem, 10.256rem + 21.08vw, 23.75rem);
    height: auto;
    position: relative;
    display: inline-block;
    top: 50%;
    transform: translateY(-50%);
    left: 20px;
    z-index: 6;
}

/* hamburgerMenu　ーーーーーーーー */
.p-button {
    position: relative;
    display: inline-block;
    text-decoration: none;
    appearance: none;
    border: none;
    background-color: transparent;
    cursor: pointer;
    z-index: 999;
}

.p-hamburger {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 0;
    z-index: 999;
    width: 80px;
    height: 100%;
    box-shadow: 0 0 2rem transparent;
    outline: none;
    transition: all 0.3s ease-in-out;
    background: var(--sub-color);
}

.p-hamburger__line {
    position: absolute;
    top: -15px;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 40px;
    height: 3px;
    background-color: var(--white-color);
    transition: inherit;
}

.p-hamburger__line::before,
.p-hamburger__line::after {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background-color: inherit;
    content: "";
    transition: inherit;
}

.p-hamburger__line::before {
    top: -11px;
}

.p-hamburger__line::after {
    top: 11px;
}

.p-hamburger[aria-expanded="true"] .p-hamburger__line {
    background-color: transparent;
}

.p-hamburger[aria-expanded="true"] .p-hamburger__line::before,
.p-hamburger[aria-expanded="true"] .p-hamburger__line::after {
    top: 0;
    background-color: var(--white-color);
}

.p-hamburger[aria-expanded="true"] .p-hamburger__line::before {
    transform: rotate(45deg);
}

.p-hamburger[aria-expanded="true"] .p-hamburger__line::after {
    transform: rotate(-45deg);
}

.u-visuallyHidden {
    position: absolute;
    white-space: nowrap;
    width: 1px;
    height: 1px;
    overflow: hidden;
    border: 0;
    padding: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    margin: -1px;
}

.p-hamburger__text {
    position: absolute;
    bottom: 2px;
    left: 50%;
    transform: translateX(-50%);
    color: var(--white-color);
    word-break: normal;
    font-weight: 700;
}

.l-header__spNavDrawerWrap {
    pointer-events: none;
    opacity: 0;
    height: 100vh;
    background-color: var(--main-color);
    top: 80px;
    right: 0;
    width: 100%;
    position: fixed;
    z-index: 5;
    transition: all 0.4s ease-out;
    color: var(--text-color);
    overflow-y: scroll;
    padding-bottom: 3rem;
}

.l-header__spNavDrawer-navWrap,
.l-header__spNavDrawer-buttonContainer{
    width: min(85%, 576px);
    margin-inline: auto;
}

.l-header__spNavDrawer {
    padding: clamp(3rem, 2.458rem + 2.41vw, 4rem) 0;
}

.l-header__spNavDrawer-navWrap{
    & .listItem{
        a{
            background: var(--white-color);
            display: inline-block;
            width: 100%;
            text-align: center;
            padding: 16px;
            font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);
        }

        &:not(:first-child){
            margin-top: clamp(0.75rem, 0.692rem + 0.26vw, 1rem);
        }
    }
}

.l-header__spNavDrawer-buttonContainer{
    margin-top: 48px;
    text-align: center;

    & .c-button{
        a{
            padding: clamp(0.875rem, 0.672rem + 0.9vw, 1.25rem);
            font-size: clamp(1rem, 0.864rem + 0.6vw, 1.25rem);
            width: 100%;
        }

        &:not(:first-child) {
            margin-top: 16px;
        }

        & .c-arrow {
            width: clamp(1.375rem, 1.104rem + 1.2vw, 1.875rem);
            height: clamp(1.375rem, 1.104rem + 1.2vw, 1.875rem);

            &::before {
                width: 8px;
                height: 8px;
            }
        }
    }

    & .c-button.join{
        & .c-arrow {
            &::before {
                border-top: solid 2px var(--accent-color);
                border-right: solid 2px var(--accent-color);
            }
        }
    }

    & .c-button.documents{
        a{
            background: var(--third-color);
        }

        & .c-arrow {
            &::before {
                border-top: solid 2px var(--third-color);
                border-right: solid 2px var(--third-color);
            }
        }
    }

    & .c-button.apply {
        a {
            background: #FADCE9;
            color: #E9559C;
            box-shadow: 4px 4px 0px 0px #E9559C;
        }

        & .c-arrow {
            color: #E9559C;
            &::before {
                border-top: solid 2px #FADCE9;
                border-right: solid 2px #FADCE9;
            }
        }
    }
}


.js-nav {
    pointer-events: auto;
    opacity: 1;
    transition: all 0.4s ease-out;
}


/* responsive　ーーーーーーーーーーーーーー */
@media screen and (max-width: 1024px) {
    & .l-header__pcWrap{
        display: none;
    }

    & .l-header__spWrap,
	.l-header__spButtonWrap{
        display: block;
    }
}

@media screen and (max-width: 576px) {
    .l-header__spWrap {
        height: 60px;
    }

    .l-header__spNavDrawerWrap{
        top: 60px;
    }

    .p-hamburger {
        width: 60px;
    }

    .p-hamburger__line {
        width: 36px;
        height: 2px;
    }

    .p-hamburger__line::before {
        top: -10px;
    }

    .p-hamburger__line::after {
        top: 10px;
    }

    .p-hamburger__text {
        font-size: 12px;
    }
}

/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
footer
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.topButton__wrap{
	position: absolute;
    top: -40px;
    right: 0;
}

.l-footer{
	position:relative;
}

.l-footer__nav{
    background: var(--third-color);
    padding: 10px 0;
}

/* nav */
.l-footer__navWrap {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);

    & .l-footer__navItem{
        margin: 4px 20px;
    }
}


/* address */
.l-footer__main {
    display: flex;
}

.l-footer__mainAccess{
    flex-basis: 65.625%;
    display: flex;
    background: var(--main-color);
    justify-content: center;
    padding: clamp(3rem, 0.714rem + 3.57vw, 5rem) 2rem;
    align-items: center;
    color: var(--white-color);
}

.mainAccess__mapImg{
    width: min(clamp(28.125rem, 17.411rem + 16.74vw, 37.5rem),100%);
}

.mainAccess__textWrap{
    padding-left: 32px;

    & .mainAccess__tel{
        margin-top: 16px;

        & .textBig{
            font-size: 160%;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 700;
        }
    }

    & .mainAccess__button{
        text-align: center;
        margin-top: 24px;
        
        a{
            border: 2px solid var(--white-color);
            width: min(300px,100%);
            display: inline-block;
            padding: 10px;
            font-family: "Noto Sans JP", sans-serif;
            font-weight: 700;
        }
    }
}

.l-footer__mainOther{
    flex-basis: calc(100% - 65.625%);
    padding: 2rem clamp(3rem, 0.714rem + 3.57vw, 5rem);
    display: flex;
    flex-direction: column;
    justify-content: center;

    & .mainOther__logo{
        width: min(100%,500px);
        margin-inline: auto;
    }

    & .mainOther__snsListWrap{
        margin-top: 80px;
    }

    & .mainOther__snsListItem{
        &:not(:first-child){
            margin-left: 8px;
        }
    }

    & .mainOther__navListWrap{
        margin-top: 80px;
    }

    & .mainOther__navListItem{
        margin-top: 10px;
        font-weight: 700;
    }

    & .copyright {
        margin-top: 80px;
        font-size: 11px;
        color: #999999;
    }
}


.mainOther__snsListWrap{
    display: flex;
    align-items: center; 
}


/* responsive　ーーーーーーーーーーーーーー */
@media screen and (max-width: 1200px) {
    .l-footer__mainAccess{
        display: block;
        padding: 2rem clamp(3rem, 0.714rem + 3.57vw, 5rem);
    }

    .mainAccess__address,.mainAccess__tel{
        width: fit-content;
        margin-inline: auto;
    }

    .mainAccess__mapImg {
        margin-inline: auto;
    }

    .mainAccess__textWrap {
        padding-left: 0;
        margin-top: 32px;
    }
}

@media screen and (max-width: 1024px){
    .l-footer__main {
        display: block;
    }

    .l-footer__mainOther {
        & .mainOther__snsListWrap {
            margin-top: 48px;
            justify-content: center;
        }

        & .mainOther__navListWrap{
            margin-top: 48px;
            width: max-content;
            margin-inline: auto;
        }

        & .copyright{
            text-align: center;
            margin-top: 48px;
        }
    }
    
}

@media screen and (max-width: 576px){
    .l-footer__nav {
        padding: 32px;
        position: relative;

        &::after {
            display: inline-block;
            content: "";
            background: url("../images/footer-bg-deco.png") no-repeat center center / contain;
            width: 40%;
            aspect-ratio: 1 / 1;
            position: absolute;
            bottom: 0;
            right: 0;
            z-index: 0;
        }
    }

    .l-footer__main,
    .l-footer__navWrap{
        position: relative;
        z-index: 1;
    }

    .l-footer__navWrap{
        display: block;
		&:not(:first-child){
			margin-top: 18px;
		}

        & .l-footer__navItem {
            margin: 0;

            &:not(:first-child){
                margin-top: 18px;
            }
        }
    }

    .l-footer__mainAccess{
        padding: 1rem 1rem 2rem;
    }

    .l-footer__mainOther{
        padding: 2rem;
    }
    
}



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
main
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
.l-main,
.l-subMain{
    margin-top: 100px;
}

/* ーーーーーーーーーーーーーーーーーーーー
common
ーーーーーーーーーーーーーーーーーーーーー */
/* maintitle */
.c-mainTitleWrap{
    background: url("../images/maintitle-bg.jpg") no-repeat center top / cover;
    position: relative;
    z-index: 1;

    & .c-mainTitleItem{
        padding: clamp(3rem, 2.25rem + 3.33vw, 6.25rem) clamp(1rem, 0.365rem + 2.82vw, 3.75rem);
        display: flex;
        flex-direction: column;
        align-items: center;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        font-style: normal;
    }

    & .c-mainTitleItem--jp{
        font-size: clamp(0.875rem, 0.788rem + 0.38vw, 1.25rem);
        background: var(--accent-color);
        text-align: center;
        padding: 4px 30px;
        color: var(--sub-color);
    }

    & .c-mainTitleItem--en{
        font-size: clamp(2.25rem, 1.731rem + 2.31vw, 4.5rem);
        color: var(--white-color);
        line-height: 1;
        letter-spacing: 0.1rem;
        padding-top: 1rem;
        padding-bottom: 1rem;
        border-bottom: 3px solid var(--accent-color);
    }
}

/* subtitle */
.c-subTitleItem{
    display: flex;
    flex-direction: column;
    align-items: center;
    position: relative;

    &::after{
        display: block;
        content: "";
        height: 4px;
        width: 40px;
        background: #000;
        margin-top: 1rem;
    }

    & .c-subTitleItem--en{
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: clamp(2rem, 1.885rem + 0.51vw, 2.5rem);
        line-height: 1;
    }

    & .c-subTitleItem--jp{
        font-size: clamp(1rem, 0.942rem + 0.26vw, 1.25rem);
        font-weight: 700;
        margin-top: 4px;
    }
}


/* arrow */
.c-arrow {
    display: inline-block;
    vertical-align: text-bottom;
    color: var(--main-color);
    position: relative;
    width: 20px;
    height: 20px;
    background: currentColor;
    border-radius: 50%;
    margin-left: 10px;
}

.c-arrow::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px var(--white-color);
    border-right: solid 2px var(--white-color);
    position: absolute;
    top: 50%;
    left: 40%;
    transform: translate(-40%,-50%) rotate(45deg);
}


/* button */
.c-button{
    a{
        background: var(--accent-color);
        display: inline-block;
        width: min(500px,100%);
        font-size: clamp(1.25rem, 1.192rem + 0.26vw, 1.5rem);
        color: var(--sub-color);
        font-weight: 700;
        padding: 20px;
        box-shadow: 4px 4px 0px 0px var(--sub-color);
        border-radius: 4px;
    }

    & .c-arrow{
        width: 30px;
        height: 30px;
        color: var(--sub-color);
        background: currentColor;

        &::before{
            width: 10px;
            height: 10px;
            border-top: solid 3px var(--accent-color);
            border-right: solid 3px var(--accent-color);
        }
    }
}



/* ーーーーーーーーーーーーーーーーーーーー
intro
ーーーーーーーーーーーーーーーーーーーーー */
/* button */
.conntactButton__wrap{
	width:clamp(11.25rem, 9.519rem + 7.69vw, 18.75rem);
	position: fixed;
    z-index: 999;
    right: 16px;
    bottom: 24px;
}

/* intro */
.intro__inner{
    background: var(--main-color);
}

.intro__img{
    width: min(1274px,95%);
    margin-inline: auto;
}

/* nav */
.intro__nav{
    padding: 32px 0;
    width: min(1274px,95%);
    margin-inline: auto;
}

.intro__navWrap{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-left: -6px;
    margin-right: -6px;
}

.intro__navItem {
    a{
        position: relative;
        background: var(--white-color);
        padding: 16px 34px 16px 16px;
        font-weight: 700;
        margin: 6px;
        cursor: pointer;
        position: relative;
        display: inline-block;
        border: 2px solid var(--white-color);

        &::after{
            content: "";
            width: 10px;
            height: 10px;
            border-top: solid 2px var(--main-color);
            border-right: solid 2px var(--main-color);
            position: absolute;
            top: 45%;
            right: 10px;
            transform: translateY(-45%) rotate(135deg);
        }
    }
}

/* nav-sp */
.intro__nav-sp{
    display: none;
}

 .intro__nav-sp,.p-tuition__nav{
	 width: max-content;
	 margin-inline: auto;
	 text-align: center;
	 padding-bottom: 30px;

	 & .c-button{
		 a{
			 font-size:clamp(1rem, 0.885rem + 0.51vw, 1.5rem);
			 padding: clamp(0.875rem, 0.672rem + 0.9vw, 1.25rem) clamp(0.625rem, 0.286rem + 1.51vw, 1.25rem);
		 }

		 & .c-arrow {
			 margin-left: clamp(0.375rem, 0.239rem + 0.6vw, 0.625rem);
			 width: clamp(1.125rem, 0.718rem + 1.81vw, 1.875rem);
			 height: clamp(1.125rem, 0.718rem + 1.81vw, 1.875rem);

			 &::before{
				 width: clamp(0.5rem, 0.432rem + 0.3vw, 0.625rem);
				 height: clamp(0.5rem, 0.432rem + 0.3vw, 0.625rem);
			 }
		 }
	 }

	 & .c-button.apply{
		 a{
			 background: #FADCE9;
			 color: #E9559C;
			 box-shadow: 4px 4px 0px 0px #E9559C;
		 }
		 & .c-arrow {
			 color: #E9559C;
			 &::before {
				 border-top: solid 2px #FADCE9;
				 border-right: solid 2px #FADCE9;
			 }
		 }
	 }

	 & .c-button.join {
		 & .c-arrow {
			 &::before {
				 border-top: solid 2px var(--accent-color);
				 border-right: solid 2px var(--accent-color);
			 }
		 }
	 }

	 & .c-button.documents {
		 a {

			 background: var(--third-color);
		 }

		 & .c-arrow {

			 &::before {
				 border-top: solid 2px var(--third-color);
				 border-right: solid 2px var(--third-color);
			 }
		 }
	 }
}

.intro__nav-spFlex {
	display: flex;
	margin-top:clamp(0.75rem, 0.692rem + 0.26vw, 1rem);

	& .c-button{
		a{
			width: 240px;
			font-size:clamp(0.875rem, 0.788rem + 0.38vw, 1.25rem);
		}

	}

	& .c-button:not(:first-of-type){
		margin-left: clamp(0.75rem, 0.614rem + 0.6vw, 1rem);
	}
}

.p-tuition__nav{
	padding-bottom:0;
}



/* ーーーーーーーーーーーーーーーーーーーー
CV
ーーーーーーーーーーーーーーーーーーーーー */
.p-cv__subWrap1{
    background: url("../images/cv-bg1.jpg") no-repeat center top / cover;
    padding: 48px 0 120px;
    clip-path: polygon(0 90%, 0 0, 100% 0, 100% 90%, 60% 90%, 50% 100%, 40% 90%);
}

.p-cv__subWrap1Inner{
    width: min(1000px,90%);
    margin-inline: auto;
}

.p-cv__subWrap1--hukidasi{
    & .flexWrap1,.flexWrap2{
        display: flex;
        align-items: center;

        img{
            width: clamp(13.75rem, 10.417rem + 6.94vw, 18.75rem);
            margin: 0 14px;
        }
    }

    & .flexWrap1{
        justify-content: center;
    }

    & .flexWrap2{
        justify-content: space-between;
        margin-top: 40px;
    }
}

.p-cv__subWrap1--icon{
    width: clamp(11.25rem, 8.167rem + 6.42vw, 15.875rem);
    margin-inline: auto;
    margin-top: -100px;
}

.p-cv__subWrap1--textWrap{
    text-align: center;
    margin-top: 48px;
    p{
        font-size: clamp(1.125rem, 1.038rem + 0.38vw, 1.5rem);
        font-weight: 700;
        font-family: "Noto Sans JP", sans-serif;
        font-style: normal;

        & .textSize{
            font-size: 133.33333%;
            color: var(--sub-color);
            background: linear-gradient(transparent 60%, var(--accent-color) 30%);
            letter-spacing: 0.1rem;
        }
    }
}

/* 2 */
.p-cv__subWrap2{
    background: url("../images/cv-bg2.jpg") no-repeat center top / cover;
    padding: 120px 0;
    margin-top: -58px;
}

.p-cv__subWrap2Inner{
    width: min(800px,90%);
    margin-inline: auto;
    display: flex;
    align-items: center;
    position: relative;

    &::before{
        content: "";
        background: url("../images/cv-deco2.png") no-repeat center / cover;
        position: absolute;
        width: clamp(3.75rem, 3.375rem + 1.67vw, 5.375rem);
        aspect-ratio: 1 / 1;
        top: -72px;
        right: clamp(-72px, calc(-30px + (-42 * ((100vw - 768px) / (1920 - 768)))), -30px);
    }

    &::after{
        content: "";
        background: url("../images/cv-deco3.png") no-repeat center / cover;
        position: absolute;
        width: clamp(2.5rem, 2.284rem + 0.96vw, 3.438rem);
        aspect-ratio: 1 / 1;
        left: clamp(-40px, calc(-10px + (-30 * ((100vw - 768px) / (1920 - 768)))), -10px);
        bottom: -40px;
    }
}

.p-cv__subWrap2--imgWrap{
    flex-basis: clamp(9.375rem, 8.042rem + 2.78vw, 11.375rem);
}

.p-cv__subWrap2--textWrap{
    flex-basis: calc(100% - clamp(9.375rem, 8.042rem + 2.78vw, 11.375rem));
    text-align: center;
    & .textImg{
        width: min(700px,100%);
        margin-inline: auto;
    }

    & .text{
        font-size: clamp(1.125rem, 1.038rem + 0.38vw, 1.5rem);
        font-weight: 700;
        font-family: "Noto Sans JP", sans-serif;
        font-style: normal;
        margin-top: 24px;
        color: var(--sub-color);

        span{
            display: inline-block;
            line-height: 1;
        }

        & .textBg{
            font-size: 166.6666%;
            background: var(--accent-color);
            color: var(--sub-color);
            padding: 10px 10px 14px;
            margin-left: 10px;

            & .textSize{
                font-size: 160%;
                font-weight: 900;
                letter-spacing: 0.25rem;
            }
        }
    }
}



/* ーーーーーーーーーーーーーーーーーーーー
ABOUT
ーーーーーーーーーーーーーーーーーーーーー */
.p-about{
	padding: 48px 0 0;
}

.p-about__inner{
	width: min(90%,800px);
    margin-inline: auto;
}

.p-about__textWrap{
	text-align:center;
	margin-top: 32px;
}

.p-about__imgWrap{
	margin-top: 32px;
}

/* ーーーーーーーーーーーーーーーーーーーー
CURRICULUM , SCHEDULE
ーーーーーーーーーーーーーーーーーーーーー */
.p-curriculum__subWrap1{
    background: url("../images/strong-bg.jpg") no-repeat center top / cover;
    padding: 48px 0;
}

.p-curriculum__subWrap1Inner{
    width: min(90%,1000px);
    margin-inline: auto;
}

.p-schedule__subWrap1{
    background: url("../images/strong-bg-l.jpg") no-repeat center top / cover;
    padding: 48px 0;
}

.p-schedule__subWrap1Inner{
    background: var(--white-color);
    width: min(90%,1000px);
    margin-inline: auto;
    padding: clamp(1rem, 0.538rem + 2.05vw, 3rem);
}

.p-schedule__subWrap1Inner--title{
    font-size: clamp(1.125rem, 0.981rem + 0.64vw, 1.75rem);
    font-weight: 700;
    line-height: 1.5;
    color: var(--text-color);
	padding-left: clamp(0.875rem, 0.788rem + 0.38vw, 1.25rem);
	position: relative;
    height: 100%;
	
	&::before{
		display: block;
		content: "";
		height: 100%;
		width: clamp(0.375rem, 0.346rem + 0.13vw, 0.5rem);
		background: linear-gradient(#5BB5E7, #0062B1);
		position: absolute;
		left: 0;
	}
}

.p-schedule__subWrap1Inner--imgWrap{
	margin-top: 18px;
}


.p-schedule__subWrap1Item:not(:first-child) {
    margin-top: 48px;
}




/* ーーーーーーーーーーーーーーーーーーーー
STRONG POINT
ーーーーーーーーーーーーーーーーーーーーー */
/* 1 */
.p-strong__subWrap1{
    background: url("../images/strong-bg.jpg") no-repeat center top / cover;
    padding: 48px 0;
}

.p-strong__subWrap1Inner{
    width: min(95%,1000px);
    margin-inline: auto;

    & .attention{
        font-size: 12px;
    }
}

.p-strong__subWrap1TitleWrap{
    text-align: center;
}

.p-strong__subWrap1Title{
    text-align: center;
    font-size: clamp(1.25rem, 1.135rem + 0.51vw, 1.75rem);
    font-weight: 700;
    display: inline-block;
    position: relative;
    padding: 0 40px;

    &::before, &::after {
        display: block;
        content: "";
        aspect-ratio: 30 / 35;
        width: 28px;
        position: absolute;
        top: 50%;
        transform: translateY(-50%);
        
    }

    &::before {
        background: url("../images/title-deco-l.png") no-repeat center center / contain;
        left: -4px;
    }

    &::after {
        background: url("../images/title-deco-r.png") no-repeat center center / contain;
        right: -4px;
    }
}

.p-strong__subWrapList{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 32px;
}

.p-strong__subWrapListItem{
    width: clamp(14.375rem, 13.365rem + 4.49vw, 18.75rem);
    min-height: clamp(8.125rem, 7.346rem + 3.46vw, 11.5rem);
    background: var(--main-color);
    color: var(--white-color);
    margin: clamp(1.25rem, 1.192rem + 0.26vw, 1.5rem) clamp(0.25rem, 0.135rem + 0.51vw, 0.75rem);
    font-size: clamp(0.813rem, 0.712rem + 0.45vw, 1.25rem);
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
	cursor:pointer;
	border:2px solid var(--main-color);

    & .text {
        margin-bottom: -14px;
    }

    & .textBig{
        font-size: 150%;
        line-height: 1;
        font-weight: 700;
    }

    & .number{
        position: absolute;
        background: var(--accent-color);
        color: var(--sub-color);
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        font-style: normal;
        width: clamp(3.125rem, 2.981rem + 0.64vw, 3.75rem);
        height: clamp(3.125rem, 2.981rem + 0.64vw, 3.75rem);
        line-height: clamp(3.125rem, 2.981rem + 0.64vw, 3.75rem);
        border-radius: 50%;
        font-size: clamp(1.5rem, 1.385rem + 0.51vw, 2rem);
        top: -32px;
    }
}

/* 2 */
.p-strong__subWrap2{
    background: var(--bg-color);
    padding: clamp(2rem, 1.538rem + 2.05vw, 4rem) 0 clamp(4rem, 3.481rem + 2.31vw, 6.25rem);
}

.c-strongPointWrap{
    width: min(1000px,90%);
    margin-inline: auto;

    &:not(:first-child){
        margin-top: clamp(4rem, 3.481rem + 2.31vw, 6.25rem);
    }

    & .point{
		span{
			background: var(--sub-color);
			color: var(--white-color);
			width: fit-content;
			padding: 4px 10px;
			font-size: 16px;
			font-weight:700;
			margin: 2px 0;
			display:inline-block;
		}
        
    }

    & .title{
        font-size: clamp(1.125rem, 0.981rem + 0.64vw, 1.75rem);
        font-weight: 700;
        line-height: 1.5;
        margin-top: 16px;

        & .textSize{
            font-size: 120%;
            color: var(--sub-color);
			
			& .textSize{
				font-size:60%;
			}
        }
    }

    & .text{
        & .textBold{
            font-weight: 900;
            font-size: 120%;
        }
    }

    & .flexWrap{
        display: flex;
        align-items: center;

        & .textWrap{
            flex-basis: 55%;

            & .text{
                margin-top: 24px;
                font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);
            }

            & .attention{
                margin-top: clamp(1rem, 0.885rem + 0.51vw, 1.5rem); 
                font-size: 14px;
            }
        }

        & .imgWrap{
            flex-basis: calc(100% - 55%);
            padding-left: 24px;
        }
    }

    & .tableImgWrap{
        margin-top: 32px;

        & .tableImgWrap--title{
            background: var(--sub-color);
            color: var(--white-color);
            text-align: center;
            padding: 10px;
            font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);
        }
    }

    & .listWrap{
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
        grid-gap: 32px;
        background: var(--white-color);
        padding: 20px;
        margin-top: 32px;

        img{
            margin-top: 6px;
        }

        & .titleWrap{
            display: flex;
            align-items: center;
            justify-content: center;

            & .number{
                flex-basis: clamp(2.625rem, 2.365rem + 1.15vw, 3.75rem);
            }

            & .title{
                width: fit-content;
                font-size: clamp(1rem, 0.942rem + 0.26vw, 1.25rem);
                color: var(--sub-color);
                margin-top: 0;
                text-align: center;
                padding-left: 16px;
            }
            
        }
    }
}

.p-strong__subWrap2Point5{
    & .textWrap{
        background: var(--white-color);
        margin-top: 32px;
        padding: clamp(1.25rem, 1.077rem + 0.77vw, 2rem);
        box-shadow: 0px 0px 12px 0px #c9c9c9;
    }

    & .textWrap--subTitle{
        background: var(--main-color);
        color: var(--white-color);
        width: fit-content;
        margin-inline: auto;
        padding: 4px 10px;
    }

    & .textWrap--title{
        display: flex;
        align-items: end;
        justify-content: center;
        line-height: 1.5;
        margin-top: 16px;
        
        p{
            font-size: clamp(1.375rem, 1.029rem + 1.54vw, 2.875rem);
            font-weight: 700;
            color: var(--main-color);
        }

        img{
            width: clamp(3.125rem, 2.49rem + 2.82vw, 5.875rem);
            margin: 0 4px;
        }
    }

    & .textWrap--img{
        margin-top: 24px;
    }
}


.p-strong__subWrap2Point4{
    & .imgWrap--img{
        width: min(100%,756px);
        margin-inline: auto;
        margin-top: 32px;
    }
}




/* ーーーーーーーーーーーーーーーーーーーー
TUITION INFO
ーーーーーーーーーーーーーーーーーーーーー */
.p-tuition__subWrap{
    background: url("../images/tuition-bg.jpg") repeat center top;
    padding: 32px 0 0;
}

/* 共通 */
.p-tuition__priceWrap1,.p-tuition__priceWrap2{
    width: min(940px,90%);
    margin-inline: auto;
}

.p-tuition__priceTitle{
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 700;
	width: fit-content;
    margin-inline: auto;
    text-align: center;
    background: var(--sub-color);
    color: var(--white-color);
	padding: 16px;
	font-size:clamp(1.25rem, 1.106rem + 0.64vw, 1.875rem);
	
	& .textSize{
		font-size:80%;
		display: block;
	}
}


/* 受講料について */
.p-tuition__priceWrap1{
    & .p-tuition__priceDetail{
        background: var(--white-color);
        margin-top: 32px;
        text-align: center;
        padding: clamp(2rem, 1.538rem + 2.05vw, 4rem) 1rem;
        width: min(742px,100%);
        margin-inline: auto;
        border-radius: 10px;
        box-shadow: 2px 2px 1px 0px rgba(0, 0, 0, 0.1);
        line-height: 1;
    }

    & .p-tuition__priceDetail--title{
        font-size: clamp(1.25rem, 1.077rem + 0.77vw, 2rem);
        color: var(--main-color);
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        font-style: normal;
        font-weight: 700;
        position: relative;
        padding: 0 40px;
        display: inline-block;

        &::before,&::after{
            display: block;
            content: "";
            aspect-ratio: 30 / 35;
            width: 28px;
            position: absolute;
            top: 50%;
            transform: translateY(-50%);
        }

        &::before{
            background: url("../images/title-deco-l.png") no-repeat center center / contain;
            left: -4px;
        }

        &::after{
            background: url("../images/title-deco-r.png") no-repeat center center / contain;
            right: -4px;
        }

        span{
            font-size: 50%;
            margin-top: 16px;
            display: inline-block;
        }
    }

    & .p-tuition__priceDetail--price1{
        margin-top: 48px;
        font-size: 24px;
        font-weight: 700;
        
        span{
            font-size: 60%;
            margin-top: 8px;
            display: inline-block;
        }
    }


    & .p-tuition__priceDetail--price2{
        margin-top: 24px;
        font-size: 20px;
        font-weight: 700;

        & .textBig{
            font-family: "Roboto", sans-serif;
            font-optical-sizing: auto;
            font-size: clamp(3.125rem, 2.923rem + 0.9vw, 4rem);
            color: var(--sub-color);
            margin-left: clamp(1rem, 0.769rem + 1.03vw, 2rem);
        }

        & .textSmall{
            font-size: 14px;
            font-weight: 500;
        }
    }

    .p-tuition__priceDetail--attention{
        margin-top: 32px;
        font-weight: 700;
        color: var(--main-color);
        background: var(--accent-color);
        padding: 8px 10px;
        width: fit-content;
        margin-inline: auto;
        line-height: 1.5;
    }
}


/* お支払いについて */
.p-tuition__priceWrap2{
    margin-top: clamp(2rem, 1.538rem + 2.05vw, 4rem);
	
	& .p-tuition__priceTitle{
		background: var(--white-color);
		color: var(--sub-color);
		border: 2px solid var(--sub-color);
		width: min(400px, 100%);
		padding: 4px 16px;
	}

    & .p-tuition__priceText{
        margin-top: 32px;
        text-align: center;
        font-weight: 700;
        font-size: clamp(1rem, 0.971rem + 0.13vw, 1.125rem);
    }

    & .p-tuition__priceDetail{
        margin-top: clamp(1.5rem, 1.385rem + 0.51vw, 2rem);

        & .p-tuition__priceDetail--titleWrap{
            background: var(--main-color);
            text-align: center;
            padding: 4px;
        }

        & .p-tuition__priceDetail--titleItem{
            color: var(--white-color);
            font-size: 20px;
            font-weight: 700;
        }

        & .p-tuition__priceDetail--textWrap{
            background: var(--third-color);
            text-align: center;
            padding: 32px 1rem;
            font-size: clamp(0.875rem, 0.817rem + 0.26vw, 1.125rem);

            & .listWrap{
                display: grid;
                grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
                grid-gap: 16px;
                margin-top: 32px;
                width: min(790px,100%);
                margin-inline: auto;

                & .listItem{
                    color: var(--main-color);
                    background: var(--accent-color);
                    font-weight: 700;
                    font-size: clamp(1.125rem, 1.096rem + 0.13vw, 1.25rem);
                    font-family: "Noto Sans JP", sans-serif;
                    line-height: 1.25;
                    padding: 20px;
                    border-radius: 10px;
                }
            }

            & .attention{
                font-size: 14px;
                margin-top: 32px;
            }
        }
    }
}

/* CV */
.p-tuition__cv{
    position: relative;
    text-align: center;
    padding-bottom: 40px;
    margin-top: 120px;

    &::after{
        background: url("../images/tuition-cv-bg.png");
        display: block;
        content: "";
        position: absolute;
        width: 100%;
        height: 400px;
        z-index: 0;
        top: -54px;
        background-size: 100% 100%;
        background-position: center;
    }
}

.p-tuition__cvTitle{
    font-size: clamp(1.5rem, 1.442rem + 0.26vw, 1.75rem);
    font-weight: 700;
    color: var(--white-color);
}

.p-tuition__nav{
	margin-top:30px;
}

.p-tuition__cvTitle,.p-tuition__nav{
    position: relative;
    z-index: 1;
}


/* ーーーーーーーーーーーーーーーーーーーー
INSTRUCTORS
ーーーーーーーーーーーーーーーーーーーーー */
.p-instructors{
    background: var(--bg-color);
}

.p-instructors__subWrap{
    padding: clamp(3rem, 2.712rem + 1.28vw, 4.25rem) 0 120px;
    width: min(90%,1000px);
    margin-inline: auto;
}

.p-instructors__subTitleItem{
    font-size: clamp(1.25rem, 1.192rem + 0.26vw, 1.5rem);
    font-weight: 700;
    text-align: center;
}


/* slide ーーーーーーーーーーーーーーーーーーーー */
.p-instructors__listWrap{
   margin-top: 50px;
}

.p-instructors__listItem{
    background: var(--white-color);
    padding: 30px;
    box-shadow: 0px 4px 7px -4px #838383;
    margin-bottom: 30px;
}

.p-instructors__listItem--flexWrap{
    display: flex;
    align-items: center;
}

.p-instructors__listItem--modalWrap,
.p-instructors__listItem--flexWrap1{
    & .nameWrap{
        margin-top: 20px;
    }

    & .nameItem--en{
        font-size: 14px;
    }

    & .nameItem--jp{
        font-size: clamp(1.5rem, 1.356rem + 0.64vw, 2.125rem);
        line-height: 1;
        margin-top: 4px;
    }
}

.p-instructors__listItem--flexWrap1{
    flex-basis: 38.298%;
}

.p-instructors__listItem--flexWrap2,
.p-instructors__listItem--modalWrap{
    & .careerWrap{
        font-size: clamp(0.813rem, 0.798rem + 0.06vw, 0.875rem);
        background: var(--third-color);
        padding: 20px;
        margin-top: 40px;
    }

}

.p-instructors__listItem--flexWrap2{
    flex-basis: calc(100% - 38.298%);
    padding-left: 30px;
    font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);
	
	& .nameItem--en{
        font-size: 14px;
    }

    & .nameItem--jp{
        font-size: clamp(1.5rem, 1.356rem + 0.64vw, 2.125rem);
        line-height: 1;
        margin-top: 4px;
    }
	
	& .textWrap{
		margin-top: 24px;
	}
}


.p-instructors__listItem--modalWrap{
    & .textWrap{
        font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);
        padding-top: 30px;
        text-align: left;
    }

    & .careerWrap{
        text-align: left;
    }
}

.js-showmore{
    display: none;
    position: absolute;
    bottom: 32px;
    left: -10px;
    width: 100%;
    padding-top: 60px;
    text-align: center;
    line-height: 30px;
    background: linear-gradient(180deg, rgb(255, 255, 255, 0) 0%, rgb(255, 255, 255, 1) 40%);
    cursor: pointer;

    & .js-showmore--text{
        text-align: center;
        font-size: clamp(1rem, 0.729rem + 1.2vw, 1.5rem);
        font-weight: 700;
        color: var(--main-color);
        position: relative;
        display: inline-block;

        &::after{
            content: "";
            display: inline-block;
            background: url("../images/glass.png") no-repeat center center / contain;
            aspect-ratio: 1 / 1;
            position: absolute;
            width: 15px;
            top: 5px;
            right: -24px;
        }
    } 
}

/* slick */
.slick-track{
    display: flex;
}

.p-instructors__listItem.slick-slide{
    height: auto!important;
    display: flex;
}

/* slick dots */
.slick-dots{
	bottom:-50px;
	text-align: left;
}

.slick-dots li {
	margin: 0; 
	width: 60px;
	height: 5px;
    border-radius: 999vw;
    margin: 0 8px;
}

.slick-dots li button:before {
	content:'';
	width: 64px;
	height: 10px;
	background: var(--third-color);
	opacity: 1;
    border-radius: 999px;
}

.slick-dots li.slick-active button:before{
  background: var(--sub-color);
}

/* slick arrow */
[class*="carousel__arrow--"]{
    position: absolute;
    bottom: -70px;
    right: 0;
    width: 28px;
    aspect-ratio: 7 / 11;
    z-index: 2;
}

.carousel__arrow--prev{
    background: url("../images/slide-arrow-l.png") no-repeat center center / contain;
    right: 80px;
}

.carousel__arrow--next{
    background: url("../images/slide-arrow-r.png") no-repeat center center / contain;
}


/* remodal */
.remodal-close {
    top: 0;
    left: inherit;
    right: 0;
    color: var(--text-color);

    &::before{
        font-size: 55px;
    }
}

.remodal {
    max-width: 700px;
    width: 90%;
    padding: clamp(1rem, 0.798rem + 0.9vw, 1.875rem);
}


/* ーーーーーーーーーーーーーーーーーーーー
SUCCESS STORY
ーーーーーーーーーーーーーーーーーーーーー */
.p-successTitleWrap{
    background: url("../images/successtitle-bg.jpg") no-repeat center top / cover;
    padding: clamp(3rem, 2.538rem + 2.05vw, 5rem) 0;

    & .p-successTitleItem{
        display: flex;
        flex-direction: column;
        align-items: center;
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        font-style: normal;
        background-image: linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0.9) 50%, rgba(255, 255, 255, 0));
        padding: 24px 0;
        letter-spacing: 0.1rem;
    }

    & .p-successTitleItem--jp{
        font-size: clamp(1.5rem, 1.154rem + 1.54vw, 3rem);
        color: #E9559C;
		text-align:center;
    }

    & .p-successTitleItem--en{
        font-size: clamp(0.75rem, 0.635rem + 0.51vw, 1.25rem);
        color: #E9559C;
        letter-spacing: 0.25rem;
    }
}

.p-success__contentsWrap{
    background: url(../images/story-bg.jpg) no-repeat center top / cover;
    padding: clamp(4rem, 3.481rem + 2.31vw, 6.25rem) 0 0;
}

.p-success__listWrap{
    width: min(90%,1080px);
    margin-inline: auto;
}

.p-success__listItem{
    background: var(--white-color);
    padding: clamp(1.5rem, 1.154rem + 1.54vw, 3rem) clamp(1rem, 0.769rem + 1.03vw, 2rem);

    &:not(:first-child){
        margin-top: clamp(2rem, 1.769rem + 1.03vw, 3rem);
    }
}

.p-success__listTitle{
    font-family: "Noto Sans JP", sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;

    span{
        display: block;
    }

    & .number{
        background: #E9559C;
        color: var(--white-color);
        line-height: 1;
        padding: 4px 8px 8px;
        font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);
        width: fit-content;
    }

    & .title{
        font-size: clamp(1.25rem, 1.019rem + 1.03vw, 2.25rem);
        color: #E9559C;
        font-weight: 700;
        padding-left: 16px;
    }
}


.p-success__listFlexWrap {
    display: flex;
    margin-top: 24px;
}

.p-success__listFlex--imgWrap{
    flex-basis: 40%;
	
	& .nameWrap{
		font-size: clamp(1rem, 0.885rem + 0.51vw, 1.5rem);
		font-weight: 700;
		margin-top: 14px;

		& .title,.yomigana{
			font-size: 75%;
		}
		
		& .affiliation{
            font-size: 14px;
			font-weight: 500;
        }

	}


}

.p-success__listFlex--textWrap{
    flex-basis: calc(100% - 40%);
    padding-left: 32px;

    & .title{
        font-weight: 700;
        font-size: clamp(1.125rem, 1.038rem + 0.38vw, 1.5rem);
        line-height: 1.5;
    }

    & .text{
        margin-top: 16px;
        font-size: clamp(0.875rem, 0.846rem + 0.13vw, 1rem);
    }
}


/* ーーーーーーーーーーーーーーーーーーーー
EVENT
ーーーーーーーーーーーーーーーーーーーーー */
.p-event{
    background: url(../images/event-bg.jpg) no-repeat center top / cover;
    padding: clamp(4rem, 3.481rem + 2.31vw, 6.25rem) 0;
    position: relative;
    z-index: 1;
}

.p-event__inner{
    width: min(90%,1066px);
    margin-inline: auto;
}

.p-event__titleWrap{
    width: min(507px,100%);
    margin-inline: auto;
    transform: translateX(clamp(-30px, calc(-0.01410256vw - 2.935px), -8px));
}

.p-event__subTitleWrap{
    width: fit-content;
    margin-inline: auto;
    background:linear-gradient(transparent 50%, var(--accent-color) 50%);
    font-size: clamp(1.125rem, 1.038rem + 0.38vw, 1.5rem);
    font-weight: 700;
    margin-top: 32px;
}

.p-event__textWrap{
    text-align: center;
    margin-top: 32px;
    font-size: clamp(1rem, 0.971rem + 0.13vw, 1.125rem);
    font-weight: 700;
}

.p-event__listWrap {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
    gap:27px;
    padding: clamp(1.25rem, 0.962rem + 1.28vw, 2.5rem);
    border: 1px solid var(--sub-color);
    border-radius: 30px;
    margin-top: 24px;
}


.p-event__listItem{
    & .title{
        font-size: clamp(1.125rem, 1.038rem + 0.38vw, 1.5rem);
        color: var(--sub-color);
        font-weight: 700;
        text-align: center;
        min-height: 83px;
        display: flex;
        align-items: center;
        justify-content: end;
        flex-direction: column;
        padding-top: 6px;
        padding-bottom:6px;
        line-height: 1.5;
    }

    & .text{
        margin-top: 8px;
    }

    &:first-child{
        & .title{
            border-bottom: 2px solid #AACE36;
        }
    }

    &:nth-child(2){
        & .title{
            border-bottom: 2px solid #FABE00;
        }
    }

    &:last-child{
        & .title{
            border-bottom: 2px solid #F19EC2;
        }
    }
}

.p-event__buttonWrap{
    text-align: center;
    margin-top: 32px;
	width: clamp(20.75rem, 18.385rem + 10.51vw, 31rem);
	margin-inline: auto;
	
	& .c-button.join{
		a{
			padding: clamp(0.875rem, 0.672rem + 0.9vw, 1.25rem) clamp(0.625rem, 0.286rem + 1.51vw, 1.25rem);
			font-size:clamp(1rem, 0.885rem + 0.51vw, 1.5rem);
			& .c-arrow {
				margin-left: clamp(0.375rem, 0.239rem + 0.6vw, 0.625rem);
				width: clamp(1.125rem, 0.718rem + 1.81vw, 1.875rem);
				height: clamp(1.125rem, 0.718rem + 1.81vw, 1.875rem);
				
				&::before {
					width: clamp(0.5rem, 0.432rem + 0.3vw, 0.625rem);
					height: clamp(0.5rem, 0.432rem + 0.3vw, 0.625rem);
					border-top: solid 2px var(--accent-color);
					border-right: solid 2px var(--accent-color);
            	}
			}
		}
	}
}


/* ーーーーーーーーーーーーーーーーーーーー
FAQ
ーーーーーーーーーーーーーーーーーーーーー */
.p-faq{
    background: url("../images/faq-bg.jpg") repeat center top;
    padding: clamp(3rem, 2.538rem + 2.05vw, 5rem) 0 0;

    & .c-subTitleItem{
        color: #E9559C;

        &::after{
            background: #E9559C;
        }
    }
}

.p-faq__inner{
    width: min(90%,960px);
    margin-inline: auto;
}

.p-faq__tabWrap{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 32px;
    margin-left: -6px;
    margin-right: -6px;
}

.p-faq__tabItem{
    background: var(--white-color);
    padding: clamp(0.875rem, 0.788rem + 0.38vw, 1.25rem) clamp(2.125rem, 2.024rem + 0.45vw, 2.563rem) clamp(0.875rem, 0.788rem + 0.38vw, 1.25rem) clamp(0.875rem, 0.788rem + 0.38vw, 1.25rem);
    font-weight: 700;
    margin:6px;
    cursor: pointer;
    position: relative;

    &::after{
        content: "";
        width: 10px;
        height: 10px;
        border-top: solid 2px #E9559C;
        border-right: solid 2px #E9559C;
        position: absolute;
        top: 45%;
        right: 14px;
        transform: translateY(-45%) rotate(135deg);
    }
}

.p-faq__listWrap{
    margin-top: 32px;
    display: none;
}

.p-faq__listItem{
    background: var(--white-color);
    border-radius: 4px;
    box-shadow: 0px 5px 0px 0px #fea1ce;

    &:not(:first-child){
        margin-top: 24px;
    }
}

.p-faq__listItem--title{
    font-size: clamp(1rem, 0.942rem + 0.26vw, 1.25rem);
    padding: clamp(1rem, 0.798rem + 0.9vw, 1.875rem) clamp(2.75rem, 2.462rem + 1.28vw, 4rem) clamp(1rem, 0.798rem + 0.9vw, 1.875rem) clamp(1rem, 0.798rem + 0.9vw, 1.875rem);
    display: flex;
    align-items: center;
    position: relative;
    cursor: pointer;

    &::after{
        content: "";
        display: inline-block;
        height: calc(20px / 2);
        width: 20px;
        clip-path: polygon(0 0, 100% 0, 50% 100%);
        position: absolute;
        top: 45%;
        right: clamp(0.75rem, 0.577rem + 0.77vw, 1.5rem);
        transform: translateY(-45%);
        background-color: #E9559C;
    }

    & .q{
        background: #E9559C;
        color: var(--white-color);
        font-family: "Noto Sans JP", sans-serif;
        font-weight: 700;
        font-style: normal;
        font-size: 24px;
        line-height: 1;
        padding: 5px 10px 10px;
        flex-basis: 40px;
        border-radius: 4px;
    }
    
    & .text{
        width: fit-content;
        flex-basis: calc(100% - 40px);
        padding-left: clamp(1rem, 0.885rem + 0.51vw, 1.5rem);
    }
    
}

.p-faq__listItem--text{
    padding: 0 clamp(1rem, 0.798rem + 0.9vw, 1.875rem);
   
    & .text{
        border-top: 1px solid #DDDDDD;
        padding: clamp(1rem, 0.798rem + 0.9vw, 1.875rem) 0;
    }
}


/* active / open */
.p-faq__tabItem.active{
    background: #E9559C;
    color: var(--white-color);

    &::after{
        border-top: solid 2px var(--white-color);
        border-right: solid 2px var(--white-color);
    }
}

.p-faq__listWrap.active{
    display: block;
}

.p-faq__listItem--title.open{
    &::after{
        clip-path: polygon(50% 0, 100% 100%, 0 100%);
    }
}


/* ーーーーーーーーーーーーーーーーーーーー
NEWS
ーーーーーーーーーーーーーーーーーーーーー */
.p-news{
    padding: clamp(3rem, 2.538rem + 2.05vw, 5rem) 0;
    position: relative;
    z-index: 1;
    background: #F7FEFF;
	

    & .c-subTitleItem{
        color: var(--main-color);

        &::after{
            background: var(--main-color);
        }
    }
}

.p-news__inner{
    width: min(90%,800px);
    margin-inline: auto;
}

.p-news__listWrap{
    margin-top: clamp(2rem, 1.769rem + 1.03vw, 3rem);
}

.p-news__listItem{
    font-weight: 700;

    &:not(:first-child){
        margin-top: 24px;
    }
    a{
        display: flex;
        align-items: center;
    }
}

.p-news__listItem--date{
    color: var(--main-color);
    flex-basis: 150px;
}

.p-news__listItem--title{
   flex-basis: calc(100% - 150px);
}

.p-news__button{
    text-align: right;
    margin-top: 48px;
    font-weight: 700;
}


/* ーーーーーーーーーーーーーーーーーーーー
responsive
ーーーーーーーーーーーーーーーーーーーーー */
@media screen and (max-width: 1024px) {
    .l-main, .l-subMain {
        margin-top: 80px;
    }

/* ーーーーーーーーーー
intro
ーーーーーーーーーー */
	.conntactButton__wrap{
		display:none;
	}
	
    .intro__nav{
        display: none;
    }
	
	.intro__nav-sp{
        display: block;
    }

/* ーーーーーーーーーー
CV
ーーーーーーーーーー */
    /* 2 */
    .p-cv__subWrap2{
        background: url("../images/cv-bg2-tb.jpg") no-repeat center top / cover;
    }


/* ーーーーーーーーーー
INSTRUCTORS
ーーーーーーーーーー */
    .p-instructors__listItem--flexWrap{
        align-items: center;
    }

/* ーーーーーーーーーー
CV
ーーーーーーーーーー */
    .p-tuition__cv {
        &::after {
            background-size: cover;
        }
    }
}

@media screen and (max-width: 768px) {
    .intro__img {
        width: min(748px, 100%);
    }

/* ーーーーーーーーーー
CV
ーーーーーーーーーー */
    .p-cv__subWrap1--icon{
        margin-top: 24px;
        width:clamp(12.5rem, 3.125rem + 26.04vw, 15.625rem);
    }

    .p-cv__subWrap1--hukidasi {
        & .flexWrap1, & .flexWrap2 {
            img {
                width: clamp(14.375rem, 1.25rem + 36.46vw, 18.75rem);
                margin: 0 14px;
            }
        }
    }

    .p-cv__subWrap1 {
        clip-path: polygon(0 90%, 0 0, 100% 0, 100% 90%, 70% 90%, 50% 100%, 30% 90%);
    }

    .p-cv__subWrap2{
        margin-top: -70px;
        padding: 120px 0 clamp(4rem, 3.118rem + 3.92vw, 5rem);
    }

    .p-cv__subWrap2Inner{
        display: block;

        &::after{
            left: 0;
        }

        &::before{
            right: 0;
        }
    }

    .p-cv__subWrap2--imgWrap{
        width: clamp(6.25rem, 3.493rem + 12.25vw, 9.375rem);
        margin-inline: auto;
        margin-top: clamp(1rem, 0.118rem + 3.92vw, 2rem);
    }

/* ーーーーーーーーーー
STRONG POINT
ーーーーーーーーーー */
    .p-strong__subWrap1{
        & .attention{
            text-align: center;
        }
    }

    .c-strongPointWrap {
        & .flexWrap {
            display: block;

            & .imgWrap{
                padding-left: 0;
                margin-top: 16px;
                width: min(360px,100%);
                margin-inline: auto;
            }
        }
    }


    .p-strong__subWrap2Point5{
        & .textWrap--img{
            img{
                margin-top: 24px;
            }
        }
    }


/* ーーーーーーーーーー
SUCCESS
ーーーーーーーーーー */
    .p-success__listFlexWrap,
    .p-success__listTitle{
        display: block;
    }

    .p-success__listFlex--textWrap{
        padding-left: 0;
        margin-top: 16px;
    }

    .p-success__listTitle {
        & .title {
            padding-left: 0;
            margin-top: 4px;
        }
    }
    

/* ーーーーーーーーーー
INSTRUCTORS
ーーーーーーーーーー */
    .p-instructors__listItem {
        padding: clamp(1rem, 0.798rem + 0.9vw, 1.875rem) clamp(1rem, 0.798rem + 0.9vw, 1.875rem) 64px;
        position: relative;
    }

    .p-instructors__listItem--flexWrap{
        display: block;
    }

    .p-instructors__listItem--flexWrap1,
    .p-instructors__listItem--modalWrap{
        & .imgWrap{
            img{
                aspect-ratio: 3 / 3;
                object-fit: cover;
                object-position: top;
            }
        }

        & .nameWrap{
            text-align: center;
        }
    }

    .p-instructors__listItem--flexWrap2{
        padding-left: 0;
        padding-top: 30px;
        height: 200px;
        overflow: hidden;
        transition: all 0.2s ease-in-out;
    }

    .js-showmore{
        display: block;
    }

    /* slick */
    .slick-dots {
        bottom: -32px;
        text-align: center;
    }

    /* dots */
    .slick-dots li button:before,
    .slick-dots li {
        width: 38px;
        height: 8px;
        margin: 0 4px;
    }

    /* arrow */
    [class*="carousel__arrow--"] {
        bottom: -80px;
        width: 20px;
    }
    
    .carousel__arrow--prev {
        left: calc(50% - 50px);
    }

    .carousel__arrow--next{
        right: calc(50% - 50px);
    }

    

/* ーーーーーーーーーー
FAQ
ーーーーーーーーーー */
    .p-faq__tabWrap {
        display: block;
        margin-left: 0;
        margin-right: 0;
    }

    .p-faq__tabItem{
        margin: 0;
        text-align: center;

        &:not(:first-child){
            margin-top: 10px;
        }
    }

/* ーーーーーーーーーー
NEWS
ーーーーーーーーーー */
    .p-news__listItem {
        a {
            display: block;
        }
    }

    .p-news__listItem--title{
        margin-top: 4px;
    }
}


@media screen and (max-width: 576px) {
    .l-main, .l-subMain {
        margin-top: 60px;
    }
	
	.intro__nav-spFlex {
		& .c-button {
			a {
				width: clamp(10rem, 5.833rem + 18.52vw, 12.5rem);
			}
		}
	}

/* ーーーーーーーーーー
CV
ーーーーーーーーーー */
    .p-cv__subWrap1--hukidasi {
        & .flexWrap1, .flexWrap2 {
            flex-direction: column;

            div{
                width: 100%;
            }

            & div:not(:first-of-type){
                margin-top: 16px;
                text-align: right;
            }
        }

        & .flexWrap2{
            margin-top: 16px;
        }

    }

    .p-cv__subWrap1--textWrap{
        margin-top: 24px;
    }

    .p-cv__subWrap1 {
        clip-path: polygon(0 95%, 0 0, 100% 0, 100% 95%, 70% 95%, 50% 100%, 30% 95%);
        padding: 48px 0 100px;
    }

    .p-cv__subWrap2{
        background: url("../images/cv-bg2-sp.jpg") no-repeat center top / cover;
    }

    .p-cv__subWrap2--textWrap {
        & .text {
            margin-top: 10px;
            & .textBg {
                font-size: 130%;
            }
        }
    }
	
	
/* ーーーーーーーーーー
ABOUT
ーーーーーーーーーー */
	.p-about__imgWrap{
		overflow-y: scroll;
		
		img{
			width: 600px;
		}
	}



/* ーーーーーーーーーー
CURRICULUM
ーーーーーーーーーー */
    .p-curriculum__subWrap1Inner{
        & .img{
            
            overflow-y: scroll;

            img{
                width: 600px;
            }
        }
    }

    .tableImgWrap--img{
        overflow-y: scroll;

        img{
            width: 600px;
        }
    }

    .p-schedule__subWrap1Inner--flexWrap{
        display: block;

        img:not(:first-child){
            margin-top: 24px;
        }
    }

    .p-schedule__subWrap1Inner--imgWrap{
        overflow-y: scroll;
        img{
            width: 600px;
        }
    }

/* ーーーーーーーーーー
EVENT
ーーーーーーーーーー */
    .p-event__listItem {
        & .title {
            min-height: auto;
        }
    }

/* ーーーーーーーーーー
NEWS
ーーーーーーーーーー */
    .p-news {
        &::after {
            display: none;
        }
    }
}



/*＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝
animation
＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝＝*/
/*hover*/
.c-button,
.intro__navItem,
.p-news__listItem,
.p-news__button,
.l-footer__navItem,
.mainOther__navListItem,
.mainOther__logo,
.l-header__pcInner-logo,
.mainOther__snsListItem,
.mainAccess__button,
.conntactButton__wrap,
.topButton__wrap,
.p-strong__subWrapList{
    a {
        transition: 0.3s all ease-in-out;
    }
}

.slick-arrow,
.p-faq__tabItem{
    transition: 0.3s all ease-in-out;
}


@media (any-hover: hover) {
    .c-button {
        a:hover {
            transform: translate(3px,3px);
            box-shadow: none;
        }
    }

    .l-header__pcInner-buttonContainer,
	.intro__nav-spFlex{
        & .c-button.apply{
            & a:hover {
                transform: translate(3px,3px);
                box-shadow: none;
            }
        }
    }

    .intro__navItem{
        a:hover {
            background: var(--main-color);
            color: var(--white-color);

            &::after {
                border-top: solid 2px var(--white-color);
                border-right: solid 2px var(--white-color);
            }
        }
    }

    .p-faq__tabItem:hover{
        background: #E9559C;
        color: var(--white-color);

        &::after {
            border-top: solid 2px var(--white-color);
            border-right: solid 2px var(--white-color);
        }
    }

    .mainAccess__button{
        a:hover{
            background: var(--white-color);
            color: var(--main-color);
        }
    }

    .p-news__listItem,
    .p-news__button,
    .l-footer__navItem,
    .mainOther__navListItem,
    .mainOther__logo,
    .l-header__pcInner-logo,
    .mainOther__snsListItem,
	.conntactButton__wrap,
	.topButton__wrap{
        a:hover{
            opacity: 0.7;
        }
    }

    .slick-arrow:hover{
        opacity: 0.7;
    }
	
	.p-strong__subWrapList{
		a:hover{
			background: var(--white-color);
			color:var(--main-color);
		}
	}


}

