@charset "UTF-8";
/*$_siteColor2: rgba(197, 0, 19, 1);*/
.contentsHeader { margin-bottom: 2.5em; }
.contents .breadcrumbs { margin-bottom: 1em; }
.contents .breadcrumbs ul { font-size: 0; }
.contents .breadcrumbs li { font-size: 0.75rem; vertical-align: middle; margin-right: 1em; padding-right: 1em; display: inline-block; position: relative; }
.contents .breadcrumbs li::after { border-top: 2px solid #bf8b2e; border-right: 2px solid #bf8b2e; width: 0.3rem; height: 0.3rem; margin-top: -0.21rem; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 0; }
.contents .breadcrumbs li:last-child::after { border: none; }
.contents .breadcrumbs li img { width: 1.5em; height: 1.34em; margin-right: .5em; margin-bottom: .2em; }
.contents .breadcrumbs li a { color: #333; text-decoration: none; }
body:not([data-device="touchDevice"]) .contents .breadcrumbs li a:hover { opacity: .7; }
.contents_icn { text-align: center; margin-top: 1.5em; }
.contents_icn img { max-width: 94%; }
.contents_heading { font-weight: normal; color: #d20b17; line-height: 1.4; text-align: center; margin-top: .5em; padding-bottom: .5em; }
@media screen and (max-width: 719px) { .contents_heading { font-size: 1.875rem; letter-spacing: .1em; border-bottom: 1px solid #d20b17; } }
@media print, screen and (min-width: 720px) { .contents_heading { font-size: 2.25rem; letter-spacing: .15em; border-bottom: 2px solid #d20b17; } }
.contents_heading-hasSmall { margin-top: .2em; }
.contents_heading small { font-size: 66%; }
.contents_description { color: #333; text-align: center; margin-top: 1.2em; }
@media screen and (max-width: 719px) { .contents_description { font-size: 1rem; line-height: 1.6; } }
@media print, screen and (min-width: 720px) { .contents_description { font-size: 1.125rem; line-height: 1.8; } }
.contents_note { text-align: center; }
.contents_note small { font-size: 0.875rem; color: #d20b17; line-height: 1.4; text-align: justify; text-indent: -1em; text-justify: inter-ideograph; letter-spacing: .05em; margin-top: 1em; padding-left: 1em; display: inline-block; }
.contents .tomonokaiweb_app { margin-top: 2em; }
@media screen and (max-width: 719px) { .contents .tomonokaiweb_app ._inner { border: 1px solid #d20b17; padding: 4.28571%; } }
@media print, screen and (min-width: 720px) { .contents .tomonokaiweb_app ._inner { border: 2px solid #d20b17; padding: 30px; } }
.contents .tomonokaiweb_app ._wrapper { width: 100%; overflow: hidden; }
@media screen and (max-width: 719px) { .contents .tomonokaiweb_app_icon { text-align: center; margin-bottom: 1em; } }
@media print, screen and (min-width: 720px) { .contents .tomonokaiweb_app_icon { float: left; } }
@media print, screen and (min-width: 720px) { .contents .tomonokaiweb_app_textArea { width: calc(100% - 150px); float: right; } }
.contents .tomonokaiweb_app_heading { font-size: 1.3125rem; font-weight: 500; color: #d20b17; line-height: 1.6; text-align: justify; text-justify: inter-ideograph; }
@media screen and (max-width: 719px) { .contents .tomonokaiweb_app_heading { letter-spacing: .05em; } }
@media print, screen and (min-width: 720px) { .contents .tomonokaiweb_app_heading { letter-spacing: .1em; } }
.contents .tomonokaiweb_app_text { font-size: 0.875rem; color: #333; line-height: 1.6; text-align: justify; text-justify: inter-ideograph; letter-spacing: .05em; margin-top: .8em; }
.contents .tomonokaiweb_app_badge { font-size: 0; text-align: center; margin-top: 1rem; }
.contents .tomonokaiweb_app_badge div { margin-top: .5rem; display: inline-block; }
@media screen and (max-width: 719px) { .contents .tomonokaiweb_app_badge div { height: 45px; } }
@media print, screen and (min-width: 720px) { .contents .tomonokaiweb_app_badge div { height: 54px; } }
@media screen and (max-width: 719px) { .contents .tomonokaiweb_app_badge div:first-child { margin-right: 10px; } }
@media print, screen and (min-width: 720px) { .contents .tomonokaiweb_app_badge div:first-child { margin-right: 30px; } }
@media screen and (max-width: 719px) { .contents .tomonokaiweb_app_badge div img { width: auto; height: 45px; } }
@media print, screen and (min-width: 720px) { .contents .tomonokaiweb_app_badge div img { width: auto; height: 54px; } }
.contents .tomonokaiweb_app_note { font-size: 0.75rem; color: #333; line-height: 1.4; text-align: right; letter-spacing: .05em; margin-top: 1em; }

.aboutAdmission { text-align: center; }
.aboutAdmission a { color: #FFF; text-decoration: none; background-color: #d20b17; margin: 1.5em auto; display: inline-block; }
@media screen and (max-width: 719px) { .aboutAdmission a { font-size: 1.125rem; padding: 1em 4em 1em 3em; position: relative; }
  .aboutAdmission a::after { border-top: 1px solid #FFF; border-right: 1px solid #FFF; width: 0.4em; height: 0.4em; margin-top: -0.28em; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 2em; }
  .aboutAdmission a::before { border-top: 1px solid #FFF; border-right: 1px solid #FFF; width: 0.4em; height: 0.4em; margin-top: -0.28em; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 2.5em; } }
@media print, screen and (min-width: 720px) { .aboutAdmission a { font-size: 1.3125rem; letter-spacing: .2em; padding: 1em 5em 1em 4em; position: relative; }
  .aboutAdmission a::after { border-top: 2px solid #FFF; border-right: 2px solid #FFF; width: 0.4em; height: 0.4em; margin-top: -0.28em; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 2em; }
  .aboutAdmission a::before { border-top: 2px solid #FFF; border-right: 2px solid #FFF; width: 0.4em; height: 0.4em; margin-top: -0.28em; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 2.5em; } }
body:not([data-device="touchDevice"]) .aboutAdmission a:hover { background-color: rgba(210, 11, 23, 0.7); }

.aboutReserving { text-align: center; }
.aboutReserving a { color: #FFF; text-decoration: none; background-color: #d20b17; margin: 1.5em auto; display: inline-block; }
@media screen and (max-width: 719px) { .aboutReserving a { font-size: 1.125rem; padding: 1em 4em 1em 2.5em; position: relative; }
  .aboutReserving a::after { border-top: 1px solid #FFF; border-right: 1px solid #FFF; width: 0.4em; height: 0.4em; margin-top: -0.28em; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 2em; }
  .aboutReserving a::before { border-top: 1px solid #FFF; border-right: 1px solid #FFF; width: 0.4em; height: 0.4em; margin-top: -0.28em; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 2.5em; } }
@media print, screen and (min-width: 720px) { .aboutReserving a { font-size: 1.3125rem; letter-spacing: .2em; padding: 1em 5em 1em 4em; position: relative; }
  .aboutReserving a::after { border-top: 2px solid #FFF; border-right: 2px solid #FFF; width: 0.4em; height: 0.4em; margin-top: -0.28em; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 2em; }
  .aboutReserving a::before { border-top: 2px solid #FFF; border-right: 2px solid #FFF; width: 0.4em; height: 0.4em; margin-top: -0.28em; display: inline-block; position: absolute; top: 50%; content: ""; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); -ms-transform: rotate(45deg); -o-transform: rotate(45deg); transform: rotate(45deg); right: 2.5em; } }
body:not([data-device="touchDevice"]) .aboutReserving a:hover { background-color: rgba(210, 11, 23, 0.7); }

.bank { margin: 2em 0; }
.bank > ._inner { text-align: center; }
@media screen and (max-width: 719px) { .bank > ._inner { border: 1px solid #d20b17; } }
@media print, screen and (min-width: 720px) { .bank > ._inner { border: 2px solid #d20b17; } }
.bank_heading { position: relative; }
@media screen and (max-width: 719px) { .bank_heading { margin-top: -1.2em; } }
@media print, screen and (min-width: 720px) { .bank_heading { margin-top: -.6em; } }
.bank_heading span { font-size: 1.125rem; font-weight: 500; color: #d20b17; line-height: 1.2; letter-spacing: .15em; background-color: #FFF; padding: 0 1em; display: inline-block; }
.bank_list { text-align: left; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
@media screen and (max-width: 719px) { .bank_list { padding: 2em 1em 1em 2em; } }
@media screen and (min-width: 720px) and (max-width: 1023px) { .bank_list { padding: 2em 1em 1em 2em; } }
@media print, screen and (min-width: 1024px) { .bank_list { padding: 2em 1.5em 1em 3.5em; } }
.bank_list li { color: #333; line-height: 1.2; box-sizing: border-box; margin-bottom: 1em; padding: 0 .5em 0 1.2em; position: relative; }
@media screen and (max-width: 719px) { .bank_list li { font-size: 1rem; }
  .bank_list li:nth-child(odd) { width: 45%; }
  .bank_list li:nth-child(even) { width: 55%; } }
@media print, screen and (min-width: 720px) { .bank_list li { font-size: 1.125rem; width: 33%; } }
.bank_list li::before { vertical-align: bottom; background-color: #333; border-radius: 50%; width: 1em; height: 1em; display: inline-block; position: absolute; top: 0; left: 0; content: ""; }
.bank_note { font-size: 0.75rem; color: #333; line-height: 1.4; text-align: justify; text-indent: -1em; text-justify: inter-ideograph; letter-spacing: .05em; margin-top: 1em; padding-left: 1em; }

.reception { margin: 2em 0; display: -webkit-box; display: -moz-box; display: -webkit-flex; display: -ms-flexbox; display: flex; }
.reception_item { text-align: center; width: 48.47095%; }
.reception_item:first-child { padding-right: 3.0581%; }
.reception_item_image img { width: 100%; }
.reception_item_text ._place { font-size: 1.125rem; font-weight: normal; color: #333; line-height: 1.4; letter-spacing: .1em; margin-top: 1em; }
.reception_item_text ._tel { line-height: 1.2; letter-spacing: .1em; margin-top: .1em; }
@media screen and (max-width: 719px) { .reception_item_text ._tel { font-size: 1.25rem; } }
@media print, screen and (min-width: 720px) { .reception_item_text ._tel { font-size: 1.5rem; } }
.reception_item_text ._tel a { color: #333; text-decoration: none; }
.reception_item_text ._time { color: #333; line-height: 1.2; margin-top: .1em; }
@media screen and (max-width: 719px) { .reception_item_text ._time { font-size: 0.75rem; letter-spacing: normal; } }
@media print, screen and (min-width: 720px) { .reception_item_text ._time { font-size: 0.875rem; } }
@media screen and (max-width: 719px) { .reception_item_text ._time span { font-size: 0.875rem; letter-spacing: normal; } }
@media print, screen and (min-width: 720px) { .reception_item_text ._time span { font-size: 1rem; } }

.attention { border: 2px solid #d20b17; margin: 2em 0 3em 0; }
@media screen and (max-width: 719px) { .attention { padding: 1.3125rem; } }
@media print, screen and (min-width: 720px) { .attention { padding: 1.5rem 2rem; } }
.attention_icon { text-align: center; }
.attention_heading, .attention_heading-sub { font-size: 1.3125rem; font-weight: 500; color: #d20b17; line-height: 1.4; text-align: center; letter-spacing: .1em; margin-top: .5em; }
.attention_heading-sub { margin-top: 1.5em; }
.attention_list { padding: 1.5em 0 .5em 0; }
.attention_list li { font-size: 0.875rem; color: #333; line-height: 1.6; text-align: justify; text-indent: -1em; text-justify: inter-ideograph; margin-bottom: .4em; padding-left: 1em; }
.attention_list li::before { color: #d20b17; content: "●"; }
.attention_list dt { font-size: 1.125rem; font-weight: 500; color: #d20b17; line-height: 1.4; letter-spacing: .1em; margin-top: 1em; }
.attention_list dd { font-size: 0.875rem; color: #333; line-height: 1.6; }

/*# sourceMappingURL=sub.css.map */
