@charset "UTF-8";
/* 文字コードの指定 */
@import url("https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@700&display=swap");
/* -------------------------------------------
    4. 汎用セレクタ
  ------------------------------------------- */
/* ------------ マージン ------------ */
.mb-0 {
  margin-bottom: 0 !important;
}

.mb-10 {
  margin-bottom: 10px !important;
}

.mb-20 {
  margin-bottom: 20px !important;
}

.mb-30 {
  margin-bottom: 30px !important;
}

.mb-40 {
  margin-bottom: 40px !important;
}

/* ------------ パディング ------------ */
.pb-10 {
  padding-bottom: 10px !important;
}

.pb-20 {
  padding-bottom: 20px !important;
}

.pb-30 {
  padding-bottom: 30px !important;
}

.pb-40 {
  padding-bottom: 40px !important;
}

html {
  font-size: 62.5%;
}

body {
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
  font-size: 1.6rem;
  line-height: 1.75;
  color: #000;
  background-color: #fff;
}
@media (max-width: 767px) {
  body {
    font-size: 1.4rem;
  }
}

p {
  font-size: 1.6rem;
  line-height: 1.75;
  margin: 0;
}
@media (max-width: 767px) {
  p {
    font-size: 1.4rem;
  }
}

a {
  color: #000;
  text-decoration: none;
  transition: 0.3s;
}

a:hover {
  opacity: 0.8;
}
@media (max-width: 767px) {
  a:hover {
    opacity: 1;
  }
}

img {
  max-width: 100%;
}

.clearfix:after {
  content: ".";
  /* 新しい要素を作る */
  display: block;
  /* ブロックレベル要素に */
  clear: both;
  height: 0;
  font-size: 0;
  visibility: hidden;
}

.clearfix {
  min-height: 1px;
}

* html .clearfix {
  height: 1px;
  /*¥*/
  /*/
  height: auto;
  overflow: hidden;
  /**/
}

.sp-view {
  display: none;
}

@media (max-width: 767px) {
  .pc-view {
    display: none;
  }

  .sp-view {
    display: block;
  }
}
.max_1200 {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}
@media (max-width: 767px) {
  .max_1200 {
    position: relative;
  }
}

.flex {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.flex:before {
  content: "";
  display: block;
  width: 23.0888%;
  order: 1;
}
@media (max-width: 767px) {
  .flex:before {
    width: 47.0149%;
  }
}
.flex:after {
  content: "";
  display: block;
  width: 23.0888%;
}
@media (max-width: 767px) {
  .flex:after {
    width: 47.0149%;
  }
}

#container {
  padding-top: 19rem;
}

@media (max-width: 767px) {
  #container {
    padding-top: 140px;
  }
}

@media (max-width: 767px) {
  #main.item_list {
    padding-top: 80px;
  }
}

.textarea h3 {
  font-weight: bold;
  line-height: 1.65;
  margin: 0 auto 0.5rem;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .textarea h3 {
    line-height: 1.5;
    margin-bottom: 1rem;
  }
}
.textarea h3 a:hover {
  color: #0094dd;
}
.textarea p span {
  font-size: 1.2rem;
  line-height: 1.65;
}

.bold {
  font-weight: bold;
}

.no-spin::-webkit-inner-spin-button,
.no-spin::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}

.sticky {
  position: sticky;
  position: -webkit-sticky;
  top: 0;
  z-index: 100;
}

#header .pc-header {
  width: 100%;
  margin: 0 auto;
  padding: 3rem 3rem 2rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
}
#header .pc-header img {
  vertical-align: middle;
}
@media print {
  #header .pc-header {
    display: none;
  }
}

#header .cart {
  position: relative;
  width: 26px;
}
#header .cart span {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.6;
  border-radius: 50px;
  background-color: #fb6161;
  padding: 0.3rem;
  position: absolute;
  top: -10px;
  right: -13px;
  width: 25px;
  height: 25px;
  box-sizing: border-box;
  text-align: center;
}

h1 {
  width: 280px;
  margin: 0;
}
h1 a:hover {
  opacity: 1;
}
h1 img {
  width: 100%;
}

.header_right {
  width: 50%;
}

.menu {
  font-size: 1.4rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 2rem;
  text-align: right;
}
.menu a {
  padding-right: 3rem;
}
.menu a:last-child {
  padding-right: 0;
}

.icon_block {
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
}
.icon_block .banner {
  width: 260px;
}
.icon_block .banner img {
  display: block;
  width: 100%;
}
.icon_block div {
  margin-right: 3rem;
}
.icon_block div:last-child {
  margin-right: 1.5rem;
}

.search {
  width: 230px;
  position: relative;
  display: flex;
}
.search .searchTerm {
  width: 100%;
  border: none;
  border-bottom: 0.1rem solid #333;
  padding: 0.5rem;
  height: 3rem;
  outline: none;
  margin-left: 1rem;
  box-sizing: border-box;
}
.search .searchButton {
  border: none;
  width: 25px;
  cursor: pointer;
  background-color: #fff;
  padding: 0;
}

.mypage {
  width: 26px;
}

#nav {
  width: 100%;
  background-color: #eeeeee;
  box-sizing: border-box;
  padding: 0 2rem;
}
@media print {
  #nav {
    display: none;
  }
}

.header_fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background-color: #fff;
  z-index: 800;
}

/*========= ナビゲーションドロップダウンのためのCSS ===============*/
ul.nav_menu {
  display: flex;
  max-width: 960px;
  margin: 0 auto;
  justify-content: center;
  line-height: 1;
  position: relative;
}
ul.nav_menu li {
  margin-right: 6rem;
}
ul.nav_menu li:last-child {
  margin-right: 0;
}
ul.nav_menu li a {
  display: block;
  padding: 2rem 0;
}

li.has-child img {
  width: 10px;
  margin-left: 1rem;
  vertical-align: middle;
}

.mega__menu-second {
  visibility: hidden;
  opacity: 0;
  z-index: 10;
}

.header__menu li:hover {
  background: white;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

li.mega__menu .mega__menu-second {
  position: absolute;
  top: 40px;
  left: 0;
  width: 100%;
  background: white;
  padding: 2rem;
  box-sizing: border-box;
  transition: all 0.2s ease;
  -webkit-transition: all 0.2s ease;
  width: 100vw;
  margin: 20px calc(50% - 50vw) 0;
  background: #fff;
}

li.mega__menu:hover .mega__menu-second {
  top: 35px;
  visibility: visible;
  opacity: 1;
  box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.15);
}

/* メガメニューの中身 */
.mega__menu-block {
  max-width: 960px;
  margin: 0 auto;
  padding: 2rem 0;
  position: relative;
}
.mega__menu-block h3 {
  font-size: 1.8rem;
  font-weight: bold;
  width: 15.625%;
  float: left;
  margin-top: 0;
}
.mega__menu-block .link-box {
  width: 84.375%;
  float: right;
  border-left: 1px solid #bbb;
  padding-left: 3rem;
}
.mega__menu-block .link-box ul {
  display: flex;
  flex-wrap: wrap;
}
.mega__menu-block .link-box ul li {
  width: 30%;
  margin: 0 2rem 2rem 0;
}
.mega__menu-block .link-box ul li a {
  display: block;
  background: url(../images/arrow-nav-sec-link.png) no-repeat;
  background-size: auto 100%;
  background-position: right 20px top 50%;
  padding: 0;
}

footer {
  width: 100%;
  margin: 0 auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media print {
  footer {
    display: none;
  }
}

#footer_nav {
  width: 100%;
  margin: 0 auto;
  border-top: 1px solid #bbbbbb;
  position: relative;
}
@media (max-width: 767px) {
  #footer_nav {
    padding: 7rem 2rem 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 8rem;
  }
}
@media print {
  #footer_nav {
    display: none;
  }
}

.pagetop_icon {
  position: absolute;
  top: -40px;
  right: 14.375%;
  width: 70px;
}
@media print {
  .pagetop_icon {
    display: none;
  }
}
@media (max-width: 767px) {
  .pagetop_icon {
    position: fixed;
    top: 580px;
    right: 10px;
    width: 60px;
    z-index: 100;
  }
}
.pagetop_icon a:hover {
  opacity: 1;
}

.nav_container {
  max-width: 1200px;
  display: flex;
  justify-content: space-between;
  padding: 4rem 5rem 0;
  margin: 0 auto 5rem;
  font-size: 1.5rem;
  line-height: 1;
  color: #8e8e8e;
}
@media (max-width: 767px) {
  .nav_container {
    padding: 0;
    margin: 0;
    display: block;
    width: 48%;
  }
  .nav_container.nav_container_left {
    float: left;
  }
  .nav_container:last-child {
    float: right;
  }
}
@media (max-width: 767px) {
  .nav_container div.nav_block {
    margin-bottom: 3rem;
  }
}
.nav_container div.nav_block p {
  font-weight: bold;
  margin-bottom: 3rem;
}
.nav_container div.nav_block p a {
  color: #8e8e8e;
}
@media (max-width: 767px) {
  .nav_container div.nav_block p {
    margin-bottom: 2rem;
  }
}
.nav_container div.nav_block ul {
  padding-left: 2rem;
}
.nav_container div.nav_block ul li {
  margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
  .nav_container div.nav_block ul li {
    line-height: 1.2;
  }
}
.nav_container div.nav_block ul li:last-child {
  margin-bottom: 0;
}
.nav_container div.nav_block ul a {
  color: #8e8e8e;
}

#footer {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem 2rem;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  #footer {
    padding: 0 2rem;
    margin-bottom: 4rem;
    align-items: center;
  }
}
@media print {
  #footer {
    display: none;
  }
}

.footer_left {
  width: 16.666%;
}
@media (max-width: 767px) {
  .footer_left {
    width: 50%;
  }
  .footer_left .sns_block div {
    display: flex;
    justify-content: center;
    margin-top: 1rem;
  }
  .footer_left .sns_block div .icon {
    color: #8e8e8e;
    font-size: 3rem;
  }
  .footer_left .sns_block div .icon:first-child {
    margin-right: 1.5rem;
  }
  .footer_left .sns_block div .icon:last-child {
    margin-left: 1.5rem;
  }
}
.footer_left ul {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .footer_left ul {
    display: block;
  }
}
.footer_left ul li .icon {
  color: #8e8e8e;
  font-size: 3rem;
}

.footer_right {
  text-align: right;
}
.footer_right img {
  margin-bottom: 3rem;
  display: inline-block;
  max-width: 280px;
}

@media print {
  .footer_right {
    display: none;
  }
  .footer_right img {
    display: none;
  }
}

@media (max-width: 767px) {
  .footer_right img {
    max-width: 200px;
    width: 100%;
    margin-bottom: 0;
  }
}
.footer_right p {
  font-size: 1.2rem;
  line-height: 1;
  color: #8e8e8e;
}

@media (max-width: 767px) {
  p.copyright {
    font-size: 1.2rem;
    line-height: 1;
    color: #8e8e8e;
    text-align: center;
    margin-bottom: 2rem;
  }
}
@media print and (max-width: 767px) {
  p.copyright {
    display: none;
  }
}
section#top_slider {
  width: 100%;
  margin: 0 auto 5rem;
}
@media (max-width: 767px) {
  section#top_slider {
    margin: 1rem auto 3rem;
    padding-top:  0;
  }
}
section#top_slider ul.slider_top {
  cursor: pointer;
  margin: 0 auto 2rem;
}
@media (max-width: 767px) {
  section#top_slider ul.slider_top {
    margin: 0 auto 1rem;
  }
}
section#top_slider ul.slider_top li {
  margin: 0 auto;
  padding: 0 0.5rem;
  box-sizing: border-box;
}
section#top_slider ul.slider_top li img {
  width: 100%;
}
section#top_slider ul.slide_thumb {
  cursor: pointer;
  width: 70.5% !important;
  margin: 2rem auto 5rem;
}
@media (max-width: 767px) {
  section#top_slider ul.slide_thumb {
    width: 89.3333% !important;
    margin: 1rem auto 3rem;
  }
}
section#top_slider ul.slide_thumb li {
  margin: 0 1rem;
}
@media (max-width: 767px) {
  section#top_slider ul.slide_thumb li {
    margin: 0 0.5rem;
  }
}
section#top_slider ul.slide_thumb li img {
  width: 100%;
}
section#top_slider ul.slide_thumb .slick-arrow {
  width: 15px !important;
  height: 15px !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-right: 1px solid #000 !important;
  margin-top: -7.5px !important;
}
@media (max-width: 767px) {
  section#top_slider ul.slide_thumb .slick-arrow {
    width: 10px !important;
    height: 10px !important;
    margin-top: -5px !important;
  }
}
section#top_slider ul.slide_thumb .slick-current img {
  border: 3px solid #2385ea;
  box-sizing: border-box;
}
section#top_slider .slick-prev {
  /*戻る矢印の位置と形状*/
  left: -30px;
  transform: rotate(-135deg);
}
@media (max-width: 767px) {
  section#top_slider .slick-prev {
    left: -10px;
  }
}
section#top_slider .slick-next {
  /*次へ矢印の位置と形状*/
  right: -30px;
  transform: rotate(45deg);
}
@media (max-width: 767px) {
  section#top_slider .slick-next {
    right: -10px;
  }
}
section#top_slider .slick-next:before {
  content: "" !important;
}
section#top_slider .slick-prev:before {
  content: "" !important;
}

