@charset "utf-8";

:root {
    --main-color1: #e5efe4;
    --main-color2: #f9e4ec;
    --main-color3: #cce2e2;
    --sub-color1: #769669;
    --sub-color2: #bf87a9;
    --sub-color3: #699389;
    --cta-green: #92ad88;
    --accent-color2: #d34f78;
    --pale-text-color: #5F3C13aa;
    --normal-text-color: #000;
    --hb-back-color: #3c3c3c;
    --back-gradient-color: linear-gradient(20deg, #4d4d4d, #29251e);
}

/* SP基本ここから */

/* リセットここから */
.container figure {
    margin: 0;
}

.container .wp-block-columns {
    margin-bottom: 0;
}

/* リセットここまで */

*::after,
::before {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
    font-size: 14px;
}

body {
    font-family: "mizolet", sans-serif;
    font-weight: 400;
    font-style: normal;
    margin: 0;
    overflow-x: hidden;
    box-sizing: border-box;
    font-weight: 300;
    background-color: var(--main-color);
}

h1 {
    font-size: 2rem;
    font-weight: 300;
    padding: 0 0 1.5rem 0;
    margin: 0;
    color: #fff;
    text-align: center;
    font-size: 2.2rem;
}

h2,
h3,
h4,
p {
    color: var(--normal-text-color);
    letter-spacing: normal;
    font-weight: 300;
}

a {
    color: var(--normal-text-color);
    text-decoration: none;
}

h2 {
    font-size: 1.56rem;
    line-height: 2.5rem;
    margin: 1.25rem auto;
    padding: 0;
    text-align: center;
    color: var(--normal-text-color);
    width: fit-content;
}

.h2 {
    font-size: clamp(1.2rem,4.6vw,1.5rem);
    line-height: 2.25rem;
    margin: .2rem auto 0;
    padding: .3rem 1rem;
    background-color: var(--sub-color2);
    color: #fff;
    display: inline-block;
}

.h2-small {
    font-size: clamp(.5rem,2.7vw,1.07rem);
    line-height: 1.6rem;
    margin: 1.25rem auto;
    padding: .1rem .8rem;
    text-align: center;
    background-color: var(--sub-color2);
    color: #fff;
}

.h2 .h2-small {
    padding: 0;
    margin: 0;
}

h2:has(> .h2) {
    text-align-last: left;
    margin: 0 auto 1em 0;
}

.sp-small-h2 {
    font-size: 1.3rem;
    line-height: 1.95rem;
}

h3 {
    font-size: 1.25rem;
    margin: .5rem auto 0;
    padding: 0;
    position: relative;
    width: fit-content;
    z-index: 1;
    text-align: center;
}

h3::before {
    content: "";
    background-image: url(img/h3-decoration.png);
    display: inline-block;
    position: absolute;
    top: .3rem;
    left: .5rem;
    width: 12rem;
    height: 3rem;
    background-size: contain;
    background-repeat: no-repeat;
    z-index: -1;
}

h4 {
    margin: 2rem 0 1rem 0;
    padding: .5rem 0;
    font-size: 1.5rem;
    line-height: 2.25rem;
    background-color: var(--cta-green);
    color: #fff;
    text-align: center;
}

h4 span {
    font-size: 1.2rem;
    line-height: 1.8rem;
}

p {
    font-size: 1rem;
    line-height: 1.5rem;
    margin: 0;
    letter-spacing: .05rem;
}

.p-small {
    font-size: .8rem;
    text-align: center;
    line-height: 1.2rem;
}

ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

img {
    width: 100%;
}

picture img {
    vertical-align: middle;
}

.logo {
    width: 85%;
    margin: 0 auto;
    display: block;
}

section {
    width: 100%;
    padding: 0;
}

section>div:first-of-type {
    padding-top: 2rem;
}

section>.last-div {
    padding-bottom: 2rem;
}

.w-control {
    width: 85%;
    margin: 0 auto;
    max-width: 600px;
}

.imp-w-control {
    width: 95%;
    margin: 0 auto;
    max-width: 670px;
}

/* SPボタンcssここから */
/* ボタン1ここから */

.btn {
    height: fit-content;
    width: fit-content;
}

.btn a {
    position: relative;
    display: block;
    width: fit-content;
    padding: 1rem 3rem 1rem 2.5rem;
    padding-left: clamp(1rem,11.2vw,3rem);
    padding-right: clamp(1rem,11.2vw,3rem);
    background: linear-gradient(180deg, #edb5cb, #bf87a9);
    font-size: clamp(.8rem,3.6vw,1.2rem);
    font-weight: 500;
    letter-spacing: .1rem;
    color: #fff;
    text-decoration: none;
    text-align: center;
    transition: .2s;
    box-sizing: border-box;
    border-radius: 5rem;
    box-shadow: #33333333 3px 3px 5px;
    text-shadow: #9b5756 1px 1px 0;
}

.btn a::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: -.5rem;
    right: 1.2rem;
    width: 1.2rem;
    height: 9px;
    margin: auto;
    border-top: 1px solid #fff;
    transition: .2s;
    box-sizing: border-box;
}

.btn a::after {
    content: '';
    position: absolute;
    top: 0;
    bottom: .2rem;
    right: 1.3rem;
    width: .8rem;
    height: 9px;
    margin: auto;
    border-top: 1px solid #fff;
    transform: rotate(45deg);
    transition: .2s;
    box-sizing: border-box;
}

/* ホバー時のスタイル */
.btn-scale a:hover {
    transform: scale(0.95);
}

/* ボタン2ここから */
.btn2 {
    margin: .2rem 0 .5rem .5rem;
    width: 100%;
}

.btn2 a {
    background: #fff;
    color: var(--normal-text-color);
    text-align: center;
    width: 80%;
    padding: 1rem 2.5rem 1rem 1.5rem;
    letter-spacing: 0;
    text-shadow: none;
}

.btn2 a::before {
    border-top: 1px solid var(--normal-text-color);
}

.btn2 a::after {
    border-top: 1px solid var(--normal-text-color);
}

.btn2 a:has(> span) {
    padding: 0 2.5rem .5rem 1rem;
    letter-spacing: .1rem;
}

.font-s {
    font-size: .9rem;
}

/* SPボタンcssここまで */

/* SP基本ここまで */

/* SPコンテンツここから */

/* FVここから */
.contents-back-pink {
    background-color: #c9a3b3;
    position: relative;
}

.contents-back-pink:before {
    content: "";
    position: absolute;
    top: 99%;
    left: 50%;
    margin-left: -20px;
    border: 20px solid transparent;
    border-top: 20px solid #c9a3b3;
    z-index: 1;
}

.fv .contents-back-pink p {
    font-family: "Hiragino Kaku Gothic ProN","Hiragino Sans","Meiryo", sans-serif;
    font-weight: 700;
    font-size: 1rem;
    padding-bottom: 1.25rem;
}

.bag-w {
    background-color: #fff;
}

.contents-back-gradation {
    background: linear-gradient(#ddeae0, #ddeae0 30%, #a0b39f);
    padding-top: 2.42rem;
    position: relative;
}

.wemen-cap1 {
    position: absolute;
    top: 2rem;
    left: 10%;
    font-size: 1.67rem;
    line-height: 2.5rem;
    width: 80%;
    text-align: center;
    background-color: var(--sub-color2);
    color: #fff;
    border-radius: 5rem;
}

.wemen-cap2 {
    position: absolute;
    bottom: clamp(4.5rem,16.8vw,8rem);
    left: 7.5%;
}

.wemen-cap2>span {
    display: block;
    background-color: #fff;
    color: #798575;
    font-size: clamp(1.2rem,4.5vw,1.85rem);
    margin-bottom: clamp(.2rem,.8vw,.5rem);
    width: fit-content;
    padding-top: clamp(.2rem,.8vw,.5rem);
    padding-bottom: clamp(.2rem,.8vw,.5rem);
    padding-left: clamp(.5rem,2vw,1rem);
    padding-right: clamp(.5rem,2vw,1rem);
}

.wemen-cap3 {
    position: absolute;
    bottom: 1rem;
    bottom: clamp(1rem,4vw,8rem);
    left: 7.5%;
    background-color: #798575cc;
    color: #fff;
    font-size: .8rem;
    width: fit-content;
    padding: .2rem .5rem;
    line-height: 1.2rem;
}
/* FVここまで */

/* CTAここから */
.cta-wrap1 {
    background-color: var(--main-color1);
}

.cta-left {
    margin: 0 auto .8rem;
}

.cta-left p {
    font-size: .8rem;
    font-size: clamp(.7rem,2.7vw,.8rem);
    text-align: center;
    line-height: 1.2rem;
}

.cta-attention-wrap {
    display: flex;
    gap: .35rem;
    margin: 0 0 .5rem;
}

.cta-attention {
    background-color: var(--accent-color2);
    color: #fff;
    font-size: 1.2rem;
    padding: .2rem 0;
    padding-left: clamp(.5rem,2.9vw,.8rem);
    padding-right: clamp(.5rem,2.9vw,.8rem);
    border-radius: 2rem;
}

.cta-area1,
.cta-area2 {
    margin-bottom: .8rem;
}

.cta-area1 {
    background-color: #fff;
    border: solid 1px var(--accent-color2);
    padding: .3rem;
}

.cta-btn-wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 .5rem;
    margin-top: 0.5rem;
}

.cta-area1 .cta-attention-wrap {
    display: flex;
    flex-direction: column;
    width: fit-content;
}

.cta-area1 .cta-attention-wrap .cta-attention {
    width: fit-content;
    font-size: 1rem;
    font-size: clamp(.8rem,3.5vw,1.2rem);
}

.cta-area1 .cta-attention-wrap .cta-attention span {
    font-size: .6rem;
}

.cta-area2 {
    background-color: var(--cta-green);
    padding: .3rem;
}

.cta-wrap2 .cta-area2 {
    background-color: var(--sub-color3);
}

.cta-wrap2 {
    background-color: var(--main-color3);
}

/* CTAここから */

/* セクション１ここから */
.section1 {
    background-color: var(--main-color1);
}

.section1 .logo,
.section4 .logo {
    filter: invert(69%) sepia(30%) saturate(262%) hue-rotate(59deg) brightness(91%) contrast(87%);
    width: 55%;
}

.section1-container {
    padding-top: 3.2rem;
    background-image: url(img/sp-section1-bg.png);
    background-repeat: no-repeat;
    background-size: contain;
}

.section1-content {
    margin-bottom: 1rem;
    position: relative;
    z-index: 2;
}

.section1-content::after {
    content: "";
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
}

.section1-content img {
    width: 35%;
    display: block;
    margin: 0 auto;
}

.section1-content::after {
    width: 64%;
    height: 100%;
    top: 0;
    right: 0;
}

.section1-content:nth-child(2n):after {
    right: auto;
    left: 0;
}

.section1-content:nth-of-type(1) img {
    /* margin-left: 28%; */
    margin-left: 0;
}

.section1-content:nth-of-type(1)::after {
    background-image: url(img/sp-section1-cap1.png);
    /* top: 2rem;
    right: 3rem;
    height: 60%;
    width: 42%; */
}

.section1-content:nth-of-type(2) img {
    /* margin-left: 15%; */
    margin-right: 0;
}

.section1-content:nth-of-type(2)::after {
    background-image: url(img/sp-section1-cap2.png);
    /* top: -4.5rem;
    left: -1rem;
    height: 70%;
    width: 50%; */
}

.section1-content:nth-of-type(3) {
    /* margin-top: -30%; */
    margin-top: 0;
}

.section1-content:nth-of-type(3)::after {
    background-image: url(img/sp-section1-cap3.png);
    /* top: -3.8rem;
    right: -2rem;
    height: 70%;
    width: 50%; */
}

.section1-content:nth-of-type(3) img {
    /* margin-left: 47%; */
    margin-left: 0;
}

.section1-content:nth-of-type(4) {
    /* margin-top: -17%; */
    margin-top: 0;
}

.section1-content:nth-of-type(4)::after {
    background-image: url(img/sp-section1-cap4.png);
    /* top: 2rem;
    right: .5rem;
    height: 70%;
    width: 50%;
    z-index: 10; */
}

.section1-content:nth-of-type(4) img {
    /* margin-left: 17%; */
    margin-right: 0;
}

.section1-content:nth-of-type(5) {
    /* margin-top: -15%;
    z-index: 1; */
    display: none;
}

/* セクション１ここまで */

/* セクション2ここから */
.section2 {
    background-color: var(--main-color2);
}

.section2-img1 {
    width: 55%;
    display: block;
    margin: -3rem 12% 0 auto;
}

.section2-content {
    background-color: #fff;
    padding: 1.5rem 2.5%;
    margin-top: 0.8rem;
    border-radius: 1rem;
}

.section2-content img {
    width: 42%;
    display: block;
    margin: 1rem auto;
}

.section2-content:last-of-type>img:last-of-type {
    width: 100%;
}

.section2 .pc-imp-control-reverse p:first-of-type {
    font-size: clamp(1.3rem,4.8vw,1.5rem);
    line-height: 2.25rem;
    color: var(--accent-color2);
    margin-bottom: 1rem;
}

/* セクション2ここまで */

/* セクション3ここから */
.section3 {
    background-color: var(--main-color1);
}

.section3 h2 img {
    width: 50%;
    display: block;
    margin: 1rem auto .5rem;
}

.section3-bg {
    background-image: url(img/sp-section3-bg.png);
    background-size: contain;
    background-repeat: no-repeat;
    padding: 1rem 0;
}

.section3-bg img {
    width: 85%;
    display: block;
    margin: 1.3rem auto;
}

.bag-pink {
    display: inline-block;
    background-color: var(--sub-color2);
}

.section3-img4 {
    width: 80%;
    display: block;
    margin: 1rem auto 1rem;
}

.section3 h3 {
    margin: 3rem auto 1rem;
}

.section3 p {
    margin: 1rem 0;
}

.section2-content .section3-img5 {
    width: 60%;
    display: block;
    margin: 1rem auto 3rem;
}

.section3-img6 {
    display: block;
    width: 100%;
    margin: 2rem auto 3rem;
}

.profile-img-wrap {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 1rem 0;
}

.profile-img-wrap>div {
    width: 65%;
    height: fit-content;
}

table {
    margin: 1rem 0;
}

th,
td {
    margin: 0;
    padding: 0;
    font-weight: 100;
}

th {
    display: flex;
    align-items: start;
    width: 4rem;
    padding-right: 1rem;
}

td span {
    position: relative;
}

td span::before {
    content: "：";
    display: block;
    position: absolute;
    top: 0;
    left: -1rem;
}

.s3-lastcontent {
    display: flex;
    margin-bottom: 1rem;
    gap: 0.5rem;
    align-items: start;
}

.s3-lastcontent>div {
    width: 65%;
    height: fit-content;

}

.s3-lastcontent p {
    margin: 0;
    width: 30%;
}

/* セクション3ここまで */

/* セクション4ここから */
.section4 {
    background-color: var(--main-color2);
}

.section4>p {
    color: #fff;
    font-size: 2.5rem;
    font-weight: 900;
    text-align: center;
    margin: 2rem 0;
}

.section4 .section2-content:last-of-type>img {
    display: block;
}

.section4 .section2-content:last-of-type img:last-of-type {
    width: 100%;
}

.section4 .imp-w-control .s4-content-img {
    position: relative;
    width: fit-content;
    width: 42%;
    margin: 1rem auto;
}

.section4 .imp-w-control div:has(> img)::after {
    content: "";
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
}

.section4 .imp-w-control:nth-of-type(2) div:has(> img)::after {
    background-image: url(img/sp-section4-dec1.png);
    top: 57%;
    right: -3.5rem;
    height: 35%;
    width: 35%;
}

.section4 .imp-w-control:nth-of-type(3) div:has(> img)::after {
    background-image: url(img/sp-section4-dec2.png);
    top: 35%;
    left: -6.3rem;
    height: 70%;
    width: 70%;
}

.section4 .imp-w-control:nth-of-type(4) div:has(> img)::after {
    background-image: url(img/sp-section4-dec3.png);
    top: 20%;
    right: -8rem;
    height: 75%;
    width: 75%;
}

.section4 .imp-w-control:nth-of-type(5) div:has(> img)::after {
    background-image: url(img/sp-section4-dec4.png);
    top: 0;
    left: -5rem;
    height: 80%;
    width: 83%;
}

.section4 .imp-w-control:nth-of-type(6) div:has(> img)::after {
    background-image: url(img/sp-section4-dec5.png);
    top: 57%;
    right: -7rem;
    height: 70%;
    width: 70%;
}

.section4 .imp-w-control:nth-of-type(7) div:has(> img)::after {
    background-image: url(img/sp-section4-dec6.png);
    top: 17%;
    right: -7rem;
    height: 85%;
    width: 85%;
}

.last-section {
    padding-bottom: 3rem;
}

/* セクション4ここまで */

/* フッターここから */

footer {
    background-color: var(--main-color1);
    display: flex;
    padding: 1rem 0;
}

.copyright {
    text-align: center;
    font-size: 1rem;
    line-height: 18px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    color: var(--normal-text-color);
}
/* フッターここまで */

/* SPコンテンツここまで */

/* タブレットここから */
@media (min-width:599px) {

    /* tab基本ここから */
    h2 {
        font-size: 2rem;
        padding: 1.4285rem 0 2rem;
    }
    h3 {
        margin-bottom: 3rem;
    }
    /* tab基本ここまで */

/* フッターここから */

.copyright {
    gap: 1rem;
}
/* フッターここまで */
}

/* タブレットここまで */


/* pcここから */
@media (min-width:860px) {

    /* PC基本ここから */
    h1 {
        font-size: 2.95rem;
    }

    h2 {
        margin: 0 auto;
        font-size: 2.15rem;
    }

    .h2 {
        font-size: clamp(1.3rem,4.8vw,1.5rem);
        line-height: 2.25rem;
        margin: .2rem auto 0;
        padding: .3rem 1rem;
        background-color: var(--sub-color2);
        color: #fff;
        display: inline-block;
    }
    
    .h2-small {
        font-size: 1.42rem;
        line-height: 2.14rem;
        padding: .3rem 1rem;
        margin: 1.5rem auto;
    }
    
    .h2 .h2-small {
        font-size: 1rem;
    }
    
    h2:has(> .h2) {
        text-align-last: left;
        margin: 0 auto 0 0;
    }
    
    .sp-small-h2 {
        font-size: 2.15rem;
        line-height: 4rem;
    }
    
    h3 {
        font-size: 1.85rem;
        margin: 1rem auto 3.5rem;
        padding: 0;
        position: relative;
        width: fit-content;
        z-index: 1;
        text-align: center;
    }
    
    h3::before {
        top: .3rem;
        left: .5rem;
        width: 17rem;
        height: 5rem;
    }
    
    h4 {
        padding: 1rem 0;
        font-size: 2.15rem;
        line-height: 4rem;
    }
    
    h4 span {
        font-size: 2.15rem;
        line-height: 4rem;
    }
    
    p {
        font-size: 1rem;
        line-height: 1.5rem;
        margin: 0;
        letter-spacing: .05rem;
    }
    
    .p-small {
        font-size: .8rem;
        text-align: center;
        line-height: 1.2rem;
    }

    .logo {
        width: 40%;
    }

    section>div:first-of-type {
        padding-top: 4rem;
    }
    
    section>.last-div {
        padding-bottom: 3.5rem;
    }
    
    .w-control,
    .imp-w-control {
        width: 75%;
        margin: 0 auto;
        max-width: 1366px;
    }

    /* PCボタンcssここから */

    /* ボタン1ここから */

.btn a {
    padding: 1rem 0 1rem;
    padding-left: clamp(1rem,3.2vw,3rem);
    padding-right: clamp(1.2rem,5.2vw,7rem);
    font-size: clamp(1rem,1.5vw,1.8rem);
    border-radius: 5rem;
}
.btn2 {
    margin: .2rem 0 .5rem .5rem;
    margin-left: clamp(.5rem,1.6vw,2rem);
}

/* PCボタンcssここまで */

.pc-mb1 {
    margin-bottom: 1rem;
}

/* PC基本ここまで */
/* PCコンテンツここから */

/* FVここから */
.contents-back-pink:before {
    content: none;
}

.fv .contents-back-pink p {
    text-align: center;
    font-size: 1rem;
    padding-bottom: 3rem;
}

.contents-back-gradation img {
    display: block;
    width: 80%;
    margin: 0 auto;
}

.wemen-cap1 {
    display: none;
}

.wemen-cap2 {
    position: absolute;
    bottom: 33%;
    left: 58.5%;
}

.wemen-cap2>span {
    font-size: 1.85rem;
    padding: 1rem 1.2rem;
}

.wemen-cap3 {
    bottom: 25%;
    left: 58.5%;
    background-color: #fff;
    color: var(--normal-text-color);
}
/* FVここまで */

/* CTAここから */
.cta-wrap {
    display: flex;
    padding: 3rem 10%;
    width: 80%;
    gap: 3rem;
}
.cta-wrap>.last-div {
    padding: 0;
}
.cta-wrap .w-control {
    width: 100%;
}
.cta-left {
    margin: 0;
}

.cta-attention-wrap {
    gap: .3rem;
}

.cta-attention {
    font-size: 1.42rem;
    line-height: 2.14rem;
    padding: .2rem 1rem;
}

.cta-btn-wrap {
    padding: 0;
    padding-left: clamp(.5rem,1.6vw,2rem);
    margin-top: 0.5rem;
}

.cta-left {
    display: flex;
    align-items: center;
}
section>.cta-left:first-of-type {
    padding-top: 0;
}

.cta-area1 .cta-attention-wrap {
    margin-right: clamp(.2rem,1vw,2rem);
}
.cta-area1 .cta-attention-wrap .cta-attention {
    font-size: clamp(.8rem,1.8vw,1.2rem);
    line-height: clamp(1rem,2.2vw,1.5rem);
}
.cta-right .pc-item p {
    font-size: .8rem;
    font-size: clamp(.7rem, 1.23vw, .8rem);
    text-align: center;
    line-height: 1.2rem;
}

/* CTAここまで */

/* セクション１ここから */
.section1-container {
    background-image: url(img/pc-section1-bg.png);
}

.section1-content {
    display: flex;
}
.section1 .logo,
.section4 .logo {
    width: 30%;
}

.section1-content:nth-of-type(1)::after,
.section1-content:nth-of-type(2)::after,
.section1-content:nth-of-type(3)::after,
.section1-content:nth-of-type(4)::after {
    top: 17.5%;
    right: auto;
    left: 30%;
    height: 65%;
    width: 52%;
    z-index: 1;
}

.section1-content:nth-of-type(1)::after {
    background-image: url(img/pc-section1-cap1.png);
}

.section1-content:nth-of-type(2)::after {
    background-image: url(img/pc-section1-cap2.png);
}

.section1-content:nth-of-type(3)::after {
    background-image: url(img/pc-section1-cap3.png);
}

.section1-content:nth-of-type(4)::after {
    background-image: url(img/pc-section1-cap4.png);
}

.section1-content:nth-of-type(1),
.section1-content:nth-of-type(2),
.section1-content:nth-of-type(3),
.section1-content:nth-of-type(4) {
    margin: 0;
    margin-bottom: 1.5rem;
}

.section1-content img {
    width: 20%;
}

.section1-content:nth-of-type(1) img,
.section1-content:nth-of-type(2) img,
.section1-content:nth-of-type(3) img,
.section1-content:nth-of-type(4) img {
    margin: 0;
    margin-left: 13%;
    position: relative;
    z-index: 2;
}

/* セクション１ここまで */

/* セクション2ここから */

.section2-img1 {
    width: 30%;
    display: block;
    margin: -1rem 35% 1rem auto;
}

.section2-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    align-items: center;
    padding: 1.5rem 5%;
    margin-top: 2rem;
    gap: 2rem;
}
.pc-imp-control {
    width: 60%;
}

.section2-content .pc-w100h2-wrap {
    width: 100%;
}

.section2-content img {
    width: 30%;
}

.section2-content>.imp-img,
.pc-imp-control-reverse>.imp-img {
    width: 30%;
}

.section2-content .imp-img>img {
    width: 100%;
    /* height: fit-content; */
    margin: 0;
}

.pc-imp-control-reverse {
    display: flex;
    justify-content: space-around;
    flex-direction: row-reverse;
    gap: 2rem;
}

.pc-imp-control-reverse>div {
    width: 60%;
}

.section2-content:last-of-type .pc-imp-control img {
    width: 80%;
    margin-top: 2rem;
}

/* セクション2ここまで */

/* セクション3ここから */
.section3 {
    background-color: var(--main-color1);
}
.section3 h2 img {
    width: 30%;
}

.h2-large {
    font-size: 3rem;
    margin-top: 5rem;
    margin-bottom: -1rem;
    display: block;
}

.section3-bg {
    background-image: url(img/pc-section3-bg.png);
    background-size: contain;
    background-position: center;
    padding-bottom: 5rem;
}

.section3-bg .w-control {
    width: 60%;
}
.section3-bg .w-control>div {
    display: flex;
    gap: 3%;
    justify-content: center;
    margin: 3rem auto;
}

.section3-bg img {
    width: 45%;
    margin: 0;
}

.section3-img4 {
    width: 53%;
    margin: 2rem auto 1rem;
}

.section3 h3 {
    margin: 3rem auto 3rem;
}

.section3 p {
    margin: 0 0 1rem 0;
    width: 100%;
}
.section3 .pc-flex .pc-item p {
    width: 100%;
}
.section2-content:last-of-type .section3-img5:last-of-type {
    width: 30%;
    display: block;
    margin: 0;
}

.section3-img6 {
    width: 85%;
    margin: 3rem auto 5rem;
}

.pc-flex {
    display: flex;
    justify-content: space-around;
    margin: 3rem 0;
}

.pc-flex>div:first-of-type {
    width: 60%;
}

.profile-img-wrap {
    width: 25%;
    align-items: start;
    margin:0;
}

.profile-img-wrap>div {
    width: 100%;
}

.profile-img-wrap img {
    width: 100%;
}

.s3-lastcontent {
    margin-bottom: 2rem;
    gap: 1rem;
    justify-content: space-between;
    padding: 0 5%;
}

.s3-lastcontent>div {
    width: 35%;
}

.s3-lastcontent img {
    width: 100%;
}
.s3-lastcontent p {
    width: 60%;
}

/* セクション3ここまで */

/* セクション4ここから */
.section4 .imp-w-control .s4-content-img {
    width: 18%;
    margin: 0;
}

.section4 .pc-imp-control {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}
.section4 .pc-imp-control .h2{
    margin: 0;
}
.section4 .pc-imp-control {
    width: 72%;
}
.section4 .imp-w-control div:has(> img)::after {
    content: none;
}
/* セクション4ここまで */

/* フッターここから */

.copyright {
    flex-wrap: nowrap;
}
/* フッターここまで */

    /* PCコンテンツここまで */
}

/* pcここまで */

/* アイテム制御 */
.container .sp-item {
    display: block;
}

.container .tab-item {
    display: none;
}

.container .pc-item {
    display: none;
}

.container .tab-pc-item {
    display: none;
}

.container .btn-before-mb {
    margin-bottom: 24px;
}

@media (min-width:599px) {

    .container .sp-item {
        display: none;
    }

    .container .tab-item {
        display: block;
    }

    .container .pc-item {
        display: none;
    }

    .container .tab-pc-item {
        display: block;
    }
}

@media (min-width:860px) {

    .container .sp-item {
        display: none;
    }

    .container .tab-item {
        display: none;
    }

    .container .sp-tab-item {
        display: none;
    }

    .container .pc-item {
        display: block;
    }

    .container .btn-before-mb {
        margin-bottom: 30px;
    }
}

.container .none {
    display: none;
}