@charset "UTF-8";

/*******************************
COMMON CSS
********************************/
html {
    font-size: 62.5%;
}

body {
    font-family: "Noto Sans JP", sans-serif;
    font-style: normal;
    background: #F3FFFF;
    font-size: 1.6rem;
}

h1, h2, h3, h4, h5, h6 {
    font-size: revert;
}

img {
    image-rendering: -webkit-optimize-contrast;
}

a {
    transition: 0.3s;
}

/* MARGIN */
.tmg10{ margin-top: 3rem; }
.tmg30{ margin-top: 3rem; }
.tmg50{ margin-top: 2rem; }
.bmg25{ margin-bottom:3.5rem; }

.wrapper{
    width: 51.4rem;
    max-width: 100%;
    margin: auto;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
}

/* BUTTON */
.bt-wrap{
    width: 100%;
}

.bt-apply__single{
    display: block;
    width: 90%;
    height: 7.5rem;
    background: #3CABAD;
    border-radius: 5rem;
    color: #fff;
    padding: 1.5rem 0 0 8rem;
    position:relative;
    margin: auto;
    box-shadow: inset 0 0 0 1px #FFF, 0 2.74px 6.85px 3.43px rgba(0, 0, 0, 0.25);
    border: 1.37px #fff solid;
    font-size: 2.1rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 1.1px;
    text-align: left;
}

.bt-apply__single::before{
    content:"簡単\A応募";
    position:absolute;
    width: 5.5rem;
    height: 5.5rem;
    background:#fff;
    top: 50%;
    left: 1.1rem;
    color: #3CABAD;
    white-space: pre;
    border-radius: 5rem;
    font-size: 1.2rem;
    font-weight: 900;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.2;
    letter-spacing: 0.1vw;
    transform: translateY(-50%);
}

.bt-apply__single::after {
    content: "";
    position: absolute;
    background: url(../images/icon_right_arrow.png) no-repeat;
    width: 1.4rem;
    height: 2rem;
    background-size: 1.4rem;
    top: 50%;
    right: 4rem;
    transform: translateY(-50%);
}


.bt-apply__single > span{
    font-size: 1.7rem;
    font-weight: 900;
}

.bt-apply__single.w100{
    width: 100%;
}

.bt-apply__long{
    display: flex;
    width: 95%;
    height: 7.5rem;
    background: #E64E50;
    border-radius: 5rem;
    color: #fff;
    position:relative;
    box-shadow: inset 0 0 0 1px #FFF, 0 2.74px 6.85px 3.43px rgba(0, 0, 0, 0.25);
    border: 1.37px #fff solid;
    font-size: 1.9rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 1.1px;
    align-items: center;
    padding: 0 0 0 3.5rem;
    margin: auto;
}

.bt-apply__long::after {
    content: "";
    position: absolute;
    background: url(../images/icon_right_arrow.png) no-repeat;
    width: 1.4rem;
    height: 1.9rem;
    background-size: 1.4rem;
    top: 50%;
    right: 2.5rem;
    transform: translateY(-50%);
}


.bt-apply__long > span{
    font-size: 1.5rem;
    font-weight: 900;
    padding: .5rem 0 0;
}

.bt-app{
    display: flex;
    width: 95%;
    height: 7.5rem;
    background: #F63261;
    border-radius: 5rem;
    color: #fff;
    position:relative;
    box-shadow: inset 0 0 0 1px #FFF, 0 2.74px 6.85px 3.43px rgba(0, 0, 0, 0.25);
    border: 1.37px #fff solid;
    font-size: 1.9rem;
    font-weight: 900;
    line-height: 1;
    letter-spacing: 1.1px;
    align-items: center;
    padding: 0 0 0 4rem;
    margin: auto;
}

.bt-app::after {
    content: "";
    position: absolute;
    background: url(../images/icon_right_arrow.png) no-repeat;
    width: 1.4rem;
    height: 1.9rem;
    background-size: 1.4rem;
    top: 50%;
    right: 2.5rem;
    transform: translateY(-50%);
}


.bt-app > span{
    font-size: 1.5rem;
    font-weight: 900;
    padding: .5rem 0 0;
}