.movie {
  background-color: #f3f3f3;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 2rem 6rem;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .movie {
    width: 89.3333%;
    padding: 2rem;
  }
}
.movie .left {
  width: 48.1481%;
  float: left;
}
@media (max-width: 767px) {
  .movie .left {
    float: none;
    width: 100%;
    margin-bottom: 2rem;
  }
}
.movie .left img {
  width: 100%;
}
.movie .youtube_block {
  width: 43.9814%;
  margin-left: 0;
  float: right;
}
@media (max-width: 767px) {
  .movie .youtube_block {
    float: none;
    width: 100%;
  }
}
.movie .youtube_block .youtube_movie {
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  position: relative;
}
.movie .youtube_block .youtube_movie iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

section#news {
  width: 100%;
  background-color: #f5f5f5;
  padding: 0 2rem;
  box-sizing: border-box;
  margin: 0 auto 10rem;
}
@media (max-width: 767px) {
  section#news {
    padding: 2rem;
    margin: 0 auto 5rem;
  }
}
section#news .news_block {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  section#news .news_block {
    display: block;
  }
}
@media (max-width: 767px) {
  section#news .news_block {
    display: block;
  }
}
section#news dl.news_contents {
  width: 61.6666%;
  padding: 4rem 0;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  section#news dl.news_contents {
    width: 90%;
    margin: 0 auto 3rem;
    padding: 0;
  }
}
@media (max-width: 767px) {
  section#news dl.news_contents {
    width: 100%;
    margin-bottom: 3rem;
    padding: 0;
  }
}
section#news dl.news_contents div {
  border-top: none;
  padding: 0;
}
section#news dl.news_contents div dt {
  width: 14%;
}
section#news dl.news_contents div dd {
  width: 86%;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  section#news dl.news_contents div {
    margin-bottom: 1rem;
  }
  section#news dl.news_contents div dt {
    width: 15%;
  }
  section#news dl.news_contents div dd {
    width: 85%;
  }
}
@media (max-width: 767px) {
  section#news dl.news_contents div {
    border-bottom: 1px solid #bbbbbb;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
  }
}
section#news dl.news_contents div:last-child {
  border-bottom: none;
}
@media (max-width: 767px) {
  section#news dl.news_contents div:last-child {
    border-bottom: 1px solid #bbbbbb;
  }
}

.news_heading {
  padding: 4rem 0;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .news_heading {
    margin-bottom: 2.5rem;
    padding-bottom: 0;
  }
}
@media (max-width: 767px) {
  .news_heading {
    margin-bottom: 2.5rem;
    padding: 0;
  }
}
.news_heading img {
  vertical-align: middle;
}
.news_heading p {
  display: inline-block;
  vertical-align: middle;
  margin-left: 1rem;
  font-weight: bold;
}
.news_heading p.only {
  font-size: 2.4rem;
  line-height: 1;
  margin-left: 0;
  padding-left: 5rem;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .news_heading p.only {
    padding-left: 3rem;
  }
}
@media (max-width: 767px) {
  .news_heading p.only {
    font-size: 2rem;
    padding: 0;
  }
}

.to_list {
  position: relative;
  width: 145px;
  margin-bottom: 2rem;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .to_list {
    float: right;
    margin-right: 2rem;
    margin-bottom: 4rem;
    margin-top: 2rem;
  }
}
@media (max-width: 767px) {
  .to_list {
    float: right;
    margin-top: 3rem;
    margin-bottom: 0;
  }
}
.to_list a {
  position: absolute;
  bottom: 0;
  left: 0;
  padding-bottom: 0.3rem;
  font-size: 1.2rem;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .to_list a {
    font-size: 1.4rem;
  }
}
@media (max-width: 767px) {
  .to_list a {
    font-size: 1.4rem;
  }
}
.to_list a:before {
  position: absolute;
  content: "";
  bottom: 0;
  right: -40px;
  width: 13rem;
  height: 1rem;
  border: none;
  border-bottom: 1px solid #d6d6d6;
  border-right: 1px solid #d6d6d6;
  /*傾きを調節*/
  transform: skew(45deg);
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .to_list a:before {
    width: 14rem;
  }
}
@media (max-width: 767px) {
  .to_list a:before {
    width: 14rem;
  }
}

h2.section_title {
  position: relative;
  padding-bottom: 2rem;
  text-align: center;
  font-size: 2.4rem;
  font-weight: bold;
  margin: 0 auto 5rem;
  line-height: 1;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  h2.section_title {
    font-size: 2rem;
    margin-bottom: 3rem;
  }
}
h2.section_title:before {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  width: 100px;
  height: 3px;
  content: "";
  background: #e16060;
}

section.webstore {
  margin: 0 auto 7rem;
}
@media (max-width: 767px) {
  section.webstore {
    margin: 0 auto 8rem;
  }
  section.webstore .flex {
    display: block;
  }
}
section.webstore .contents {
  width: 31.6666%;
  border: 1px solid #bbbbbb;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  section.webstore .contents {
    width: 100%;
  }
}
section.webstore .contents img {
  display: block;
  width: 100%;
}
section.webstore .contents .textarea {
  padding: 2rem;
}
section.webstore .contents .textarea a:hover {
  color: #0094dd;
}
section.webstore .contents .textarea p {
  font-size: 1.4rem;
}

section.item_section {
  margin: 0 auto 7rem;
}
@media (max-width: 767px) {
  section.item_section {
    margin: 0 auto 5rem;
  }
  section.item_section:last-of-type {
    margin-bottom: 14rem !important;
  }
}
section.item_section:last-of-type {
  margin-bottom: 17rem !important;
}
section.item_section .contents {
  margin-bottom: 5rem;
  width: 23.0888%;
}
@media (max-width: 767px) {
  section.item_section .contents {
    width: 47.0149%;
    margin-bottom: 3rem;
  }
}
section.item_section .contents .img_trimming {
  margin-bottom: 2rem;
}
section.item_section .contents ul {
  line-height: 1.65;
  margin-top: 1rem;
}
section.item_section .contents ul li {
  margin-bottom: 0.5rem;
  font-size: 1.4rem;
  line-height: 1.5;
}

section.pickup_item_section .contents {
  width: 31.6666%;
}
section.pickup_item_section .flex:after {
  width: 31.6666%;
}
@media (max-width: 767px) {
  section.pickup_item_section .contents {
    width: 100%;
  }
  section.pickup_item_section .flex {
    display: block;
  }
}

.breadcrumb {
  margin-bottom: 5rem;
}
.breadcrumb ul {
  font-size: 1.2rem;
}
.breadcrumb ul li {
  color: #9a9999;
  display: inline-block;
}
.breadcrumb ul li:after {
  content: "　／　";
}
.breadcrumb ul li:last-child::after {
  content: "";
}
.breadcrumb ul li a {
  color: #9a9999;
  text-decoration: underline;
}

section.upper_container {
  margin-bottom: 3rem;
  margin-top: 2rem;
}
@media (max-width: 767px) {
  section.upper_container {
    margin-bottom: 5rem;
  }
  section.upper_container .breadcrumb {
    margin-bottom: 3rem;
  }
}
section.upper_container .logo {
  width: 255px;
  margin: 0 auto;
}
@media (max-width: 767px) {
  section.upper_container .logo {
    width: 200px;
  }
}
section.upper_container .logo a:hover {
  opacity: 1;
}

section.itemdet {
  margin-bottom: 8rem;
}
section.itemdet h2 {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1;
  margin: 0 0 5rem;
}
@media (max-width: 767px) {
  section.itemdet h2 {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
}
section.itemdet .left {
  width: 50%;
  float: left;
}
@media (max-width: 767px) {
  section.itemdet .left {
    float: none;
    width: 100%;
    margin-bottom: 2rem;
  }
}
section.itemdet .right {
  width: 46.25%;
  float: right;
}
@media (max-width: 767px) {
  section.itemdet .right {
    width: 100%;
    float: none;
  }
}
section.itemdet .right p.catchcopy {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 2rem;
}
@media (max-width: 767px) {
  section.itemdet .right p.catchcopy {
    font-size: 1.6rem;
    margin-bottom: 1rem;
  }
}
section.itemdet .right p.detail_txt {
  margin-bottom: 3rem;
}

section.itemdet .right p.detail_txt a {
  color: #cc6262;
}

section.itemdet .right p.detail_txt a span {
  color: #cc6262;
  text-decoration: underline;
}

.item_cart_block {
  background-color: #f6f2f2;
  padding: 3rem;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .item_cart_block {
    padding: 2rem;
  }
}
.item_cart_block .item_cart {
  margin-bottom: 2rem;
  border-bottom: 1px solid #bbbbbb;
  padding-bottom: 2rem;
}
.item_cart_block .item_cart:last-of-type {
  margin-bottom: 0;
}
.item_cart_block h3 {
  font-size: 2rem;
  margin: 0 0 3rem;
  line-height: 1.4;
  font-weight: normal;
}
@media (max-width: 767px) {
  .item_cart_block h3 {
    font-size: 1.8rem;
    margin-bottom: 1rem;
  }
}
.item_cart_block p.price {
  font-size: 2.4rem;
  line-height: 3.5rem;
  display: inline-block;
  float: left;
  height: 35px;
}
.item_cart_block p.price span {
  font-size: 1.4rem;
  margin-left: 1rem;
}
.item_cart_block .amount_box {
  float: right;
  position: relative;
  width: 110px;
  height: 35px;
}
.item_cart_block .amount_box p {
  display: inline-block;
  font-size: 15px;
  line-height: 1;
  margin-right: 1rem;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  /* Safari用 */
  transform: translateY(-50%);
  left: 0;
}
.item_cart_block .amount_box input {
  width: 70px;
  border: 1px solid #bbbbbb;
  height: 35px;
  position: absolute;
  top: 0;
  right: 0;
  padding: 0 10px;
  box-sizing: border-box;
  text-align: right;
}
.item_cart_block .amount_box input::-webkit-inner-spin-button, .item_cart_block .amount_box input::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}
.item_cart_block .item_cart_set {
  margin-bottom: 4rem;
  text-align: right;
}
.item_cart_block .item_cart_set .amount_box {
  width: 145px;
}
.item_cart_block .item_cart_set a.set_btn {
  color: #cc6262;
  border-bottom:  1px solid #cc6262;
  font-size: 1.4rem;
  margin-top: 1rem;
  display: inline-block;
  line-height: 1;
}
.item_cart_block .item_cart_set .modal_content {
  text-align: left;
}
.item_cart_block .item_cart_set .modal_content p:first-child {
  margin-bottom: 3.5rem;
}
.item_cart_block .item_cart_set .modal_content .img {
  max-width: 650px;
  margin-top: 5rem;
}
@media (max-width: 767px) {
  .item_cart_block .item_cart_set .modal_content p:first-child {
    margin-bottom: 2rem;
  }
  .item_cart_block .item_cart_set .modal_content .img {
    max-width: 100%;
    margin-top: 3rem;
  }
}
.item_cart_block .item_cart_set .modal_content .img img {
  width: 100%;
}
.item_cart_block .item_total {
  border-bottom: 1px solid #bbbbbb;
}
.item_cart_block .item_total p {
  font-size: 2rem;
  line-height: 1;
  display: inline-block;
  float: left;
  margin-bottom: 1rem;
}
.item_cart_block .item_total p.price {
  float: right;
  height: auto;
}
.item_cart_block p.red_txt {
  font-size: 1.4rem;
  line-height: 1.5;
  color: #b14343;
  font-weight: bold;
  padding-left: 1.5rem;
  text-indent: -1.5rem;
  margin-top: 4rem;
}

.attn {
  text-align: right;
}
.attn a {
  display: block;
  text-decoration: underline;
  color: #cc6262;
  font-size: 1.4rem;
}
.attn a:before {
  content: ">";
}

.attn_other a:before {
  content: "";
}
.attn_other img {
  padding-left: 0.5rem;
  vertical-align: middle;
}

