@charset "utf-8"; /* CSS Document */
/* ▽リセット CSS▽　*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

html {
    overflow-y: scroll;
}

/*  HTML5 display-role reset for older browsers 
*/
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block;
}

body {
    line-height: 1;
    overflow: hidden;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

img {
    margin: 0;
    padding: 0;
    vertical-align: bottom;
    display: block;
    border: 0px;
    width: 100%;
}

/* △リセット CSS△　*/
/* ▽共通 CSS▽　*/
body {
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-family: -apple-system,BlinkMacSystemFont,"Helvetica Neue","游ゴシック Medium",YuGothic,YuGothicM,"Hiragino Kaku Gothic ProN",メイリオ,Meiryo,sans-serif;
    font-size: 100%;
    color: #605E5E;
    line-height: 1.5em;
    margin: 0 !important;
}

p {
    font-family: Meiryo, sans-serif;
    font-size: 16px;
    letter-spacing: 1px;
    line-height: 1.3em;
}

a:hover img {
    opacity: 0.7;
}

.awesome {
    font-family: FontAwesome;
}

.ribbon {
    width: 130%;
    margin-left: -13%;
}

.fl-40l {
    float: left;
    width: 33%;
}

.fl-60r {
    float: right;
    width: 57%;
    margin-left: 10px;
}

#all-wrap {
    overflow: hidden;
}

.m-anchor {
    vertical-align: top;
    padding-top: 100px;
    margin-top: -100px;
}

.f-box .f-box01 {
    width: 80%;
    margin: 6px auto;
    overflow: hidden;
}

/* △共通 CSS△　*/
#all-wrap section {
    padding: 0 0% !important;
}

.adp_sp {
    display: block;
}

.adp_pc {
    display: none;
}

.adp_pc02 {
    display: none;
}

.adp_pc03 {
    display: none;
}

@media (min-width: 768px) {
    .adp_sp {
        display: none;
    }

    .adp_pc02 {
        display: block;
    }

    .adp_pc03 {
        display: none;
    }

    .adp_pc {
        display: block;
    }
}

@media (min-width: 1080px) {
    .adp_pc02 {
        display:none;
    }

    .adp_pc03 {
        display: block;
    }
}

.contents-wrapper {
}

.adp_fv {
    background-color: #390100;
    font-size: 1.6em;
    color: #fff;
    padding: 5% 0%;
    text-align: center;
}

@media (min-width: 500px) {
    .adp_fv {
        font-size: 2.6em;
        padding: 40px 0 30px 0px;
        text-align: center;
    }
}

@media (min-width: 768px) {
    .adp_fv {
        font-size: 50px;
        padding: 50px 0 30px 70px;
        text-align: center;
    }
}

@media (min-width: 1080px) {
    .adp_fv {
        font-size: 60px;
        padding: 50px 0 30px 70px;
        text-align: justify;
    }
}

.adp_fv section span {
    top: -21px;
    left: 43%;
}

@media (min-width: 500px) {
    .adp_fv section span {
        top: -34px;
        left: 45%;
    }
}

@media (min-width: 768px) {
    .adp_fv section span {
        top: -40px;
        left: 290px;
    }
}

@media (min-width: 1080px) {
    .adp_fv section span {
        top: -46px;
        left: 290px;
    }
}

.w-max {
    max-width: 1080px;
}

.w-100 {
    width: 100%;
}

.f0 {
    font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif !important;
}

.f1{
    font-family: "ヒラギノ明朝 ProN", "HiraMinProN", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif !important;
}

.s0 {
    margin: 0 auto;
}

.s1 {
    position: relative;
}

.s2 {
    position: absolute;
}

.s3 {
    font-size: 12px;
}

@media (min-width: 500px) {
    .s3 {
        font-size: 12px;
    }
}

@media (min-width: 768px) {
    .s3 {
        font-size: 15px;
    }
}

@media (min-width: 1080px) {
    .s3 {
        font-size: 20px;
    }
}

.s4 {
    max-width: 300px !important;
    margin: 0 auto;
}

.s5 {
    max-width: 300px !important;
    margin-right: 0;
}

@media (min-width: 500px) {
    .s4 {
        max-width: 400px !important;
        margin: 0 auto;
    }

    .s5 {
        max-width: 400px !important;
        margin-right: 0;
    }
}

.s6 {
    margin-top: 5%;
}

.s7 {
    font-size: 1.4em !important;
}

@media (min-width: 500px) {
    .s7 {
        font-size: 1.7em !important;
    }
}

@media (min-width: 768px) {
    .s7 {
        font-size: 30px !important;
    }
}

