@charset "UTF-8";
@font-face {
  font-family: "NotoSerifJP";
  font-style: normal;
  font-weight: 400;
  src: url("../fonts/NotoSerifJP-Regular.woff") format("woff");
  font-display: swap; }
@font-face {
  font-family: "NotoSerifJP";
  font-style: normal;
  font-weight: 700;
  src: url("../fonts/NotoSerifJP-Bold.woff") format("woff");
  font-display: swap; }
/* リセットCSS */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  /*font: inherit;*/
  vertical-align: baseline; }

html {
  -webkit-font-smoothing: antialiased; }

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1;
  word-break: keep-all;
  line-break: strict;
  word-wrap: break-word;
  overflow-wrap: break-word; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none; }

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

body {
  word-break: break-all;
  -webkit-text-size-adjust: none; }

*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

/*==============================
	基本設定
==============================*/
html, body {
  font-family: "游ゴシック体", YuGothic, "Yu Gothic Medium", "游ゴシック Medium", "游ゴシック", "Yu Gothic", "Hiragino Sans" , "メイリオ", Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  font-weight: 500; }

html {
  font-size: 62.5%; }
  @media screen and (max-width: 767.98px) {
    html {
      font-size: 60.0%; } }
  @media screen and (max-width: 575.98px) {
    html {
      font-size: 58.0%; } }
  @media screen and (max-width: 400px) {
    html {
      font-size: 55.0%; } }

body {
  font-size: 1.6em !important;
  font-weight: 400;
  line-height: 1.6;
  color: #000;
  -webkit-text-stroke: 0.1px;
  text-underline-position: under; }

a {
  color: #FF8102;
  transition: all 0.2s; }
  a:hover {
    text-decoration: none;
    color: #FF8102; }
  a img:hover {
    opacity: 0.7; }

/*ページトップへ戻るボタン*/
/*ページトップへ戻るボタン*/
#pageTop {
  position: fixed;
  bottom: 20px;
  right: 20px;
  z-index: 999; }

#pageTop i {
  padding-top: 1px;
  font-size: 2.8rem; }

#pageTop a {
  display: block;
  z-index: 999;
  padding: 9px 0 0 0;
  border-radius: 30px;
  width: 50px;
  height: 50px;
  background-color: rgba(171, 171, 171, 0.75);
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  text-align: center; }

#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7; }

/*==============================
	共通
==============================*/
/*フォントサイズ*/
.fs10 {
  font-size: 1rem; }
  @media screen and (max-width: 767.98px) {
    .fs10 {
      font-size: 0.95rem; } }

.fs11 {
  font-size: 1.1rem; }
  @media screen and (max-width: 767.98px) {
    .fs11 {
      font-size: 1.045rem; } }

.fs12 {
  font-size: 1.2rem; }
  @media screen and (max-width: 767.98px) {
    .fs12 {
      font-size: 1.14rem; } }

.fs13 {
  font-size: 1.3rem; }
  @media screen and (max-width: 767.98px) {
    .fs13 {
      font-size: 1.235rem; } }

.fs14 {
  font-size: 1.4rem; }
  @media screen and (max-width: 767.98px) {
    .fs14 {
      font-size: 1.33rem; } }

.fs15 {
  font-size: 1.5rem; }
  @media screen and (max-width: 767.98px) {
    .fs15 {
      font-size: 1.425rem; } }

.fs17 {
  font-size: 1.7rem; }
  @media screen and (max-width: 767.98px) {
    .fs17 {
      font-size: 1.615rem; } }

.fs18 {
  font-size: 1.8rem; }
  @media screen and (max-width: 767.98px) {
    .fs18 {
      font-size: 1.71rem; } }

.fs20 {
  font-size: 2rem; }
  @media screen and (max-width: 767.98px) {
    .fs20 {
      font-size: 1.9rem; } }

.fs21 {
  font-size: 2.1rem; }
  @media screen and (max-width: 767.98px) {
    .fs21 {
      font-size: 1.995rem; } }

.fs22 {
  font-size: 2.2rem; }
  @media screen and (max-width: 767.98px) {
    .fs22 {
      font-size: 2.09rem; } }

.fs24 {
  font-size: 2.4rem; }
  @media screen and (max-width: 767.98px) {
    .fs24 {
      font-size: 2.28rem; } }