section.ent_itemdet .item {
  border: none;
}
section.ent_itemdet table {
  font-size: 2rem;
  width: 100%;
  margin-bottom: 4rem;
}
@media (max-width: 767px) {
  section.ent_itemdet table {
    font-size: 1.8rem;
  }
}
section.ent_itemdet table tr {
  display: block;
  border-bottom: 1px solid #bbbbbb;
  padding: 1.5rem 1.5rem 2rem;
}
@media (max-width: 767px) {
  section.ent_itemdet table tr {
    padding: 1rem;
  }
}
section.ent_itemdet table tr th {
  width: 11rem;
  text-align: left;
}
@media (max-width: 767px) {
  section.ent_itemdet table tr th {
    width: 9rem;
  }
}
section.ent_itemdet table tr td span {
  font-size: 1.4rem;
}

p.updatedate {
  text-align: right;
}

table.iteminfo_table {
  width: 100%;
}
table.iteminfo_table tr {
  border-top: 1px solid #bbbbbb;
  border-bottom: 1px solid #bbbbbb;
}
table.iteminfo_table tr th {
  background-color: #e8ecef;
  text-align: left;
  padding: 1rem 2rem;
  width: 10rem;
}
@media (max-width: 767px) {
  table.iteminfo_table tr th {
    display: block;
    width: auto;
  }
}
table.iteminfo_table tr td {
  padding: 1.5rem 2rem;
}
@media (max-width: 767px) {
  table.iteminfo_table tr td {
    display: block;
    padding: 1.5rem 1rem;
  }
}
table.iteminfo_table a {
  color: #000;
}
table.iteminfo_table a span {
  color: #cc6262;
  text-decoration: underline;
}

section.art_itemdet .item {
  border: none;
}
section.art_itemdet .art_cart_table {
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  section.art_itemdet .art_cart_table {
    margin-top: 4rem;
  }
}

.rich_bg {
  width: 100%;
  margin: 0 auto 5rem;
}
@media (max-width: 767px) {
  .rich_bg {
    margin-bottom: 3rem;
  }
}
.rich_bg img {
  width: 100%;
}

.img_trimming {
  width: 100%;
  position: relative;
}
.img_trimming:before {
  content: "";
  display: block;
  padding-top: 100%;
}
.img_trimming a {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  height: 100%;
  border: 1px solid #bbbbbb;
}
.img_trimming a img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  display: block;
}

.item_img {
  position: relative;
  margin: 0;
  padding: 0;
}
.item_img .item {
  position: relative;
  height: 100%;
  border: 1px solid #bbbbbb;
  z-index: 10;
  margin-bottom: 2rem;
}
.item_img .item:before {
  display: block;
  padding-top: 100%;
  content: "";
  position: relative;
  overflow: hidden;
}
.item_img .item img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  max-width: 100%;
  height: 100%;
  object-fit: scale-down;
}

.item_img > .slick-list,
.item_img > .slick-list > .slick-track,
.item_img > .slick-list > .slick-track > .slick-slide > div {
  position: relative;
  height: 100%;
}

/* slide-navigation */
.choice_btn {
  position: relative;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
}
.choice_btn .item {
  position: relative;
  cursor: pointer;
  overflow: hidden;
  width: 18.6666%;
  height: 100%;
  margin-right: 1.6666%;
  margin-bottom: 1rem;
  padding: 0;
  max-width: 113px;
  border: 1px solid #bbbbbb;
  z-index: 10;
  box-sizing: border-box;
}
.choice_btn .item:before {
  display: block;
  padding-top: 100%;
  content: "";
}
.choice_btn .item:nth-of-type(5n) {
  margin-right: 0;
}
.choice_btn .item img {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.choice_btn .current:after {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  content: "";
  opacity: 0.5;
  background: #000;
}

section.iteminfo {
  max-width: 960px;
  margin: 0 auto 10rem;
}
@media (max-width: 767px) {
  section.iteminfo {
    margin-bottom: 0;
  }
  section.iteminfo a.to_list_btn {
    margin-bottom: 8rem;
  }
}
section.iteminfo h3 {
  background-color: #eaeaea;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: bold;
  padding: 1.5rem;
  margin: 0;
}

section.iteminfo a span {
  color: #cc6262;
  text-decoration: underline;
}

.info_block {
  margin-bottom: 5rem;
}
.info_block:last-of-type {
  margin-bottom: 10rem;
}
@media (max-width: 767px) {
  .info_block:last-of-type {
    margin-bottom: 6rem;
  }
}
.info_block .info_pd {
  padding: 2rem 3.5rem 0;
}
@media (max-width: 767px) {
  .info_block .info_pd {
    padding: 2rem 2rem 0;
  }
}
.info_block .img_trimming {
  border: 1px solid #bbbbbb;
}
.info_block .img_trimming img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  transform: translate(-50%, -50%);
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.other_det {
  margin-bottom: 3rem;
}
.other_det:last-child {
  margin-bottom: 0;
}
.other_det p {
  margin-bottom: 1.5rem;
}
.other_det p.heading {
  line-height: 1;
  width: 100%;
  border-bottom: 1px solid #333;
  padding-bottom: 1rem;
  margin-bottom: 2rem;
  font-weight: bold;
}
.other_det p.attn_bk {
  font-size: 1.2rem;
  line-height: 1.5;
  margin-bottom: 0;
}

.dealer_list table th,
.dealer_list table td {
  border: 1px solid #bbb;
  padding: 0.5rem 1rem;
  text-align: center;
  width: calc(100% / 7);
}

.dealer_list table th {
  background-color: #f6f2f2;
}

.dealer_list table th a {
  text-decoration: underline;
  color: #cc6262;
}

.gift_block {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .gift_block {
    flex-wrap: wrap;
  }
}
.gift_block .img_box {
  width: 31.1111%;
}
.gift_block .img_box:nth-child(n+4) {
  margin-top: 2rem;
}
@media (max-width: 767px) {
  .gift_block .img_box {
    width: 48%;
    margin-bottom: 2rem;
  }
}
.gift_block .img_box .img_trimming {
  margin-bottom: 1.5rem;
}
.gift_block p {
  font-size: 1.2rem;
}

.case_choice .choice_img p {
  padding-bottom: 0;
}
.case_choice .flex {
  margin-bottom: 0;
}

a.to_list_btn {
  max-width: 320px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  line-height: 1;
  display: block;
  color: #fff;
  box-sizing: border-box;
  border: 1px solid #bbbbbb;
  max-width: 360px;
  padding: 1.5rem;
  color: #000;
  font-weight: normal;
}
@media (max-width: 767px) {
  a.to_list_btn {
    width: 80%;
  }
}
a.to_list_btn:hover {
  background-color: #bbbbbb;
  color: #fff;
}

a.to_cart_btn {
  max-width: 320px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  line-height: 1;
  display: block;
  color: #fff;
  box-sizing: border-box;
  max-width: 360px;
  padding: 1.5rem;
  color: #fff;
  font-weight: normal;
  background-color: #333;
}
@media (max-width: 767px) {
  a.to_cart_btn {
    width: 80%;
  }
}

a.golf_btn {
  max-width: 320px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  line-height: 1;
  display: block;
  color: #fff;
  box-sizing: border-box;
  max-width: 300px;
  margin: 4rem auto 3rem;
  background-color: #ffda5a;
  padding: 15px 0;
  font-size: 1.5rem;
  color: #605325;
}
@media (max-width: 767px) {
  a.golf_btn {
    width: 80%;
  }
}
a.golf_btn img {
  padding-right: 1.5rem;
}

a.cart_btn {
  max-width: 320px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  line-height: 1;
  display: block;
  color: #fff;
  box-sizing: border-box;
  background-color: #b14343;
  font-size: 1.8rem;
  line-height: 1.3;
  padding: 1rem;
  vertical-align: middle;
  margin-top: 4rem;
}
@media (max-width: 767px) {
  a.cart_btn {
    width: 80%;
  }
}
@media (max-width: 767px) {
  a.cart_btn {
    width: 90%;
  }
}
a.cart_btn img {
  width: 26px;
  padding-right: 1.5rem;
  vertical-align: middle;
}

a.live_btn {
  max-width: 320px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  line-height: 1;
  display: block;
  color: #fff;
  box-sizing: border-box;
  background-color: #f09116;
  font-size: 1.8rem;
  padding: 1.5rem 0;
}
@media (max-width: 767px) {
  a.live_btn {
    width: 80%;
  }
}

.more_btn {
  max-width: 320px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  line-height: 1;
  display: block;
  color: #fff;
  box-sizing: border-box;
  max-width: 360px;
  border: 1px solid #bbbbbb;
  padding: 1.5rem 2rem;
  background-color: #ddd;
  border-radius: 45px;
  position: relative;
  color: #000;
  cursor: pointer;
  vertical-align: middle;
  position: relative;
}
@media (max-width: 767px) {
  .more_btn {
    width: 80%;
  }
}
@media (max-width: 767px) {
  .more_btn {
    margin-top: 2rem;
  }
}
.more_btn .btn_arrow {
  font-size: 2rem;
  position: absolute;
  top: calc(50% - 1.4rem);
  right: 11.5rem;
}
@media (max-width: 767px) {
  .more_btn .btn_arrow {
    right: 7rem;
  }
}
.more_btn:hover {
  background-color: #000;
  color: #fff;
}

a.back_btn {
  max-width: 320px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  line-height: 1;
  display: block;
  color: #fff;
  box-sizing: border-box;
  border: 1px solid #bbbbbb;
  max-width: 320px;
  padding: 1.5rem;
  color: #000;
  font-weight: normal;
  margin: 0;
}
@media (max-width: 767px) {
  a.back_btn {
    width: 80%;
  }
}
a.back_btn:hover {
  background-color: #bbbbbb;
  color: #fff;
}

.add_btn {
  text-align: right;
  margin-bottom: 5rem;
}
.add_btn button {
  text-decoration: underline;
  color: #cc6262;
  background-color: transparent;
  border: none;
  outline: none;
  cursor: pointer;
}

.btn_area a {
  max-width: 320px;
  width: 100%;
  text-align: center;
  margin: 0 auto;
  font-weight: bold;
  line-height: 1;
  display: block;
  color: #fff;
  box-sizing: border-box;
  background-color: #0095de;
  padding: 1.5rem 4rem;
  max-width: 290px;
}
@media (max-width: 767px) {
  .btn_area a {
    width: 80%;
  }
}
@media (max-width: 767px) {
  .btn_area a {
    width: 100%;
    padding: 1.5rem;
  }
}

.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
}

.modal_bg {
  background: rgba(0, 0, 0, 0.5);
  height: 100vh;
  position: absolute;
  width: 100%;
}

.modal_content {
  background: #fff;
  left: 50%;
  padding: 3rem 5rem 4rem 3rem;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 83.3333%;
  max-width: 1000px;
}

.js_modal_set .modal_content {
  height: 80vh;
  overflow: scroll;
}


@media (max-width: 767px) {
  .modal_content {
    padding: 2rem 3rem 2rem 2rem;
    height: 80vh;
    overflow: scroll;
    margin-top: 3rem;
  }
}
.modal_content .flex {
  justify-content: flex-start;
}

a.js_modal_close, a.js_modal_close_set {
  display: block;
  width: 25px;
  /*枠の大きさ*/
  height: 25px;
  /*枠の大きさ*/
  position: relative;
  float: right;
  margin-right: -25px;
  cursor: pointer;
}
a.js_modal_close:before, a.js_modal_close:after,
a.js_modal_close_set:before, a.js_modal_close_set:after {
  content: "";
  display: block;
  width: 100%;
  /*バツ線の長さ*/
  height: 1px;
  /*バツ線の太さ*/
  background: #000;
  transform: rotate(45deg);
  transform-origin: 0% 50%;
  position: absolute;
  top: calc(14% - 5px);
  left: 14%;
}
a.js_modal_close:after,
a.js_modal_close_set:after {
  transform: rotate(-45deg);
  transform-origin: 100% 50%;
  left: auto;
  right: 14%;
}

.gift_choice .check {
  display: inline-block;
  margin-right: 5rem;
}
.gift_choice .check:last-child {
  margin-right: 0;
}
@media (max-width: 767px) {
  .gift_choice .check {
    margin-bottom: 1rem;
    margin-right: 0;
  }
  .gift_choice .check:last-child {
    margin-bottom: 0;
  }
}
.gift_choice p {
  font-size: 2rem;
  width: 100%;
  line-height: 1;
  border-bottom: 1px solid #bbbbbb;
  padding-bottom: 1rem;
  margin-bottom: 3rem;
  font-weight: bold;
}
@media (max-width: 767px) {
  .gift_choice p {
    font-size: 1.8rem;
    line-height: 1.3;
    margin-bottom: 1.5rem;
  }
}

.gift_choice p.notice {
  font-size: 1.4rem;
  border: none;
  padding-bottom: 0;
  margin-bottom: 1rem;
  font-weight: normal;
}

.choice_block {
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .choice_block {
    margin-bottom: 3rem;
  }
}

