@charset 'utf-8';
/*
Theme Name: Sub Twenty Seventeen
Template: twentytwentyfour
Author: nakamura
Description: 子テーマ
Version: 1.0
*/
@import url('../twentytwentyfour/style.css');


@charset "utf-8";

body {
    font-size: 14px;
    background-color: #f2f6fa;
    margin: 0;
}

body a {
    text-decoration: none;
}

dd,p {
    margin: 0;
}

img {
    width: 100%;
}

h1 {
    margin: 0;
}

h2 {
    text-align: center;
    font-size: 2rem;
    background-image: url(../images/bg-checker.png);
    background-repeat: repeat-x;
    background-position: center;
}
@media (max-width: 768px) {
    h2 {
        font-size: 1.2rem;
    }
}
h2 span {
    display: inline-block;
    letter-spacing: 0.25rem;
    background-color: #fff;
    padding: 10px 5%;
}

h3 {
    font-size: 1.5rem;
    box-sizing: border-box;
    border-left: 10px solid #00529f;
    border-bottom: 1px solid #ccdcec;
    padding-left: 0.5rem;
    margin-top: 2.5rem;
}
@media (max-width: 768px) {
    h3 {
        font-size: 1rem;
    }
}

h4 {
    font-size: 1.25rem;
    color: #fff;
    background-color: #00529f;
    padding: 0.25rem 0.5rem;
    margin-top: 2rem;
}

h5 {
    font-size: 1.15rem;
    color: #00529f;
    font-weight: bold;
    border-bottom: 1px solid #222;
    padding-bottom: 0.25rem;
}

table {
    max-width: 900px;
    min-width: 500px;
    box-sizing: border-box;
    border-collapse: collapse;
    border: 1px solid #222;
    margin-top: 1rem;
    margin-bottom: 1rem;
}
@media (max-width: 768px) {
    table {
        min-width: auto;
    }
}
table th,
table td,
table th,
table td {
    min-width: 120px;
    text-align: center;
    box-sizing: border-box;
    border: 1px solid #222;
    margin: 0;
    padding: 5px;
}
table th {
    background-color: #dedede;
}







header {
    width: 100%;
    border-top: 5px solid #0053a0;
    background-color: #fff;
}


@media (max-width: 768px) {
    .page-wrap {
        position: relative;
    }
}