.fs25 {
  font-size: 2.5rem; }
  @media screen and (max-width: 767.98px) {
    .fs25 {
      font-size: 2.375rem; } }

.fs26 {
  font-size: 2.6rem; }
  @media screen and (max-width: 767.98px) {
    .fs26 {
      font-size: 2.47rem; } }

.fs28 {
  font-size: 2.8rem; }
  @media screen and (max-width: 767.98px) {
    .fs28 {
      font-size: 2.66rem; } }

.fs30 {
  font-size: 3rem; }
  @media screen and (max-width: 767.98px) {
    .fs30 {
      font-size: 2.85rem; } }

.fs32 {
  font-size: 3.2rem; }
  @media screen and (max-width: 767.98px) {
    .fs32 {
      font-size: 3.04rem; } }

.fs34 {
  font-size: 3.4rem; }
  @media screen and (max-width: 767.98px) {
    .fs34 {
      font-size: 3.23rem; } }

.fs35 {
  font-size: 3.5rem; }
  @media screen and (max-width: 767.98px) {
    .fs35 {
      font-size: 3.325rem; } }

.fs36 {
  font-size: 3.6rem; }
  @media screen and (max-width: 767.98px) {
    .fs36 {
      font-size: 3.42rem; } }

.fs38 {
  font-size: 3.8rem; }
  @media screen and (max-width: 767.98px) {
    .fs38 {
      font-size: 3.61rem; } }

.fs40 {
  font-size: 4rem; }
  @media screen and (max-width: 767.98px) {
    .fs40 {
      font-size: 3.8rem; } }

.fs42 {
  font-size: 4.2rem; }
  @media screen and (max-width: 767.98px) {
    .fs42 {
      font-size: 3.99rem; } }

.fs44 {
  font-size: 4.4rem; }
  @media screen and (max-width: 767.98px) {
    .fs44 {
      font-size: 4.18rem; } }

.fs48 {
  font-size: 4.8rem; }
  @media screen and (max-width: 767.98px) {
    .fs48 {
      font-size: 4.56rem; } }

.fs74 {
  font-size: 7.4rem; }
  @media screen and (max-width: 767.98px) {
    .fs74 {
      font-size: 7.03rem; } }

.fs88 {
  font-size: 8.8rem; }
  @media screen and (max-width: 767.98px) {
    .fs88 {
      font-size: 8.36rem; } }

