@charset "utf-8";

/* ==================================================================

	about.css
	
=================================================================== */
/* --------------------------------
   □ intro
-------------------------------- */
#intro {
    margin-top: 107px;
    background: url(../../images/about/intro_bg.svg) 50% 0 no-repeat;
    background-size: 1160px;
    
    @media(max-width : 767px) {
        margin-top: 60px;
        background-size: 96%;
    }

    h2 {
        font-size: 3.2rem;
        margin-bottom: 40px;
        text-align: center;
        line-height: 1.7;
        letter-spacing: 0.1em;

        @media(max-width : 767px) {
            font-size: 2.4rem;
            margin-bottom: 36px;
        }
    }

    .txt {
        text-align: center;
        line-height: 2;
        
        @media(max-width : 767px) {
            text-align: left;
        }
    }
}

/* --------------------------------
   □ outline
-------------------------------- */
#outline {

    .tableStyle th,.tableStyle td {
        padding: 24px 0;
    }
    
    @media(max-width : 767px) {
        .tableStyle {
            border: 0;
        }
        .tableStyle th,.tableStyle td {
            padding: 20px 0;
            border: 0;
        }
        .tableStyle th {
            background-color: #E0AA82;
            color: #fff;
            padding: 8px 12px;
            font-size: 1.4rem;
        }
    }

    .map {
        display: inline-block;
        margin-left: 20px;

        a {
            text-decoration: underline;

            &:hover {
                text-decoration: none;
            }
        }

        &:after {
            content: "";
            background: url(../../images/common/icon/outer_link.svg) 0 0 no-repeat;
            background-size: contain;
            width: 9px;
            height: 8px;
            display: inline-block;
            margin-left: 4px;
        }
        
        @media(max-width : 767px) {
            display: block;
            margin-left: 0;
        }
    }

}

/* --------------------------------
   □ facility
-------------------------------- */
#facility {
    .grid_box {
        @media(max-width : 767px) {
            gap: 20px;
        }
    }
}

/* --------------------------------
   □ feature
-------------------------------- */
#feature {
    background: #FDF6EA;
    padding-top: 107px;
    padding-bottom: 87px;
}
#feature .featureList {
    margin-top: 30px;
    margin-bottom: 30px;
}
#feature .featureList li {
    flex-basis: calc(( 100% / 3) - 32px);
    margin-top: -40px;
}
#feature .featureList li:nth-child(2),
#feature .featureList li:nth-child(5) {
    padding-top: 40px;
}
#feature .featureList li:nth-child(3),
#feature .featureList li:nth-child(6) {
    padding-top: 80px;
}
#feature .featureList li p.image {
    margin-bottom: 16px;
}
#feature .featureList li dt {
    font-size: 1.8rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    margin-bottom: 16px;
}
#feature .featureList li dd {
    font-size: 1.5rem;
    line-height: 1.7;
}

#feature .featureBox li {
    display: flex;
    align-items: center;
    gap: 48px;
    font-size: 1.8rem;
    font-weight: 600;
    letter-spacing: 0.04em;
    padding: 27px 34px;
    background: #fff;
    border-radius: 6px;
}

@media only screen and
(max-width : 767px) {

    #feature {
        padding-top: 60px;
        padding-bottom: 60px;
    }
    #feature .featureList li {
        margin-top: 0;
        padding-top: 0!important;
    }

    #feature .featureBox li {
        gap: 20px;
        font-size: 1.6rem;
        padding: 10px 20px;
    }
}


/* --------------------------------
   □ attempt
-------------------------------- */
#attempt section:not(:last-child) {
    margin-bottom: 40px;
    
    @media(max-width : 767px) {
        margin-bottom: 32px;
    }
}