.header-wrap {
    display: flex;
    max-width: 1200px;
    margin: 0 auto;
}
.header-wrap .header-left img {

}
.header-wrap .header-right {
    flex-grow: 1;
}
@media (max-width: 768px) {
    .header-wrap .header-right {
        display: flex;
        align-items: center;
        padding: 0 1rem;
    }
}
.sp-menu {
    width: 50px;
    height: 50px;
    padding: 0;
    margin-left: 1rem;
}
.sp-menu a {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    min-height: 50px;
}
.sp-menu span {
    width: 100%;
    height: 3px;
    background-color: #222;
    box-sizing: border-box;
    border-radius: 3px;
}
.header-wrap .header-right .header-right-head {
    display: flex;
    justify-content: flex-end;
    list-style: none;
    margin-bottom: 0;
}
.header-wrap .header-right .header-right-head li {
    box-sizing: border-box;
    border-right: 1px solid #0053a0;
    padding: 0 0.25rem;
}
.header-wrap .header-right .header-right-head li:last-child {
    border: none;
}
.header-wrap .header-right .header-right-head li a {
    color: #000;
}
.header-wrap .header-right .header-right-body {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    padding-right: 0.5rem;
}
.header-wrap .header-right .header-right-body .tel-block {
    display: flex;
    align-items: center;
}
@media (max-width: 768px) {
    .header-wrap .header-right .header-right-body .tel-block {
        width: 50px;
    }
}
.header-wrap .header-right .header-right-body .tel-block img {
    max-width: 3rem;
}
.header-wrap .header-right .header-right-body .tel-block p {
    color: #000;
    font-size: 200%;
    font-weight: bold;
    margin-left: 0.25rem;
}
.header-wrap .header-right .header-right-body .hours-block {
    display: flex;
    flex-direction: column;
    box-sizing: border-box;
    border: 1px solid #0053a0;
    margin-left: 1rem;
}
.header-wrap .header-right .header-right-body .hours-block dt {
    color: #fff;
    text-align: center;
    background-color: #0053a0;
}
.header-wrap .header-right .header-right-body .hours-block dd {
    text-align: center;
    padding: 0 0.25rem;
}
.header-wrap .header-right .header-right-body .sign_up-block {
    display: flex;
    align-items: center;
    margin-left: 1rem;
}
.btn-gold {
    display: flex;
    align-items: center;
    min-width: 200px;
    font-size: 150%;
    letter-spacing: 0.1rem;    
    color: #fff;
    background-color: gold;
    /*background: no-repeat, linear-gradient(125deg, #B67B03 0%, #DAAF08 45%, #FEE9A0 70%, #DAAF08 85%, #B67B03 90% 100%);*/

    background: radial-gradient(ellipse farthest-corner at right bottom, #FEDB37 0%, #FDB931 8%, #9f7928 30%, #8A6E2F 40%, transparent 80%),
                radial-gradient(ellipse farthest-corner at left top, #FFFFFF 0%, #FFFFAC 8%, #D1B464 25%, #5d4a1f 62.5%, #5d4a1f 100%);

    box-shadow: 2px 2px 0px 0px rgba(0, 0, 0, 0.8);
    padding: 0.75rem;
}
.btn-gold span {
    flex-grow: 1;
    text-align: center;
}
.btn-gold i {
    margin-left: auto;
    margin-right: 2%;
}
img.icon-arrow-r {
    max-width: 20px;
    max-height: 21px;
}

.slide-wrap {
    width: 100%;
    background-color: #4f4c43;
}
.slide-wrap .slide {
    list-style: none;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
}
.slide-wrap .slide li {
    position: relative;
}
.slide-wrap .slide li span {
    position: absolute;
    display: flex;
    align-items: center;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    width: 100px;
}
.slide-wrap .slide li.slide-1 .text-1 {
    top: 35px;
    bottom: auto;
    left: auto;
    right: 0;
    color: #fff;
    /*font-size: 35px;*/
    font-size: 1.62vw;
    font-style: italic;
    width: auto;
    background-color: rgba(0, 0, 0, 0.5);
    transform: skewX(-10deg);
}
@media (max-width: 768px) {
    .slide-wrap .slide li.slide-1 .text-1 {
        top: 10px;
        font-size: 100%;
    }
}
.slide-wrap .slide li.slide-1 .text-2 {
    left: 10px;
    right: auto;
    top: auto;
    bottom: 80px;
    flex-direction: column;
    flex-wrap: wrap;
    /*font-size: 24px;*/
    font-size: 1.25vw;
    color: #fff;
    letter-spacing: 0.25rem;
    width: auto;
}
@media (max-width: 768px) {
    .slide-wrap .slide li.slide-1 .text-2 {
        font-size: x-small;
        left: 10px;
        bottom: 20px;
    }
}
s-txt {
    display: block;
    width: 100%;
}
.slick-dots {
    display: flex;
    justify-content: center;
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0.5rem;
    list-style: none;
    text-align: center;
    padding: 0;
    margin: 0 auto;
}

.slick-dots li {
    box-sizing: content-box;
    flex: 0 1 auto;
    width: 30px;
    height: 3px;
    margin-right: 3px;
    margin-left: 3px;
    text-indent: -999px;
    cursor: pointer;
    background-color: #fff;
    background-clip: padding-box;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    opacity: .5;
    transition: opacity 0.6s ease;
}
.slick-dots li.slick-active {
    opacity: 1;
}
.slick-dots li button {
    display: none;
}

nav {
    width: 100%;
    background-color: #0051a0;
    box-shadow: 0px 2px 0px 0px rgba(0, 0, 0, 0.3);
    margin-bottom: 0.1rem;
}
@media (max-width: 768px) {
    nav {
        display: none;
        position: absolute;
        top: 0;
        left: 0;
    }
}
nav ul {
    display: flex;
    justify-content: center;
    list-style: none;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
}
@media (max-width: 768px) {
    nav ul {
        flex-direction: column;
    }
}
nav ul li {
    margin: 0 1rem;
}
@media (max-width: 768px) {
    nav ul li {
        box-sizing: border-box;
        border-bottom: 1px solid #00306a;
        padding: 0.5rem 1rem;
    }
}
@media (max-width: 768px) {
    nav ul li a {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}
nav ul li span {
    display: inline-block;
    color: #fff;
    transform:skewX(-20deg);
    font-size: 120%;
    letter-spacing: 0.15rem;
    white-space: nowrap;
    padding: 0.75rem 2rem;
}
@media (max-width: 768px) {
    nav ul li span {
        display: block;
        font-size: 100%;
        transform: none;
        overflow-x: hidden !important;
        z-index: 9999;
        margin: 0 0.5rem;
        padding-left: 0;
    }
}
nav ul li.active span {
    background-color: #00306a;
}
@media (max-width: 768px) {
    nav ul li.active span {
        background-color: initial;
    }
}
nav ul li span:hover {
    background-color: #00306a;
}
nav ul li a i {
    color: #fff;
}
nav .sp-btn-close {
    text-align: right;
    padding: 0.5rem 1rem;
}
nav .sp-btn-close a i {
    color: #fff;
    font-size: 400%;
}
nav ul li .nav-item-small {
    font-size:80%;
}

footer {
    width: 100%;
    background-color: #00306a;
    margin-top: 100px;
}
@media (max-width: 768px) {
    footer {
        margin-top: 50px;
    }
}
footer .foot-wrap {
    display: flex;
    max-width: 1400px;
    padding: 10px 15px;
    margin: 0 auto;
}
@media (max-width: 768px) {
    footer .foot-wrap {
        flex-direction: column;
        flex-wrap: wrap;
    }
}
@media (max-width: 768px) {
    footer .foot-wrap .foot-left {
        text-align: center;
        padding-top: 1rem;
    }
}
footer .foot-wrap .foot-left img {
    max-width: 208px;
}
footer .foot-wrap .foot-right {
    display: flex;
    flex-wrap: wrap;
    flex-grow: 1;
    justify-content: flex-end;
    color: #fff;
}
@media (max-width: 768px) {
    footer .foot-wrap .foot-right {
        justify-content: flex-start;
    }
}
footer .foot-wrap .foot-right ul {
    display: flex;
    justify-content: flex-end;
    list-style: none;
}
@media (max-width: 768px) {
    footer .foot-wrap .foot-right ul {
        flex-direction: column;
        width: 100%;
        padding-left: 0;
    }
}
footer .foot-wrap .foot-right ul li {
    margin: 0.5rem 1rem;
}
@media (max-width: 768px) {
    footer .foot-wrap .foot-right ul li {
        box-sizing: border-box;
        border-bottom: 1px solid #fff;
    }
}
footer .foot-wrap .foot-right ul li a {
    color: #fff;
}
@media (max-width: 768px) {
    footer .foot-wrap .foot-right ul li a {
        display: flex;
        justify-content: space-between;
        padding: 10px;
    }
}
@media (max-width: 768px) {
    footer .foot-wrap .foot-right .small {
        margin: 0 auto;
    }
}

#contents {
    display: flex;
    max-width: 1200px;
    background-color: #f2f6fa;
    margin: 0 auto;
}
@media (max-width: 768px) {
    #contents {
        flex-direction: column;
    }
}

.side {
    width: 232px;/*280px;*/
    margin-top: -0.1rem;
}
@media (max-width: 768px) {
    .side {
        order: 2;
        width: 100%;
        margin-top: 0;
    }
}
.side .side-bnr-wrap {
    background-color: #00306a;
    box-sizing: border-box;
    box-shadow: 2px 2px 0px 0px rgba(0, 0, 0, 0.4);
}
.side .side-bnr-wrap .side-bnr {
    display: flex;
    flex-direction: column;
    list-style: none;    
    padding:10px;
    margin-top: 0;
}
@media (max-width: 768px) {
    .side .side-bnr-wrap .side-bnr {
        flex-direction: row;
        flex-wrap: wrap;
        padding: 0;
    }
}
.side-bnr li {
    margin-bottom: 4px;
}
@media (max-width: 768px) {
    .side-bnr li {
        width: 48%;
        margin: 1%;
    }
}
.side-bnr li a {
    position: relative;
}
.side-bnr li a:hover {
    opacity: 0.8;
}
.side-bnr li a span {
    position: absolute;
    color: #fff;
    font-size: 100%;
    font-weight: bold;
    letter-spacing: 2px;
    bottom: 0.1rem;/*7px;*/
    right: 10px;
    transform: skewX(-20deg);
    text-shadow: #0051a0 0 0 2px;
}
@media (max-width: 768px) {
    .side-bnr li a span {
        font-size: 80%;
    }
}
.side-bnr-2 li a span {
    transform: none;
    left: 0;
    right: 0;
    bottom: 0.5rem;/*13px;*/
    text-align: center;
    line-height: 1;
}
.side .side-bnr-wrap hr {
    height: 12px;
    border: none;
    background-image: url(../img/bg-checker.png);
}
.side .side-bnr-wrap .side-bnr-2 {
    margin-top: 18px;
}
.slick-slide {
    max-width: 100% !important;
}






.main {
    flex-grow: 1;
    max-width: 920px;
    width: calc(100% - 232px);
    background-color: #fff;
    padding: 1rem;
    margin-left: 1rem;
}
@media (max-width: 768px) {
    .main {
        width: auto;
        margin: 0 0.5rem;
        padding: 0.25rem;
    }
}

.breadcrumb {
    display: flex;
    width: 100%;
}
@media (max-width: 768px) {
    .breadcrumb {
        font-size: small;
    }
}
.breadcrumb a,
.breadcrumb span {
    margin-right: 0.5rem;
}


.indent {
    margin-left: 1rem;
    margin-right: 1rem;
}
@media (max-width: 768px) {
    .indent {
        margin-left: 0.1rem;
        margin-right: 0.1rem;
    }
}

.page-head {
    width: 100%;
}

.page-home .main {
    background-color: initial;
    padding: 0;
}
.page-home .main-lead {
    background-image: url(../img/img_top.png);
    background-repeat: no-repeat;
    background-position: top right;
    width: 100%;
    max-width: 920px;
    min-height: 480px;
    padding-left: 1rem;
}
@media (max-width: 768px) {
    .page-home .main-lead {
        min-height: 250px;
        background-size: contain;
        background-position: bottom right;
        margin-top: 1rem;
        padding-left: 0;
    }
}
.page-home .main-lead strong {
    display: block;
    font-size: 200%;
    letter-spacing: 3px;
    margin-top: 60px;
    margin-bottom: 2rem;
    padding-left: 1rem;
}
@media (max-width: 768px) {
    .page-home .main-lead strong {
        font-size: 150%;
        margin-top: 0;
        margin-bottom: 1rem;
        padding-left: 0;
    }
}
.page-home .main-lead p {
    font-size: 120%;
    line-height: 2;
    letter-spacing: 2px;
    padding-left: 1rem;
}
@media (max-width: 768px) {
    .page-home .main-lead p {
        font-size: 80%;
        padding-left: 0;
    }
}
.page-home .home-section-wrap {
    width: 100%;
    background-color: #fff;
}
.page-home h6 {
    position: relative;
    color: #00529f;
    font-size: 2rem;
    font-style: italic;
    letter-spacing: 3px;
    margin: 0;
}
.page-home h6 span {
    position: absolute;
    top: -2.2rem;
}
.page-home h2 {
    margin-top: 0;
    margin-bottom: 0;
    padding-top: 2rem;
    padding-bottom: 2rem;
}
.page-home section {
    margin-bottom: 6rem;
}
@media (max-width: 768px) {
  .page-home section {
    margin-bottom: 3rem;
  }  
}
@media (max-width: 768px) {
    .page-home section {
        margin-bottom: 5rem;
    }
}
.page-home .home-section-row {
    display: flex;
    justify-content: space-around;
    width: calc(100% - 2rem);
    margin: 0 auto;
    padding-bottom: 2.5rem;
}
@media (max-width: 768px) {
    .page-home .home-serach .home-section-row {
        flex-wrap: wrap;
        padding-bottom: 1rem;
    }
}
.page-home .home-section-row .search-head {
    color: #fff;
    font-size: 120%;
    font-weight: bold;
    letter-spacing: 2px;
    text-align: center;
    background-color: #00529f;
    margin-bottom: 1rem;
    padding: 0.5rem;
}
.page-home .home-section-row .search-body {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.page-home .home-section-row .search-body img {
    max-width: 160px;
}
.page-home .home-section-row .search-body img:hover {
    opacity: 0.8;
}
.page-home .home-section-row .search-body a {
    position: relative;
    text-align: center;
}
@media (max-width: 768px) {
    .page-home .home-section-row .search-body a {
        width: 32%;
    }
}
.page-home .home-section-row .search-type-body {
    max-width: 500px;
}
@media (max-width: 768px) {
    .page-home .home-section-row .search-type-body {
        max-width: 100%;
    }
}
.page-home .home-section-row .search-shop-body {
    max-width: 333px;
}
@media (max-width: 768px) {
    .page-home .home-section-row .search-shop-body {
        max-width: 100%;
    }
}
.page-home .home-section-row .search-body a span {
    position: absolute;
    color: #fff;
    text-align: center;
    left: 0;
    right: 0;
    margin: 0 auto;
}
.page-home .home-section-row .search-type-body a span {
    bottom: 30px;
}
@media (max-width: 768px) {
    .page-home .home-section-row .search-type-body a span {
        bottom: 10px;
    }
}
.page-home .home-section-row .search-type-body a span.multiline {
    bottom: 15px;
}
@media (max-width: 768px) {
    .page-home .home-section-row .search-type-body a span.multiline {
        bottom: 5px;
    }
}
@media (max-width: 768px) {
    .search-shop {
        width: 100%;
        margin-top: 2rem;
    }
    .page-home .home-section-row .search-shop-body a {
        width: 32%;/*50%;*/
        text-align: center;
    }
    .page-home .home-section-row .search-shop-body a:last-child {
        margin-left: 0;
        margin-right: auto;
    }
}
.page-home .home-section-row .search-shop-body a span {
    color: #00529f;
    font-size: 150%;
    top: 40px;
}
@media (max-width: 768px) {
    .page-home .home-section-row .search-shop-body a span {
        top: 20px;
    }
}

.page-home .home-lineup .home-section-row {
    flex-wrap: wrap;
    justify-content: flex-start;
}
.page-home .home-section-row .lineup-col {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: 210px;
    min-height: 390px;
    box-sizing: border-box;
    border: 2px solid #3375b2;
    margin: 0 6px;
    margin-bottom: 15px;
}
@media (max-width: 768px) {
    .page-home .home-section-row .lineup-col {
        width: 48%;
        margin-left: 3px;
        margin-right: 3px;
    }
}
.page-home .home-section-row .lineup-col .lineup-img {
    min-height: 8rem;
}
.page-home .home-section-row .lineup-col .lineup-shop {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background-color: #d6e3f0;
    padding: 0.25rem 0;
}
.page-home .home-section-row .lineup-col .lineup-name {
    flex-grow: 1;
    min-height: 5rem;
    border-bottom: 2px solid #92b5d6;
    margin: 0.5rem;
}
.page-home .home-section-row .lineup-col .lineup-price {
    width: 100%;
    min-height: 3rem;
    color: #b13a33;
    font-size: 175%;
    font-weight: bold;
    text-align: center;
}
.page-home .home-section-row .lineup-col .lineup-price span {
    color: #000;
    font-weight: normal;
    font-size: small;
}
.page-home .home-section-row .lineup-col .lineup-btn {;
    display: flex;
    align-items: flex-end;
    width: 100%;
    text-align: center;
    padding-bottom: 0.2rem;
}
.page-home .home-section-row .lineup-col .lineup-btn a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 90%;
    color: #fff;
    background-color: #244886;
    background-image: url(../img/icon_arrow-r.png);
    background-position: center right 10px;
    background-repeat: no-repeat;
    
    margin: 0 auto;
    padding: 0.5rem;
}
.page-home .home-section-row .lineup-col .lineup-btn a:hover {
    opacity: 0.8;
}
.page-home .home-section-row .lineup-col .lineup-btn a img {
    max-width: 20px;
    max-height: 20px;
}
.page-home .home-news .home-section-row {
    flex-wrap: wrap;
}
.page-home .home-news .news-line {
    display: flex;
    width: 100%;
    box-sizing: border-box;
    border-bottom: 2px solid #88aed2;
    padding: 0 0.5rem;
    padding-bottom: 0.75rem;
}
@media (max-width: 768px) {
    .page-home .home-news .news-line {
        flex-wrap: wrap;
    }
}
.page-home .home-news .news-line dt {
    color: #115ea5;
    font-weight: bold;
    margin-right: 40px;
}
@media (max-width: 768px) {
    .page-home .home-news .news-line dt {
        margin-bottom: 0.5rem;
    }
}
.page-home .home-news .news-line dd a {
    text-decoration: underline;
    text-underline-offset: 0.5rem;
}
@media (max-width: 768px) {
    .page-home .home-news .news-line dd a {
        text-underline-offset: initial;
    }
}
.home-guide .home-section-row {
    flex-wrap: wrap;
}
.home-guide .guide-col {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 280px;
    min-height: 80px;
    background-color: #00529f;
    background-repeat: no-repeat;
    background-position: center left 15px;
    padding: 0 5px;
    margin-bottom: 10px;
}
@media (max-width: 768px) {
    .home-guide .guide-col {
        width: 46%;
        text-align: center;
    }
    .home-guide .guide-col:last-child {
        margin-left: 2px;
        margin-right: auto;
    }
}
.home-guide .guide-col a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    min-height: 80px;
    position: relative;
}
.home-guide .guide-col:hover {
    opacity: 0.8;
}
.home-guide .guide-col span {
    color: #fff;
    font-size: 16px;
}
@media (max-width: 768px) {
    .home-guide .guide-col span {
        font-size: small;
    }
}
.home-guide .guide-col img {
    max-width: 20px;
    height: 20px;
    position: absolute;
    right: 10px;
}
@media (max-width: 768px) {
    .home-guide .guide-col img {
        right: 0;
    }
}
.home-guide .guide-col-1 {
    background-image: url(../img/bg_t_1.png);
}
.home-guide .guide-col-2 {
    background-image: url(../img/bg_t_2.png);
}
.home-guide .guide-col-3 {
    background-image: url(../img/bg_t_3.png);
}
.home-guide .guide-col-4 {
    background-image: url(../img/bg_t_4.png);
}
.home-guide .guide-col-5 {
    background-image: url(../img/bg_t_5.png);
}
.home-guide .guide-col-6 {
    background-image: url(../img/bg_t_6.png);
}
.home-guide .guide-col-7 {
    background-image: url(../img/bg_t_7.png);
}
.home-guide .guide-col-8 {
    background-image: url(../img/bg_t_8.png);
}
.home-guide .guide-col-9 {
    background-image: url(../img/bg_t_9.png);
}