.bt-apply__single:hover,
.bt-apply__long:hover,
.bt-app:hover{
    transition: .5s;
    opacity: .7;
}

/* HEADER */
header{
    width: 100%;
}

header img{
    width: 100%;
}

/* MV */
.mv{
    width: 100%;
    overflow: hidden;
    background: #FFF;
}

.mv img{
    width: 100%;
}

/* CHARM */
.charm {
  background: #FFF3F3;
  padding: 3rem 2rem 1rem;
  text-align: center;
}

.charm-title {
  font-size: 2.3rem;
  font-weight: 900;
  position: relative;
  display: inline-block;
  margin: 0 0 5rem;
  letter-spacing: 1.1px;
}

.charm-title::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 0.539rem;
  background: #DD0900;
  bottom: -1.6rem;
  left: 0;
  border-radius: 9999px;
}

.charm-title .small-de {
  font-size: 0.8em !important;
  vertical-align: middle !important;
  position: relative !important;
  top: -0.2rem !important;
  color: inherit !important; 
}

.charm-title .small-de::after {
  content: none !important;
}

.charm-title .highlight {
  font-size: 2.6rem;
  color: #DD0900;
  position: relative;
}


.charm-title .highlight::after {
  position: absolute;
  content: "";
  background: url(../images/image_sparkle.png) no-repeat;
  background-size: 1.5rem;
  width: 1.5rem;
  height: 1.6rem;
  top: 0;
  right: -0.6rem;
}

.charm-box {
  text-align: left;
  background: #FFF;
  padding: 1.5rem;
  border-radius: 1rem;
  box-shadow: 0 2.74px 2.74px 0 rgba(0, 0, 0, 0.25);
  margin: 0 0 2.6rem;
}

.charm-box:nth-of-type(3) {
  margin: 0 0 4rem;
}

.charm-box h3 {
  font-size: 1.6rem;
  font-weight: 900;
  color: #DD0900;
  letter-spacing: 1.1px;
  margin: 0 0 0.3rem;
  position: relative;
  height: 3.7rem;
  display: flex;
  align-items: center;
  padding: 0 0 0 4rem;
}

.charm-box h3::before {
  position: absolute;
  content: "";
  background: url(../images/icon_check.png) no-repeat;
  width: 3rem;
  height: 3rem;
  background-size: 3rem;
  top: 2px;
  left: 0;
}

.charm-title::after {
	content: "※長期アルバイトの場合";
	position: absolute;
	bottom: -3.5rem;
	left: 18rem;
	font-size: 1rem;
	color: #000;
	white-space: nowrap;
	font-weight: bold;
	line-height: 1;
}

.charm-box p {
  font-size: 1.3rem;
  font-weight: bold;
  line-height: 1.4;
}

.recommend {
  display: flex;
  flex-direction: row;
  width: 100%;
  justify-content: space-around;
}

.recommend li {
  background: #FFF;
  border-radius: 50%;
  width: 30%;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2.4px #E64E50 solid;
  font-size: 1.6rem;
  font-weight: 900;
  letter-spacing: 1.1px;
}

@media screen and (max-width: 768px) {
  .charm-title sup {
    font-size: 0.4em; 
    top: -1rem;       
  }
}


/* WORKS */
.works{
    text-align: center;
    background: #FFF;
    padding: 4rem 2rem 4.5rem;
}

.works h2{
    font-size: 2.4rem;
    font-weight: 900;
    position: relative;
    display: inline-block;
    margin: 0 0 5rem;
    letter-spacing: 1.1px;
    width: 86%;
    text-align: center;
}

.works h2::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 0.539rem;
    background: #3CABAD;
    bottom: -1.6rem;
    left: 0;
    border-radius: 9999px;
}

.works h2 > span{
    font-size: 1.6rem;
}

.works-box{
    border: 2.74px #3CABAD solid;
    border-radius: 1.5rem;
    padding: 2rem 1.5rem;
    text-align: left;
}

.works-box h3{
    font-size: 1.6rem;
    font-weight: 900;
    color: #FFF;
    background: #3CABAD;
    display: inline-block;
    border-radius: 6.85px;
    padding: 0.5rem;
    letter-spacing: 1.75px;
    width: 9rem;
    text-align: center;
    margin: 0 0 2rem;
}

