@charset "utf-8";

html, body, h1, h2, h3, h4, ul, ol, dl, li, dt, dd, p, div, span, img, a, table, tr, th, td {margin: 0;padding: 0;border: 0;font-weight: normal;font-size: 100%;vertical-align: baseline;}
article, header, footer, aside, figure, figcaption, nav, section {display: block;}
body {line-height: 1;-ms-text-size-adjust: 100%;-webkit-text-size-adjust: 100%;}
ol, ul {list-style: none;list-style-type: none;}
figure {margin: 0;}
button, input[type="submit"] {border: 0 none;background: none;cursor: pointer;}
select::-ms-expand {display: none;}
img, input[type="image"] {max-width: 100%;width:auto;height: auto;backface-visibility: hidden;-webkit-backface-visibility: hidden;object-fit: cover;}
a {text-decoration: none;}
a:hover, a img:hover, button:hover {opacity: 0.7;filter: alpha(opacity=70);-ms-filter: "alpha(opacity=70)";transition: all 0.3s ease;-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;}

* {-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
html {height: 100%;-webkit-text-size-adjust: 100%;-webkit-overflow-scrolling: touch;overflow-scrolling: touch;}
body {height: 100%;font-family: 'Noto Serif JP', serif;font-size: 1rem;letter-spacing: 0.05em;line-height: 2;color: #000;overflow-x: hidden;}
@media only screen and (min-width: 0px) and (max-width: 767px) {body {font-size: 0.8rem;line-height: 1.8;}}

.pc {display: inherit;}
.sp {display: none;}
.inner {width: 100%;max-width: 950px;margin: auto;}
@media only screen and (min-width: 0px) and (max-width: 767px) {.pc {display: none;}.sp {display: block;}.inner {width: 90%;}}
.flex {display: -webkit-box;display: -moz-box;display: -webkit-flexbox;display: -moz-flexbox;display: -ms-flexbox;display: -webkit-flex;display: -moz-flex;display: flex;flex-wrap: wrap;}
.Acenter {position: absolute;top: 50%;left: 50%;margin-right: -50%;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);}
.txtE {font-family: "Times New Roman", serif;font-style: italic;}

.overlay {width: 100%;height: 100%;position: fixed;top: 0;z-index: 10;display: none;background: rgba(0,0,0,0.6);}
.btn_area {width: 50%;padding: 50px;position: absolute;top: 50%;left: 50%;margin-right: -50%;-webkit-transform: translate(-50%, -50%);transform: translate(-50%, -50%);z-index: 15;background: #fff;}
.btn_area h2 {margin: 0 auto 30px;text-align: center;font-size: 1.8rem;letter-spacing: 0.15em;line-height: 1.5;}
.btn_area h2 + p {margin: 0 auto 30px;text-align: left;}
.btn_area ul {width: 90%;margin: 0 auto 20px;justify-content: space-between;}
.btn_area ul li {width: 30%;}
.btn_area ul li p {font-size: 0.9rem;line-height: 1.5;}
.btn_area button {margin: 0 auto;padding: 10px 50px;display: block;background: #000;color: #fff;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
.btn_area {width: 95%;padding: 20px;}
.btn_area h2 {margin: 0 auto 20px;font-size: 1.2rem;letter-spacing: 0;}
.btn_area h2 + p {margin: 0 auto 20px;font-size: 0.7rem;}
.btn_area ul {width: 100%;margin: 0 auto 10px;}
.btn_area ul li p {font-size: 0.6rem;line-height: 1.3;}
.btn_area button {padding: 10px 30px;}
}

/* --------------------------------------------------------------------------------------------------------------------------- */

header {width: 100%;height: 145px;padding: 20px 30px 0;position: fixed;top: 0;z-index: 5;background: #fff;border-bottom: 1px solid #ccc;line-height: 1;}
header #gNav.inner {max-width: 1280px;}
header #gNav ul {align-items: center;}
header #gNav ul li {padding: 0 15px;position: relative;border-right: 1px solid #000;}
header #gNav ul li:nth-child(1) {max-width: 200px;margin: 0 auto 0 0;padding: 0;}
header #gNav ul li:nth-child(1) img {width: 100%;}
header #gNav ul li:nth-child(1), header #gNav ul li:nth-child(5), header #gNav ul li.tel {border-right: 0 none;}
header #gNav ul li a {display: block;color: #000;}
header #gNav ul li span {cursor: pointer;}
header #gNav ul li.tel {width: 300px;margin: 0 0 0 50px;border-left: 1px solid #000;}
header #gNav ul li.tel p {width: 100%;}
/*サブメニュー*/
header #gNav ul li ul {position: absolute;top: 30px;right: -80px;background: #a2272d;}
header #gNav ul li ul li {width: 200px;height: 0;padding: 0;text-align: center;overflow: hidden;-moz-transition: .2s;-webkit-transition: .2s;-o-transition: .2s;-ms-transition: .2s;transition: .2s;}
header #gNav ul li:hover ul li {overflow: visible;height: 45px;}
header #gNav ul li ul li a {width: 90%;margin: auto;padding: 15px 0;color: #fff;}
header #gNav ul li ul li:nth-child(1) a {border-bottom: 1px solid #fff;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
header {height: auto;padding: 0;}
header #gNav.inner {width: 100%;}
header #gNav ul {display: none;}
/*SPメニュー*/
a#spLogo {width: 100px;padding: 10px 0 5px 10px;}
.menu-trigger {width: 40px;height: 50px;float: right;position: fixed;top: 0.5%;right: 2%;z-index: 10;}
.menu-trigger, .menu-trigger span {display: inline-block;-webkit-border-radius: 2em;-moz-border-radius: 2em;border-radius: 2em;cursor: pointer;-webkit-transition: all .4s;-moz-transition: all .4s;transition: all .4s;}
.menu-trigger span {width: 35px;height: 4px;margin: auto;position: absolute;background: #000;}
.menu-trigger span:nth-of-type(1) {top: 10px;}
.menu-trigger span:nth-of-type(2) {top: 0;bottom: 0;}
.menu-trigger span:nth-of-type(3) {bottom: 10px;}
.menu-trigger.active span:nth-of-type(1) {-webkit-transform: translateY(13px) rotate(-45deg);transform: translateY(13px) rotate(-45deg);}
.menu-trigger.active span:nth-of-type(2) {opacity: 0;}
.menu-trigger.active span:nth-of-type(3) {-webkit-transform: translateY(-13px) rotate(45deg);transform: translateY(-13px) rotate(45deg);}
header #gNav {background: #000;}
header #gNav ul {padding: 50px 0;}
header #gNav ul li {width: 80%;margin: 0 auto;padding: 0;border-bottom: 1px solid #ccc;border-right: 0 none;}
header #gNav ul li a {width: 100%;margin: 0 auto;padding: 15px 0 18px;display: block;text-align: center;color: #fff;font-size: 1.2rem;}
header #gNav ul li:nth-child(1) {width: auto;margin: 0 auto;}
header #gNav ul li:nth-child(2)	{border-top: 1px solid #fff;}
header #gNav ul li ul {margin: 0 auto 20px;padding: 0;position: static;text-align: center;background: none;}
header #gNav ul li ul li {width: auto;height: auto;display: inline-block;border-bottom: 0 none;}
header #gNav ul li ul li:nth-child(2) {border-top: 0 none;}
header #gNav ul li ul li a {width: auto;padding: 0 20px;color: #fff;font-size: 0.9rem;}
header #gNav ul li ul li:nth-child(1) a {border-right: 1px solid #fff;border-bottom: 0 none;}
header #gNav ul li.tel {margin: 10px auto 0;border-left: 0 none;border-bottom: 0 none;}	
header #gNav ul li.tel p {width: 70%;margin: auto;}
header #gNav ul li.tel p a	{padding: 0;}
}

footer {width: 100%;padding: 50px 0 30px;text-align: center;background: #000;color: #fff;line-height: 1;}
footer ul#bnrArea {max-width: 1024px;margin: auto auto 50px;justify-content: center;line-height: 1.5;}
footer ul#bnrArea li {width: 23%;margin: 0 10px;}
footer ul#bnrArea + figure {max-width: 250px;margin: auto auto 30px;}
footer #fNav ul {justify-content: center;}
footer #fNav ul li {padding: 0 15px;border-right: 1px solid #fff;}
footer #fNav ul li:last-child {border-right: 0 none;}
footer #fNav ul li a {color: #fff;}
footer address {margin: 50px auto 10px;font-style: normal;}
footer p#copy {}
@media only screen and (min-width: 0px) and (max-width: 767px) {
footer {line-height: 1.3;}
footer ul#bnrArea {margin: auto auto 30px;}
footer ul#bnrArea li {width: 50%;margin: 0 5px 10px;}
footer ul#bnrArea + figure {max-width: 150px;margin: auto;}
footer address {margin: 30px auto 10px;}
}

.floating {max-width: 250px;position: fixed;right: 20px;top: 170px;display: block;}
.floating img {border-radius: 5px;filter: drop-shadow(3px 3px 3px rgba(0,0,0,0.4));}
@media only screen and (min-width: 0px) and (max-width: 767px) {
.floating {max-width: 150px;right: 10px;top: 75px;}
}

main {margin: 50px auto 0;display: block;}
@media only screen and (min-width: 0px) and (max-width: 767px) {main {margin: 10px auto 0;display: block;}}

@keyframes slider-zoomin {
  0% {opacity: 0;transform: scale(1);}
  12.5% {opacity: 1;}
  20% {opacity: 1;}
  27.5% {opacity: 0;}
  100% {opacity: 0;transform: scale(1.3);}
}
@keyframes slider-zoomout {
  0% {opacity: 0;transform: scale(1.3);}
  12.5% {opacity: 1;}
  20% {opacity: 1;}
  27.5% {opacity: 0;}
  100% {opacity: 0;transform: scale(1);}
}

/* --------------------------------------------------------------------------------------------------------------------------- */

#mv {width: 100%;height: 800px;margin: 0 auto;position: relative;overflow: hidden;}
#mv ul li {width: 100%;height: 100%;position: absolute;top: 0;left: 0;background-position: center;background-repeat: no-repeat;background-size: 100% auto;animation-iteration-count: infinite;animation-duration: 20s;}
#mv ul li:nth-child(1) {background-image: url("images/mv1.jpg");animation-name: slider-zoomin;animation-delay: -1s;}
#mv ul li:nth-child(2) {background-image: url("images/mv2.jpg");animation-name: slider-zoomout;opacity: 0;animation-delay: 6s;}
#mv ul li:nth-child(3) {background-image: url("images/mv3.jpg");animation-name: slider-zoomin;opacity: 0;animation-delay: 12s;}
#mv ul li img {width: 130%;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#mv {height: 300px;}
}

#topMessage {padding: 100px 0 100px;text-align: center;}
#topMessage figure {max-width: 500px;margin: auto;}
#topMessage h2 {margin: 40px auto 0;font-size: 1.1rem;letter-spacing: 0.15em;line-height: 3;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#topMessage {padding: 60px 0;}
#topMessage figure {max-width: 200px;}
#topMessage h2 {margin: 20px auto 0;font-size: 1rem;letter-spacing: 0.05em;line-height: 2.5;}
}

#topAbout {}
#topAbout ul {justify-content: space-between;align-items: center;}
#topAbout ul li {width: 50%;}
#topAbout ul li:nth-child(2) {padding: 0 0 0 80px;}
#topAbout ul li:nth-child(2) h3 {margin: 0 0 20px;font-size: 5rem;letter-spacing: 0.1em;line-height: 1;}
#topAbout ul li:nth-child(2) h3 small {display: block;font-size: 1.1rem;font-style: normal;letter-spacing: 0em;}
#topAbout ul li:nth-child(2) p {margin: 0 auto 100px;line-height: 2.5;}
#topAbout ul li:nth-child(2) a {padding: 10px 80px 10px 100px;position: relative;display: table;background: #000;color: #fff;letter-spacing: 0.1em;}
#topAbout ul li:nth-child(2) a:hover {background: #999;transition: all 0.3s ease!important;-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;}
#topAbout ul li:nth-child(2) a::before {content: "";width: 30px;height: 1px;position: absolute;top: 50%;left: 20%;background: #fff;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#topAbout {padding: 0 0 50px;}
#topAbout ul li {width: 100%;}
#topAbout ul li:nth-child(1) {margin: 0 auto 20px;}
#topAbout ul li:nth-child(2) {padding: 0;}
#topAbout ul li:nth-child(2) h3 {margin: 0 auto 20px;font-size: 3rem;}
#topAbout ul li:nth-child(2) h3 small {font-size: 0.9rem;}
#topAbout ul li:nth-child(2) p {margin: 0 auto 30px;line-height: 2;}
#topAbout ul li:nth-child(2) a {margin: 0 auto;padding: 15px 60px 15px 80px;}
}

#topMenu {}
#topMenu ul {justify-content: space-between;align-items: center;flex-direction: row-reverse;}
#topMenu ul li {width: 50%;}
#topMenu ul li:nth-child(2) {padding: 0 80px 0 0;}
#topMenu ul li:nth-child(2) h3 {margin: 0 0 20px;font-size: 5rem;letter-spacing: 0.1em;line-height: 1;}
#topMenu ul li:nth-child(2) h3 small {display: block;font-size: 1.1rem;font-style: normal;letter-spacing: 0em;}
#topMenu ul li:nth-child(2) p {margin: 0 auto 100px;line-height: 2.5;}
#topMenu ul li:nth-child(2) a {padding: 10px 80px 10px 100px;position: relative;display: table;background: #000;color: #fff;letter-spacing: 0.1em;}
#topMenu ul li:nth-child(2) a:hover {background: #999;transition: all 0.3s ease!important;-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;}
#topMenu ul li:nth-child(2) a::before {content: "";width: 30px;height: 1px;position: absolute;top: 50%;left: 20%;background: #fff;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#topMenu {padding: 0 0 50px;}
#topMenu ul li {width: 100%;}
#topMenu ul li:nth-child(1) {margin: 0 auto 20px;}
#topMenu ul li:nth-child(2) {padding: 0;}
#topMenu ul li:nth-child(2) h3 {margin: 0 auto 20px;font-size: 3rem;}
#topMenu ul li:nth-child(2) h3 small {font-size: 0.9rem;}
#topMenu ul li:nth-child(2) p {margin: 0 auto 30px;line-height: 2;}
#topMenu ul li:nth-child(2) a {margin: 0 auto;padding: 15px 60px 15px 80px;}
}