/*よくあるご質問*/
.page-faq .inner-link ul {
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 0;
}
@media (max-width: 768px) {
    .page-faq .inner-link ul {
        flex-wrap: wrap;
    }
}
.page-faq .inner-link li {
    margin: 5px;
}
@media (max-width: 768px) {
    .page-faq .inner-link li {
        width: 50%;
        margin: 10px 0;
    }
}
.page-faq .inner-link li a {
    display: flex;
}
.page-faq .inner-link li a span {
    color: #00529f;
    text-decoration: underline;
    text-underline-offset: 8px;
    margin-right: 8px;
}
.faq-list-line {
    margin-bottom: 1rem;
}
.faq-list-line p {
    display: flex;
    align-items: center;
    border-bottom: 1px solid #888;
    padding-bottom: 0.25rem;
}
.faq-list-line p img {
    max-width: 38px;
    max-height: 39px;
    margin-right: 0.5rem;
}
.faq-list-q p span {
    color: #00529f;
    font-size: 115%;
    font-weight: bold;
}
.faq-list-a p {
    align-items: flex-start;
    border-bottom: none;
    margin-bottom: 2rem;
}

.table-wrap {
    margin-top: 1rem;
    margin-left: 1rem;
    margin-right: 1rem;
}
@media (max-width: 768px) {
    .table-wrap {
        overflow: scroll;
        margin-left: 0.1rem;
        margin-right: 0.1rem;
    }
}