.modal input[type=radio] {
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -o-appearance: none;
  appearance: none;
  position: relative;
  right: 0;
  bottom: 0;
  left: 0;
  height: 20px;
  width: 20px;
  vertical-align: -0.8rem;
  transition: all 0.15s ease-out 0s;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  margin: 0.4rem;
  outline: none;
  border-radius: 50%;
}
.modal input[type=radio]:checked:before {
  transform: scale(1);
}
.modal input[type=radio]:before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  margin: 4px auto 4px;
  transform: scale(0);
  transition: all ease-out 250ms;
}
.modal input[type=radio].gray {
  border: 1px solid #8e8e8e;
  background: #f5f5f5;
}
.modal input[type=radio].gray:checked:before {
  background: #8e8e8e;
}

.choice_img {
  width: 22.2222%;
  margin-right: 3.2608%;
}
@media (max-width: 767px) {
  .choice_img {
    width: 47%;
    margin-right: 6%;
    margin-bottom: 2rem;
  }
  .choice_img:nth-of-type(2n) {
    margin-right: 0;
  }
}
.choice_img:nth-of-type(4n) {
  margin-right: 0;
}
.choice_img:nth-of-type(n+5) {
  margin-top: 3rem;
}
.choice_img img {
  width: 100%;
}
.choice_img p {
  line-height: 1.5;
  font-size: 1.6rem;
  border-bottom: 0;
  padding: 1rem 0 2rem;
  margin-bottom: 0;
  font-weight: normal;
}

.paid_case_modal p.txt_graybg {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  padding: 1rem 1.5rem;
  background-color: #eeeeee;
  border-bottom: none;
  box-sizing: border-box;
}
.paid_case_modal p.txt_graybg span {
  font-size: 1.4rem;
  font-weight: normal;
}
@media (max-width: 767px) {
  .paid_case_modal p.txt_graybg span {
    display: block;
    margin-top: 0.5rem;
  }
}
.paid_case_modal .choice_block {
  width: 100%;
  max-width: 100% !important;
}
.paid_case_modal .choice_block:last-of-type {
  justify-content: center !important;
}
@media (max-width: 767px) {
  .paid_case_modal .choice_block {
    display: flex !important;
  }
}
.paid_case_modal .choice_block .select_block {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .paid_case_modal .choice_block .select_block {
    display: block;
  }
}
.paid_case_modal .choice_block .select_block .check {
  display: inline-block;
  margin-right: 0;
}
.paid_case_modal .choice_block .select_block .check input[type=radio] {
  display: inline-block;
  vertical-align: middle;
  margin-right: 1.5rem;
}
.paid_case_modal .choice_block .select_block .amount input[type=number] {
  display: inline-block;
  margin-right: 1.5rem;
}
.paid_case_modal .gift_choice:nth-of-type(2) {
  margin-bottom: 8rem;
}
@media (max-width: 767px) {
  .paid_case_modal .gift_choice .choice_block.display_block {
    display: block !important;
  }
}
.paid_case_modal .gift_choice:last-of-type .choice_block:last-of-type {
  max-width: 680px !important;
  justify-content: space-between !important;
}
.paid_case_modal .choice_img div.matchHeight {
  margin-bottom: 2rem;
}
.paid_case_modal .choice_img p {
  font-size: 1.4rem;
  padding: 0;
  margin-bottom: 1rem;
}
.paid_case_modal .choice_img p.name {
  font-size: 1.6rem;
}
.paid_case_modal .choice_img p:last-child {
  margin-bottom: 0;
}

.article_container {
  float: left;
  width: 67.5%;
}
@media (max-width: 767px) {
  .article_container {
    float: none;
    width: 100%;
  }
}
.article_container h3 {
  font-size: 3.6rem;
  font-weight: bold;
  margin: 0 0 5rem;
}
@media (max-width: 767px) {
  .article_container h3 {
    font-size: 2.8rem;
    line-height: 1.2;
    margin-bottom: 3rem;
  }
}

.article_block {
  width: 100%;
  margin-bottom: 7rem;
}
@media (max-width: 767px) {
  .article_block {
    margin-bottom: 5rem;
  }
}
.article_block:last-child {
  margin-bottom: 3rem;
}
.article_block img {
  width: 100%;
  margin-bottom: 7rem;
}
@media (max-width: 767px) {
  .article_block img {
    margin-bottom: 2rem;
  }
}
.article_block h4 {
  font-size: 2rem;
  font-weight: bold;
  margin: 0 0 5rem;
}
@media (max-width: 767px) {
  .article_block h4 {
    margin-bottom: 2rem;
  }
}

section.item_article .cart_block {
  float: right;
  width: 28.6666%;
  top: 20px;
}
@media (max-width: 767px) {
  section.item_article .cart_block {
    float: none;
    width: 100%;
  }
}

.contents {
  opacity: 1;
  transition: all 0.4s ease 0s;
  overfllow: hidden;
}

.contents.is-hidden {
  visibility: hidden;
  opacity: 0;
  height: 0;
  margin: 0 !important;
  padding: 0;
}

h2.upper_title {
  font-size: 3rem;
  line-height: 1;
  width: 100%;
  border-bottom: 1px solid #000;
  font-weight: bold;
  padding-bottom: 2rem;
  margin: 3rem 0 0;
}
@media (max-width: 767px) {
  h2.upper_title {
    font-size: 2.4rem;
    padding-bottom: 1rem;
    line-height: 1.3;
  }
}
h2.upper_title span {
  font-size: 1.8rem;
  font-weight: normal;
  margin-left: 1rem;
}
@media (max-width: 767px) {
  h2.upper_title span {
    font-size: 1.6rem;
    margin-top: 1rem;
    line-height: 1.5;
    display: block;
    margin-left: 0;
  }
}
h2.upper_title span.important {
  font-size: 1.6rem;
  margin-left: 0;
}
@media (max-width: 767px) {
  h2.upper_title span.important {
    margin-bottom: 1.5rem;
  }
}

#item_list section.upper_container {
  margin-bottom: 5rem;
}

.contact_block {
  max-width: 960px;
  width: 100%;
  background-color: #eeeeee;
  padding: 1rem 1.5rem;
  margin: 5rem auto 0;
  border-radius: 45px;
  line-height: 1;
  font-weight: bold;
  position: relative;
}
.contact_block .right {
  float: right;
  width: 78.4946%;
  display: inline-block;
}
.contact_block a {
  display: inline-block;
}
.contact_block a:first-of-type {
  margin-right: 2rem;
  width: 49.1803%;
}
.contact_block a:last-of-type {
  width: 40.9836%;
}
.contact_block a img {
  width: 100%;
}
.contact_block p.allcontact {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  /* Safari用 */
  transform: translateY(-50%);
  left: 3rem;
  width: 14.5161%;
}

.giftfax_block {
  max-width: 960px;
  width: 100%;
  background-color: #eeeeee;
  padding: 1rem 1.5rem;
  margin: 1rem auto 0;
  border-radius: 45px;
  line-height: 1;
  font-weight: bold;
  position: relative;
}
.giftfax_block .right {
  float: right;
  width: 78.4946%;
  display: inline-block;
}
.giftfax_block a {
  display: inline-block;
}
.giftfax_block a {
  width: 40.9836%;
}
.giftfax_block a img {
  width: 100%;
}
.giftfax_block p.allcontact {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  /* Safari用 */
  transform: translateY(-50%);
  left: 3rem;
  width: 14.5161%;
}

.quo_faxbtn {
  margin-bottom: 5rem;
}

@media (max-width: 767px) {
  .contact_block {
    padding: 2rem;
    margin: 3rem auto 0;
    border-radius: 15px;
    position: static;
  }
  .contact_block .right {
    float: none;
    width: 100%;
    display: block;
  }
  .contact_block a {
    display: block;
  }
  .contact_block a:first-of-type {
    margin-right: 0;
    margin-bottom: 1rem;
    width: 100%;
  }
  .contact_block a:last-of-type {
    width: 100%;
  }
  .contact_block a img {
    width: 100%;
  }
  .contact_block p.allcontact {
    position: static;
    top: 0;
    -webkit-transform: translateY(0);
    /* Safari用 */
    transform: translateY(0);
    left: 0;
    width: 100%;
    text-align: center;
    margin-bottom: 1.5rem;
  }

  .giftfax_block {
    padding: 2rem;
    margin: 1rem auto 0;
    border-radius: 15px;
    position: static;
  }
  .giftfax_block .right {
    float: none;
    width: 100%;
    display: block;
  }
  .giftfax_block a {
    display: block;
  }
  .giftfax_block a:first-of-type {
    margin-right: 0;
    margin-bottom: 1rem;
    width: 100%;
  }
  .giftfax_block a:last-of-type {
    width: 100%;
  }
  .giftfax_block a img {
    width: 100%;
  }
  .giftfax_block p.allcontact {
    position: static;
    top: 0;
    -webkit-transform: translateY(0);
    /* Safari用 */
    transform: translateY(0);
    left: 0;
    width: 100%;
    text-align: center;
    margin-bottom: 1.5rem;
  }
}
.tel_no {
  float: left;
  margin-right: 1rem;
}
.tel_no img {
  width: 25px;
  margin-right: 0.5rem;
}
.tel_no p {
  font-size: 3rem;
  display: inline-block;
  font-family: "Roboto Condensed", sans-serif;
}

p.hour {
  float: left;
  font-weight: normal;
  font-size: 1.2rem;
  line-height: 1.2;
}

.mailto {
  width: 240px;
  position: relative;
}
.mailto img {
  width: 25px;
}
.mailto p {
  font-size: 1.8rem;
  display: inline-block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  /* Safari用 */
  transform: translateY(-50%);
  right: 0;
}

section.ent_upper_container {
  margin-bottom: 10rem !important;
}
@media (max-width: 767px) {
  section.ent_upper_container {
    margin-bottom: 5rem !important;
  }
}

.ticketport_category {
  max-width: 980px;
  margin: 2rem auto 0;
}
.ticketport_category ul {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .ticketport_category ul {
    justify-content: center;
  }
}
.ticketport_category ul li {
  text-align: center;
  width: 19.5%;
  border-bottom: 1px solid #bbbbbb;
  box-sizing: border-box;
  line-height: 1;
  font-weight: bold;
  padding-bottom: 1rem;
}
@media (max-width: 767px) {
  .ticketport_category ul li {
    width: 32.5%;
    margin-right: 1%;
    margin-bottom: 2rem;
    font-size: 1.5rem;
  }
  .ticketport_category ul li:nth-child(3), .ticketport_category ul li:last-child {
    margin-right: 0;
  }
  .ticketport_category ul li:nth-last-child(-n+2) {
    width: 43%;
    margin-bottom: 0;
  }
}

.upper_txt_block {
  width: 58.3333%;
  margin: 3rem auto 0;
  text-align: center;
}
@media (max-width: 767px) {
  .upper_txt_block {
    width: 100%;
  }
}

section.static_uppercontents {
  margin-top: 1.5rem;
  margin-bottom: 2rem;
}
@media print {
  section.static_uppercontents {
    display: none;
  }
}
section.static_uppercontents .breadcrumb {
  margin-bottom: 0;
}

.slider_banner_block ul.slide_banner {
  width: 95.8333% !important;
  margin: 5rem auto 0;
}
@media (max-width: 767px) {
  .slider_banner_block ul.slide_banner {
    width: 100% !important;
    margin-top: 3rem;
  }
}
.slider_banner_block ul.slide_banner li {
  padding: 0 2rem;
}
@media (max-width: 767px) {
  .slider_banner_block ul.slide_banner li {
    padding: 0 1rem;
  }
}
.slider_banner_block ul.slide_banner .slick-arrow {
  z-index: 2 !important;
  width: 15px !important;
  height: 15px !important;
  color: #000 !important;
  border-top: 1px solid #000 !important;
  border-right: 1px solid #000 !important;
  margin-top: -7.5px !important;
}
.slider_banner_block .slick-prev {
  /*戻る矢印の位置と形状*/
  left: -21px;
  transform: rotate(-135deg);
}
@media (max-width: 767px) {
  .slider_banner_block .slick-prev {
    left: -10px;
  }
}
.slider_banner_block .slick-next {
  /*次へ矢印の位置と形状*/
  right: -21px;
  transform: rotate(45deg);
}
@media (max-width: 767px) {
  .slider_banner_block .slick-next {
    right: -10px;
  }
}
.slider_banner_block .slick-next:before {
  content: "" !important;
}
.slider_banner_block .slick-prev:before {
  content: "" !important;
}

section.quo_list {
  margin-bottom: 5rem;
}

.quo_det {
  background-color: #e1ecf6;
  padding: 3rem 2rem;
}
.quo_det .quocard {
  width: 53.75%;
  float: left;
  text-align: right;
  padding-right: 6rem;
}
@media (max-width: 767px) {
  .quo_det .quocard {
    width: 100%;
    margin: 0 auto 2rem;
    padding-right: 0;
    text-align: center;
  }
}
.quo_det .quocard img {
  width: 100%;
  max-width: 300px;
}

