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

/*--- Normalize ---*/
html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

body {
    margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
    display: block;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

a {
    background-color: transparent;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong {
    font-weight: 700;
}

small {
    font-size: 80%;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 0;
}

hr {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
}

code,
kbd,
pre,
samp {
    font-size: 1em;
}

button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0;
}

select {
    text-transform: none;
}

button {
    overflow: visible;
}

button,
input,
select,
textarea {
    max-width: 100%;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
html input[disabled] {
    cursor: default;
    opacity: .5;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input[type="checkbox"],
input[type="radio"] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-right: 0.4375em;
    padding: 0;
}

input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-outer-spin-button,
input[type="time"]::-webkit-inner-spin-button,
input[type="time"]::-webkit-outer-spin-button,
input[type="datetime-local"]::-webkit-inner-spin-button,
input[type="datetime-local"]::-webkit-outer-spin-button,
input[type="week"]::-webkit-inner-spin-button,
input[type="week"]::-webkit-outer-spin-button,
input[type="month"]::-webkit-inner-spin-button,
input[type="month"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
    height: auto;
}

input[type="search"] {
    -webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

fieldset {
    border: 1px solid #d1d1d1;
    margin: 0 0 1.75em;
    min-width: inherit;
    padding: 0.875em;
}

fieldset > :last-child {
    margin-bottom: 0;
}

legend {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

optgroup {
    font-weight: bold;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
button,
textarea,
p,
blockquote,
th,
td {
    margin: 0;
    padding: 0;
}

* {
    zoom: 1;
}

li {
    list-style: none;
}

ul,
ol,
li {
    zoom: normal;
}

/* [「display: inline-block;」の文字間を詰めて隙間を削除する */
ul {
    letter-spacing: -.40em;
    /* 文字間を詰めて隙間を削除する */
}

ul li {
    letter-spacing: normal;
    /* 文字間を通常に戻す */
}


/* Avoid Chrome to see Safari hack */
@supports (-webkit-touch-callout: none) {
    body {
        /* The hack for Safari */
        height: -webkit-fill-available;
    }
}


/*--- main ---*/
html {
    font-family: sans-serif;
    font-size: 62.5%;
    position: relative;
}

@font-face {
    font-family: Noto Sans Japanese Light;
    font-style: normal;
    font-weight: 200;
    src: url(../font/NotoSansCJKjp-Light.woff) format("woff"), url(../font/NotoSansCJKjp-Light.ttf) format("truetype")
}

@font-face {
    font-family: Noto Sans Japanese Medium;
    font-style: normal;
    font-weight: 500;
    src: url(../font/NotoSansCJKjp-Medium.woff) format("woff"), url(../font/NotoSansCJKjp-Medium.ttf) format("truetype")
}

@font-face {
    font-family: Noto Sans Japanese Bold;
    font-style: normal;
    font-weight: 700;
    src: url(../font/NotoSansCJKjp-Bold.woff) format("woff"), url(../font/NotoSansCJKjp-Bold.ttf) format("truetype")
}

img {
    -ms-interpolation-mode: bicubic;
    height: 100%;
    width: auto;
    margin: 0 auto;
}

body,
html {
    width: auto;
    height: auto;
    font-weight: 200;
    font-family: Noto Sans Japanese Medium, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN, Hiragino Kaku Gothic Pro, Meiryo, メイリオ, sans-serif;
}

body {
    margin: 0;
    padding: 0;
    text-align: center;
    color: #000;
    font-style: normal;
    font-variant: normal;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 160%;
    background-color: #fff;
    vertical-align: top;
    text-align: top;
    background-image: url(../img/rc_main_bg.png);
    background-position: 0 0;
    background-repeat: x-repeat;
    background-size: 100% auto;
}


p {
    text-align: center;
    letter-spacing: 0;
}

.txt p {
    margin-bottom: 1.5em;
}


b,
strong,
    {
    font-weight: 500;
    font-family: Noto Sans Japanese Medium, 游ゴシック, Yu Gothic, 游ゴシック体, YuGothic, Hiragino Kaku Gothic ProN, ヒラギノ角ゴ ProN, Hiragino Kaku Gothic Pro, Meiryo, メイリオ, sans-serif;
}

.txt {
    word-wrap: break-word;
    text-align: left;
}

.red {
    color: #CC0000;
}

.nowrap {
    white-space: nowrap;
}

.category {
    line-height: 110%;
}

/* テキスト非表示 */
.top_btn a,
.footer {
    white-space: nowrap;
    text-indent: 100%;
    overflow: hidden;
    display: block;
}

a {
    color: #FFCC00;
    cursor: pointer;
}

a:link,
a:visited {
    text-decoration: none;
}

a:hover,
a:active {
    text-decoration: underline;
}


.txt a {
    color: #cc9900;
}

.txt a:link,
.txt a:visited {
    text-decoration: underline;
    color: #cc9900;
}

.txt a:hover,
.txt a:active {
    text-decoration: none;
    color: #cc9900;
}

/*-- ロールオーバー透過 --*/
a:hover img {
    opacity: 0.5;
    filter: alpha(opacity=50);
    -ms-filter: "alpha( opacity=50 )";
}


.float_clear {
    width: 100%;
    display: block;
    clear: both;
    line-height: 1px;
    height: 1px;
}


.content {
    position: relative;
    width: 100vw;
    min-height: 100vh;
    margin: 0;
    padding: 0;
    text-align: center;
    background: url(../img/rc_bg_bottom_check_pc.png) no-repeat bottom;
    background-size: 100% auto;
}

.catch {
    position: absolute;
    top: 3%;
    left: 3%;
    height: 2.5vh;
}

.main_box {
    position: absolute;
    top: 8%;
    left: 5%;
    width: 90%;
    max-height: 73vh;
    margin: 0 auto;
    padding: 0;
    text-align: center;
    background-color: #FFF;
    border: 8px solid #000;
    box-sizing: border-box;
}

.main_box .logo {
    height: 9vh;
    margin: 5vh auto 0 auto;
}

.main_box h1 {
    height: 14vh;
    max-height: 90px;
    margin: 2vh auto 5vh auto;
    text-align: center;
}


.main_content {
    width: 100%;
    margin: 0;
    border-top: 8px solid #000;
}

.main_content ul {
    margin: 5vh auto;
}

.main_content li {
    margin: 0 3%;
}

.top_btn {
    display: inline-block;
    width: 35%;
    aspect-ratio: 607 / 178;
    background: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
}

.top_btn a {
    display: inline-block;
    width: 100%;
    aspect-ratio: 607 / 178;
    height: auto;
    background-position: 0 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
}

.top_btn a:hover,
.top_btn a:active {
    background-position: top 100% right 0;
}

.top_btn.shinsotsu a {
    background-image: url(../img/rc_btn_shinsotsu.png);

}

.top_btn.chuto a {
    background-image: url(../img/rc_btn_chuto.png);

}

#shinsotsu .content {
    background: url(../img/rc_bg_bottom_comingsoon_pc.png) no-repeat bottom;
    background-size: 100% auto;
}

#shinsotsu .main_box h1 {
    height: 10vh;
    margin: 2vh auto 5vh auto;
}

#shinsotsu .main_content p {
    font-size: 3.5vw;
    line-height: 140%;
    margin: 0.8em auto;
    font-weight: bold;
}




/* =PC向け非表示設定
------------------------------------------------------------ */
.for_mobile {
    display: none;
}

@media only screen and (max-width: 960px) {
    body {
        min-width: initial;
    }
}

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

    /* =PC向け非表示設定
------------------------------------------------------------ */
    .for_pc {
        display: none;
    }

    .for_mobile {
        display: block;
    }

    body {
        font-size: 14px;
        font-size: 1.4rem;
    }

    .content {
        background: url(../img/rc_bg_bottom_check_sp.png) no-repeat bottom;
        background-size: 100% auto;
        min-height: 100vh;
        /* Fallback */
        min-height: calc(var(--vh, 1vh) * 100);
    }

    .catch {
        top: 2%;
        left: 3%;
        height: 1.6vh;
    }

    .main_box {
        margin: 0 auto;
        border: 6px solid #000;
    }

    .main_box .logo {
        height: 4.5vh;
        margin: 4vh auto 0 auto;
    }

    .main_box h1 {
        height: 13vh;
        margin: 2vh auto 4vh auto;
        text-align: center;
    }


    .main_content {
        width: 100%;
        margin: 0;
        border-top: 6px solid #000;
    }

    .main_content ul {
        margin: 3vh auto;
    }

    .main_content li {
        margin: 1.5vh auto;
    }

    .top_btn {
        width: 70vw;
    }

    #shinsotsu .content {
        background: url(../img/rc_bg_bottom_comingsoon_sp.png) no-repeat bottom;
        background-size: 100% auto;
    }

    #shinsotsu .main_box .logo {
        height: 4.5vh;
        margin: 10vh auto 0 auto;
    }

    #shinsotsu .main_box h1 {
        height: 4.5vh;
        margin: 2vh auto 10vh auto;
    }

    #shinsotsu .main_content p {
        font-size: 6.2vw;
        margin: 10vh auto;
    }

}

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


    .main_box .logo {
        height: 5vh;
        margin: 5vh auto 0 auto;
    }

    .main_box h1 {
        height: 13vh;
        margin: 2vh auto 5vh auto;
    }

    .main_content ul {
        margin: 2vh auto;
    }

    .main_content li {
        margin: 1vh auto;
    }

    .top_btn {
        width: 60%;
    }

    #shinsotsu .content {
        background: url(../img/rc_bg_bottom_comingsoon_sp.png) no-repeat bottom;
        background-size: 100% auto;
    }

    #shinsotsu .main_box .logo {
        height: 5vh;
        margin: 10vh auto 0 auto;
    }

    #shinsotsu .main_box h1 {
        height: 5vh;
        margin: 2vh auto 10vh auto;
    }

    #shinsotsu .main_content p {
        font-size: 6.2vw;
        margin: 7vh auto;
    }


}