.page-hoken table td dl {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding: 5px;
}
.page-hoken table td dl dt {
    width: 4%;
}
@media (max-width: 768px) {
    .page-hoken table td dl dt {
        width: 10%;
    }
}
.page-hoken table td dl dd {
    width: 95%;
    margin: 0;
}
@media (max-width: 768px) {
    .page-hoken table td dl dd {
        width: 90%;
    }
}
@media (max-width: 768px) {
    .page-hoken table .sp-wide {
        min-width: 240px;
    }
}
.page-hoken .table-notice {
    display: flex;
}
.page-hoken .table-notice dd {
    margin: 0;
}
.page-hoken .hoken-list-body dl {
    display: flex;
}
.page-hoken .hoken-list-body dl dd {
    margin: 0;
}
.page-hoken .hoken-list-body .pth-sub {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 1rem auto;
}
.page-hoken .hoken-list-body .pth-sub span {
    font-size: 300%;
    margin: 0 1rem;
}

.h3-top {
    font-size: 110%;
    width: 100%;
    box-sizing: border-box;
    border: 1px solid #222;
    margin-top: 2rem;
    padding: 2px 5px;
}

.page-reservation-guide strong {
    font-size: 115%;
    color: #80a8e7;
    display: block;
    text-align: center;
    margin-bottom: 1rem;
}
.page-reservation-guide .lead-row {
    display: flex;
}
@media (max-width: 768px) {
    .page-reservation-guide .lead-row {
        flex-direction: column;
    }
}
.page-reservation-guide .lead-row .lead-text {
    display: flex;
    flex-direction: column;
    /*justify-content: space-evenly;*/
}
.page-reservation-guide .lead-row .lead-text p {
    margin-bottom: 1rem;
}
@media (max-width: 768px) {
  .page-reservation-guide .lead-row .lead-img {
    width: 80%;
    margin: 0 auto;
  }  
}
.page-reservation-guide .reservation-step-wrap {
    display: flex;
    flex-direction: column;
}
.page-reservation-guide .reservation-step {
    display: flex;
    flex-wrap: wrap;
    max-width: 500px;
    margin-bottom: 2rem;
}
@media (max-width: 768px) {
    .page-reservation-guide .reservation-step {
        flex-direction: column;
    }
}
.page-reservation-guide .reservation-step .reservation-step-left {
    text-align: center;
}
.page-reservation-guide .reservation-step .reservation-step-left img {
    max-width: 150px;
}
.page-reservation-guide .reservation-step .reservation-step-left span {
    display: block;
    color: #fff;
    letter-spacing: 0.25rem;
    text-align: center;
    width: 80%;
    background-color: #3f8cc5;
    box-sizing: border-box;
    border-radius: 10px;
    margin: 0 auto;
}

