@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,p,blockquote,th,td,main,figure{box-sizing: border-box;margin:0;padding:0;margin-block-start:initial;margin-block-end: initial;line-height: initial;}table{font-size:100%;font-family:inherit}fieldset,img{border:0}img,svg,video{vertical-align:middle}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:400}ol,ul{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%}q:before,q:after{content:''}abbr,acronym{border:0}select,input,textarea{font-size:100%}header,footer,nav,main,section,article,figure,aside,picture{display:block}.clearfix:after,.row:after{content:"";display:table;clear:both}.fl{float:left}.fr{float:right}@media screen and (min-width: 768px),print{.pc_fl{float:left}.pc_fr{float:right}}@media screen and (max-width: 767px){.sp_fl{float:left}.sp_fr{float:right}}.tal{text-align:left!important}.tac{text-align:center!important}.tar{text-align:right!important}@media screen and (min-width: 768px),print{.pc_tal{text-align:left!important}.pc_tac{text-align:center!important}.pc_tar{text-align:right!important}}@media screen and (max-width: 767px){.sp_tal{text-align:left!important}.sp_tac{text-align:center!important}.sp_tar{text-align:right!important}}.m00{margin:0!important}.mb00{margin-bottom:0!important}.mb05{margin-bottom:5px!important}.mb08{margin-bottom:8px!important}.mb10{margin-bottom:10px!important}.mb15{margin-bottom:15px!important}.mb20{margin-bottom:20px!important}.mb25{margin-bottom:25px!important}.mb30{margin-bottom:30px!important}.mb35{margin-bottom:35px!important}.mb40{margin-bottom:40px!important}.mb45{margin-bottom:45px!important}.mb50{margin-bottom:50px!important}.mt00{margin-top:0!important}.mt05{margin-top:5px!important}.mt08{margin-top:8px!important}.mt10{margin-top:10px!important}.mt15{margin-top:15px!important}.mt20{margin-top:20px!important}.mt25{margin-top:25px!important}.mt30{margin-top:30px!important}.mt35{margin-top:35px!important}.mt40{margin-top:40px!important}.mt45{margin-top:45px!important}.mt50{margin-top:50px!important}@media screen and (min-width: 768px),print{.pc_m00{margin:0!important}.pc_mb00{margin-bottom:0!important}.pc_mb05{margin-bottom:5px!important}.pc_mb08{margin-bottom:8px!important}.pc_mb10{margin-bottom:10px!important}.pc_mb15{margin-bottom:15px!important}.pc_mb20{margin-bottom:20px!important}.pc_mb25{margin-bottom:25px!important}.pc_mb30{margin-bottom:30px!important}.pc_mb35{margin-bottom:35px!important}.pc_mb40{margin-bottom:40px!important}.pc_mb45{margin-bottom:45px!important}.pc_mb50{margin-bottom:50px!important}.pc_mt00{margin-top:0!important}.pc_mt05{margin-top:5px!important}.pc_mt08{margin-top:8px!important}.pc_mt10{margin-top:10px!important}.pc_mt15{margin-top:15px!important}.pc_mt20{margin-top:20px!important}.pc_mt25{margin-top:25px!important}.pc_mt30{margin-top:30px!important}.pc_mt35{margin-top:35px!important}.pc_mt40{margin-top:40px!important}.pc_mt45{margin-top:45px!important}.pc_mt50{margin-top:50px!important}}@media screen and (max-width: 767px){.sp_m00{margin:0!important}.sp_mb00{margin-bottom:0!important}.sp_mb05{margin-bottom:5px!important}.sp_mb08{margin-bottom:8px!important}.sp_mb10{margin-bottom:10px!important}.sp_mb15{margin-bottom:15px!important}.sp_mb20{margin-bottom:20px!important}.sp_mb25{margin-bottom:25px!important}.sp_mb30{margin-bottom:30px!important}.sp_mb35{margin-bottom:35px!important}.sp_mb40{margin-bottom:40px!important}.sp_mb45{margin-bottom:45px!important}.sp_mb50{margin-bottom:50px!important}.sp_mt00{margin-top:0!important}.sp_mt05{margin-top:5px!important}.sp_mt08{margin-top:8px!important}.sp_mt10{margin-top:10px!important}.sp_mt15{margin-top:15px!important}.sp_mt20{margin-top:20px!important}.sp_mt25{margin-top:25px!important}.sp_mt30{margin-top:30px!important}.sp_mt35{margin-top:35px!important}.sp_mt40{margin-top:40px!important}.sp_mt45{margin-top:45px!important}.sp_mt50{margin-top:50px!important}}.p00{padding:0!important}.pb00{padding-bottom:0!important}.pb05{padding-bottom:5px!important}.pb08{padding-bottom:8px!important}.pb10{padding-bottom:10px!important}.pb15{padding-bottom:15px!important}.pb20{padding-bottom:20px!important}.pb25{padding-bottom:25px!important}.pb30{padding-bottom:30px!important}.pb35{padding-bottom:35px!important}.pb40{padding-bottom:40px!important}.pb45{padding-bottom:45px!important}.pb50{padding-bottom:50px!important}.pt00{padding-top:0!important}.pt05{padding-top:5px!important}.pt08{padding-top:8px!important}.pt10{padding-top:10px!important}.pt15{padding-top:15px!important}.pt20{padding-top:20px!important}.pt25{padding-top:25px!important}.pt30{padding-top:30px!important}.pt35{padding-top:35px!important}.pt40{padding-top:40px!important}.pt45{padding-top:45px!important}.pt50{padding-top:50px!important}@media screen and (min-width: 768px),print{.pc_p00{padding:0!important}.pc_pb00{padding-bottom:0!important}.pc_pb05{padding-bottom:5px!important}.pc_pb08{padding-bottom:8px!important}.pc_pb10{padding-bottom:10px!important}.pc_pb15{padding-bottom:15px!important}.pc_pb20{padding-bottom:20px!important}.pc_pb25{padding-bottom:25px!important}.pc_pb30{padding-bottom:30px!important}.pc_pb35{padding-bottom:35px!important}.pc_pb40{padding-bottom:40px!important}.pc_pb45{padding-bottom:45px!important}.pc_pb50{padding-bottom:50px!important}.pc_pt00{padding-top:0!important}.pc_pt05{padding-top:5px!important}.pc_pt08{padding-top:8px!important}.pc_pt10{padding-top:10px!important}.pc_pt15{padding-top:15px!important}.pc_pt20{padding-top:20px!important}.pc_pt25{padding-top:25px!important}.pc_pt30{padding-top:30px!important}.pc_pt35{padding-top:35px!important}.pc_pt40{padding-top:40px!important}.pc_pt45{padding-top:45px!important}.pc_pt50{padding-top:50px!important}}@media screen and (max-width: 767px){.sp_p00{padding:0!important}.sp_pb00{padding-bottom:0!important}.sp_pb05{padding-bottom:5px!important}.sp_pb08{padding-bottom:8px!important}.sp_pb10{padding-bottom:10px!important}.sp_pb15{padding-bottom:15px!important}.sp_pb20{padding-bottom:20px!important}.sp_pb25{padding-bottom:25px!important}.sp_pb30{padding-bottom:30px!important}.sp_pb35{padding-bottom:35px!important}.sp_pb40{padding-bottom:40px!important}.sp_pb45{padding-bottom:45px!important}.sp_pb50{padding-bottom:50px!important}.sp_pt00{padding-top:0!important}.sp_pt05{padding-top:5px!important}.sp_pt08{padding-top:8px!important}.sp_pt10{padding-top:10px!important}.sp_pt15{padding-top:15px!important}.sp_pt20{padding-top:20px!important}.sp_pt25{padding-top:25px!important}.sp_pt30{padding-top:30px!important}.sp_pt35{padding-top:35px!important}.sp_pt40{padding-top:40px!important}.sp_pt45{padding-top:45px!important}.sp_pt50{padding-top:50px!important}}

