@charset "UTF-8";

/******************************
 * Bootstrap Settings
 *
 * ブートストラップの設定上書き
******************************/
/**
 * Color system
 *
 * bulma
**/
/**
 * Spacing
**/
/**
 * Body
**/
/**
 * Links
**/
/**
 * Paragraphs
**/
/**
 * Grid breakpoints
**/
/*
$grid-breakpoints: (
  xs: 0,
  sm: 576px,
  md: 768px,
  lg: 992px,
  xl: 1200px
) !default;
*/
/**
 * Grid containers
**/
/*
$container-max-widths: (
  sm: 540px,
  md: 720px,
  lg: 960px,
  xl: 1140px
) !default;
*/
/**
 * Grid columns
**/
/**
 * Components
**/
/**
 * Fonts
**/
/**
 * Tables
**/
/**
 * Buttons + Forms
**/
/**
 * Buttons
**/
/**
 * Theme Settings
**/
/**
 * transition のデフォルト値
**/
/**
 * 透過のデフォルト値
**/
/**
 * テーマのフォント
**/
/**
 * keyframes()
**/
/**
 * animation()
**/
/**
 * マウスオーバー時の透過
**/
/**
 * flex
**/
/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/
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;
}

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

body {
    line-height: 1;
}

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;
}

/* Slider */
.slick-slider {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:before,
.slick-track:after {
    content: "";
    display: table;
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none;
}

[dir=rtl] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

/* Slider */
.slick-loading .slick-list {
    background: #fff url("./ajax-loader.gif") center center no-repeat;
}

/* Icons */
@font-face {
    font-family: "slick";
    src: url("../font/slick/slick.eot");
    src: url("../font/slick/slick.eot?#iefix") format("embedded-opentype"), url("../font/slick/slick.woff") format("woff"), url("../font/slick/slick.ttf") format("truetype"), url("../font/slick/slick.svg#slick") format("svg");
    font-weight: normal;
    font-style: normal;
}

/* Arrows */
.slick-prev,
.slick-next {
    position: absolute;
    display: block;
    height: 20px;
    width: 20px;
    line-height: 0px;
    font-size: 0px;
    cursor: pointer;
    background: transparent;
    color: transparent;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    padding: 0;
    border: none;
    outline: none;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: 0.25;
}

.slick-prev:before,
.slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: white;
    opacity: 0.75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
    left: -25px;
}

[dir=rtl] .slick-prev {
    left: auto;
    right: -25px;
}

.slick-prev:before {
    content: "←";
}

[dir=rtl] .slick-prev:before {
    content: "→";
}

.slick-next {
    right: -25px;
}

[dir=rtl] .slick-next {
    left: -25px;
    right: auto;
}

.slick-next:before {
    content: "→";
}

[dir=rtl] .slick-next:before {
    content: "←";
}

/* Dots */
.slick-dotted.slick-slider {
    margin-bottom: 30px;
}

.slick-dots {
    position: absolute;
    bottom: -25px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    width: 100%;
}

.slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer;
}

.slick-dots li button {
    border: 0;
    background: transparent;
    display: block;
    height: 20px;
    width: 20px;
    outline: none;
    line-height: 0px;
    font-size: 0px;
    color: transparent;
    padding: 5px;
    cursor: pointer;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "•";
    width: 20px;
    height: 20px;
    font-family: "slick";
    font-size: 6px;
    line-height: 20px;
    text-align: center;
    color: black;
    opacity: 0.25;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
    color: black;
    opacity: 0.75;
}

/*
@import "foundation/vendor/featherlight/featherlight";
*/
.slick-next,
.slick-prev {
    z-index: 10;
    width: 20px;
    height: 35px;
}

.slick-next:before,
.slick-prev:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    opacity: 1;
}

.slick-next:before {
    background-image: url("../img/arrow_right.png");
    background-size: cover;
}

.slick-prev:before {
    background-image: url("../img/arrow_left.png");
    background-size: cover;
}

.slick-next {
    right: 24px;
}

.slick-prev {
    left: 4px;
}

.slick-dots {
    bottom: -50px;
}

@media (min-width: 992px) {

    .slick-next,
    .slick-prev {
        top: inherit;
        bottom: -30px;
        width: 12px;
        height: 21px;
    }

    .slick-next {
        right: 31%;
    }

    .slick-prev {
        left: 30%;
    }

    .slick-dots {
        bottom: -30px;
    }
}

html {
    font-size: 62.5%;
}

body {
    font-size: 1.6rem;
    font-weight: 400;
    margin: 0;
    color: #232323;
    font-family: "Zen Kaku Gothic New", sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    line-height: 1.7;
    letter-spacing: 0.5px;
}

img {
    max-width: 100%;
    height: auto;
    max-height: 100%;
    vertical-align: bottom;
}

a {
    text-decoration: none;
    color: inherit;
}

.l-header {
    height: 70px;
    width: 100%;
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 99;
}

