﻿/** @format */

html {
  min-width: 1100px; /* viewport */
}

/*=============================================
 * body
 *=============================================*/

body {
  color: #fff;
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 14px;
  line-height: 30px;
  letter-spacing: 1px;
  background: url(../img/shared/bg.jpg) top center repeat;
  min-width: inherit;
  max-height: 100%;
}

/*=============================================
 * fonts - DON'T EDIT
 *=============================================*/

.fnt-mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.fnt-meiryo {
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴシックPro", "ＭＳ ゴシック", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.fnt-gothic {
  font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/*=============================================
 * .fnt - customs
 *=============================================*/

.fnt-mincho {
}
.fnt-meiryo {
}
.fnt-gothic {
}
.fnt-garamond {
}

/*=============================================
 * #wrapper
 *=============================================*/

#wrapper {
  clear: both;
  width: 100%;
  position: relative;
  overflow: hidden;
}
.wrap {
  width: 1000px;
}

/*=============================================
 * header
 *=============================================*/

#header {
}
#header h1 {
}
#header .logo {
}
#header .tel {
}
#header .nav {
}

#header .header_top .header_left {
  float: left;
  width: 330px;
  background: url(../img/shared/header_bg1.jpg) top center repeat;
  height: 860px;
}

#header .header_top .header_left .logo {
  text-align: center;
  padding-top: 25px;
}
#header .header_top .header_left .logo img {
  width: 316px;
}
#header .header_top .header_left h1 {
  text-align: center;
  width: 168px;
  font-size: 13px;
  line-height: 23px;
  margin: 10px auto -1px;
  padding: 5px 0 33px;
}

#header .header_top .header_left .nav {
  width: 242px;
  margin-bottom: 35px;
  margin: 0 auto;
}

#header .header_top .header_left .nav li {
  float: left;
}
#header .header_top .header_left .nav li:hover,
#header .header_top .header_left .nav li.active {
  background: #920301;
}
#header .header_top .header_left .sub {
  width: 242px;
  margin: 30px auto 53px;
  display: flex;
}
#header .header_top .header_left .insta {
  text-align: center;
}
#header .header_top .header_right {
  float: right;
  width: calc(100% - 330px);
  height: 860px;
  position: relative;
}

#header .header_top .header_right #key {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 860px;
  z-index: 2;
}

#header .head-info {
  position: absolute;
  top: 30px;
  right: 20px;
  z-index: 2;
}

#header .head-info .tel {
  margin-bottom: 11px;
}

/*=============================================
 * fix_nav
 *=============================================*/
.fix-nav {
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  visibility: hidden;
  background: url(../img/shared/bg_footer.jpg) repeat;
  transition: all 0.3s ease;
  z-index: 99;
  height: 100px;
  box-sizing: border-box;
  padding-top: 7px;
}

.fix-nav ul {
  display: flex;
  justify-content: center;
  margin-left: 9px;
}

.fix-nav ul.nav1 li.active,
.fix-nav ul.nav1 li:hover {
  background: #920301;
}

.fix-nav .nav2 {
  padding-top: 7px;
  justify-content: start;
  width: 1000px;
  margin: 0 auto;
  padding-left: 132px;
  box-sizing: border-box;
}

.fix-nav .nav2 li:nth-child(3) {
  margin-left: 32px;
  margin-right: 8px;
}

.fix-nav .nav2 li:nth-child(4) {
  margin: -2px 20px 0 0;
}

.fixed-btn .fix-nav {
  opacity: 1;
  visibility: visible;
}

/*=============================================
 * key
 *=============================================*/

#key {
  background-color: #000;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  min-height: 860px;
  position: relative;
}
#key ul {
  min-height: inherit;
}
#key li {
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  min-height: inherit;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

/*=============================================
 * container
 *=============================================*/

#container {
}

/*=============================================
 * #socialbuttons
 *=============================================*/

#socialbuttons {
  margin: auto;
  padding: 35px 0 0;
  max-width: 350px;
  position: absolute;
  right: 50%;
  margin-right: -476px;
  bottom: 6px;
}

/*=============================================
 * footer
 *=============================================*/

#footer {
}
#footer .logo {
}
#footer .tel {
}
#footer .nav {
}
#footer .nav li {
}
#footer .nav li + li {
}
#footer .nav li + li:before {
  /* display: none; */
}
#footer .nav li:last-child::after {
  content: "\7C";
  padding-left: 17px;
}
#footer {
  background: url(../img/shared/bg_footer.jpg) top center repeat;
  font-size: 16px;
}