.quo_txt {
  width: 46.25%;
  float: right;
}
@media (max-width: 767px) {
  .quo_txt {
    width: 100%;
  }
}
.quo_txt p.card_name {
  font-size: 2.4rem;
  font-weight: bold;
  line-height: 1;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .quo_txt p.card_name {
    margin-bottom: 1.5rem;
    text-align: center;
  }
}
.quo_txt .contact_block {
  width: 100%;
  margin: 2.5rem 0 0;
  max-width: 450px;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .quo_txt .contact_block {
    border-radius: 15px;
    padding: 1.5rem 2rem;
  }
}
@media (max-width: 767px) {
  .quo_txt .contact_block {
    margin: 2.5rem auto 0;
  }
}
.quo_txt .contact_block .right {
  width: 69.2307%;
  float: left;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .quo_txt .contact_block .right {
    float: none;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .quo_txt .contact_block .right {
    width: 100%;
    float: none;
  }
}
.quo_txt .contact_block a:first-of-type {
  width: 100%;
  margin-right: 0;
}
@media (max-width: 767px) {
  .quo_txt .contact_block a:first-of-type {
    margin-bottom: 0;
  }
}
.quo_txt .contact_block p.allcontact {
  position: static;
  top: 0;
  left: 0;
  transform: none;
  width: 30%;
  float: left;
  display: inline-block;
  padding: 0.9rem 0;
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) and (max-width: 1024px) and (orientation: portrait) {
  .quo_txt .contact_block p.allcontact {
    width: 100%;
    float: none;
    display: block;
    font-size: 1.6rem;
    text-align: center;
    padding: 0;
    margin-bottom: 1.5rem;
  }
}
@media (max-width: 767px) {
  .quo_txt .contact_block p.allcontact {
    width: 100%;
    float: none;
    display: block;
    font-size: 1.6rem;
    padding: 0;
  }
}

.tab_menu {
  display: flex;
  width: 100%;
  margin: 0 0 1em;
}
.tab_menu li {
  background-color: #fff;
  width: calc(100% / 6);
  flex-grow: 1;
  padding: 1rem;
  list-style: none;
  border-top: solid 1px #bbbbbb;
  border-bottom: solid 1px #bbbbbb;
  border-left: solid 1px #bbbbbb;
  text-align: center;
  cursor: pointer;
  font-size: 1.5rem;
  font-weight: bold;
}
.tab_menu li:last-child {
  border-right: solid 1px #bbbbbb;
}
.tab_menu li.selected {
  background: #5ac7ff;
  transition: all 0.2s ease-out;
}
.tab_menu li:hover {
  background: #5ac7ff;
  transition: all 0.2s ease-out;
}

.select_menu {
  padding: 10px;
  margin: 0 auto 0.8em;
  cursor: pointer;
  font-size: 1.6rem;
  border-radius: 0;
  outline: none;
  width: 100%;
  border: 1px solid #bbbbbb;
}

.tab_panel {
  display: none;
  height: 0;
  opacity: 0;
}

.tab_panel.is-show {
  display: block;
  height: auto;
  opacity: 1;
  transition: opacity 0.4s ease-in-out;
}

.tab_panel_container {
  margin-bottom: 0;
}
.tab_panel_container section.item_section:last-child {
  margin-bottom: 7rem !important;
}

.search_box {
  max-width: 680px;
  position: relative;
  display: flex;
  border: 1px solid #bbbbbb;
  margin: 5rem auto 0;
  padding: 1rem;
}
@media (max-width: 767px) {
  .search_box {
    padding: 0.5rem 1rem;
    width: 90%;
    margin-top: 3rem;
  }
}
.search_box .searchTerm {
  width: 100%;
  border: none;
  height: 3rem;
  outline: none;
  margin-left: 1rem;
  box-sizing: border-box;
  font-size: 1.8rem;
  line-height: 1;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}
@media (max-width: 767px) {
  .search_box .searchTerm {
    font-size: 1.6rem;
  }
}
.search_box .searchButton {
  border: none;
  width: 2.5rem;
  cursor: pointer;
  background-color: #fff;
  padding: 0;
}

section.artist_section {
  padding-top: 3rem;
}
section.artist_section p {
  font-size: 1.4rem;
  line-height: 1;
  margin-bottom: 2rem;
  text-align: right;
}

.tag_order {
  font-size: 1.4rem;
  line-height: 1;
  margin-bottom: 2rem;
  text-align: right;
}

ul.artist_tag li {
  display: inline-block;
  border: 1px solid #333;
  border-radius: 5px;
  padding: 1rem 5rem;
  margin-right: 2.5rem;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  ul.artist_tag li {
    padding: 0.5rem 1rem;
    margin-right: 1rem;
    margin-bottom: 1.5rem;
  }
}

.tag_block li {
  display: inline-block;
  padding: 0.8rem 1rem;
  border: 1px solid #bbbbbb;
  font-size: 1.4rem;
  line-height: 1;
  border-radius: 5px;
  margin-right: 0.5rem;
}

.select_container {
  background-color: #eeeeee;
  padding: 1rem 2rem;
  margin: 0 auto 5rem;
}
@media (max-width: 767px) {
  .select_container {
    margin-bottom: 3rem;
  }
}
.select_container p {
  line-height: 2.1;
  float: left;
  margin-right: 1rem;
}

.select_box {
  overflow: hidden;
  width: 220px;
  text-align: center;
}

.select_box select {
  width: 100%;
  padding-right: 1em;
  cursor: pointer;
  text-indent: 0.01px;
  text-overflow: ellipsis;
  border: none;
  outline: none;
  background: transparent;
  background-image: none;
  box-shadow: none;
  -webkit-appearance: none;
  appearance: none;
}

.select_box select::-ms-expand {
  display: none;
}

.select_box.select_contents {
  position: relative;
  border: 1px solid #bbbbbb;
  background: #fff;
}

.select_box.select_contents::before {
  position: absolute;
  top: 0.8em;
  right: 0.8em;
  width: 0;
  height: 0;
  padding: 0;
  content: "";
  border-left: 6px solid transparent;
  border-right: 6px solid transparent;
  border-top: 6px solid #474747;
  pointer-events: none;
}

.select_box.select_contents select {
  padding: 8px 38px 8px 8px;
}

section#ticketport_slider {
  width: 100%;
  margin: 0 auto 5rem;
}
@media (max-width: 767px) {
  section#ticketport_slider {
    margin-bottom: 3rem;
  }
}
section#ticketport_slider ul.slider_ticketport li {
  width: 67.5%;
  padding: 0 0.5rem;
  box-sizing: border-box;
}
section#ticketport_slider ul.slider_ticketport li img {
  width: 100%;
}
section#ticketport_slider ul.slider_thumb {
  width: 62.5%;
  max-width: 1080px;
  margin: 0 auto 50px;
  padding: 0;
}
section#ticketport_slider ul.slider_thumb li {
  padding: 0 10px;
  box-sizing: border-box;
}

main.ticketport_top section.item_section {
  margin-bottom: 10rem;
}
@media (max-width: 767px) {
  main.ticketport_top section.item_section {
    margin-bottom: 8rem;
  }
}
main.ticketport_top a.to_list_btn {
  margin-top: 2rem;
}
@media (max-width: 767px) {
  main.ticketport_top a.to_list_btn {
    margin-top: 1rem;
  }
}

.ticketport_freespace {
  margin-bottom: 5rem;
}

.webstore_comment {
  position: relative;
  width: 60%;
  max-width: 960px;
  padding: 3.4rem 2rem;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0 auto 5rem;
  text-align: center;
}
@media (max-width: 767px) {
  .webstore_comment {
    width: 80%;
    margin-bottom: 3rem;
  }
}

