@charset "UTF-8";
/* CSS Document */

a {
    transition: all 0.3s ease 0s;
}

img {
    transition: all 0.3s ease 0s;
}

h1 {
    margin: 0;
}

.section-ttl {
    margin: 0px auto 10px;
    text-align: left;
    font-size: 46px;
    line-height: 1.2;
    font-family: "Cormorant", serif;
    font-weight: 400;
    font-style: normal;
    color: #fff;
}

.tbl_none {
    display: none !important;
}

.m-aside {
    border-top: none;
    padding-top: 0px;
    margin: 0 0 50px 0;
}

/* EDIT フォーマッ�? */
.ctt_ttl {
    width: 1000px;
    display: block;
    overflow: hidden;
    text-align: left;
    margin: 0 auto 10px;
}

.ctt_ttl ul li {
    display: block;
    overflow: hidden;
    float: left;
    padding: 0 20px;
    border-right: 1px solid #eee;
    font-size: 11px;
}

.ctt_ttl ul li:first-of-type {
    font-size: 9px;
    letter-spacing: 0.1em;
    text-align: center;
    padding: 0 20px 0 0;
}

.ctt_ttl ul li:first-of-type img {
    width: 90%;
}

.ctt_ttl ul li:nth-of-type(2) {
    font-size: 40px;
    font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", "ＭＳ ゴシック", sans-serif;
    line-height: 2em;
    font-weight: lighter;
}

.ctt_ttl ul li:nth-of-type(3) {
    border-right: 1px solid #fff;
    line-height: 1.6em;
    padding: 10px 0 0 20px;
}

.ctt_ttl ul li:nth-of-type(3) p {
    margin: 0;
}

.ctt_ttl ul span {
    display: block;
    overflow: hidden;
    font-size: 8px;
    letter-spacing: 1em;
    margin-bottom: 5px;
}

/* レイアウ�? */

.ttl_box,
.navi,
.section-wrapper {
    list-style: none;
    font-family: "游ゴシック", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", "ＭＳ ゴシック", sans-serif;
    font-weight: 500;
}


.ttl_box {
    display: block;
    margin: 0 auto;
    overflow: hidden;
    text-align: center;
    width: 100%;
}

.main_box {
    display: block;
    margin: 0 auto;
    overflow: hidden;
    position: relative;
    text-align: center;
    width: 100%;
}

.main_box img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 auto 0;
    overflow: hidden;
    position: relative;
    aspect-ratio: 32/13;
}

.ttl_text {
    padding: 16px 0;
    line-height: 1.8;
    margin-top: 10px;
    background-color: #eee;
}

.ttl_text p {
    display: block;
    font-size: 15px;
    text-align: center;
    color: #212121;
    width: 96%;
    margin: auto;
}

.main_box_logo1 {
    display: block;
    left: 26.5vw;
    overflow: hidden;
    position: absolute;
    text-align: center;
    top: 22vw;
}

.main_box_logo2 {
    display: block;
    left: 42.3vw;
    overflow: hidden;
    position: absolute;
    text-align: center;
    top: 20vw;
}

.main_box_logo1 img {
    display: block;
    overflow: hidden;
    margin: 0px;
}

.main_box_logo2 img {
    display: block;
    overflow: hidden;
    margin: 0px;
}


.navi {
    display: block;
    overflow: hidden;
    width: 100%;
    text-align: center;
    margin: 20px 0 20px;
    font-weight: 400;
    font-style: normal;
}

.navi ul {
    width: 100%;
    display: block;
    overflow: hidden;
    margin: 0 auto;
    padding: 0;
    font-size: 20px;
    line-height: 1.2;
    max-width: 1000px;
}

.navi ul li {
    display: inline-block;
    overflow: hidden;
    margin: 12px 1%;
    text-align: center;
    position: relative;
}

.navi ul li a {
    text-decoration: none;
    padding: 7px 5px 5px 5px;
    display: block;
    overflow: hidden;
    font-size: 14px;
}

.navi ul li a::after {
    content: '';
    display: inline-block;
    margin-left: 8px;
    margin-bottom: 4px;
    width: 5px;
    height: 5px;
    -webkit-transform: rotate(130deg) skew(-10deg, 0);
    transform: rotate(130deg) skew(-10deg, 0);
    transition: all 0.2s linear;
    border-top: 1px solid #424242;
    border-right: 1px solid #424242;
}

.con1 {
    color: #fff;
    display: block;
    overflow: hidden;
    width: 100%;
    text-align: center;
    margin: 0;
}