.page-reservation-guide .reservation-step .reservation-step-left span.span-tor {
    background-color: #c56b3f;
}

.page-reservation-guide .reservation-step .reservation-step-right {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    flex-grow: 1;
}
.page-reservation-guide .reservation-step .reservation-step-right div {
    width: 90%;
    color: #777016;
    font-weight: bold;
    font-size: 115%;
    text-align: center;
    box-sizing: border-box;
    border: 2px solid #777016;
    border-radius: 10px;
    padding: 5px 0;
    margin: 0 auto;
    margin-top: 1rem;
}
.page-reservation-guide .reservation-step .reservation-step-right p {
    text-align: center;
    font-size: 700%;
    color: #aaa;
}

.page-reservation-guide .reservation-inner-wrap dl {
    margin-bottom: 1.5rem;
}
.page-reservation-guide .reservation-inner-wrap dl dt {
    font-size: 110%;
    font-weight: bold;
    margin-bottom: 0.15rem;
}
.page-reservation-guide .reservation-inner-wrap dl dd {
    margin-left: 0.5rem;
}
.page-reservation-guide .reservation-inner-wrap dl dd .img-credit-cards {
    max-width: 388px;
    height: 2rem;
    width: auto;
    vertical-align: middle;
}

.page-price-guide .price-sim {
    position: relative;
    max-width: 600px;
    margin: 0 auto;
}
@media (max-width: 768px) {
    .page-price-guide .price-sim img {
        position: absolute;
        top: 10%;
        /*z-index: -1;*/
    }
}
.price-sim-block {
    position: absolute;
    width: 250px;
    color: #fff;
    font-weight: bold;
    text-align: center;
    background-color: rgb(126 138 225 / 90%);
    border-radius: 10px;
    padding: 2px;
    box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.35);
}
.price-sim-block-1 {
    top: 0;
    bottom: 0;
    margin: auto 0;
    margin-left: 1%;
    height: 100px;
    font-size: 300%;
}
@media (max-width: 768px) {
    .price-sim-block-1 {
        position: relative;
        margin: 0 auto;
    }
}
.price-sim-block-2 {
    font-size: 150%;
}
.price-sim-block-3 {
    font-size: 150%;
}
.price-sim-block-4 {
    font-size: 150%;
}
@media (max-width: 768px) {
    .price-sim-block-2,
    .price-sim-block-3,
    .price-sim-block-4 {
        margin: 0 auto;
    }
}
.price-sim-block-bottom {
    bottom: -10%;
    left: -2px;
    width: 100%;
    background-color: rgb(69 37 79 / 77%);
    text-align: left;
    font-size: small;
}
@media (max-width: 768px) {
    .price-sim-block-bottom {
        position: relative;
        margin: 1rem auto;
    }
}
.price-sim-block-plus {
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: 25px;
    height: 40px;
    font-size: 200%;
    color: #000;
    background-color: rgb(100%, 100%, 100%, 0.7);
    box-shadow: initial;
    border-radius: 20px;
    padding: 0 10px;
}
@media (max-width: 768px) {
    .price-sim-block-plus {
        position: relative;
        margin: 1rem auto;
    }
}
.sub-bottom {
    display: block;
    color: #000;
    font-size: small;
    -webkit-text-stroke: initial;
    text-stroke: initial;
}
.sub-bottom-red {
    color: #e7aeae;
}
.price-sim-block-right {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1%;
    margin: auto 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 258px;
}
@media (max-width: 768px) {
    .price-sim-block-right {
        position: relative;
        margin: 0 auto;s
    }
}
.price-sim-block-right .price-sim-block {
    position: static;
}