/**背景カラー**/
.bg-main {
  background-color: #FF8102; }

.bg-main-l {
  background-color: #ff9e3d; }

.bg-sub {
  background-color: #B96E20; }

.bg-red {
  background-color: #FF0000; }

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

.bg-gray {
  background-color: #F2F2F2; }

/**テキストカラー**/
.cl-main {
  color: #FF8102; }

.cl-black {
  color: #000; }

.cl-white {
  color: #fff; }

.cl-sub {
  color: #B96E20; }

.cl-red {
  color: #FF0000; }

.cl-gray {
  color: #F2F2F2; }

/**テキスト太さ**/
.b {
  font-weight: 700 !important; }

/*サイズ100%*/
.size-full {
  width: 100%;
  height: auto; }

/*ulリスト・有り*/
.list-style-inside {
  list-style: inside; }
  .list-style-inside li {
    text-indent: -2.3rem;
    padding-left: 2.3rem;
    line-height: 3rem; }

/*行間*/
.line-h_13 {
  line-height: 1.3; }

.line-h_14 {
  line-height: 1.4; }

/*レスポンシブ改行*/
@media screen and (min-width: 768px) {
  .br-pc {
    display: block; }

  .br-sp {
    display: none; } }
@media screen and (max-width: 767.98px) {
  .br-pc {
    display: none; }

  .br-sp {
    display: block; } }
@media screen and (min-width: 992px) {
  .br_lg {
    display: none; } }
@media screen and (max-width: 991.98px) {
  .br_lg {
    display: block; } }
@media screen and (min-width: 576px) {
  .br_sm {
    display: none; }

  .br_sm-b {
    display: block; } }
@media screen and (max-width: 575.98px) {
  .br_sm {
    display: block; }

  .br_sm-b {
    display: none; } }
@media (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none; } }
/*アンカーズレ調整*/
.anchor_wrap {
  display: block; }
  @media screen and (max-width: 991.98px) {
    .anchor_wrap {
      margin-top: -75px;
      padding-top: 75px; } }

#toppage header.pre {
  background: url(../images/main_pc.jpg) no-repeat top center;
  background-size: cover;
  margin-bottom: 50px; }
  @media screen and (max-width: 767.98px) {
    #toppage header.pre {
      background: url(../images/main_sp.jpg) no-repeat center right;
      background-size: cover;
      margin-bottom: 30px; } }

h3.tail {
  position: relative;
  display: inline-block;
  padding: 0 55px; }

h3.tail:before, h3.tail:after {
  position: absolute;
  top: 40%;
  display: inline-block;
  width: 55px;
  height: 10px;
  content: '';
  background: url(../images/h_tail.png) no-repeat center;
  background-size: contain; }

h3.tail:before {
  left: -5px; }

h3.tail:after {
  right: -5px; }

.tate {
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl; }

.borderd {
  border: 1px solid #FFF; }

.font_goth {
  font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Yu Gothic Medium", "游ゴシック Medium" , sans-serif, "メイリオ", Meiryo; }

.header_card {
  background-color: rgba(0, 0, 0, 0.5); }

.border_cl_main {
  border-top: 1px solid #FF8102;
  border-left: 1px solid #FF8102;
  border-right: 1px solid #FF8102; }

.border_btm_cl_main {
  border-bottom: 1px solid #FF8102; }

.border_btm_cl_white {
  border-bottom: 1px solid #fff; }

form input.btn_form {
  background-color: #fff;
  border: 1px solid #FF8102; }

.border_cl_black {
  border-top: 1px solid #8b8b8b;
  border-left: 1px solid #8b8b8b;
  border-right: 1px solid #8b8b8b; }

.border_btm_cl_black {
  border-bottom: 1px solid #8b8b8b; }

.bg_grd {
  background: linear-gradient(70deg, #ED7800, #E8380D); }

/*-------------- 差し替え後ページ --------------*/
#header {
  position: absolute;
  width: 100%;
  z-index: 1000;
  background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, black 45%);
  padding-bottom: 10px; }
  #header h1 a {
    width: 320px;
    max-width: 50%; }
  @media screen and (max-width: 991.98px) {
    #header h1 a {
      max-width: 60%; } }
  @media screen and (max-width: 767.98px) {
    #header h1 a {
      width: 280px;
      max-width: 55%; } }
  @media screen and (max-width: 575.98px) {
    #header h1 a {
      width: 220px;
      max-width: 98%; } }
  #header .pc-cv a.bg-main {
    color: #fff;
    font-weight: 700;
    width: 180px;
    height: 50px;
    padding: 0.75rem 1.0rem;
    font-size: 1.4rem;
    cursor: pointer;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center; }
    #header .pc-cv a.bg-main:hover {
      color: #fff;
      opacity: 0.7; }
  @media screen and (min-width: 992px) {
    #header .navbar {
      padding: 0; }
      #header .navbar .nav-item {
        flex-grow: 1;
        text-align: center;
        transition: 0.2s; }
        #header .navbar .nav-item .nav-link {
          border-right: 1px solid #fff;
          margin: 10px 0; }
        #header .navbar .nav-item:first-child .nav-link {
          border-left: 1px solid #fff; }
        #header .navbar .nav-item:hover {
          background: #fff;
          cursor: pointer;
          transition: 0.4s; }
          #header .navbar .nav-item:hover .nav-link {
            color: #000; }
      #header .navbar .sp-item {
        display: none; }
      #header .navbar .nav-link {
        color: #fff;
        font-weight: 700;
        line-height: 1.2; } }
  @media screen and (max-width: 991.98px) {
    #header {
      position: fixed; }
      #header .navbar {
        background-color: #000; }
        #header .navbar .nav-item {
          text-align: left; }
          #header .navbar .nav-item .nav-link {
            border-bottom: 1px solid #5c5c5c;
            margin: 0;
            padding: 12px 10px; }
          #header .navbar .nav-item:last-child .nav-link {
            border-bottom: none; }
          #header .navbar .nav-item:hover {
            background: #fff;
            cursor: pointer;
            transition: all 0.6s cubic-bezier(0.2, 1, 0.2, 1); }
            #header .navbar .nav-item:hover .nav-link {
              color: #000; }
        #header .navbar .sp-item {
          background: #FF8102; }
          #header .navbar .sp-item:hover {
            background: #B96E20; }
            #header .navbar .sp-item:hover .nav-link {
              color: #fff; }
        #header .navbar .sp-item.small {
          background: #000; }
          #header .navbar .sp-item.small:hover {
            background: #000;
            opacity: 1; }
          #header .navbar .sp-item.small ul li {
            width: calc(100% / 4); }
            #header .navbar .sp-item.small ul li a {
              border-right: 1px solid #5c5c5c;
              text-align: center;
              line-height: 1.2;
              font-size: 1.1rem;
              padding: 10px 5px; }
              #header .navbar .sp-item.small ul li a:hover {
                opacity: 0.7; } }
      @media screen and (max-width: 991.98px) and (max-width: 500px) {
        #header .navbar .sp-item.small ul {
          flex-wrap: wrap; }
          #header .navbar .sp-item.small ul li {
            width: 50%; } }
  @media screen and (max-width: 991.98px) {
        #header .navbar .nav-link {
          color: #fff;
          font-weight: 700;
          line-height: 1.2; }
          #header .navbar .nav-link img {
            vertical-align: bottom; } }