#topShop {}
#topShop ul {justify-content: space-between;align-items: center;}
#topShop ul li {width: 50%;}
#topShop ul li:nth-child(2) {padding: 0 0 0 80px;}
#topShop ul li:nth-child(2) h3 {margin: 0 0 20px;font-size: 5rem;letter-spacing: 0.1em;line-height: 1;}
#topShop ul li:nth-child(2) h3 small {display: block;font-size: 1.1rem;font-style: normal;letter-spacing: 0em;}
#topShop ul li:nth-child(2) p {margin: 0 auto 100px;line-height: 2.5;}
#topShop ul li:nth-child(2) a {margin: 0 0 15px;padding: 10px 80px 10px 100px;position: relative;display: table;background: #000;color: #fff;letter-spacing: 0.1em;}
#topShop ul li:nth-child(2) a:hover {background: #999;transition: all 0.3s ease!important;-webkit-transition: all 0.3s ease;-moz-transition: all 0.3s ease;-o-transition: all 0.3s ease;}
#topShop ul li:nth-child(2) a::before {content: "";width: 30px;height: 1px;position: absolute;top: 50%;left: 20%;background: #fff;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#topShop ul li {width: 100%;}
#topShop ul li:nth-child(1) {margin: 0 auto 20px;}
#topShop ul li:nth-child(2) {padding: 0;}
#topShop ul li:nth-child(2) h3 {margin: 0 auto 20px;font-size: 3rem;}
#topShop ul li:nth-child(2) h3 small {font-size: 0.9rem;}
#topShop ul li:nth-child(2) p {margin: 0 auto 30px;line-height: 2;}
#topShop ul li:nth-child(2) a {margin: 0 auto 15px;padding: 15px 60px 15px 80px;}
}