.page-ihochusha .ihochusha-flow {
    max-width: 500px;
    display: flex;
    flex-wrap: wrap;
}
.page-ihochusha .ihochusha-flow .ihochusha-flow-text {
    width: 100%;
    text-align: center;
    font-size: 115%;
    background-color: #eee;
    box-sizing: border-box;
    border: 1px solid #000;
    border-radius: 10px;
    padding: 10px;
    margin: 0 auto;
}
.page-ihochusha .ihochusha-flow .ihochusha-flow-text-last {
    background-color: #ccdcec;
}
.page-ihochusha .ihochusha-flow .ihochusha-flow-notice {
    width: 100%;
    font-size: small;
    text-align: right;
    margin-top: 0.25rem;
}
.page-ihochusha .ihochusha-flow .ihochusha-flow-arrow {
    max-width: 210px;
    margin: 0 auto;
    margin-bottom: 0.25rem;
}
.page-ihochusha .ihochusha-flow .ihochusha-flow-arrow img {
    max-width: 210px;
}

.page-ihochusha .ihochusha-penalty {
    display: flex;
    flex-direction: column;
    background-color: #fce774;
    margin-top: 40px;
    padding: 1rem;
}
@media (max-width: 768px) {
    .page-ihochusha .ihochusha-penalty {
        padding: 0.25rem;
    }
}
.page-ihochusha .ihochusha-penalty .ihochusha-penalty-head {
    color: #fff;
    font-size: 120%;
    background-color: #fe0000;
    padding: 1rem;
}