@media (min-width: 1080px) {
    .s7 {
        font-size: 40px !important;
    }
}

.s8 {
    color: #CA3146;
}

.s9 {
    font-size: 1.7em;
}

.s99 {
    font-size: 1.7em;
}

@media (min-width: 500px) {
    .s9 {
        font-size: 2.5em;
    }
}

@media (min-width: 500px) {
    .s99 {
        font-size: 2.5em;
    }
}

@media (min-width: 768px) {
    .s9 {
        font-size: 50px;
    }
}

@media (min-width: 768px) {
    .s99 {
        font-size: 50px;
    }
}

@media (min-width: 1080px) {
    .s9 {
        font-size: 68px;
    }
}

@media (min-width: 1080px) {
    .s99 {
        font-size: 70px;
    }
}

.s10 {
    text-align: center;
}

.s11 {
    line-height: 1.5 !important;
}

.s12 {
    color: #390100 !important;
}

.s13 {
    letter-spacing: 0px;
}

@media (min-width: 768px) {
    .s13 {
        letter-spacing: -3px;
    }
}

@media (min-width: 768px) {
    .s13 {
        letter-spacing: -5px;
    }
}

.s14 {
    top: 36%;
    left: 54%;
}

@media (min-width: 768px) {
    .s14 {
        top: 40%;
        left: 53%;
    }
}

.s15 {
    bottom: -10%;
    left: 65%;
}

@media (min-width: 768px) {
    .s15 {
        bottom: -10%;
        left: 58%;
    }
}

.s16 {
    line-height: 1.3;
}

.s17 {
    letter-spacing: 0px;
    margin-left: 0;
}

@media (min-width: 768px) {
    .s17 {
        letter-spacing: -10px;
        margin-left: -9%;
    }
}

.s18 {
    letter-spacing: -14px;
}

@media (min-width: 768px) {
    .s18 {
        letter-spacing: -30px;
    }
}

@media (min-width: 1080px) {
    .s18 {
        letter-spacing: -40px;
    }
}

.s19 {
    margin: 5px 0;
}

.s20 {
    padding-bottom: 5%;
}

.s21 {
    top: 10%;
    left: 4%;
}

@media (min-width: 768px) {
    .s21 {
        top: 5%;
    }
}

.s22 {
    top: 31%;
    left: 53%;
}

@media (min-width: 768px) {
    .s22 {
        top: 31%;
        left: 36%;
    }
}

@media (min-width: 1080px) {
    .s22 {
        top: 30%;
        left: 34%;
    }
}

.s23 {
    top: 59%;
    left: 52%;
}

@media (min-width: 500px) {
    .s23 {
        top: 60%;
        left: 52%;
    }
}

@media (min-width: 768px) {
    .s23 {
        top: 64%;
        left: 38%;
    }
}

@media (min-width: 1080px) {
    .s23 {
        top: 64%;
        left: 34%;
    }
}

.s24 {
    line-height: 1.2 !important;
}

.s25 {
    font-size: 1.3em !important;
}

@media (min-width: 500px) {
    .s25 {
        font-size: 1.7em !important;
    }
}

@media (min-width: 768px) {
    .s25 {
        font-size: 30px !important;
    }
}

.s26 {
    background-color: #CA3146;
    width: 90%;
    height: 0%;
    border-radius: 60px;
}

@media (min-width: 768px) {
    .s26 {
        width: 60%;
        height: 0%;
        border-radius: 50px;
    }
}

@media (min-width: 1080px) {
    .s26 {
        width: 50%;
        height: 0%;
        border-radius: 50px;
    }
}

.s27 {
    color: #FFF !important;
}

.s28 {
    margin-top: 3%;
}

.s29 {
    font-size: 1.35em !important;
}

@media (min-width: 500px) {
    .s29 {
        font-size: 1.65em !important;
    }
}

@media (min-width: 768px) {
    .s29 {
        font-size: 30px !important;
    }
}

@media (min-width: 1080px) {
    .s29 {
        font-size: 35px !important;
    }
}

.s30 {
    font-size: 15px !important;
}

.s31 {
    padding: 1%;
}

.s32 {
    padding-top: 5%;
}

.s33 {
    width: 7%;
}

.s34 {
    text-align: justify;
}

.s35 {
    width: 80%;
}

@media (min-width: 768px) {
    .s35 {
        width: 66%;
    }
}

.s36 {
    text-align: justify;
}

@media (min-width: 768px) {
    .s36 {
        text-align: right;
    }
}

.s37 {
    top: 26%;
    left: 46%;
}

@media (min-width: 500px) {
    .s37 {
        top: 38%;
        left: 37%;
    }
}