/* fontfamily---------------------------------------- */
@font-face {
	font-family: "DIN Condensed";
	src: url('../font/D-DINCondensed-Bold.otf') format('opentype');
}
@font-face {
	font-family: 'A-OTF-UDShinGoNTPro-Light';
	src: url('../font/A-OTF-UDShinGoNTPro-Light.otf') format('opentype');
}
@font-face {
	font-family: 'A-OTF-UDShinGoNTPro-Regular';
	src: url('../font/A-OTF-UDShinGoNTPro-Regular.otf') format('opentype');
}
@font-face {
	font-family: 'A-OTF-UDShinGoNTPro-Medium';
	src: url('../font/A-OTF-UDShinGoNTPro-Medium.otf') format('opentype');
}
@font-face {
	font-family: 'A-OTF-UDShinGoNTPro-DeBold';
	src: url('../font/A-OTF-UDShinGoNTPro-DeBold.otf') format('opentype');
}
@font-face {
	font-family: 'A-OTF-UDShinGoNTPro-Bold';
	src: url('../font/A-OTF-UDShinGoNTPro-Bold.otf') format('opentype');
}

/* グローバル変数-------------------------------------- */
:root {
    /* color */
    --color-main:#D8597C;
    --color-second:#FFEC57;
    --color-gray:#F4F4F4;
    --color-font:#000;
    --color-dark:#393A3A;
    --color-bg:#FFF9F5;
    /* padding */
    --pd-section:max(80px,calc(80 / 1366 * 100vw)) 0;
    --pd-section_xy:max(80px,calc(80 / 1366 * 100vw));
    --pd-section_sp:max(40px,calc(80 / 375 * 100vw));
    /* font */
    --font-30:calc(30 / 1366 * 100vw);
    --font-28:calc(28 / 1366 * 100vw);
    --font-24:calc(24 / 1366 * 100vw);
    --font-22:calc(22 / 1366 * 100vw);
    --font-20:calc(20 / 1366 * 100vw);
    --font-18:calc(18 / 1366 * 100vw);
    --font-16:calc(16 / 1366 * 100vw);
    --font-15:calc(15 / 1366 * 100vw);
    --font-14:calc(14 / 1366 * 100vw);
    --font-12:max(1.2rem,calc(12 / 1366 * 100vw));
    --font-11:max(1.1rem,calc(11 / 1366 * 100vw));

    --font-30-sp:calc(30 / 375 * 100vw);
    --font-28-sp:calc(28 / 375 * 100vw);
    --font-24-sp:calc(24 / 375 * 100vw);
    --font-22-sp:calc(22 / 375 * 100vw);
    --font-20-sp:calc(20 / 375 * 100vw);
    --font-18-sp:calc(18 / 375 * 100vw);
    --font-16-sp:calc(16 / 375 * 100vw);
    --font-14-sp:calc(14 / 375 * 100vw);
    --font-12-sp:max(12px,calc(12 / 375 * 100vw));
    --font-11-sp:max(11px,calc(11 / 375 * 100vw));

    /* fontfamily */
    --font-f-din:"DIN Condensed";
    --font-f-udshingo:'A-OTF-UDShinGoNTPro-Regular';
    --font-f-udshingo-l:'A-OTF-UDShinGoNTPro-Light';
    --font-f-udshingo-m:'A-OTF-UDShinGoNTPro-Medium';
    --font-f-udshingo-db:'A-OTF-UDShinGoNTPro-DeBold';
    --font-f-udshingo-b:'A-OTF-UDShinGoNTPro-Bold';
}