.page-ihochusha .ihochusha-penalty .ihochusha-penalty-body {
    display: flex;
    align-items: center;
    position: relative;
    width: 100%;
    background-color: #ffffcd;
    margin-top: 40px;
    padding-top: 20px;
}
.page-ihochusha .ihochusha-penalty .ihochusha-penalty-body .ihochusha-penalty-body-text {
    position: absolute;
    top: -0.75rem;
    left: 0;
    right: 0;
    width: fit-content;
    color: #ff0000;
    font-size: 175%;
    font-weight: bold;
    background-color: #fff;
    border-radius: 10px;
    padding: 0 10px;
    margin: 0 auto;
}
@media (max-width: 768px) {
    .page-ihochusha .ihochusha-penalty .ihochusha-penalty-body .ihochusha-penalty-body-text {
        font-size: 100%;
    }
}
.page-ihochusha .ihochusha-penalty .ihochusha-penalty-body .ihochusha-penalty-body-price {
    flex-grow: 1;
    font-size: 200%;
    color: #ff0000;
    font-weight: bold;
    padding: 2rem;
}
@media (max-width: 768px) {
    .page-ihochusha .ihochusha-penalty .ihochusha-penalty-body .ihochusha-penalty-body-price {
        font-size: 150%;
         padding: 0.5rem;
    }
}
.page-ihochusha .ihochusha-penalty .ihochusha-penalty-body .ihochusha-penalty-body-mark {
    padding: 10px;
}
.page-ihochusha .ihochusha-penalty .ihochusha-penalty-body .ihochusha-penalty-body-mark img {
    max-width: 100px;
}
@media (max-width: 768px) {
    .page-ihochusha .ihochusha-penalty .ihochusha-penalty-body .ihochusha-penalty-body-mark img {
        max-width: 50px;
    }
}

.table dl {
    display: flex;
    flex-wrap: wrap;
    box-sizing: border-box;
    padding: 0.2rem 0.5rem;
}
.table dt {
    width: 20%;
    box-sizing: border-box;
    padding: 0.2rem;
}
.table dd {
    width: 80%;
    box-sizing: border-box;
    padding: 0.2rem;
}
.table dd iframe {
    margin-top: 1rem;
}
.table-about dl {
    border-bottom: 1px solid #3375b2;
}

/*プライバシーポリシー*/
.page-document .document-list dl {
    margin-top: 1.5rem;
}
.page-document .document-list dl dt {
    font-size: 125%;
    font-weight: bold;
}
.page-document .document-list dl.inner-dl {
    display: flex;
    flex-wrap: wrap;
    margin: 1rem;
}
@media (max-width: 768px) {
    .page-document .document-list dl.inner-dl {
        margin: 1rem 0.1rem;
    }
}
.page-document .document-list dl.inner-dl dt {
    width: 3%;
    font-size: 100%;
    font-weight: normal;
}
@media (max-width: 768px) {
    .page-document .document-list dl.inner-dl dt {
        width: 6%;
    }
}
.page-document .document-list dl.inner-dl dd {
    width: 97%;
}
@media (max-width: 768px) {
   .page-document .document-list dl.inner-dl dd {
    width: 94%;
   } 
}

/*ご利用者様の声*/
.page-voice .voice-list .voice-column {
    display: flex;
    flex-direction: column;
    margin-top: 20px;
}
.page-voice .voice-list .voice-column .voice-item {
    display: flex;
    box-sizing: border-box;
    border-bottom: 1px solid #0051a0;
    padding: 1rem;
    margin-bottom: 2rem;
}
.page-voice .voice-list .voice-column .voice-item .voice-head {
    width: 20%;
}
.page-voice .voice-list .voice-column .voice-item .voice-body {
    width: 80%;
}
.page-voice .voice-list .voice-column .voice-item .voice-head .voice-date {
    font-size: small;
    text-align: right;
}
.page-voice .voice-list .voice-column .voice-item .voice-head .voice-name {
    text-align: center;
}
.page-voice .voice-list .voice-column .voice-item .voice-body p {
    line-height: 1.8;
    padding: 2rem;
}

/*FC加盟店*/
.page-fc .fc-list-body picture {
    display: block;
    text-align: center;
}
.page-fc .fc-list-body picture img {
    max-width: 492px;
}