@media (min-width: 561px) {
    .s37 {
        top: 43%;
        left: 34%;
    }
}

@media (min-width: 600px) {
    .s37 {
        top: 43%;
        left: 32%;
    }
}

@media (min-width: 650px) {
    .s37 {
        top: 44%;
        left: 30%;
    }
}

@media (min-width: 700px) {
    .s37 {
        top: 44%;
        left: 29%;
    }
}

@media (min-width: 768px) {
    .s37 {
        top: 51%;
        left: 34%;
    }
}

@media (min-width: 800px) {
    .s37 {
        top: 51%;
        left: 32%;
    }
}

@media (min-width: 900px) {
    .s37 {
        top: 48%;
        left: 33%;
    }
}

@media (min-width: 1080px) {
    .s37 {
        top: 54%;
        left: 31%;
    }
}

.s38 {
    top: -6%;
    left: 81%;
}

@media (min-width: 500px) {
    .s38 {
        top: -5%;
        left: 84%;
    }
}

@media (min-width: 550px) {
    .s38 {
        top: -5%;
        left: 80%;
    }
}

@media (min-width: 600px) {
    .s38 {
        top: -5%;
        left: 78%;
    }
}

@media (min-width: 650px) {
    .s38 {
        top: -5%;
        left: 75%;
    }
}

@media (min-width: 700px) {
    .s38 {
        top: -5%;
        left: 72%;
    }
}

@media (min-width: 768px) {
    .s38 {
        top: -5%;
        left: 76%;
    }
}

@media (min-width: 800px) {
    .s38 {
        top: -5%;
        left: 71%;
    }
}

@media (min-width: 992px) {
    .s38 {
        top: -5%;
        left: 71%;
    }
}

@media (min-width: 1080px) {
    .s38 {
        top: -5%;
        left: 77%;
    }
}

.s39 {
    font-size: 0.8em;
}

@media (min-width: 768px) {
    .s39 {
        font-size: 55px;
    }
}

.s40 {
    width: 30%;
}

.s41 {
    font-size: 1.5em;
}

@media (min-width: 768px) {
    .s41 {
        font-size: 40px;
    }
}

@media (min-width: 1080px) {
    .s41 {
        font-size: 50px;
    }
}

.s42 {
    border: solid 1px #000;
    width: 60%;
    margin: 0 auto;
    text-align: center;
    padding: 3%;
    color: #000;
}

@media (min-width: 768px) {
    .s42 {
        width: 50%;
        padding: 3%;
    }
}

.s43 {
    margin: 3% 0;
}

.s44 {
    padding: 0 3%;
}

.s45 {
    text-align: center;
}

@media (min-width: 768px) {
    .s45 {
        text-align:justify;
    }
}

.s46 {
    margin-bottom: 5%;
}

@media (min-width: 768px) {
    .s46 {
        margin-bottom: 0%;
    }
}

.s_flex {
    display: block;
}

@media (min-width: 768px) {
    .s_flex {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
    }
}

.s_flex div {
    width: 80%;
    margin: 0 auto;
}

@media (min-width: 500px) {
    .s_flex div {
        width: 80%;
        margin: 0 auto;
    }
}

@media (min-width: 768px) {
    .s_flex div {
        width: 43.1%;
        margin: 0 1%;
    }
}

section#adp_sec01 {
    background-color: #ffdbdd;
}

section#adp_sec02 {
}

section#adp_sec03 {
    background-color: #FFFAE9;
}

section#adp_sec05 {
    background: url("../img/bg.jpg");
    background-repeat: no-repeat;
    background-position: center 4px;
    background-size: cover;
    padding-bottom: 4% !important;
}

section#adp_sec06 {
    background: url("../img/bg02_top.jpg");
    background-repeat: no-repeat;
    background-position: center 20px;
    background-size: cover;
}

section#adp_sec08 {
    width: 90%;
    margin: 3% auto;
}

@media (min-width: 768px) {
    section#adp_sec08 {
        width: 1080px;
        margin: 3% auto;
    }
}

section#adp_sec08 ul.adp_sec08_list01 {
    padding: 3%;
    /* display: flex; */
}

section#adp_sec08 ul.adp_sec08_list01 li {
    width: 100%;
    padding: 0%;
}

section#adp_sec08 ul.adp_sec08_list01 li h1 {
    font-size: 1.6em;
    letter-spacing: -2px;
    font-weight: bold;
    color: #000;
    line-height: 1.5;
}

section#adp_sec08 ul.adp_sec08_list01 li h1 span {
    font-size: 0.7em;
    letter-spacing: 0px;
    font-weight: normal;
}