/* スタイル-------------------------------------- */
html { font-size: 62.5%; 
    scroll-behavior: smooth;
}
body{position: relative;
    color: var(--color-font);
    font-family:var(--font-f-udshingo);
}
img {width: 100%;
    height: auto;}
a {
    color: #333;
    text-decoration: none;
    transition: .2s;
}
/* pc / sp / ----------------------------------------*/
@media screen and (min-width: 768px), print {
	.sp {
		display: none !important;
	}
	.pc_break {
		position: relative;
		display: block;
		height: 0;
		overflow: hidden;
	}
	.pc_hidden {
		position: relative;
		overflow: hidden;
		display: block;
		height: 0;
	}
}
@media screen and (max-width: 767px) {
	.pc {
		display: none !important;
	}
	.sp_break {
		position: relative;
		display: block;
		height: 0;
		overflow: hidden;
	}
}
/* transition------------------------------ */
@media screen and (min-width: 768px) {
	body.init a[href],body.init a[href]::before,body.init a[href]::after,body.init button,body.init button::before,body.init button::after,body.init .basic_trs,body.init .basic_trs::before,body.init .basic_trs::after,body.init .basic_trs *,body.init .basic_trs *::before,body.init .basic_trs *::after {
		transition: color 0.2s ease-in-out, background 0.2s ease-in-out, border 0.2s ease-in-out, opacity 0.2s ease-in-out;}
	body.init a svg {transition: fill 0.2s ease-in-out;}
}
/* font------------------------------------ */
p{font-size: var(--font-16);
    font-family:var(--font-f-udshingo);
}
.c_pink{color: var(--color-main) !important;}
.fwb {font-weight: 700;}
.fwm {font-weight: 500;}
.fwn {font-weight: 400;}
@media screen and (max-width:767px) {
    p{font-size: var(--font-12-sp);
        font-family:var(--font-f-udshingo);
        line-height: 1.8;
        letter-spacing: 0.1em;
    }
}

/* display---------------------------------- */
.db {display: block;}
.dib {display: inline-block;}
.d_flex{display: flex;}
.d_grid{display: grid;}

/* アニメーション ----------------------------*/
.mov_show{
	position: Z;
	opacity: 0;
}
/* 下から上にフワッと出る */
.fade_up{
	transform: translate(0, 50px);
  -webkit-transform: translate(0, 50px);
}
.showed{
	opacity: 1;
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
  -webkit-transition: all 2s ease;
  transition: all 2s ease;
}
.ov_h{overflow: hidden;}

/* delay-------*/
.delay-1 {transition-delay: 0.5s;}
.delay-2 {transition-delay: 1.0s;}
.delay-3 {transition-delay: 1.5s;}
.delay-4 {transition-delay: 2s;}

/* header---------------------------------- */
#header{
    width: 100%;
    height: calc(105 / 1366 * 100vw);
    box-sizing: border-box;
    padding: 0 calc(38 / 1366 * 100vw);
    display: flex;
    justify-content:right;
    align-items: center;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 9999;
}
.header_logo {
    width: calc(234 / 1366 * 100vw);
}
/* sp */
@media screen and (max-width:767px) {
    #header {
        width: 100%;
        height: calc(50 / 375 * 100vw);
        box-sizing: border-box;
        padding: 0 calc(16 / 375 * 100vw);
        display: flex;
        justify-content: left;
        align-items: center;
        position: absolute;
        top: 12px;
        left: 0;
        z-index: 9999;
    }
    .header_logo {
        width: calc(172 / 375 * 100vw);
    }
}
main{
    overflow: hidden;
}

/* 共通パーツ--------------------------- */

