@charset "UTF-8";
/* ===================================================================
CSS information

file name	: common.css
author		 : Abilive
style info : 基本・共通設定
=================================================================== */
/* ===================================================================
CSS information

file name  : _settings.scss
author     : Abilive
style info : 汎用設定
=================================================================== */
.tmp_tbl_base, table.tmp_table, table.tmp_table_s {
  line-height: 1.5;
  width: 100%;
  position: relative;
  z-index: 1;
}
.tmp_tbl_base.w_1, table.w_1.tmp_table, table.w_1.tmp_table_s {
  width: 10rem;
}
.tmp_tbl_base.w_2, table.w_2.tmp_table, table.w_2.tmp_table_s {
  width: 20rem;
}
.tmp_tbl_base.w_3, table.w_3.tmp_table, table.w_3.tmp_table_s {
  width: 30rem;
}
.tmp_tbl_base > caption, table.tmp_table > caption, table.tmp_table_s > caption {
  margin-bottom: 1.07rem;
  line-height: 1;
  font-weight: 500;
}
@media only screen and (min-width: 768px) {
  .tmp_tbl_base > caption, table.tmp_table > caption, table.tmp_table_s > caption {
    font-size: 1.07rem;
  }
}
.tmp_tbl_base > thead > tr > th, table.tmp_table > thead > tr > th, table.tmp_table_s > thead > tr > th,
.tmp_tbl_base > thead > tr > td,
table.tmp_table > thead > tr > td,
table.tmp_table_s > thead > tr > td {
  border-color: #e1e1e1;
  border-style: solid;
  border-width: 0;
  font-weight: normal;
  text-align: center;
  border-top-width: 1px;
  border-right-width: 1px;
}
@media only screen and (min-width: 768px) {
  .tmp_tbl_base > thead > tr > th, table.tmp_table > thead > tr > th, table.tmp_table_s > thead > tr > th,
  .tmp_tbl_base > thead > tr > td,
  table.tmp_table > thead > tr > td,
  table.tmp_table_s > thead > tr > td {
    padding: 1.25em 1.5em 1.25em 3.5em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_tbl_base > thead > tr > th, table.tmp_table > thead > tr > th, table.tmp_table_s > thead > tr > th,
  .tmp_tbl_base > thead > tr > td,
  table.tmp_table > thead > tr > td,
  table.tmp_table_s > thead > tr > td {
    padding: 1em;
  }
}
.tmp_tbl_base > thead > tr > th:last-child, table.tmp_table > thead > tr > th:last-child, table.tmp_table_s > thead > tr > th:last-child,
.tmp_tbl_base > thead > tr > td:last-child,
table.tmp_table > thead > tr > td:last-child,
table.tmp_table_s > thead > tr > td:last-child {
  border-right-width: 0;
}
.tmp_tbl_base > thead > tr > th, table.tmp_table > thead > tr > th, table.tmp_table_s > thead > tr > th {
  font-weight: 500;
  letter-spacing: .05em;
}
.tmp_tbl_base > tbody > tr:first-child > th, table.tmp_table > tbody > tr:first-child > th, table.tmp_table_s > tbody > tr:first-child > th, .tmp_tbl_base > tbody > tr:first-child > td, table.tmp_table > tbody > tr:first-child > td, table.tmp_table_s > tbody > tr:first-child > td, .tmp_tbl_base > tfoot > tr:first-child > th, table.tmp_table > tfoot > tr:first-child > th, table.tmp_table_s > tfoot > tr:first-child > th, .tmp_tbl_base > tfoot > tr:first-child > td, table.tmp_table > tfoot > tr:first-child > td, table.tmp_table_s > tfoot > tr:first-child > td {
  border-top-width: 1px;
  border-bottom-width: 1px;
}
.tmp_tbl_base > tbody > tr > th, table.tmp_table > tbody > tr > th, table.tmp_table_s > tbody > tr > th,
.tmp_tbl_base > tbody > tr > td,
table.tmp_table > tbody > tr > td,
table.tmp_table_s > tbody > tr > td, .tmp_tbl_base > tfoot > tr > th, table.tmp_table > tfoot > tr > th, table.tmp_table_s > tfoot > tr > th,
.tmp_tbl_base > tfoot > tr > td,
table.tmp_table > tfoot > tr > td,
table.tmp_table_s > tfoot > tr > td {
  border-color: #e1e1e1;
  border-style: solid;
  border-width: 0;
  font-weight: normal;
  text-align: center;
  border-bottom-width: 1px;
}
@media only screen and (min-width: 768px) {
  .tmp_tbl_base > tbody > tr > th, table.tmp_table > tbody > tr > th, table.tmp_table_s > tbody > tr > th,
  .tmp_tbl_base > tbody > tr > td,
  table.tmp_table > tbody > tr > td,
  table.tmp_table_s > tbody > tr > td, .tmp_tbl_base > tfoot > tr > th, table.tmp_table > tfoot > tr > th, table.tmp_table_s > tfoot > tr > th,
  .tmp_tbl_base > tfoot > tr > td,
  table.tmp_table > tfoot > tr > td,
  table.tmp_table_s > tfoot > tr > td {
    padding: 1.25em 1.5em 1.25em 3.5em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_tbl_base > tbody > tr > th, table.tmp_table > tbody > tr > th, table.tmp_table_s > tbody > tr > th,
  .tmp_tbl_base > tbody > tr > td,
  table.tmp_table > tbody > tr > td,
  table.tmp_table_s > tbody > tr > td, .tmp_tbl_base > tfoot > tr > th, table.tmp_table > tfoot > tr > th, table.tmp_table_s > tfoot > tr > th,
  .tmp_tbl_base > tfoot > tr > td,
  table.tmp_table > tfoot > tr > td,
  table.tmp_table_s > tfoot > tr > td {
    padding: 1em;
  }
}
.tmp_tbl_base > tbody > tr > th, table.tmp_table > tbody > tr > th, table.tmp_table_s > tbody > tr > th, .tmp_tbl_base > tfoot > tr > th, table.tmp_table > tfoot > tr > th, table.tmp_table_s > tfoot > tr > th {
  font-weight: 500;
  letter-spacing: .05em;
}
.tmp_tbl_base > tbody > tr > td, table.tmp_table > tbody > tr > td, table.tmp_table_s > tbody > tr > td, .tmp_tbl_base > tfoot > tr > td, table.tmp_table > tfoot > tr > td, table.tmp_table_s > tfoot > tr > td {
  text-align: left;
}
.tmp_tbl_base.th_color th, table.th_color.tmp_table th, table.th_color.tmp_table_s th {
  background-color: #ececec;
}

table.tmp_table_s > tbody > tr > th,
table.tmp_table_s > tbody > tr > td,
table.tmp_table_s > thead > tr > th,
table.tmp_table_s > thead > tr > td,
table.tmp_table_s > tfoot > tr > th,
table.tmp_table_s > tfoot > tr > td {
  font-weight: normal;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  table.tmp_table_s > tbody > tr > th,
  table.tmp_table_s > tbody > tr > td,
  table.tmp_table_s > thead > tr > th,
  table.tmp_table_s > thead > tr > td,
  table.tmp_table_s > tfoot > tr > th,
  table.tmp_table_s > tfoot > tr > td {
    padding: 0.64em;
  }
}
@media only screen and (max-width: 767px) {
  table.tmp_table_s > tbody > tr > th,
  table.tmp_table_s > tbody > tr > td,
  table.tmp_table_s > thead > tr > th,
  table.tmp_table_s > thead > tr > td,
  table.tmp_table_s > tfoot > tr > th,
  table.tmp_table_s > tfoot > tr > td {
    padding: 0.64em;
  }
}
table.tmp_table_s > tbody > tr > th:not(:last-child),
table.tmp_table_s > tbody > tr > td:not(:last-child) {
  border-right-width: 1px;
}
table.tmp_table_s > tfoot > tr > th {
  background-color: #c3c8bc !important;
  border-right-width: 1px;
}
table.tmp_table_s > tfoot > tr > td:not(:last-child) {
  border-right-width: 1px;
}

button {
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
}
button::-ms-expand {
  display: none;
}

.tmp_btn {
  width: 100%;
  line-height: 1.4;
  position: relative;
  display: flex;
  align-items: center;
  max-width: none;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Ｐゴシック", "MS PGothic", "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, sans-serif;
  font-weight: 400;
  font-size: inherit;
  padding: 0;
}
.tmp_btn::-ms-expand {
  display: none;
}
@media only screen and (max-width: 767px) {
  .tmp_btn {
    justify-content: center;
  }
}
.tmp_btn .jp {
  display: flex;
  align-items: center;
  text-align: center;
  justify-content: center;
  line-height: 1.3;
  letter-spacing: .16em;
}
.tmp_btn a,
.tmp_btn .pseudo_a {
  border-radius: 0.21rem;
  background-color: #FFF;
  transition: box-shadow 0.1s ease-out;
  position: relative;
  display: flex;
  align-items: center;
  z-index: 1;
  height: 100%;
  text-decoration: none !important;
  will-change: transform;
  border: 1px solid #787878;
  box-shadow: 0 0 #c3c8bc;
}
@media only screen and (min-width: 768px) {
  .tmp_btn a,
  .tmp_btn .pseudo_a {
    min-height: 3.57rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_btn a,
  .tmp_btn .pseudo_a {
    min-height: 4.58333rem;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_btn a,
  .tmp_btn .pseudo_a {
    padding: 0.5em 1.42rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_btn a,
  .tmp_btn .pseudo_a {
    padding: 0.5em 2em;
  }
}
.tmp_btn a .en, .tmp_btn a .jp,
.tmp_btn .pseudo_a .en,
.tmp_btn .pseudo_a .jp {
  position: relative;
  z-index: 1;
  width: 100%;
}
.tmp_btn a [class^="icon-"], .tmp_btn a [class*=" icon-"],
.tmp_btn .pseudo_a [class^="icon-"],
.tmp_btn .pseudo_a [class*=" icon-"] {
  min-width: 1em;
  color: inherit;
}
.tmp_btn a::before, .tmp_btn a::after,
.tmp_btn .pseudo_a::before,
.tmp_btn .pseudo_a::after {
  font-family: 'icomoon';
  content: "\e905";
  font-size: 1.79rem;
  display: block;
  margin-left: 0.25em;
  margin-right: 0.25em;
  height: 1px;
  display: flex;
  align-items: center;
  line-height: 1;
}
.tmp_btn a::before,
.tmp_btn .pseudo_a::before {
  margin-left: 0;
  opacity: 0;
}
.tmp_btn a::after,
.tmp_btn .pseudo_a::after {
  margin-right: 0;
}
.tmp_btn a.noarr.pin::before, .tmp_btn a.noarr.pin::after,
.tmp_btn .pseudo_a.noarr.pin::before,
.tmp_btn .pseudo_a.noarr.pin::after {
  font-family: "Ionicons";
  content: "\f456";
  width: auto;
  font-size: 1rem;
  text-align: center;
}
.tmp_btn a.noarr.blank::before, .tmp_btn a.noarr.blank::after,
.tmp_btn .pseudo_a.noarr.blank::before,
.tmp_btn .pseudo_a.noarr.blank::after {
  font-family: "Ionicons";
  content: "\f3ef";
  font-size: 1rem;
  width: auto;
  text-align: center;
}
.tmp_btn a.noarr.pdf::before, .tmp_btn a.noarr.pdf::after,
.tmp_btn .pseudo_a.noarr.pdf::before,
.tmp_btn .pseudo_a.noarr.pdf::after {
  content: "\e902";
  font-size: 1rem;
  width: auto;
  text-align: center;
}
.tmp_btn a .ic_arr,
.tmp_btn .pseudo_a .ic_arr {
  margin-right: 0;
}
.tmp_btn a .ic_arr_dummy,
.tmp_btn .pseudo_a .ic_arr_dummy {
  opacity: 0;
  margin-left: 0;
}
.tmp_btn a .ic, .tmp_btn a .ic_dummy,
.tmp_btn .pseudo_a .ic,
.tmp_btn .pseudo_a .ic_dummy {
  font-size: 1.21rem;
}
.tmp_btn a .ic_dummy,
.tmp_btn .pseudo_a .ic_dummy {
  opacity: 0;
}
.tmp_btn a.center,
.tmp_btn .pseudo_a.center {
  justify-content: center;
}
.mouse .tmp_btn a:hover, .touch .tmp_btn a.touchstart, .mouse
.tmp_btn .pseudo_a:hover, .touch
.tmp_btn .pseudo_a.touchstart {
  box-shadow: 0.21rem 0.21rem #c3c8bc;
}
.touch .tmp_btn a, .touch
.tmp_btn .pseudo_a {
  -webkit-tap-highlight-color: transparent;
}
.touch .tmp_btn a.touchend, .touch
.tmp_btn .pseudo_a.touchend {
  transition-delay: 200ms;
}
.tmp_btn.align_c {
  justify-content: center;
}
@media only screen and (max-width: 1024px) {
  .tmp_btn.align_l-c-c {
    justify-content: center;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_btn.align_l-l-c {
    justify-content: center;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_btn.size_s a {
    min-height: 2.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_btn.size_s a {
    min-height: 2.5rem;
  }
}
.tmp_btn.type_cv1 a,
.tmp_btn.type_cv1 .pseudo_a, .tmp_btn.type_cv_gray a,
.tmp_btn.type_cv_gray .pseudo_a {
  background-color: #323232;
  border-color: #323232;
  box-shadow: 0 0 #c3c8bc;
  color: #fff;
}
.tmp_btn.type_cv1 a.center,
.tmp_btn.type_cv1 .pseudo_a.center, .tmp_btn.type_cv_gray a.center,
.tmp_btn.type_cv_gray .pseudo_a.center {
  justify-content: center;
}
.tmp_btn.type_cv1 a .icon-golf,
.tmp_btn.type_cv1 .pseudo_a .icon-golf, .tmp_btn.type_cv_gray a .icon-golf,
.tmp_btn.type_cv_gray .pseudo_a .icon-golf {
  font-size: 1.14rem;
  width: 1em;
  margin-right: 0.25em;
}
.mouse .tmp_btn.type_cv1 a:hover, .touch .tmp_btn.type_cv1 a.touchstart, .mouse
.tmp_btn.type_cv1 .pseudo_a:hover, .touch
.tmp_btn.type_cv1 .pseudo_a.touchstart, .mouse .tmp_btn.type_cv_gray a:hover, .touch .tmp_btn.type_cv_gray a.touchstart, .mouse
.tmp_btn.type_cv_gray .pseudo_a:hover, .touch
.tmp_btn.type_cv_gray .pseudo_a.touchstart {
  box-shadow: 0.21rem 0.21rem #c3c8bc;
}
.touch .tmp_btn.type_cv1 a, .touch
.tmp_btn.type_cv1 .pseudo_a, .touch .tmp_btn.type_cv_gray a, .touch
.tmp_btn.type_cv_gray .pseudo_a {
  -webkit-tap-highlight-color: transparent;
}
.touch .tmp_btn.type_cv1 a.touchend, .touch
.tmp_btn.type_cv1 .pseudo_a.touchend, .touch .tmp_btn.type_cv_gray a.touchend, .touch
.tmp_btn.type_cv_gray .pseudo_a.touchend {
  transition-delay: 200ms;
}
.tmp_btn.type_cv_gray a,
.tmp_btn.type_cv_gray .pseudo_a {
  background-color: #787878;
  border-color: #787878;
}
.tmp_btn.type_cv2 a,
.tmp_btn.type_cv2 .pseudo_a {
  background-color: #748264;
  border-color: #748264;
  box-shadow: 0 0 #1b1b1b;
  color: #fff;
}
.tmp_btn.type_cv2 a.center,
.tmp_btn.type_cv2 .pseudo_a.center {
  justify-content: center;
}
.mouse .tmp_btn.type_cv2 a:hover, .touch .tmp_btn.type_cv2 a.touchstart, .mouse
.tmp_btn.type_cv2 .pseudo_a:hover, .touch
.tmp_btn.type_cv2 .pseudo_a.touchstart {
  box-shadow: 0.21rem 0.21rem #1b1b1b;
}
.touch .tmp_btn.type_cv2 a, .touch
.tmp_btn.type_cv2 .pseudo_a {
  -webkit-tap-highlight-color: transparent;
}
.touch .tmp_btn.type_cv2 a.touchend, .touch
.tmp_btn.type_cv2 .pseudo_a.touchend {
  transition-delay: 200ms;
}

.tmp_more {
  display: flex;
  justify-content: flex-start;
}
@media only screen and (min-width: 768px) {
  .tmp_more {
    font-size: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_more {
    font-size: 0.98rem;
  }
}
.tmp_more a {
  color: inherit;
  display: block;
  text-decoration: none;
  line-height: 1;
  display: flex;
  flex-direction: column;
  padding: 1em;
  margin-left: -1em;
}
.tmp_more a::after {
  content: "";
  display: block;
  width: 3.42rem;
  height: 0;
  border-width: 0 0 1px 0;
  border-style: solid;
  margin-right: 0;
  margin-left: auto;
}
.tmp_more a .t {
  padding-bottom: 1.07rem;
  text-align: right;
}
.tmp_more a .t.en {
  font-family: 'Cinzel', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: 400;
  text-transform: uppercase;
}
.tmp_more.align_l {
  margin-left: -1em;
}
.tmp_more.align_r {
  justify-content: flex-end;
  margin-right: -1em;
}
@media only screen and (min-width: 768px) {
  .tmp_more.align_r-c {
    justify-content: flex-end;
    margin-right: -1em;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_more.align_r-c {
    justify-content: center;
  }
}
.tmp_more.color_white {
  color: #fff;
}

.tmp_link {
  display: flex;
  justify-content: flex-start;
}
.tmp_link a {
  display: flex;
  justify-content: flex-start;
  text-decoration: none;
  padding: 1em 1em 1em 0;
  align-items: center;
}
.tmp_link a .txt {
  display: flex;
  align-items: center;
}
.tmp_link a .txt [class^="ion-"], .tmp_link a .txt [class*=" ion-"],
.tmp_link a .txt [class^="icon-"], .tmp_link a .txt [class*=" icon-"] {
  margin-left: 0.5em;
}
.tmp_link a::after {
  font-family: 'icomoon';
  content: "\e905";
  font-size: 1.79rem;
  display: block;
  margin-left: 0.25em;
  margin-right: 0.25em;
  height: 1px;
  display: flex;
  align-items: center;
  line-height: 1;
}

.tmp_arr {
  width: 2.85rem;
  height: 2.85rem;
  background-color: #748264;
  border-radius: 1000px;
  display: block;
}
.tmp_arr > .inner {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}
.tmp_arr > .inner i {
  width: calc(16 / 40 * 100%);
  display: flex;
  justify-content: flex-end;
  overflow-y: hidden;
}
.tmp_arr > .inner i::after {
  font-family: 'icomoon';
  content: "\e905";
  color: #fff;
  font-size: 1.79rem;
  display: block;
  margin-right: 0;
  margin-left: auto;
}
.tmp_arr.align_r {
  margin-right: 0;
  margin-left: auto;
}

.tmp_st, .tmp_st_l, .tmp_st_m, .tmp_st_s, .tmp_st_ss, .tmp_catch {
  font-family: 'Shippori Mincho', "游明朝", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: 500;
}
.tmp_st [lang="en"], .tmp_st_l [lang="en"], .tmp_st_m [lang="en"], .tmp_st_s [lang="en"], .tmp_st_ss [lang="en"], .tmp_st .en, .tmp_st_l .en, .tmp_st_m .en, .tmp_st_s .en, .tmp_st_ss .en, .tmp_catch [lang="en"], .tmp_catch .en {
  font-family: 'Cinzel', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: 400;
  text-transform: uppercase;
}
.tmp_st.align_c, .align_c.tmp_st_l, .align_c.tmp_st_m, .align_c.tmp_st_s, .align_c.tmp_st_ss, .tmp_catch.align_c {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .tmp_st.align_l-c, .align_l-c.tmp_st_l, .align_l-c.tmp_st_m, .align_l-c.tmp_st_s, .align_l-c.tmp_st_ss, .tmp_catch.align_l-c {
    text-align: center;
    display: block;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_st.align_l-l-c, .align_l-l-c.tmp_st_l, .align_l-l-c.tmp_st_m, .align_l-l-c.tmp_st_s, .align_l-l-c.tmp_st_ss, .tmp_catch.align_l-l-c {
    text-align: center;
    display: block;
  }
}

.color_green {
  color: #617e40;
}

.tmp_st_l .en {
  display: block;
  line-height: calc(57 / 70);
  text-transform: none;
}
@media only screen and (min-width: 1025px) {
  .tmp_st_l .en {
    font-size: 5rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_st_l .en {
    font-size: 4.29rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_st_l .en {
    font-size: 3.46rem;
  }
}
.tmp_st_l .en.bgclip {
  display: flex;
  justify-content: flex-start;
  background-clip: text;
  -webkit-background-clip: text;
  color: transparent;
  background-size: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
@media only screen and (max-width: 767px) {
  .tmp_st_l .en.bgclip {
    display: block;
  }
}
.tmp_st_l .en + .jp {
  margin-top: 0.71rem;
}
@media only screen and (max-width: 767px) {
  .tmp_st_l .en + .jp {
    margin-top: 0.38rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_st_l .en {
    text-align: center;
  }
}
.tmp_st_l .jp {
  font-weight: 500;
  display: block;
  line-height: calc(40 / 30);
}
@media only screen and (min-width: 1025px) {
  .tmp_st_l .jp {
    font-size: 2.14rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .tmp_st_l .jp {
    font-size: 1.86rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_st_l .jp {
    font-size: 1.42rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_st_l .jp {
    text-align: center;
  }
}

.tmp_st_m {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}
.tmp_st_m span {
  font-weight: normal;
  display: block;
  line-height: 1;
}
.tmp_st_m span.jp2 {
  font-weight: 400;
  letter-spacing: .025em;
  color: #748264;
}
@media only screen and (min-width: 768px) {
  .tmp_st_m span.jp2 {
    font-size: 1.29rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_st_m span.jp2 {
    font-size: 1.38rem;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_st_m span.en {
    font-size: 2.57rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_st_m span.en {
    font-size: 2.12rem;
  }
}
.tmp_st_m span.jp {
  font-weight: 500;
}
@media only screen and (min-width: 768px) {
  .tmp_st_m span.jp {
    font-size: 1.07rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_st_m span.jp {
    font-size: 1.15rem;
  }
}
.tmp_st_m.flex .en {
  margin-right: 0.2em;
}
.tmp_st_m.box_c {
  text-align: center;
}
.tmp_st_m.box_c span {
  width: 100%;
}
.tmp_st_m.box_c span.jp2 {
  font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Ｐゴシック", "MS PGothic", "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, sans-serif;
  font-weight: 400;
  margin-bottom: 0.5em;
}
.tmp_st_m.box_c span.jp {
  margin-top: .3em;
}

.tmp_st_s {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}
.tmp_st_s span {
  font-weight: normal;
  display: block;
  line-height: 1;
}
.tmp_st_s span.en {
  font-size: 2rem;
}
.tmp_st_s span.jp {
  font-size: 1.07rem;
  font-weight: 500;
}
.tmp_st_s.flex .en {
  margin-right: 0.2em;
}

.tmp_st_ss {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
}
.tmp_st_ss span {
  font-weight: normal;
  display: block;
  line-height: 1;
}
.tmp_st_ss span.en {
  font-size: 1.29rem;
}
.tmp_st_ss span.jp {
  font-size: 1.07rem;
  font-weight: 500;
}
.tmp_st_ss i {
  display: block;
  width: 1em;
  display: block;
  text-align: center;
}
.tmp_st_ss i::before {
  content: "●";
  font-family: serif;
  display: block;
  color: inherit;
  transform: scale(0.7);
}

.tmp_hr {
  margin-top: 5rem;
  margin-bottom: 5rem;
  height: 0;
  display: block;
  border: none;
  border-top: 1px solid #e1e1e1;
}

.tmp_catch {
  line-height: calc(36 / 24);
}
@media only screen and (min-width: 768px) {
  .tmp_catch {
    font-size: 1.71rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_catch {
    font-size: 1.15rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_catch {
    line-height: calc(57 / 42);
  }
}
.tmp_catch.size_s .jp {
  font-weight: 600;
}
@media only screen and (min-width: 768px) {
  .tmp_catch.size_s .jp {
    font-size: 1.29rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_catch.size_s .jp {
    font-size: 1rem;
  }
}

.tmp_text {
  line-height: calc(26 / 14);
}
.tmp_text p + p {
  margin-top: 1em;
}
.tmp_text.hsk {
  color: #617e40;
  font-weight: 500;
}
@media only screen and (min-width: 768px) {
  .tmp_text.hsk {
    font-size: 0.93rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_text.hsk {
    font-size: 0.92rem;
  }
}

.tmp_intro {
  text-align: center;
}
.tmp_intro .tmp_text {
  margin-top: 2.14rem;
}
@media only screen and (max-width: 767px) {
  .tmp_intro .tmp_text {
    text-align: left;
    margin-top: 1.34rem;
  }
}

.slick-dotted:not(.dots_num) .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 768px) {
  .slick-dotted:not(.dots_num) .slick-dots {
    height: 2.14rem;
  }
}
@media only screen and (max-width: 767px) {
  .slick-dotted:not(.dots_num) .slick-dots {
    height: 3.84rem;
  }
}
.slick-dotted:not(.dots_num) .slick-dots li {
  height: 2.14rem;
  width: 2.14rem;
  width: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
@media only screen and (max-width: 767px) {
  .slick-dotted:not(.dots_num) .slick-dots li {
    width: 2.11rem;
    height: 2.11rem;
  }
}
.slick-dotted:not(.dots_num) .slick-dots li .dot {
  width: 14px;
  height: 14px;
  display: block;
  background-color: #c5c6c6;
  border-radius: 100px;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (max-width: 767px) {
  .slick-dotted:not(.dots_num) .slick-dots li .dot {
    width: 0.92rem;
    height: 0.92rem;
  }
}
.slick-dotted:not(.dots_num) .slick-dots li .dot .num {
  display: none;
}
.slick-dotted:not(.dots_num) .slick-dots li.slick-active .dot {
  background-color: #89341e;
}
.slick-dotted:not(.dots_num) .slick-dots li:first-child:last-child {
  opacity: 0 !important;
  height: 0;
}
.slick-dotted.dots_num .slick-dots {
  display: flex;
  justify-content: center;
  align-items: center;
}
.slick-dotted.dots_num .slick-dots li {
  height: 3.57rem;
  width: 3.57rem;
  opacity: .5;
}
@media only screen and (max-width: 767px) {
  .slick-dotted.dots_num .slick-dots li {
    width: 3.26rem;
    height: 3.26rem;
  }
}
.slick-dotted.dots_num .slick-dots li .dot {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  font-size: 100%;
}
.slick-dotted.dots_num .slick-dots li .dot .num {
  line-height: 1;
  display: block;
  padding: 1em 0;
  border-bottom: 1px solid #fff;
  color: #fff;
}
@media only screen and (min-width: 768px) {
  .slick-dotted.dots_num .slick-dots li .dot .num {
    font-size: 0.93rem;
  }
}
@media only screen and (max-width: 767px) {
  .slick-dotted.dots_num .slick-dots li .dot .num {
    padding: .6em 0;
  }
}
.slick-dotted.dots_num .slick-dots li.slick-active {
  opacity: 1;
}

.tmp_slider > .slide:not(:first-child) {
  display: none;
}
@media only screen and (min-width: 768px) {
  .tmp_slider .slick-dots {
    margin-top: 0.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_slider .slick-dots {
    margin-bottom: 0.5rem;
  }
}
.tmp_slider .slick-dots li .dot {
  background-color: #1b1b1b;
}
.tmp_slider .slick-dots li.slick-active .dot {
  background-color: #748264;
}
.tmp_slider .slick-dots li:first-child:last-child {
  opacity: 0 !important;
  height: 0;
}
.tmp_slider .tmp_slick_arr {
  position: absolute;
  top: 0;
  width: 5rem;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
.tmp_slider .tmp_slick_arr.arr_next {
  right: 0;
}
.tmp_slider .tmp_slick_arr.arr_prev {
  left: 0;
}

.tmp_slick_arr {
  display: flex;
  align-items: center;
  bottom: 2.14rem;
}
@media only screen and (min-width: 768px) {
  .tmp_slick_arr {
    font-size: 1.71rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slick_arr {
    font-size: 1.15rem;
  }
}
.tmp_slick_arr a {
  position: relative;
  display: block;
  display: flex;
  justify-content: center;
  transition: background-color 0.2s ease-out, color 0.2s ease-out;
  position: relative;
  z-index: 1;
  transform: translateX(1.26rem);
}
@media only screen and (min-width: 768px) {
  .tmp_slick_arr a {
    width: 3.57rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slick_arr a {
    width: 3.07rem;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_slick_arr a {
    height: 3.57rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_slick_arr a {
    height: 3.07rem;
  }
}
.tmp_slick_arr a i {
  width: 100%;
  height: 100%;
  display: block;
  border-bottom: 1px solid #fff;
  border-right: 1px solid #fff;
  position: absolute;
  right: 50%;
  bottom: 50%;
  transform: rotate(-45deg);
  transform-origin: right bottom;
}
.tmp_slick_arr.arr_prev {
  transform: scaleX(-1);
}
.tmp_slick_arr.arr_prev {
  transform: scaleX(-1);
}

.tmp_frame {
  border: 1px solid #c3c8bc;
  max-width: 1200px;
}

.tmp_bg_pat {
  background: url("../images/common/bg_pat.jpg") repeat center top;
  color: #1b1b1b;
}

.tmp_bg_gray {
  background-color: #ececec;
}

.tmp_bg_dark {
  background-color: #1b1b1b;
  color: #fff;
}
.tmp_bg_dark a {
  color: inherit;
}

@media only screen and (min-width: 1025px) {
  .tmp_img_shadow {
    box-shadow: 0 0 3.07rem 0 rgba(27, 27, 27, 0.3);
  }
}
@media only screen and (max-width: 1024px) {
  .tmp_img_shadow {
    box-shadow: 0 0 1.65rem 0 rgba(27, 27, 27, 0.3);
  }
}

@media only screen and (min-width: 768px) {
  .tmp_tab {
    margin-bottom: 1.42rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_tab {
    margin-bottom: 1em;
  }
}
.tmp_tab button {
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-family: 'Noto Sans JP', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Ｐゴシック", "MS PGothic", "Lucida Sans Unicode", "Lucida Grande", Verdana, Arial, sans-serif;
  font-weight: 400;
  width: 100%;
  font-size: 100%;
}
.tmp_tab button::-ms-expand {
  display: none;
}
.tmp_tab ul {
  display: flex;
  flex-wrap: wrap;
}
.tmp_tab ul li {
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .tmp_tab ul li {
    min-width: calc(1 / 5 * 100%);
  }
}
.tmp_tab ul li button {
  cursor: pointer;
  border-radius: 0.21rem;
  min-height: 2.14rem;
  padding-right: .75em;
  padding-left: .75em;
}
@media only screen and (max-width: 767px) {
  .tmp_tab ul li button {
    font-size: 0.92rem;
  }
}
@media only screen and (min-width: 768px) {
  .tmp_tab ul li button {
    min-width: 5.35rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_tab ul li button {
    padding-right: .5em;
    padding-left: .5em;
  }
}
.tmp_tab ul li.is-active button {
  background-color: #748264;
  color: #fff;
}

.tmp_spec {
  position: relative;
  z-index: 1;
  display: flex;
}
@media only screen and (min-width: 768px) {
  .tmp_spec {
    width: calc(440 / 900 * 100%);
  }
}
.tmp_spec li {
  width: calc(1 / 4 * 100%);
  display: flex;
  justify-content: flex-start;
}
@media only screen and (max-width: 767px) {
  .tmp_spec li {
    justify-content: center;
  }
}
.tmp_spec li i {
  width: 3rem;
  margin-right: auto;
  margin-left: auto;
  background-size: 100% auto;
  display: block;
  background-position: center top;
}
@media only screen and (max-width: 767px) {
  .tmp_spec li i {
    width: 2.38rem;
  }
}
.tmp_spec li i::after {
  content: "";
  display: block;
  width: 100%;
  padding-bottom: calc(30 / 42 * 100%);
}
.tmp_spec li i.lazyloaded.ic_par {
  background-image: url("../../course/images/ic_par.png");
}
.tmp_spec li i.lazyloaded.ic_yards {
  background-image: url("../../course/images/ic_yards.png");
}
.tmp_spec li i.lazyloaded.ic_hole {
  background-image: url("../../course/images/ic_hole.png");
}
.tmp_spec li i.lazyloaded.ic_hill {
  background-image: url("../../course/images/ic_hill.png");
}
.tmp_spec li .num {
  font-family: 'Cinzel', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: 400;
  text-transform: uppercase;
  display: block;
  text-align: center;
  line-height: 1;
  margin-top: 0.85rem;
  margin-bottom: 0.85rem;
}
@media only screen and (min-width: 768px) {
  .tmp_spec li .num {
    font-size: 1.71rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_spec li .num {
    font-size: 1.38rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_spec li .num {
    margin-top: 0.4em;
    margin-bottom: 0.4em;
  }
}
.tmp_spec li .txt {
  font-family: 'Cinzel', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: 400;
  text-transform: uppercase;
  line-height: 1;
  text-align: center;
  display: block;
}
@media only screen and (min-width: 768px) {
  .tmp_spec li .txt {
    font-size: 0.93rem;
  }
}
@media only screen and (max-width: 767px) {
  .tmp_spec li .txt {
    font-size: 0.75rem;
  }
}

.con_f_bnr {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 1025px) {
  .con_f_bnr {
    width: calc(1300 / 1440 * 100%);
    max-width: calc(1300px);
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1441px) {
  .con_f_bnr {
    max-width: calc(1300px * ((16 + 1) / 14));
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_f_bnr {
    width: calc(1320 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_f_bnr {
    width: calc(650 / 750 * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .con_f_bnr {
    margin-top: 10.71rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_f_bnr {
    margin-top: 10.71rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_f_bnr {
    margin-bottom: 2.85rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_f_bnr {
    margin-bottom: 5.76rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_f_bnr ul {
    display: flex;
    justify-content: center;
  }
}
@media only screen and (min-width: 768px) {
  .con_f_bnr ul li {
    width: 18.64rem;
  }
}
@media only screen and (min-width: 768px) and (min-width: 1025px) and (max-width: 1440px) {
  .con_f_bnr ul li {
    max-width: 260px;
  }
}
@media only screen and (min-width: 768px) {
  .con_f_bnr ul li:not(:first-child) {
    margin-left: 20px;
  }
}
@media only screen and (max-width: 767px) {
  .con_f_bnr ul li {
    margin-top: 0.69rem;
  }
}
.con_f_bnr ul li a {
  display: block;
  position: relative;
}
.mouse .con_f_bnr ul li a {
  transition: opacity 0.3s ease-in;
}
.mouse .con_f_bnr ul li a:hover, .touch .con_f_bnr ul li a.touchstart {
  opacity: 0.7;
}
.touch .con_f_bnr ul li a {
  -webkit-tap-highlight-color: transparent;
}
.touch .con_f_bnr ul li a.touchend {
  transition-delay: 200ms;
}
.con_f_bnr ul li.bd a::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
  border: 1px solid #787878;
}

.img_f {
  margin-right: auto;
  margin-left: auto;
  position: relative;
}
.img_f img {
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
}
.img_f::after {
  content: "";
  width: 100%;
  display: block;
  padding-bottom: calc(600 / 1920 * 100%);
}
.img_f img {
  top: 50%;
  transform: translateY(-50%);
}
.img_f img.lazyloaded {
  height: 100%;
}
@media only screen and (min-width: 1441px) {
  .img_f::after {
    padding-bottom: 500px;
  }
}
@media only screen and (max-width: 767px) {
  .img_f::after {
    padding-bottom: calc(620 / 750 * 100%);
  }
}

@media only screen and (max-width: 767px) {
  #footer {
    padding-bottom: 5.76rem;
  }
}

.con_footer_top {
  background-color: #1b1b1b;
  color: #fff;
}
@media only screen and (max-width: 767px) {
  .con_footer_top {
    padding: 2.88rem 0 0;
  }
}
.con_footer_top a {
  color: #fbfbfb;
}
.con_footer_top > .inner {
  margin-right: auto;
  margin-left: auto;
  border-bottom: 1px solid rgba(120, 120, 120, 0.5);
}
@media only screen and (min-width: 1025px) {
  .con_footer_top > .inner {
    width: calc(1200 / 1440 * 100%);
    max-width: calc(1200px);
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1441px) {
  .con_footer_top > .inner {
    max-width: calc(1200px * ((16 + 1) / 14));
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_footer_top > .inner {
    width: calc(1320 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_top > .inner {
    width: calc(690 / 750 * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .con_footer_top > .inner {
    padding-bottom: 2.85rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_top > .inner {
    padding-bottom: 5.57rem;
  }
}
.con_footer_top > .inner2 {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 1025px) {
  .con_footer_top > .inner2 {
    width: calc(1200 / 1440 * 100%);
    max-width: calc(1200px);
  }
}
@media only screen and (min-width: 1025px) and (min-width: 1441px) {
  .con_footer_top > .inner2 {
    max-width: calc(1200px * ((16 + 1) / 14));
  }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_footer_top > .inner2 {
    width: calc(1320 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_top > .inner2 {
    width: calc(690 / 750 * 100%);
  }
}
@media only screen and (min-width: 768px) {
  .con_footer_top > .inner2 {
    padding-bottom: 4.64rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_top > .inner2 {
    padding-bottom: 3.84rem;
  }
}

.f_logo {
  width: 11.5rem;
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 768px) {
  .f_logo {
    margin-bottom: 1.21rem;
  }
}
@media only screen and (max-width: 767px) {
  .f_logo {
    margin-bottom: 1rem;
  }
}
@media only screen and (max-width: 767px) {
  .f_logo {
    margin-top: 3.84rem;
  }
}

.box_f_add {
  font-size: 1rem;
  letter-spacing: .05em;
}
@media only screen and (min-width: 768px) {
  .box_f_add {
    margin-bottom: 1.07rem;
  }
}
.box_f_add .txt_add {
  display: block;
  width: 100%;
  text-align: center;
}
.box_f_add a, .box_f_add .tel {
  text-decoration: none;
}
.box_f_add .txt_phone {
  justify-content: center;
  flex-wrap: wrap;
  display: flex;
}
.box_f_add .txt_phone a {
  text-align: center;
}
.box_f_add .txt_phone span.space {
  width: 1em;
  display: block;
}
.box_f_add .txt_phone span.view_pc {
  width: 1em;
}
@media only screen and (max-width: 767px) {
  .box_f_add .txt_phone a, .box_f_add .txt_phone .tel {
    width: 100%;
  }
}

.box_f_sns {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .box_f_sns {
    margin-top: 1.07rem;
  }
}
@media only screen and (max-width: 767px) {
  .box_f_sns {
    margin-top: 0.57rem;
  }
}
.box_f_sns li a {
  display: block;
  padding-right: 0.57rem;
  padding-left: 0.57rem;
}
.box_f_sns li a img {
  width: 2.28rem;
}

.box_fnav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
@media only screen and (max-width: 767px) {
  .box_fnav {
    justify-content: flex-start;
  }
}
@media only screen and (max-width: 767px) {
  .box_fnav li {
    width: 50%;
  }
}
.box_fnav li a {
  text-decoration: none !important;
  letter-spacing: .12em;
  color: inherit;
  display: block;
}
.mouse .box_fnav li a:hover, .touch .box_fnav li a.touchstart {
  text-decoration: underline !important;
}
.touch .box_fnav li a {
  -webkit-tap-highlight-color: transparent;
}
.touch .box_fnav li a.touchend {
  transition-delay: 200ms;
}
@media only screen and (min-width: 768px) {
  .box_fnav li a {
    padding: 2.5rem 1.07rem;
  }
}
.box_fnav li a[target="_blank"]::after {
  content: "\f3ef";
  margin-left: .75em;
  font-family: "Ionicons";
}

.st_f_grp .en {
  height: 4.64rem;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media only screen and (min-width: 768px) {
  .st_f_grp .en {
    font-size: 1.29rem;
  }
}
@media only screen and (max-width: 767px) {
  .st_f_grp .en {
    font-size: 1.69rem;
  }
}
@media only screen and (max-width: 767px) {
  .st_f_grp .en {
    justify-content: flex-start;
    height: 5.76rem;
  }
}

@media only screen and (min-width: 768px) {
  .box_f_grp {
    margin-right: auto;
    margin-left: auto;
    width: calc(1000 / 1200 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .box_f_grp {
    width: 100%;
  }
}
.box_f_grp ul {
  line-height: calc(22 / 14);
}
@media only screen and (min-width: 768px) {
  .box_f_grp ul {
    display: flex;
    justify-content: center;
  }
}
.box_f_grp ul li {
  letter-spacing: .12em;
}
@media only screen and (min-width: 768px) {
  .box_f_grp ul li {
    width: calc(1 / 5 * 100%);
  }
}
.box_f_grp ul li a {
  text-decoration: none !important;
  display: block;
}
@media only screen and (max-width: 767px) {
  .box_f_grp ul li a {
    padding: 0.15em 0;
  }
}
.box_f_grp ul li a::after {
  content: "\f3ef";
  font-family: "Ionicons";
  margin-left: 0.25em;
}

@media only screen and (min-width: 768px) {
  .con_footer_bottom > :first-child.f_logo_alpen_group {
    margin-top: 2.85rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_bottom > :first-child.f_logo_alpen_group {
    margin-top: 2.3rem;
  }
}
.con_footer_bottom .f_logo_alpen_group {
  margin-right: auto;
  margin-left: auto;
  width: calc(127 / 1200 * 100%);
}
@media only screen and (max-width: 767px) {
  .con_footer_bottom .f_logo_alpen_group {
    width: calc(192 / 750 * 100%);
  }
}
.con_footer_bottom ul {
  margin-right: auto;
  margin-left: auto;
  width: calc(830 / 1440 * 100%);
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .con_footer_bottom ul {
    margin: 2.14rem auto 5.71rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_bottom ul {
    margin: 2.3rem auto 2.3rem;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_footer_bottom ul {
    width: calc(1320 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_bottom ul {
    width: calc(690 / 750 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_bottom ul {
    justify-content: flex-start;
  }
}
@media only screen and (min-width: 768px) {
  .con_footer_bottom ul li {
    width: calc(200 / 830 * 100%);
  }
  .con_footer_bottom ul li:not(:nth-child(4n+1)) {
    margin-left: calc((100% - (calc(200 / 830 * 100%) * 4)) / 3);
  }
  .con_footer_bottom ul li:nth-child(n+5) {
    margin-top: calc((100% - (calc(200 / 830 * 100%) * 4)) / 3 * 1);
  }
}
@media only screen and (max-width: 767px) {
  .con_footer_bottom ul li {
    width: 49%;
  }
  .con_footer_bottom ul li:not(:nth-child(2n+1)) {
    margin-left: calc((100% - (49% * 2)) / 1);
  }
  .con_footer_bottom ul li:nth-child(n+3) {
    margin-top: calc((100% - (49% * 2)) / 1 * 1);
  }
}
.con_footer_bottom ul li a {
  display: block;
}

#copyright {
  text-align: center;
  letter-spacing: 0.12em;
}
@media only screen and (min-width: 768px) {
  #copyright {
    font-size: 0.79rem;
  }
}
@media only screen and (max-width: 767px) {
  #copyright {
    font-size: 0.63rem;
  }
}
@media only screen and (min-width: 768px) {
  #copyright {
    margin: 0.5em 0 1em;
  }
}
@media only screen and (max-width: 767px) {
  #copyright {
    margin: 0.5em 0 1em;
  }
}

.sp_sticky_nav {
  position: fixed;
  bottom: 1.46rem;
  left: 0;
  right: 0;
  z-index: 2000;
}
.sp_sticky_nav ul {
  margin-right: auto;
  margin-left: auto;
  display: flex;
  align-items: center;
  background-color: #fff;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .sp_sticky_nav ul {
    width: calc(1100 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .sp_sticky_nav ul {
    width: calc(690 / 750 * 100%);
  }
}
.sp_sticky_nav ul li {
  width: calc(1 / 2 * 100%);
  height: 3.46rem;
  border: 1px solid #1b1b1b;
}
.sp_sticky_nav ul li a {
  text-decoration: none;
  display: flex;
  height: 100%;
  width: 100%;
  justify-content: center;
  align-items: center;
  color: inherit;
}
.sp_sticky_nav ul li a i {
  margin-right: 0.25em;
}
.sp_sticky_nav ul li.btn_golf {
  background-color: #2a2a2a;
  color: #fff;
}

html.is-scrollable {
  overflow: hidden;
}

.modal {
  display: block;
  display: none;
  position: fixed;
  top: 0;
  bottom: 0;
  width: 100%;
  z-index: 1000;
}
.modal.is-active {
  display: block;
}
.modal .con_menu {
  transition: transform .2s ease-out,  opacity .2s ease-out;
}
.modal .bg_modal {
  transition: opacity .2s ease-out;
  background-color: rgba(255, 255, 255, 0.9);
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  z-index: 999;
  opacity: 0;
}
.modal.is-show .con_menu {
  transition: transform .2s ease-out .2s, opacity .2s ease-out .2s;
  transform: translateX(0);
  opacity: 1;
}
.modal.is-show .bg_modal {
  transition: opacity .2s ease-out;
  opacity: 1;
}
.modal#modal_child.is-active {
  display: flex;
  align-items: center;
  justify-content: center;
}

.menu_header {
  z-index: 2000;
  position: relative;
  justify-content: flex-end;
}

.con_menu {
  overflow-x: hidden;
  overflow-y: auto;
  margin-right: 0;
  margin-left: auto;
  position: relative;
  z-index: 1000;
  width: calc(720 / 1440 * 100%);
  margin-right: 0;
  margin-left: auto;
}
@media only screen and (min-width: 1441px) and (max-width: 1600px) {
  .con_menu {
    width: calc(820 / 1440 * 100%);
  }
}
@media only screen and (max-width: 1700px) {
  .con_menu {
    width: calc(820 / 1440 * 100%);
  }
}
@media only screen and (min-width: 1025px) {
  .con_menu {
    display: flex;
  }
}
@media only screen and (max-width: 1024px) {
  .con_menu {
    width: 100%;
    height: 100%;
    padding-bottom: 8rem;
  }
}
@media only screen and (max-width: 1024px) and (max-width: 767px) {
  .con_menu {
    padding-top: 1rem;
  }
}

.con_menu > .inner {
  margin-right: auto;
  margin-left: auto;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_menu > .inner {
    width: calc(1100 / 1440 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_menu > .inner {
    width: calc(650 / 750 * 100%);
  }
}
@media only screen and (min-width: 1025px) {
  .con_menu > .inner {
    width: calc(600 / 720 * 100%);
    margin-left: 0;
    margin-right: auto;
  }
}
@media only screen and (min-width: 768px) {
  .con_menu .box_menu {
    display: flex;
  }
}
@media only screen and (min-width: 768px) {
  .con_menu .box_menu ul {
    width: calc(280 / 600 * 100%);
  }
  .con_menu .box_menu ul:nth-child(odd) {
    margin-left: 0;
    margin-right: auto;
  }
  .con_menu .box_menu ul:nth-child(even) {
    margin-right: 0;
    margin-left: auto;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_menu ul {
    width: 100%;
  }
}
.con_menu .box_menu ul li a {
  height: 4rem;
  display: flex;
  align-items: center;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .con_menu .box_menu ul li a {
    height: 4.5rem;
  }
}
.con_menu .box_menu ul li a::after {
  font-family: 'icomoon';
  content: "\e905";
  font-size: 1.79rem;
  display: block;
  height: 1px;
  display: flex;
  align-items: center;
  line-height: 1;
  margin-right: 0;
  margin-left: auto;
  opacity: 0;
  transition: opacity 0.2s ease-out, transform 0.2s ease-out;
  transform: translateX(-0.5rem);
}
.con_menu .box_menu ul li a span {
  line-height: 1;
}
.con_menu .box_menu ul li a span.en {
  font-family: 'Cinzel', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: 400;
  text-transform: uppercase;
  font-size: 1rem;
  display: block;
  color: #787878;
}
.con_menu .box_menu ul li a span.jp {
  font-size: 1.29rem;
  display: block;
  margin-top: 0.1em;
}
.mouse .con_menu .box_menu ul li:hover a::after, .touch .con_menu .box_menu ul li.touchstart a::after {
  opacity: 1;
  transform: translateX(0);
}
.touch .con_menu .box_menu ul li {
  -webkit-tap-highlight-color: transparent;
}
.touch .con_menu .box_menu ul li.touchend {
  transition-delay: 200ms;
}
.con_menu .box_rsv_btn {
  border-top: 1px solid #787878;
  border-bottom: 1px solid #787878;
}
@media only screen and (min-width: 768px) {
  .con_menu .box_rsv_btn {
    padding: 1.42rem 0;
    margin-top: 1.42rem;
    display: flex;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_rsv_btn {
    padding: 2rem 0 0;
    margin-top: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_menu .box_rsv_btn .tmp_btn {
    width: calc(200 / 600 * 100%);
  }
  .con_menu .box_rsv_btn .tmp_btn:not(:first-child) {
    margin-left: calc(9 / 600 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_rsv_btn .tmp_btn {
    width: 100%;
  }
  .con_menu .box_rsv_btn .tmp_btn:not(:first-child) {
    margin-top: .75rem;
  }
}
.con_menu .box_rsv_btn .tmp_btn a {
  width: 100%;
}
.con_menu .box_rsv_btn .tmp_btn a::before {
  display: none;
}
.con_menu .box_rsv_btn .box_tel {
  display: flex;
  justify-content: flex-start;
}
@media only screen and (min-width: 768px) {
  .con_menu .box_rsv_btn .box_tel {
    margin-left: calc(9 / 600 * 100%);
    width: calc(160 / 600 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_rsv_btn .box_tel {
    padding: 2rem 0;
    width: 100%;
    justify-content: center;
  }
}
.con_menu .box_rsv_btn .box_tel a, .con_menu .box_rsv_btn .box_tel .tel {
  z-index: 1;
  display: flex;
  justify-content: flex-start;
  text-decoration: none;
  align-items: center;
  align-content: center;
  flex-wrap: wrap;
}
.con_menu .box_rsv_btn .box_tel a .num, .con_menu .box_rsv_btn .box_tel .tel .num {
  font-family: 'Cinzel', "Times New Roman", Times, Garamond, Georgia, serif;
  font-weight: 400;
  letter-spacing: .05em;
  width: 100%;
  line-height: 1;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .con_menu .box_rsv_btn .box_tel a .num, .con_menu .box_rsv_btn .box_tel .tel .num {
    font-size: 1.29rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_rsv_btn .box_tel a .num, .con_menu .box_rsv_btn .box_tel .tel .num {
    font-size: 1.85rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_rsv_btn .box_tel a .num, .con_menu .box_rsv_btn .box_tel .tel .num {
    width: auto;
  }
}
.con_menu .box_rsv_btn .box_tel a .num i, .con_menu .box_rsv_btn .box_tel .tel .num i {
  margin-right: 0.1em;
}
@media only screen and (min-width: 768px) {
  .con_menu .box_rsv_btn .box_tel a .num i, .con_menu .box_rsv_btn .box_tel .tel .num i {
    font-size: 1.07rem;
  }
}
.con_menu .box_rsv_btn .box_tel a .text, .con_menu .box_rsv_btn .box_tel .tel .text {
  text-align: center;
  line-height: 1;
  letter-spacing: 0;
  width: 100%;
  margin-top: 0.25em;
}
@media only screen and (min-width: 768px) {
  .con_menu .box_rsv_btn .box_tel a .text, .con_menu .box_rsv_btn .box_tel .tel .text {
    font-size: 0.71rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_rsv_btn .box_tel a .text, .con_menu .box_rsv_btn .box_tel .tel .text {
    width: auto;
  }
}
.con_menu .box_menu_sub {
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) {
  .con_menu .box_menu_sub {
    padding-top: 1.07rem;
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_menu_sub {
    padding-top: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .con_menu .box_menu_sub li:nth-child(4n+1) {
    width: calc(120 / 600 * 100%);
  }
  .con_menu .box_menu_sub li:nth-child(4n+2) {
    width: calc(120 / 600 * 100%);
  }
  .con_menu .box_menu_sub li:nth-child(4n+3) {
    width: calc(180 / 600 * 100%);
  }
  .con_menu .box_menu_sub li:nth-child(4n+4) {
    width: calc(120 / 600 * 100%);
  }
}
@media only screen and (max-width: 767px) {
  .con_menu .box_menu_sub li:nth-child(odd) {
    width: calc(9 / 20 * 100%);
  }
  .con_menu .box_menu_sub li:nth-child(even) {
    margin-right: 0;
    margin-left: auto;
    width: calc(9 / 20 * 100%);
  }
}
.con_menu .box_menu_sub li a {
  padding-right: 0;
  padding-top: 1rem;
  padding-bottom: 1rem;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .con_menu .box_menu_sub li a {
    width: 100%;
  }
  .con_menu .box_menu_sub li a::after {
    margin-left: auto;
    margin-right: 0;
  }
}

#contents {
  opacity: 1;
}

.mouse .over {
  transition: opacity 0.3s ease-in;
}
.mouse .over:hover, .touch .over.touchstart {
  opacity: 0.7;
}
.touch .over {
  -webkit-tap-highlight-color: transparent;
}
.touch .over.touchend {
  transition-delay: 200ms;
}

#abi_page {
  width: 100%;
  overflow: hidden;
}
@media only screen and (min-width: 1025px) {
  #abi_page {
    width: 100%;
    margin: auto;
  }
}
@media only screen and (min-width: 768px) {
  #abi_page {
    font-size: 100% !important;
  }
}

.js-tab-pan > * {
  display: none;
}
.js-tab-pan > *.is-active {
  display: block;
}

.pswp__bg {
  background-color: rgba(0, 0, 0, 0.9) !important;
}
