@charset "utf-8";
/*------------------------------------------------------------
	汎用スタイル
------------------------------------------------------------*/
/* clearfix */
.clearfix:after {content: "";display: block;clear: both;}
/* flex */
.flex,.flexA,.flexB,.flexC {display: flex;flex-wrap: wrap;}
.flexA {justify-content: space-around;}
.flexB {justify-content: space-between;}
.flexC {justify-content: center;}
/*------------------------------------------------------------
	content
------------------------------------------------------------*/
.content {
    margin: 0 auto;
    width: 800px;
}
@media all and (max-width: 896px) {
    .content {
        margin: 0 44px;
        width: auto;
    }
}
@media all and (max-width: 370px) {
    .content {
        margin: 0 35px;
    }
}
@media all and (max-width: 330px) {
    .content {
        margin: 0 20px;
    }
}
/*------------------------------------------------------------
	headLine01
------------------------------------------------------------*/
.headLine01 {
    padding-bottom: 30px;
    padding-top: 45px;
    position: relative;
    font-size: 2.6rem;
    font-weight: 700;
    font-family: 'AP-OTF-ShinGoPr6N-DeBold';
    text-align: center;
    color: #040000;
    letter-spacing: 0.2rem;
    line-height: 3rem;
}

.headLine01-2 {
    /* padding-bottom: 3px; */
    padding-top: 45px;
    position: relative;
    font-size: 2.6rem;
    font-weight: 700;
    font-family: 'AP-OTF-ShinGoPr6N-DeBold';
    text-align: center;
    color: #040000;
    letter-spacing: 0.2rem;
    line-height: 1rem;
}

.headLine01-3 {
    /* padding-bottom: 3px; */
    padding-top: 8px;
    position: relative;
    font-size: 2.6rem;
    font-weight: 700;
    font-family: 'AP-OTF-ShinGoPr6N-DeBold';
    text-align: center;
    color: #040000;
    letter-spacing: 0.2rem;
    line-height: 1rem;
}

.headLine01-red {
    /* padding-bottom: 3px; */
   padding-top: 35px;
    position: relative;
    font-size: 3.5rem;
    font-weight: 700;
    font-family: 'AP-OTF-ShinGoPr6N-DeBold';
    text-align: center;
    color: #9D2227;
    letter-spacing: 0.2rem;
    line-height: 1rem;
}



.headLine01 span {
    display: block;
    color: #9D2227;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.1em;
    font-family: 'AP-OTF-ShinGoPr6N-Regular';
}
.headLine01::before {
    width: 2px;
    height: 36px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: #9D2227;
    content: "";
}



@media all and (max-width: 896px) {
    .headLine01 {
        margin-bottom: 10px;
        padding-top: 44px;
    }
    .headLine01 span {
        margin-top: 3px;
        font-size: 1.2rem;
    }
}
/*------------------------------------------------------------
	headLine02
------------------------------------------------------------*/
.headLine02 {
    margin-bottom: 15px;
    font-size: 2.4rem;
    font-weight: 700;
    text-align: center;
    font-family: 'AP-OTF-ShinGoPr6N-DeBold';
}
@media all and (max-width: 896px) {
    .headLine02 {
        margin-bottom: 1px;
        font-size: 1.4rem;
    }
}

/*------------------------------------------------------------
	headLine03
------------------------------------------------------------*/
.headLine03 {
    padding-bottom: 30px;
    padding-top: 45px;
    position: relative;
    font-size: 2.6rem;
    font-weight: 700;
    font-family: 'AP-OTF-ShinGoPr6N-DeBold';
    text-align: center;
    color: #040000;
    letter-spacing: 0.2rem;
    line-height: 3rem;
}

.headLine03-red {
    /* padding-bottom: 3px; */
   padding-top: 5px;
    position: relative;
    font-size: 3rem;
    font-weight: 700;
    font-family: 'AP-OTF-ShinGoPr6N-DeBold';
    text-align: center;
    color: #9D2227;
    letter-spacing: 0.2rem;
    line-height: 4rem;
}

.headLine03 span {
    display: block;
    color: #9D2227;
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 0.1em;
    font-family: 'AP-OTF-ShinGoPr6N-Regular';
}
.headLine03::before {
    width: 2px;
    height: 36px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    background-color: #9D2227;
    content: "";
}



@media all and (max-width: 896px) {
    .headLine01 {
        margin-bottom: 10px;
        padding-top: 44px;
    }
    .headLine01 span {
        margin-top: 3px;
        font-size: 1.2rem;
    }
}