#topSns {width: 100%;padding: 100px 0 0;text-align: center;}
#topSns figure {width: 100%;padding: 15% 0;position: relative;overflow: hidden;}
#topSns figure::after {content: "";width: 100%;height: 100%;position: absolute;top: 0;display: block;background: url("images/topSns.jpg") no-repeat center / cover fixed;-webkit-transition: all .3s ease-out;-moz-transition: all .3s ease-out;-ms-transition: all .3s ease-out;transition: all .3s ease-out;}
/*#topSns figure:hover:after {opacity: .8;-moz-transform: scale(1.2);-webkit-transform: scale(1.2);-ms-transform: scale(1.2);transform: scale(1.2);}*/
#topSns .inner {padding: 100px 0 50px;}
#topSns h3 {max-width: 350px;margin: 0 auto 30px;}
#topSns h3 + p {margin: auto;}
#topSns ul {margin: 50px auto 0;justify-content: center;align-items: flex-end;line-height: 1;}
#topSns ul li:nth-child(1) {margin: 0 20px 0 0;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#topSns {padding: 40px 0 0;}
#topSns figure {height: 250px;padding: 0;}	
#topSns figure::after {background: url("images/topSns.jpg") no-repeat center / cover;}
#topSns .inner {padding: 50px 0 20px;}
#topSns h3 {max-width: 250px;}
#topSns ul {margin: 20px auto 0;}
#topSns ul li {width: 40%;margin: 0 10px;}
#topSns ul li:nth-child(1) {width: 100%;margin: 0 auto 10px;}
#topSns ul li:nth-child(1) img {width: 40%;}
#topSns ul li a {width: 50%;display: inline-block;}
}

