@charset "UTF-8";

html {
    color: #000;
    background: #fff
}

blockquote,
body,
code,
dd,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
input,
legend,
li,
ol,
p,
pre,
td,
textarea,
th,
ul {
    margin: 0;
    padding: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

fieldset,
img {
    border: 0
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
    font-style: normal;
    font-weight: 400
}

ol,
ul {
    list-style: none
}

caption,
th {
    text-align: left
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%;
    font-weight: 400
}

q:after,
q:before {
    content: ''
}

abbr,
acronym {
    border: 0;
    font-variant: normal
}

sup {
    vertical-align: text-top
}

sub {
    vertical-align: text-bottom
}

input,
select,
textarea {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit
}

legend {
    color: #000
}

#yui3-css-stamp.cssreset {
    display: none
}

@font-face {
    font-family: NotoSansCJKjp-Regular;
    src: url(../webfont/NotoSansCJKjp-Regular.woff) format('woff');
    color: #000;
    font-display: swap
}


@font-face {
    font-family: ShipporiMincho-Regular;
    src: url(../webfont/ShipporiMincho-Regular.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}

@font-face {
    font-family: CenturyGothicStd-Bold;
    src: url(../webfont/CenturyGothicStd-Bold.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}

@font-face {
    font-family: CenturyGothicStd;
    src: url(../webfont/CenturyGothicStd.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}


@font-face {
    font-family: AttikaU;
    src: url(../webfont/AttikaU.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}


@font-face {
    font-family: NotoSerifCJKjp-Regular;
    src: url(../webfont/NotoSerifCJKjp-Regular.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}


@font-face {
    font-family: NotoSerifCJKjp-Medium;
    src: url(../webfont/NotoSerifCJKjp-Medium.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}


@font-face {
    font-family: Prata-Regular;
    src: url(../webfont/Prata-Regular.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}


@font-face {
    font-family: Rufina-Regular;
    src: url(../webfont/Rufina-Regular.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}


@font-face {
    font-family: CrimsonText-Regular;
    src: url(../webfont/CrimsonText-Regular.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}

body {
    font-family: NotoSerifCJKjp-Regular, serif;
    font-size: 14px;
    background-color: #0a0a0a;
    ;
}

#topcontrol {
    background-color: #1fa222;
    color: #fff;
    font-size: 40px;
    line-height: 0;
    padding: 0 10px 5px;
    z-index: 999
}

h2,
h3,
li,
p,
td,
th {
    line-height: 1.8em;
    letter-spacing: .1em
}

.img100 img {
    width: 100%;
    height: auto
}

.cy_hover img {
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.cy_hover img:hover {
    opacity: .7
}

.a_h a {
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    -o-transition: .3s ease-in-out;
    transition: .3s ease-in-out
}

.cy_container {
    width: calc(100% - 120px);
    max-width: 960px;
    margin: 0 auto
}

.container1840 {
    max-width: 1840px;
    width: calc(100% - 80px);
}

.container1440 {
    width: calc(100% - 80px);
    margin: 0 auto;
    max-width: 1440px;
}

.container1280 {
    width: calc(100% - 120px);
    margin: 0 auto;
    max-width: 1280px
}

.container1200 {
    width: calc(100% - 80px);
    margin: 0 auto;
    max-width: 1200px
}

.container1680 {
    width: calc(100% - 120px);
    padding-left: 40px;
    max-width: 1680px
}

.container1600 {
    /* width: 94%; */
    width: calc(100% - 80px);
    margin: 0 auto;
    /* padding-left: 80px; */
    max-width: 1600px
}

.container1500 {
    width: calc(100% - 120px);
    padding-left: 40px;
    max-width: 1500px
}

.container1140 {
    width: calc(100% - 120px);
    margin: 0 auto;
    max-width: 1140px
}


.container1080 {
    width: calc(100% - 80px);
    margin: 0 auto;
    max-width: 1080px;
}


.container900 {
    width: calc(100% - 80px);
    margin: 0 auto;
    max-width: 900px
}

.container750 {
    width: calc(100% - 120px);
    margin: 0 auto;
    max-width: 750px
}

.a_b a {
    color: #000;
    text-decoration: none
}

.a_w a {
    color: #fff;
    text-decoration: none
}

.z500 {
    position: relative;
    z-index: 500
}

.z10 {
    position: relative;
    z-index: 10
}

.cy_hidden {
    overflow: hidden
}

.font {
    font-family: "ヒラギノ明朝 ProN W6", HiraMinProN-W6, "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif
}

.font0 {
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "MS P明朝", "MS PMincho", serif;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    -webkit-tap-highlight-color: transparent
}

.font1 {
    font-family: ShipporiMincho-Regular, serif
}

.font2 {
    font-family: CenturyGothicStd-Bold, serif
}

.font3 {
    font-family: CenturyGothicStd, serif
}


.font_notoserifcjk_r {
    font-family: NotoSerifCJKjp-Regular, serif;
}


.font_notoserifcjk_m {
    font-family: NotoSerifCJKjp-Medium, serif;
}


.font_AttikaU {
    font-family: AttikaU, serif;
}

.font_Prata {
    font-family: Prata-Regular, serif;
}

.font_Rufina {
    font-family: Rufina-Regular, serif;
}

.font_CrimsonText {
    font-family: CrimsonText-Regular, serif;
}

.font26 {
    font-size: 26px;
    line-height: normal
}

.font24 {
    font-size: 24px;
    line-height: normal
}

.font22 {
    font-size: 22px;
    line-height: normal
}

.font20 {
    font-size: 20px;
    line-height: normal
}

.font20_14 {
    font-size: 20px;
    line-height: normal
}

.font18 {
    font-size: 18px;
    line-height: normal
}

.font16 {
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.04em;
}

.posi {
    position: relative
}

#cy_h1 {
    position: absolute;
    top: 0;
    left: 0;
    padding: 0 5px;
    z-index: 800;
    font-size: 10px;
    color: #fff
}

.tel-link2 a {
    text-decoration: none;
    color: inherit
}

.tel-link2 {
    text-decoration: none;
    color: inherit
}

.br1024 {
    display: none
}

.br1400 {
    display: none
}

.brnone1400 {
    display: block;
}

.brnone1600 {
    display: block;
}

.br740 {
    display: none
}

.br480 {
    display: none
}

.t-hi {
    line-height: 2.4em
}

.order2 {
    order: 2
}

.z400 {
    position: relative;
    z-index: 400
}

@media only screen and (max-width:1680px) {
    .container1440 {
        width: calc(100% - 80px);
        margin: 0 auto;
        max-width: 1440px;
        padding-left: 60px;
        padding-right: 60px;
    }

    .container1600 {
        width: calc(100% - 80px);
        margin: 0 auto;
        max-width: 1600px;
        padding-left: 60px;
        padding-right: 60px;
    }

    .container1200 {
        width: calc(100% - 80px);
        margin: 0 auto;
        max-width: 1200px;
        padding-left: 60px;
        padding-right: 60px;
    }

    .container1080 {
        width: calc(100% - 80px);
        margin: 0 auto;
        max-width: 1080px;
        padding-left: 60px;
        padding-right: 60px;
    }
    .chara_container {
        width: 91%;
        margin-left: auto;
    }
}

@media only screen and (max-width:1600px) {
    
    .brnone1600 {
        display: none;
    }
}

@media only screen and (max-width:1400px) {
    .font20_14 {
        font-size: 16px;
        line-height: normal;
    }

    .br1400 {
        display: block;
    }

    .brnone1400 {
        display: none;
    }

}

@media only screen and (max-width:1024px) {
    .cy_container {
        width: 97%
    }

    .font26 {
        font-size: 18px
    }

    .font24 {
        font-size: 18px
    }

    .font22 {
        font-size: 18px
    }

    .font20 {
        font-size: 16px
    }

    .font20_14 {
        font-size: 14px;
        line-height: normal
    }


    .font18 {
        font-size: 14px
    }

    .font16 {
        font-size: 14px
    }

    .br1024 {
        display: block
    }

    .brnone1024 {
        display: none
    }

    .t-hi {
        line-height: 1.8em
    }

    .container1080,
    .container1140,
    .container1200,
    .container1280,
    .container1440,
    .container1500,
    .container1600,
    .container1680,
    .container900,
    .container750,
    .cy_container {
        width: 90%;
        margin: 0 auto;
        padding-left: 0;
        /* padding-left: 20px !important; */
        padding-right: 0
    }

    .container1840 {
        width: 95%;
    }

    .chara_container {
        padding-left: 0;
        margin: 0 auto;
        width: 90%;
    }

}

@media only screen and (max-width:740px) {
    body {
        font-size: 12px
    }

    #cy_h1 {
        top: 60px;
        padding: 0 15px 0
    }

    #cy_h1.top_h1 {
        color: #000;
        padding: 0 50px 0
    }

    .br740 {
        display: block
    }

    .brnone740 {
        display: none
    }


}

@media only screen and (max-width:480px) {
    .br480 {
        display: block
    }

    .brnone480 {
        display: none
    }

}