@charset "UTF-8";
/*------------------------------------------------------------
商品一覧概要
------------------------------------------------------------*/
#product_overview .post_area h3 {
  font-size: 1.6rem;
}
#product_overview .post_area p {
  margin-top: 20px;
}
#product_overview .post_area img {
  max-width: 180px;
}
#product_overview .post_area.post_shippingfeelist img {
  max-width: 100%;
}

@media screen and (max-width: 812px) {
  #product_overview .post_area h3 {
    font-size: 1.4rem;
  }
  #product_overview .post_area p {
    margin-top: 10px;
  }
}
/*------------------------------------------------------------
商品一覧カテゴリーリスト
------------------------------------------------------------*/
#category_list .product_list {
  margin-top: 60px;
}

@media screen and (max-width: 812px) {
  #category_list .product_list {
    margin-top: 40px;
  }
}
/*------------------------------------------------------------
商品について
------------------------------------------------------------*/
#product_about h2 {
  font-size: 1.8rem;
  font-weight: bold;
  color: #004b9e;
  margin-top: 30px;
  clear: both;
}
#product_about .read_txt {
  font-size: 1.8rem;
  font-weight: bold;
  color: #004b9e;
  margin-top: 30px;
  clear: both;
}
#product_about h2.title_middle_blue {
  color: #fff;
}

#product_about dl {
  margin-top: 30px;
  position: relative;
  overflow: hidden;
}
#product_about dl dt {
  float: left;
  width: 200px;
  text-align: center;
}
/* #product_about dl dt img {
  max-width: 186px;
  height: auto;
} */
#product_about dl dd {
  margin-left: 220px;
}
#product_about dl dd img {
  display: block;
  margin: 10px 0;
}
#product_about dl dd.size_mark {
  margin-left: 0;
  position: absolute;
  top: 0;
  left: 0;
  font-size: 2.1rem;
  line-height: 44px;
  font-weight: bold;
  color: #fff;
  background: #e4007f;
  text-align: center;
  width: 44px;
  border-radius: 100%;
}
#product_about dl dd.bt_price {
  float: right;
  width: auto;
  margin-top: 40px;
}
#product_about dl dd.bt_price p.txt_note {
  margin-bottom: 14px;
  font-size: 1.2rem;
}
#product_about dl dd.bt_price p.txt_delivery {
  font-size: 1.2rem;
  color: #878787;
}
#product_about dl dd.bt_price p.txt_delivery span {
  font-size: 3.2rem;
  font-weight: 700;
  color: #ff0000;
  margin-left: 5px;
}
#product_about dl dd.bt_price a {
  display: inline-block;
  font-size: 1.6rem;
  line-height: 48px;
  font-weight: bold;
  text-decoration: none;
  color: #fff !important;
  background: #004b9e url("../images/product/arrow_circle_white.svg") no-repeat
    center right 15px;
  width: 220px;
  padding: 0 40px 0 20px;
  border: 2px solid #004b9e;
  border-radius: 10px;
}
#product_about dl dd.bt_price a:hover {
  color: #004b9e !important;
  background: #fff url("../images/product/arrow_circle_blue.svg") no-repeat
    center right 15px;
}

@media screen and (max-width: 812px) {
  #product_about h2 {
    font-size: 1.4rem;
    margin-top: 15px;
  }
  #product_about .read_txt {
    font-size: 1.4rem;
    margin-top: 15px;
  }
  #product_about dl {
    margin-top: 15px;
  }
  #product_about dl dt {
    float: none;
    width: auto;
    margin-bottom: 50px;
  }
  #product_about dl dd {
    margin-left: 0;
  }
  #product_about dl dd .bt_price {
    margin-top: 20px;
  }
  #product_about dl dd .bt_price a {
    font-size: 1.4rem;
    line-height: 38px;
    background-position: center right 10px;
    width: 160px;
    padding: 0 20px 0 10px;
    border-radius: 5px;
  }
}
/*------------------------------------------------------------
フリーエリア
------------------------------------------------------------*/
#product_free_area {
  border-top: 1px solid #eaeaea;
  margin-top: 80px;
  overflow: hidden;
}
#product_free_area h3 {
  font-size: 1.8rem;
  font-weight: bold;
  color: #004b9e;
  margin-top: 30px;
}
#product_free_area img.alignleft {
  margin: 5px 10px 5px 0;
}
#product_free_area img.alignright {
  margin: 5px 0 5px 10px;
}

@media screen and (max-width: 812px) {
  #product_free_area {
    margin-top: 15px;
  }
  #product_free_area h3 {
    font-size: 1.4rem;
    margin-top: 15px;
  }
  #product_free_area img.alignleft,
  #product_free_area img.alignright {
    margin-left: auto;
    margin-right: auto;
  }
}
/*------------------------------------------------------------
商品リスト
------------------------------------------------------------*/
#product_list {
  margin-top: 50px;
}