#topAccess {width: 100%;padding: 50px 0 0;text-align: center;}
#topAccess h3 {margin: auto auto 30px;font-size: 5rem;letter-spacing: 0.1em;line-height: 1;}
#topAccess #maps {width: 100%;height: 700px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#topAccess h3 {font-size: 3rem;}
#topAccess #maps {height: 400px;}
}

/* --------------------------------------------------------------------------------------------------------------------------- */

#pageheader {width: 100%;height: 400px;position: relative;background: #000;}
#pageheader h2 {top: 60%;text-align: center;color: #fff;font-size: 4rem;letter-spacing: 0.3em;line-height: 1.2;}
#pageheader h2 small {margin: auto;display: block;font-size: 1rem;font-style: normal;letter-spacing: 0em;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#pageheader {height: 200px;}
#pageheader h2 {top: 50%;font-size: 2.2rem;}
#pageheader h2 small {font-size: 0.7rem;}
}

/* --------------------------------------------------------------------------------------------------------------------------- */

#about {position: relative;}
/*#about::after {content: "";width: 100%;min-height: 900px;position: absolute;bottom: 0;z-index: -1;display: block;background: url("images/about/footContentBack.jpg") no-repeat center bottom / cover;}*/
@media only screen and (min-width: 0px) and (max-width: 767px) {
/*#about::after {min-height: 500px;}*/
}

#about #sec1 {padding: 100px 0;}
#about #sec1 h3 {font-size: 1.5rem;line-height: 2;}
#about #sec1 ul {margin: 80px auto 50px;justify-content: space-between;align-items: center;}
#about #sec1 ul li {width: 50%;}
#about #sec1 ul li:nth-child(2) {padding: 0 0 0 80px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#about #sec1 {padding: 50px 0 30px;}
#about #sec1 h3 {font-size: 1.1rem;}
#about #sec1 ul {margin: 40px auto 20px;}
#about #sec1 ul li {width: 100%;}
#about #sec1 ul li:nth-child(2) {margin: 20px auto 0;padding: 0;line-height: 2.3;}
}