@media (min-width: 992px) {
    .l-header {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.l-footer {
    background: #231815;
    padding: 30px 0 10px;
    text-align: center;
    color: #fff;
}

@media (min-width: 992px) {
    .l-footer {
        padding: 50px 0 20px;
        margin-top: 100px;
    }
}

.wrapper {
    height: 100%;
    overflow-x: hidden;
    position: relative;
}

.overlay {
    content: "";
    display: block;
    width: 0;
    height: 0;
    background-color: rgba(255, 255, 255, 0.5);
    position: absolute;
    top: 0;
    left: 0;
    z-index: 2;
    opacity: 0;
    -webkit-transition: opacity 0.5s;
    transition: opacity 0.5s;
}

.overlay.open {
    width: 100%;
    height: 100%;
    opacity: 1;
}

main {
    height: 100%;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

main.open {
    -webkit-transform: translateX(-250px);
    transform: translateX(-250px);
}

.menu-trigger {
    display: inline-block;
    width: 30px;
    height: 20px;
    vertical-align: middle;
    cursor: pointer;
    position: fixed;
    top: 25px;
    right: 25px;
    z-index: 100;
}

.menu-trigger span {
    display: inline-block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: #231815;
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

.menu-trigger.active span {
    background-color: #231815;
}

.menu-trigger span:nth-of-type(1) {
    top: 0;
}

.menu-trigger.active span:nth-of-type(1) {
    -webkit-transform: translateY(9px) rotate(-45deg);
    transform: translateY(9px) rotate(-45deg);
}

.menu-trigger span:nth-of-type(2) {
    top: 9.5px;
}

.menu-trigger.active span:nth-of-type(2) {
    opacity: 0;
}

.menu-trigger span:nth-of-type(3) {
    bottom: 0;
}

.menu-trigger.active span:nth-of-type(3) {
    -webkit-transform: translateY(-10px) rotate(45deg);
    transform: translateY(-10px) rotate(45deg);
}

nav {
    width: 250px;
    height: 100%;
    background-color: #fff;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 10;
    -webkit-transform: translate(250px);
    transform: translate(250px);
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}

nav.open {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
}

nav a {
    display: block;
    text-align: center;
    padding: 25px 0;
    font-size: 1.6rem;
    color: #231815;
    -webkit-transition: 0.3s;
    transition: 0.3s;
}

nav a:nth-child(1) {
    margin-top: 70px;
}

nav .l-navi__item {
    position: relative;
}

nav .l-navi__item:before {
    position: absolute;
    text-align: center;
    font-size: 8px;
    top: 10px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
}

nav .l-navi__item.e-space:before {
    content: "会場";
}

nav .l-navi__item.e-price:before {
    content: "料金";
}

nav .l-navi__item.e-access:before {
    content: "アクセス";
}

nav .l-navi__item.e-furniture:before {
    content: "備品";
}

nav .l-navi__item.e-contact:before {
    content: "お問い合わせ";
}

nav .l-navi__item.e-faq:before {
    content: "ご質問";
}

nav .l-navi__item.e-tel:before {
    content: "予約相談専用ダイヤル";
    font-size: 11px;
}

@media (min-width: 992px) {
    .menu-trigger {
        display: none;
    }
}

.l-container {
    width: 88%;
    margin: 0 auto;
}

.l-container-sp {
    width: 88%;
    margin: 0 auto;
}

.l-container-fluid {
    padding: 0 12rem;
}

@media (min-width: 992px) {
    .l-container {
        width: 1000px;
    }

    .l-container-sp {
        width: inherit;
        margin: inherit;
    }

    .l-container-pc {
        width: 1000px;
        margin: 0 auto;
    }
}

.c-form-item {
    margin-bottom: 26px;
}

.c-form-required {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.c-form-required::after {
    content: "*";
    color: #FF0000;
    font-weight: 700;
    font-size: 0.8em;
    vertical-align: top;
}

.c-form-note {
    font-size: 1.4rem;
}

.c-form-input {
    margin-top: 6px;
    width: 100%;
}

.c-form-input input,
.c-form-input textarea,
.c-form-input select {
    width: calc(100% - 12px);
    font-size: 16px;
    padding: 3px 2px;
    border: none;
}

.c-form-input input.days,
.c-form-input textarea.days,
.c-form-input select.days {
    width: 40px;
}

.c-form-input select {
    width: calc(100% - 2px);
}

.c-form input[type=submit] {
    font-family: "Zen Kaku Gothic New", sans-serif, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

.c-form ::-webkit-input-placeholder {
    /* WebKit, Blink, Edge */
    color: #ccc;
}

.c-form :-ms-input-placeholder {
    /* Internet Explorer 10-11 */
    color: #ccc;
}

.c-form ::-moz-placeholder {
    /* Others */
    color: #ccc;
}

.c-form ::-ms-input-placeholder {
    /* Others */
    color: #ccc;
}

.c-form ::placeholder {
    /* Others */
    color: #ccc;
}

.wpcf7-response-output {
    text-align: center;
}

@media (min-width: 992px) {

    .c-form-input input,
    .c-form-input textarea,
    .c-form-input select {
        padding: 6px 16px;
    }

    .c-form-input select {
        width: 105%;
    }

    .c-form input[type=submit] {
        -webkit-transition: 0.3s;
        transition: 0.3s;
        border: 1px solid #231815;
    }

    .c-form input[type=submit]:hover {
        cursor: pointer;
        background: #fff;
        color: #231815;
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

.c-section {
    margin-top: 75px;
    padding-bottom: 75px;
    position: relative;
}

.c-section:after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    width: 100px;
    height: 1px;
    background: #231815;
}

.c-section.e-reverse {
    background: #EFEEED;
    padding-top: 100px;
}

.c-section.e-reverse:after {
    height: 0px;
}

@media (min-width: 992px) {
    .c-section {
        margin-top: 100px;
        padding-bottom: 100px;
    }

    .c-section:after {
        width: 120px;
    }
}

.c-ttl {
    font-size: 3.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
}

@media (min-width: 992px) {
    .c-ttl {
        width: 1000px;
        margin: 0 auto;
        font-size: 6rem;
        text-align: left;
    }
}

.c-btn {
    display: block;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    background: #231815;
    color: #fff;
    text-align: center;
    font-size: 2rem;
    font-weight: bold;
    margin: 0 auto;
    padding: 20px 24px;
    border-radius: 7px;
}

.c-btn.e-btn {
    width: 290px;
}

.c-btn.e-list {
    width: 260px;
}

@media (min-width: 992px) {
    .c-btn {
        -webkit-transition: 0.3s;
        transition: 0.3s;
        border: 1px solid #231815;
    }

    .c-btn:hover {
        background: #fff;
        color: #231815;
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

.c-number {
    font-size: 2.2rem;
    display: block;
    margin: 30px auto 0;
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    text-decoration: underline;
    text-decoration-thickness: 1px;
    text-underline-offset: 6px;
}

@media (min-width: 992px) {
    .c-number {
        -webkit-transition: 0.3s;
        transition: 0.3s;
    }

    .c-number:hover {
        -webkit-transform: scale(1.05);
        transform: scale(1.05);
    }
}

.p-header__logo {
    width: 113px;
    margin: 19px 15px;
    display: block;
}

.p-header__navi {
    display: none;
}

@media (min-width: 992px) {
    .p-header__logo {
        margin: 17px 0 12px 80px;
    }

    .p-header__navi {
        display: block;
        margin: 27px 7% 19px auto;
    }

    .p-header__navi__item {
        margin: 0 10px;
        position: relative;
    }

    .p-header__navi__item:before {
        position: absolute;
        top: -15px;
        left: 0;
        -webkit-transform: translateX(-3px);
        transform: translateX(-3px);
        font-size: 8px;
        width: 100%;
        text-align: center;
    }

    .p-header__navi__item.e-space:before {
        content: "会場";
    }

    .p-header__navi__item.e-price:before {
        content: "料金";
    }

    .p-header__navi__item.e-access:before {
        content: "アクセス";
    }

    .p-header__navi__item.e-furniture:before {
        content: "備品";
    }

    .p-header__navi__item.e-use:before {
        content: "用途";
    }

    .p-header__navi__item.e-contact:before {
        content: "お問い合わせ";
    }

    .p-header__navi__item.e-faq:before {
        content: "ご質問";
    }

    .p-header__navi__item.e-tel:before {
        content: "予約相談専用ダイヤル";
        font-size: 9px;
    }

    .p-header__navi__item:hover {
        border-bottom: 1px solid #231815;
    }
}

.p-footer__sns {
    width: 140px;
    margin: 30px auto 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.p-footer__sns__icon {
    width: 30px;
}

.p-footer__link__head {
    margin: 30px 0 10px;
}

.p-footer__link__item {
    font-size: 1.4rem;
    display: inline-block;
    padding: 0.2em 0;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
}

.p-footer__link__item:hover {
    opacity: 0.7;
}

@media (min-width: 992px) {
    .p-footer__menu {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		gap: 30px;
	}
}

.p-footer__menu__item__link {
    padding: 0.3em;
    display: inline-block;
    text-decoration: underline;
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
}

.p-footer__menu__item__link:hover {
    opacity: 0.7;
}

.p-footer__copyright {
    font-size: 1rem;
    margin-top: 50px;
}

.p-page__conts {
    width: 88%;
    margin: 0 auto;
    padding: 40px 0;
}

@media (min-width: 992px) {
    .p-page__conts {
        width: 1000px;
        margin: 0 auto;
        padding: 100px 0;
    }
}

.p-wp-pagination {
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-wp-pagination .page-numbers {
    margin: 0 0.25rem 0.5rem;
    border: 2px solid #231815;
    border-radius: 50%;
    background: #231815;
    color: #fff;
    font-size: 0.875rem;
    font-weight: 700;
    text-align: center;
    line-height: 2.7825;
    vertical-align: middle;
    display: block;
    width: 3em;
    height: 3em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.p-wp-pagination .page-numbers:hover:not(.current):not(.dots) {
    background: #fff;
    color: #231815;
    text-decoration: none;
}

.p-wp-pagination .page-numbers.current {
    border-color: #232323;
    background: #232323;
    color: #231815;
}

.p-wp-pagination .page-numbers.dots {
    border-color: transparent;
    background: transparent;
    color: #000;
    width: 1em;
}

@media (min-width: 768px) {
    .p-wp-pagination {
        margin-left: 0;
        margin-right: 0;
    }

    .p-wp-pagination .page-numbers {
        font-size: 1rem;
    }
}

@media (min-width: 992px) {
    .p-wp-pagination .page-numbers {
        -webkit-transition: all 0.2s ease-in-out;
        transition: all 0.2s ease-in-out;
        width: 2em;
        height: 2em;
    }
}

@media screen and (min-width: 992px) and (prefers-reduced-motion: reduce) {
    .p-wp-pagination .page-numbers {
        -webkit-transition: none;
        transition: none;
    }
}

.form-row {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
}

.form-row>.col,
.form-row>[class*=col-] {
    padding-left: 0.5rem;
    padding-right: 0.5rem;
}

.btn {
    border-width: 2px;
    border-radius: 0;
    font-family: "Zen Kaku Gothic New", sans-serif;
    font-weight: 400;
    letter-spacing: 0.5px;
    font-size: 0.75rem;
    letter-spacing: 0.2em;
    text-indent: 0.2em;
    min-width: 12em;
    position: relative;
    z-index: 0;
    -webkit-transform: skewX(-5deg);
    transform: skewX(-5deg);
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media screen and (prefers-reduced-motion: reduce) {
    .btn {
        -webkit-transition: none;
        transition: none;
    }
}

.btn:hover {
    -webkit-transform: skewX(-15deg);
    transform: skewX(-15deg);
}

.btn::before {
    content: "";
    background: #fff;
    display: block;
    width: 2rem;
    height: 2px;
    position: absolute;
    top: calc(50% - 1px);
    right: -1rem;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}

@media screen and (prefers-reduced-motion: reduce) {
    .btn::before {
        -webkit-transition: none;
        transition: none;
    }
}

.btn:hover::before {
    right: -1.5rem;
}

.btn-lg {
    font-size: 1rem;
}

.btn-black {
    border-color: #fff;
    background: #000;
    color: #fff;
}

.btn-black:hover {
    background: #fff;
    color: #000;
}

.btn-theme {
    border-color: #fff;
    background: transparent;
    color: #fff;
    position: relative;
}

.btn-theme:hover {
    background: #fff;
    color: #000;
}

@media (min-width: 992px) {
    .container-fluid {
        padding-left: 4.625rem;
        padding-right: 4.625rem;
    }
}

.p-page-home {
    padding-top: 70px;
}

.p-page-home__kv {
	width: 100vw;
/*     height: 100vh; */
    overflow: hidden;
}

.p-page-home__kv__copy {
    line-height: 1.6;
    font-weight: 500;
    text-align: center;
}

.p-page-home__catch__conts {
    margin-top: 50px;
}

.p-page-home__catch__cont {
    width: 88%;
    margin: 30px auto 0;
}

.p-page-home__catch__cont__head {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.7;
}

.p-page-home__space__ttl {
	width: 60%;
	padding: 0 30px;
    margin: 0 auto;
}

@media (min-width: 992px) {
	.p-page-home__space__ttl {
		max-width: 470px;
	}
}

.p-page-home__space__subttl {
    font-family: "Hiragino Kaku Gothic ProN";
    text-align: center;
    font-size: 2rem;
    margin-top: 20px;
}

.p-page-home__price__conts {
    width: 88%;
    margin: 50px auto 60px;
}

.p-page-home__price__table {
    width: 100%;
    border: 1px solid black;
    border-collapse: collapse;
    text-align: center;
    line-height: 1.4;
    font-size: 1.4rem;
}

.p-page-home__price__table th {
    background: #231815;
    color: #fff;
    padding: 10px 0;
    border: 1px solid black;
    border-collapse: collapse;
}

.p-page-home__price__table td {
    border: 1px solid black;
    border-collapse: collapse;
    vertical-align: middle;
    background-color: #fff;
}

.p-page-home__price__table__head {
    text-align: center;
    padding: 12px 0;
    line-height: 1.2;
}

.p-page-home__price__table__head span {
    font-size: 1.2rem;
}

.p-page-home__price__table__price {
    font-size: 2rem;
    font-weight: bold;
    padding: 20px 0;
}

.p-page-home__price__table__price span {
    font-size: 1.2rem;
    font-weight: normal;
}

.p-page-home__price__table__price.e-subtable {
    padding: 10px 0;
    font-size: 1.6rem;
    font-weight: normal;
}

.p-page-home__price__table__note.e-subtable {
    font-size: 1.2rem;
}

.p-page-home__price__note {
    font-size: 1.4rem;
}

.p-page-home__price__caution {
	font-weight: 700;
	text-align: center;
	margin-top: 10px;
}

.p-page-home__price__recommend {
    text-align: center;
	font-size: 1.4rem;
}

.p-page-home__price__head {
    font-size: 2rem;
    text-align: center;
}

.p-page-home__price__booking {
    width: 88%;
    margin: 30px auto 0;
    font-size: 1.4rem;
}

.p-page-home__access__wrap {
    margin: 30px 0 0;
}

.p-page-home__access__conts {
    width: 88%;
    margin: 30px auto 50px;
}

.p-page-home__access__conts table {
    margin: 20px 0;
}

.p-page-home__access__conts table th {
    text-align: left;
    width: 100px;
}

.p-page-home__access__conts table td {
    width: 120px;
}

.p-page-home__access__head {
    font-weight: bold;
}

.p-page-home__access__maps {
    height: 0;
    overflow: hidden;
    padding-bottom: 56.25%;
    position: relative;
}

.p-page-home__access__maps iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}

.p-page-home__feature__items {
    width: 88%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.p-page-home__feature__item {
    width: 46%;
    margin-bottom: 30px;
}

.p-page-home__feature__item img {
        aspect-ratio: 1 / 1;
		object-fit: cover;
    }

.p-page-home__feature__item__head {
    text-align: center;
    margin-top: 6px;
}

.p-page-home__feature__item__head.e-head {
    font-size: 1.2rem;
}

.p-page-home__feature__desc {
    width: 88%;
    margin: 0 auto;
}

.p-page-home__feature__layout {
    margin: 50px 0;
}

.p-page-home__feature table {
    width: 164px;
    margin: 50px auto;
    table-layout: fixed;
    font-size: 2rem;
}

.p-page-home__feature table th {
    text-align: left;
}

.p-page-home__feature table td {
    text-align: right;
}

.p-page-home__feature__download {
    width: 325px;
    margin: 0 auto;
}

.p-page-home__feature__download__head {
    text-align: center;
    border-bottom: 1px solid #231815;
}

.p-page-home__feature__matterport {
    margin: 100px 0 50px;
}

.p-page-home__feature__matterport iframe {
    width: 100%;
    min-height: 240px;
    display: block;
    margin: 0 auto;
}

.p-page-home__feature__purpose {
    width: 88%;
    margin: 50px auto 0;
}

.p-page-home__feature__purpose__conts {
    margin-top: 50px;
}

.p-page-home__feature__purpose__head {
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
}

.p-page-home__feature__purpose__cont {
    width: 88%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.p-page-home__feature__purpose__item {
    width: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 50px;
}

.p-page-home__feature__purpose__icon {
    width: 30px;
}

.p-page-home__feature__purpose__body {
    font-size: 1.4rem;
    text-align: center;
    width: calc(100% - 30px);
    margin-top: 2px;
}

.p-page-home__schedule__calendar {
    margin-top: 50px;
}

.p-page-home__schedule__calendar iframe {
    width: 100%;
    height: 400px;
}

.p-page-home__schedule__note {
    width: 88%;
    margin: 20px auto 0;
}

.p-page-home__contact__wrap {
    width: 88%;
    margin: 50px auto 0;
}

.p-page-home__contact__wrap .wpcf7-list-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.p-page-home__contact__wrap .wpcf7-list-item input {
    width: inherit;
}

.p-page-home__contact__desc {
    text-align: center;
    margin-bottom: 50px;
}

.p-page-home__contact__note {
    font-size: 1.4rem;
    text-align: center;
}

.p-page-home__faq__item {
    margin-top: 40px;
}

.p-page-home__faq__question {
    font-size: 1.8rem;
    font-weight: bold;
}

.p-page-home__faq__answer a {
    color: blue;
    text-decoration: underline;
}

@media (min-width: 992px) {
	.p-page-home__price__caution {
		text-align: right;
		font-size: 18px;
	}
	
    .p-page-home__kv__copy {
        width: -webkit-fit-content;
        width: -moz-fit-content;
        width: fit-content;
        margin: 100px auto;
        font-size: 2.8rem;
        line-height: 1.8;
    }

    .p-page-home__catch {
        width: 1000px;
        margin: 0 auto;
    }

    .p-page-home__catch__conts {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
        flex-flow: row-reverse;
        margin-top: 100px;
    }

    .p-page-home__catch__img {
        width: 500px;
    }

    .p-page-home__catch__cont {
        width: 400px;
        margin: 0 100px 0 0;
        letter-spacing: 0;
        line-height: 2;
    }

    .p-page-home__space__subttl {
        font-family: "Hiragino Kaku Gothic ProN";
        text-align: center;
        font-size: 2rem;
        margin-top: 20px;
    }

    .p-page-home__photo__slider {
        width: 90%;
        max-width: 1300px;
        margin: 0 auto;
    }

    .p-page-home__photo__item {
        max-width: 400px;
    }

    .p-page-home__price__conts {
        width: 1000px;
    }

    .p-page-home__price__table {
        font-size: 20px;
    }

    .p-page-home__price__table td {
        width: 33.3333333333%;
    }

    .p-page-home__price__table__head {
        padding: 16px 0;
    }

    .p-page-home__price__table__head span {
        font-size: 1.4rem;
    }

    .p-page-home__price__table__price {
        font-size: 3rem;
        padding: 40px 0;
    }

    .p-page-home__price__table__price span {
        font-size: 1.8rem;
    }

    .p-page-home__price__table__price.e-subtable {
        padding: 10px 0;
        font-size: 2.2rem;
        font-weight: normal;
    }

    .p-page-home__price__table__note.e-subtable {
        font-size: 1.6rem;
    }

    .p-page-home__price__recommend {
        font-size: 1.6rem;
    }

    .p-page-home__price__head {
        font-size: 2.8rem;
    }

    .p-page-home__price__booking {
        width: 1000px;
        font-size: 1.6rem;
    }

    .p-page-home__access__wrap {
        width: 1000px;
        margin: 30px auto 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        -ms-flex-flow: row-reverse;
        flex-flow: row-reverse;
    }

    .p-page-home__access__img {
        width: 50%;
    }

    .p-page-home__access__conts {
        width: 50%;
        margin: 0;
    }

    .p-page-home__access__conts table {
        margin: 30px 0;
    }

    .p-page-home__access__maps {
        width: 1000px;
        margin: 30px auto 0;
        padding-bottom: 400px;
    }

    .p-page-home__access__maps iframe {
        height: 400px;
    }

    .p-page-home__feature__items {
        width: 1000px;
    }

    .p-page-home__feature__item {
        width: 190px;
    }

    .p-page-home__feature__item__head {
        margin-top: 10px;
    }

    .p-page-home__feature__item__head.e-head {
        font-size: 1.4rem;
        margin-top: 13px;
    }

    .p-page-home__feature__desc {
        text-align: center;
    }

    .p-page-home__feature__layout {
        width: 600px;
        margin: 50px auto 0;
    }

    .p-page-home__feature__download {
        width: 340px;
    }

    .p-page-home__feature__matterport iframe {
        height: 600px;
        max-width: 1068px;
    }

    .p-page-home__feature__purpose {
        width: 1000px;
        margin: 100px auto 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .p-page-home__feature__purpose__conts {
        width: 50%;
    }

    .p-page-home__feature__purpose__head {
        font-size: 2.8rem;
    }

    .p-page-home__feature__purpose__cont {
        width: 410px;
        margin: 0 auto;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .p-page-home__feature__purpose__item {
        width: 195px;
    }

    .p-page-home__feature__purpose__icon {
        width: 45px;
    }

    .p-page-home__feature__purpose__body {
        font-size: 1.6rem;
        text-align: left;
        width: 135px;
        margin: 6px 0 0 15px;
    }

    .p-page-home__schedule__calendar {
        width: 1000px;
        margin: 100px auto 50px;
    }

    .p-page-home__schedule__calendar iframe {
        height: 600px;
    }

    .p-page-home__schedule__note {
        width: 1000px;
    }

    .p-page-home__contact__wrap {
        width: 410px;
        margin: 100px auto 0;
    }

    .p-page-home__contact__desc {
        margin-bottom: 60px;
    }
}

.p-wp-editor {
    word-break: break-word;
    /**
   * editor classes
  **/
}

.p-wp-editor>*:first-child {
    margin-top: 0;
}

.p-wp-editor>*:last-child {
    margin-bottom: 0;
}

.p-wp-editor p,
.p-wp-editor h1,
.p-wp-editor h2,
.p-wp-editor h3,
.p-wp-editor h4,
.p-wp-editor h5,
.p-wp-editor h6,
.p-wp-editor blockquote,
.p-wp-editor ol,
.p-wp-editor ul,
.p-wp-editor dl,
.p-wp-editor table,
.p-wp-editor .wp-caption,
.p-wp-editor .wp-block-image,
.p-wp-editor .wp-block-table,
.p-wp-editor .crayon-syntax {
    margin-bottom: 1.5rem;
}

.p-wp-editor .fb_iframe_widget,
.p-wp-editor .twitter-tweet,
.p-wp-editor .instagram-media {
    margin-left: auto !important;
    margin-right: auto !important;
    margin-bottom: 1.5rem !important;
}

.p-wp-editor h2 {
    font-size: 1.375rem;
}

.p-wp-editor h3 {
    font-size: 1.125rem;
    padding-left: 1rem;
    position: relative;
}

.p-wp-editor h3::before {
    content: "";
    margin-top: 0;
    margin-right: 0.5em;
    background-color: #007bff;
    display: inline-block;
    width: 0.4em;
    height: 0.4em;
    position: absolute;
    left: 0;
    top: calc((1em * 1.2 - 0.4em) / 2);
}

.p-wp-editor h2,
.p-wp-editor h3,
.p-wp-editor h4 {
    margin-top: 2em;
    line-height: 1.2;
}

.p-wp-editor h2,
.p-wp-editor h2 span,
.p-wp-editor h3,
.p-wp-editor h3 span,
.p-wp-editor h4,
.p-wp-editor h4 span {
    font-weight: 700;
}

.p-wp-editor blockquote {
    border-radius: 0.25rem;
    padding: 1rem 1rem 1rem 2.5rem;
    background: #eee;
    position: relative;
}

.p-wp-editor blockquote::before {
    content: "\f10d";
    color: #fff;
    font-family: "Font Awesome 5 Free";
    font-size: 1.25rem;
    font-weight: 900;
    line-height: 1;
    display: inline-block;
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
}

.p-wp-editor blockquote cite {
    display: block;
    text-align: right;
    color: #666;
}

.p-wp-editor blockquote>*:last-child {
    margin-bottom: 0;
}

.p-wp-editor ul,
.p-wp-editor ol {
    padding-left: 0;
    list-style: none;
}

.p-wp-editor ul>li {
    padding-left: 1em;
    position: relative;
}

.p-wp-editor ul>li::before {
    content: "";
    border-radius: 50%;
    background-color: #999;
    display: block;
    width: 0.375em;
    height: 0.375em;
    position: absolute;
    left: 0;
    top: calc((1em * 1.5 - 0.375em) / 2);
}

.p-wp-editor ol {
    counter-reset: counter;
}

.p-wp-editor ol>li {
    padding-left: 1.5em;
    position: relative;
}

.p-wp-editor ol>li::before {
    content: counter(counter);
    counter-increment: counter;
    border-radius: 50%;
    background-color: #999;
    color: #fff;
    font-size: 0.75em;
    font-weight: 700;
    text-align: center;
    line-height: 1.5;
    line-height: 1.6875;
    display: block;
    width: 1.5em;
    height: 1.5em;
    position: absolute;
    top: calc((1.3333333333em * 1.5 - 1.5em) / 2);
    left: 0;
}

.p-wp-editor ul ul,
.p-wp-editor ul ol,
.p-wp-editor ol ul,
.p-wp-editor ol ol {
    margin-bottom: 0;
    margin-left: 0.5em;
}

.p-wp-editor dt {
    font-weight: bold;
}

.p-wp-editor dd {
    padding-left: 2em;
    position: relative;
}

.p-wp-editor dd::before {
    content: "";
    background: #999;
    display: block;
    width: 1.25em;
    height: 1px;
    position: absolute;
    top: calc(1em * 1.5 / 2);
    left: 0;
}

.p-wp-editor table {
    width: 100%;
}

.p-wp-editor table th,
.p-wp-editor table td {
    border: 1px solid #dee2e6;
    padding: 1em 0.5em;
    min-width: 5em;
}

.p-wp-editor table thead th {
    text-align: center;
}

.p-wp-editor table tbody th {
    text-align: left;
    vertical-align: middle;
    min-width: 6em;
}

.p-wp-editor pre {
    overflow: scroll;
}

.p-wp-editor img {
    max-width: 100%;
}

.p-wp-editor a {
    color: #007bff;
    text-decoration: underline;
}

.p-wp-editor code {
    border-radius: 0.125rem;
    padding: 0.125em 0.5em;
    background: #eee;
}

.p-wp-editor img.aligncenter {
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.p-wp-editor .alignleft,
.p-wp-editor .has-text-align-left {
    text-align: left;
}

.p-wp-editor .aligncenter,
.p-wp-editor .has-text-align-center {
    text-align: center;
}

.p-wp-editor .alignright,
.p-wp-editor .has-text-align-right {
    text-align: right;
}

.p-wp-editor .wp-caption {
    max-width: 100%;
}

.p-wp-editor .wp-caption-text {
    margin-top: 0.5rem;
    color: #999;
    font-size: 0.875em;
    font-style: italic;
    text-align: center;
}

.p-wp-editor .wp-block-image {
    text-align: center;
}

.p-wp-editor .wp-block-image.u-border {
    border: none !important;
}

.p-wp-editor .wp-block-image.u-border img {
    border: 1px solid #dee2e6;
    border-radius: 0.125rem;
    overflow: hidden;
}

.p-wp-editor .wp-block-image figcaption {
    color: #aaa;
    font-size: 0.875em;
    font-style: italic;
}

@media (min-width: 768px) {

    .p-wp-editor p,
    .p-wp-editor h1,
    .p-wp-editor h2,
    .p-wp-editor h3,
    .p-wp-editor h4,
    .p-wp-editor h5,
    .p-wp-editor h6,
    .p-wp-editor blockquote,
    .p-wp-editor ol,
    .p-wp-editor ul,
    .p-wp-editor dl,
    .p-wp-editor table,
    .p-wp-editor .wp-caption,
    .p-wp-editor .wp-block-image {
        margin-bottom: 1.5rem;
    }

    .p-wp-editor .fb_iframe_widget,
    .p-wp-editor .twitter-tweet,
    .p-wp-editor .instagram-media {
        margin-bottom: 1.5rem !important;
    }

    .p-wp-editor h2 {
        font-size: 1.5rem;
    }

    .p-wp-editor h3 {
        font-size: 1.25rem;
    }

    .p-wp-editor table th,
    .p-wp-editor table td {
        padding: 1em;
    }
}

@media (min-width: 992px) {
    .p-wp-editor {
        /*
    p,
    h1, h2, h3, h4, h5, h6,
    blockquote,
    ol, ul, dl,
    table,
    .wp-caption,
    .wp-block-image,
    {
        margin-bottom: $editor-margin-bottom-desktop;
    }

    .fb_iframe_widget,
    .twitter-tweet,
    .instagram-media {
        margin-left: auto;
        margin-right: auto;
        margin-bottom: $editor-margin-bottom-desktop !important;
    }
    */
    }
}

.wpcf7 {
    /**
   * 未入力エラー
   */
}

.wpcf7 p {
    margin-bottom: 0;
}

.wpcf7 .screen-reader-response {
    display: none;
}

.wpcf7-display-none {
    display: none;
}

.wpcf7-not-valid-tip {
    margin-top: 0.5em;
    color: #dc3545;
    font-weight: 400;
    display: block;
}

.wpcf7-response-output {
    margin: 1.5rem 0;
    border-radius: 0.25rem;
    padding: 0.75rem 1rem;
}

.wpcf7-mail-sent-ok {
    background: #28a745;
    color: #fff;
}

.wpcf7-validation-errors,
.wpcf7-validation-missing {
    background: #dc3545;
    color: #fff;
}

.wpcf7-mail-sent-ng,
.wpcf7-aborted {
    background: #dc3545;
    color: #fff;
}

/**
 * 以下、デフォルトのCSS
**/
/*
div.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	width: 1px;
	margin: 0;
	padding: 0;
	border: 0;
}

div.wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
	border: 2px solid #ff0000;
}

div.wpcf7-mail-sent-ok {
	border: 2px solid #398f14;
}

div.wpcf7-mail-sent-ng,
div.wpcf7-aborted {
	border: 2px solid #ff0000;
}

div.wpcf7-spam-blocked {
	border: 2px solid #ffa500;
}

div.wpcf7-validation-errors,
div.wpcf7-acceptance-missing {
	border: 2px solid #f7e700;
}

.wpcf7-form-control-wrap {
	position: relative;
}

span.wpcf7-not-valid-tip {
	color: #f00;
	font-size: 1em;
	font-weight: normal;
	display: block;
}

.use-floating-validation-tip span.wpcf7-not-valid-tip {
	position: absolute;
	top: 20%;
	left: 20%;
	z-index: 100;
	border: 1px solid #ff0000;
	background: #fff;
	padding: .2em .8em;
}

span.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}

span.wpcf7-list-item-label::before,
span.wpcf7-list-item-label::after {
	content: " ";
}

.wpcf7-display-none {
	display: none;
}

div.wpcf7 .ajax-loader {
	visibility: hidden;
	display: inline-block;
	background-image: url('../../images/ajax-loader.gif');
	width: 16px;
	height: 16px;
	border: none;
	padding: 0;
	margin: 0 0 0 4px;
	vertical-align: middle;
}

div.wpcf7 .ajax-loader.is-active {
	visibility: visible;
}

div.wpcf7 div.ajax-error {
	display: none;
}

div.wpcf7 .placeheld {
	color: #888;
}

div.wpcf7 input[type="file"] {
	cursor: pointer;
}

div.wpcf7 input[type="file"]:disabled {
	cursor: default;
}

div.wpcf7 .wpcf7-submit:disabled {
	cursor: not-allowed;
}
*/
.u-ml-auto {
    margin-left: auto !important;
}

.u-mr-auto {
    margin-right: auto !important;
}

.u-m-auto {
    margin: 0 auto !important;
}

@media (max-width: 767.98px) {
    .u-sp-ml-auto {
        margin-left: auto !important;
    }

    .u-sp-mr-auto {
        margin-right: auto !important;
    }

    .u-sp-m-auto {
        margin: 0 auto !important;
    }
}

.u-mt0 {
    margin-top: 0rem !important;
}

.u-mt1 {
    margin-top: 1rem !important;
}

.u-mt2 {
    margin-top: 2rem !important;
}

.u-mt3 {
    margin-top: 3rem !important;
}

.u-mt4 {
    margin-top: 4rem !important;
}

.u-mt5 {
    margin-top: 5rem !important;
}

.u-mt6 {
    margin-top: 6rem !important;
}

.u-mt7 {
    margin-top: 7rem !important;
}

.u-mt8 {
    margin-top: 8rem !important;
}

.u-mt9 {
    margin-top: 9rem !important;
}

.u-mt10 {
    margin-top: 10rem !important;
}

.u-mt11 {
    margin-top: 11rem !important;
}

.u-mt12 {
    margin-top: 12rem !important;
}

.u-mt13 {
    margin-top: 13rem !important;
}

.u-mt14 {
    margin-top: 14rem !important;
}

.u-mt15 {
    margin-top: 15rem !important;
}

.u-mt16 {
    margin-top: 16rem !important;
}

.u-mt17 {
    margin-top: 17rem !important;
}

.u-mt18 {
    margin-top: 18rem !important;
}

.u-mt19 {
    margin-top: 19rem !important;
}

.u-mt20 {
    margin-top: 20rem !important;
}

@media (max-width: 767.98px) {
    .u-sp-mt0 {
        margin-top: 0rem !important;
    }

    .u-sp-mt1 {
        margin-top: 1rem !important;
    }

    .u-sp-mt2 {
        margin-top: 2rem !important;
    }

    .u-sp-mt3 {
        margin-top: 3rem !important;
    }

    .u-sp-mt4 {
        margin-top: 4rem !important;
    }

    .u-sp-mt5 {
        margin-top: 5rem !important;
    }

    .u-sp-mt6 {
        margin-top: 6rem !important;
    }

    .u-sp-mt7 {
        margin-top: 7rem !important;
    }

    .u-sp-mt8 {
        margin-top: 8rem !important;
    }

    .u-sp-mt9 {
        margin-top: 9rem !important;
    }

    .u-sp-mt10 {
        margin-top: 10rem !important;
    }

    .u-sp-mt11 {
        margin-top: 11rem !important;
    }

    .u-sp-mt12 {
        margin-top: 12rem !important;
    }

    .u-sp-mt13 {
        margin-top: 13rem !important;
    }

    .u-sp-mt14 {
        margin-top: 14rem !important;
    }

    .u-sp-mt15 {
        margin-top: 15rem !important;
    }

    .u-sp-mt16 {
        margin-top: 16rem !important;
    }

    .u-sp-mt17 {
        margin-top: 17rem !important;
    }

    .u-sp-mt18 {
        margin-top: 18rem !important;
    }

    .u-sp-mt19 {
        margin-top: 19rem !important;
    }

    .u-sp-mt20 {
        margin-top: 20rem !important;
    }
}

.u-mr0 {
    margin-right: 0rem !important;
}

.u-mr1 {
    margin-right: 1rem !important;
}

.u-mr2 {
    margin-right: 2rem !important;
}

.u-mr3 {
    margin-right: 3rem !important;
}

.u-mr4 {
    margin-right: 4rem !important;
}

.u-mr5 {
    margin-right: 5rem !important;
}

.u-mr6 {
    margin-right: 6rem !important;
}

.u-mr7 {
    margin-right: 7rem !important;
}

.u-mr8 {
    margin-right: 8rem !important;
}

.u-mr9 {
    margin-right: 9rem !important;
}

.u-mr10 {
    margin-right: 10rem !important;
}

.u-mr11 {
    margin-right: 11rem !important;
}

.u-mr12 {
    margin-right: 12rem !important;
}

.u-mr13 {
    margin-right: 13rem !important;
}

.u-mr14 {
    margin-right: 14rem !important;
}

.u-mr15 {
    margin-right: 15rem !important;
}

.u-mr16 {
    margin-right: 16rem !important;
}

.u-mr17 {
    margin-right: 17rem !important;
}

.u-mr18 {
    margin-right: 18rem !important;
}

.u-mr19 {
    margin-right: 19rem !important;
}

.u-mr20 {
    margin-right: 20rem !important;
}

@media (max-width: 767.98px) {
    .u-sp-mr0 {
        margin-right: 0rem !important;
    }

    .u-sp-mr1 {
        margin-right: 1rem !important;
    }

    .u-sp-mr2 {
        margin-right: 2rem !important;
    }

    .u-sp-mr3 {
        margin-right: 3rem !important;
    }

    .u-sp-mr4 {
        margin-right: 4rem !important;
    }

    .u-sp-mr5 {
        margin-right: 5rem !important;
    }

    .u-sp-mr6 {
        margin-right: 6rem !important;
    }

    .u-sp-mr7 {
        margin-right: 7rem !important;
    }

    .u-sp-mr8 {
        margin-right: 8rem !important;
    }

    .u-sp-mr9 {
        margin-right: 9rem !important;
    }

    .u-sp-mr10 {
        margin-right: 10rem !important;
    }

    .u-sp-mr11 {
        margin-right: 11rem !important;
    }

    .u-sp-mr12 {
        margin-right: 12rem !important;
    }

    .u-sp-mr13 {
        margin-right: 13rem !important;
    }

    .u-sp-mr14 {
        margin-right: 14rem !important;
    }

    .u-sp-mr15 {
        margin-right: 15rem !important;
    }

    .u-sp-mr16 {
        margin-right: 16rem !important;
    }

    .u-sp-mr17 {
        margin-right: 17rem !important;
    }

    .u-sp-mr18 {
        margin-right: 18rem !important;
    }

    .u-sp-mr19 {
        margin-right: 19rem !important;
    }

    .u-sp-mr20 {
        margin-right: 20rem !important;
    }
}

.u-mb0 {
    margin-bottom: 0rem !important;
}

.u-mb1 {
    margin-bottom: 1rem !important;
}

.u-mb2 {
    margin-bottom: 2rem !important;
}

.u-mb3 {
    margin-bottom: 3rem !important;
}

.u-mb4 {
    margin-bottom: 4rem !important;
}

.u-mb5 {
    margin-bottom: 5rem !important;
}

.u-mb6 {
    margin-bottom: 6rem !important;
}

.u-mb7 {
    margin-bottom: 7rem !important;
}

.u-mb8 {
    margin-bottom: 8rem !important;
}

.u-mb9 {
    margin-bottom: 9rem !important;
}

.u-mb10 {
    margin-bottom: 10rem !important;
}

.u-mb11 {
    margin-bottom: 11rem !important;
}

.u-mb12 {
    margin-bottom: 12rem !important;
}

.u-mb13 {
    margin-bottom: 13rem !important;
}

.u-mb14 {
    margin-bottom: 14rem !important;
}

.u-mb15 {
    margin-bottom: 15rem !important;
}

.u-mb16 {
    margin-bottom: 16rem !important;
}

.u-mb17 {
    margin-bottom: 17rem !important;
}

.u-mb18 {
    margin-bottom: 18rem !important;
}

.u-mb19 {
    margin-bottom: 19rem !important;
}

.u-mb20 {
    margin-bottom: 20rem !important;
}

@media (max-width: 767.98px) {
    .u-sp-mb0 {
        margin-bottom: 0rem !important;
    }

    .u-sp-mb1 {
        margin-bottom: 1rem !important;
    }

    .u-sp-mb2 {
        margin-bottom: 2rem !important;
    }

    .u-sp-mb3 {
        margin-bottom: 3rem !important;
    }

    .u-sp-mb4 {
        margin-bottom: 4rem !important;
    }

    .u-sp-mb5 {
        margin-bottom: 5rem !important;
    }

    .u-sp-mb6 {
        margin-bottom: 6rem !important;
    }

    .u-sp-mb7 {
        margin-bottom: 7rem !important;
    }

    .u-sp-mb8 {
        margin-bottom: 8rem !important;
    }

    .u-sp-mb9 {
        margin-bottom: 9rem !important;
    }

    .u-sp-mb10 {
        margin-bottom: 10rem !important;
    }

    .u-sp-mb11 {
        margin-bottom: 11rem !important;
    }

    .u-sp-mb12 {
        margin-bottom: 12rem !important;
    }

    .u-sp-mb13 {
        margin-bottom: 13rem !important;
    }

    .u-sp-mb14 {
        margin-bottom: 14rem !important;
    }

    .u-sp-mb15 {
        margin-bottom: 15rem !important;
    }

    .u-sp-mb16 {
        margin-bottom: 16rem !important;
    }

    .u-sp-mb17 {
        margin-bottom: 17rem !important;
    }

    .u-sp-mb18 {
        margin-bottom: 18rem !important;
    }

    .u-sp-mb19 {
        margin-bottom: 19rem !important;
    }

    .u-sp-mb20 {
        margin-bottom: 20rem !important;
    }
}

.u-ml0 {
    margin-left: 0rem !important;
}

.u-ml1 {
    margin-left: 1rem !important;
}

.u-ml2 {
    margin-left: 2rem !important;
}

.u-ml3 {
    margin-left: 3rem !important;
}

.u-ml4 {
    margin-left: 4rem !important;
}

.u-ml5 {
    margin-left: 5rem !important;
}

.u-ml6 {
    margin-left: 6rem !important;
}

.u-ml7 {
    margin-left: 7rem !important;
}

.u-ml8 {
    margin-left: 8rem !important;
}

.u-ml9 {
    margin-left: 9rem !important;
}

.u-ml10 {
    margin-left: 10rem !important;
}

.u-ml11 {
    margin-left: 11rem !important;
}

.u-ml12 {
    margin-left: 12rem !important;
}

.u-ml13 {
    margin-left: 13rem !important;
}

.u-ml14 {
    margin-left: 14rem !important;
}

.u-ml15 {
    margin-left: 15rem !important;
}

.u-ml16 {
    margin-left: 16rem !important;
}

.u-ml17 {
    margin-left: 17rem !important;
}

.u-ml18 {
    margin-left: 18rem !important;
}

.u-ml19 {
    margin-left: 19rem !important;
}

.u-ml20 {
    margin-left: 20rem !important;
}

@media (max-width: 767.98px) {
    .u-sp-ml0 {
        margin-left: 0rem !important;
    }

    .u-sp-ml1 {
        margin-left: 1rem !important;
    }

    .u-sp-ml2 {
        margin-left: 2rem !important;
    }

    .u-sp-ml3 {
        margin-left: 3rem !important;
    }

    .u-sp-ml4 {
        margin-left: 4rem !important;
    }

    .u-sp-ml5 {
        margin-left: 5rem !important;
    }

    .u-sp-ml6 {
        margin-left: 6rem !important;
    }

    .u-sp-ml7 {
        margin-left: 7rem !important;
    }

    .u-sp-ml8 {
        margin-left: 8rem !important;
    }

    .u-sp-ml9 {
        margin-left: 9rem !important;
    }

    .u-sp-ml10 {
        margin-left: 10rem !important;
    }

    .u-sp-ml11 {
        margin-left: 11rem !important;
    }

    .u-sp-ml12 {
        margin-left: 12rem !important;
    }

    .u-sp-ml13 {
        margin-left: 13rem !important;
    }

    .u-sp-ml14 {
        margin-left: 14rem !important;
    }

    .u-sp-ml15 {
        margin-left: 15rem !important;
    }

    .u-sp-ml16 {
        margin-left: 16rem !important;
    }

    .u-sp-ml17 {
        margin-left: 17rem !important;
    }

    .u-sp-ml18 {
        margin-left: 18rem !important;
    }

    .u-sp-ml19 {
        margin-left: 19rem !important;
    }

    .u-sp-ml20 {
        margin-left: 20rem !important;
    }
}

/**
 * Flex Box
 */
.u-flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    display: -moz-flex;
    display: -ms-flex;
}

.u-flex-row-reverse {
    -moz-flex-direction: row-reverse;
    -ms-flex-direction: row-reverse;
    -o-flex-direction: row-reverse;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    flex-direction: row-reverse;
}

.u-flex-column {
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    -o-flex-direction: column;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    flex-direction: column;
}

.u-flex-column-reverse {
    -moz-flex-direction: column-reverse;
    -ms-flex-direction: column-reverse;
    -o-flex-direction: column-reverse;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    flex-direction: column-reverse;
}

.u-flex-wrap {
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
}

.u-flex-justify-flex-start {
    -moz-justify-content: flex-start;
    -ms-justify-content: flex-start;
    -o-justify-content: flex-start;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}

.u-flex-justify-flex-end {
    -moz-justify-content: flex-end;
    -ms-justify-content: flex-end;
    -o-justify-content: flex-end;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
}

.u-flex-justify-center {
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.u-flex-justify-space-between {
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.u-flex-justify-space-around {
    -moz-justify-content: space-around;
    -ms-justify-content: space-around;
    -o-justify-content: space-around;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.u-flex-align-flex-start {
    -moz-align-items: flex-start;
    -ms-align-items: flex-start;
    -o-align-items: flex-start;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
}

.u-flex-align-flex-end {
    -moz-align-items: flex-end;
    -ms-align-items: flex-end;
    -o-align-items: flex-end;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.u-flex-align-center {
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.u-flex-align-space-between {
    -moz-align-items: space-between;
    -ms-align-items: space-between;
    -o-align-items: space-between;
    -webkit-box-align: space-between;
    -ms-flex-align: space-between;
    align-items: space-between;
}

@media (min-width: 992px) {
    .u-pc-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        display: -moz-flex;
        display: -ms-flex;
    }

    .u-pc-flex-row-reverse {
        -moz-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        -o-flex-direction: row-reverse;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        flex-direction: row-reverse;
    }

    .u-pc-flex-column {
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        flex-direction: column;
    }

    .u-pc-flex-column-reverse {
        -moz-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        -o-flex-direction: column-reverse;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        flex-direction: column-reverse;
    }

    .u-pc-flex-wrap {
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .u-pc-flex-justify-flex-start {
        -moz-justify-content: flex-start;
        -ms-justify-content: flex-start;
        -o-justify-content: flex-start;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .u-pc-flex-justify-flex-end {
        -moz-justify-content: flex-end;
        -ms-justify-content: flex-end;
        -o-justify-content: flex-end;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .u-pc-flex-justify-center {
        -moz-justify-content: center;
        -ms-justify-content: center;
        -o-justify-content: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .u-pc-flex-justify-space-between {
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .u-pc-flex-justify-space-around {
        -moz-justify-content: space-around;
        -ms-justify-content: space-around;
        -o-justify-content: space-around;
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .u-pc-flex-align-flex-start {
        -moz-align-items: flex-start;
        -ms-align-items: flex-start;
        -o-align-items: flex-start;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .u-pc-flex-align-flex-end {
        -moz-align-items: flex-end;
        -ms-align-items: flex-end;
        -o-align-items: flex-end;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }

    .u-pc-flex-align-center {
        -moz-align-items: center;
        -ms-align-items: center;
        -o-align-items: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .u-pc-flex-align-space-between {
        -moz-align-items: space-between;
        -ms-align-items: space-between;
        -o-align-items: space-between;
        -webkit-box-align: space-between;
        -ms-flex-align: space-between;
        align-items: space-between;
    }
}

@media (max-width: 767.98px) {
    .u-sp-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        display: -moz-flex;
        display: -ms-flex;
    }

    .u-sp-flex-row-reverse {
        -moz-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        -o-flex-direction: row-reverse;
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
        flex-direction: row-reverse;
    }

    .u-sp-flex-column {
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        flex-direction: column;
    }

    .u-sp-flex-column-reverse {
        -moz-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        -o-flex-direction: column-reverse;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        flex-direction: column-reverse;
    }

    .u-sp-flex-wrap {
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .u-sp-flex-justify-flex-start {
        -moz-justify-content: flex-start;
        -ms-justify-content: flex-start;
        -o-justify-content: flex-start;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
    }

    .u-sp-flex-justify-flex-end {
        -moz-justify-content: flex-end;
        -ms-justify-content: flex-end;
        -o-justify-content: flex-end;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }

    .u-sp-flex-justify-center {
        -moz-justify-content: center;
        -ms-justify-content: center;
        -o-justify-content: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .u-sp-flex-justify-space-between {
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }

    .u-sp-flex-justify-space-around {
        -moz-justify-content: space-around;
        -ms-justify-content: space-around;
        -o-justify-content: space-around;
        -ms-flex-pack: distribute;
        justify-content: space-around;
    }

    .u-sp-flex-align-flex-start {
        -moz-align-items: flex-start;
        -ms-align-items: flex-start;
        -o-align-items: flex-start;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
    }

    .u-sp-flex-align-flex-end {
        -moz-align-items: flex-end;
        -ms-align-items: flex-end;
        -o-align-items: flex-end;
        -webkit-box-align: end;
        -ms-flex-align: end;
        align-items: flex-end;
    }

    .u-sp-flex-align-center {
        -moz-align-items: center;
        -ms-align-items: center;
        -o-align-items: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .u-sp-flex-align-space-between {
        -moz-align-items: space-between;
        -ms-align-items: space-between;
        -o-align-items: space-between;
        -webkit-box-align: space-between;
        -ms-flex-align: space-between;
        align-items: space-between;
    }
}

.u-media__pc {
    display: none;
}

@media (min-width: 992px) {
    .u-media__sp {
        display: none;
    }

    .u-media__pc {
        display: block;
    }

    .u-media__pc-flex {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
}

.u-clearfix {
    display: block;
}

.u-clearfix:before {
    content: "";
    display: block;
    clear: both;
}

.u-clearfix:after {
    content: "";
    display: block;
    clear: both;
}

@media (min-width: 992px) {
    .u-clearfix__pc {
        display: block;
    }

    .u-clearfix__pc:before {
        content: "";
        display: block;
        clear: both;
    }

    .u-clearfix__pc:after {
        content: "";
        display: block;
        clear: both;
    }
}

/**
 * メディアクエリ
**/
/*# sourceMappingURL=app.css.map */