/*------------------------------------------------------------
関連商品
------------------------------------------------------------*/
#product_relation {
  margin-top: 40px;
}
#product_relation ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#product_relation ul li {
  width: calc(50% - 12px);
  margin-top: 25px;
}
#product_relation ul li:nth-child(-n + 2) {
  margin-top: 0;
}
#product_relation ul li a {
  display: block;
  text-decoration: none;
  font-size: 1.8rem;
  line-height: 60px;
  font-weight: bold;
  color: #004b9e;
  background: #fff;
  border: 3px solid #004b9e;
  border-radius: 10px;
  padding-left: 60px;
  background: no-repeat 20px center;
  background-size: 30px auto;
}
#product_relation ul li a:hover {
  color: #fff;
  background-color: #004b9e;
}
#product_relation ul li.clearfile a {
  background-image: url("../images/common/icon_clearfile_blue.svg");
}
#product_relation ul li.clearfile a:hover {
  background-image: url("../images/common/icon_clearfile_white.svg");
}
#product_relation ul li.ondemand a {
  background-image: url("../images/common/icon_ondemand_blue.svg");
}
#product_relation ul li.ondemand a:hover {
  background-image: url("../images/common/icon_ondemand_white.svg");
}
#product_relation ul li.case a {
  background-image: url("../images/common/icon_case_blue.svg");
}
#product_relation ul li.case a:hover {
  background-image: url("../images/common/icon_case_white.svg");
}
#product_relation ul li.bagcase a {
  background-image: url("../images/common/icon_bagcase_blue.svg");
}
#product_relation ul li.bagcase a:hover {
  background-image: url("../images/common/icon_bagcase_white.svg");
}
#product_relation ul li.others a {
  background-image: url("../images/common/icon_others_blue.svg");
}
#product_relation ul li.others a:hover {
  background-image: url("../images/common/icon_others_white.svg");
}
#product_relation ul li.stone a {
  background-image: url("../images/common/icon_stone_blue.svg");
}
#product_relation ul li.stone a:hover {
  background-image: url("../images/common/icon_stone_white.svg");
}

@media screen and (max-width: 812px) {
  #product_relation {
    margin-top: 20px;
  }
  #product_relation ul {
    display: block;
  }
  #product_relation ul li {
    width: auto;
    margin-top: 20px;
  }
  #product_relation ul li:nth-child(-n + 2) {
    margin-top: 20px;
  }
  #product_relation ul li a {
    font-size: 1.6rem;
    border-radius: 5px;
    padding-left: 40px;
    background: no-repeat 10px center;
    background-size: 24px auto;
  }
}
/*------------------------------------------------------------
商品詳細
------------------------------------------------------------*/
#product_detail {
  margin-top: 50px;
  overflow: hidden;
}
#product_detail h2 {
  font-size: 1.6rem;
  line-height: 1;
  color: #004b9e;
  border-bottom: 1px solid #004b9e;
  padding-bottom: 10px;
  margin-bottom: 30px;
}
#product_detail .detail_figure {
  float: left;
  width: calc(50% - 15px);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
#product_detail .detail_figure .modal-link {
  width: 100%;
  text-align: center;
}
#product_detail .detail_figure .modal-link img {
  max-width: 370px;
  height: auto;
}

#product_detail .detail_figure h3 {
  width: 100%;
  margin-top: 10px;
  font-size: 1.2rem;
  font-weight: normal;
}
#product_detail .detail_figure dl {
  width: 50%;
  display: flex;
  align-items: flex-start;
}
#product_detail .detail_figure dl dt {
  width: 40px;
}
#product_detail .detail_figure dl dd {
  width: calc(100% - 40px);
  font-size: 1.2rem;
  line-height: 1.2;
}
#product_detail .detail_figure dl dd a {
  font-size: 1rem;
}
#product_detail .detail_figure dl dd a:hover {
  text-decoration: none;
}
#product_detail .detail_figure p {
  width: 100%;
  margin-top: 20px;
}

#product_detail .detail_figure .flex-btn {
  width: 100%;
  display: flex;
  margin-top: 19px;
}
#product_detail .detail_figure .flex-btn p {
  padding: 0 5px;
}

#product_detail .detail_figure p a {
  display: block;
  text-decoration: none;
  font-size: 1rem;
  line-height: 36px;
  background: #f8dc40;
  text-align: center;
  border: 2px solid #f8dc40;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 10px;
}
#product_detail .detail_figure p a img {
  width: 21px;
  height: 18px;
  margin-right: 10px;
}
#product_detail .detail_figure p a.printing {
  background: #004ca4;
  text-align: center;
  border: 2px solid #004ca4;
  border-radius: 10px;
  color: #fff;
}
#product_detail .detail_figure p a.printing img {
  width: 14px;
  height: 16px;
}
#product_detail .detail_figure p a.printing .img_blue {
  display: none;
}
#product_detail .detail_figure p a.printing:hover {
  background: #fff;
  border: 2px solid #004ca4;
  color: #004ca4;
}
#product_detail .detail_figure p a.printing:hover .img_blue {
  display: block;
}
#product_detail .detail_figure p a.printing:hover .img_white {
  display: none;
}
#product_detail .detail_figure p a:hover {
  border-color: #333;
}
#product_detail .detail_info {
  margin-left: calc(50% + 15px);
}
#product_detail .detail_info table {
  width: 100%;
  border: 1px solid #004b9e;
}
#product_detail .detail_info table tr th {
  border: 1px solid #004b9e;
  padding: 10px;
  color: #004b9e;
  white-space: nowrap;
}
#product_detail .detail_info table tr td {
  border: 1px solid #004b9e;
  padding: 10px;
  word-break: break-all;
}
#product_detail .detail_info dl {
  margin-top: 15px;
}
#product_detail .detail_info dl dt {
  font-size: 1.2rem;
  line-height: 1;
}
#product_detail .detail_info dl dd {
  margin-top: 10px;
}
#product_detail .detail_info dl dd ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
#product_detail .detail_info dl dd ul li {
  width: calc(50% - 8px);
  margin-top: 16px;
}
#product_detail .detail_info dl dd ul li:nth-child(-n + 2) {
  margin-top: 0;
}
#product_detail .detail_info dl dd ul li a {
  display: block;
  text-decoration: none;
  line-height: 36px;
  color: #fff;
  padding-left: 45px;
  background: #004b9e no-repeat 10px center;
  background-size: 27px auto;
  border: 2px solid #004b9e;
  border-radius: 10px;
}
#product_detail .detail_info dl dd ul li a:hover {
  color: #004b9e;
  background-color: #fff;
}
#product_detail .detail_info dl dd ul li.pp a {
  background-image: url("../images/product/icon_pp_white.svg");
}
#product_detail .detail_info dl dd ul li.pp a:hover {
  background-image: url("../images/product/icon_pp_blue.svg");
}
#product_detail .detail_info dl dd ul li.proof a {
  background-image: url("../images/product/icon_proof_white.svg");
}
#product_detail .detail_info dl dd ul li.proof a:hover {
  background-image: url("../images/product/icon_proof_blue.svg");
}
#product_detail .detail_info dl dd ul li.pack a {
  background-image: url("../images/product/icon_pack_white.svg");
}
#product_detail .detail_info dl dd ul li.pack a:hover {
  background-image: url("../images/product/icon_pack_blue.svg");
}
#product_detail .detail_info dl dd ul li.caution a {
  background: #f8dc40 url("../images/product/icon_caution_black.svg") no-repeat
    12px center;
  font-size: 1.2rem;
  font-weight: normal;
  color: #333;
  padding-left: 40px;
  border-color: #f8dc40;
}
#product_detail .detail_info dl dd ul li.caution a strong {
  font-size: 1.6rem;
  color: #bc3338;
}
#product_detail .detail_info dl dd ul li.caution a:hover {
  border-color: #333;
}
#product_detail .note_area {
  clear: both;
  border-top: 1px solid #eaeaea;
  padding-top: 20px;
  margin-top: 20px;
}