#about figure#interval {width: 100%;padding: 15% 0;background: url("images/topSns.jpg") no-repeat center / cover fixed;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#about figure#interval {height: 250px;padding: 0;position: relative;background: url("images/topSns.jpg") no-repeat center / 120%;}
}

#about #sec2 {padding: 100px 0 50px;}
#about #sec2 h3 {margin: 0 auto 50px;font-size: 1.5rem;line-height: 2;}
#about #sec2 ul {margin: 0;justify-content: space-between;align-items: center;}
#about #sec2 ul li {width: 48%;}
#about #sec2 ul li:nth-child(1) {margin: 200px 0 0;}
#about #sec2 ul li:nth-child(2) {height: 480px;position: relative;}
#about #sec2 ul li:nth-child(2) h4 {position: absolute;top: 130px;left: 50%;display: inline;transform: translate(-50%, -50%);text-align: justify;text-justify: inter-ideograph;-webkit-writing-mode: vertical-rl;-moz-writing-mode: vertical-rl;-ms-writing-mode: tb-rl;-ms-writing-mode: vertical-rl;writing-mode: vertical-rl;font-size: 2.3rem;font-weight: 600;letter-spacing: 0.3em;line-height: 1.7;}
#about #sec2 ul li:nth-child(2) h4 + p {position: absolute;top: 270px;}
#about #sec2 ul:nth-of-type(1), #about #sec2 ul:nth-of-type(3) {flex-direction: row-reverse;}
#about #sec2 ul + p {margin: 80px auto 0;text-align: center;line-height: 0;}
#about #sec2 ul + p a {max-width: 280px;margin: auto;padding: 10px 30px;display: block;border: 1px solid #ccc;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#about #sec2 {padding: 50px 0 20px;}
#about #sec2 h3 {margin: 0 auto 20px;font-size: 1.1rem;}
#about #sec2 ul {margin: 0 auto;}
#about #sec2 ul li {width: 100%;}
#about #sec2 ul li:nth-child(1) {margin: 50px 0 0;}
#about #sec2 ul:nth-of-type(1), #about #sec2 ul:nth-of-type(3) {flex-direction: column;}
#about #sec2 ul li:nth-child(2) {height: 400px;line-height: 2.3;}
#about #sec2 ul li:nth-child(2) h4 + p {top: 240px;}
#about #sec2 ul + p a {max-width: 200px;}
}

#about #sec3 {padding: 100px 0 0;}
#about #sec3 ul {line-height: 0;}
#about #sec3 ul.flex li {width: 50%;}
#about #sec3 ul li img {width: 100%;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#about #sec3 {padding: 70px 0 0;}
}

/* --------------------------------------------------------------------------------------------------------------------------- */

#menu {}
@media only screen and (min-width: 0px) and (max-width: 767px) {#menu .inner {width: 100%;}}

@media only screen and (min-width: 0px) and (max-width: 767px) {
#pageNav {margin: 50px auto 0;}
#pageNav ul {justify-content: center;text-align: center;}
#pageNav ul li {margin: 0 25px 10px;}
#pageNav ul li a {color: #000;text-decoration: underline;font-size: 1.05rem;font-weight: 600;}
}

#menu ul.titBox {height: 550px;position: relative;}
#menu ul.titBox li:nth-child(1) {width: 55%;padding: 80px 0;position: absolute;z-index: 1;display: block;text-align: center;color: #fff;}
#menu ul.titBox li:nth-child(2) {width: 50%;position: absolute;line-height: 0;}
#menu ul.menuList {margin: 0 auto 20px;justify-content: center;}
#menu ul.menuList li {width: 100%!important;padding: 0 0 0 15px;position: relative;font-size: 1.05rem;font-weight: 600;}
#menu ul.menuList li::before {content: "";width: 10px;height: 1px;position: absolute;top: 50%;left: 0;display: block;background: #000;}
#menu ul.menuList li.noline::before {width: 0;height: 0;}
#menu ul.menuBox {justify-content: center;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#menu ul.titBox {height: auto;margin: 0 auto 30px;}
#menu ul.titBox li:nth-child(1) {width: 100%;padding: 40px 0;position: static;}
#menu ul.titBox li:nth-child(2) {width: 100%;position: static;}
#menu ul.menuList {margin: 0 auto;}
#menu ul.menuList li {font-size: 1rem;line-height: 1.8;}
#menu ul.menuList li::before {top: 60%;}
}

#set {padding: 100px 0 0;}
#set ul.titBox li:nth-child(1) {left: 0;top: 20%;background: #a8272d;}
#set ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#set ul.titBox li:nth-child(1) h3 small {margin: 20px auto 0;display: block;font-size: 0.9rem;line-height: 3;}
#set ul.titBox li:nth-child(2) {right: 0;top: 0;}
#set ul.menuBox li {width: 37%;margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#set {padding: 50px 0 0;}
#set ul.titBox {margin: 0;}
#set ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#set ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#set ul.menuBox li {width:  80%;padding: 10px 20px 0;}
#set ul.menuBox li h4 {width: 120%!important;margin: 10px 0 0 -30px;}
}