/* .h_title */
.h_title{
    text-align: center;
    font-size: var(--font-28);
    font-family: 'A-OTF-UDShinGoNTPro-DeBold';
    letter-spacing: 0.1em;
    margin-bottom: 1em;
}
.h_title .en{
    font-family: var(--font-f-din);
    font-size: var(--font-30);
    color: rgba(0, 0, 0, 0.0);
    text-stroke: 1px #272727;
    -webkit-text-stroke: 1px #272727;
    letter-spacing: 0.1em;
}
.h_title h2{
    width: fit-content;
    margin: 0 auto;
    line-height: 1.6;
    background:linear-gradient(transparent 60%, #FFE8EE 60%);    
}
.h_title h3{
    font-size: var(--font-20);
    font-family: var(--font-f-udshingo-db);
    margin-top: 2em;
    line-height: 1.6;
    letter-spacing: 0.04em;
}
.h_title p{
   margin-top: 1em;
}
.h_title p .yellow_line{
font-family: var(--font-f-udshingo-db);
background: linear-gradient(transparent 60%, var(--color-second) 60%);
}
.h_title .kome{
    font-size: var(--font-12);
    margin-top: 0;
    color: #838383;
}

    @media screen and (max-width:767px) {
        .h_title{
            text-align: center;
            font-size: var(--font-18-sp);
            margin-bottom: 10vw;
        }
        .h_title .en{
            font-family: var(--font-f-din);
            font-size: var(--font-24-sp);
            margin-bottom: 0;
            line-height: normal;
        }
        .h_title h3 {
            font-size: var(--font-14-sp);
            font-family: var(--font-f-udshingo-db);
            margin-top: 2em;
            line-height: 1.6;
            letter-spacing: 0.04em;
        }
    }
/* link--- */
.link a{
    display:inline-block;
    color: #898989;
    font-size: var(--font-12);
    font-family: var(--font-f-udshingo-l);
    letter-spacing: 0.1em;
    position: relative;
    text-decoration: underline;
    width: fit-content;
    transition: .3s ease-in-out;
}
.link a::after{
    content:"";
    width:calc(12 / 1366 * 100vw);
    height:calc(12 / 1366 * 100vw);
    background-image: url(../images/arrow.svg);
    background-size: contain;
    position: absolute;
    right: -1.5vw;
    top: 50%;
    transform: translateY(-50%);
    transition: .3s;
}
.link a:hover{
    opacity: 0.7;
}
.link a:hover::after{
    right: -2vw;
    transition: .3s;
}
@media screen and (max-width:767px) {
    .link a::after {
        content: "";
        width: calc(12 / 375 * 100vw);
        height: calc(12 / 375 * 100vw);
        right: -4.5vw;

    }
}
/* cv_bnr-- */

.cv_bnr{
    background-color: var(--color-dark);
    height:calc(169 / 1366 * 100vw);
    font-family: 'A-OTF-UDShinGoNTPro-Medium';
    color: #FFF;
    display: flex;
    justify-content: center;
    align-items: center;
    letter-spacing: 0.2em;
    position: relative;
}
.cv_bnr::after{
    content:"";
    width:calc(338 / 1366 * 100vw);
    height:calc(127 / 1366 * 100vw);
    background-image: url(../images/open-campus.svg);
    background-size: contain;
    position: absolute;
    left: 0;
    top:50%;
    transform: translateY(-50%);
}
.cv_bnr .cv_bnr_contents{
    display: flex;
    justify-content: center;
    align-items: center;
    gap:2vw;
}
.cv_bnr .cv_bnr_contents .txt{
font-size: var(--font-20);
}
.cv_bnr .cv_bnr_contents .txt span {
    color: #FFF;
    background: var(--color-main);
    padding: 0.5vw 0.55vw;
    margin: 0 -0.1vw;
    border-radius: 11vw;
    letter-spacing: 0;
}
.cv_bnr .cv_bnr_contents .txt span:last-child{
    margin-right: 0.2vw;
}
.cv_bnr .cv_bnr_contents .btn{
    position: relative;
}
.cv_bnr .cv_bnr_contents .btn a{
    position: relative;
    width: calc(287 / 1366 * 100vw);
    height: calc(79 / 1366 * 100vw);
    background:var(--color-second);
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: 0px 5px 0px #9B7828;
    overflow: hidden;
}
.cv_bnr .cv_bnr_contents .btn a:hover{
    opacity: 0.7;
}
.cv_bnr .cv_bnr_contents .btn a::after {
    content: '';
    width: 100%;
    height: 100%;
    background-image: linear-gradient(130deg, rgba(255, 255, 255, 0) 25%, rgba(255, 255, 255, 0.5) 50%, rgba(255, 255, 255, 0) 75%);
    display: block;
    position: absolute;
    top: 0;
    left: -100%;
    /* opacity: 0.3; */
    animation: shine 1s infinite;
}
@-webkit-keyframes shine {
	100% {
		left: 100%;
	}
}
@keyframes shine {
	100% {
		left: 100%;
	}
}
.cv_bnr .cv_bnr_contents .btn>img{
    position: absolute;
    width: calc(215 / 1366 * 100vw);
    object-fit: contain;
    top:-1.6vw;
    left: 50%;
    transform: translateX(-50%);
    z-index: 10;
}
.cv_bnr .cv_bnr_contents .btn a img:last-child{
    width: calc(244 / 1366 * 100vw);
    margin: 0 auto;

}
/* sp */
@media screen and (max-width:767px) {
    .cv_bnr .cv_bnr_contents {
        flex-direction: column;
    }
    .cv_bnr {
        height:calc(260 / 375 * 100vw);
    }
    .cv_bnr::after {
        content: "";
        width: 0;
        height: 0;
        border-left: 70vw solid transparent;
        border-right: 70vw solid transparent;
        border-top: 11vw solid #FFF;
        position: absolute;
        top: -7px;
        left: 50%;
        transform: translateX(-50%);
    }
    .cv_bnr .cv_bnr_contents .btn>img {
        width: calc(215 / 375 * 100vw);
        top: -5vw;
    }
    .cv_bnr .cv_bnr_contents .btn a {
        position: relative;
        width: calc(287 / 375 * 100vw);
        height: calc(79 / 375 * 100vw);
    }
    .cv_bnr .cv_bnr_contents .txt {
        font-size:var(--font-18-sp);
        line-height: 1.7;
        margin-bottom: 1.3em;
        text-align: center;
    }
    .cv_bnr .cv_bnr_contents .txt p{
        font-size:var(--font-16-sp);
        line-height: 1.8;
    }
    .cv_bnr .cv_bnr_contents .btn a img:last-child {
        width: calc(244 / 375 * 100vw);
        margin: 0 auto;
    }
    .cv_bnr .cv_bnr_contents .txt span {
        padding: 1.5vw 1.5vw;
        margin: 0 -0.2vw;
    }
    .cv_bnr .cv_bnr_contents .txt span:last-child {
        margin-right: 1vw;
    }
}
.youtube_box{
    width: calc(556 / 1366 * 100vw);
    margin: 0 auto;
}
.youtube_box iframe{
    width: calc(556 / 1366 * 100vw);
    height: calc(310 / 1366 * 100vw);
    
}
@media screen and (max-width:767px) {
    .youtube_box {
        width: 100%;
        margin: 0 auto;
        height: calc(210 / 375 * 100vw);
    }
    .youtube_box iframe {
        width: 100%;
        height: calc(210 / 375 * 100vw);
    }
}

/* mv-------------------- */
#mv{
    width: 100%;
}
/* sp */
@media screen and (max-width:767px) {

}