.works-box h3:nth-of-type(4){
    position:relative;
}

.works-box h3:nth-of-type(4)::before{
    position:absolute;
    content:"※求人により異なります。";
    font-size: 1.1rem;
    color: #000;
    white-space: nowrap;
    letter-spacing: 0;
    font-weight: bold;
    top: 50%;
    right: -13rem;
    transform: translateY(-50%);
}

.works-box h4{
    font-size: 1.6rem;
    font-weight: bold;
    padding: 0 0 0 1rem;
    margin: 0 0 2rem;
    line-height: 1.3;
}

.works-box h4:nth-of-type(3),
.works-box h4:nth-of-type(4){
    margin: 0 0 2rem;
}

.works-box p{
    font-size: 1.3rem;
    font-weight: bold;
    margin: 0 0 3rem;
    padding: 0 0 0 1rem;
    line-height: 1.4;
}

/* TREATMENT */
.treatment{
    padding: 5rem 1.5rem;
    background: #FFF3F3;
    text-align: center;
}

.treatment h2{
    font-size: 2.4rem;
    font-weight: 900;
    position: relative;
    display: inline-block;
    margin: 0 0 5rem;
    letter-spacing: 1.1px;
    width: 80%;
    text-align: center;
    color: #E64E50;
}

.treatment h2::before{
    content: "";
    position: absolute;
    width: 100%;
    height: 0.539rem;
    background: #E64E50;
    bottom: -1.6rem;
    left: 0;
    border-radius: 9999px;
}

.treatment h2 > span{
    font-size: 1.6rem;
    color: #000;
}

.treatment > img{
    width: 30rem;
    margin: 0 0 2rem;
}

.treatment-list{
    display: flex;
    flex-direction: row;
    width: 100%;
    justify-content: space-around;
    color: #E64E50;
}

.treatment-list li{
    background: #FFF;
    border-radius: 50%;
    width: 30%;
    aspect-ratio: 1/1;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 2.4px #E64E50 solid;
    font-size: 1.6rem;
    font-weight: 900;
    letter-spacing: 1.1px;
    flex-direction: column;
    line-height: 1.3;
}

.treatment-list li:nth-of-type(1) > img{
    width: 2.75rem;
    margin: .5rem 0 0;
}

.treatment-list li:nth-of-type(2) > img{
    width: 2.1rem;
    margin: 0.8rem 0 0;
}

.treatment-list li:nth-of-type(3) > img{
    width: 2.75rem;
    margin: .5rem 0 0;
}

/* STEP */
.step{
    padding: 3rem 2rem;
    background: #FFF;
    text-align: center;
}

.step h2{
    font-size: 2.4rem;
    font-weight: 900;
    position: relative;
    display: inline-block;
    margin: 0 0 5rem;
    letter-spacing: 1.1px;
    text-align: center;
}

.step h2::before{
    content: "";
    position: absolute;
    width: 90%;
    height: 0.539rem;
    background: #3CABAD;
    bottom: -1.6rem;
    left: 50%;
    border-radius: 9999px;
    transform: translateX(-50%);
}

.step-list{
    display: flex;
    flex-direction: row;
    background: #F7F7F7;
    border-radius: 1.37rem;
    margin: 0 0 3.3rem;
}

.step-list li{
    font: 1em sans-serif;
}

.step-list li:nth-of-type(1){
    width: 35%;
    padding: 1.5rem;
}

.step-list li:nth-of-type(2){
    width: 65%;
    text-align: left;
    padding: 1.5rem 0;
}

.step-list li:nth-of-type(2) > h3{
    background: #3CABAD;
    color: #FFF;
    font-size: 1.6rem;
    font-weight: 900;
    letter-spacing: 1.1px;
    display: inline-block;
    border-radius: 3rem;
    padding: 0.5px 2rem 0.5px;
    margin: 0 0 1.7rem;
}

.step-list li:nth-of-type(2) > p{
    font-size: 1.6rem;
    font-weight: 900;
    padding: 0 0 0 2rem;
}

.step-list:nth-of-type(1) li > img{
    width: 10rem;
}