@media screen and (max-width: 812px) {
  #product_detail {
    margin-top: 40px;
  }
  #product_detail h2 {
    margin-bottom: 15px;
  }
  #color_proof h3 {
    margin-bottom: 15px;
  }
  #product_detail .detail_figure {
    float: none;
    width: auto;
  }
  #product_detail .detail_figure figure img {
    max-width: 280px;
  }
  #product_detail .detail_figure dl {
    width: calc(50% - 5px);
  }
  #product_detail .detail_figure p a {
    line-height: 40px;
    border-radius: 5px;
  }
  #product_detail .detail_info {
    margin-left: 0;
    margin-top: 20px;
  }
  #product_detail .detail_info table tr th {
    padding: 10px 5px;
  }
  #product_detail .detail_info table tr td {
    padding: 10px 5px;
  }
  #product_detail .detail_info dl dd ul li {
    width: calc(50% - 5px);
    margin-top: 10px;
  }
  #product_detail .detail_info dl dd ul li:nth-child(-n + 2) {
    margin-top: 5px;
  }
  #product_detail .detail_info dl dd ul li a {
    padding-left: 35px;
    background-position: 5px center;
    background-size: 20px auto;
    border-radius: 5px;
  }
  #product_detail .detail_info dl dd ul li.caution a {
    background-position: 5px;
    padding-left: 35px;
  }
  #product_detail .detail_info dl dd ul li.caution a strong {
    font-size: 1.2rem;
  }
}
/*------------------------------------------------------------
価格表
------------------------------------------------------------*/
#product_price_table {
  margin-top: 50px;
}
#product_price_table h2 {
  margin-bottom: 20px;
}
#product_price_table .price_table_txt {
  font-size: 1.6rem;
}
#product_price_table .price_table_txt strong {
  color: #bc3338;
}
#product_price_table .price_table_caution li {
  font-size: 1.2rem;
  margin-top: 5px;
}
#product_price_table .price_table_caution li a {
  color: #004b9e;
}
#product_price_table .price_table_caution li a:hover {
  text-decoration: none;
}
#product_price_table .price_table_area {
  margin-top: 20px;
  text-align: center;
}
#product_price_table .price_table_area .nav-tabs:after {
  display: block;
  content: "";
  height: 0;
  clear: both;
}
#product_price_table .price_table_area .nav-tabs > li {
  float: left;
  margin-bottom: -1px;
  position: relative;
}
#product_price_table .price_table_area .nav-tabs > li a {
  display: block;
  text-decoration: none;
  margin-right: 2px;
  border-radius: 4px 4px 0 0;
}
#product_price_table .price_table_area table.price_list {
  border-top: none;
  border-collapse: inherit;
}
#product_price_table .price_table_area table.price_list thead {
  position: sticky;
  top: 124px !important;
  z-index: 49;
}
#product_price_table
  .price_table_area
  table.price_list
  thead
  tr:nth-of-type(2)
  td {
  /*  top: 207px ​!important;*/
  background: #fff;
}
#product_price_table .price_table_area table.price_list thead td.blue {
  border-top: 3px solid #00609c;
}
#product_price_table .price_table_area table.price_list td.left {
  border-right: none;
}
#product_price_table .price_table_area table.price_list td.acoh {
  border-left: none;
}
@media screen and (max-width: 812px) {
  #product_price_table .price_table_area table.price_list thead td {
    top: -3px !important;
  }
  #product_price_table
    .price_table_area
    table.price_list
    thead
    tr:nth-of-type(2)
    td {
    top: 27px ​ !important;
  }
}
#product_price_table .request_form {
  margin-top: 30px;
  background: #f6ab00;
  text-align: center;
  padding: 8px 0;
  border-radius: 10px;
}
#product_price_table .request_form a {
  color: #004b9e;
  font-weight: bold;
}
#product_price_table .request_form a:hover {
  text-decoration: none;
}