#header.bg-black {
  background: #000; }

@media screen and (min-width: 992px) {
  #header.position-lg-static {
    position: static; } }

#header.sp_scroll {
  background: #000;
  padding-bottom: 0; }

/*------------------  ハンバーガーアイコン ------------------*/
button.navbar-toggler {
  outline: none;
  padding: 0;
  width: 50px;
  height: 50px;
  /*ボタン内側*/
  /*activeクラスが付与されると線が回転して×に*/ }
  button.navbar-toggler .openbtn1 {
    position: relative;
    background: transparent;
    cursor: pointer;
    width: 50px;
    height: 50px; }
  button.navbar-toggler .openbtn1 span {
    display: inline-block;
    transition: all .4s;
    /*アニメーションの設定*/
    position: absolute;
    left: 13px;
    height: 3px;
    background: #fff;
    width: 24px; }
  button.navbar-toggler .openbtn1 span:nth-of-type(1) {
    top: 15px; }
  button.navbar-toggler .openbtn1 span:nth-of-type(2) {
    top: 23px; }
  button.navbar-toggler .openbtn1 span:nth-of-type(3) {
    top: 31px; }
  button.navbar-toggler .openbtn1.active span:nth-of-type(1) {
    top: 15px;
    left: 10px;
    transform: translateY(6px) rotate(-45deg);
    width: 62%; }
  button.navbar-toggler .openbtn1.active span:nth-of-type(2) {
    opacity: 0;
    /*真ん中の線は透過*/ }
  button.navbar-toggler .openbtn1.active span:nth-of-type(3) {
    top: 27px;
    left: 10px;
    transform: translateY(-6px) rotate(45deg);
    width: 62%; }

#toppage #main-visual {
  background: url(../images/main_pc.jpg) no-repeat top center;
  background-size: cover; }
  @media screen and (max-width: 767.98px) {
    #toppage #main-visual {
      background: url(../images/main_sp.jpg) no-repeat center right;
      background-size: cover; } }

#news #news-box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  -ms-justify-content: flex-start;
  justify-content: flex-start;
  -ms-flex-pack: flex-start;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  align-items: flex-start; }
  #news #news-box h3, #news #news-box a#news-btn {
    border: 1px solid;
    padding: 12px 15px;
    width: 15%;
    height: 100%;
    color: #fff; }
  #news #news-box div#news-list {
    border-top: 1px solid;
    border-bottom: 1px solid;
    padding: 12px 10px;
    width: 70%;
    height: 100%; }
    #news #news-box div#news-list a {
      color: #fff; }
      #news #news-box div#news-list a:hover {
        opacity: 0.6; }
  #news #news-box a#news-btn:hover {
    color: #FF8102;
    border-color: #fff;
    background-color: #fff; }
  @media screen and (max-width: 991.98px) {
    #news #news-box {
      -webkit-flex-direction: column;
      -moz-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; }
      #news #news-box h3, #news #news-box a#news-btn {
        border: none;
        padding: 5px 15px;
        width: auto;
        height: auto;
        margin: auto; }
      #news #news-box div#news-list {
        border: none;
        width: 95%;
        height: auto; }
      #news #news-box a#news-btn {
        width: 60%; } }