.step-list:nth-of-type(2) li > img{
    width: 8.6rem;
}

.download-link {
  color: #0025FF;          
  text-decoration: none; 
}

.download-link:hover {
  text-decoration: underline; 
}

/* FAQ */
.faq{
    background: #FFF;
    text-align: center;
    padding: 2rem 2rem 3rem;
}

.faq h2{
    font-size: 2.4rem;
    font-weight: 900;
    position: relative;
    display: inline-block;
    margin: 0 0 5rem;
    letter-spacing: 1.1px;
    text-align: center;
}

.faq h2::before{
    content: "";
    position: absolute;
    width: 300%;
    height: 0.539rem;
    background: #3CABAD;
    bottom: -1.6rem;
    left: 50%;
    border-radius: 9999px;
    transform: translateX(-50%);
}

.faq h3{
    font-size: 1.5rem;
    font-weight: bold;
    color: #3CABAD;
    text-align: left;
    letter-spacing: 1.1px;
    margin: 0 0 1rem;
	color: #3CABAD
}

.faq p{
    background: #F7F7F7;
    padding: 1.5rem;
    border-radius: 1.37rem;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 1.1px;
    text-align: left;
    line-height: 1.4;
    margin: 0 0 2.5rem;
}

/* SHAREFULL */
.sharefull{
    background: #FFF;
}

.sharefull-inner{
    background: #ECFFFF;
    border-radius: 1.37rem;
    text-align: center;
    padding: 3rem 1.5rem;
}

.sharefull-inner h2{
    font-size: 2.4rem;
    font-weight: 900;
    position: relative;
    display: inline-block;
    margin: 0 0 6rem;
    letter-spacing: 1.1px;
    text-align: center;
}

.sharefull-inner h2::before{
    content: "";
    position: absolute;
    width: 81%;
    height: 0.539rem;
    background: #3CABAD;
    bottom: -1.6rem;
    left: 50%;
    border-radius: 9999px;
    transform: translateX(-50%);
}

.sharefull-box{
    background: #FFF;
    border-radius: 2rem;
    padding: 1.5rem;
}

.sharefull-box h3{
    background: #3CABAD;
    display: inline-block;
    color: #FFF;
    font-size: 1.4rem;
    font-weight: bold;
    padding: 1.2rem 0;
    border-radius: 5rem;
    position:relative;
    margin: 0 0 2rem;
    width: 24rem;
}

.sharefull-box h3::before{
    content: "";
    position: absolute;
    border: 10px solid transparent;
    border-top: 15px #3CABAD solid;
    bottom: -2.2rem;
    left: 50%;
    transform: translateX(-50%);
}

.sharefull-box h3:nth-of-type(3){
    background: #F87292;
	width: 32rem;
}

.sharefull-box h3:nth-of-type(3):before{
    border-top: 20px #F87292 solid;
}

.sharefull-box p{
    background: #EAF8F8;
    border-radius: 1.37rem;
    padding: 2rem 0;
    font-size: 1.4rem;
    font-weight: bold;
    letter-spacing: 1.1px;
    line-height: 1.5;
    margin: 0 0 2.5rem;
}

.sharefull-box p:nth-of-type(3){
    background: #FFF3F3;
}

.sharefull-box img{
    width: 25rem;
}

/* FOOTER */
footer{
    font-family: "Inter", sans-serif;
    font-size: 1.2rem;
    text-align: center;
    background: #FFF;
    padding: 3rem 0;
}