.con1>div {
    display: flex;
    align-items: center;
    overflow: hidden;
    margin: 0 0 0 5%;
    text-align: left;
    padding: 20px 0;
}

.section_header_1,
.section_header_2,
.section_header_3,
.section_header_4 {
    display: block;
    overflow: hidden;
    /*float: right;*/
    position: relative;
    font-size: 0;
}

.section_header_inner {
    width: 55%;
}

.section_header_inner p {
    font-size: 13px;
}

.con1 ul li:nth-of-type(2) {
    display: block;
    overflow: hidden;
    width: 500px;
    margin: 0 0 0 50px;
    position: relative;
    /*top: -200px;*/
    color: #3e3e3e;
}

.con1 ul li img {
    width: auto;
    margin: 0;
    vertical-align: middle;
}

.con_come {
    display: block;
    overflow: hidden;
    text-align: left;
    font-size: 14px;
    padding: 0px 0;
}

.con_come p {
    background-color: #f0ded9;
    display: inline-block;
}

.con2 {
    display: block;
    overflow: hidden;
    width: 100%;
    text-align: center;
    margin: 70px auto 0;
}

.con2 img {
    width: 124px;
}

.con2 h3::after {
    border-bottom: 1px solid #9e9e9e;
    content: "";
    display: inline-block;
    height: 10px;
    vertical-align: text-top;
    width: 850px;
}

.con2 ul {
    display: block;
    overflow: hidden;
    width: 1000px;
    text-align: left;
    margin: 0 auto 50px;
    padding: 0;
    display: flex;
    flex-wrap: wrap;
}

.con2 ul li {
    display: block;
    overflow: hidden;
    width: 23%;
    margin: 0 20px 40px 0;
}

.con2 ul li a {
    color: #000;
    text-decoration: none;
    font-size: 12px;
}

.con2 ul li img {
    display: block;
    overflow: hidden;
    width: 100%;
    height: auto;
    aspect-ratio: 5/6;
    margin-bottom: 10px;
}

.m-sign-form-btn-area {
    width: 378px;
}

.m-btn-active {
    background-color: #ffa13c;
}

a .icon {
    background-color: #3e3e3e;
    color: #fff;
    font-size: 11px;
    margin: 0;
    padding: 8px 25px;
    text-align: center;
    transition: all 0.3s ease 0s;
    float: right;
    border-radius: 4px;
}

a .icon2 {
    background-color: #3e3e3e;
    color: #fff;
    font-size: 10px;
    margin: 10px auto;
    padding: 8px 25px;
    text-align: center;
    transition: all 0.3s ease 0s;
    display: inline-block;
    border-radius: 4px;
}

.sml_ttl_box_underbtn2 {
    display: block;
    overflow: hidden;
    padding: 0 0 80px 0;
    position: relative;
}

.sml_ttl_box_underbtn2 a {
    font-size: 13px;
    display: block;
    overflow: hidden;
    width: 300px;
    margin: 10px auto;
    text-align: center;
    background-color: #3e3e3e !important;
    color: #fff;
    border-radius: 4px;
}

/* under */

.con_under_sharebox {
    width: 100%;
    text-align: center;
}

.con_under_sharebox a {
    width: 67px;
    margin: 5px 10px;
    display: inline-block;
}

.con_under_sharebox a img {
    width: 100%;
}

.con_under_mailbox {
    width: 500px;
    margin: 10px auto 50px;
    padding: 30px 0;
    border: solid 1px #C6BFB5;
    text-align: center;
}

.con_under_mailbox span {
    font-size: 12px;
}

.con_under_mailbox span a {
    display: inline-block;
    text-decoration: underline;
}


.m-sign-form-btn-area {
    margin: 10px auto;
}

.m-btn-active {
    background-color: #444;
}

.layoutbox {
    width: 100%;
    margin: 0;
}

.layoutbox ul {
    width: 1000px;
    margin: 0 auto;
}

.section_header_1 {
    background: url(../esw250901_edit/small_ttl1.webp) no-repeat right / contain;
}

.section_header_2 {
    background: url(../esw250901_edit/small_ttl2.webp) no-repeat right / contain;
}

.section_header_3 {
    background: url(../esw250901_edit/small_ttl3.webp) no-repeat right / contain;
}

.section_header_4 {
    background: url(../esw250901_edit/small_ttl4.webp) no-repeat right / contain;
}

.section_header_5 {
    background: url(../esw250901_edit/small_ttl5.webp) no-repeat right / contain;
}