/* beauty-style------------------ */
#beauty-style{
    overflow: hidden;
    padding: var(--pd-section);
    position: relative;
    background:var(--color-bg);
    background-repeat: no-repeat;
    background-position:right -16vw top -6vw;
    background-size: calc(458 / 1366 * 100vw);
}
#beauty-style::after{
position: absolute;
content:"";
width: 10vw;
height: 10vw;
background-image: url(../images/bg_01.png);
background-size: contain;
top:35vw;
right: 15vw;
}
#beauty-style .beauty-style_h h2{
position: relative;
}
#beauty-style .beauty-style_h h2::after{
    position: absolute;
    content:"";
    width:calc(49 / 1366 * 100vw);
    height:calc(49 / 1366 * 100vw);
    background-image: url(../images/new.png);
    background-size: contain;
    left:-3.2vw;
    top:-1vw;
    }

#beauty-style .beauty-style_contents{
    justify-content: flex-end;
    flex-direction: row-reverse;
    align-items: center;
    gap:5vw;
    margin:2vw 0;
}
#beauty-style .beauty-style_contents .txt{
    display: flex;
    flex-direction: column;
    width: calc(469 / 1366 * 100vw);
    position: relative;
}
#beauty-style .beauty-style_contents .txt h3{
    font-family:var(--font-f-udshingo-db);
    font-size: var(--font-20);
    color: var(--color-main);
    letter-spacing: 0.1em;
    margin-bottom: 1em;
}
#beauty-style .beauty-style_contents .txt h3 .c_pink{
    color: var(--color-main);
    font-size: var(--font-20);
    font-family: var(--font-f-udshingo-m);

}
#beauty-style .beauty-style_contents .txt .txt_img{
    width: calc(540 / 1366 * 100vw);
}
#beauty-style .beauty-style_contents .img{
    width: 50%;
}
#beauty-style .contents_2{
    flex-direction: row;
    position: relative;
    margin-top: 5vw;
}
#beauty-style .contents_2 .img_01{
    width: calc(540 / 1366 * 100vw);
}
#beauty-style .contents_2 .img_02{
    width:50%;
}
#beauty-style .contents_2 .txt{
    position: absolute;
    width: calc(216 / 1366 * 100vw);
    line-height: 1.6;
    bottom: 5vw;
    left: 17vw;
}
#beauty-style .contents_2 .txt h3{
    font-size: var(--font-16);
    font-family: var(--font-f-udshingo-b);
    line-height: 1.6;
}
#beauty-style .contents_2 .txt p{
    font-size: var(--font-15);
    line-height: 1.6;

}

#beauty-style ul{
    width: calc(1000 / 1366 * 100vw);
    margin: 0 auto;
    flex-wrap: wrap;
    justify-content: space-between;
    row-gap: 3vw;
}
#beauty-style ul li{
    width: 45%;
    gap:2vw;
}
#beauty-style ul li h4{
    font-size: var(--font-16);
    font-family: var(--font-f-udshingo-db);
    color: #D8597C;
    line-height: 1.6;
}
#beauty-style ul li .txt_p{
    width: calc(214 / 1366 * 100vw);
    margin-top: 1em;
}
#beauty-style ul li p{
    font-size: var(--font-14);
}
#beauty-style ul li .img{
    width: 50%;
}
#beauty-style .beauty-style_youtube{
    margin: 7vw auto 0;
    width: calc(556 / 1366 * 100vw);
}
#beauty-style .beauty-style_youtube .img{
    width: calc(341 / 1366 * 100vw);
    margin: 0 auto 1em;
}
#beauty-style .beauty-style_youtube .txt{
    margin-top: 2em;
    align-items: center;
    height:calc(60 / 1366 * 100vw);
    line-height: 1.6;
}
#beauty-style .beauty-style_youtube .txt .h3{
    background-color: var(--color-main);
    border-radius: 6px 0 0 6px;
    width: calc(190 / 1366 * 100vw);
    height:calc(60 / 1366 * 100vw);
    display: flex;
    justify-content: center;
    align-items: center;
    gap:1vw;
    font-size: var(--font-12);
    color: #FFF;
}
#beauty-style .beauty-style_youtube .txt .h3 img{
    width:calc(24 / 1366 * 100vw);
}
#beauty-style .beauty-style_youtube .txt .h3 h3{
    line-height: 1.6;
}
#beauty-style .beauty-style_youtube .txt p {
    font-size: var(--font-12);
    background-color: #FFF;
    padding: 0 1vw;
    line-height: 1.6;
    height:calc(60 / 1366 * 100vw);
    z-index: 1;
    border-radius: 0 6px 6px 0;
    border: solid 2px var(--color-main);
    display: flex;
    align-items: center;
}

@media screen and (max-width:1024px) {
    #beauty-style .beauty-style_youtube .txt .h3 {
        width: calc(190 / 1000 * 100vw);
        height: 80px;
    }
    #beauty-style .beauty-style_youtube .txt p {
        font-size: var(--font-12);
        background-color: #FFF;
        padding: 0 1vw;
        line-height: 1.6;
        height: 80px;
    }
}