.webstore_comment::before,
.webstore_comment::after {
  position: absolute;
  content: "";
  width: 60px;
  height: 60px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.webstore_comment::before {
  top: 0;
  left: 0;
  border-top: 1px solid #887a5f;
  border-left: 1px solid #887a5f;
}

.webstore_comment::after {
  bottom: 0;
  right: 0;
  border-bottom: 1px solid #887a5f;
  border-right: 1px solid #887a5f;
}

h2.golf_ttl {
  font-size: 3rem;
  font-weight: bold;
  line-height: 1;
  margin: 3rem 0 0;
}
@media (max-width: 767px) {
  h2.golf_ttl {
    font-size: 2.6rem;
    margin-bottom: -2rem;
  }
}

.golf_container {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 2rem;
}

section.golf_list {
  width: 100%;
  margin: 0 auto 20rem;
}
section.golf_list p {
  margin-bottom: 3rem;
}
section.golf_list p span {
  font-size: 2.2rem;
}
@media (max-width: 767px) {
  section.golf_list p span {
    font-size: 2rem;
  }
}
section.golf_list a.cart_btn {
  margin: 0;
}
section.golf_list a.back_btn {
  margin-right: 4rem;
}

.list li.is-hidden {
  opacity: 0;
  height: 0;
  margin: 0;
}

table.golf_table {
  width: 100%;
  margin-bottom: 3rem;
}
table.golf_table tr th {
  border: 1px solid #bbbbbb;
  background-color: #f6f2f2;
  line-height: 1;
  font-weight: bold;
  padding: 1.5rem;
  width: calc(100% / 4);
}
table.golf_table tr td {
  border: 1px solid #bbbbbb;
  text-align: center;
  padding: 2rem;
  vertical-align: middle;
}
table.golf_table tr td input {
  width: 80px;
  border: 1px solid #bbbbbb;
  height: 35px;
  padding: 0 10px;
  box-sizing: border-box;
  text-align: right;
  margin-right: 1rem;
  -webkit-appearance: none;
}
table.golf_table tr td input:-webkit-outer-spin-button, table.golf_table tr td input:-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
table.golf_table tr td input.award_name {
  width: 150px;
  margin: 0;
}
table.golf_table tr td li {
  margin-bottom: 1rem;
}
table.golf_table tr td li:last-child {
  margin-bottom: 0;
}
table.golf_table tr td li input {
  margin-left: 1rem;
  margin-right: 0;
}

@media (max-width: 767px) {
  .table_scroll {
    overflow-x: auto;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
  .table_scroll table.golf_table {
    margin-bottom: 3rem;
  }
  .table_scroll table.golf_table tr th {
    vertical-align: middle;
    padding: 1rem;
    line-height: 1.3;
    width: 150px;
    min-width: 150px;
  }
  .table_scroll table.golf_table tr td {
    width: 150px;
    min-width: 150px;
  }
}
section.golf_list .set_total {
  margin-bottom: 10rem;
}
@media (max-width: 767px) {
  section.golf_list .set_total {
    margin-bottom: 6rem;
  }
}
section.golf_list .set_total th {
  width: 100%;
}
@media (max-width: 767px) {
  section.golf_list .set_total th {
    padding: 1.5rem;
  }
}
section.golf_list .set_total td {
  width: calc(100% / 3);
}
@media (max-width: 767px) {
  section.golf_list .set_total td {
    padding: 1.5rem;
  }
}

section.golf_list .btn_block {
  width: 100%;
  display: flex;
  justify-content: center;
}
@media (max-width: 767px) {
  section.golf_list .btn_block {
    display: block;
  }
  section.golf_list .btn_block a {
    width: 80%;
    margin: 0 auto;
  }
  section.golf_list .btn_block a:first-child {
    margin-bottom: 2rem;
  }
}

.shop_detail h2 {
  font-size: 3rem;
  line-height: 1;
  font-weight: bold;
  margin-bottom: 5rem;
}
@media (max-width: 767px) {
  .shop_detail h2 {
    font-size: 2.4rem;
    margin-bottom: 3rem;
  }
}
.shop_detail .shop_img {
  float: left;
  width: 50%;
}
@media (max-width: 767px) {
  .shop_detail .shop_img {
    float: none;
    width: 100%;
    margin-bottom: 2rem;
  }
}
.shop_detail .shop_img img {
  width: 100%;
}
.shop_detail .info_block {
  width: 45.8333%;
  float: right;
  background-color: #f6f2f2;
  padding: 3rem 2.5rem;
}
@media (max-width: 767px) {
  .shop_detail .info_block {
    width: 100%;
    float: none;
    padding: 2rem;
  }
}
.shop_detail .shop_info {
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .shop_detail .shop_info {
    margin-bottom: 2rem;
  }
}
.shop_detail .shop_info p:first-child {
  font-weight: bold;
  margin-bottom: 1rem;
  line-height: 1;
}
.shop_detail .shop_info p span {
  font-size: 1.2rem;
}

section.access_section {
  margin-bottom: 20rem;
}
section.access_section .clearfix {
  margin-bottom: 10rem;
}

.map_block {
  width: 51.6666%;
  float: left;
  margin-left: 4rem;
}
@media (max-width: 767px) {
  .map_block {
    width: 100%;
    float: none;
    margin-left: 0;
    margin-bottom: 3rem;
  }
}
.map_block .gmap {
  height: 0;
  overflow: hidden;
  padding-bottom: 56.25%;
  position: relative;
}
.map_block .gmap iframe {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.access_detail {
  width: 41.6666%;
  float: right;
  padding-right: 2rem;
}
@media (max-width: 767px) {
  .access_detail {
    width: 100%;
    float: none;
    padding-right: 0;
  }
}
.access_detail p {
  font-weight: bold;
  line-height: 1;
  margin-bottom: 1rem;
}

section.shop_top a {
  display: block;
  width: 23.0888%;
}
@media (max-width: 767px) {
  section.shop_top a {
    width: 47%;
  }
}
section.shop_top .contents {
  width: 100%;
}

.shop_contents {
  background-color: #f5f5f5;
  border: 1px solid #bbbbbb;
  text-align: center;
  position: relative;
}
.shop_contents:before {
  content: "";
  display: block;
  padding-top: 75%;
}
.shop_contents .txt_block {
  width: 100%;
  padding: 1rem;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.shop_contents p.shop_name {
  font-size: 2.4rem;
  line-height: 1;
  font-weight: bold;
  margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
  .shop_contents p.shop_name {
    font-size: 2rem;
    margin-bottom: 1rem;
  }
}
.shop_contents p.shop_place {
  font-size: 1.8rem;
  line-height: 1.35;
}
@media (max-width: 767px) {
  .shop_contents p.shop_place {
    font-size: 1.6rem;
  }
}

section.store_access:last-child {
  margin-bottom: 10rem;
}
section.store_access .clearfix {
  padding: 5rem 3rem 0;
}
@media (max-width: 767px) {
  section.store_access .clearfix {
    padding: 3rem 1.5rem 0;
  }
}
section.store_access .address_block {
  float: left;
  width: 48.2456%;
}
@media (max-width: 767px) {
  section.store_access .address_block {
    float: none;
    width: 100%;
  }
}
section.store_access .address_block img {
  margin-bottom: 3rem;
}
section.store_access .address_block .info_block {
  width: 100%;
  float: none;
  background-color: transparent;
  padding: 0;
}
@media (max-width: 767px) {
  section.store_access .address_block .info_block {
    margin-bottom: 3rem;
  }
}
section.store_access .map_block {
  width: 48.2456%;
  float: right;
  margin: 0;
}
@media (max-width: 767px) {
  section.store_access .map_block {
    width: 100%;
    float: none;
    margin-bottom: 5rem;
  }
}
section.store_access .map_block .gmap {
  padding-bottom: 74.5454%;
}

.info_def {
  width: 48.2456%;
  float: left;
}
@media (max-width: 767px) {
  .info_def {
    width: 100%;
    float: none;
  }
}
.info_def .address_block {
  width: 100% !important;
  padding: 0 !important;
}
.info_def img {
  float: left;
  width: 24.3636%;
}
@media (max-width: 767px) {
  .info_def img {
    float: none;
    width: 50%;
    display: block;
    margin: 0 auto;
  }
}
.info_def .info_block {
  float: right !important;
  width: 72.7272% !important;
}
@media (max-width: 767px) {
  .info_def .info_block {
    float: none !important;
    width: 100% !important;
  }
}

span.important {
  font-size: 1.6rem;
  font-weight: normal;
  width: 100px;
  padding: 0.5rem 1rem;
  background-color: #c84848;
  color: #fff;
  display: inline-block;
  box-sizing: border-box;
  text-align: center;
  margin-right: 2rem;
  vertical-align: middle;
  line-height: 1;
}
@media (max-width: 767px) {
  span.important {
    margin-right: 1rem;
  }
}

.upper_title span.important {
  display: block;
  margin-bottom: 1.5rem;
}

section.news_detail {
  max-width: 960px;
  width: 100%;
  margin: 0 auto 20rem;
}
@media (max-width: 767px) {
  section.news_detail {
    margin-bottom: 17rem;
  }
}
section.news_detail h2 {
  margin-bottom: 3rem;
}
section.news_detail dt {
  width: 12%;
}
section.news_detail dd {
  width: 88%;
}

dl.news_contents {
  width: 100%;
}
dl.news_contents div {
  display: flex;
  width: 100%;
  border-top: 1px solid #bbbbbb;
  padding: 1.5rem;
}
@media (max-width: 767px) {
  dl.news_contents div {
    display: block;
  }
}
dl.news_contents div:last-child {
  border-bottom: 1px solid #bbbbbb;
}
dl.news_contents dt {
  display: block;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  dl.news_contents dt {
    width: 100%;
  }
}
dl.news_contents dd {
  text-decoration: underline;
}
@media (max-width: 767px) {
  dl.news_contents dd {
    width: 100%;
  }
}
dl.news_contents span.important {
  padding: 0.3rem 0.5rem;
  width: 80px;
  font-size: 1.4rem;
  vertical-align: baseline;
}

.news_txtarea {
  margin-bottom: 5rem;
}
.news_txtarea p.date {
  text-align: right;
  margin-bottom: 1rem;
}

.quo_modal.quo_modal_scroll .modal_content {
  overflow: scroll;
  height: 80vh;
}
.quo_modal p.txt {
  font-weight: normal;
  border-bottom: none;
  font-size: 1.6rem;
}
.quo_modal .gift_choice {
  margin-bottom: 5rem;
}
.quo_modal .gift_choice p span {
  font-size: 1.6rem;
  font-weight: normal;
  margin-left: 0.5rem;
}
@media (max-width: 767px) {
  .quo_modal .gift_choice p span {
    font-size: 1.4rem;
    margin-left: 0;
  }
}
.quo_modal .choice_block span {
  font-size: 1.4rem;
  margin-left: 0.5rem;
}
.quo_modal .choice_block:last-of-type.flex {
  margin: 0 auto;
  max-width: 680px;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .quo_modal .choice_block:last-of-type.flex {
    display: block;
  }
}
.quo_modal .choice_block:last-of-type.flex a {
  width: 47.0588%;
}
@media (max-width: 767px) {
  .quo_modal .choice_block:last-of-type.flex a {
    width: 100%;
  }
}
.quo_modal .choice_block:last-of-type a:first-child, .quo_modal .choice_block:last-of-type a:last-child {
  margin: 0;
}
@media (max-width: 767px) {
  .quo_modal .choice_block:last-of-type a:first-child {
    margin-bottom: 2rem;
  }
}
.quo_modal .contact_block {
  max-width: 570px;
  margin: 2rem 0 0;
}
.quo_modal .contact_block p.allcontact {
  width: 24.074%;
}
.quo_modal .contact_block .right {
  width: 66.6666%;
}
.quo_modal .contact_block .right a {
  width: 100%;
}
.quo_modal input[type=number] {
  width: 70px;
  border: 1px solid #bbbbbb;
  height: 35px;
  padding: 0 10px;
  box-sizing: border-box;
  text-align: right;
  display: block;
  margin: 0 auto;
}
.quo_modal input[type=number]::-webkit-inner-spin-button, .quo_modal input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
  -moz-appearance: textfield;
}
.quo_modal .case_total {
  background-color: #eeeeee;
  width: 310px;
  margin: 0 auto;
  padding: 2rem 1.5rem;
}
@media (max-width: 767px) {
  .quo_modal .case_total {
    width: 100%;
    padding: 1.5rem;
  }
}
.quo_modal .case_total div {
  border-bottom: 1px solid #bbbbbb;
  padding-bottom: 1rem;
  margin-bottom: 1rem;
}
.quo_modal .case_total div:last-child {
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
  color: #cc6262;
}
.quo_modal .case_total p.txt {
  display: inline-block;
  width: auto;
  margin: 0;
  padding: 0;
}
@media (max-width: 767px) {
  .quo_modal .case_total p.txt:last-child {
    float: right;
  }
}
.quo_modal .case_total input {
  display: inline-block;
  margin-left: 2.5rem;
  margin-right: 0.5rem;
}
.quo_modal .select {
  margin-bottom: 4rem;
}
.quo_modal .select p {
  font-size: 1.6rem;
  font-weight: normal;
  margin-bottom: 1.5rem;
  padding: 0;
}
.quo_modal .select .attn {
  display: inline-block;
}
.quo_modal .select .select_box:first-of-type {
  float: left;
  margin-right: 2rem;
}
.quo_modal .select .left {
  width: auto;
  float: left;
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .quo_modal .select .left:first-child {
    margin-bottom: 2rem;
  }
}
.quo_modal .select input[type=text] {
  width: 220px;
  border: 1px solid #bbbbbb;
  height: 31px;
  padding: 0 10px;
  box-sizing: border-box;
  text-align: right;
  display: block;
  margin: 0;
}

.paid_case_modal p.txt_graybg {
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1;
  padding: 1rem 1.5rem;
  background-color: #eeeeee;
  border-bottom: none;
  box-sizing: border-box;
}
.paid_case_modal p.txt_graybg span {
  font-size: 1.4rem;
  font-weight: normal;
}
@media (max-width: 767px) {
  .paid_case_modal p.txt_graybg span {
    display: block;
    margin-top: 0.5rem;
  }
}
.paid_case_modal .choice_block {
  width: 100%;
  max-width: 100% !important;
}
.paid_case_modal .choice_block:last-of-type {
  justify-content: center !important;
}
@media (max-width: 767px) {
  .paid_case_modal .choice_block {
    display: flex !important;
  }
}
.paid_case_modal .choice_block .select_block {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .paid_case_modal .choice_block .select_block {
    display: block;
  }
}
.paid_case_modal .choice_block .select_block .check {
  display: inline-block;
  margin-right: 0;
}
.paid_case_modal .choice_block .select_block .check input[type=radio] {
  display: inline-block;
  vertical-align: middle;
  margin-right: 1.5rem;
}
.paid_case_modal .choice_block .select_block .amount input[type=number] {
  display: inline-block;
  margin-right: 1.5rem;
}
.paid_case_modal .gift_choice:nth-of-type(2) {
  margin-bottom: 8rem;
}
@media (max-width: 767px) {
  .paid_case_modal .gift_choice .choice_block.display_block {
    display: block !important;
  }
}
.paid_case_modal .gift_choice:last-of-type .choice_block:last-of-type {
  max-width: 680px !important;
  justify-content: space-between !important;
}
.paid_case_modal .choice_img div.matchHeight {
  margin-bottom: 2rem;
}
.paid_case_modal .choice_img p {
  font-size: 1.4rem;
  padding: 0;
  margin-bottom: 1rem;
}
.paid_case_modal .choice_img p.name {
  font-size: 1.6rem;
}
.paid_case_modal .choice_img p:last-child {
  margin-bottom: 0;
}
.paid_case_modal .choice_img p.inline {
  display: inline;
  margin-bottom: 0;
}

.incart_modal p.announce {
  font-size: 2rem;
  font-weight: bold;
}
@media (max-width: 767px) {
  .incart_modal p.announce {
    margin-top: 6rem;
    font-size: 1.8rem;
    line-height: 1.5;
  }
}
.incart_modal .item_incart {
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .incart_modal .item_incart {
    margin-bottom: 5rem;
  }
}

.error_modal .modal_content {
  text-align: center;
  padding: 3rem 5rem 4rem;
}
@media (max-width: 767px) {
  .error_modal .modal_content {
    padding: 3rem 3rem 3rem 2rem;
  }
}
.error_modal p.announce {
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  margin-bottom: 2rem;
}
@media (max-width: 767px) {
  .error_modal p.announce {
    margin-top: 3rem;
  }
}
.error_modal p.error_text {
  margin-bottom: 3rem;
}
.error_modal .close_modal_btn {
  border: 1px solid #bbbbbb;
  background-color: white;
  color: #000;
  padding: 1rem 2rem;
  max-width: 300px;
  margin: 0 auto;
  transition: all 0.3s;
}
.error_modal .close_modal_btn:hover {
  background-color: #bbbbbb;
  color: #fff;
}
@media (max-width: 767px) {
  .error_modal .close_modal_btn {
    width: 100%;
  }
}

.case_wrap {
  display: flex;
  align-items: center;
  margin-top: -3rem;
}
@media (max-width: 767px) {
  .case_wrap {
    margin-top: -1rem;
  }
}
.case_wrap .pulldown {
  border: 1px solid #bbbbbb;
  width: 4rem;
  height: 3rem;
  margin: 0 1rem 0;
  text-align: center;
}
.case_wrap p {
  display: inline-block;
  font-size: 1.6rem;
  border-bottom: none;
  font-weight: normal;
  width: auto;
  padding: 0;
  margin: 0;
}

#header.sp-view {
  position: fixed;
  top: 0;
  left: 0;
  background-color: #fff;
  height: 60px;
  width: 100%;
  z-index: 100000;
  border-bottom: 1px solid #bbbbbb;
}
@media print {
  #header.sp-view {
    display: none;
  }
}

.sp_header_left {
  position: relative;
}
.sp_header_left img {
  width: 100%;
}

#header .sp_header {
  width: 100%;
  margin: 0 auto;
  padding: 1rem 2rem;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  position: relative;
}
#header .sp_header img {
  vertical-align: middle;
}
#header .sp_header h1 {
  width: 80px;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  transform: translate(-50%, -50%);
}
#header .sp_header .right {
  float: right;
}
#header .sp_header .right .cart {
  display: inline-block;
  width: 40px;
}
#header .sp_header .right .cart span {
  top: -5px;
}
#header .sp_header .right a {
  display: inline-block;
  margin-right: 0.5rem;
}
#header .sp_header .right a:last-child {
  margin-right: 0;
}
#header .sp_header .right img {
  width: 40px;
}