.section_header_6 {
    background: url(../esw250901_edit/small_ttl6.webp) no-repeat right / contain;
}


@media screen and (min-width:641px) {

    /*-----------*/
    /*    PC     */
    /*-----------*/

    /* PC under-mailbox */
    .navi {
        font-size: 18px;
        margin-top: 20px;
    }

    .navi ul>li {
        margin: 0 10px;
    }

    .navi ul li a {
        font-size: 16px;
    }

    .main_box img {
        max-width: 520px;
    }

    .con1>div {
        overflow: hidden;
        width: 800px;
        margin: 0 auto;
        text-align: left;
        padding: 0px;
        height: 240px;
    }

    .section_header_inner {
        width: 1000px;
        margin: 0 auto 0 50px;
    }

    .section_header_inner p {
        font-size: 14px;
    }

    .m-btn-active:hover {
        background-color: #ffc17f;
    }

    .navi ul li:hover {
        opacity: 0.7;
    }

    .con1 ul li a img:hover {
        opacity: 0.7;
    }

    .con_items_list p a:hover {
        background-color: #eae0d7;
    }

    .con2 ul li a:hover {
        opacity: 0.7;
    }

    .sml_ttl_box_underbtn_footer a:hover {
        background-color: #7d7d7d;
    }

    .sml_ttl_box_underbtn2 a:hover {
        opacity: 0.7;
    }

}


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

    /* 表示領域�?640px未満の場合に適用するスタイル */
    .pc_none {
        display: none !important;
    }

    .tbl_none {
        display: block !important;
    }

    .sp_none {
        display: block !important;
    }

    /* .main_box{
    height: auto;
} */

    .main_box img {
        width: 100%;
        margin: 0;
    }

    .section-ttl {
        text-align: left;
        margin: 0 auto 12px;
        width: 100%;
        font-size: 30px;
    }

    .section-ttl img {
        width: 100%;
    }

    /* EDIT フォーマッ�? スマ�?? ここまで*/

    .con2 h3::after {
        width: 50%;
    }

    .main_box_moji {
        margin: 0 5%;
        width: 90%;
        display: block;
        position: static;
    }

    .main_box_moji h1 {
        font-size: 11px;
        width: auto;
    }

    .ttl_text p {
        text-align: left;
    }

    .main_box_moji2 {
        font-size: 12px;
        margin: 0 5%;
        top: 90vw;
        width: 90%;
    }

    .main_box_logo2 {
        margin: 0 5%;
        width: 33%;
        top: 5vw;
    }

    .main_box_logo3 {
        margin: 0 5%;
        width: 33%;
        top: 5vw;
    }

    .navi {
        width: 100%;
        margin: 10px 0;
    }

    .navi ul {
        width: 100%;
        padding: 0px;
        font-size: 20px;
        display: flex;
        flex-wrap: wrap;
    }

    .navi ul li {
        background-color: #efefef;
        box-sizing: border-box;
        border-radius: 4px;
        padding: 6px;
        margin: 5px 1%;
        width: 48%;
    }

    .navi ul li a {
        font-size: 13px;
        padding: 5px 5px 5px 0;
    }

    .navi ul li a::after {
        top: 40%;
    }

    .navi ul li img {
        width: 100%;
    }

    .con2 {
        width: 100%;
        padding: 0;
        margin: 30px auto 0;
    }

    .con1 ul {
        width: 100%;
        height: auto;
    }

    /* .section_header_1,
.section_header_2,
.section_header_3,
.section_header_4,
.section_header_5,
.section_header_6 {
    width: 100%;
    margin: 30px 0 30px 16px;
} */
    .section_header_inner {
        text-shadow: 0px 0px 10px black;
    }


    .con2 h2 {
        width: 100%;
    }

    .con2 h2 img {
        width: 124px;
    }

    .con2 ul {
        width: 100%;
        margin: 0 auto;
    }

    .con2 ul li {
        display: flex;
        width: 43% !important;
        margin: 0 3.5% 20px;
    }

    .con2 ul li img {
        width: 100%;
    }


    .con_come {
        font-size: 12px;
    }


    .sml_ttl_box_underbtn2 {
        width: 100%;
        padding: 0 0 50px 0;
    }

    .sml_ttl_box_underbtn2 a {
        width: 90%;
    }

    a .icon {
        margin-top: auto;
        margin-left: auto;
    }

    .icon2 {
        padding: 8px 0px !important;
        width: 90%;
    }

    /* コー�?ィネ�?�ト�?�ソース　ここまで */

    .layoutbox ul {
        width: 100%;
    }


}