@charset "UTF-8";
/***********************************************
								共 通 項 目
***********************************************/
.text-white { color: #FFF; }

.bg-bk { background-color: #000; }

.bg-darkgray { background-color: #1e1e1e; }

.bg-warmgray { background-color: #efede9; }

.bg-lightgray { background-color: #e6e6e6; }

.headline { font-size: 3em; }

.subheading { font-size: 2.4em; }

.tbn { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }

.button { line-height: 1.8; font-weight: 500; font-size: 1em; background-color: #1e1e1e; color: #FFF; position: relative; text-align: center; border: solid 2px #FFF; transition: .4s; border-radius: 10px; }
.button a { width: 100%; height: 100%; position: absolute; top: 0; left: 0; display: block; text-indent: -9999px; }
.button:hover { background-color: transparent; border-color: #1e1e1e; color: #1e1e1e; border-radius: 1.8em; }

.youtube { position: relative; background-color: #000; }
.youtube .start { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 15%; max-width: 213px; height: auto; }
.youtube a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: block; text-indent: -9999px; }
.youtube:hover .tbn { opacity: .6; }

.swiper { width: 100%; height: 100%; }
.swiper .swiper-slide { height: auto; display: flex; justify-content: center; align-items: center; }

.tbn-slider img:hover { cursor: pointer; }

/***********************************************
						メ イ ン コ ン テ ン ツ
***********************************************/
.header { height: 50px; }
.header .logo { width: 70%; max-width: 300px; }

.spec { font-size: 0.9em; }
.spec tr td { width: 50%; }
.spec tr:nth-child(odd) { background-color: #e6e6e6; }

/***********************************************
								フ ッ タ ー
***********************************************/
.shopinfo { position: relative; }
.shopinfo a { color: #FFF; }
.shopinfo a:hover { text-decoration: underline; }
.shopinfo .shopname { font-size: 1.4em; }

.footer { background-color: #000; width: 100%; margin: 0; padding: 0; text-align: center; }
.footer img { width: 60%; max-width: 300px; }

.fnav { display: flex; flex-wrap: wrap; justify-content: center; width: 100%; margin: auto; }
.fnav li { font-size: 0.8em; line-height: 2.0; width: 100%; position: relative; text-align: left; border-bottom: solid 1px #333; transition: .4s; }
.fnav li:last-child { border-bottom: none; }
.fnav li:hover { background-color: #333; }
.fnav li a { position: absolute; top: 0; left: 0; width: 100%; height: 100%; text-indent: -9999px; }
@media (min-width: 992px) { .fnav { justify-content: space-around; max-width: 1000px; }
  .fnav li { width: auto; text-align: center; border-bottom: none; border-bottom: solid 1px #000; }
  .fnav li:hover { background-color: #000; border-bottom: solid 1px #FFF; } }

.copy { font-size: 1rem; text-align: center; }