/*========= 検索窓を開くためのボタン設定 ===========*/
.acd-check {
  display: none;
}

.acd-label {
  display: block;
  width: 40px;
  position: absolute;
  top: 10px;
  left: 70px;
}
.acd-label img {
  width: 40px;
}

.acd-content {
  height: 0;
  opacity: 0;
  padding: 1rem 2rem 1.5rem;
  transition: 0.5s;
  visibility: hidden;
}
.acd-content .search {
  border: 1px solid #bbbbbb;
  width: 100%;
  display: block;
}
.acd-content .searchTerm {
  width: 100%;
  border: none;
  height: 3rem;
  outline: none;
  margin-left: 0;
  box-sizing: border-box;
  font-size: 1.4rem;
  line-height: 1;
  padding: 0.5rem 1rem;
  font-family: "游ゴシック", "Yu Gothic", YuGothic, "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ ゴシック", sans-serif;
}

.acd-check:checked + .acd-label + .acd-content {
  height: 50px;
  opacity: 1;
  padding: 10px;
  visibility: visible;
  background-color: #fff;
}

#nav-drawer {
  float: left;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display: none;
}

#s-nav {
  float: left;
  width: 30px;
}

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 40px;
  vertical-align: middle;
}

/*閉じる用の薄黒カバー*/
#nav-close {
  display: none;
  /*はじめは隠しておく*/
  position: fixed;
  z-index: 99;
  top: 60px;
  /*全体に広がるように*/
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  transition: 0.3s ease-in-out;
  border-top: 1px solid #333;
}

/*中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 60px;
  left: 0;
  z-index: 9999;
  /*最前面に*/
  width: 85.3333%;
  /*右側に隙間を作る（閉じるカバーを表示）*/
  max-width: 320px;
  /*最大幅（調整してください）*/
  height: 100%;
  background: #fff;
  /*背景色*/
  transition: 0.3s ease-in-out;
  /*滑らかに表示*/
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);
  /*左に隠しておく*/
  border-top: 1px solid #000;
  line-height: 1;
}

/*チェックが入ったらもろもろ表示*/
#nav-input:checked ~ #nav-close {
  display: block;
  /*カバーを表示*/
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  /*中身を表示（右へスライド）*/
  box-shadow: 6px 0 25px rgba(0, 0, 0, 0.15);
  z-index: 9998;
}

.cancel {
  position: absolute;
  top: 20px;
  right: 10px;
  z-index: 99;
}

.batsu {
  display: block;
  width: 30px;
  /*枠の大きさ*/
  height: 30px;
  /*枠の大きさ*/
  position: relative;
}

.batsu::before, .batsu::after {
  content: "";
  display: block;
  width: 100%;
  /*バツ線の長さ*/
  height: 2px;
  /*バツ線の太さ*/
  transform: rotate(45deg);
  transform-origin: 0% 50%;
  position: absolute;
  top: calc(14% - 5px);
  left: 14%;
  background-color: #fff;
}

.batsu::after {
  transform: rotate(-45deg);
  transform-origin: 100% 50%;
  left: auto;
  right: 14%;
}

/*ハンバーガーメニューの中身もろもろ*/
#nav-content {
  overflow: scroll;
  -webkit-overflow-scrolling: touch;
}
#nav-content a.hamburger_in {
  display: block !important;
  background-image: url(../images/arrow_right.png);
  background-repeat: no-repeat;
  background-position: top 50% right 2rem;
  background-size: 7px;
}

.nav_account {
  background-color: #eaeaea;
}
.nav_account a.hamburger_in {
  margin: 0;
  padding: 1.5rem 2rem;
}
.nav_account a.hamburger_in:first-child {
  border-bottom: 2px solid #fff;
}

.humburger_ticketport {
  padding: 2rem 2rem 3rem;
}
.humburger_ticketport a.humburger_ticketport_btn {
  width: 89%;
  margin: 0 auto;
  display: block;
}
.humburger_ticketport a.humburger_ticketport_btn img {
  width: 100%;
}

/*中身次第で工夫してください　ここまで*/
.category {
  padding: 0 2rem;
  margin-bottom: 10rem;
}
.category a.hamburger_in:first-of-type {
  padding-left: 0;
}
.category .category_btn {
  border-bottom: 1px solid #bbbbbb;
  margin-bottom: 2rem;
}
.category .category_btn:last-child {
  border-bottom: none;
}
.category .category_btn p {
  font-weight: bold;
  color: #999;
  margin-bottom: 1.5rem;
}
.category .category_btn a.hamburger_in {
  margin: 0;
  background-position: top 50% right 0 !important;
  padding-left: 2rem;
  margin-bottom: 2rem;
}

.modal_overlay {
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.6);
  position: fixed;
  z-index: 1000;
}

.btn_area {
  max-width: 600px;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  /* Safari用 */
  transform: translate(-50%, -50%);
  background: #fff;
  text-align: center;
  padding: 3rem 5rem;
}
@media (max-width: 767px) {
  .btn_area {
    width: 80%;
    padding: 3rem;
  }
}
.btn_area p.ttl {
  font-size: 2rem;
  line-height: 1;
  font-weight: bold;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .btn_area p.ttl {
    line-height: 1.3;
    font-size: 1.8rem;
    margin-bottom: 1.5rem;
  }
}
.btn_area img {
  display: block;
  max-width: 290px;
  margin: 0 auto 2rem;
}
@media (max-width: 767px) {
  .btn_area img {
    width: 100%;
  }
}
.btn_area p:last-of-type {
  margin-bottom: 2rem;
}

.btn_area_relative {
  width: 100%;
  position: relative;
}
.btn_area_relative button {
  display: block;
  background-color: transparent;
  border: none;
  position: absolute;
  top: -10px;
  right: -20px;
  cursor: pointer;
}
@media (max-width: 767px) {
  .btn_area_relative button .batsu {
    width: 20px;
    height: 20px;
  }
}
.btn_area_relative button span.batsu:before,
.btn_area_relative button span.batsu:after {
  background-color: #000;
}

.mega_menu_sp {
  display: flex;
  position: relative;
  margin-top: 60px;
  border-bottom: 1px solid #bbbbbb;
}
@media print {
  .mega_menu_sp {
    display: none;
  }
}

.mega_menu_sp .mega_menu_sp_list {
  width: calc(100% / 3);
  border-right: 1px solid #bbbbbb;
  font-size: 1.5rem;
  line-height: 1;
  background-color: #eeeeee;
}
.mega_menu_sp .mega_menu_sp_list.menu_arrow {
  background-color: #eeeeee;
}
.mega_menu_sp .mega_menu_sp_list:last-child {
  border-right: none;
}

.mega_menu_sp .mega_menu_sp_list > a {
  display: block;
  padding: 1.5rem 0;
  text-align: center;
  transition: 0.3s;
}

.mega_menu_sp .mega_menu_sp_list > a.menu_arrow {
  background-image: url(../images/downarrow_sp.png);
  background-size: 10px auto;
  background-position: left 50% bottom 5px;
  background-repeat: no-repeat;
}

/* ②メガメニューのスタイル */
.mega_menu_sp_contents {
  border-top: 1px solid #bbbbbb;
  background: #fff;
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 100;
  box-shadow: 0px 10px 10px -5px rgba(0, 0, 0, 0.15);
}
.mega_menu_sp_contents ul {
  padding: 2rem;
  font-size: 1.6rem;
}
.mega_menu_sp_contents ul li {
  margin-bottom: 1.5rem;
}
.mega_menu_sp_contents ul li.menu_title {
  font-weight: bold;
}
.mega_menu_sp_contents ul li:nth-child(n+2) {
  padding-left: 1.5rem;
}
.mega_menu_sp_contents ul li:nth-child(n+2) a {
  display: block;
  width: 100%;
  background: url(../images/arrow-nav-sec-link.png) no-repeat;
  background-size: 10px auto;
  background-position: right 20px top 50%;
}

.mega_menu_sp_contents li {
  width: 100%;
}

.banner_sp_block {
  padding-top: 12rem;
}

a.banner_sp {
  display: block;
  padding: 0 2rem;
}
a.banner_sp img {
  display: block;
}

@media print {
  a.banner_sp {
    display: none;
  }
  a.banner_sp img {
    display: none;
  }
}

.mega_menu_sp_list.active {
  background-color: #8e8e8e;
}

.static_wrapper {
  max-width: 960px;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto 16rem;
}
@media print {
  .static_wrapper {
    margin-top: 5rem;
  }
}
@media (max-width: 767px) {
  .static_wrapper {
    margin-bottom: 8rem;
  }
}

.static_txt {
  margin-bottom: 5rem;
  clear: both;
}
@media (max-width: 767px) {
  .static_txt {
    margin-bottom: 3rem;
  }
}
.static_txt span {
  font-size: 2rem;
  display: block;
  margin-bottom: 2rem;
  line-height: 1;
}
@media (max-width: 767px) {
  .static_txt span {
    line-height: 1.4;
  }
}

a.print {
  display: block;
  padding: 1rem 3rem 1rem 6rem;
  margin-bottom: 3rem;
  border: 1px solid #bbbbbb;
  width: auto;
  float: right;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
  background: url(../images/print_icon.png) no-repeat;
  background-position: left 3rem top 50%;
}
@media print {
  a.print {
    display: none;
  }
}

.static_contents {
  margin-bottom: 8rem;
}
@media (max-width: 767px) {
  .static_contents {
    margin-bottom: 6rem;
  }
}
.static_contents:last-of-type {
  margin-bottom: 0;
}
.static_contents h3 {
  font-size: 2.4rem;
  font-weight: bold;
  background-color: #eaeaea;
  line-height: 1;
  padding: 2rem;
  margin: 0 0 3rem;
}
@media (max-width: 767px) {
  .static_contents h3 {
    font-size: 1.6rem;
    padding: 1.5rem 4rem 1.5rem 1.5rem;
    margin: 0 0 2rem;
    line-height: 1.3;
  }
}
.static_contents p.table_heading {
  font-size: 2rem;
  font-weight: bold;
  margin-bottom: 2rem;
  line-height: 1;
  color: #812f2f;
}
.static_contents p.table_heading:before {
  content: "";
  background-color: #812f2f;
  height: 30px;
  width: 3px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 2rem;
}
@media (max-width: 767px) {
  .static_contents p.table_heading:before {
    margin-right: 1rem;
  }
}
@media (max-width: 767px) {
  .static_contents p.table_heading {
    font-size: 1.8rem;
    line-height: 1.5;
    text-indent: -1.5rem;
    margin-left: 1.5rem;
  }
}
.static_contents p.small {
  font-size: 1.4rem;
  text-indent: -1rem;
  padding-left: 1rem;
}
.static_contents p a {
  display: block;
  margin-top: 2rem;
}
.static_contents .btn_block {
  display: flex;
  justify-content: center;
  border-bottom: 1px solid #bbbbbb;
  padding-bottom: 7rem;
}
@media (max-width: 767px) {
  .static_contents .btn_block {
    display: block;
    padding-bottom: 3rem;
  }
}
@media print {
  .static_contents .btn_block {
    display: none;
  }
}
.static_contents .btn_block a {
  margin: 0 2rem;
}
@media print {
  .static_contents .btn_block a {
    display: none;
  }
}
@media (max-width: 767px) {
  .static_contents .btn_block a {
    margin: 0 auto 2rem;
  }
}