@media screen and (max-width: 812px) {
  #product_price_table {
    margin-top: 40px;
  }
  #product_price_table h2 {
    margin-bottom: 15px;
  }
  #product_price_table .price_table_txt {
    font-size: 1.4rem;
  }
  #product_price_table .price_table_area {
    white-space: nowrap;
    overflow-x: scroll;
  }
  #product_price_table .price_table_area table.price_list thead {
    position: static;
  }
  #product_price_table .request_form {
    margin-top: 20px;
    padding: 8px;
    border-radius: 5px;
    text-align: left;
  }
}
/*------------------------------------------------------------
色校正価格
------------------------------------------------------------*/
#color_proof {
  margin-top: 50px;
}
#color_proof h2 {
  margin-bottom: 20px;
}
#color_proof h3 {
  font-size: 1.6rem;
  line-height: 1;
  color: #004b9e;
  border-bottom: 1px solid #004b9e;
  padding-bottom: 10px;
  margin-bottom: 30px;
}
#color_proof .color_proof_table table {
  border: 1px solid #004b9e;
  width: 100%;
  text-align: center;
}
#color_proof .color_proof_table table thead th {
  border: 1px solid #004b9e;
  padding: 10px;
  color: #004b9e;
  vertical-align: middle;
}
#color_proof .color_proof_table table thead th:first-child {
  text-align: left;
}
#color_proof .color_proof_table table tbody td {
  border: 1px solid #004b9e;
  padding: 8px;
  vertical-align: middle;
}
#color_proof .color_proof_table table tbody td:first-child {
  text-align: left;
}

#color_proof .color_proof_table span {
  font-size: 8px;
}

@media screen and (max-width: 812px) {
  #color_proof {
    margin-top: 40px;
  }
  #color_proof h2 {
    margin-bottom: 15px;
  }
  #color_proof .color_proof_table {
    overflow: scroll;
  }
  #color_proof .color_proof_table table thead th {
    white-space: nowrap;
  }
  #color_proof .color_proof_table table tbody td {
    white-space: nowrap;
  }
  #color_proof .color_proof_table span {
    font-size: 8px;
  }
}

/*------------------------------------------------------------
お客様の声
------------------------------------------------------------*/

#customer_voice {
  margin-top: 50px;
  margin-bottom: 30px;
}

#customer_voice h4 {
  font-size: 16px;
  color: #004b9e;
  letter-spacing: 0.05em;
  margin-bottom: 15px;
}

#customer_voice a {
  text-decoration: none;
}

#customer_voice .product_name {
  text-align: right;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 0.05em;
  margin-top: 15px;
}

#customer_voice .product_name a {
  color: #004b9e;
  margin-right: 34px;
}

@media screen and (max-width: 812px) {
  #customer_voice {
    margin-top: 40px;
  }
}
/*------------------------------------------------------------
先方追加分
------------------------------------------------------------*/
.subtitle {
  font-size: 1.8rem;
  font-weight: bold;
  color: #004b9e;
  clear: both;
  text-decoration: none;
}

/*外枠実線*/
.br-solid {
  border: 1px solid #004b9e;
  padding: 10px;
}

/*商品カテゴリー　ストーン　下敷き */
#item_category li {
  border: none !important;
  padding: 10px !important;
  margin: 0 3px !important;
  vertical-align: top !important;
  display: inline-block;
}

/*ストーンペーパーカテゴリー　背景グリーン*/
.bg_green {
  background-color: #009966;
  color: white;
  border-radius: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  margin: 0 3px !important;
  width: 30% !important;
}

/*ストーンペーパーカテゴリー　背景ブルー*/
.bg_darkblue {
  background-color: #000066;
  color: white;
  border-radius: 10px;
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  margin: 0 3px !important;
  width: 30% !important;
}

/*------------------------------------------------------------
2カラム
------------------------------------------------------------*/
@media screen and (min-width: 766px) {
  .flexbox {
    width: 765px;
    margin: 0 auto;
    display: -webkit-flex;
    display: flex;
  }

  .column-l,
  .column-r {
    -webkit-flex: 1;
    flex: 1;
    background: none;
    padding: 5px;
  }

  .column-l img,
  .column-r img {
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 765px) {
  .column-l,
  .column-r {
    padding: 2%;
  }

  .column-l p,
  .column-r p {
    text-align: left;
  }

  .column-l img,
  .column-r img {
    max-width: 100%;
    height: auto;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}
/*width380pxの画像*/
.half_img {
  max-width: 380px !important;
  margin: auto;
}

/*width765pxの画像*/
.max_img {
  max-width: 765px !important;
  margin: auto;
}

/*width250pxの画像*/
.one_third_img {
  width: 100%;
  max-width: 250px !important;
  margin: auto;
}

/*下敷き印刷　箔押し印刷　の太字文字*/
.mini_title {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.6 !important;
  text-decoration: none;
}

/*商品詳細ページ青背景テーブル用*/
.post_area .fixpage_k_talbe {
  width: 100%;
  border: 1px solid #004b9e;
  border-collapse: collapse;
  border-spacing: 0;
}

.post_area .fixpage_k_talbe th {
  padding: 15px 30px;
  background: #004b9e;
  color: #ffffff;
  text-align: center;
}

.post_area .fixpage_k_talbe td {
  text-align: center;
}

.post_area .bg_k-blue {
  color: #ffffff;
  background: #004b9e;
}

/*------------------------------------------------------------
商品リスト内 FAQテンプレート
------------------------------------------------------------*/
#faq_list2021 {
  padding-top: 50px;
}
#faq_list2021 .inner > ul {
  margin-top: 40px;
}
#faq_list2021 .inner > ul > li {
  padding-bottom: 10px;
  margin-bottom: 10px;
  border-bottom: 1px solid #eaeaea;
}
#faq_list2021 .inner > ul > li a {
  display: block;
  text-decoration: none;
  overflow: hidden;
}
#faq_list2021 .inner > ul > li a:hover dd {
  text-decoration: underline;
}
#faq_list2021 .inner > ul > li a p {
  float: left;
  text-align: center;
  line-height: 36px;
  width: 130px;
  border: 1px solid #727171;
  border-radius: 18px;
}
#faq_list2021 .inner > ul > li a dl {
  margin-left: 150px;
  overflow: hidden;
  margin-top: 5px;
}
#faq_list2021 .inner > ul > li a dl dt {
  padding-top: 3px;
  float: left;
  width: 120px;
  color: #004b9e;
}
#faq_list2021 .inner > ul > li a dl dd {
  margin-left: 120px;
  font-size: 1.6rem;
}

