@charset "UTF-8";
*, *::before, *::after { box-sizing: border-box; }

body { color: #32465a; background: #f5f5f5; font-size: 1.1vw; letter-spacing: .1em; font-family: 'Noto Serif JP', Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif; font-feature-settings: "palt"; }
@media screen and (max-width: 519px) { body { font-size: 2.2vw; } }

_:lang(x)::-ms-backdrop, .selector { font-family: "Segoe UI", Meiryo, sans-serif; }

.fnt-CG { font-family: 'Cormorant Garamond', serif; }

.fnt-NS4 { font-family: 'Noto Sans JP', sans-serif; font-weight: 400; }

.fnt-NS5 { font-family: 'Noto Sans JP', sans-serif; font-weight: 500; }

p { line-height: 1.8; }

img { border: 0; vertical-align: top; }

input, select { position: relative; top: 1px; }

table, th, td { border-collapse: collapse; border-spacing: 0; }

ul, li { list-style: none; }

a:link, a:visited { color: #32465a; text-decoration: none; transition: opacity 0.5s; }
a:hover, a:active { opacity: .6; }

#cover { width: 100%; height: 100%; position: fixed; background: #f5f5f5; top: 0; left: 0; z-index: 10000; }

#loader { opacity: 0; position: absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; width: 300px; height: 250px; }
#loader img { width: 100%; height: auto; }
@media screen and (max-width: 519px) { #loader { width: 210px; height: 175px; } }

#wrapper { position: relative; overflow: hidden; }

#page-top { position: fixed; bottom: 20px; right: 20px; z-index: 9000; width: 40px; opacity: .8; }
#page-top img { width: 100%; height: auto; }

.dd520 { display: none; }
@media screen and (max-width: 519px) { .dd520 { display: block !important; } }

@media screen and (max-width: 519px) { .nn520 { display: none !important; } }

.fadeinS, .fadein1, .fadein2, .fadein3, .fadein4, .fadein5, .fadein6, .fadein7, .fadein8, .fadein9, .fadein10, .fadein11, .fadein12, .fadeinF { opacity: 0; transform: translateY(30px); transition: opacity 1s ease-in, transform 1s ease-out; }
.fadeinS.active, .fadeinS.active, .fadein1.active, .fadein1.active, .fadein2.active, .fadein2.active, .fadein3.active, .fadein3.active, .fadein4.active, .fadein4.active, .fadein5.active, .fadein5.active, .fadein6.active, .fadein6.active, .fadein7.active, .fadein7.active, .fadein8.active, .fadein8.active, .fadein9.active, .fadein9.active, .fadein10.active, .fadein10.active, .fadein11.active, .fadein11.active, .fadein12.active, .fadein12.active, .fadeinF.active, .fadeinF.active { opacity: 1; transform: translateY(0); }

#header { overflow: hidden; position: fixed; z-index: 900; display: flex; justify-content: space-between; width: 100%; padding: .8em 1.4em; }
@media screen and (max-width: 519px) { #header { padding: 1.6em 2.4em; background: #fff; } }
#header h1 { position: relative; width: 10em; }
@media screen and (max-width: 519px) { #header h1 { width: 12em; } }
#header h1 img { width: 100%; height: auto; }
#header nav .gMenu { position: relative; }
@media screen and (max-width: 519px) { #header nav .gMenu { position: fixed; display: block; top: 0; left: 0; width: 100%; margin: 0 auto; z-index: 999; opacity: 0; height: 0; max-height: 0; overflow: hidden; transition: max-height 0s, opacity .4s; }
  #header nav .gMenu.active { opacity: 1; height: 100%; max-height: 100%; background: rgba(255, 255, 255, 0.8); } }
#header nav .gMenu ul { position: relative; display: flex; width: 100%; margin-right: 1em; }
@media screen and (max-width: 519px) { #header nav .gMenu ul { display: block; text-align: center; left: 50%; top: 50%; transform: translateX(-50%) translateY(-50%); } }
#header nav .gMenu ul li { padding-top: .8em; padding-left: 2em; }
@media screen and (max-width: 519px) { #header nav .gMenu ul li { flex: none; width: 100%; padding-left: 0; padding-top: 3em; } }
#header nav .gMenu ul li a { position: relative; display: block; font-size: 90%; }
@media screen and (max-width: 519px) { #header nav .gMenu ul li a { margin: 0 auto; width: 74%; font-size: 200%; padding: 1em 0; border: 1px solid #98a2ac; border-radius: .2em; background: rgba(255, 255, 255, 0.5); } }
#header nav .gMenu ul li a.lk { padding-right: 2em; }
@media screen and (max-width: 519px) { #header nav .gMenu ul li a.lk { padding-right: 0; } }
#header nav .gMenu ul li a.lk::after { content: ""; position: absolute; right: 1em; top: 50%; transform: translateY(-40%) rotate(45deg); width: .5em; height: .5em; border: 1px solid #32465a; border-left: transparent; border-bottom: transparent; }
#header nav .gMenu ul li a.ct { padding-left: 2.8em; }
@media screen and (max-width: 519px) { #header nav .gMenu ul li a.ct { padding-left: 0; } }
#header nav .gMenu ul li a.ct::after { content: ""; position: absolute; left: 1em; top: 50%; transform: translateY(-50%); width: 1.3em; height: 1.3em; background: url("../img/icn_cart.svg") no-repeat center center/contain; }
@media screen and (max-width: 519px) { #header nav .gMenu ul li a.ct::after { left: 3em; } }
#header nav .menu-trigger { display: none; }
@media screen and (max-width: 519px) { #header nav .menu-trigger { display: inline-block; transition: all .4s; position: fixed; z-index: 9999; width: 36px; height: 30px; top: 19px; right: 20px; }
  #header nav .menu-trigger span { display: inline-block; transition: all .4s; box-sizing: border-box; position: absolute; width: 60%; height: 2px; left: 50%; transform: translateX(-50%); background-color: #32465a; border-radius: 2px; }
  #header nav .menu-trigger span:nth-of-type(1) { top: 0; }
  #header nav .menu-trigger span:nth-of-type(2) { top: 6px; }
  #header nav .menu-trigger span:nth-of-type(3) { top: 12px; }
  #header nav .menu-trigger small { position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); font-size: 150%; letter-spacing: normal; } }
@media screen and (max-width: 519px) { #header nav .menu-trigger.active span:nth-of-type(1) { transform: translateY(6px) translateX(-50%) rotate(-45deg); }
  #header nav .menu-trigger.active span:nth-of-type(2) { opacity: 0; }
  #header nav .menu-trigger.active span:nth-of-type(3) { transform: translateY(-6px) translateX(-50%) rotate(45deg); } }

main section { position: relative; }
main section h2 { display: block; font-family: 'Cormorant Garamond', serif; font-size: 290%; letter-spacing: .04em; width: 75%; margin: 0 auto 1.8em; text-align: right; }
main section h2.left { text-align: left; }
@media screen and (max-width: 519px) { main section h2 { font-size: 380%; width: 86%; text-align: left; margin: 0 auto 1.4em; } }
main section h2 span { display: inline-block; }
main section h2 small { position: relative; display: inline-block; font-size: 55%; padding-left: .9em; margin-left: .4em; }
main section h2 small::before { content: ""; position: absolute; left: 0; top: .15em; height: .8em; width: 1px; background: #32465a; }
main section#topMainSct { overflow: hidden; position: relative; background: url("../img/bg_p1.webp") no-repeat center 16em/contain; }
@media screen and (max-width: 1380px) { main section#topMainSct { background-size: cover; } }
@media screen and (max-width: 519px) { main section#topMainSct { background: url("../img/bg_p1-sp.webp") no-repeat center 41em/100% auto; } }
main section#topMainSct .copyB { position: relative; z-index: 5; display: block; width: 75%; margin: 0 auto 10.5em; padding-top: 13em; }
@media screen and (max-width: 519px) { main section#topMainSct .copyB { width: 86%; margin: 0 auto 35em; padding-top: 14em; margin: 0 auto 40em; padding-top: 12em; } }
main section#topMainSct .copyB .eCopy { display: block; font-size: 390%; line-height: 1.3; }
@media screen and (max-width: 519px) { main section#topMainSct .copyB .eCopy { font-size: 520%; margin-bottom: .15em; } }
main section#topMainSct .copyB .jCopy { font-size: 115%; }
@media screen and (max-width: 519px) { main section#topMainSct .copyB .jCopy { font-size: 210%; letter-spacing: .15em; } }
main section#topMainSct .subCopy { display: block; width: 75%; margin: 0 auto 6em; color: #aa8c64; font-size: 110%; letter-spacing: .15em; line-height: 2; }
@media screen and (max-width: 519px) { main section#topMainSct .subCopy { width: 86%; font-size: 180%; } }
main section#topMainSct .subCopy span { display: block; }
main section#topMainSct .imgB { position: absolute; z-index: 1; top: 10em; left: 50%; transform: translateX(-6%); width: 41em; height: auto; }
@media screen and (max-width: 519px) { main section#topMainSct .imgB { top: 32.5em; left: 5%; transform: none; width: 95%; overflow: hidden; } }
main section#topMainSct .imgB img { display: block; width: 110%; height: auto; }
main section#topMainSct .scrollB { position: relative; z-index: 100; text-align: center; }
@media screen and (max-width: 519px) { main section#topMainSct .scrollB { display: none; } }
main section#topMainSct .scrollB a { position: relative; display: inline-block; font-size: 90%; padding-bottom: 3em; }
main section#topMainSct .scrollB a::after { content: ""; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 1px; height: 2.5em; background: #32465a; }
main section#topMainSct .infoB { position: absolute; z-index: 500; top: 26.5vw; left: 9%; }
@media screen and (max-width: 519px) { main section#topMainSct .infoB { top: 20vw; left: 50%; transform: translateX(-50%); } }
main section#topMainSct .infoB a { display: inline-block; border: 2px solid red; color: red; padding: .5em .6em; border-radius: .5em; background: #fff; }
@media screen and (max-width: 519px) { main section#topMainSct .infoB a { white-space: nowrap; font-size: 120%; font-weight: 500; letter-spacing: 0; } }
main section#topMainSct #topAboutBox { position: relative; padding: 5em 0 12em; }
@media screen and (max-width: 519px) { main section#topMainSct #topAboutBox { padding-bottom: 24em; } }
main section#topMainSct #topAboutBox h2 { position: relative; }
main section#topMainSct #topAboutBox .box { position: relative; display: flex; justify-content: center; flex-direction: row-reverse; align-items: flex-start; }
@media screen and (max-width: 519px) { main section#topMainSct #topAboutBox .box { display: block; text-align: center; } }
main section#topMainSct #topAboutBox .box .head { position: relative; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; margin-left: 4.5em; }
@media screen and (max-width: 519px) { main section#topMainSct #topAboutBox .box .head { text-align: left; margin-left: inherit; left: 50%; transform: translateX(-54%); } }
main section#topMainSct #topAboutBox .box .head > span { display: inline-block; font-size: 195%; white-space: nowrap; background: #fff; line-height: 1.4; letter-spacing: .12em; padding: .5em .2em; margin-left: .5em; }
@media screen and (max-width: 519px) { main section#topMainSct #topAboutBox .box .head > span { font-size: 270%; margin-left: .7em; } }
main section#topMainSct #topAboutBox .box .head > span .dot { display: inline-block; position: relative; letter-spacing: -.4em; }
main section#topMainSct #topAboutBox .box .txt { position: relative; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 120%; padding-top: 2.8em; line-height: 2.8; letter-spacing: .12em; }
@media screen and (max-width: 519px) { main section#topMainSct #topAboutBox .box .txt { display: inline-block; writing-mode: horizontal-tb; -ms-writing-mode: horizontal-tb; text-align: left; font-size: 170%; line-height: 2; letter-spacing: .1em; } }
main section#topMainSct #topAboutBox .box .txt span { display: block; }
main section#topLocationSct { top: -7em; margin-bottom: -33.5em; color: #fff; }
@media screen and (max-width: 519px) { main section#topLocationSct { margin-bottom: -15.5em; } }
main section#topLocationSct .box1 { position: relative; z-index: 1; }
@media screen and (max-width: 519px) { main section#topLocationSct .box1 { overflow: hidden; padding-top: 8em; } }
main section#topLocationSct .box1 .masked-element1 { position: relative; z-index: 0; width: 100%; height: auto; mask-image: url("../img/mask1.png"); -webkit-mask-image: url("../img/mask1.png"); mask-mode: alpha; mask-size: 100%; -webkit-mask-size: 100%; mask-position: center top; -webkit-mask-position: center top; mask-repeat: no-repeat; -webkit-mask-repeat: no-repeat; }
@media screen and (max-width: 519px) { main section#topLocationSct .box1 .masked-element1 { width: 300%; left: -100%; mask-image: url("../img/mask1-sp.png"); -webkit-mask-image: url("../img/mask1-sp.png"); mask-size: 34%; -webkit-mask-size: 34%; } }
main section#topLocationSct .box1 h2 { position: absolute; z-index: 5; top: 4em; left: 50%; transform: translateX(-50%); }
@media screen and (max-width: 519px) { main section#topLocationSct .box1 h2 { top: 0; left: 7%; transform: none; color: #32465a; } }
main section#topLocationSct .box1 .head { position: absolute; z-index: 5; top: 18.5em; left: 50%; transform: translateX(-235%); -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
@media screen and (max-width: 519px) { main section#topLocationSct .box1 .head { transform: translateX(-54%); } }
main section#topLocationSct .box1 .head > span { color: #32465a; background: #fff; white-space: nowrap; display: inline-block; font-size: 195%; background: #fff; line-height: 1.4; letter-spacing: .12em; padding: .5em .2em; margin-left: .5em; }
@media screen and (max-width: 519px) { main section#topLocationSct .box1 .head > span { font-size: 270%; margin-left: .7em; } }
main section#topLocationSct .box1 .head > span .dot { display: inline-block; position: relative; letter-spacing: -.4em; }
main section#topLocationSct .box1 .txtB { position: absolute; z-index: 5; top: 27.5em; left: 50%; transform: translateX(15%); }
@media screen and (max-width: 519px) { main section#topLocationSct .box1 .txtB { top: 55em; left: 7%; transform: none; } }
main section#topLocationSct .box1 .txtB .txt { font-size: 120%; }
@media screen and (max-width: 519px) { main section#topLocationSct .box1 .txtB .txt { display: inline-block; writing-mode: horizontal-tb; -ms-writing-mode: horizontal-tb; text-align: left; font-size: 170%; line-height: 2; letter-spacing: .1em; } }
main section#topLocationSct .box1 .txtB .txt span { display: block; }
main section#topLocationSct .box2 { position: relative; top: -26.5em; z-index: 5; }
@media screen and (max-width: 519px) { main section#topLocationSct .box2 { top: -8.5em; } }
main section#topLocationSct .box2 .masked-element2 { position: relative; z-index: 0; width: 100%; height: auto; mask-image: url("../img/mask2.png"); -webkit-mask-image: url("../img/mask2.png"); mask-mode: alpha; mask-size: 100%; -webkit-mask-size: 100%; mask-position: center bottom; -webkit-mask-position: center bottom; mask-repeat: no-repeat; -webkit-mask-repeat: no-repeat; }
@media screen and (max-width: 519px) { main section#topLocationSct .box2 .masked-element2 { width: 200%; left: -46%; mask-image: url("../img/mask2-sp.png"); -webkit-mask-image: url("../img/mask2-sp.png"); mask-size: 51%; -webkit-mask-size: 51%; mask-position: 46% top; -webkit-mask-position: 46% top; } }
main section#topLocationSct .box2 .txt { position: absolute; z-index: 5; bottom: 10em; left: 50%; transform: translateX(18%); font-size: 120%; line-height: 2; }
@media screen and (max-width: 519px) { main section#topLocationSct .box2 .txt { bottom: 22.5em; left: 8%; width: 86%; transform: none; display: inline-block; writing-mode: horizontal-tb; -ms-writing-mode: horizontal-tb; text-align: left; font-size: 165%; letter-spacing: .1em; } }
main section#topLocationSct .box2 .txt span { display: block; }
@media screen and (max-width: 519px) { main section#topLocationSct .box2 .txt span { display: inline; } }
main section#topSpecialtySct { z-index: 5; top: -6em; margin-bottom: -6em; background: url("../img/bg_p2.webp") no-repeat center top/cover; padding: 11.5em 0 16em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct { top: -10em; margin-bottom: -10em; background: url("../img/bg_p2-sp.webp") no-repeat center top/cover; } }
main section#topSpecialtySct h2 { margin-bottom: 0; }
@media screen and (max-width: 519px) { main section#topSpecialtySct h2 { margin-bottom: 1.8em; } }
main section#topSpecialtySct .head1 { position: relative; left: 50%; transform: translateX(-235%); -ms-writing-mode: tb-rl; writing-mode: vertical-rl; margin-bottom: 4.5em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .head1 { transform: translateX(-54%); margin-bottom: 7em; } }
main section#topSpecialtySct .head1 > span { color: #32465a; background: #fff; white-space: nowrap; display: inline-block; font-size: 195%; background: #fff; line-height: 1.4; letter-spacing: .12em; padding: .5em .2em; margin-left: .5em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .head1 > span { font-size: 270%; margin-left: .7em; } }
main section#topSpecialtySct .txt1 { position: absolute; left: 50%; transform: translateX(15%) translateY(-143%); font-size: 120%; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .txt1 { top: 54em; left: 7%; width: 86%; transform: none; display: inline-block; writing-mode: horizontal-tb; -ms-writing-mode: horizontal-tb; text-align: left; font-size: 170%; line-height: 2; letter-spacing: .1em; } }
main section#topSpecialtySct .txt1 span { display: block; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .txt1 span { display: inline; } }
main section#topSpecialtySct .slider1 { position: relative; width: 74%; left: 26%; margin-bottom: 9em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .slider1 { width: 86%; left: inherit; margin: 0 auto 34em; } }
main section#topSpecialtySct .slider1 .pBox img { object-fit: cover; object-position: center center; width: 100%; height: 30em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .slider1 .pBox img { height: 27em; } }
main section#topSpecialtySct .head2 { position: relative; left: 50%; transform: translateX(125%); -ms-writing-mode: tb-rl; writing-mode: vertical-rl; margin-bottom: 4em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .head2 { transform: translateX(-54%); margin-bottom: 4em; } }
main section#topSpecialtySct .head2 > span { color: #32465a; background: #fff; white-space: nowrap; display: inline-block; font-size: 195%; background: #fff; line-height: 1.4; letter-spacing: .12em; padding: .5em .2em; margin-left: .5em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .head2 > span { font-size: 270%; margin-left: .7em; } }
main section#topSpecialtySct .txt2 { position: absolute; left: 50%; transform: translateX(-100%) translateY(-138%); font-size: 120%; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .txt2 { bottom: 12em; left: 7%; width: 86%; transform: none; display: inline-block; writing-mode: horizontal-tb; -ms-writing-mode: horizontal-tb; text-align: left; font-size: 170%; line-height: 2; letter-spacing: .1em; } }
main section#topSpecialtySct .txt2 span { display: block; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .txt2 span { display: inline; } }
main section#topSpecialtySct .slider2 { position: relative; width: 74%; margin-bottom: 9em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .slider2 { width: 86%; left: inherit; margin: 0 auto 30em; } }
main section#topSpecialtySct .slider2 .pBox img { object-fit: cover; object-position: center center; width: 100%; height: 40em; }
@media screen and (max-width: 519px) { main section#topSpecialtySct .slider2 .pBox img { height: 27em; } }
main section#topItemsSct { z-index: 10; top: -3em; margin-bottom: -3em; }
@media screen and (max-width: 519px) { main section#topItemsSct { top: -8em; margin-bottom: -8em; } }
main section#topItemsSct .itemL { position: relative; margin: 0 auto 8em; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL { width: 100%; margin-bottom: 12em; } }
main section#topItemsSct .itemL li { position: relative; display: block; padding: 4em 0 10em 16%; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li { top: 0; margin-bottom: 4em; padding: 10em 0 0; font-size: 150%; } }
main section#topItemsSct .itemL li:nth-child(1) { background: url("../img/top_sp_pic1.webp") no-repeat 104% top/52%; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li:nth-child(1) { background-position: 8em top; background-size: 78%; } }
main section#topItemsSct .itemL li:nth-child(2) { background: url("../img/top_sp_pic2.webp") no-repeat -4% center/54%; padding: 4em 0 8em 56%; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li:nth-child(2) { background-position: 8em top; background-size: 78%; padding-left: 0; padding: 10em 0 2em 0; } }
main section#topItemsSct .itemL li:nth-child(3) { background: url("../img/top_sp_pic3.webp") no-repeat 104% top/52%; padding: 6em 0 10em 16%; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li:nth-child(3) { background-position: 8em top; background-size: 78%; padding: 10em 0 0; } }
main section#topItemsSct .itemL li:nth-child(3) .copy { width: 28em; }
main section#topItemsSct .itemL li:nth-child(4) { background: url("../img/top_sp_pic5.webp") no-repeat -4% top/54%; padding: 6em 0 7em 56%; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li:nth-child(4) { background-position: 8em top; background-size: 78%; padding: 14em 0 0 0; } }
main section#topItemsSct .itemL li:nth-child(5) { background: url("../img/top_sp_pic6.webp") no-repeat 104% top/52%; padding: 8em 0 10em 16%; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li:nth-child(5) { background-position: 8em top; background-size: 78%; padding: 10em 0 0; } }
main section#topItemsSct .itemL li:nth-child(5) .copy { width: 28em; }
main section#topItemsSct .itemL li:nth-child(6) { background: url("../img/top_sp_pic4b.webp") no-repeat -4% top/54%; padding: 4em 0 10em 56%; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li:nth-child(6) { background-position: 8em top; background-size: 78%; padding: 14em 0 0; } }
main section#topItemsSct .itemL li:nth-child(6) .icnB { position: absolute; top: 4em; right: 7%; width: 8vw; height: 8vw; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li:nth-child(6) .icnB { top: 16em; width: 22vw; height: 22vw; } }
main section#topItemsSct .itemL li:nth-child(6) .icnB img { width: 100%; height: auto; }
main section#topItemsSct .itemL li .no { display: block; font-size: 320%; line-height: 1.5; letter-spacing: .1em; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .no { font-size: 340%; line-height: 1.6; padding-left: 7%; } }
main section#topItemsSct .itemL li .name { display: block; font-size: 160%; line-height: 1.4; letter-spacing: .13em; margin-bottom: 1em; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .name { font-size: 180%; line-height: 1.5; padding-left: 7%; } }
main section#topItemsSct .itemL li .copy { display: block; color: #98a2ac; letter-spacing: .13em; margin-bottom: 3em; width: 33em; text-align: justify; text-justify: inter-ideograph; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .copy { padding: 0 7%; width: 100%; font-size: 110%; margin-bottom: 2em; } }
main section#topItemsSct .itemL li .btnB { position: relative; display: flex; flex-wrap: wrap; width: 31vw; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .btnB { width: 86%; margin: 0 auto; justify-content: space-between; } }
main section#topItemsSct .itemL li .btnB.long { width: 36vw; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .btnB.long { width: 86%; } }
main section#topItemsSct .itemL li .btnB.long a { font-size: 90%; width: 47%; margin: 0 3% 1.2em 0; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .btnB.long a { width: 100%; margin: 0 0 1.5em 0; font-size: 110%; } }
main section#topItemsSct .itemL li .btnB.long a.out { position: relative; pointer-events: none; background: #ddd; }
main section#topItemsSct .itemL li .btnB.long a .endTxt { position: absolute; color: #c00; font-weight: 700; font-size: 120%; font-weight: 700; transform: rotate(-20deg); top: -8%; left: -3%; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .btnB.long a .endTxt { font-size: 140%; top: 0; left: -2%; } }
main section#topItemsSct .itemL li .btnB.long2 { width: 32vw; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .btnB.long2 { width: 86%; } }
main section#topItemsSct .itemL li .btnB.long2 a { font-size: 90%; width: 47%; margin: 0 3% 1.2em 0; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .btnB.long2 a { width: 100%; margin: 0 0 1.5em 0; font-size: 110%; } }
main section#topItemsSct .itemL li .btnB a { position: relative; display: inline-block; color: #fff; background: #aa8c64; padding: 1em 0; border-radius: 2em; box-shadow: 5px 5px 15px 5px rgba(50, 70, 90, 0.1); width: 45%; text-align: center; margin: 0 5% 1em 0; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .btnB a { display: block; text-align: center; font-size: 110%; letter-spacing: .15em; padding: 1.3em 0; width: 48%; margin: 0 0 1.3em 0; } }
main section#topItemsSct .itemL li .btnB a::after { content: ""; position: absolute; right: 1.5em; top: 50%; transform: translateY(-50%) rotate(45deg); width: .5em; height: .5em; border: 2px solid #fff; border-left: transparent; border-bottom: transparent; }
main section#topItemsSct .itemL li .suspension { position: relative; display: block; border: 2px solid #c00; width: 80%; margin-top: 1em; }
@media screen and (max-width: 519px) { main section#topItemsSct .itemL li .suspension { width: 90%; margin: 1em auto 0; } }
main section#topItemsSct .itemL li .suspension .ttl { background: #c00; color: #fff; padding: .1em .5em; }
main section#topItemsSct .itemL li .suspension .txt { display: block; font-size: 80%; line-height: 1.5; letter-spacing: .05em; padding: .5em .7em; }
main section#topSozaiSct .box1 { position: relative; z-index: 1; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box1 { margin-bottom: 2em; } }
main section#topSozaiSct .box1 .masked-element3 { position: relative; z-index: 0; width: 100%; height: auto; mask-image: url("../img/mask3.png"); -webkit-mask-image: url("../img/mask3.png"); mask-mode: alpha; mask-size: 100%; -webkit-mask-size: 100%; mask-position: center top; -webkit-mask-position: center top; mask-repeat: no-repeat; -webkit-mask-repeat: no-repeat; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box1 .masked-element3 { display: none; } }
main section#topSozaiSct .box1 .masked-element3-sp { display: none; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box1 .masked-element3-sp { display: block; position: relative; z-index: 0; width: 100%; height: auto; mask-image: url("../img/mask3-sp.png"); -webkit-mask-image: url("../img/mask3-sp.png"); mask-mode: alpha; mask-size: 100%; -webkit-mask-size: 100%; mask-position: center top; -webkit-mask-position: center top; mask-repeat: no-repeat; -webkit-mask-repeat: no-repeat; } }
main section#topSozaiSct .box1 .head { position: absolute; z-index: 5; top: 12.2em; left: 50%; transform: translateX(7%); -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box1 .head { top: 7.5em; transform: translateX(-56%); margin-bottom: 7em; } }
main section#topSozaiSct .box1 .head > span { color: #32465a; background: #fff; white-space: nowrap; display: inline-block; font-size: 195%; background: #fff; line-height: 1.4; letter-spacing: .12em; padding: .5em .2em; margin-left: .5em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box1 .head > span { font-size: 270%; margin-left: .7em; } }
main section#topSozaiSct .box1 .head > span .dot { display: inline-block; position: relative; letter-spacing: -.4em; }
main section#topSozaiSct .box1 .txtB { position: absolute; z-index: 5; top: 50%; left: 0; transform: translateY(-50%); background: rgba(255, 255, 255, 0.4); padding: 3em 2em 3em 8em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box1 .txtB { left: 7%; top: inherit; bottom: 9.6em; width: 86%; transform: none; display: inline-block; text-align: center; padding: 2em 0 2em .2em; background: rgba(255, 255, 255, 0.6); } }
main section#topSozaiSct .box1 .txtB .txt span { display: block; line-height: 2; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box1 .txtB .txt span { font-size: 120%; letter-spacing: .1em; } }
main section#topSozaiSct .box2 { position: relative; width: 75%; margin: 0 auto 2em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 { width: 86%; } }
main section#topSozaiSct .box2 .headB { position: relative; margin-bottom: 5em; }
main section#topSozaiSct .box2 .headB a { position: relative; display: block; color: #fff; padding: 4em 3.8em; border-radius: 1em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .headB a { padding: 20em 3.3em 3em; border-radius: 2em; } }
main section#topSozaiSct .box2 .headB a .ttl { display: block; font-size: 155%; letter-spacing: .15em; margin-bottom: 1em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .headB a .ttl { font-size: 270%; line-height: 1.5; margin-bottom: .8em; } }
main section#topSozaiSct .box2 .headB a .copy { display: block; font-size: 95%; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .headB a .copy { font-size: 150%; text-align: justify; text-justify: inter-ideograph; } }
main section#topSozaiSct .box2 .headB a.recommend { background: url("../img/top_item_head1.jpg") no-repeat center center/cover; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .headB a.recommend { background-image: url("../img/top_item_head1-sp.jpg"); } }
main section#topSozaiSct .box2 .headB a.set { background: url("../img/top_item_head2.jpg") no-repeat center center/cover; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .headB a.set { background-image: url("../img/top_item_head2-sp.jpg"); } }
main section#topSozaiSct .box2 .headB a.wake { background: url("../img/top_item_head3.jpg") no-repeat center center/cover; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .headB a.wake { background-image: url("../img/top_item_head3-sp.jpg"); } }
main section#topSozaiSct .box2 .sozaiL { position: relative; display: flex; flex-wrap: wrap; width: 96%; margin: 0 auto 3em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL { width: 100%; } }
main section#topSozaiSct .box2 .sozaiL li { position: relative; display: block; width: 45%; padding: 23em 0 0 1em; margin: 0 10% 6em 0; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li { width: 100%; font-size: 150%; padding: 18em 0 0; margin: 0 auto 8em; } }
main section#topSozaiSct .box2 .sozaiL li:nth-child(2n) { margin-right: 0; }
main section#topSozaiSct .box2 .sozaiL li:nth-child(1) { background: url("../img/top_sozai_pic06.webp") no-repeat left top/100%; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li:nth-child(1) { background-size: 90%; background-position: center top; } }
main section#topSozaiSct .box2 .sozaiL li:nth-child(2) { background: url("../img/top_sozai_pic07.webp") no-repeat left top/100%; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li:nth-child(2) { background-size: 90%; background-position: center top; } }
main section#topSozaiSct .box2 .sozaiL li:nth-child(3) { background: url("../img/top_sozai_pic08.webp") no-repeat left top/100%; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li:nth-child(3) { background-size: 90%; background-position: center top; } }
main section#topSozaiSct .box2 .sozaiL li:nth-child(4) { background: url("../img/top_sozai_pic09.webp") no-repeat left top/100%; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li:nth-child(4) { background-size: 90%; background-position: center top; } }
main section#topSozaiSct .box2 .sozaiL li:nth-child(5) { background: url("../img/top_sozai_pic10.webp") no-repeat left top/100%; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li:nth-child(5) { background-size: 90%; background-position: center top; } }
main section#topSozaiSct .box2 .sozaiL li .no { display: block; font-size: 320%; line-height: 1.5; letter-spacing: .1em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li .no { font-size: 340%; line-height: 1.6; } }
main section#topSozaiSct .box2 .sozaiL li .name { display: block; font-size: 160%; line-height: 1.4; letter-spacing: .13em; margin-bottom: 1em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li .name { font-size: 180%; line-height: 1.5; } }
main section#topSozaiSct .box2 .sozaiL li .copy { display: block; color: #98a2ac; font-size: 80%; letter-spacing: .13em; width: 80%; text-align: justify; text-justify: inter-ideograph; margin-bottom: 3em; }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li .copy { width: 100%; font-size: 110%; margin-bottom: 2em; } }
main section#topSozaiSct .box2 .sozaiL li .btnB { display: flex; flex-wrap: wrap; }
main section#topSozaiSct .box2 .sozaiL li .btnB a { position: relative; display: block; color: #fff; background: #aa8c64; font-size: 90%; width: 47%; margin: 0 3% 1.2em 0; padding: 1em 0; text-align: center; border-radius: 2em; box-shadow: 5px 5px 15px 5px rgba(50, 70, 90, 0.1); }
@media screen and (max-width: 519px) { main section#topSozaiSct .box2 .sozaiL li .btnB a { display: block; text-align: center; font-size: 110%; letter-spacing: .15em; padding: 1.3em 0; } }
main section#topSozaiSct .box2 .sozaiL li .btnB a.ls0 { letter-spacing: 0; }
main section#topSozaiSct .box2 .sozaiL li .btnB a::after { content: ""; position: absolute; right: 1.5em; top: 50%; transform: translateY(-50%) rotate(45deg); width: .5em; height: .5em; border: 2px solid #fff; border-left: transparent; border-bottom: transparent; }
main section#topShopSct { padding: 5em 0 7em; background: url("../img/bg_p4.webp") no-repeat center 21vw/100% auto; }
main section#topShopSct .nanbaB { position: relative; text-align: center; margin: 7em auto 2em; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB { margin: 0 auto 4em; } }
main section#topShopSct .nanbaB .logo { display: block; margin: 0 auto 6em; width: 33vw; height: auto; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB .logo { width: 66vw; } }
main section#topShopSct .nanbaB .txt { display: block; margin-bottom: 6em; font-size: 120%; line-height: 2; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB .txt { font-size: 170%; letter-spacing: .1em; margin-bottom: 4em; } }
main section#topShopSct .nanbaB .txt span { display: block; }
main section#topShopSct .nanbaB .picB { position: relative; display: flex; margin-bottom: 4em; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB .picB { display: block; } }
main section#topShopSct .nanbaB .picB div { position: relative; width: 50%; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB .picB div { width: 100%; } }
main section#topShopSct .nanbaB .picB div img { width: 100%; height: auto; }
main section#topShopSct .nanbaB .picB div p { position: absolute; left: 0; bottom: 0; width: 100%; color: #fff; font-size: 130%; text-align: left; padding: .5em 1em .5em 2.5em; }
main section#topShopSct .nanbaB .picB div p.s1 { background: rgba(170, 140, 100, 0.85); }
main section#topShopSct .nanbaB .picB div p.s2 { background: rgba(28, 39, 108, 0.85); }
main section#topShopSct .nanbaB .btnB { position: relative; margin-bottom: 10em; }
main section#topShopSct .nanbaB .btnB a { position: relative; display: inline-block; color: #fff; letter-spacing: .15em; padding: 1em 4em; border: 1px solid #1c276c; background: #1c276c; border-radius: 2em; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB .btnB a { font-size: 140%; padding: 1.2em 4.5em; } }
main section#topShopSct .nanbaB .btnB a::after { content: ""; position: absolute; right: 1.5em; top: 50%; transform: translateY(-50%) rotate(45deg); width: .5em; height: .5em; border: 2px solid #fff; border-left: transparent; border-bottom: transparent; }
main section#topShopSct .nanbaB .shopListT { display: block; font-size: 130%; margin-bottom: 3em; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB .shopListT { font-size: 160%; } }
main section#topShopSct .nanbaB .shopListB { display: flex; flex-wrap: wrap; width: 50%; margin: 0 auto 2em; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB .shopListB { width: 80%; } }
main section#topShopSct .nanbaB .shopListB li { width: 50%; text-align: left; font-size: 120%; line-height: 2; padding-left: 4em; }
@media screen and (max-width: 519px) { main section#topShopSct .nanbaB .shopListB li { padding-left: 1em; } }
main section#topInforSct { padding: 5em 0 10.5em; background: url("../img/bg_p5.webp") no-repeat bottom/100% auto; }
@media screen and (max-width: 519px) { main section#topInforSct { background-image: url("../img/bg_p3-sp.webp"); } }
main section#topInforSct .box1 { padding-bottom: 5em; }
main section#topInforSct .box1 h2 { margin-bottom: .6em; }
main section#topInforSct .box1 .movieBox { position: relative; margin: 5em auto 10em; width: 50%; }
@media screen and (max-width: 519px) { main section#topInforSct .box1 .movieBox { width: 80%; } }
main section#topInforSct .box1 .movieBox iframe { width: 100%; height: auto; aspect-ratio: 16 / 9; }
main section#topInforSct .box1 .infoList { position: relative; width: 87.5%; background: #fff; margin-left: 12.5%; padding: 4.5em 11em 4.5em 5em; }
@media screen and (max-width: 519px) { main section#topInforSct .box1 .infoList { width: 93%; margin-left: 7%; padding: 4.5em 3.5em; } }
main section#topInforSct .box1 .infoList ul { border-top: 1px solid #c1c7cd; }
main section#topInforSct .box1 .infoList ul li { padding: 1.4em 3em; display: flex; justify-content: space-between; border-bottom: 1px solid #c1c7cd; }
@media screen and (max-width: 519px) { main section#topInforSct .box1 .infoList ul li { flex-wrap: wrap; padding: 1.5em; } }
main section#topInforSct .box1 .infoList ul li .date { display: block; position: relative; top: .25em; color: #98a2ac; font-size: 80%; padding-right: 2.5em; }
@media screen and (max-width: 519px) { main section#topInforSct .box1 .infoList ul li .date { width: 100%; font-size: 140%; letter-spacing: .1em; top: 0; padding-right: 0; } }
main section#topInforSct .box1 .infoList ul li .title { display: block; flex-grow: 2; }
@media screen and (max-width: 519px) { main section#topInforSct .box1 .infoList ul li .title { width: 100%; font-size: 180%; letter-spacing: .12em; line-height: 1.4; } }
main section#topInforSct .box1 .infoList ul li .item { display: block; }
main section#topInforSct .box1 .infoList ul li .item a { display: block; position: relative; top: .15em; color: #aa8c64; font-size: 90%; letter-spacing: .12em; }
main section#topInforSct .box2 { padding-top: 5em; background: url("../img/top_about_pic.jpg") no-repeat center 10.6em/100% auto; }
main section#topInforSct .box2 h2 { margin-bottom: 7.5em; }
@media screen and (max-width: 519px) { main section#topInforSct .box2 h2 { margin-bottom: 8em; } }
@media screen and (max-width: 519px) { main section#topInforSct .box2 { background-image: url("../img/top_about_pic-sp.jpg"); background-position: center 12em; } }
main section#topInforSct .box2 .deteil { position: relative; width: 87.5%; background: #fff url("../img/map.svg") no-repeat 92% bottom; background-size: auto 85%; padding: 4.5em 0 5em 12.5%; }
@media screen and (max-width: 519px) { main section#topInforSct .box2 .deteil { width: 93%; padding: 4em 0 35em 7%; background-size: 95% auto; background-position: 170% bottom; } }
main section#topInforSct .box2 .deteil .logo { display: block; width: 18em; height: auto; margin-bottom: 1.4em; }
@media screen and (max-width: 519px) { main section#topInforSct .box2 .deteil .logo { width: 85%; margin-bottom: 2em; } }
main section#topInforSct .box2 .deteil .info { display: block; font-size: 95%; line-height: 1.6; letter-spacing: .12em; margin-bottom: 1.7em; }
@media screen and (max-width: 519px) { main section#topInforSct .box2 .deteil .info { font-size: 150%; margin-bottom: 1.4em; } }
main section#topInforSct .box2 .deteil .btnB { position: relative; }
main section#topInforSct .box2 .deteil .btnB a { position: relative; display: inline-block; color: #aa8c64; letter-spacing: .15em; padding: 1em 3em; border: 1px solid #aa8c64; border-radius: 2em; }
@media screen and (max-width: 519px) { main section#topInforSct .box2 .deteil .btnB a { font-size: 140%; padding: 1.2em 4.5em; } }
main section#topInforSct .box2 .deteil .btnB a::after { content: ""; position: absolute; right: 1.5em; top: 50%; transform: translateY(-50%) rotate(45deg); width: .5em; height: .5em; border: 2px solid #aa8c64; border-left: transparent; border-bottom: transparent; }
main section#shopMainSct { overflow: hidden; position: relative; background: url("../img/bg_p1.webp") no-repeat center 36.5em/100%, url("../img/shop_mainpsd.webp") no-repeat center top/100%; }
@media screen and (max-width: 519px) { main section#shopMainSct { background: url("../img/bg_p3-sp.webp") no-repeat center 24.5em/100%, url("../img/shop_mainpsd.webp") no-repeat center top/115%; } }
main section#shopMainSct .copyB { position: relative; z-index: 5; display: block; width: 75%; margin: 0 auto 13em; padding-top: 14.8em; color: #fff; }
@media screen and (max-width: 519px) { main section#shopMainSct .copyB { width: 86%; margin: 0 auto 1.5em; padding-top: 14em; } }
main section#shopMainSct .copyB .eCopy { display: block; font-size: 390%; line-height: 1.3; }
@media screen and (max-width: 519px) { main section#shopMainSct .copyB .eCopy { font-size: 520%; margin-bottom: .15em; } }
main section#shopMainSct .copyB .jCopy { font-size: 135%; letter-spacing: .15em; margin-bottom: 2.3em; }
@media screen and (max-width: 519px) { main section#shopMainSct .copyB .jCopy { font-size: 210%; letter-spacing: .15em; margin-bottom: 5.5em; } }
main section#shopMainSct .copyB .subCopy { font-size: 125%; letter-spacing: .15em; }
@media screen and (max-width: 519px) { main section#shopMainSct .copyB .subCopy { white-space: nowrap; font-size: 160%; color: #32465a; } }
main section#shopMainSct #shopAboutBox { position: relative; padding: 5em 0 3em; }
main section#shopMainSct #shopAboutBox h2 { display: block; width: 30vw; margin: 0 auto 1em; }
@media screen and (max-width: 519px) { main section#shopMainSct #shopAboutBox h2 { width: 60vw; } }
main section#shopMainSct #shopAboutBox h2 img { width: 100%; height: auto; }
main section#shopMainSct #shopAboutBox .head { display: block; text-align: center; font-size: 190%; font-weight: 500; letter-spacing: .15em; padding-left: .8em; margin-bottom: 2em; }
main section#shopMainSct #shopAboutBox .picB { display: block; margin: 0 auto; width: 84%; }
main section#shopMainSct #shopAboutBox .picB img { width: 100%; height: auto; }
main section#shopOpenSct { overflow: hidden; background: url("../img/bg_p2.webp") no-repeat center -110vw/100%; padding: 3em 0 5em; text-align: center; }
@media screen and (max-width: 519px) { main section#shopOpenSct { background-position: center -40vw; } }
main section#shopOpenSct .inner { margin-bottom: 6em; }
main section#shopOpenSct .inner .ttl { display: block; font-size: 200%; letter-spacing: .15em; margin-bottom: 1.3em; }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner .ttl { font-size: 260%; margin-bottom: 1em; } }
main section#shopOpenSct .inner .txt { display: block; font-size: 120%; line-height: 2; margin-bottom: 2.5em; }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner .txt { font-size: 160%; } }
main section#shopOpenSct .inner .chirashi { position: relative; display: block; margin: 0 auto; width: 38vw; background: #32465a; }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner .chirashi { width: 70%; } }
main section#shopOpenSct .inner .chirashi a { display: block; }
main section#shopOpenSct .inner .chirashi a img { width: 100%; height: auto; }
main section#shopOpenSct .inner .movieB { position: relative; margin: 5em auto 10em; width: 50%; }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner .movieB { width: 80%; } }
main section#shopOpenSct .inner .movieB iframe { width: 100%; height: auto; aspect-ratio: 16 / 9; }
main section#shopOpenSct .inner2 { position: relative; display: flex; align-items: center; text-align: left; margin: 0 auto; width: 86%; }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner2 { display: block; } }
main section#shopOpenSct .inner2 .imgB { width: 48%; }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner2 .imgB { width: 100%; margin-bottom: 4em; } }
main section#shopOpenSct .inner2 .imgB img { width: 100%; height: auto; }
main section#shopOpenSct .inner2 .txtB { width: 52%; padding-left: 5%; }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner2 .txtB { width: 100%; padding-left: 0; } }
main section#shopOpenSct .inner2 .txtB .head1 { display: block; margin-bottom: 2em; }
main section#shopOpenSct .inner2 .txtB .head1 span { display: inline-block; background: #fff; font-size: 200%; font-weight: 600; letter-spacing: .15em; padding: .1em .8em; margin-bottom: .6em; box-shadow: 3px 3px 5px 0 rgba(0, 0, 0, 0.2); }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner2 .txtB .head1 span { font-size: 250%; } }
main section#shopOpenSct .inner2 .txtB .txt1 { display: block; font-size: 120%; padding-left: 1%; }
@media screen and (max-width: 519px) { main section#shopOpenSct .inner2 .txtB .txt1 { font-size: 160%; } }
main section#shopInfoSct { padding: 5em 0 7em; }
main section#shopInfoSct h2.center { text-align: center; margin: 0 auto 1.2em; }
main section#shopInfoSct .atn { display: block; text-align: center; font-size: 120%; margin-bottom: 6em; }
@media screen and (max-width: 519px) { main section#shopInfoSct .atn { font-size: 170%; letter-spacing: .1em; margin-bottom: 3em; } }
main section#shopInfoSct ul.shopList { position: relative; text-align: center; width: 86%; margin: 7em auto 2em; }
@media screen and (max-width: 519px) { main section#shopInfoSct ul.shopList { margin: 0 auto 4em; } }
main section#shopInfoSct ul.shopList li { position: relative; display: flex; align-items: center; margin-bottom: 6em; }
@media screen and (max-width: 519px) { main section#shopInfoSct ul.shopList li { display: block; } }
main section#shopInfoSct ul.shopList li .picB { position: relative; width: 50%; }
@media screen and (max-width: 519px) { main section#shopInfoSct ul.shopList li .picB { width: 100%; margin-bottom: 2em; } }
main section#shopInfoSct ul.shopList li .picB img { width: 100%; height: auto; }
main section#shopInfoSct ul.shopList li .picB .open { position: absolute; bottom: 2.6em; width: 100%; text-align: center; color: #00a0e9; font-size: 220%; font-weight: 700; letter-spacing: .12em; }
main section#shopInfoSct ul.shopList li .txtB { width: 50%; padding-left: 2%; }
@media screen and (max-width: 519px) { main section#shopInfoSct ul.shopList li .txtB { width: 100%; padding-left: 0; } }
main section#shopInfoSct ul.shopList li .txtB .name { font-size: 200%; font-weight: 700; letter-spacing: .12em; padding-left: .5em; text-align: left; padding-bottom: .7em; border-bottom: 1px solid #32465a; }
main section#shopInfoSct ul.shopList li .txtB table { width: 100%; font-size: 140%; }
main section#shopInfoSct ul.shopList li .txtB table tr { border-bottom: 1px solid #32465a; }
main section#shopInfoSct ul.shopList li .txtB table tr th { padding: 1.2em .8em; text-align: right; line-height: 1.5; white-space: nowrap; }
main section#shopInfoSct ul.shopList li .txtB table tr td { padding: 1.2em .8em; text-align: left; line-height: 1.5; }
main section#shopInfoSct ul.shopList li .txtB table tr td .btnB { position: relative; display: block; padding-top: .8em; }
main section#shopInfoSct ul.shopList li .txtB table tr td .btnB a { position: relative; display: inline-block; color: #fff; font-size: 70%; letter-spacing: .15em; padding: .6em 3em; border: 1px solid #1c276c; background: #1c276c; border-radius: 2em; }
main section#shopInfoSct ul.shopList li .txtB table tr td .btnB a::after { content: ""; position: absolute; right: 1.5em; top: 50%; transform: translateY(-50%) rotate(45deg); width: .5em; height: .5em; border: 2px solid #fff; border-left: transparent; border-bottom: transparent; }
main section#shopInfoSct ul.shopList li .txtB table tr td small { display: block; }
main section#shopInfoSct ul.shopList li .txtB table tr td small small { letter-spacing: .01em; font-size: 75%; }
main section#recruitMainSct { background: url("../img/bg_p3.webp") no-repeat center bottom/100%, url("../img/bg_p1.webp") no-repeat center 13em/100%; padding: 8em 5% 9em; }
@media screen and (max-width: 519px) { main section#recruitMainSct { background-size: 200%, 200%; } }
main section#recruitMainSct .headBox { position: relative; margin-bottom: 3em; }
@media screen and (max-width: 519px) { main section#recruitMainSct .headBox { padding: 10em 0 14em; } }
main section#recruitMainSct .headBox .pic1 { position: relative; z-index: 3; width: 52%; height: auto; margin-left: 48%; }
@media screen and (max-width: 519px) { main section#recruitMainSct .headBox .pic1 { width: 84%; margin-left: 16%; } }
main section#recruitMainSct .headBox .pic2 { position: relative; z-index: 2; top: -1em; margin-bottom: -1em; width: 50%; height: auto; }
@media screen and (max-width: 519px) { main section#recruitMainSct .headBox .pic2 { width: 80%; } }
main section#recruitMainSct .headBox .copy1 { position: absolute; top: 1.2em; left: 3%; display: block; color: #2b4b97; font-size: 500%; font-weight: 700; line-height: 1.3; letter-spacing: .12em; text-shadow: 5px 5px 0 rgba(90, 158, 229, 0.5); }
@media screen and (max-width: 519px) { main section#recruitMainSct .headBox .copy1 { top: .4em; font-size: 520%; } }
main section#recruitMainSct .headBox .copy2 { position: absolute; bottom: 1.4em; right: 2.5%; display: block; color: #2b4b97; font-size: 500%; font-weight: 700; line-height: 1.3; letter-spacing: .12em; text-shadow: 5px 5px 0 rgba(90, 158, 229, 0.5); }
@media screen and (max-width: 519px) { main section#recruitMainSct .headBox .copy2 { bottom: 0; font-size: 520%; } }
main section#recruitMainSct .headBox .copy2 span { padding-left: 2em; }
main section#recruitMainSct .bosyu { position: relative; margin: 4em auto; text-align: center; }
@media screen and (max-width: 519px) { main section#recruitMainSct .bosyu { margin: 6em auto; } }
main section#recruitMainSct .bosyu strong { display: block; color: #32465a; font-size: 500%; letter-spacing: .12em; padding-left: .16em; margin-bottom: .5em; }
@media screen and (max-width: 519px) { main section#recruitMainSct .bosyu strong { font-size: 520%; white-space: nowrap; line-height: 1.3; margin-bottom: .3em; } }
main section#recruitMainSct .bosyu span { display: inline-block; color: #fff; font-size: 240%; letter-spacing: .12em; background: #2b4b97; padding: .3em 2em .3em 2.12em; border-radius: 2em; }
@media screen and (max-width: 519px) { main section#recruitMainSct .bosyu span { font-size: 260%; } }
main section#recruitMainSct .picList { position: relative; display: flex; justify-content: space-between; margin: 2em auto 4em; }
@media screen and (max-width: 519px) { main section#recruitMainSct .picList { flex-wrap: wrap; } }
main section#recruitMainSct .picList li { width: 32.8%; }
@media screen and (max-width: 519px) { main section#recruitMainSct .picList li { width: 49%; margin-bottom: .7em; }
  main section#recruitMainSct .picList li:last-child { width: 100%; } }
main section#recruitMainSct .picList li img { width: 100%; height: auto; }
main section#recruitMainSct .detail { border-collapse: separate; border-spacing: .5em; width: 100%; font-size: 150%; line-height: 1.5; }
@media screen and (max-width: 519px) { main section#recruitMainSct .detail { font-size: 180%; } }
main section#recruitMainSct .detail tr th { padding: 1.5em; white-space: nowrap; background: rgba(90, 158, 229, 0.2); border: 1px solid rgba(128, 128, 128, 0.1); }
@media screen and (max-width: 519px) { main section#recruitMainSct .detail tr th { display: block; width: 100%; } }
main section#recruitMainSct .detail tr th span { display: block; }
@media screen and (max-width: 519px) { main section#recruitMainSct .detail tr th span { display: inline-block; }
  main section#recruitMainSct .detail tr th span::before { content: "・"; } }
main section#recruitMainSct .detail tr td { padding: 1.5em; background: rgba(255, 255, 255, 0.5); border: 1px solid rgba(204, 204, 204, 0.5); }
@media screen and (max-width: 519px) { main section#recruitMainSct .detail tr td { display: block; width: 100%; } }
main section#recruitMainSct .detail tr td p { display: block; margin-bottom: .6em; }
@media screen and (max-width: 519px) { main section#recruitMainSct .detail tr td p { margin-bottom: .9em; } }
main section#recruitMainSct .detail tr td p:last-child { margin-bottom: 0; }
@media screen and (max-width: 519px) { main section#recruitMainSct .detail tr td p:last-child { margin-bottom: 0; } }
main section#recruitMainSct .detail tr td p span.ttl { display: block; font-size: 120%; }
main section#recruitMainSct .detail tr td p span.sub { display: block; padding-left: 1em; }
main section#recruitMainSct .txt { display: block; text-align: center; font-size: 260%; letter-spacing: .12em; padding-left: .42em; margin: 1.5em auto; }
@media screen and (max-width: 519px) { main section#recruitMainSct .txt { font-size: 200%; margin: 2.5em auto; } }
main section#recruitMainSct .corpB { position: relative; display: flex; justify-content: center; align-items: center; }
@media screen and (max-width: 519px) { main section#recruitMainSct .corpB { display: block; } }
main section#recruitMainSct .corpB .picB { width: 23em; }
@media screen and (max-width: 519px) { main section#recruitMainSct .corpB .picB { width: 80%; margin: 0 auto 1.5em; } }
main section#recruitMainSct .corpB .picB img { width: 100%; height: auto; }
main section#recruitMainSct .corpB .txtB { white-space: nowrap; padding-left: 3.5em; }
@media screen and (max-width: 519px) { main section#recruitMainSct .corpB .txtB { text-align: center; padding-left: 0; } }
main section#recruitMainSct .corpB .txtB .company { font-size: 340%; }
@media screen and (max-width: 519px) { main section#recruitMainSct .corpB .txtB .company { font-size: 300%; } }
main section#recruitMainSct .corpB .txtB .add { font-size: 240%; }
@media screen and (max-width: 519px) { main section#recruitMainSct .corpB .txtB .add { font-size: 200%; } }
main section#recruitMainSct .corpB .txtB .tel { font-size: 320%; }
@media screen and (max-width: 519px) { main section#recruitMainSct .corpB .txtB .tel { font-size: 300%; } }

#footer { position: relative; padding: 4em 0 3em; background: #fff; }
@media screen and (max-width: 519px) { #footer { padding: 6em 0 3em; } }
#footer.wBg { background: url("../img/footer_bg.png") no-repeat center top/100%; padding-top: 9em; }
#footer .snsB { position: relative; display: flex; justify-content: center; margin-bottom: 3.5em; }
#footer .snsB div { padding: 0 1em; }
@media screen and (max-width: 519px) { #footer .snsB div { padding: 0 2em; } }
#footer .snsB div a { display: block; }
#footer .snsB div a img { width: 2em; height: auto; }
@media screen and (max-width: 519px) { #footer .snsB div a img { width: 3em; } }
#footer .fMenu { position: relative; margin-bottom: 3em; }
#footer .fMenu ul { display: flex; justify-content: center; }
@media screen and (max-width: 519px) { #footer .fMenu ul { display: block; text-align: center; } }
#footer .fMenu ul li { padding: 0 2em; }
@media screen and (max-width: 519px) { #footer .fMenu ul li { padding: 1em 0; } }
#footer .fMenu ul li a { display: block; }
@media screen and (max-width: 519px) { #footer .fMenu ul li a { font-size: 170%; letter-spacing: .1em; } }
#footer .cardB { text-align: center; margin-bottom: 3.5em; }
@media screen and (max-width: 519px) { #footer .cardB { margin-bottom: 4.5em; } }
#footer .cardB p { color: #98a2ac; letter-spacing: .12em; }
@media screen and (max-width: 519px) { #footer .cardB p { font-size: 130%; } }
#footer .cardB img { display: block; margin: 0 auto; width: 20em; height: auto; }
@media screen and (max-width: 519px) { #footer .cardB img { width: 30em; } }
#footer .cpr { text-align: center; font-size: 60%; color: #aa8c64; }
@media screen and (max-width: 519px) { #footer .cpr { letter-spacing: .15em; } }