#course {padding: 100px 0 0;}
#course ul.titBox li:nth-child(1) {right: 0;top: 0;background: #a8272d;}
#course ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#course ul.titBox li:nth-child(1) h3 small {display: block;font-size: 0.8rem;}
#course ul.titBox li:nth-child(1) p {width: 80%;margin: 50px auto 0;border: 1px solid rgba(255,255,255,0.30);font-size: 1.3rem;}
#course ul.titBox li:nth-child(2) {left: 0;top: 20%;}
#course ul.menuBox li {width: 37%;margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#course {padding: 50px 0 0;}
#course ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#course ul.titBox li:nth-child(1) h3 small {font-size: 0.6rem;}
#course ul.titBox li:nth-child(1) p {margin: 30px auto 0;font-size: 1rem;}
#course ul.menuBox li {width: 80%;padding: 10px 20px 0;}
#course ul.menuBox li h4 {width: 120%!important;margin: 10px 0 0 -30px;}
}

#special {padding: 100px 0 0;}
#special ul.titBox li:nth-child(1) {left: 0;top: 20%;background: #a8272d;}
#special ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#special ul.titBox li:nth-child(1) h3 small {margin: 20px auto 0;display: block;font-size: 0.9rem;line-height: 3;}
#special ul.titBox li:nth-child(2) {right: 0;top: 0;}
#special .specialPic {margin: 50px auto 0;}
#special .specialPic ul li {width: 33.33333%;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#special {padding: 50px 0 0;}
#special ul.titBox {margin: 0;}
#special ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#special ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#special ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
#special .specialPic {margin: 0 0 30px;}
}

#hidagyu {padding: 100px 0 0;}
#hidagyu ul.titBox li:nth-child(1) {right: 0;top: 0;background: #000;}
#hidagyu ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#hidagyu ul.titBox li:nth-child(1) h3 small {margin: 20px auto 0;display: block;font-size: 0.9rem;line-height: 3;}
#hidagyu ul.titBox li:nth-child(2) {left: 0;top: 20%;}
#hidagyu ul.menuBox li {margin: 0 10px;}
#hidagyu ul.menuBox li ul.menuList li img {width: 150px;display: block;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#hidagyu {padding: 50px 0 0;}
#hidagyu ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#hidagyu ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#hidagyu ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
}

#otanakagyu {padding: 100px 0 0;}
#otanakagyu ul.titBox li:nth-child(1) {left: 0;top: 20%;background: #000;}
#otanakagyu ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#otanakagyu ul.titBox li:nth-child(1) h3 small {margin: 20px auto 0;display: block;font-size: 0.9rem;line-height: 3;}
#otanakagyu ul.titBox li:nth-child(2) {right: 0;top: 0;}
#otanakagyu ul.menuBox li {margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#otanakagyu {padding: 50px 0 0;}
#otanakagyu ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#otanakagyu ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#otanakagyu ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
}

#tan {padding: 100px 0 0;}
#tan ul.titBox {height: 420px;}
#tan ul.titBox li:nth-child(1) {right: 0;top: 0;background: #a8272d;}
#tan ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#tan ul.titBox li:nth-child(2) {left: 0;top: 20%;}
#tan ul.menuBox li {margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#tan {padding: 50px 0 0;}
#tan ul.titBox {height: auto;}
#tan ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#tan ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#tan ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
}

#horumon {padding: 100px 0 0;}
#horumon ul.titBox {height: 400px;}
#horumon ul.titBox li:nth-child(1) {left: 0;top: 25%;background: #a8272d;}
#horumon ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#horumon ul.titBox li:nth-child(2) {right: 0;top: 0;}
#horumon ul.menuBox li {margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#horumon {padding: 50px 0 0;}
#horumon ul.titBox {height: auto;}
#horumon ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#horumon ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#horumon ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
}

#porkchicken {padding: 100px 0 0;}
#porkchicken ul.titBox {height: 420px;}
#porkchicken ul.titBox li:nth-child(1) {right: 0;top: 0;background: #000;}
#porkchicken ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#porkchicken ul.titBox li:nth-child(2) {left: 0;top: 20%;}
#porkchicken ul.menuBox li {margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#porkchicken {padding: 50px 0 0;}
#porkchicken ul.titBox {height: auto;}
#porkchicken ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#porkchicken ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#porkchicken ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
}

#chicken {padding: 100px 0 0;}
#chicken ul.titBox {height: 400px;}
#chicken ul.titBox li:nth-child(1) {left: 0;top: 25%;background: #000;}
#chicken ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#chicken ul.titBox li:nth-child(2) {right: 0;top: 0;}
#chicken ul.menuBox li {margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#chicken {padding: 50px 0 0;}
#chicken ul.titBox {height: auto;}
#chicken ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#chicken ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#chicken ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
}