@media screen and (max-width: 812px) {
  #faq_list2021,
  #blog_list2020 {
    padding-top: 25px;
  }
  #faq_list2021 .inner > ul {
    margin-top: 20px;
  }
  #faq_list2021 .inner > ul > li {
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  #faq_list2021 .inner > ul > li a {
    position: relative;
  }
  #faq_list2021 .inner > ul > li a p {
    float: none;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 1.4rem;
  }
  #faq_list2021 .inner > ul > li a dl {
    margin-left: 0;
    margin-top: 0;
  }
  #faq_list2021 .inner > ul > li a dl dt {
    padding-top: 0;
    float: none;
    width: auto;
    font-size: 1.4rem;
    line-height: 38px;
    margin-left: 150px;
  }
  #faq_list2021 .inner > ul > li a dl dd {
    margin-left: 0;
    margin-top: 15px;
  }
}

@media screen and (min-width: 766px) {
  .hakuoshipic {
    max-width: 686px !important;
  }
}

.ticketholder {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-end;
}

.ticketholder > p {
  width: 179px;
  position: relative;
  margin-right: 15px;
  margin-top: 0 !important;
}

.ticketholder > p img {
  width: 100%;
  height: auto;
  display: block;
}

.ticketholder > p:last-child {
  margin-right: 0;
}
@media screen and (max-width: 812px) {
  .ticketholder > p {
    width: calc(50% - 7.5px);
    margin-right: 15px;
    margin-top: 10px !important;
  }
  .ticketholder > p:nth-child(2n) {
    margin-right: 0;
  }
}
/*# sourceMappingURL=product2020.css.map */

/*------------------------------------------------------------
ご利用ガイドトップ　オーダーフロー　top2020.cssより
------------------------------------------------------------*/
#order_flow {
  background: #eaeaea;
  padding: 20px; /*縮小*/
}
#order_flow .flow {
  margin-top: 10px; /*縮小*/
  display: flex;
  justify-content: space-between;
  counter-reset: num;
}
#order_flow .flow div {
  background: #fff;
  text-align: center;
  padding: 10px; /*縮小*/
  border-radius: 10px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  position: relative;
}
#order_flow .flow div:after {
  display: block;
  content: "";
  background: url("../images/top/arrow_flow_outer.svg") no-repeat center 80px; /*くの字矢印*/
  width: 44px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -37px; /*縮小*/
}
#order_flow .flow div dl {
  width: 50%;
  position: relative;
  padding-right: 3px; /*追加*/
  padding-left: 3px; /*追加*/
  counter-increment: num;
}
#order_flow .flow div dl:before {
  display: block;
  content: counter(num);
  font-size: 2.4rem;
  line-height: 1;
  font-weight: bold;
  color: #004b9e;
  margin-bottom: 10px;
}
#order_flow .flow div dl:after {
  display: block;
  content: "";
  background: url("../images/top/arrow_flow_inner.svg") no-repeat center 48px; /*矢印*/
  width: 30px;
  height: 100%;
  position: absolute;
  top: 0;
  right: -15px;
}
#order_flow .flow div dl dt img {
  /*追加*/
  height: 30px; /*アイコンのサイズ*/
}
#order_flow .flow div dl dd {
  margin-top: 25px;
  font-size: 1.5rem; /*縮小*/
  line-height: 1.1; /*縮小*/
  font-weight: bold;
  color: #004b9e;
}
#order_flow .flow div dl dd em {
  font-style: inherit;
  font-size: 1.3rem;
}
#order_flow .flow div dl dd em span {
  font-size: 1.1rem;
}
#order_flow .flow div dl dd small {
  display: inline-block;
  font-size: 1.1rem;
  margin-top: 10px;
}
#order_flow .flow div dl dd small strong {
  color: #bc3338;
}
#order_flow .flow div dl dd a:hover {
  text-decoration: none;
}
#order_flow .flow div dl:nth-last-of-type(1):after {
  display: none;
}
#order_flow .flow div p {
  margin-top: 10px;
  width: 100%;
}
#order_flow .flow div:nth-of-type(1) {
  width: 200px; /*縮小*/
}
#order_flow .flow div:nth-of-type(2) {
  width: 263px; /*縮小*/
}
#order_flow .flow div:nth-of-type(2) dl {
  width: 33.333333%;
}
#order_flow .flow div:nth-of-type(2) dl:nth-of-type(2) dd small {
  /*AM8:00まで入稿で*/
  position: relative;
  left: -50px; /*-70pxから-50pxへ修正*/
}
#order_flow .flow div:nth-of-type(2) p {
  font-size: 1.2rem;
}
#order_flow .flow div:nth-of-type(3) {
  width: 200px; /*縮小*/
}
#order_flow .flow div:nth-of-type(3):after {
  display: none;
}
#order_flow .flow div:nth-of-type(3) p {
  padding: 0 20px;
}
#order_flow .flow div:nth-of-type(3) p a {
  display: block;
  text-decoration: none;
  font-size: 1.5rem; /*縮小*/
  color: #004b9e;
  line-height: 35px; /*縮小*/
  font-weight: bold;
  background: #eaeaea;
  border-bottom: 5px solid #9f9f9f;
  border-radius: 10px;
}
#order_flow .flow div:nth-of-type(3) p a:hover {
  border-bottom: none;
  margin-top: 5px;
}