.mt-10{
    margin-top:10px!important;
}
.mb-10{
    margin-bottom:10px!important;
}
.mr-10{
    margin-right:10px!important;
}
.ml-10{
    margin-left:10px!important;
}
.mt-20{
    margin-top:20px!important;
}
.mb-20{
    margin-bottom:20px!important;
}
.mr-20{
    margin-right:20px!important;
}
.ml-20{
    margin-left:20px!important;
}
.mt-30{
    margin-top:30px!important;
}
.mb-30{
    margin-bottom:30px!important;
}
.mr-30{
    margin-right:30px!important;
}
.ml-30{
    margin-left:30px!important;
}
.mt-40{
    margin-top:40px!important;
}
.mb-40{
    margin-bottom:40px!important;
}
.mr-40{
    margin-right:40px!important;
}
.ml-40{
    margin-left:40px!important;
}
.mt-50{
    margin-top:50px!important;
}
.mb-50{
    margin-bottom:50px!important;
}
.mr-50{
    margin-right:50px!important;
}
.ml-50{
    margin-left:50px!important;
}
.mt-60{
    margin-top:60px!important;
}
.mb-60{
    margin-bottom:60px!important;
}
.mr-60{
    margin-right:60px!important;
}
.ml-60{
    margin-left:60px!important;
}
.mt-70{
    margin-top:70px!important;
}
.mb-70{
    margin-bottom:70px!important;
}
.mr-70{
    margin-right:70px!important;
}
.ml-70{
    margin-left:70px!important;
}
.mt-80{
    margin-top:80px!important;
}
.mb-80{
    margin-bottom:80px!important;
}
.mr-80{
    margin-right:80px!important;
}
.ml-80{
    margin-left:80px!important;
}
.mt-90{
    margin-top:90px!important;
}
.mb-90{
    margin-bottom:90px!important;
}
.mr-90{
    margin-right:90px!important;
}
.ml-90{
    margin-left:90px!important;
}
.mt-100{
    margin-top:100px!important;
}
.mb-100{
    margin-bottom:100px!important;
}
.mr-100{
    margin-right:100px!important;
}
.ml-100{
    margin-left:100px!important;
}
.mt-10{
    padding-top:10px!important;
}
.mb-10{
    padding-bottom:10px!important;
}
.mr-10{
    padding-right:10px!important;
}
.ml-10{
    padding-left:10px!important;
}
.mt-20{
    padding-top:20px!important;
}
.mb-20{
    padding-bottom:20px!important;
}
.mr-20{
    padding-right:20px!important;
}
.ml-20{
    padding-left:20px!important;
}
.mt-30{
    padding-top:30px!important;
}
.mb-30{
    padding-bottom:30px!important;
}
.mr-30{
    padding-right:30px!important;
}
.ml-30{
    padding-left:30px!important;
}
.mt-40{
    padding-top:40px!important;
}
.mb-40{
    padding-bottom:40px!important;
}
.mr-40{
    padding-right:40px!important;
}
.ml-40{
    padding-left:40px!important;
}
.mt-50{
    padding-top:50px!important;
}
.mb-50{
    padding-bottom:50px!important;
}
.mr-50{
    padding-right:50px!important;
}
.ml-50{
    padding-left:50px!important;
}
.mt-60{
    padding-top:60px!important;
}
.mb-60{
    padding-bottom:60px!important;
}
.mr-60{
    padding-right:60px!important;
}
.ml-60{
    padding-left:60px!important;
}
.mt-70{
    padding-top:70px!important;
}
.mb-70{
    padding-bottom:70px!important;
}
.mr-70{
    padding-right:70px!important;
}
.ml-70{
    padding-left:70px!important;
}
.mt-80{
    padding-top:80px!important;
}
.mb-80{
    padding-bottom:80px!important;
}
.mr-80{
    padding-right:80px!important;
}
.ml-80{
    padding-left:80px!important;
}
.mt-90{
    padding-top:90px!important;
}
.mb-90{
    padding-bottom:90px!important;
}
.mr-90{
    padding-right:90px!important;
}
.ml-90{
    padding-left:90px!important;
}
.mt-100{
    padding-top:100px!important;
}
.mb-100{
    padding-bottom:100px!important;
}
.mr-100{
    padding-right:100px!important;
}
.ml-100{
    padding-left:100px!important;
}
.p-10 {
    padding:10px!important;
}
.pt-10{
    padding-top:10px!important;
}
.pb-10{
    padding-bottom:10px!important;
}
.pr-10{
    padding-right:10px!important;
}
.pl-10{
    padding-left:10px!important;
}
.pt-20{
    padding-top:20px!important;
}
.pb-20{
    padding-bottom:20px!important;
}
.pr-20{
    padding-right:20px!important;
}
.pl-20{
    padding-left:20px!important;
}
.pt-30{
    padding-top:30px!important;
}
.pb-30{
    padding-bottom:30px!important;
}
.pr-30{
    padding-right:30px!important;
}
.pl-30{
    padding-left:30px!important;
}
.pt-40{
    padding-top:40px!important;
}
.pb-40{
    padding-bottom:40px!important;
}
.pr-40{
    padding-right:40px!important;
}
.pl-40{
    padding-left:40px!important;
}
.pt-50{
    padding-top:50px!important;
}
.pb-50{
    padding-bottom:50px!important;
}
.pr-50{
    padding-right:50px!important;
}
.pl-50{
    padding-left:50px!important;
}
.pt-60{
    padding-top:60px!important;
}
.pb-60{
    padding-bottom:60px!important;
}
.pr-60{
    padding-right:60px!important;
}
.pl-60{
    padding-left:60px!important;
}
.pt-70{
    padding-top:70px!important;
}
.pb-70{
    padding-bottom:70px!important;
}
.pr-70{
    padding-right:70px!important;
}
.pl-70{
    padding-left:70px!important;
}
.pt-80{
    padding-top:80px!important;
}
.pb-80{
    padding-bottom:80px!important;
}
.pr-80{
    padding-right:80px!important;
}
.pl-80{
    padding-left:80px!important;
}
.pt-90{
    padding-top:90px!important;
}
.pb-90{
    padding-bottom:90px!important;
}
.pr-90{
    padding-right:90px!important;
}
.pl-90{
    padding-left:90px!important;
}
.pt-100{
    padding-top:100px!important;
}
.pb-100{
    padding-bottom:100px!important;
}
.pr-100{
    padding-right:100px!important;
}
.pl-100{
    padding-left:100px!important;
}

.text-center {
	text-align: center;
}
.text-left {
	text-align: left;
}
.text-right {
	text-align: right;
}

.small {
    font-size: 80%;
}

.bold {
    font-weight: bold;
}

.nowrap {
    white-space: nowrap;
}

.red {
  color: #ff0000;
}
.blue {
  color: #007bff;
}

.d-pc {
  display: block;
}
@media (max-width: 768px) {
  .d-pc {
    display: none !important;
  }
}
.d-sp {
  display: none;
}
@media (max-width: 768px) {
  .d-sp {
    display: block;
  }
}