/*******************************
PC
********************************/
@media screen and (min-width: 601px) {
    /*******************************
    COMMON CSS
    ********************************/
    html {
        font-size: 62.5%;
    }

    body {
        font-family: "Noto Sans JP", sans-serif;
        font-style: normal;
        background: #F3FFFF;
        font-size: 1.6rem;
    }

    h1, h2, h3, h4, h5, h6 {
        font-size: revert;
    }

    img {
        image-rendering: -webkit-optimize-contrast;
    }

    a {
        transition: 0.3s;
    }

    /* MARGIN */
    .tmg10{ margin-top: 3rem; }
    .tmg30{ margin-top: 3rem; }
    .tmg50{ margin-top: 3rem; }
    .bmg25{ margin-bottom: 3rem; }

    .wrapper{
        width: 51.4rem;
        max-width: 100%;
        margin: auto;
        box-shadow: 0 0 10px rgba(0, 0, 0, 0.25);
    }

    /* BUTTON */
    .bt-wrap{
        width: 100%;
    }

    .bt-apply__single{
        display: block;
        width: 90%;
        height: 10rem;
        background: #3CABAD;
        border-radius: 5rem;
        color: #fff;
        padding: 1.9rem 0 0 10rem;
        position:relative;
        margin: auto;
        box-shadow: inset 0 0 0 1px #FFF, 0 2.74px 6.85px 3.43px rgba(0, 0, 0, 0.25);
        border: 1.37px #fff solid;
        font-size: 2.9rem;
        font-weight: 900;
        line-height: 1;
        letter-spacing: 1.1px;
        text-align: left;
    }

    .bt-apply__single::before{
        content:"簡単\A応募";
        position:absolute;
        width: 7.5rem;
        height: 7.5rem;
        background:#fff;
        top: 50%;
        left: 1.3rem;
        color: #3CABAD;
        white-space: pre;
        border-radius: 5rem;
        font-size: 1.6rem;
        font-weight: bold;
        display: flex;
        align-items: center;
        justify-content: center;
        line-height: 1.2;
        letter-spacing: 0.1vw;
        transform: translateY(-50%);
    }

    .bt-apply__single::after {
        content: "";
        position: absolute;
        background: url(../images/icon_right_arrow.png) no-repeat;
        width: 1.8rem;
        height: 2.3rem;
        background-size: 1.8rem;
        top: 50%;
        right: 5rem;
        transform: translateY(-50%);
    }


    .bt-apply__single > span{
        font-size: 2.3rem;
        font-weight: 900;
    }

    .bt-apply__single.w100{
        width: 100%;
    }

    .bt-apply__long{
        display: flex;
        width: 95%;
        height: 10rem;
        background: #E64E50;
        border-radius: 5rem;
        color: #fff;
        position:relative;
        box-shadow: inset 0 0 0 1px #FFF, 0 2.74px 6.85px 3.43px rgba(0, 0, 0, 0.25);
        border: 1.37px #fff solid;
        font-size: 2.58rem;
        font-weight: 900;
        line-height: 1;
        letter-spacing: 1.1px;
        align-items: center;
        padding: 0 0 0 5rem;
        margin: auto;
    }

    .bt-apply__long::after {
        content: "";
        position: absolute;
        background: url(../images/icon_right_arrow.png) no-repeat;
        width: 1.8rem;
        height: 2.3rem;
        background-size: 1.8rem;
        top: 50%;
        right: 3rem;
        transform: translateY(-50%);
    }


    .bt-apply__long > span{
        font-size: 2.06rem;
        font-weight: 900;
        padding: 0.5rem 0 0;
    }

    .bt-app{
        display: flex;
        width: 95%;
        height: 10rem;
        background: #F63261;
        border-radius: 5rem;
        color: #fff;
        position:relative;
        box-shadow: inset 0 0 0 1px #FFF, 0 2.74px 6.85px 3.43px rgba(0, 0, 0, 0.25);
        border: 1.37px #fff solid;
        font-size: 2.58rem;
        font-weight: 900;
        line-height: 1;
        letter-spacing: 1.1px;
        align-items: center;
        padding: 0 0 0 5rem;
        margin: auto;
    }

    .bt-app::after {
        content: "";
        position: absolute;
        background: url(../images/icon_right_arrow.png) no-repeat;
        width: 1.8rem;
        height: 2.3rem;
        background-size: 1.8rem;
        top: 50%;
        right: 3rem;
        transform: translateY(-50%);
    }


    .bt-app > span{
        font-size: 2.06rem;
        font-weight: 900;
        padding: .5rem 0 0;
    }

    .bt-apply__single:hover,
    .bt-apply__long:hover,
    .bt-app:hover{
        transition: .5s;
        opacity: .7;
    }

    /* HEADER */
    header{
        width: 100%;
    }

    header img{
        width: 100%;
    }

    /* MV */
    .mv{
        width: 100%;
        overflow: hidden;
        background: #FFF;
    }

    .mv img{
        width: 100%;
    }

    /* CHARM */
    .charm{
        background: #FFF3F3;
        padding: 3rem 2rem 3rem;
        text-align: center;
    }

    .charm h2:nth-of-type(1){
        font-size: 2.95rem;
        font-weight: 900;
        position: relative;
        display: inline-block;
        margin: 0 0 5rem;
        letter-spacing: 1.1px;
    }

    .charm h2:nth-of-type(1)::before{
        content: "";
        position: absolute;
        width: 100%;
        height: 0.539rem;
        background: #DD0900;
        bottom: -1.6rem;
        left: 0;
        border-radius: 9999px;
    }

    .charm h2:nth-of-type(1)::after{
        position: absolute;
        bottom: -3.5rem;
        right: 0;
        font-size: 1.03rem;
        color: #000000;
        font-weight: 900;
        letter-spacing: 0.5px;
    }

    .charm h2:nth-of-type(1) > sup{
        font-size: 1rem;
        vertical-align: super;
        position: relative;
        top: -0.7rem;
        left: -0.5rem;
    }

    .charm h2:nth-of-type(1) > span{
        font-size: 3.3rem;
        color: #DD0900;
        position:relative;
    }

    .charm h2:nth-of-type(1) > span::after{
        position: absolute;
        content: "";
        background: url(../images/image_sparkle.png) no-repeat;
        background-size: 1.7rem;
        width: 1.7rem;
        height: 1.8rem;
        top: 0;
        right: -0.8rem;
    }

    .charm h2:nth-of-type(2){
        font-size: 2.95rem;
        font-weight: 900;
        position: relative;
        display: inline-block;
        margin: 0 0 5rem;
        letter-spacing: 1.1px;
        width: 80%;
    }

    .charm h2:nth-of-type(2)::before{
        content: "";
        position: absolute;
        width: 100%;
        height: 0.539rem;
        background: #E64E50;
        bottom: -1.6rem;
        left: 0;
        border-radius: 9999px;
    }

    .charm-box{
        text-align: left;
        background: #FFF;
        padding: 2rem;
        border-radius: 1rem;
        box-shadow: 0 2.74px 2.74px 0 rgba(0, 0, 0, 0.25);
        margin: 0 0 2.6rem;
    }

    .charm-box:nth-of-type(3){
        margin: 0 0 4rem;
    }

    .charm-box h3{
        font-size: 2.2rem;
        font-weight: 900;
        color: #DD0900;
        letter-spacing: 1.1px;
        margin: 0 0 1.3rem;
        position: relative;
        height: 3.7rem;
        display: flex;
        align-items: center;
        padding: 0 0 0 5rem;
    }

    .charm-box h3::before{
        position:absolute;
        content:"";
        background: url(../images/icon_check.png) no-repeat;
        width: 3.7rem;
        height: 3.7rem;
        background-size: 3.7rem;
        top: 0;
        left: 0;
    }
	
	.charm-title::after {
		content: "※長期アルバイトの場合";
		position: absolute;
		bottom: -3rem;
		left: 16rem;
		font-size: 0.9rem;
		color: #000;
		white-space: nowrap;
		font-weight: bold;
		line-height: 1;
	}

    .charm-box p{
        font-size: 1.645rem;
        font-weight: bold;
        line-height: 1.2;
    }

    .recommend{
        display: flex;
        flex-direction: row;
        width: 100%;
        justify-content: space-around;
    }

    .recommend li{
        background: #FFF;
        border-radius: 50%;
        width: 30%;
        aspect-ratio: 1/1;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 2.4px #E64E50 solid;
        font-size: 2.2rem;
        font-weight: 900;
        letter-spacing: 1.1px;
    }

    /* WORKS */
    .works{
        text-align: center;
        background: #FFF;
        padding: 4rem 2rem 4.5rem;
    }

    .works h2{
        font-size: 3.29rem;
        font-weight: 900;
        position: relative;
        display: inline-block;
        margin: 0 0 5rem;
        letter-spacing: 1.1px;
        width: 86%;
        text-align: center;
    }

    .works h2::before{
        content: "";
        position: absolute;
        width: 100%;
        height: 0.539rem;
        background: #3CABAD;
        bottom: -1.6rem;
        left: 0;
        border-radius: 9999px;
    }

    .works h2 > span{
        font-size:2.2rem;
    }

    .works-box{
        border: 2.74px #3CABAD solid;
        border-radius: 1.5rem;
        padding: 3rem 1.5rem;
        text-align: left;
    }

    .works-box h3{
        font-size: 2.2rem;
        font-weight: 900;
        color: #FFF;
        background: #3CABAD;
        display: inline-block;
        border-radius: 6.85px;
        padding: 0.5rem;
        letter-spacing: 1.75px;
        width: 11rem;
        text-align: center;
        margin: 0 0 2rem;
    }

    .works-box h3:nth-of-type(4){
        position:relative;
    }

    .works-box h3:nth-of-type(4)::before{
        position:absolute;
        content:"※店舗により異なります";
        font-size: 1.1rem;
        color: #000;
        white-space: nowrap;
        letter-spacing: 0;
        font-weight: bold;
        top: 50%;
        right: -13rem;
        transform: translateY(-50%);
    }

    .works-box h4{
        font-size: 2.2rem;
        font-weight: bold;
        padding: 0 0 0 1rem;
        margin: 0 0 2rem;
        line-height: 1.3;
    }

    .works-box h4:nth-of-type(3),
    .works-box h4:nth-of-type(4){
        margin: 0 0 2rem;
    }

    .works-box p{
        font-size: 1.645rem;
        font-weight: bold;
        margin: 0 0 3rem;
        padding: 0 0 0 1rem;
        line-height: 1.3;
    }

    /* TREATMENT */
    .treatment{
        padding: 5rem 1.5rem;
        background: #FFF3F3;
        text-align: center;
    }

    .treatment h2{
        font-size: 3.29rem;
        font-weight: 900;
        position: relative;
        display: inline-block;
        margin: 0 0 5rem;
        letter-spacing: 1.1px;
        width: 80%;
        text-align: center;
        color: #E64E50;
    }

    .treatment h2::before{
        content: "";
        position: absolute;
        width: 100%;
        height: 0.539rem;
        background: #E64E50;
        bottom: -1.6rem;
        left: 0;
        border-radius: 9999px;
    }

    .treatment h2 > span{
        font-size: 2.2rem;
        color: #000;
    }

    .treatment > img{
        width: 35.9rem;
        margin: 0 0 2rem;
    }

    .treatment-list{
        display: flex;
        flex-direction: row;
        width: 100%;
        justify-content: space-around;
        color: #E64E50;
    }

    .treatment-list li{
        background: #FFF;
        border-radius: 50%;
        width: 30%;
        aspect-ratio: 1/1;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 2.4px #E64E50 solid;
        font-size: 2.2rem;
        font-weight: 900;
        letter-spacing: 1.1px;
        flex-direction: column;
        line-height: 1.3;
    }

    .treatment-list li:nth-of-type(1) > img{
        width: 3.77rem;
        margin: .5rem 0 0;
    }

    .treatment-list li:nth-of-type(2) > img{
        width: 2.88rem;
        margin: 0.8rem 0 0;
    }

    .treatment-list li:nth-of-type(3) > img{
        width: 3.77rem;
        margin: .5rem 0 0;
    }

    /* STEP */
    .step{
        padding: 5rem 3rem;
        background: #FFF;
        text-align: center;
    }

    .step h2{
        font-size: 3.29rem;
        font-weight: 900;
        position: relative;
        display: inline-block;
        margin: 0 0 5rem;
        letter-spacing: 1.1px;
        text-align: center;
    }

    .step h2::before{
        content: "";
        position: absolute;
        width: 90%;
        height: 0.539rem;
        background: #3CABAD;
        bottom: -1.6rem;
        left: 50%;
        border-radius: 9999px;
        transform: translateX(-50%);
    }

    .step-list{
        display: flex;
        flex-direction: row;
        background: #F7F7F7;
        border-radius: 1.37rem;
        margin: 0 0 3.3rem;
    }

    .step-list li{
        font: 1em sans-serif;
    }

    .step-list li:nth-of-type(1){
        width: 35%;
        padding: 2rem;
    }

    .step-list li:nth-of-type(2){
        width: 65%;
        text-align: left;
        padding: 2rem 0;
    }

    .step-list li:nth-of-type(2) > h3{
        background: #3CABAD;
        color: #FFF;
        font-size: 2.2rem;
        font-weight: 900;
        letter-spacing: 1.1px;
        display: inline-block;
        border-radius: 3rem;
        padding: 0.5px 2rem 0.5px;
        margin: 0 0 2.5rem;
    }

    .step-list li:nth-of-type(2) > p{
        font-size: 2.2rem;
        font-weight: 900;
        padding: 0 0 0 2rem;
    }

    .step-list:nth-of-type(1) li > img{
        width: 13.7rem;
    }

    .step-list:nth-of-type(2) li > img{
        width: 11.75rem;
    }


    /* FAQ */
    .faq{
        background: #FFF;
        text-align: center;
        padding: 2rem 3rem 5rem;
    }

    .faq h2{
        font-size: 3.29rem;
        font-weight: 900;
        position: relative;
        display: inline-block;
        margin: 0 0 5rem;
        letter-spacing: 1.1px;
        text-align: center;
    }

    .faq h2::before{
        content: "";
        position: absolute;
        width: 300%;
        height: 0.539rem;
        background: #3CABAD;
        bottom: -1.6rem;
        left: 50%;
        border-radius: 9999px;
        transform: translateX(-50%);
    }

    .faq h3{
        font-size: 1.92rem;
        font-weight: bold;
        color: #3CABAD;
        text-align: left;
        letter-spacing: 1.1px;
        margin: 0 0 1.5rem;
    }

    .faq p{
        background: #F7F7F7;
        padding: 1.5rem;
        border-radius: 1.37rem;
        font-size: 1.92rem;
        font-weight: normal;
        letter-spacing: 1.1px;
        text-align: left;
        line-height: 1.3;
        margin: 0 0 3.5rem;
    }

    /* SHAREFULL */
    .sharefull{
        background: #FFF;
    }

    .sharefull-inner{
        background: #ECFFFF;
        border-radius: 1.37rem;
        text-align: center;
        padding: 4rem 2rem;
    }

    .sharefull-inner h2{
        font-size: 3.29rem;
        font-weight: 900;
        position: relative;
        display: inline-block;
        margin: 0 0 6rem;
        letter-spacing: 1.1px;
        text-align: center;
    }

    .sharefull-inner h2::before{
        content: "";
        position: absolute;
        width: 81%;
        height: 0.539rem;
        background: #3CABAD;
        bottom: -1.6rem;
        left: 50%;
        border-radius: 9999px;
        transform: translateX(-50%);
    }

    .sharefull-box{
        background: #FFF;
        border-radius: 2rem;
        padding: 2rem;
    }

    .sharefull-box h3{
        background: #3CABAD;
        display: inline-block;
        color: #FFF;
        font-size: 1.8rem;
        font-weight: bold;
        padding: 1.5rem 2rem;
        border-radius: 5rem;
        position:relative;
        margin: 0 0 2.5rem;
        width: 30rem;
    }

    .sharefull-box h3::before{
        content: "";
        position: absolute;
        border: 15px solid transparent;
        border-top: 20px #3CABAD solid;
        bottom: -3rem;
        left: 50%;
        transform: translateX(-50%);
    }

    .sharefull-box h3:nth-of-type(3){
        background: #F87292;
    }

    .sharefull-box h3:nth-of-type(3):before{
        border-top: 20px #F87292 solid;
    }

    .sharefull-box p{
        background: #EAF8F8;
        border-radius: 1.37rem;
        padding: 2rem;
        font-size: 1.92rem;
        font-weight: bold;
        letter-spacing: 1.1px;
        line-height: 1.5;
        margin: 0 0 3rem;
    }

    .sharefull-box p:nth-of-type(3){
        background: #FFF3F3;
    }

    .sharefull-box img{
        width: 33.2rem;
    }

    /* FOOTER */
    footer{
        font-size: 1.6rem;
        font-family: "Inter", sans-serif;
        text-align: center;
        background: #FFF;
        padding: 3rem 0;
    }
}