@media screen and (max-width: 812px) {
  #order_flow .fixpage_inner {
    /*追加*/
    width: 95%;
    margin: 0 auto;
  }
  #order_flow {
    padding: 25px 0;
  }
  #order_flow .flow {
    display: block;
  }
  #order_flow .flow div {
    width: 80%; /*追加*/
    padding: 25px;
    display: block;
    margin-bottom: 80px;
  }
  #order_flow .flow div:after {
    top: auto;
    right: 50%;
    bottom: -60px;
    width: 20px;
    height: 40px;
    margin-right: -10px;
    background-position: center center;
    transform: rotate(90deg);
  }
  #order_flow .flow div dl {
    width: 100%;
    display: flex;
    align-items: center;
  }
  #order_flow .flow div dl:before {
    margin-bottom: 0;
    width: 30px;
  }
  #order_flow .flow div dl:after {
    top: auto;
    right: 50%;
    bottom: -50px;
    width: 40px;
    height: 40px;
    margin-right: -20px;
    background-position: center center;
    transform: rotate(90deg);
  }
  #order_flow .flow div dl + dl {
    margin-top: 60px;
  }
  #order_flow .flow div dl dt {
    width: 80px;
  }
  #order_flow .flow div dl dt img {
    /*追加*/
    height: 58px; /*アイコンのサイズ*/
  }
  #order_flow .flow div dl dd {
    font-size: 2rem; /*追加*/
    margin-top: 0;
    flex-grow: 1;
  }
  #order_flow .flow div p {
    font-size: 1.4rem;
  }
  #order_flow .flow div:nth-of-type(1) {
    width: auto;
  }
  #order_flow .flow div:nth-of-type(2) {
    width: auto;
  }
  #order_flow .flow div:nth-of-type(2) dl {
    width: 100%;
  }
  #order_flow .flow div:nth-of-type(2) dl:nth-of-type(2),
  #order_flow .flow div:nth-of-type(2) dl:nth-of-type(3) {
    padding-bottom: 40px;
  }
  #order_flow .flow div:nth-of-type(2) dl:nth-of-type(2) dd small {
    left: 0;
    position: absolute;
    width: 100%;
  }
  #order_flow .flow div:nth-of-type(2) dl:nth-of-type(3) dd small {
    left: 0;
    position: absolute;
    width: 100%;
    margin-top: 10px; /*25pxから10pxへ修正*/
  }
  #order_flow .flow div:nth-of-type(3) {
    width: auto;
    margin-bottom: 0;
  }
}

.box-order .linetitle {
  font-size: 1.6rem;
  padding: 10px;
  margin: 30px 0 20px;
  border-radius: 5px;
  color: #004b9e;
  background: #eaeaea;
}

@media (min-width: 600px) {
  .box-order .linetitle {
    font-size: 2.1rem;

    padding: 20px;
    margin: 60px 0 40px;
    border-radius: 10px;
  }
}

.howtosubmit {
  margin-top: 50px;
}
.howtosubmit .bnt {
  display: flex;
}
.howtosubmit .bnt a {
  width: 227px;
  height: 38px;
  border-radius: 20px;
  color: #fff;
  text-decoration: none;
  display: flex;
  font-size: 1.2rem;
  margin: 20px 28px 0 0;
  background: #004b9e;
  align-items: center;
  justify-content: center;
  border: 2px solid #004b9e;
  transition: 0.3s;
  line-height: 34px;
}
.howtosubmit .bnt a:hover {
  background: #fff;
  color: #004b9e;
}

@media screen and (max-width: 812px) {
  .howtosubmit {
    margin-top: 40px;
  }
  .howtosubmit .bnt {
    display: block;
    text-align: center;
    margin-top: 30px;
  }
  .howtosubmit .bnt a {
    margin: 15px auto 0;
  }
}

.othersizes {
  background: #004b9e;
  border-radius: 10px;
  padding: 11px 11px 11px 30px;
  display: flex;
  align-items: center;
  margin: 72px 0 0;
}
.othersizes h3,
.othersizes h2 {
  color: #fff;
  font-size: 1.6rem;
  letter-spacing: 0;
  font-weight: bold;
  width: 170px;
}
.othersizes .ct {
  background: #fff;
  border-radius: 10px;
  width: calc(100% - 170px);
  padding: 17px 27px 16px;
}
.othersizes .ct p,
.othersizes .ct a {
  color: #004b9e;
  display: inline-block;
  vertical-align: top;
  margin-right: 17px;
  font-size: 1.6rem;
  font-weight: bold;
  letter-spacing: 0;
  text-decoration: underline;
}

@media screen and (max-width: 812px) {
  .othersizes {
    padding: 12px 16px 19px;
    display: block;
    margin: 40px 0 0;
  }
  .othersizes h3 {
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
  }
  .othersizes .ct {
    width: 100%;
    padding: 20px 30px;
  }
}

@media screen and (max-width: 320px) {
  #product_detail .detail_figure p a {
    padding-right: 0;
  }
}

.list_btn_pr {
  display: flex;
  margin-top: 30px;
}