section#adp_sec08 ul.adp_sec08_list01 li span {
    font-size: 1.2em;
}

section#adp_sec08 ul.adp_sec08_list01 li p {
    font-size: 2em;
    font-weight: bold;
    padding: 0;
    margin: 0px 0;
}

section#adp_sec08 ul.adp_sec08_list01 li p span {
    font-size: 0.4em;
}

section#adp_sec08 ul.adp_sec08_list01 li p.adp_sec08_txt01 {
    font-size: 1em;
    font-weight: normal;
    padding: 3%;
}

section#adp_sec08 ul.adp_sec08_list01 li p.adp_sec08_txt01 span {
    font-size: 0.8em;
}

section#adp_sec08 article {
    border: solid 1px #000;
    padding: 5%;
    margin: 0% 5%;
}

@media (min-width: 500px) {
    section#adp_sec08 {
        width: 90%;
        margin: 3% auto;
    }

    section#adp_sec08 ul.adp_sec08_list01 {
        padding: 3%;
        /* display: flex; */
    }

    section#adp_sec08 ul.adp_sec08_list01 li {
        width: 100%;
        padding: 0%;
    }

    section#adp_sec08 ul.adp_sec08_list01 li h1 {
        font-size: 1.7em;
        letter-spacing: -2px;
        font-weight: bold;
        color: #000;
        line-height: 1.5;
    }

    section#adp_sec08 ul.adp_sec08_list01 li h1 span {
        font-size: 0.7em;
        font-weight: normal;
    }

    section#adp_sec08 ul.adp_sec08_list01 li span {
        font-size: 1.2em;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p {
        font-size: 2em;
        font-weight: bold;
        padding: 0;
        margin: 0px 0;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p span {
        font-size: 0.4em;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p.adp_sec08_txt01 {
        font-size: 1em;
        font-weight: normal;
        padding: 3%;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p.adp_sec08_txt01 span {
        font-size: 0.8em;
    }

    section#adp_sec08 article {
        border: solid 1px #000;
        padding: 5%;
        margin: 0% 5%;
    }
}

@media (min-width: 768px) {
    section#adp_sec08 {
        width: 100%;
        margin: 3% auto;
    }

    section#adp_sec08 ul.adp_sec08_list01 {
        padding: 3%;
        display: flex;
        width: 100%;
    }

    section#adp_sec08 ul.adp_sec08_list01 li {
        width: calc(100% / 2.3);
        padding: 2%;
    }

    section#adp_sec08 ul.adp_sec08_list01 li h1 {
        font-size: 1.7em;
        letter-spacing: -2px;
        font-weight: bold;
        color: #000;
        line-height: 1.1;
    }

    section#adp_sec08 ul.adp_sec08_list01 li h1 span {
        font-size: 0.7em;
        font-weight: normal;
    }

    section#adp_sec08 ul.adp_sec08_list01 li span {
        font-size: 1.2em;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p {
        font-size: 2em;
        font-weight: bold;
        padding: 0;
        margin: 0px 0;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p span {
        font-size: 0.4em;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p.adp_sec08_txt01 {
        font-size: 1em;
        font-weight: normal;
        padding: 0%;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p.adp_sec08_txt01 span {
        font-size: 0.8em;
    }

    section#adp_sec08 article {
        border: solid 1px #000;
        padding: 2%;
        margin: 0% 5%;
    }
}

@media (min-width: 1024px) {
    section#adp_sec08 {
        max-width: 1080px;
        width: 100%;
        margin: 3% auto;
    }

    section#adp_sec08 ul.adp_sec08_list01 {
        display: flex;
        padding: 0;
    }

    section#adp_sec08 ul.adp_sec08_list01 li {
        width: calc(100% / 2);
        padding: 3%;
    }

    section#adp_sec08 ul.adp_sec08_list01 li h1 {
        font-size: 2.4em;
        letter-spacing: -2px;
        font-weight: bold;
        color: #000;
        line-height: 1.1;
    }

    section#adp_sec08 ul.adp_sec08_list01 li h1 span {
        font-size: 0.6em;
        font-weight: normal;
    }

    section#adp_sec08 ul.adp_sec08_list01 li span {
        font-size: 1.2em;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p {
        font-size: 2.5em;
        font-weight: bold;
        padding: 0;
        margin: -9px 0;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p span {
        font-size: 0.4em;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p.adp_sec08_txt01 {
        font-size: 1.13em;
        font-weight: normal;
    }

    section#adp_sec08 ul.adp_sec08_list01 li p.adp_sec08_txt01 span {
        font-size: 0.8em;
    }

    section#adp_sec08 article {
        border: solid 1px #000;
        padding: 1.5%;
    }
}
