@charset "UTF-8";

/* ===========================
main
============================*/
/* sectionTitle*/
.section--title {
    background-color: var(--primary-beigeSchool);
    display: flex;
    width: 100%;
    padding: 16px 0px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.main__topic {
    text-align: center;
    font-family: Marcellus;
    font-size: 2.2rem;
    letter-spacing: 4.4px;
}

/* section--introduction*/
.section--introduction {
    position: relative;
}

.section--introduction h3::before {
	content: "";
	background-image: url(../images/decoration01.png);
	display: block;
	width: 69.3%;
	height: auto;
    aspect-ratio: 13/9;
	background-repeat: no-repeat;
    background-size: cover;
	position: absolute;
	left: 0px;
	top: -391%;
	z-index: 70;
    max-width: 400px;
}

.section--introduction h3 {
    color: var(--font-color, #2F2F2F);
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.8; /* 30.6px */
    letter-spacing: 3.4px;
    position: relative;
    margin-top: 120px;
}

.message__txt {
    font-size: 1.6rem;
    letter-spacing: 0.96px;
    width: 79.2%;
    margin: 50px auto 0;
}

.mainCatch {
    width: 197px;
    font-family: "Noto Serif JP";
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 3.4px;
    margin: 60px auto 120px;
    text-align: right;
}

.mainCatch__small {
    font-size: 1.5rem;
    letter-spacing: 3px;
}

.mainCatch span:nth-last-of-type(2) {
    padding-right: 41px;
}

.ownerPct {
    width: 48%;
    border-radius: 1px;
    margin: 0 auto;
    display: block;
    max-width: 250px;
}

.owner__info {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.owner__info h4 {
    text-align: center;
    font-family: Marcellus;
    font-size: 1.5rem;
    letter-spacing: 1.7px;
    margin-top: 20px;
}

.owner__info span {
    font-family: "Noto Serif JP";
    letter-spacing: 1.02px;
}

.signature {
    width: 63.8%;
    margin-top: 40px;
    max-width: 340px;
}

.owner {
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 1.7rem;
    font-weight: 400;
    line-height: 1.8; /* 36px */
    letter-spacing: 4px;
}

.owner__info div {
    display: flex;
    align-items: center;
    gap: 9px;
    margin-top: 38px;
}

.contents__title,
.contents__txt {
    text-align: center;
    font-family: Marcellus;
    font-size: 1.7rem;
    letter-spacing: 1.7px;
}

.contents__txt {
    width: 66px;
    height: 30px;
    padding: 2px 4px;
    margin-left: 11px;
    border-radius: 1px;
    border-bottom: 0.6px solid var(--primary-blackLow);
}

.contents__txt:hover {
    border-bottom: none;
}

.sns__list--02 {
    align-items: center;
}

.section--introduction dl {
    display: flex;
    width: 83.4%;
    margin: 100px auto 90px;
    flex-direction: column;
    align-items: flex-start;
}

.section--introduction dt {
    text-align: center;
    font-family: "Noto Serif JP";
    font-size: 1.7rem;
    font-weight: 600;
    line-height: 1.8; /* 30.6px */
    letter-spacing: 3.4px;
    text-indent: -1em;
}

.section--introduction dd {
    font-family: "Noto Serif JP";
    font-size: 1.7rem;
    line-height: 1.8; /* 30.6px */
    letter-spacing: 0.68px;
    gap: 10px;
    display: flex;
    flex-direction: column;
    margin-top: 50px;
    text-indent: -1em;
}

.section--introduction dd:nth-of-type(2) {
    text-indent: -0.5em;
}

.master {
    margin-top: 100px;
}

.img__outer {
    height: 56vh;
    max-width: 680px;
}

.ownerPct02 {
    width: 38.4%;
    border-radius: 1px;
    margin: 0 4.2% 0 auto;
    display: block;
    max-width: 176px;
}

.ownerPct03 {
    border-radius: 1px;
    width: 168px;
}

.decoration02 {
    position: relative;
    display: flex;
    margin: 20px 38.6% 0 auto;
    justify-content: flex-end;
}

.decoration02::after {
    content: "";
    background-image: url(../images/decoration02.png);
    display: block;
    width: 76px;
    height: 48px;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 137px;
    bottom: -33px;
    z-index: 70;
}

/* sectionTitle pc*/
@media screen and (min-width:1025px) {
    .section--title {
        padding: 43px 0;
    }
    
    .main__topic {
        font-size: 3.2rem;
        letter-spacing: 6.4px;
    }
    
    /* section--introduction*/
    .section--introduction h3::before {
        width: 38%;
        left: 0px;
        top: -558%;
        max-width: none;
    }
    
    .section--introduction h3 {
        font-size: 2rem;
        letter-spacing: 4px;
        margin-top: 200px;
    }
        
    .message__txt {
        width: 45.7%;
        margin: 80px auto 0;
        text-align: center;
        line-height: 1.8;
    }
        
    .mainCatch {
        width: auto;
        font-size: 2rem;
        line-height: 1.5;
        letter-spacing: 2px;
        margin: 60px auto 0;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-bottom: 20px;
    }
        
    .mainCatch__small {
        font-size: 2rem;
        letter-spacing: 2px;
    }

        
    .mainCatch span:nth-last-of-type(2) {
        padding-right: 0;
    }

    .info__outer {
        display: flex;
        margin: 137px auto 0;
        align-items: flex-end;
        justify-content: center;
        gap: 8%;
    }
        
    .ownerPct {
        width: 17.9%;
        max-width: 350px;
        margin: 0;
        min-width: 250px;
        margin-bottom: 20px;
    }
        
    .owner__info {
        align-items: flex-end;
    }
        
    .owner__info h4 {
        margin-top: 20px;
        font-size: 2rem;
        letter-spacing: 4.8px;
    }
        
    .signature {
        width: 78.3%;
        margin-top: 46px;
        max-width: 450px;
        margin-right: 12px;
        aspect-ratio: 351 / 119;
    }
        
    .owner {
        font-size: 2rem;
        letter-spacing: 4.8px;
    }
        
    .owner__info div {
        margin-top: 68px;
    }
        
    .section--introduction dl {
        width: 75.4%;
        margin: 219px auto 106px;
        max-width: 1120px;
    }
        
    .section--introduction dt {
    font-size: 1.7rem;
    line-height: 1.5; /* 30.6px */
    letter-spacing: 2px;
    padding-left: 7px;
    }
        
    .section--introduction dd {
        letter-spacing: 1.36px;
        gap: 0;
        margin-top: 40px;
    }
        
    .master {
        margin-top: 90px;
    }
        
    .img__outer {
        height: auto;
        max-width: 2100px;
    }
        
    .ownerPct02 {
        width: 18.5%;
        margin: 0 11.8% 0 auto;
        max-width: none;
        min-width: 220px;
    }
    
    .ownerPct03 {
        width: 292px;
    }
    
    .decoration02 {
        position: relative;
        margin: -133px 35.3% 0 auto;
        justify-content: flex-end;
    }
        
    .decoration02::after {
        width: 137px;
        height: 88px;
        right: 234px;
        bottom: -55px;
    }
}
/* pc 1025px */

/* sectionTitle tb */
@media screen and (min-width: 768px) and (max-width: 1024px) {
        .section--title {
            padding: 40px 0;
        }
        
        /* section--introduction*/
        .section--introduction h3::before {
            width: 41.8%;
            top: -332%;
            max-width: none;
        }
    
        .section--introduction h3 {
            font-size: 2rem;
            letter-spacing: 4px;
        }
            
        .message__txt {
            width: 84%;
            margin: 50px auto 0;
            text-align: center;
            line-height: 1.8;
        }

        .info__outer {
            display: flex;
            margin: 112px auto 0;
            align-items: flex-end;
            justify-content: center;
            gap: 50px;
        }
        
        .ownerPct {
            width: 23.4%;
            margin: 0;
            padding-bottom: 17px;
            max-width: 220px;
        }
        
        .owner__info {
            align-items: flex-end;
        }
        
        .owner__info h4 {
    margin-top: 0;
    font-size: 1.6rem;
        }
       
        .signature {
            padding-right: 15px;
            aspect-ratio: 239 / 81;
            width: 85.5%;
            margin-top: 40px;
            max-width: 280px;
            margin-right: 13px;
            aspect-ratio: 239 / 81;
        }
        
        .owner__info div {
            margin-top: 44px;
        }
        
        .section--introduction dl {
            width: 85%;
            margin: 100px auto;
            max-width: 760px;
        }

        .section--introduction dt {
            font-size: 2rem;
            line-height: 1.5; /* 30.6px */
            letter-spacing: 2px;
            padding-left: 8px;
        }
        
        .master {
            margin-top: 80px;
        }
        
        .img__outer {
            height: auto;
            max-width: none;
        }
        
        .ownerPct02 {
            width: 18.8%;
            margin: 0 11% 0 auto;
            max-width: none;
            min-width: auto;
        }
    
        .ownerPct03 {
            width: 168px;
        }
    
        .decoration02 {
            margin: 20px 34.8% 0 auto;
        }
        
        .decoration02::after {
            width: 76px;
            height: 48px;
            right: 133px;
            bottom: -31px;
        }
}
/* tb 768px-1024px */

/* sectionBiography */
.section--biography h4 {
    font-family: Marcellus;
    font-size: 2rem;
    letter-spacing: 2.4px;
    margin: 20px auto 0 4.2%;
    position: relative;
    text-transform: capitalize;
}

.section--biography span {
    font-family: "Noto Serif JP";
    font-size: 1.7rem;
    letter-spacing: 13.09px;
    margin-top: 15px;
    margin-left: 32px;
    margin: 15px 32px 90px;
    display: inline-block;
}

.section--biography p {
    font-size: 1.6rem;
    line-height: 1.8; /* 28.8px */
    letter-spacing: 0.64px;
    width: 91.4%;
    margin: 24px auto 0;
}

.decoration03 {
    position: relative;
}

.decoration03::after {
    content: "";
    background-image: url(../images/decoration03.png);
    display: block;
    width: 65px;
    height: 48px;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 0%;
    bottom: -19px;
    z-index: 70;
}

.decoration04 {
    position: relative;
}

.decoration04::after {
    content: "";
    background-image: url(../images/decoration04.png);
    display: block;
    width: 74px;
    height: 58px;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: 4%;
    bottom: -42px;
    z-index: 70;
}

.decoration05 {
    position: relative;
}

.decoration05::after {
    content: "";
    background-image: url(../images/decoration05.png);
    width: 69.3%;
    height: auto;
    aspect-ratio: 259.62 / 176.00;
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    right: -4.2%;
    bottom: -82px;
    z-index: 70;
    max-width: 400px;
}

.footer__logo {
    margin-top: 180px;
}

/* sectionAbout pc*/
@media screen and (min-width:1025px) {
    .section--biography h4 {
        margin: 144px auto 0 12%;
        padding-bottom: 109px;
    }
    
    .section--biography span {
        font-size: 2rem;
        letter-spacing: 9.6px;
        margin: 15px 32px 0;
    }
    
    .section--biography p {
        width: 75.9%;
        margin: 29px auto 0;
    }
    
    .decoration03::after {
        width: 133.7px;
        height: 99px;
        right: -4.9%;
        bottom: -310px;
    }
    
    .decoration04::after {
        width: 106.6px;
        height: 83.2px;
        right: -9%;
        bottom: -27px;
    }
    
    .decoration05::after {
        width: 50.5%;
        right: -15.5%;
        bottom: -174px;
        max-width: 1900px;
    }
    
    .footer__logo {
        margin-top: 255px;
    }
}
/* pc 1025px */

/* sectionAbout tb */
@media screen and (min-width: 768px) and (max-width: 1024px) {
       .section--biography h4 {
            margin: 197px auto 0 11.1%;
        }

       .section--biography span {
            font-size: 2rem;
            letter-spacing: 9.6px;
        }
    
        .section--biography p {
            width: 77.3%;
            margin: 29px auto 0;
        }
    
        .decoration03::after {
            width: 65px;
            height: 48px;
            right: -5.9%;
            bottom: -19px;
        }
        
        .decoration04::after {
            width: 74px;
            bottom: -45px;
            right: 6%;
        }
            
        .decoration05::after {
            width: 54%;
            right: -14.5%;
            bottom: -134px;
            max-width: none;
        }
            
        .footer__logo {
            margin-top: 200px;
        }
}
/* tb 768px-1024px */

/* else カスタムブレイクポイント */
@media (max-width: 350px) {
    .ownerPct03 {
        width: 155px;
    }

    .decoration02::after {
        width: 67px;
        right: 125px;
    }
}