/* sp */
@media screen and (max-width:767px) {
    #beauty-style {
        padding: calc(40 / 375 * 100vw) 0 0;
        background-position: right -33vw top 11vw;
        background-size: calc(278 / 375 * 100vw);
    }
    #beauty-style .beauty-style_h h2::after {
        position: absolute;
        content: "";
        width: calc(40 / 375 * 100vw);
        height: calc(40 / 375 * 100vw);
        background-image: url(../images/new.png);
        background-size: contain;
        left: -9.2vw;
        top: -5vw;
    }
    #beauty-style .beauty-style_contents {
        flex-direction: column-reverse;
        align-items: baseline;
    }
    #beauty-style .contents_2 .img_01 {
        width: 90%;
        margin: 0 0 0 auto;
    }
    #beauty-style .contents_2 .img_02 {
        width: 90%;
        margin: 5vw auto;
    }
    
    #beauty-style .beauty-style_contents .txt {
        display: flex;
        flex-direction: column;
        width: 100%;
        padding: 5vw;
        position: relative;
    }
    #beauty-style .beauty-style_contents .txt h3 {
        font-family: var(--font-f-udshingo);
        font-size: var(--font-14-sp);
        line-height: 1.6;
    }
    #beauty-style .beauty-style_contents .txt h3 .c_pink{
        font-size: var(--font-16-sp);
    }
    #beauty-style .beauty-style_contents .txt .txt_img {
        width: 100%;
    }
    #beauty-style .beauty-style_contents .img {
        width:100%;
    }
    #beauty-style .contents_2 .txt p {
        font-size: var(--font-11-sp);
        line-height: 1.6;
    }
    #beauty-style .contents_2 {
        flex-direction: column;
        position: relative;
        margin-top: 0;
    }
    #beauty-style .contents_2 .txt {
        position: absolute;
        width: 50%;
        line-height: 1.6;
        bottom: 5vw;
        left: auto;
        right: 5vw;
        padding: 0;
    }
    #beauty-style ul {
        width: 90%;
        row-gap: 5vw;
    }
    #beauty-style ul li {
        width: 100%;
        gap: 4vw;
    }
    #beauty-style .beauty-style_contents ul li .img{
        width: 90%;
    }
    #beauty-style ul li .txt_p {
        width: 100%;
        margin-top: 1em;
    }
    #beauty-style .beauty-style_youtube .img {
        width: calc(341 / 375 * 100vw);
        margin: 3em auto 1em;
    }
    #beauty-style .beauty-style_youtube {    
    margin: 7vw auto 0;
        width: 100%;
    }
    #beauty-style ul li h4 {
        font-size: var(--font-14-sp);
        font-family: var(--font-f-udshingo-db);
        color: #D8597C;
    }
    #beauty-style ul li p {
        font-size: var(--font-11-sp);
        line-height: 1.6;
    }
    .job_box.txt {
        flex-direction: column;
        height: auto;
        width: 90%;
        margin: 4em auto 2em;
    }
    .job_box.txt .h3 {
        background-color: var(--color-main);
        color: #FFF;
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 1vw;
        width: 100%;
        height: auto;
        font-size: var(--font-12-sp);
        border-radius: 6px 6px 0 0;
        padding: 1vw;
        font-family: var(--font-f-udshingo-m);
    }
    .job_box.txt p {
        font-size: var(--font-12-sp);
        background-color: #FFF;
        padding: 16px;
        line-height: 1.6;
        height: auto;
        border-radius: 0 0 6px 6px;

    border: solid 2px var(--color-main);
    display: flex;
    align-items: center;
    }
    .job_box.txt .h3 img {
        width: calc(24 / 375 * 100vw);
        position: relative;
        top: -2vw;
    }
}



/* traning------------------ */
#traning{
    padding: var(--pd-section);
    position: relative;
}
#traning .img{
    width: 100%;
    margin-bottom: 4vw;
}
#traning .youtube_box{
    margin-top: 4vw;
}

@media screen and (max-width:767px) {
    #traning {
        padding: var(--pd-section-sp);
        position: relative;
        grid-template-columns: 1fr;
        grid-template-rows: auto auto auto; 
        column-gap: 6vw;
        grid-template-areas:
        "txt_1"
        "img"
        "txt_2";
        margin: 15vw 0;
    }
    #traning .txt_1 .txt_box, #traning .txt_2 .txt_box {
        width: 100%;
        margin: 0 0 0 auto;
        padding: 0 5vw;
    }
    #traning .txt_1 .txt_box .h_title {
        text-align: center;
        margin-bottom: 5vw;
    }
    #traning .txt_1 .txt_box .h_title p {
        width: calc(170 / 375 * 100vw);
        margin: 0 auto 0.4em;
        text-align: center;
    }
    #traning .txt_2 {
        width: 100%;
        margin: 7vw 0;
    }
    #traning .txt_2 .txt_box h3 {
        font-size: var(--font-16-sp);
    }
    #traning .txt_2 .txt_box .txt_contents > p {
        font-size: var(--font-12-sp);
    }
    #traning .txt_2 .txt_box .txt_contents .link {
        margin-right: 5vw;
    }
    #traning .img {
        width: 100%;
        margin: 0 0 0 auto;
    }
    #traning .tac{
        padding: 5vw;
    text-align: left !important;
    }
}

/* internship----------------- */
#internship{}
#internship>.img{
    width:calc(748 / 1366 * 100vw);
    margin: 0 auto 4vw;
}
#internship h3{
    text-align: center;
    font-size:var(--font-18);
    font-family: var(--font-f-udshingo-db);
}
#internship ul{
    width:calc(748 / 1366 * 100vw);
    margin:2vw auto 4vw;
    gap: 2vw;
    align-items: flex-start;
}
#internship ul li{
    flex-direction: column-reverse;
    align-items: center; 
    gap: 1vw;   
}
#internship ul li p{
    line-height: 1.6;
    font-size: var(--font-12);
}
#internship .font_22{
    font-size: var(--font-22);
    margin-bottom: 5vw;
}
@media screen and (max-width:767px) {
    #internship>.img {
        width: 100%;
        margin:0 auto 10vw;
    }
    #internship h3 {
        text-align: center;
        font-size: var(--font-14-sp);
    }
    #internship ul {
        width: 100%;
        gap: 10vw;
        flex-direction: column;
        margin: 10vw auto;
    }
    #internship ul li {
        flex-direction: row-reverse;
        align-items: flex-end;
    }
    #internship ul li:nth-child(2){
        flex-direction: row;
    }
    #internship ul li .txt{
        padding: 0 4vw;
        width: 50vw;
        font-size: var(--font-12-sp);
    }
    #internship ul li .img{
        position: relative;
        width: 70%;
    }
    #internship ul li:first-child .img::after {
        position: absolute;
        content: "";
        width: 39.4px;
        height: 74.84px;
        bottom: -16vw;
        left: 14vw;
        background-image: url(../images/bg_02.png);
        background-size: contain;
        background-repeat: no-repeat;
    }
    #internship ul li:nth-child(2) .img::after{
        position: absolute;
        content:"";
        width: 62.4px;
        height: 74.84px;
        bottom: -16vw;
        right: 5vw;
        background-image: url(../images/bg_01.png);
        background-size: contain;
    background-repeat: no-repeat;
    }
    #internship .font_22 {
        font-size: var(--font-18-sp);
        margin-bottom: 5vw;
        line-height: 1.6;
    }
}

