* { -webkit-box-sizing: border-box; box-sizing: border-box; }

::before, ::after { -webkit-box-sizing: inherit; box-sizing: inherit; }

html { line-height: 1.15; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }

body { margin: 0; }

main { display: block; }

p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; }

h1, h2, h3, h4, h5, h6 { font-size: inherit; line-height: inherit; font-weight: inherit; margin: 0; }

ul, ol { margin: 0; padding: 0; list-style: none; }

dt { font-weight: bold; }

dd { margin-left: 0; }

hr { -webkit-box-sizing: content-box; box-sizing: content-box; height: 0; overflow: visible; border: 0; border-top: 1px solid; margin: 0; clear: both; color: inherit; }

pre { font-family: monospace, monospace; font-size: inherit; }

address { font-style: inherit; }

a { background-color: transparent; color: inherit; }

abbr[title] { border-bottom: none; text-decoration: underline; -webkit-text-decoration: underline dotted; text-decoration: underline dotted; }

b, strong { font-weight: bolder; }

code, kbd, samp { font-family: monospace, monospace; font-size: inherit; }

small { font-size: 80%; }

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

sub { bottom: -0.25em; }

sup { top: -0.5em; }

img { border-style: none; vertical-align: bottom; }

embed, object, iframe { border: 0; vertical-align: bottom; }

button, input, optgroup, select, textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; vertical-align: middle; color: inherit; font: inherit; border: 0; background: transparent; padding: 0; margin: 0; outline: 0; border-radius: 0; text-align: inherit; }

[type="checkbox"] { -webkit-appearance: checkbox; -moz-appearance: checkbox; appearance: checkbox; }

[type="radio"] { -webkit-appearance: radio; -moz-appearance: radio; appearance: radio; }

button, input { overflow: visible; }

button, select { text-transform: none; }

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

button[disabled], [type="button"][disabled], [type="reset"][disabled], [type="submit"][disabled] { cursor: default; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

option { padding: 0; }

fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }

legend { color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }

progress { vertical-align: baseline; }

textarea { overflow: auto; }