#news #news-list dl {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: flex-start;
  -moz-justify-content: flex-start;
  -ms-justify-content: flex-start;
  justify-content: flex-start;
  -ms-flex-pack: flex-start;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  align-items: flex-start;
  -webkit-flex-wrap: wrap;
  -moz-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

#opening_cp {
  background-blend-mode: screen;
  background-repeat: no-repeat;
  background-image: url("../images/opcp_bg.png");
  background-color: rgba(255, 255, 255, 0.8);
  background-size: cover;
  background-position: right;
  width: 100%; }
  @media screen and (max-width: 767.98px) {
    #opening_cp {
      background: none; } }

.cv_webentry a {
  display: block;
  font-weight: 700;
  color: #fff;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  padding: 1.0rem 2.0rem;
  height: 90px;
  font-size: 2.4rem;
  position: relative; }
  .cv_webentry a::after {
    position: absolute;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #fff;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    top: 50%;
    right: 20px;
    transition: all 0.6s cubic-bezier(0.2, 1, 0.2, 1);
    font-size: 2.0rem; }
  .cv_webentry a:hover {
    opacity: 0.7; }
    .cv_webentry a:hover::after {
      right: 15px; }
.cv_webentry a.staff {
  height: inherit;
  padding: 0 1.5rem;
  width: 540px;
  max-width: 100%; }
  .cv_webentry a.staff::after {
    font-size: 1.4rem; }
  .cv_webentry a.staff .inner {
    padding: 1.0rem;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    .cv_webentry a.staff .inner span {
      margin-left: 3.0rem; }
@media screen and (max-width: 991.98px) {
  .cv_webentry a {
    font-size: 2.0rem;
    height: 75px; } }
@media screen and (max-width: 767.98px) {
  .cv_webentry a::after {
    font-size: 1.5rem; }
  .cv_webentry a.staff .inner {
    -webkit-flex-direction: column;
    -moz-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    line-height: 1.3; }
    .cv_webentry a.staff .inner span {
      margin-left: 0; } }
@media screen and (max-width: 575.98px) {
  .cv_webentry a {
    font-size: 1.8rem;
    height: 70px; }
    .cv_webentry a img {
      width: 40px; } }

#point .box {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: space-between;
  -moz-justify-content: space-between;
  -ms-justify-content: space-between;
  justify-content: space-between;
  -ms-flex-pack: space-between;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  -webkit-flex-direction: column;
  -moz-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column; }
#point .btn_black {
  width: 75%;
  height: 40px;
  min-width: 190px;
  font-size: 1.4rem;
  font-weight: 700;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  -ms-align-items: center;
  align-items: center;
  padding: 0 20px 0 10px;
  color: #fff;
  border: 2px solid #000;
  background-color: #000;
  text-align: center;
  position: relative; }
  @media screen and (max-width: 575.98px) {
    #point .btn_black {
      font-size: 1.5rem;
      width: 90%; } }
  #point .btn_black::after {
    position: absolute;
    content: "";
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #fff;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    top: 51%;
    right: 20px;
    transition: all 0.6s cubic-bezier(0.2, 1, 0.2, 1);
    font-size: 1.2rem; }
  #point .btn_black:hover {
    color: #000;
    background-color: #fff;
    transition: all 0.3s;
    opacity: 1; }
    #point .btn_black:hover::after {
      color: #000; }
#point .a1ex_box {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000; }
  #point .a1ex_box .title {
    line-height: 1.3; }
    @media screen and (max-width: 767.98px) {
      #point .a1ex_box .title {
        text-align: center;
        padding: 0.5rem; } }
  #point .a1ex_box .btn_black {
    width: auto;
    min-width: 260px; }