/* #stylist-------------------- */
#stylist{
    padding: var(--pd-section);
}
#stylist .stylist_contents{
    gap:5vw;
    align-items: center;
    padding: 5vw 0 10vw;
}
#stylist .stylist_contents .img{
    position: relative;
    width: 50%;
}
#stylist .stylist_contents .img::after{
    content:"";
    width:calc(377 / 1366 * 100vw);
    height:calc(353 / 1366 * 100vw);
    background: #FFF2F5;
    position: absolute;
    right: -4vw;
    bottom: -4vw;
    z-index: -1;
}
#stylist .stylist_contents .txt{
    width:calc(470 / 1366 * 100vw);
}
#stylist .stylist_contents .txt h3{
    font-size: var(--font-20);
    font-family: var(--font-f-udshingo-db);
    line-height: 1.6;
    margin-bottom: 1em;
}
#stylist ul{
    width:calc(812 / 1366 * 100vw);
    margin:5vw auto;
    justify-content: space-between;
}
#stylist ul li{
    position: relative;
    width: 48%;
}
#stylist ul li .img{
    display: flex;
    justify-content: right;
    margin-bottom:2vw;
}
#stylist ul li .img img{
    width:calc(297 / 1366 * 100vw);
}
#stylist ul li .txt{
    line-height: 1.6 !important;
    font-size: var(--font-14);
}
#stylist ul li .midashi h3{
    font-size: var(--font-30);
    font-family: var(--font-f-din);
    color: rgba(0, 0, 0, 0.0);
    text-stroke: 1px #272727;
    -webkit-text-stroke: 1px #272727;
    letter-spacing: 0.1em;
    position: relative;
    bottom: -0.4em;
}

.siryo_box{
    width:calc(702 / 1366 * 100vw);
    margin: 0 auto;
        background-image: linear-gradient(90deg, rgba(250, 149, 149, 1), rgba(253, 149, 229, 1));
    padding: 2vw;
}
.siryo_box .siryo_box_contents{
    background:rgba(255, 255, 255, 0.8);
    flex-direction: row-reverse;
    justify-content: center;
    align-items: center;
    gap:1vw;
    padding: 2vw 0;
}
.siryo_box .siryo_box_contents .txt{
    padding-left:calc(278 / 1366 * 100vw);
}
.siryo_box .siryo_box_contents .txt p{
    font-size: var(--font-14);
}
.siryo_box .siryo_box_contents .img{
    position: absolute;
    width:calc(278 / 1366 * 100vw);
    left: 3vw;
    top: -1vw;
}
.siryo_box .siryo_box_contents .btn_2 a{
    display: block;
    position: relative;
    width: fit-content;
    border: 2px solid #2B2B2B;
    border-radius: 50vh;
    padding: 1vw 5vw;
    font-size: var(--font-12);
    font-family: var(--font-f-udshingo-m);
    letter-spacing: 0.1em;
    text-align: center;
    font-weight: 400;
    margin:1em auto 0;
    background: #FFF;
}
.siryo_box .siryo_box_contents .btn_2 a::after {
    content: '';
    width: 0.5vw;
    height: 0.5vw;
    border-top: solid 2px var(--color-font);
    border-right: solid 2px var(--color-font);
    position: absolute;
    right: 2.5vw;
    top: 47%;
    position: absolute;
    transform: rotate(45deg) translateY(-50%);
}
.siryo_box .siryo_box_contents .btn_2 a:hover{
    opacity: 0.7;
}

@media screen and (max-width:767px) {
    #stylist {
        padding:10vw 0 0;
    }
    #stylist .stylist_contents {
        flex-direction: column;
        padding: 0;
    }
    #stylist .stylist_contents .img {
        position: relative;
        width: 100%;
        padding: 5vw;
    }
    #stylist .stylist_contents .img::after {
        width: 100vw;
        height: 40vw;
        right: 0;
    }
    #stylist .stylist_contents .txt {
        width: 100%;
        padding: 0 5vw 10vw;
        background: #FFF2F5;
        margin-top: -3vw;
    }
    #stylist .stylist_contents .txt h3{
        font-size: var(--font-14-sp);
    }
    #stylist ul {
        width: 100%;
        flex-direction: column;
        margin: 10vw auto;
        row-gap: 5vw;
    }
    #stylist ul li {
        position: relative;
        width: 100%;
    }
    #stylist ul li .img {
        margin-bottom: 6vw;
        display: flex;
    }
    #stylist ul li .img img {
        width: 80vw;
        margin: 0 0 0 auto;
    }
    #stylist ul li:nth-child(2) .img img {
        margin: 0 auto 0 0;
    }
    #stylist ul li .midashi h3 {
    font-size: var(--font-30-sp);
    }
    #stylist ul li:nth-child(2) .midashi h3{
        text-align: right;
    }
    #stylist ul li .txt {
        line-height: 1.6 !important;
        font-size: var(--font-12-sp);
        padding: 0 5vw;
    }
    .siryo_box {
        width: 100vw;
        padding: 5vw;
    }
    .siryo_box .siryo_box_contents {
        background: rgba(255, 255, 255, 0.8);
        flex-direction: column;
        padding: 5vw 0;
    }
    .siryo_box .siryo_box_contents .txt {
        padding-left: 0;
    }
    .siryo_box .siryo_box_contents .btn_2 a {
        margin:67vw auto 3vw;
        font-size: var(--font-12-sp);
        padding: 10px 80px;
    }
    .siryo_box .siryo_box_contents .btn_2 a::after {
        width: 1.5vw;
        height: 1.5vw;
        border-top: solid 1px var(--color-font);
        border-right: solid 1px var(--color-font);
        position: absolute;
        right: 8.5vw;
    }
    .siryo_box .siryo_box_contents .img {
        position: absolute;
        width: 75vw;
        left: 50%;
        transform: translateX(-50%);
        top: 26vw;
    }
    .siryo_box .siryo_box_contents .txt p{
        font-size: var(--font-12-sp);
        line-height: 1.6;
    }
}