.list_btn_pr a {
  border-radius: 28px;
  color: #fff;
  text-decoration: none;
  font-size: 1.2rem;
  background: #004b9e;
  border: 2px solid #004b9e;
  transition: 0.3s;
  padding: 9px 30px;
  margin-right: 20px;
}
.list_btn_pr a:last-child {
  margin-right: 0;
}
.list_btn_pr a:hover {
  background: #fff;
  color: #004b9e;
}
#customer_tax_feature {
  margin-top: 50px;
}
@media screen and (max-width: 812px) {
  .list_btn_pr {
    display: block;
  }
  .list_btn_pr a {
    width: 100%;
    max-width: 300px;
    margin: 0 auto 10px;
    display: block;
    text-align: center;
  }
  .list_btn_pr a:last-child {
    margin-right: auto;
  }
  #customer_tax_feature {
    margin-top: 40px;
  }
  #customer_tax_feature img {
    width: 100%;
    height: auto;
    display: block;
  }
}

.product-calender .name_product {
  font-size: 1.8rem;
}
.product-calender .name_product .txt_note {
  font-size: 1.2rem;
}
.product-calender .name_product span {
  font-weight: bold;
}

.txt_noteday {
  display: flex;
  margin: 27px 0 33px;
}

.txt_noteday p {
  display: flex;
  margin-right: 30px;
}
.txt_noteday p.today span {
  background: #f6ab00;
}
.txt_noteday p.shippingDate span {
  background: #004b9e;
}
.txt_noteday p.holiday span {
  background: #d38487;
}
.txt_noteday span {
  width: 19px;
  height: 19px;
  display: block;
  margin-right: 11px;
}

.product-calender .linetitle {
  font-size: 2.1rem;
  padding: 20px;
  margin: 60px 0 40px;
  border-radius: 10px;
  color: #004b9e;
  background: #eaeaea;
}
#calendar_shipping {
  display: flex;
  justify-content: space-between;
}
#calendar_shipping table {
  width: 100%;
}
#calendar_shipping > div {
  width: calc(50% - 40px);
}
#calendar_shipping > div:nth-child(2) table td.activeDate,
#calendar_shipping table td.shippingDate {
  background: #004b9e;
  color: #fff;
}

#calendar_shipping .cal-title {
  background: #004b9e;
  text-align: center;
  color: #fff;
  font-size: 1.6rem;
  padding: 8px;
}

#calendar_shipping table th {
  background: #ebebeb;
  color: #004b9e;
  font-weight: bold;
  text-align: center;
  width: calc(100% / 7);
  height: 40px;
  vertical-align: middle;
  border: 1px solid #fff;
}

#calendar_shipping table td {
  text-align: center;
  width: calc(100% / 7);
  height: 40px;
  vertical-align: middle;
  background: #f2f2f2;
  border: 1px solid #fff;
}
#calendar_shipping table td.holidayDate {
  background: #d38487;
  color: #fff;
}

#calendar_shipping table td.activeDate {
  background: #f6ab00;
}

@media screen and (max-width: 812px) {
  .txt_noteday p {
    margin-right: 15px;
  }
  .product-calender .linetitle {
    font-size: 1.6rem;
    padding: 10px;
    margin: 30px 0 20px;
    border-radius: 5px;
    color: #004b9e;
    background: #eaeaea;
  }
  #calendar_shipping {
    display: block;
  }
  #calendar_shipping > div {
    width: 100%;
    margin-bottom: 25px;
  }
}

.list_printfile {
  display: flex;
  width: auto;
  align-items: center;
  margin: 30px 0 40px;
}

.list_printfile .txt {
  border: 3px solid #004b9e;
  background: #004b9e;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 700;
  padding: 10px 18px;
  height: 50px;
}
.list_printfile .bg_white {
  background: #fff;
  border: 3px solid #004b9e;
  padding: 9px 19px;
  font-size: 1.2rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  height: 50px;
}
.list_printfile .bg_white span {
  font-size: 1.6rem;
  color: #ff0000;
  margin-left: 5px;
}

@media screen and (max-width: 812px) {
  .list_printfile {
    display: block;
  }
}
.submission_template {
  margin-bottom: 50px;
}
.btn_pocketlist {
  width: 330px;
  height: 60px;
  color: #fff;
  font-weight: bold;
  font-size: 1.6rem;
  letter-spacing: 0.05em;
  display: flex;
  text-align: center;
  border-radius: 30px;
  text-decoration: none;
  align-items: center;
  justify-content: center;
  border: 2px solid #004b9e;
  transition: 0.3s;
  margin: 45px auto;
  background: #004b9e url(../images/common/arrow_next_white.svg) no-repeat right
    47px center;
  background-size: 10px 17px;
  padding-right: 23px;
}
.btn_pocketlist:hover {
  background: #fff url(../images/common/arrow_next_blue.svg) no-repeat right
    47px center;
  background-size: 10px 17px;
  color: #004b9e;
}

.banner_pocketlist {
  display: block;
  text-align: center;
  margin-top: 32px;
}
.banner_pocketlist img {
  width: auto;
  max-width: 100%;
  display: block;
  margin: auto;
}
@media screen and (max-width: 812px) {
  .btn_pocketlist {
    width: 289px;
    margin: 20px auto;
  }
}
.other_siaa {
  margin-top: 50px;
}
.other_siaa img.alignright {
  float: right;
  margin: 5px 0 5px 60px;
}
.other_siaa span {
  display: block;
}