#price table {
  border: 1px solid #000; }
  #price table th, #price table td {
    padding: 1.5rem 2.0rem;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    justify-content: center;
    -ms-flex-pack: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    align-items: center;
    vertical-align: middle;
    font-weight: 700; }
  #price table th {
    background-color: #000;
    color: #fff;
    font-size: 2.0rem;
    text-align: center;
    min-width: 175px;
    border-bottom: 1px solid #fff; }
  #price table td {
    border-right: 1px solid #000;
    line-height: 1.3; }
    #price table td:last-child {
      border-right: none; }
    #price table td:nth-child(2) {
      font-size: 2.4rem;
      min-width: 150px; }
      #price table td:nth-child(2) .taxin {
        display: block;
        font-size: 70%; }
  #price table tr {
    border-bottom: 1px solid #000; }
    #price table tr:last-child {
      border-right: none; }
      #price table tr:last-child th {
        border-bottom: none; }
  #price table .column2 th, #price table .column2 td {
    width: 50%; }
  @media screen and (max-width: 991.98px) {
    #price table th, #price table td {
      padding: 1.5rem; }
    #price table td:nth-child(2) {
      padding: 0.8rem; } }
  @media screen and (max-width: 767.98px) {
    #price table {
      border: 2px solid #000; }
      #price table th, #price table td {
        width: 100%;
        display: block; }
      #price table th {
        font-size: 2.2rem; }
      #price table td {
        border-right: none; }
        #price table td:last-child {
          border-right: none;
          padding: 1.5rem 2.5rem; }
        #price table td:nth-child(2) {
          border-bottom: 1px solid #000;
          font-size: 2.8rem; }
          #price table td:nth-child(2) .taxin {
            display: inline-block;
            font-size: 70%; }
      #price table .column2 th, #price table .column2 td {
        width: 100%;
        display: block; } }
  @media screen and (max-width: 575.98px) {
    #price table th {
      font-size: 1.8rem;
      line-height: 1.3;
      padding: 0.8rem 1.5rem; } }

#facility table tr {
  border-top: 1px solid #fff; }
  #facility table tr:last-child {
    border-bottom: 1px solid #fff; }
#facility table th, #facility table td {
  color: #fff;
  padding: 2.0rem 1.5rem; }
#facility table th {
  text-align: center;
  font-weight: 700;
  font-size: 2.0rem;
  width: 28%;
  min-width: 280px;
  vertical-align: middle; }
@media screen and (max-width: 767.98px) {
  #facility table th, #facility table td {
    width: 100%;
    display: block; }
  #facility table th {
    padding: 2.0rem 1.5rem 0.5rem; }
  #facility table td {
    padding: 0rem 1.5rem 2.0rem; } }
#facility h4 {
  border: 1px solid #fff; }
#facility .machine_list {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: center;
  -moz-justify-content: center;
  -ms-justify-content: center;
  justify-content: center;
  -ms-flex-pack: center;
  -webkit-align-items: flex-start;
  -moz-align-items: flex-start;
  -ms-align-items: flex-start;
  align-items: flex-start; }
  #facility .machine_list li.machine_list-title {
    color: #fff;
    font-weight: 700;
    font-size: 2.0rem;
    text-align: center;
    padding: 0.5rem 1rem; }
    #facility .machine_list li.machine_list-title a {
      padding: 0.2rem 2.0rem 0.2rem 1.0rem; }
      #facility .machine_list li.machine_list-title a:hover {
        color: #fff;
        opacity: 0.7; }
  #facility .machine_list .machine_list-items {
    text-align: left; }
    #facility .machine_list .machine_list-items li {
      color: #fff;
      font-weight: 700;
      font-size: 1.6rem;
      border-bottom: 1px solid #cacaca;
      padding: 0.8rem 1.5rem;
      line-height: 1.3; }
      #facility .machine_list .machine_list-items li span {
        display: inline-block;
        font-size: 85%; }
      #facility .machine_list .machine_list-items li:last-child {
        border-bottom: none; }
  @media screen and (max-width: 991.98px) {
    #facility .machine_list {
      -webkit-flex-wrap: wrap;
      -moz-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-flex-direction: column;
      -moz-flex-direction: column;
      -ms-flex-direction: column;
      flex-direction: column; }
      #facility .machine_list li.machine_list-title a {
        padding: 0.2rem 2.0rem; } }
#facility .accordion-area {
  list-style: none;
  width: 96%;
  max-width: 900px; }
#facility .trigger {
  position: relative;
  cursor: pointer;
  transition: all .2s ease; }