/* access---------------------- */
#access{
    padding:max(80px,calc(80 / 1366 * 100vw)) max(80px,calc(185 / 1366 * 100vw));
    background-color: var(--color-bg);
}

#access .access_contents{
    grid-template-columns:1fr 1fr;
    grid-template-rows: 1.7fr 1fr;
    column-gap: 20px;
    grid-template-areas:
        "access_header access_map"
        "access_detail access_map";
}

#access .access_contents .access_header{
    grid-area:access_header;
    text-align: left;
}
#access .access_contents .access_map{
    grid-area:access_map;
}
#access .access_contents .access_detail{
    grid-area: access_detail;
}

#access .access_contents .access_header h2{
    margin: 0;
}
/* #access .access_contents .access_header h2{
    font-size: var(--font-18);
    font-family: var(--font-f-udshingo-m);
    background-color: var(--color-main);
    color: #FFF;
    margin: 1em 0;
    width: fit-content;
    padding:0 1vw;
    line-height: 1.8;
} */
#access .access_contents .access_detail h3{
    font-size: var(--font-18);
}
#access .access_contents .access_detail .access_address {
font-size: var(--font-14);
font-family: var(--font-f-udshingo-l);
}
#access .access_contents .access_map iframe{
    width: 100%;
    height: 100%;
}

@media screen and (max-width:767px) {
    #access {
        padding: 10vw 5vw;
        background: #FFF;
    }
    #access .access_contents {
        grid-template-columns: 1fr;
        grid-template-rows:auto 100vw auto;
        row-gap: 20px;
        grid-template-areas:
            "access_header"
            "access_map"
            "access_detail";
        text-align: center;
    }
    #access .access_contents .access_header {
        text-align: center;
    }
    #access .access_contents .access_header h2 {
        margin: 0 auto;
    }
    #access .access_contents .access_detail h3 {
        font-size: var(--font-18-sp);
        margin-bottom: 0.5em;
    }
    #access .access_contents .access_detail .access_address {
        font-size: var(--font-12-sp);
    }
}


/* footer -----------------*/
footer{
    padding:calc(40 / 1366 * 100vw);
}

footer .footer-container{
    justify-content: space-between;
    align-items: center;
}

footer .footer-container .footer-left{
    gap: 2vw;
    align-items: flex-end;
}
footer .footer-container .footer-left .footer-company-name{
    font-size: var(--font-11);
    margin-bottom: 1em;
    line-height: 1;
    letter-spacing: 0.1em;
}
footer .footer-container .footer-right{
    display: flex;
    flex-direction: column;
    align-items: end;
}
footer .footer-company-detail{
    font-size: var(--font-11);
    font-family: var(--font-f-udshingo-l);
}
.footer-contact-button {
    display: block;
    position: relative;
    width: fit-content;
    border: 2px solid #2B2B2B;
    border-radius: 50vh;
    padding: 14px 60px;
    font-size:var(--font-12);
    font-family: var(--font-f-udshingo-m);
    letter-spacing: 0.1em;
    text-align: center;
    font-weight: 400;
    margin-bottom: 1vw;
}
.footer-contact-button::after {
    content: '';
    width: 0.5vw;
    height: 0.5vw;
    border-top: solid 2px var(--color-font);
    border-right: solid 2px var(--color-font);
    position: absolute;
    right: 2.5vw;
    top: 47%;
    position: absolute;
    transform: rotate(45deg) translateY(-50%);
}
.footer-contact-button-left-icon {
    position: absolute;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);
    width: 20px;
    height: 16px;
}
.footer-copyright{
    font-size: var(--font-11);
    color: #838383;
}

@media screen and (max-width:930px) {
    footer .footer-container {
        justify-content: space-between;
        align-items: flex-end;
    }
    footer .footer-container .footer-left {
        gap: 2vw;
        align-items: flex-end;
        flex-direction: column;
    }
}

@media screen and (max-width:767px) {
    footer {
        padding:calc(40 / 375 * 100vw) 3vw 3vw;
    }
    footer .footer-container {
        justify-content: center;
        align-items: center;
        flex-direction: column;
        row-gap: 10vw;
    }
    footer .footer-container .footer-left {
        gap: 5vw;
        align-items: center;
        flex-direction: column;
        text-align: center;
    }
    footer .footer-container .footer-right {
        display: flex;
        flex-direction: column;
        align-items: center;
    }
    .footer-contact-button {
        font-size: var(--font-12-sp);
        margin-bottom: 20vw;
    }
    footer .footer-container .footer-left .footer-company-name {
        font-size: var(--font-11-sp);
        text-align: center;
    }
    .footer-copyright {
        font-size: 10px;
    }
    .footer-contact-button::after {
        content: '';
        width: 1.5vw;
        height: 1.5vw;
        right: 8.5vw;
        top: 47%;
    }
}