#seafood {padding: 100px 0 0;}
#seafood ul.titBox {height: 420px;}
#seafood ul.titBox li:nth-child(1) {right: 0;top: 0;background: #a8272d;}
#seafood ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#seafood ul.titBox li:nth-child(2) {left: 0;top: 20%;}
#seafood ul.menuBox li {margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#seafood {padding: 50px 0 0;}
#seafood ul.titBox {height: auto;}
#seafood ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#seafood ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#seafood ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
}

#rice {padding: 100px 0 0;}
#rice ul.titBox {height: 400px;}
#rice ul.titBox li:nth-child(1) {left: 0;top: 25%;background: #a8272d;}
#rice ul.titBox li:nth-child(1) h3 {font-size: 2rem;}
#rice ul.titBox li:nth-child(2) {right: 0;top: 0;}
#rice ul.menuBox li {margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#rice {padding: 50px 0 0;}
#rice ul.titBox {height: auto;}
#rice ul.titBox li:nth-child(1) h3 {font-size: 1.7rem;}
#rice ul.titBox li:nth-child(1) h3 small {margin: 10px auto 0;font-size: 0.8rem;}
#rice ul.menuBox li {width: 100%;padding: 10px 0 0 30px;}
}

#other {padding: 100px 0;text-align: center;}
#other p:nth-of-type(1) {}
#other p:nth-of-type(2) {margin: 30px auto 20px;padding: 10px 30px;display: table;border: 1px solid #000;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#other {padding: 50px 0;}
}

/* --------------------------------------------------------------------------------------------------------------------------- */

#shop {}
#shop #sec1 {padding: 100px 0 0;text-align: center;}
#shop #sec1 h3 {margin: 0 auto 30px;position: relative;font-size: 2.5rem;font-weight: 600;letter-spacing: 0.05em;}
#shop #sec1 h3::after {content: "";width: 25px;height: 1px;position: absolute;bottom: 0;left: 50%;display: block;background: #000;}
#shop #sec1 h3 + p {font-size: 1.2rem;letter-spacing: 0.1em;}
#shop #sec1 ul {margin: 80px auto 0;justify-content: space-between;}
#shop #sec1 ul li:nth-child(1) {width: 100%;}
#shop #sec1 ul li:nth-child(2) {width: 55.5%;}
#shop #sec1 ul li:nth-child(3) {width: 43.5%;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#shop #sec1 {padding: 50px 0 0;}
#shop #sec1 h3 {font-size: 1.5rem;}
#shop #sec1 h3 + p {font-size: 1rem;}
#shop #sec1 ul {margin: 50px auto 0;line-height: 1.4;}
}

#shop #sec2 {padding: 100px 0 0;text-align: center;}
#shop #sec2 h3 {margin: 0 auto 40px;text-align: center;font-size: 4rem;letter-spacing: 0.1em;line-height: 1;}
#shop.hayada #sec2 figure {width: 600px;margin: 0 auto 60px;position: relative;}
#shop.usa #sec2 figure {width: 865px;margin: 0 auto 60px;position: relative;}
#shop #sec2 figure a {position: absolute;display: block;}
#shop #sec2 figure a:hover {background: rgba(255,255,255,0.50);}
#shop.hayada #sec2 figure a:nth-of-type(1) {width: 90px;height: 170px;top: 95px;right: 25px;}
#shop.hayada #sec2 figure a:nth-of-type(2) {width: 133px;height: 80px;bottom: 68px;right: 25px;}
#shop.usa #sec2 figure a:nth-of-type(1) {width: 230px;height: 313px;top: 10px;left: 8px;}
#shop #sec2 ul {justify-content: space-between;}
#shop #sec2 ul li {width: 32%;margin: 0 auto 20px;position: relative;}
#shop #sec2 ul li span {padding: 10px 15px;position: absolute;top: 0;left: 0;z-index: 1;background: #a6272d;color: #fff;font-size: 1.5rem;line-height: 1;}
#shop #sec2 ul li small {display: block;}
#shop #sec2 #pdfbtn {margin: 30px auto 0;}
#shop #sec2 #pdfbtn a {margin: 0 10px;padding: 10px 50px;display: inline-block;background: #000;color: #fff;}
#shop #sec2 #pdfbtn a::after {content: "＞";margin: 0 0 0 10px;}
#shop #sec2 #pdfbtn a span {margin: 0 10px 0 0;font-style: italic;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#shop #sec2 {padding: 50px 0 0;}
#shop #sec2 h3 {font-size: 3rem;}
#shop.hayada #sec2 figure, #shop.usa #sec2 figure {width: 100%;}
#shop.hayada #sec2 figure a:nth-of-type(1) {width: 50px;height: 95px;top: 53px;right: 15px;}
#shop.hayada #sec2 figure a:nth-of-type(2) {width: 72px;height: 45px;bottom: 38px;right: 15px;}
#shop.usa #sec2 figure a:nth-of-type(1) {width: 92px;height: 125px;top: 2px;left: 2px;}
#shop #sec2 ul li {width: 48%;}
#shop #sec2 ul li span {padding: 5px 10px;font-size: 1.2rem;}
#shop #sec2 ul li small {font-size: 0.6rem;}
#shop #sec2 #pdfbtn a {width: 100%;margin: 0 auto 10px;padding: 10px 0;display: block;}
}