[type="checkbox"], [type="radio"] { padding: 0; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

[type="search"] { outline-offset: -2px; }

[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }

label[for] { cursor: pointer; }

details { display: block; }

summary { display: list-item; }

table { border-collapse: collapse; border-spacing: 0; }

caption { text-align: left; }

td, th { vertical-align: top; padding: 0; }

th { text-align: left; font-weight: bold; }

template { display: none; }

[hidden] { display: none; }

a { color: #cc9d4d; }

::-moz-selection { background: #cc9d4d; color: #fff; }

::selection { background: #cc9d4d; color: #fff; }

html { visibility: hidden; }

html.wf-active, html.loading-delay { visibility: visible; }

html { font-size: 62.5%; }

body, p, table, blockquote, address, pre, small, iframe, form, figure, dl, h1, h2, h3, h4, h5, h6, ul, ol, th, td, dt, dd { font-family: noto-sans-cjk-jp, sans-serif; font-size: calc(1.25rem + ((1vw - 0.325rem) * 1.3636)); color: #514E47; line-height: 1.7; letter-spacing: 0.05rem; }

@media screen and (min-width: 520px), (orientation: landscape) { body, p, table, blockquote, address, pre, small, iframe, form, figure, dl, h1, h2, h3, h4, h5, h6, ul, ol, th, td, dt, dd { font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); line-height: 1.7; min-height: 0vw; } }

@media screen and (min-width: 960px) { body, p, table, blockquote, address, pre, small, iframe, form, figure, dl, h1, h2, h3, h4, h5, h6, ul, ol, th, td, dt, dd { font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); line-height: 1.7; min-height: 0vw; } }

h1, h2, h3, h4, h5, h6, b, strong { font-weight: 700; }

* { -webkit-box-sizing: border-box; box-sizing: border-box; }

::before, ::after { -webkit-box-sizing: inherit; box-sizing: inherit; }

html { line-height: 1.15; -webkit-text-size-adjust: 100%; -webkit-tap-highlight-color: transparent; }

body { margin: 0; }

main { display: block; }

p, table, blockquote, address, pre, iframe, form, figure, dl { margin: 0; }

h1, h2, h3, h4, h5, h6 { font-size: inherit; line-height: inherit; font-weight: inherit; margin: 0; }

ul, ol { margin: 0; padding: 0; list-style: none; }

dt { font-weight: bold; }

dd { margin-left: 0; }

hr { -webkit-box-sizing: content-box; box-sizing: content-box; height: 0; overflow: visible; border: 0; border-top: 1px solid; margin: 0; clear: both; color: inherit; }

pre { font-family: monospace, monospace; font-size: inherit; }

address { font-style: inherit; }

a { background-color: transparent; color: inherit; }

abbr[title] { border-bottom: none; text-decoration: underline; -webkit-text-decoration: underline dotted; text-decoration: underline dotted; }

b, strong { font-weight: bolder; }

code, kbd, samp { font-family: monospace, monospace; font-size: inherit; }

small { font-size: 80%; }

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

sub { bottom: -0.25em; }

sup { top: -0.5em; }

img { border-style: none; vertical-align: bottom; }

embed, object, iframe { border: 0; vertical-align: bottom; }

button, input, optgroup, select, textarea { -webkit-appearance: none; -moz-appearance: none; appearance: none; vertical-align: middle; color: inherit; font: inherit; border: 0; background: transparent; padding: 0; margin: 0; outline: 0; border-radius: 0; text-align: inherit; }

[type="checkbox"] { -webkit-appearance: checkbox; -moz-appearance: checkbox; appearance: checkbox; }

[type="radio"] { -webkit-appearance: radio; -moz-appearance: radio; appearance: radio; }

button, input { overflow: visible; }

button, select { text-transform: none; }

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

button[disabled], [type="button"][disabled], [type="reset"][disabled], [type="submit"][disabled] { cursor: default; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; }

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; }

option { padding: 0; }

fieldset { margin: 0; padding: 0; border: 0; min-width: 0; }

legend { color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; }

progress { vertical-align: baseline; }

textarea { overflow: auto; }

[type="checkbox"], [type="radio"] { padding: 0; }

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; }

[type="search"] { outline-offset: -2px; }

[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; }

label[for] { cursor: pointer; }

details { display: block; }

summary { display: list-item; }

table { border-collapse: collapse; border-spacing: 0; }

caption { text-align: left; }

td, th { vertical-align: top; padding: 0; }

th { text-align: left; font-weight: bold; }

template { display: none; }

[hidden] { display: none; }

a { color: #cc9d4d; }

::-moz-selection { background: #cc9d4d; color: #fff; }

::selection { background: #cc9d4d; color: #fff; }

html { visibility: hidden; }

html.wf-active, html.loading-delay { visibility: visible; }

html { font-size: 62.5%; }

body, p, table, blockquote, address, pre, small, iframe, form, figure, dl, h1, h2, h3, h4, h5, h6, ul, ol, th, td, dt, dd { font-family: noto-sans-cjk-jp, sans-serif; font-size: calc(1.25rem + ((1vw - 0.325rem) * 1.3636)); color: #514E47; line-height: 1.7; letter-spacing: 0.05rem; }

@media screen and (min-width: 520px), (orientation: landscape) { body, p, table, blockquote, address, pre, small, iframe, form, figure, dl, h1, h2, h3, h4, h5, h6, ul, ol, th, td, dt, dd { font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); line-height: 1.7; min-height: 0vw; } }

@media screen and (min-width: 960px) { body, p, table, blockquote, address, pre, small, iframe, form, figure, dl, h1, h2, h3, h4, h5, h6, ul, ol, th, td, dt, dd { font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); line-height: 1.7; min-height: 0vw; } }

h1, h2, h3, h4, h5, h6, b, strong { font-weight: 700; }

@-webkit-keyframes fadein-photo { 0% { opacity: 0; }
  100% { opacity: 1; } }

@keyframes fadein-photo { 0% { opacity: 0; }
  100% { opacity: 1; } }

@-webkit-keyframes fade-in { 0% { opacity: 0; }
  100% { opacity: 100; } }

@keyframes fade-in { 0% { opacity: 0; }
  100% { opacity: 100; } }

@-webkit-keyframes fade-out { 0% { opacity: 100; }
  100% { opacity: 0; } }

@keyframes fade-out { 0% { opacity: 100; }
  100% { opacity: 0; } }

body { position: relative; min-height: 100vh; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

i { margin: auto 0.5vw; }

td { word-break: break-all; }

a[target="_blank"]::after { content: "\f35d"; font-family: "Font Awesome 5 Pro"; font-weight: bold; color: #cc9d4d; padding-left: 0.5vw; text-decoration: none; }

a.remove-icon[target="_blank"]::after { content: ""; padding: 0; }

.sns a[target="_blank"]::after { content: ""; padding: 0; }

.sns .fa-facebook { color: #1877F2; }

.sns .fa-youtube { color: #CD201F; }

.english-name { font-family: adobe-handwriting-ernie, sans-serif; }

.hover-maker a { display: inline-block; background: -webkit-gradient(linear, left top, right top, color-stop(50%, #cc9d4d), color-stop(50%, transparent)); background: linear-gradient(to right, #cc9d4d 50%, transparent 50%); background-position: 101% center; background-size: 200% 70%; background-repeat: no-repeat; -webkit-transition: background-position 0.4s; transition: background-position 0.4s; }

.hover-maker a:hover { background-position: 0 center; color: #fff; }

.txt-memo { text-align: right; font-size: calc(1.125rem + ((1vw - 0.325rem) * 1.3636)); }

.tcy { text-combine-upright: all; }

.tag { text-align: left; }

.tag a { text-decoration: none; }

.tag li { display: inline-block; background: #FF0909; margin: 1vw 1vw 0vw 0vw; padding: 1vw 2vw; border-radius: 2vw; font-size: calc(0.8125rem + ((1vw - 0.325rem) * 1.1364)); }

@media screen and (min-width: 520px), (orientation: landscape) { .tag li { margin: 0.5vw 0.5vw 0vw 0vw; padding: 0.3vw 0.5vw; border-radius: 0.5vw; font-size: calc(0.875rem + ((1vw - 0.6rem) * 0.4167)); }
  .txt-memo { font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); } }

@media screen and (min-width: 960px) { .brsp { display: none; } }

.banner-simple { margin: 4vw auto; text-align: center; }

.banner-simple img { max-width: 100%; }

@media screen and (min-width: 520px), (orientation: landscape) { .banner-simple { margin: 2vw auto; } }

.list-simple li { margin-left: 6vw; list-style: disc; }

@media screen and (min-width: 520px), (orientation: landscape) { .list-simple li { margin-left: 2vw; } }

.table-tel { margin: 2vw 0; border-collapse: separate; border-spacing: 1vw 1vw; }

.table-tel th { padding: 1vw 2vw; background: #cc9d4d; color: #fff; font-weight: bold; white-space: nowrap; vertical-align: middle; }

.table-tel td { padding: 1vw 2vw; vertical-align: middle; }

@media screen and (min-width: 520px), (orientation: landscape) { .table-tel { margin: 1vw 0; border-spacing: 0.5vw 0.5vw; }
  .table-tel th, .table-tel td { padding: 0.5vw 1vw; } }

.table-info { margin: 2vw 0; width: 100%; }

.table-info th { padding: 1.5vw 2vw; background: #FF0909; font-weight: bold; border: 0.4vw solid #cc9d4d; white-space: nowrap; vertical-align: middle; font-size: calc(1.125rem + ((1vw - 0.325rem) * 1.3636)); }

.table-info td { padding: 1.5vw 2vw; border: 0.4vw solid #cc9d4d; vertical-align: middle; font-size: calc(1.125rem + ((1vw - 0.325rem) * 1.3636)); }

.table-info td li { font-size: calc(1.125rem + ((1vw - 0.325rem) * 1.3636)); }

.table-info td .list-simple.list-simple li { margin-left: 4vw; }

.table-info td .icon-pay { display: inline-block; margin: 1.5vw 2vw 0 1vw; height: 4vw; line-height: 0; }

.table-info td .icon-pay img { height: 100%; }

@media screen and (min-width: 520px), (orientation: landscape) { .table-info { margin: 1vw 0; width: auto; }
  .table-info.table-long { margin: 2vw auto; }
  .table-info th, .table-info td { padding: 1vw 1.5vw; border: 0.2vw solid #cc9d4d; font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); }
  .table-info td li { font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); }
  .table-info td .icon-pay { margin: 1vw 2vw 0 0.5vw; height: 2vw; } }

@media screen and (min-width: 960px) { .table-info.table-long { width: 60vw; }
  .table-info th, .table-info td { border: 0.1vw solid #cc9d4d; } }

.table-menu { margin: 4vw auto; width: 60%; }

.table-menu th { padding: 1.5vw 2vw; font-weight: bold; border-bottom: 0.4vw solid #cc9d4d; white-space: nowrap; }

.table-menu td { padding: 1vw 2vw; border-bottom: 0.4vw solid #cc9d4d; text-align: right; }

@media screen and (min-width: 520px), (orientation: landscape) { .table-menu { margin: 2vw auto; }
  .table-menu th, .table-menu td { padding: 2vw 1.5vw; border-bottom: 0.2vw solid #cc9d4d; } }

@media screen and (min-width: 960px) { .table-menu { width: 40%; }
  .table-menu th, .table-menu td { border-bottom: 0.1vw solid #cc9d4d; } }

.btn-more { margin: 3vw 0; text-align: center; }

.btn-more a { position: relative; display: inline-block; text-decoration: none; padding: 2.5vw 5vw; width: 75vw; text-align: center; color: #fff; letter-spacing: 0.4vw; font-family: tbudmincho-std, sans-serif; background: #cc9d4d; -webkit-transition: .3s; transition: .3s; }

.btn-more a::after { content: ""; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; width: 4vw; height: 0.2vw; background: #fff; -webkit-transition: .3s; transition: .3s; }

.btn-more a:hover::after { width: 2vw; }

@media screen and (min-width: 520px), (orientation: landscape) { .btn-more { margin: 4vw 0; }
  .btn-more a { padding: 1.5vw 5vw; width: 38vw; letter-spacing: 0.2vw; }
  .btn-more a::after { width: 4.5vw; height: 0.1vw; }
  .btn-more a:hover::after { width: 1vw; }
  .btn-more-list { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; }
  .btn-more-list .btn-more { margin: 2vw 4vw; }
  .btn-more-list .btn-more a { width: 18vw; } }

.btn-round a { margin-left: auto; margin-right: auto; 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; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 14vw; height: 14vw; border-radius: 7.0vw; font-size: 4vw; color: #fff; background: #cc9d4d; text-decoration: none; -webkit-transition: 0.3s; transition: 0.3s; }

.btn-round a:hover { -webkit-transform: scale(1.2); transform: scale(1.2); }

.btn-round.fb a { background: #1877F2; }

.btn-round.twitter a { background: #00acee; }

.btn-share { padding: 6vw 0; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; position: relative; background: #fff; }

.btn-share li { margin: 0 4vw; }

.btn-share .btn-round a { -ms-flex-wrap: wrap; flex-wrap: wrap; }

.btn-share li a i { display: block; width: 100%; text-align: center; font-size: 4vw; }

.btn-share li a p { margin-top: -3.5vw; color: #fff; font-weight: bold; text-align: center; font-size: calc(0.8125rem + ((1vw - 0.325rem) * 1.1364)); letter-spacing: 0; }

.btn-share a[target="_blank"]::after { content: ""; padding: 0; }

@media screen and (min-width: 520px), (orientation: landscape) { .btn-round a { width: 7.0vw; height: 7.0vw; border-radius: 3.5vw; font-size: 2.2vw; }
  .btn-share { padding: 3vw 0; }
  .btn-share li { margin: 0 2vw; }
  .btn-share li a i { font-size: 2.2vw; }
  .btn-share li a p { margin-top: -1.8vw; font-size: calc(0.875rem + ((1vw - 0.6rem) * 0.4167)); } }

@media screen and (min-width: 960px) { .btn-round a { width: 5vw; height: 5vw; border-radius: 2.5vw; font-size: 1.8vw; }
  .btn-share { padding: 3vw 0; }
  .btn-share li { margin: 0 2vw; }
  .btn-share li a i { font-size: 1.8vw; }
  .btn-share li a p { margin-top: -1.5vw; font-size: calc(0.875rem + ((1vw - 0.6rem) * 0.4167)); } }

.sns-banner { margin: 6vw auto; width: 80vw; }

.sns-banner li a { 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; text-decoration: none; }

.sns-banner li i { font-size: 8vw; }

.sns-banner li p { margin-left: 1vw; font-weight: bold; }

.sns-banner li p::after { content: "\f35d"; padding-left: 1vw; font-family: "Font Awesome 5 Pro"; font-weight: bold; color: #cc9d4d; }

@media screen and (min-width: 520px), (orientation: landscape) { .sns-banner { margin: 4vw auto; }
  .sns-banner li i { font-size: 4vw; }
  .sns-banner li p { margin-left: 0.5vw; }
  .sns-banner li p::after { padding-left: 0.5vw; } }

@media screen and (min-width: 960px) { .sns-banner { width: 30vw; } }

.ex-banner { margin: 6vw auto; width: 90vw; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.ex-banner li { width: 50%; margin-bottom: 4vw; }

.ex-banner li:nth-child(even) { padding-left: 2vw; }

.ex-banner li:nth-child(odd) { padding-right: 2vw; }

.ex-banner li img { width: 100%; }

.image-simple { margin: 8vw auto; width: 90vw; }

.image-simple img { width: 100%; }

@media screen and (min-width: 520px), (orientation: landscape) { .image-simple { margin: 6vw auto; }
  .ex-banner { margin: 4vw auto; width: 75vw; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; } }

@media screen and (min-width: 960px) { .image-simple { margin: 6vw auto; }
  .ex-banner { width: 85vw; }
  .ex-banner li { width: 23%; margin-bottom: 0; padding: 0 1.5vw; }
  .ex-banner li:nth-child(even) { padding-left: 1.5vw; }
  .ex-banner li:nth-child(odd) { padding-right: 1.5vw; }
  .ex-banner li img { width: initial; } }

header { position: fixed; z-index: 999; top: 0; left: 0; width: 100%; }

header a { text-decoration: none; }

header .header-language { position: fixed; top: 0; right: 0; 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; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; background: #cc9d4d; color: #fff; width: 8.5vh; height: 8.5vh; text-align: center; font-weight: 600; font-size: 1.2vh; letter-spacing: 0; line-height: 1; cursor: pointer; }

header .header-language .icon { display: block; margin-top: 0; margin-bottom: 0.5vh; font-size: 3vh; }

@media screen and (max-height: 560px) { header .header-language { width: 46px; height: 46px; } }

@media screen and (min-width: 520px), (orientation: landscape) { header .header-nav { -webkit-transition: 0.3s; transition: 0.3s; }
  header .header-language { width: 7vw; height: 7vw; -webkit-transition: 0.3s; transition: 0.3s; font-size: 1vw; letter-spacing: 0; min-width: 65px; min-height: 65px; }
  header .header-language .icon { margin-bottom: 0.5vw; font-size: 2.5vw; }
  header.scroll .header-language { width: 5.5vw; height: 5.5vw; font-size: 0.7vw; }
  header.scroll .header-language .icon { margin-bottom: 0.3vw; font-size: 2.0vw; } }

@media screen and (min-width: 520px) and (max-width: 960px) { header .header-language .icon, header.scroll .header-language .icon { margin-bottom: 5px; font-size: 22px; } }

@media screen and (max-height: 560px) and (min-width: 520px) { header .header-language { width: 74px; height: 74px; }
  header .header-language { font-size: 10px; letter-spacing: 0; }
  header .header-language .icon { margin-bottom: 5px; font-size: 24px; }
  header.scroll .header-language { width: 62px; height: 62px; font-size: 9px; }
  header.scroll .header-language .icon { margin-bottom: 4px; font-size: 20px; } }

header .langNav { display: none; }

header.lang-open .langNav { display: block; position: absolute; top: 0; left: 0; z-index: 999; width: 100%; height: 100vh; min-height: calc(var(--vh, 1vh) * 100); background: rgba(0, 0, 0, 0.75); margin-right: 15px; }

header.lang-open .langNav .langNav-container { 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; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; width: 100%; height: 100vh; min-height: calc(var(--vh, 1vh) * 100); }

header.lang-open .langNav .langNav-container ul { width: 60%; padding: 5vw; background: #fff; }

header.lang-open .langNav .langNav-container ul li { margin: 2vw; padding: 2vw; text-align: center; font-weight: bold; background: #fff; border: 0.5vw solid #D4CDC0; }

header.lang-open .langNav .langNav-container ul li a { display: block; color: #514E47; }

header.lang-open .langNav .langNav-container ul li:hover { border: 0.5vw solid #cc9d4d; }

header.lang-open .langNav .langNav-container ul li:hover a { color: #cc9d4d; }

header.lang-open .langNav .langNav-container ul li.now { border: 1vw solid #cc9d4d; background: #cc9d4d; }

header.lang-open .langNav .langNav-container ul li.now a { color: #fff; }

header.lang-open .langNav .langNav-container .lang-close-btn { width: 60%; padding-bottom: 5vw; background: #fff; font-size: 3.0vw; font-weight: bold; text-align: center; cursor: pointer; }

header.lang-open .langNav .langNav-container .lang-close-btn span { padding: 0.5vw 3vw; border: 0.4vw solid #cc9d4d; color: #cc9d4d; }

@media screen and (min-width: 520px), (orientation: landscape) { header.lang-open .langNav .langNav-container ul { width: 30%; padding: 2vw; }
  header.lang-open .langNav .langNav-container ul li { margin: 1vw; padding: 1vw; border: 0.25vw solid #D4CDC0; }
  header.lang-open .langNav .langNav-container ul li:hover { border: 0.25vw solid #cc9d4d; }
  header.lang-open .langNav .langNav-container ul li.now { border: 0.5vw solid #cc9d4d; }
  header.lang-open .langNav .langNav-container .lang-close-btn { width: 30%; font-size: 1vw; padding-bottom: 2vw; }
  header.lang-open .langNav .langNav-container .lang-close-btn span { padding: 0.5vw 1.5vw; border: 0.4vw solid #cc9d4d; } }

@media screen and (min-width: 960px) { header.lang-open .langNav .langNav-container .lang-close-btn span { border: 0.2vw solid #cc9d4d; } }

.fixed { position: fixed; width: 100%; height: 100%; }

main img { max-width: 100%; }

.index-main-visual { position: relative; height: calc(var(--vh, 1vh) * 100); min-height: 460px; overflow: hidden; background: url(/jp/assets/img/main-visual.jpg) no-repeat center center; background-size: cover; 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; z-index: -2; }

.index-main-visual::after { content: ""; position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.3); z-index: -1; }

.index-main-visual h1 { 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; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

.index-main-visual h1 p { color: #fff; font-size: calc(2.5rem + ((1vw - 0.325rem) * 2.7273)); font-family: tbudmincho-std, sans-serif; font-weight: normal; line-height: 1.4; }

.index-main-visual h1 p img { width: 8vw; margin-bottom: 2vw; }

@media screen and (min-width: 960px) { .index-main-visual { height: calc(var(--vh, 1vh) * 100); } }

@media screen and (max-height: 560px) and (min-width: 960px) { .index-main-visual { height: calc(var(--vh, 1vh) * 100); min-height: 420px; } }

@media screen and (min-width: 520px), (orientation: landscape) { .index-main-visual h1 p { font-size: calc(2.5rem + ((1vw - 0.6rem) * 1.25)); }
  .index-main-visual h1 p img { width: 4vw; margin-bottom: 1vw; } }

.media-primary { margin: 6vw auto; }

.media-primary .text { margin-bottom: 4vw; }

.media-primary .catch { margin-bottom: 2vw; font-size: calc(1.5rem + ((1vw - 0.325rem) * 2.7273)); font-weight: normal; font-family: tbudmincho-std, sans-serif; }

.media-primary figure { width: 100%; }

.media-primary figure img { width: 100%; }

@media screen and (min-width: 520px), (orientation: landscape) { .media-primary { margin: 4vw auto; }
  .media-primary .catch { margin-bottom: 1vw; font-size: calc(2rem + ((1vw - 0.6rem) * 0.8333)); } }

@media screen and (min-width: 960px) { .media-primary { margin: 4vw auto; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
  .media-primary .text { width: 48%; margin-bottom: 0; }
  .media-primary figure { width: 47%; }
  .media-primary .catch { margin-bottom: 1vw; font-size: 1.7vw; } }

.card-secondary { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; margin: 10vw 0; }

.card-secondary li { margin-bottom: 4vw; width: 48%; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-orient: vertical; -webkit-box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

.card-secondary li p { margin: 2vw 0; text-align: left; font-size: calc(1.125rem + ((1vw - 0.325rem) * 1.3636)); }

.card-secondary .card-secondary-title { text-align: center; font-weight: bold; }

.card-secondary .card-secondary-title::after { content: ""; margin: 2vw auto auto auto; display: block; width: 10vw; height: 0.5vw; background: #cc9d4d; }

.card-secondary .card-secondary-title span { font-weight: normal; }

.card-secondary figure { margin-bottom: 2vw; }

.card-secondary + .txt-memo { margin-top: -6vw; }

@media screen and (min-width: 520px), (orientation: landscape) { .card-secondary { margin: 4vw 0 2vw 0; }
  .card-secondary li { margin-bottom: 2vw; width: 31%; }
  .card-secondary li p { margin: 1vw 0; font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); }
  .card-secondary .card-secondary-title::after { margin: 1vw auto auto auto; width: 5vw; height: 0.3vw; }
  .card-secondary figure { margin-bottom: 1vw; }
  .card-secondary + .txt-memo { margin-top: 0; } }

.introduction { margin: auto; padding: 4vw 0; }

.introduction h2, .introduction p { margin: auto; padding: 2vw 0; width: 90vw; }

.sub-title { text-align: center; font-size: calc(1.5rem + ((1vw - 0.325rem) * 2.7273)); font-family: tbudmincho-std, sans-serif; font-weight: normal; }

.payment { margin: 2vw 0; text-align: center; font-weight: bold; }

.payment img { width: 25vw; }

@media screen and (min-width: 520px), (orientation: landscape) { .introduction { padding: 6vw 0; background-size: 40%; }
  .introduction h2, .introduction p { padding: 2vw 0; width: 85vw; }
  .sub-title { font-size: calc(2rem + ((1vw - 0.6rem) * 0.8333)); }
  .payment { margin: 1vw 0; }
  .payment img { width: 10vw; } }

.shop-guide .media-primary { margin: 0; width: 100%; }

.shop-guide .media-primary .text { margin: 6vw auto; width: 90vw; }

.shop-guide .media-primary .catch { text-align: center; font-size: calc(1.5rem + ((1vw - 0.325rem) * 2.7273)); line-height: 1.4; }

.shop-guide .media-primary .catch span { display: block; font-size: calc(1.25rem + ((1vw - 0.325rem) * 1.3636)); }

.shop-guide .media-primary table { margin: 4vw auto; }

@media screen and (min-width: 520px), (orientation: landscape) { .shop-guide .media-primary { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; }
  .shop-guide .media-primary .text { margin: 0; padding: 0 4vw; width: 50%; }
  .shop-guide .media-primary figure { width: 50%; height: 50vw; overflow: hidden; }
  .shop-guide .media-primary:nth-child(even) .text { -webkit-box-ordinal-group: 2; -ms-flex-order: 1; order: 1; }
  .shop-guide .media-primary:nth-child(even) figure { -webkit-box-ordinal-group: 3; -ms-flex-order: 2; order: 2; }
  .shop-guide .media-primary figure img { width: 100%; height: 50vw; -o-object-fit: cover; object-fit: cover; }
  .shop-guide .media-primary .catch { font-size: calc(2rem + ((1vw - 0.6rem) * 0.8333)); }
  .shop-guide .media-primary .catch span { font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); }
  .shop-guide .media-primary table { margin: 2vw auto; } }

.map-nishimeya { margin: 4vw auto; width: 90vw; }

.map-nishimeya .media-primary .catch { font-family: noto-sans-cjk-jp, sans-serif; font-size: calc(3.875rem + ((1vw - 0.325rem) * 1.8182)); line-height: 1.4; font-weight: bold; }

.image-photo ul { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.image-photo li { width: 50%; height: 40vw; }

.image-photo li img { width: 100%; height: 40vw; -o-object-fit: cover; object-fit: cover; }

@media screen and (min-width: 520px), (orientation: landscape) { .image-photo { height: 50vw; }
  .image-photo ul { position: relative; }
  .image-photo li.photo01 { position: absolute; top: 0; left: 0; width: 40%; height: 50vw; }
  .image-photo li.photo01 img { height: 50vw; }
  .image-photo li.photo02 { position: absolute; top: 0; left: 40%; width: 30%; height: 25vw; }
  .image-photo li.photo03 { position: absolute; top: 0; left: 70%; width: 30%; height: 25vw; }
  .image-photo li.photo04 { position: absolute; top: 25vw; left: 40%; width: 60%; height: 25vw; }
  .image-photo li.photo02 img, .image-photo li.photo03 img, .image-photo li.photo04 img { height: 25vw; } }

.footer-map iframe { width: 100%; height: 60vw; }

.footer-map .text { margin: 8vw auto; width: 90vw; }

.footer-map .text p { text-align: center; }

.footer-map .text table { margin: 2vw auto; }

.footer-map .text dt { margin: 0 4vw 3vw 4vw; padding-bottom: 3vw; border-bottom: 0.3vw dotted #cc9d4d; line-height: 1; font-size: 4vw; font-family: tbudmincho-std, sans-serif; font-weight: normal; text-decoration: none; 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; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.footer-map .text dt img { width: 5vw; }

.footer-map .text dd { text-align: center; font-size: calc(1.125rem + ((1vw - 0.325rem) * 1.3636)); }

@media screen and (min-width: 520px), (orientation: landscape) { .footer-map { margin: 0; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -webkit-box-align: center; -ms-flex-align: center; align-items: center; width: 100%; }
  .footer-map iframe { width: 50%; height: 50vw; }
  .footer-map .text { margin: 0; padding: 0 4vw; width: 50%; }
  .footer-map .text table { margin: 1vw auto; }
  .footer-map .text dt { margin: 0 0 2vw 0; padding-bottom: 2vw; font-size: 2vw; }
  .footer-map .text dt img { width: 2.0vw; }
  .footer-map .text dd { font-size: calc(1.25rem + ((1vw - 0.6rem) * 0.625)); } }