@media screen and (max-width: 812px) {
  .other_siaa img.alignright {
    float: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}

.btn_addtheme {
  width: 530px;
  height: 66px;
  border-radius: 20px;
  background: #004b9e url(../images/common/arrow_next_white.svg) no-repeat right
    25px center;
  background-size: 8px 13px;
  font-size: 16px;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  letter-spacing: 0.8px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 5px;
  border: 2px solid #004b9e;
  margin: 60px auto 0;
}
.btn_addtheme br {
  display: none;
}
.btn_addtheme:hover {
  background: #fff url(../images/common/arrow_next_blue.svg) no-repeat right
    25px center;
  background-size: 8px 13px;
  color: #004b9e;
}
@media screen and (max-width: 812px) {
  .btn_addtheme br {
    display: block;
  }
  .btn_addtheme {
    width: 100%;
    max-width: 300px;
    font-size: 14px;
    text-align: center;
    margin: 40px auto 0;
    background: #004b9e url(../images/common/arrow_next_white.svg) no-repeat
      right 10px center;
    background-size: 8px 13px;
  }
}

.btn-ondemand {
  width: 100%;
  height: 68px;
  border: 1px solid #004b9e;
  background: #004b9e;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff;
  font-weight: 700;
  font-size: 1.6rem;
  transition: 0.3s all;
  margin-top: 40px;
  text-decoration: none;
}
.btn-ondemand:hover {
  color: #004b9e;
  background: #fff;
}
@media screen and (max-width: 812px) {
  .btn-ondemand {
    height: 48px;
    font-size: 1.3rem;
    margin-top: 20px;
  }
}

.link-inter1 {
  cursor: pointer;
}

.inter-modal1 {
  display: none;
}

.lightBox1 {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: auto;
  width: 100%;
  height: 100%;
  text-align: center;
}

.lightBox__container1 {
  position: relative;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background: rgba(0, 0, 0, 0.6);
}

.lightBox__overlay1 {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
}

.lightBox__inner1 {
  position: relative;
  z-index: 99999;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%;
  margin: auto;
}
.in-lightbox1 .contents1 {
  background: #fff;
}
.in-lightbox1 .lightBox__close1 {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-size: 16px;
  color: #fff;
  gap: 15px;
  margin-bottom: 15px;
  cursor: pointer;
}

#product_about dl dt .thumb-img {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  margin-top: 15px;
  align-items: center;
}
#product_about dl dt .thumb-img .img {
  width: 50px;
  height: 50px;
  position: relative;
  overflow: hidden;
}
#product_about dl dt .thumb-img .img img,
#product_about dl dt .link-inter1 img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  font-family: "object-fit: cover; object-position: center center;";
}

#product_about dl dt .link-inter1 {
  width: 200px;
  height: 200px;
  overflow: hidden;
  position: relative;
}

.cus-testimonials {
  margin-top: 50px;
}
.cus-testimonials-ct {
  padding: 0 40px;
  margin: 20px 0 0;
}
.cus-testimonials-ct .flx-ct {
  display: flex;
  gap: 55px;
}

.cus-testimonials-ct .flx-ct .img img {
  width: 123px;
  display: block;
}
.cus-testimonials-ct .flx-ct .tit {
  font-size: 1.6rem;
  color: #004b9e;
  font-weight: bold;
  margin-bottom: 15px;
}
.cus-testimonials-ct .flx-ct p {
  font-size: 1.4rem;
  line-height: 24px;
  color: #333333;
}
.cus-testimonials-ct .rgth-ct {
  display: flex;
  justify-content: flex-end;
  gap: 40px;
  margin-top: 10px;
  font-weight: bold;
  font-size: 1.4rem;
}
.cus-testimonials-ct .rgth-ct a {
  color: #004b9e;
}
@media screen and (max-width: 812px) {
  .cus-testimonials {
    margin-top: 40px;
  }
  .cus-testimonials-ct {
    padding: 0;
  }
  .cus-testimonials-ct .flx-ct {
    gap: 10px;
  }
  .cus-testimonials-ct .flx-ct .img img {
    width: 100px;
  }
  .cus-testimonials-ct .rgth-ct {
    display: block;
  }
  #product_about dl dt .thumb-img {
    justify-content: center;
  }
}

.product_overview_box {
  display: flex;
  align-items: flex-start;
  gap: 26px;
}
.product_overview_box .products_img_slide,
.product_overview_box .products_img_slide .slick-slide {
  width: 200px;
  position: relative;
  overflow: hidden;
}
.product_overview_box .products_img_slide .slick-slide .link-inter1 {
  height: 200px;
  width: 200px;
  position: relative;
  overflow: hidden;
}
.product_overview_box .products_img_slide .slick-slide .link-inter1 img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  font-family: "object-fit: cover; object-position: center center;";
}
.product_overview_box .post_area h3 {
  margin-top: 0;
  font-size: 1.8rem !important;
  margin-bottom: 25px !important;
}
.product_overview_box .products_img_left {
  width: 200px;
}
.product_overview_box
  .products_img_left
  .products_img_slide_thumbnails
  .slick-track {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 7.5px;
}
.product_overview_box .products_img_slide_thumbnails {
  margin-top: 15px;
}
.product_overview_box .products_img_slide_thumbnails .slick-slide {
  width: 50px !important;
  height: 50px;
  position: relative;
  overflow: hidden;
}
.product_overview_box .products_img_slide_thumbnails .slick-slide img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center center;
  object-position: center center;
  font-family: "object-fit: cover; object-position: center center;";
}

@media screen and (max-width: 812px) {
  .product_overview_box .products_img_left {
    width: 100%;
  }
  .product_overview_box {
    display: block;
  }
  .product_overview_box .products_img_slide,
  .product_overview_box .products_img_slide .slick-slide {
    margin: auto;
  }
  .product_overview_box .post_area {
    width: 100%;
    padding-left: 0;
    margin-top: 50px;
  }
  .product_overview_box .post_area h3 {
    margin-top: 0;
    font-size: 1.6rem !important;
  }
}