#shop #sec3 {width: 100%;padding: 100px 0 0;text-align: center;}
#shop #sec3 h3 {margin: auto auto 30px;font-size: 5rem;letter-spacing: 0.1em;line-height: 1;}
#shop #sec3 iframe {width: 100%;height: 700px;border: 0 none;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#shop #sec3 {padding: 50px 0 0;}
#shop #sec3 h3 {font-size: 3rem;}
#shop #sec3 iframe {height: 400px;}
}

#shop #sec4 {width: 100%;padding: 100px 0 150px;text-align: center;}
#shop #sec4 h3 {margin: auto auto 30px;font-size: 5rem;letter-spacing: 0.1em;line-height: 1;}
#shop #sec4 address {margin: auto auto 30px;padding: 30px 0;position: relative;font-style: normal;}
#shop #sec4 address::before {content: "";width: 50px;height: 1px;margin: auto;position: absolute;top: 0;left: 48%;display: block;background: #000;}
#shop #sec4 address::after {content: "";width: 50px;height: 1px;margin: auto;position: absolute;bottom: 0;left: 48%;display: block;background: #000;}
#shop #sec4 p.pc {max-width: 350px;margin: auto auto 40px;}
#shop #sec4 p.sp {max-width: 250px;margin: auto auto 40px;}
#shop #sec4 p:nth-of-type(2) {font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";}
#shop #sec4 ul#sns {margin: 50px auto;justify-content: center;line-height: 0;}
#shop #sec4 ul#sns li {}
#shop #sec4 figure {}
#shop #sec4 ul#shopBnr {margin: 120px auto 0;justify-content: center;}
#shop #sec4 ul#shopBnr li {width: 40%;margin: 0 10px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#shop #sec4 {padding: 50px 0 100px;}
#shop #sec4 h3 {font-size: 3rem;}
#shop #sec4 address + p {max-width: 300px;}
#shop #sec4 p:nth-of-type(2) {font-size: 0.7rem;}
#shop #sec4 ul#sns {margin: 30px auto 50px;}
#shop #sec4 ul#sns li {width: 20%;margin: 0;}
#shop #sec4 ul#shopBnr {margin: 50px auto 0;}
#shop #sec4 ul#shopBnr li {width: 90%;margin: 0 auto 10px;}
}

/* --------------------------------------------------------------------------------------------------------------------------- */

#recruit {}
#recruit #sec1 {padding: 100px 0 0;}
#recruit #sec1 h3 {margin: 0 auto 30px;text-align: center;font-size: 1.5rem;font-weight: 600;letter-spacing: 0.05em;}
#recruit #sec1 #box {padding: 50px 0 20px;background: #b3272d;color: #fff;}
#recruit #sec1 #box h4 {margin: 0 80px 30px;text-align: center;border-bottom: 1px solid rgba(255,255,255,0.30);font-size: 4.5rem;letter-spacing: 0.05em;}
#recruit #sec1 #box h5 {margin: 0 80px 10px;text-align: center;font-size: 2.5rem;font-weight: 200;letter-spacing: 0.05em;}
#recruit #sec1 #box h5 + p {margin: 0 80px 50px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#recruit #sec1 {padding: 50px 0 0;}
#recruit #sec1 h3 {font-size: 1.3em;}
#recruit #sec1 #box {padding: 30px 0 10px;}
#recruit #sec1 #box h4 {margin: 0 20px 20px;font-size: 2rem;}
#recruit #sec1 #box h5 {margin: 0 20px 10px;font-size: 1.1rem;}
#recruit #sec1 #box h5 + p {margin: 0 20px 30px;}
}

#recruit #sec2 {padding: 100px 0 0;}
#recruit #sec2 h3, #recruit #sec3 h3 {margin: 0 auto 30px;text-align: center;font-size: 1.5rem;font-weight: 600;letter-spacing: 0.05em;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#recruit #sec2 {padding: 50px 0 0;}
#recruit #sec2 h3, #recruit #sec3 h3 {font-size: 1.3em;}
}

#recruit #sec3 {padding: 100px 0 150px;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#recruit #sec3 {padding: 50px 0 80px;}
}

#recruit dl.tdlist {}
#recruit dl.tdlist dt {width: 20%;position: relative;background: #b3272d;color: #fff;border-bottom: 1px solid #000;}
#recruit dl.tdlist dd {width: 80%;padding: 10px 40px;border-bottom: 1px solid #000;}
@media only screen and (min-width: 0px) and (max-width: 767px) {
#recruit dl.tdlist dt {width: 25%;}
#recruit dl.tdlist dd {width: 75%;padding: 10px;}
}

/* --------------------------------------------------------------------------------------------------------------------------- */