#footer .footer_nav {
  background: url(../img/shared/footer_nav_bg.png) top center repeat-x;
  padding: 19px 0;
  text-align: center;
  letter-spacing: 0;
}

#footer .bot_footer {
  padding-bottom: 40px;
}

#footer .bot_footer .footer_info {
  width: 458px;
}

#footer .bot_footer .footer_info .logo {
  padding-top: 29px;
  text-align: center;
}

#footer .bot_footer .footer_info .note1 {
  padding: 7px 0 12px;
  text-align: center;
}

#footer .bot_footer .footer_info .tel {
  margin-left: -9px;
}

#footer .bot_footer .footer_info .txt-tel {
  margin-top: -90px;
  text-align: center;
}

#footer .bot_footer .footer_info .boxinfo {
  font-size: 14px;
  padding-top: 45px;
}

#footer .bot_footer .footer_info .boxinfo dl {
  padding: 9px 0;
  line-height: 21px;
  letter-spacing: 1px;
}

#footer .bot_footer .footer_info .boxinfo dl dt {
  float: left;
  width: 75px;
}

#footer .bot_footer .footer_info .boxinfo dl dd {
  float: left;
  background: url(../img/shared/icon_footer.png) left top 5px no-repeat;
  padding-left: 21px;
}

#footer .bot_footer .footer_info .boxinfo dl dd .title {
  width: 85px;
  display: inline-block;
}

#footer .bot_footer .footer_info .boxinfo dl dd .tilte2 {
  width: 65px;
  display: inline-block;
}

#footer .bot_footer .footer_info .boxinfo dl dd .kc {
  padding-left: 85px;
}

#footer .bot_footer .footer_right {
  margin-top: 49px;
  padding-bottom: 41px;
  width: 489px;
  text-align: center;
  background: url(../img/shared/footer_bg_box.jpg) top center repeat;
}

#footer .bot_footer .footer_right .footer_ttl {
  padding-top: 38px;
}

#footer .bot_footer .footer_right .photo {
  padding-bottom: 21px;
}

#footer .bot_footer .footer_right .box {
  width: 406px;
  margin: 0 auto;
}

#footer .footer_bot {
  background: url(../img/shared/footer_nav_bg.png) top center repeat-x;
  height: 35px;
}

/*=============================================
 * copyright
 *=============================================*/

address {
  background: url(../img/shared/footer_nav_bg.png) top center repeat-x;
  height: 35px;
  line-height: 35px;
}
.linetop {
  background: url(../img/shared/line1.jpg) top center repeat;
  height: 6px;
  box-shadow: 0px 0px 2.55px 0.45px rgba(111, 99, 76, 1);
  z-index: 2;
  position: relative;
}
.line {
  background: url(../img/shared/line1.jpg) top center repeat;
  height: 12px;
  box-shadow: 0px 0px 2.55px 0.45px rgba(111, 99, 76, 1);
  z-index: 2;
  position: relative;
}

.fix_reserve a {
  width: 28px;
  position: fixed;
  top: 150px;
  right: 0px;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  font-size: 20px;
  display: block;
  background-color: #981e1b;
  padding: 30px 15px;
  color: #fef8ed;
  letter-spacing: 2px;
  text-decoration: none;
  z-index: 9999999999999;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  text-align: center;
  opacity: 0;
  visibility: visible;
}

.cookies_link {
  text-align: center;
  font-size: 14px;
}

/*=============================================
******************* bxslider  *****************
*=============================================*/
.bx-controls-direction {
  display: none;
}

.bx-pager {
  display: flex;
  justify-content: center;
  gap: 28px;
  position: relative;
  z-index: 10;
}
.bx-pager > div {
  width: 19px;
  height: 19px;
}
.bx-pager > div a {
  width: 100%;
  height: 100%;
  background: #a75d5d;
  font-size: 0;
  border-radius: 50%;
  display: block;
}
.bx-pager > div a.active,
.bx-pager > div a:hover {
  background: #691e1e;
}

/*=============================================
******************* ttl-common  ***************
*=============================================*/
.ttl-common {
  font-size: 30px;
  font-weight: bold;
  line-height: 50px;
}

.bold {
  font-size: 30px;
  font-weight: bold;
}

.bold small {
  font-size: 20px;
}