table.manner_table {
  width: 100%;
  text-align: left;
}
table.manner_table:first-of-type {
  margin-bottom: 2rem;
}
table.manner_table th, table.manner_table td {
  border: 1px solid #bbbbbb;
  padding: 1rem;
  vertical-align: middle;
}
table.manner_table th {
  background-color: #f5eaea;
  font-weight: bold;
}
@media (max-width: 767px) {
  table.manner_table th {
    font-size: 1.4rem;
  }
}
table.manner_table th:nth-of-type(1) {
  width: 25%;
}
table.manner_table th:nth-of-type(2) {
  width: 15%;
}
table.manner_table th:nth-of-type(3) {
  width: 20%;
}
table.manner_table th:nth-of-type(4) {
  width: 40%;
}
table.manner_table th span {
  font-size: 1.4rem;
  font-weight: normal;
}
@media (max-width: 767px) {
  table.manner_table td {
    font-size: 1.4rem;
  }
}
table.manner_table td:nth-child(2) img {
  border: 1px solid #bbbbbb;
  display: block;
  margin: 0 auto;
}

table.price_table {
  width: 100%;
  text-align: left;
}
table.price_table:first-of-type {
  margin-bottom: 2rem;
}
table.price_table th, table.price_table td {
  border: 1px solid #bbbbbb;
  padding: 1rem;
  vertical-align: middle;
}
table.price_table th {
  background-color: #f5eaea;
  font-weight: bold;
}
table.price_table th span {
  font-size: 1.4rem;
  font-weight: normal;
}

table.price_table_det {
  width: 100%;
  text-align: left;
}
table.price_table_det:first-of-type {
  margin-bottom: 2rem;
}
table.price_table_det th, table.price_table_det td {
  border: 1px solid #bbbbbb;
  padding: 1rem;
  vertical-align: middle;
}
table.price_table_det th {
  background-color: #f5eaea;
  font-weight: bold;
}
table.price_table_det th span {
  font-size: 1.4rem;
  font-weight: normal;
}
table.price_table_det td.gray_bg {
  background-color: #f5f5f5;
}

.manner_column {
  background-color: #f3f3f3;
  padding: 6rem 5rem 4rem;
  position: relative;
}
@media (max-width: 767px) {
  .manner_column {
    padding: 5rem 2rem 3rem;
  }
}
@media print {
  .manner_column {
    display: none;
  }
}
.manner_column .mb_50 {
  margin-bottom: 5rem;
}
.manner_column .flex_around {
  display: flex;
  justify-content: space-around;
  margin-top: 3rem;
}
@media (max-width: 767px) {
  .manner_column .flex_around {
    display: block;
  }
}
.manner_column .flex_around div {
  width: 20%;
}
@media (max-width: 767px) {
  .manner_column .flex_around div {
    width: 100%;
    margin: 0 auto 2rem;
    text-align: center;
  }
}
.manner_column .flex_around:before, .manner_column .flex_around:after {
  display: none;
}
.manner_column img.column_title {
  position: absolute;
  left: 10px;
  top: -25px;
}
@media (max-width: 767px) {
  .manner_column img.column_title {
    left: -10px;
  }
}
.manner_column p.heading {
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .manner_column p.heading {
    font-size: 1.8rem;
  }
}
.manner_column .textarea.flex {
  display: flex;
  flex-direction: row-reverse;
}
@media (max-width: 767px) {
  .manner_column .textarea.flex {
    display: block;
  }
}
.manner_column .textarea.flex:before {
  display: none;
}
.manner_column .textarea.flex .width25 {
  width: 25%;
  padding-left: 2rem;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  .manner_column .textarea.flex .width25 {
    width: 100%;
    padding-left: 0;
    text-align: center;
    margin-bottom: 2rem;
  }
}
.manner_column .textarea.flex .width75 {
  width: 75%;
}
@media (max-width: 767px) {
  .manner_column .textarea.flex .width75 {
    width: 100%;
  }
}
.manner_column .textarea dl.mt-30 {
  margin-top: 30px;
}
.manner_column .textarea dl dt {
  font-weight: bold;
  margin-bottom: 1rem;
  line-height: 1;
}
.manner_column .textarea dl dd {
  margin-bottom: 3rem;
}
.manner_column .textarea .flex_block {
  display: flex;
  margin-top: 3rem;
}
.manner_column .textarea .flex_block p {
  width: 90%;
}
@media (max-width: 767px) {
  .manner_column .textarea .flex_block p {
    width: 80%;
  }
}
.manner_column .textarea .flex_block p span {
  display: block;
  font-size: 1.6rem;
  font-weight: bold;
}
.manner_column .textarea .flex_block div {
  width: 10%;
  text-align: right;
}
@media (max-width: 767px) {
  .manner_column .textarea .flex_block div {
    width: 20%;
  }
}

.manner_footer {
  display: flex;
  justify-content: space-between;
}
@media print {
  .manner_footer {
    display: none;
  }
}
@media (max-width: 767px) {
  .manner_footer {
    flex-wrap: wrap;
  }
}
.manner_footer div {
  padding: 0 3rem;
  width: calc(100%/ 4);
}
@media (max-width: 767px) {
  .manner_footer div {
    width: 50%;
    padding: 0 2rem;
    margin-bottom: 2rem;
  }
}
.manner_footer p {
  font-weight: bold;
  line-height: 1;
  margin-bottom: 1.5rem;
}
.manner_footer ul li {
  margin-bottom: 1rem;
}
.manner_footer ul a {
  color: #cc6262;
  border-bottom: 1px solid #e7c2c2;
}
@media (max-width: 767px) {
  .manner_footer ul a {
    font-size: 1.4rem;
  }
}
.manner_footer ul a:before {
  content: "> ";
}

.anniversary_list {
  display: flex;
}
@media (max-width: 767px) {
  .anniversary_list {
    font-size: 1.4rem;
    display: block;
    margin-top: 2rem;
  }
}
.anniversary_list ul {
  width: 50%;
  list-style-type: disc;
  list-style: inside;
}
@media (max-width: 767px) {
  .anniversary_list ul {
    width: 100%;
  }
}

.info_text {
  margin-bottom: 3rem;
}
.info_text p.bold {
  margin-bottom: 1rem;
  line-height: 1;
}
.info_text a.pdf_open {
  color: #cc6262;
}
.info_text a.pdf_open:before {
  content: ">";
  color: #8e8e8e;
  margin-right: 0.5rem;
}

br.print {
  display: none;
}
@media print {
  br.print {
    display: block;
  }
}

.manner_bg {
  background-color: #f5eaea;
  padding: 5rem 3rem 5rem 5rem;
}
@media (max-width: 767px) {
  .manner_bg {
    padding: 3rem 2rem;
  }
}
.manner_bg p.bold {
  font-size: 2rem;
  line-height: 1;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .manner_bg p.bold {
    font-size: 1.8rem;
  }
}
.manner_bg .flex_block {
  display: flex;
  flex-direction: row-reverse;
}
@media (max-width: 767px) {
  .manner_bg .flex_block {
    display: block;
  }
}
.manner_bg .flex_block .width75 {
  width: 75%;
}
@media (max-width: 767px) {
  .manner_bg .flex_block .width75 {
    width: 100%;
  }
}
.manner_bg .flex_block .width25 {
  width: 25%;
}
@media (max-width: 767px) {
  .manner_bg .flex_block .width25 {
    width: 100%;
    text-align: center;
    margin-bottom: 1.5rem;
  }
}
.manner_bg .flex_block p {
  padding-right: 3.5%;
  box-sizing: border-box;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .manner_bg .flex_block p {
    padding-right: 0;
    margin-bottom: 2rem;
  }
}
.manner_bg .flex_block p:last-child {
  margin-bottom: 0;
}

.manner_btn_block {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding: 0 3rem;
}
@media (max-width: 767px) {
  .manner_btn_block {
    display: block;
    padding: 0 2rem;
  }
}

a.manner_btn {
  width: 44.7916%;
  border: 1px solid #bbbbbb;
  padding: 1.5rem;
  background-image: url(../images/manner_arrow.png);
  background-repeat: no-repeat;
  background-position: right 1.5rem top 50%;
  margin-bottom: 3rem;
  display: flex;
  align-items: center;
  height: 84px;
  box-sizing: border-box;
}
@media (max-width: 767px) {
  a.manner_btn {
    width: 100%;
    height: auto;
    background-position: right 1rem top 50%;
    padding-right: 3rem;
  }
}
a.manner_btn:nth-child(3), a.manner_btn:nth-child(4) {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  a.manner_btn:nth-child(3), a.manner_btn:nth-child(4) {
    margin-bottom: 3rem;
  }
}
a.manner_btn p.redtxt {
  color: #cc6262;
  font-weight: bold;
  line-height: 1;
  font-size: 1.8rem !important;
}
@media (max-width: 767px) {
  a.manner_btn p.redtxt {
    font-size: 1.6rem !important;
  }
}
a.manner_btn p.manner_btn_det {
  font-size: 1.4rem;
  margin-top: 1rem;
}

.accodion_wrapper {
  width: 100%;
  padding: 0 3rem;
  box-sizing: border-box;
  display: none;
}
@media (max-width: 767px) {
  .accodion_wrapper {
    padding: 0 1rem;
  }
}
.accodion_wrapper .accordion_container {
  margin-bottom: 5rem;
}

.toggle_contents {
  margin-bottom: 2rem;
  border: 1px solid #bbbbbb;
}
.toggle_contents:last-child {
  margin-bottom: 0;
}
.toggle_contents .toggle_title {
  font-weight: bold;
  margin: 0;
  padding: 2rem 2.5rem;
  cursor: pointer;
  transition: 0.3s;
  font-size: 1.8rem;
  line-height: 1;
  color: #cc6262;
}
@media (max-width: 767px) {
  .toggle_contents .toggle_title {
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 1.5rem 4rem 1.5rem 1.5rem;
  }
}
.toggle_btn {
  position: relative;
  cursor: pointer;
}
.toggle_btn:after {
  content: "";
  display: inline-block;
  width: 18px;
  height: 24px;
  background: url(../images/accordion_arrow_btn.png) no-repeat right top;
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  transition: 0.2s;
}
.toggle_btn.selected:after {
  transform: translateY(-50%) rotate(180deg);
  transition: 0.2s;
}
.toggle_contents .toggle_txt {
  display: none;
  padding: 0 6rem 2.5rem 2.5rem;
}
@media (max-width: 767px) {
  .toggle_contents .toggle_txt {
    padding: 0 3rem 1.5rem 1.5rem;
  }
}
.toggle_contents .toggle_txt p:nth-child(n+2) {
  margin-top: 2rem;
}
.toggle_contents .toggle_txt span {
  font-weight: bold;
}
.toggle_contents .toggle_txt a {
  margin-top: 0;
  display: inline;
  text-decoration:  underline;
}
.toggle_contents .refund_det p:nth-child(n+2) {
  margin-top: 0;
}
.toggle_contents .refund_det ul {
  padding-left: 2rem;
}
.toggle_contents table {
  width: 100%;
  text-align: center;
  margin-top: 2rem;
  table-layout: fixed;
}
.toggle_contents table th, .toggle_contents table td {
  border: 1px solid #bbbbbb;
  padding: 1rem;
  vertical-align: middle;
}
@media (max-width: 767px) {
  .toggle_contents table th, .toggle_contents table td {
    width: 50%;
  }
}
.toggle_contents table th {
  background-color: #f5eaea;
  font-weight: bold;
}
.tokutei_table table {
  margin-bottom: 3rem;
}
.tokutei_table table th {
  background-color: #f5eaea;
  font-weight: bold;
}
.tokutei_table table th, .tokutei_table table td {
  border: 1px solid #bbbbbb;
  padding: 1rem;
  vertical-align: middle;
  box-sizing: border-box;
}
.tokutei_table table th {
  width: 20%;
}
.tokutei_table table td {
  width: 80%;
  padding: 1.5rem 2rem;
}
@media (max-width: 767px) {
.tokutei_table table {
  border-top: 1px solid #bbbbbb;
}
.tokutei_table table th, .tokutei_table table td {
  display: block;
}
.tokutei_table table th {
  width: 100%;
  border-bottom: none;
  border-top: none;
  text-align: left;
  padding: 1.5rem;
}
.tokutei_table table td {
  width: 100%;
  padding: 1.5rem;
}
}
.kiyaku_textarea p {
  margin-bottom:  3rem;
}

.kiyaku_textarea .kiyaku-box {
  margin-bottom: 5rem;
}

.kiyaku_textarea .kiyaku-box h3.title {
  margin-bottom: 0;
  font-size: 1.8rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid #bbb;
  margin-bottom: 1rem;
}

@media (max-width: 767px) {
.kiyaku_textarea .kiyaku-box h3.title {
  font-size: 1.6rem;
}
}
.kiyaku_textarea .kiyaku-box ul {
  list-style-type: disc;
  list-style: inside;
  margin-bottom: 3rem;
  text-indent: -2rem;
  margin-left: 2rem;
}

p.catchcopy {
  font-size: 1.4rem;
  line-height:  1.5;
  margin-bottom:  0.5rem;
}

.accordion_contents {
  margin-bottom: 5rem;
}

/*# sourceMappingURL=style.css.map */