#facility .accordion-box {
  display: none; }
#facility .trigger::after {
  position: absolute;
  content: "";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #fff;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  top: 20%;
  right: 0;
  transition: all 0.6s cubic-bezier(0.2, 1, 0.2, 1);
  font-size: 1.2rem;
  transform: rotate(90deg) translate3d(0, 0, 0);
  transform-origin: center; }
#facility .trigger.opened::after {
  transform: rotate(-90deg) translate3d(0, 0, 0); }
#facility .icon_r, #facility .icon_r-black {
  position: relative; }
  #facility .icon_r::before, #facility .icon_r-black::before, #facility .icon_r::after, #facility .icon_r-black::after {
    position: absolute;
    content: '';
    background-color: #fff; }
  #facility .icon_r::before, #facility .icon_r-black::before {
    width: 8px;
    height: 1px;
    top: 48%;
    right: 14px;
    transform: rotate(45deg); }
  #facility .icon_r::after, #facility .icon_r-black::after {
    width: 19px;
    height: 1px;
    top: 54%;
    right: 15px;
    transform: rotate(0deg); }
#facility .icon_r-black::before, #facility .icon_r-black::after {
  background-color: #8f8f8f; }
#facility .icon_r-black::before {
  width: 8px;
  right: 15px; }
#facility .icon_r-black::after {
  width: 17px;
  top: 58%; }

#amenities .amenities-list li {
  width: calc(84% / 4);
  margin: 10px 2% 0;
  color: #fff;
  text-align: center;
  line-height: 1.3;
  max-width: 200px; }
  #amenities .amenities-list li img {
    width: 85%; }
@media screen and (max-width: 991.98px) {
  #amenities .amenities-list li {
    width: 130px;
    margin: 15px 1.5% 0; } }

#corona .row {
  border-top: 1px solid #000;
  border-bottom: 1px solid #000; }
#corona .corona-list li {
  width: calc( 85% / 5 );
  min-width: 145px;
  margin: 15px 1.5% 0;
  color: #000;
  text-align: center;
  line-height: 1.3; }
  #corona .corona-list li img {
    width: 120px; }
@media screen and (max-width: 991.98px) {
  #corona .corona-list li {
    width: calc( 90% / 3 );
    margin: 10px 1.6% 0;
    min-width: inherit; }
    #corona .corona-list li figcaption {
      font-size: 1.4rem; } }
@media screen and (max-width: 480px) {
  #corona .corona-list li {
    width: 45%;
    margin: 10px 0.5% 0; } }

#shop .sns_btn {
  height: 40px; }
  #shop .sns_btn img {
    max-height: 100%; }

#foot_link ul li {
  padding: 0.5rem 2.0rem;
  border-left: 1px solid #707070; }
  #foot_link ul li:last-child {
    border-right: 1px solid #707070; }
  #foot_link ul li a {
    padding: 0.2rem 1.0rem;
    color: #000; }
    #foot_link ul li a:hover {
      opacity: 0.6; }
@media screen and (max-width: 767.98px) {
  #foot_link ul li {
    padding: 0.2rem 1.4rem; }
    #foot_link ul li a {
      font-size: 1.4rem;
      padding: 0 0.4rem; } }
@media screen and (max-width: 575.98px) {
  #foot_link ul li {
    padding: 0.1rem 0.8rem; }
    #foot_link ul li a {
      font-size: 1.2rem; } }
@media screen and (max-width: 420px) {
  #foot_link ul {
    flex-wrap: wrap; }
    #foot_link ul li {
      width: 50%;
      line-height: 1.2;
      margin-bottom: 0.8rem;
      text-align: center; }
      #foot_link ul li:nth-child(2) {
        border-right: 1px solid #707070; } }

@media screen and (max-width: 991.98px) {
  main {
    padding-top: 70px; } }

.indent {
      margin-left: 1rem;
      text-indent: -1.5rem;
	text-align: justify;
    }

.underline{
text-decoration: underline;	
}

a.hover_style2{
	background-color:#fff; /*背景に白を設定*/
	display:flex; /*ブロック化*/
	
}
a.hover_style2 img{
	transition: all 0.5s ease;
}
/*# sourceMappingURL=style.css.map */
