@charset "utf-8";

/* --------------------
 base settings
-------------------- */

/* 1200px幅用 */
@media screen and (min-width: 769px), print {
  body #areaWrapper1 {
    width: 1200px !important;
  }
}
/*
#hinagata {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    color:#000;
    line-height:1.4;
    -webkit-text-size-adjust: 100%;
}

#hinagata * {
    margin: 0;
    padding: 0;
    box-sizing: inherit;
}
*/

/* Bugfix for Android font-size
#hinagata * {max-height: 999999px;}
*/

img {
  /*height: auto;*/
  max-width: 100%;
  vertical-align: top;
  backface-visibility: hidden;
}

/* --------------------
 Class
-------------------- */

.indent {
  text-indent: 1rem;
}

.center {
  text-align: center;
}
.left {
  text-align: left;
}
.right {
  text-align: right;
}
.nw {
  display: inline-block;
}
.keepall {
  word-break: keep-all;
}

.mincho {
  font-family: Garamond, "Times New Roman", "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}
.gothic {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "游ゴシック体", "Original Yu Gothic", "游ゴシック", "Yu Gothic", YuGothic, Verdana, "Meiryo UI", "メイリオ", Meiryo, sans-serif;
}
.clearfix::after {
  content: "";
  clear: both;
  display: table;
}

.mt0 {
  margin-top: 0px !important;
}
.mt10 {
  margin-top: 10px !important;
}
.mt20 {
  margin-top: 20px !important;
}
.mt30 {
  margin-top: 30px !important;
}
.mt40 {
  margin-top: 40px !important;
}
.mt45 {
  margin-top: 45px !important;
}
.mt50 {
  margin-top: 50px !important;
}
.mt55 {
  margin-top: 55px !important;
}
.mt60 {
  margin-top: 60px !important;
}
.mt65 {
  margin-top: 65px !important;
}
.mt70 {
  margin-top: 70px !important;
}
.mt75 {
  margin-top: 75px !important;
}
.mt80 {
  margin-top: 80px !important;
}
.mt120 {
  margin-top: 120px !important;
}

.mb0 {
  margin-bottom: 0px !important;
}
.mb10 {
  margin-bottom: 10px !important;
}
.mb20 {
  margin-bottom: 20px !important;
}
.mb30 {
  margin-bottom: 30px !important;
}
.mb40 {
  margin-bottom: 40px !important;
}
.mb45 {
  margin-bottom: 45px !important;
}
.mb50 {
  margin-bottom: 50px !important;
}
.mb55 {
  margin-bottom: 55px !important;
}
.mb60 {
  margin-bottom: 60px !important;
}
.mb65 {
  margin-bottom: 65px !important;
}
.mb70 {
  margin-bottom: 70px !important;
}
.mb75 {
  margin-bottom: 75px !important;
}
.mb80 {
  margin-bottom: 80px !important;
}
.mb120 {
  margin-bottom: 120px !important;
}
.mb140 {
  margin-bottom: 140px !important;
}

.mr0 {
  margin-right: 0px !important;
}
.mr10 {
  margin-right: 10px !important;
}
.mr20 {
  margin-right: 20px !important;
}
.mr30 {
  margin-right: 30px !important;
}
.mr40 {
  margin-right: 40px !important;
}
.mr50 {
  margin-right: 50px !important;
}
.mr60 {
  margin-right: 60px !important;
}
.mr70 {
  margin-right: 70px !important;
}
.mr80 {
  margin-right: 80px !important;
}

.ml0 {
  margin-left: 0px !important;
}
.ml10 {
  margin-left: 10px !important;
}
.ml20 {
  margin-left: 20px !important;
}
.ml30 {
  margin-left: 30px !important;
}
.ml40 {
  margin-left: 40px !important;
}
.ml50 {
  margin-left: 50px !important;
}
.ml60 {
  margin-left: 60px !important;
}
.ml70 {
  margin-left: 70px !important;
}
.ml80 {
  margin-left: 80px !important;
}

@media screen and (max-width: 768px) {
  .mt0_sp {
    margin-top: 0px !important;
  }
  .mt10_sp {
    margin-top: 10px !important;
  }
  .mt20_sp {
    margin-top: 20px !important;
  }
  .mt30_sp {
    margin-top: 30px !important;
  }
  .mt40_sp {
    margin-top: 40px !important;
  }
  .mt50_sp {
    margin-top: 50px !important;
  }
  .mt60_sp {
    margin-top: 60px !important;
  }
  .mt70_sp {
    margin-top: 70px !important;
  }
  .mt80_sp {
    margin-top: 80px !important;
  }
  .mb0_sp {
    margin-bottom: 0px !important;
  }
  .mb10_sp {
    margin-bottom: 10px !important;
  }
  .mb20_sp {
    margin-bottom: 20px !important;
  }
  .mb30_sp {
    margin-bottom: 30px !important;
  }
  .mb40_sp {
    margin-bottom: 40px !important;
  }
  .mb50_sp {
    margin-bottom: 50px !important;
  }
  .mb60_sp {
    margin-bottom: 60px !important;
  }
  .mb70_sp {
    margin-bottom: 70px !important;
  }
  .mb80_sp {
    margin-bottom: 80px !important;
  }
  .mr0_sp {
    margin-right: 0px !important;
  }
  .mr10_sp {
    margin-right: 10px !important;
  }
  .mr20_sp {
    margin-right: 20px !important;
  }
  .mr30_sp {
    margin-right: 30px !important;
  }
  .mr40_sp {
    margin-right: 40px !important;
  }
  .mr50_sp {
    margin-right: 50px !important;
  }
  .mr60_sp {
    margin-right: 60px !important;
  }
  .mr70_sp {
    margin-right: 70px !important;
  }
  .mr80_sp {
    margin-right: 80px !important;
  }
  .ml0_sp {
    margin-left: 0px !important;
  }
  .ml10_sp {
    margin-left: 10px !important;
  }
  .ml20_sp {
    margin-left: 20px !important;
  }
  .ml30_sp {
    margin-left: 30px !important;
  }
  .ml40_sp {
    margin-left: 40px !important;
  }
  .ml50_sp {
    margin-left: 50px !important;
  }
  .ml60_sp {
    margin-left: 60px !important;
  }
  .ml70_sp {
    margin-left: 70px !important;
  }
  .ml80_sp {
    margin-left: 80px !important;
  }
}

@media screen and (min-width: 769px), print {
  .mt0_pc {
    margin-top: 0px !important;
  }
  .mt10_pc {
    margin-top: 10px !important;
  }
  .mt20_pc {
    margin-top: 20px !important;
  }
  .mt30_pc {
    margin-top: 30px !important;
  }
  .mt40_pc {
    margin-top: 40px !important;
  }
  .mt50_pc {
    margin-top: 50px !important;
  }
  .mt60_pc {
    margin-top: 60px !important;
  }
  .mt70_pc {
    margin-top: 70px !important;
  }
  .mt80_pc {
    margin-top: 80px !important;
  }
  .mb0_pc {
    margin-bottom: 0px !important;
  }
  .mb10_pc {
    margin-bottom: 10px !important;
  }
  .mb20_pc {
    margin-bottom: 20px !important;
  }
  .mb30_pc {
    margin-bottom: 30px !important;
  }
  .mb40_pc {
    margin-bottom: 40px !important;
  }
  .mb50_pc {
    margin-bottom: 50px !important;
  }
  .mb60_pc {
    margin-bottom: 60px !important;
  }
  .mb70_pc {
    margin-bottom: 70px !important;
  }
  .mb80_pc {
    margin-bottom: 80px !important;
  }
  .mr0_pc {
    margin-right: 0px !important;
  }
  .mr10_pc {
    margin-right: 10px !important;
  }
  .mr20_pc {
    margin-right: 20px !important;
  }
  .mr30_pc {
    margin-right: 30px !important;
  }
  .mr40_pc {
    margin-right: 40px !important;
  }
  .mr50_pc {
    margin-right: 50px !important;
  }
  .mr60_pc {
    margin-right: 60px !important;
  }
  .mr70_pc {
    margin-right: 70px !important;
  }
  .mr80_pc {
    margin-right: 80px !important;
  }
  .ml0_pc {
    margin-left: 0px !important;
  }
  .ml10_pc {
    margin-left: 10px !important;
  }
  .ml20_pc {
    margin-left: 20px !important;
  }
  .ml30_pc {
    margin-left: 30px !important;
  }
  .ml40_pc {
    margin-left: 40px !important;
  }
  .ml50_pc {
    margin-left: 50px !important;
  }
  .ml60_pc {
    margin-left: 60px !important;
  }
  .ml70_pc {
    margin-left: 70px !important;
  }
  .ml80_pc {
    margin-left: 80px !important;
  }
}

/* --------------------
幅調整用 PC・SP共通
-------------------- */
.w20 {
  width: 20% !important;
}
.w30 {
  width: 30% !important;
}
.w35 {
  width: 35% !important;
}
.w40 {
  width: 40% !important;
}
.w45 {
  width: 45% !important;
}
.w50 {
  width: 50% !important;
}
.w55 {
  width: 55% !important;
}
.w60 {
  width: 60% !important;
}
.w65 {
  width: 65% !important;
}
.w70 {
  width: 70% !important;
}
.w75 {
  width: 75% !important;
}
.w80 {
  width: 80% !important;
}
.w85 {
  width: 85% !important;
}
.w90 {
  width: 90% !important;
}
.w95 {
  width: 95% !important;
}
.w100 {
  width: 100% !important;
}

/* --------------------
幅調整用 SP専用
-------------------- */
@media screen and (max-width: 768px) {
  .w20_sp {
    width: 20% !important;
  }
  .w25_sp {
    width: 25% !important;
  }
  .w30_sp {
    width: 30% !important;
  }
  .w35_sp {
    width: 35% !important;
  }
  .w40_sp {
    width: 40% !important;
  }
  .w45_sp {
    width: 45% !important;
  }
  .w50_sp {
    width: 50% !important;
  }
  .w55_sp {
    width: 55% !important;
  }
  .w60_sp {
    width: 60% !important;
  }
  .w65_sp {
    width: 65% !important;
  }
  .w70_sp {
    width: 70% !important;
  }
  .w75_sp {
    width: 75% !important;
  }
  .w80_sp {
    width: 80% !important;
  }
  .w85_sp {
    width: 85% !important;
  }
  .w90_sp {
    width: 90% !important;
  }
  .w95_sp {
    width: 95% !important;
  }
  .w100_sp {
    width: 100% !important;
  }
}

/* --------------------
幅調整用 PC専用
-------------------- */
@media screen and (min-width: 769px), print {
  .w20_pc {
    width: 20% !important;
  }
  .w25_pc {
    width: 25% !important;
  }
  .w30_pc {
    width: 30% !important;
  }
  .w35_pc {
    width: 35% !important;
  }
  .w40_pc {
    width: 40% !important;
  }
  .w45_pc {
    width: 45% !important;
  }
  .w50_pc {
    width: 50% !important;
  }
  .w55_pc {
    width: 55% !important;
  }
  .w60_pc {
    width: 60% !important;
  }
  .w65_pc {
    width: 65% !important;
  }
  .w70_pc {
    width: 70% !important;
  }
  .w75_pc {
    width: 75% !important;
  }
  .w80_pc {
    width: 80% !important;
  }
  .w85_pc {
    width: 85% !important;
  }
  .w90_pc {
    width: 90% !important;
  }
  .w95_pc {
    width: 95% !important;
  }
  .w100_pc {
    width: 100% !important;
  }
}

.mt1r {
  margin-top: 1rem !important;
}
.mt2r {
  margin-top: 2rem !important;
}
.mt3r {
  margin-top: 3rem !important;
}
.mb1r {
  margin-bottom: 1rem !important;
}
.mb2r {
  margin-bottom: 2rem !important;
}
.mb3r {
  margin-bottom: 3rem !important;
}
.mr1r {
  margin-right: 1rem !important;
}
.mr2r {
  margin-right: 2rem !important;
}
.mr3r {
  margin-right: 3rem !important;
}
.ml1r {
  margin-left: 1rem !important;
}
.ml2r {
  margin-left: 2rem !important;
}
.ml3r {
  margin-left: 3rem !important;
}

.pt1r {
  padding-top: 1rem !important;
}
.pt2r {
  padding-top: 2rem !important;
}
.pt3r {
  padding-top: 3rem !important;
}
.pb1r {
  padding-bottom: 1rem !important;
}
.pb2r {
  padding-bottom: 2rem !important;
}
.pb3r {
  padding-bottom: 3rem !important;
}
.pr1r {
  padding-right: 1rem !important;
}
.pr2r {
  padding-right: 2rem !important;
}
.pr3r {
  padding-right: 3rem !important;
}
.pl1r {
  padding-left: 1rem !important;
}
.pl2r {
  padding-left: 2rem !important;
}
.pl3r {
  padding-left: 3rem !important;
}

.m0auto {
  margin: 0 auto !important;
}

/* --------------------
 Content
-------------------- */
@media screen and (max-width: 768px) {
  #price2501 {
    width: auto;
    padding: 0 20px;
    margin-top: 20px;
  }
}
.article {
  margin: 0 5% 2rem;
}

@media screen and (min-width: 769px), print {
  .article {
    margin: 0 2.5rem;
  }
}

.section {
  margin: 0 0 2rem;
}
@media screen and (min-width: 769px), print {
  .section {
    margin: 0 0 5rem;
  }
}

#price2501 h1 {
  font-size: 1.4rem;
  text-align: center;
  margin: 2rem auto 2rem;
}
@media screen and (min-width: 769px), print {
  #price2501 h1 {
    font-size: 2.2rem;
    text-align: center;
  }
}
h2 {
  font-size: 1.2rem;
  line-height: 1.5;
  padding: 1em 0;
  text-align: center;
}

h3 {
  font-size: 1.125rem;
  line-height: 1.5;
  padding: 1em 0;
}

.h3_price2501 {
  font-size: 1.125rem;
  line-height: 1.5;
  padding: 1em 0 0;
}

h2.Bdr,
h3.Bdr {
  padding-bottom: 0.5em;
  border-bottom: 1px solid #d9d9d9;
}

.deco_radius-inside {
  background: #fff;
  background: radial-gradient(circle at top left, transparent 10px, #d60050 0) top left, radial-gradient(circle at top right, transparent 10px, #d60050 0) top right, radial-gradient(circle at bottom right, transparent 10px, #d60050 0) bottom right, radial-gradient(circle at bottom left, transparent 10px, #d60050 0) bottom left;
  background-size: 51% 51%;
  background-repeat: no-repeat;
  color: #fff;
  padding: 0.5rem 1rem;
  position: relative;
  overflow: hidden;
}

/* 均等な段組み */
.col2,
.col3,
.col2s,
.col3s,
.col4 {
  overflow: hidden;
  margin: 0 -20px !important;
  font-size: 0;
}
@media screen and (max-width: 768px) {
  .col2,
  .col3,
  .col4 {
    overflow: visible;
    margin: 0 !important;
  }
  .col2s,
  .col3s {
    margin: 0 -10px;
  }
}
.col2 li,
.col3 li,
.col2s li,
.col3s li,
.col4 li {
  display: inline-block;
  vertical-align: top;
  margin: 0 20px 40px 20px;
  padding: 0;
  border: none;
  position: relative;
  font-size: 1rem;
  line-height: 1.5;
}
.col2 li,
.col2s li {
  width: calc(50% - 40px);
}
.col3 li,
.col3s li {
  width: calc(100% / 3 - 40px);
}

.col4 li {
  width: calc(100% / 4 - 40px);
}

@media all and (-ms-high-contrast: none) {
  .col3 li,
  .col3s li {
    width: calc(100% / 3 - 41px);
  }

  .col4 li {
    width: calc(100% / 4 - 41px);
  }
}

@media screen and (max-width: 768px) {
  .col2s li,
  .col3s li {
    width: calc(50% - 20px);
  }
  .col2 li,
  .col3 li,
  .col4 li {
    display: block;
    margin: 30px 0;
    width: auto;
    font-size: 14px;
  }
  .col2s li,
  .col3s li {
    margin: 0 10px 20px 10px;
    font-size: 14px;
  }
}
@media screen and (min-width: 769px), print {
  .col2 li:nth-last-child(-n + 2),
  .col3 li:nth-last-child(-n + 3),
  .col4 li:nth-last-child(-n + 4),
  .col2s li:nth-last-child(-n + 2),
  .col3s li:nth-last-child(-n + 3) {
    margin-bottom: 0;
  }

  .col2 li:nth-child(-n + 2) *:first-child,
  .col3 li:nth-child(-n + 3) *:first-child,
  .col4 li:nth-child(-n + 4) *:first-child,
  .col2s li:nth-child(-n + 2) *:first-child,
  .col3s li:nth-child(-n + 3) *:first-child {
    margin-top: 0;
  }
  .col2 li *:last-child,
  .col3 li *:last-child,
  .col4 li *:last-child,
  .col2s li *:last-child,
  .col3s li *:last-child {
    margin-bottom: 0;
  }
}

@media screen and (max-width: 768px) {
  .col3s li:nth-last-child(-n + 2) {
    margin-bottom: 0;
  }
  .col3s li:nth-child(-n + 2) *:first-child {
    margin-top: 0;
  }
}

/* button */
.btn a {
  display: block;
  background-color: #333;
  font-size: 1.1rem;
  font-weight: bold;
  color: #fff;
  text-align: center;
  text-decoration: none;
  padding: 0.8em 1em;
  position: relative;
  border-radius: 0.2em;
  margin: 1.5rem 0;
}
@media screen and (min-width: 769px), print {
  .btn a {
    font-size: 1.25rem;
    border-radius: 0.3em;
    width: 70%;
    margin: 0 auto;
    padding: 1em 1em;
  }
}

.btn a:hover {
  background-color: #666;
}

.btn-right a:after {
  position: absolute;
  right: 1rem;
  top: 50%;
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  content: "";
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -5px;
}

.btn-left a:after {
  position: absolute;
  left: 1rem;
  top: 50%;
  display: block;
  width: 0.5rem;
  height: 0.5rem;
  content: "";
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
  margin-top: -5px;
}

.btn-nw a:after {
  position: absolute;
  right: 1rem;
  top: 50%;
  width: 1em;
  height: 0.8em;
  content: "";
  background: url(/library/contents/share/other_window.png) no-repeat;
  background-size: 100% 100%;
  margin-top: -0.5em;
}

/* 画像注釈 */
.imgNote {
  color: #666;
  font-size: 0.6rem;
  text-align: right;
  display: block;
  width: 100%;
}

/* ページ一番下 注釈 */
.note {
  color: #666;
  font-size: 0.8rem;
  line-height: 1.5;
  margin-left: 1em;
  text-indent: -1em;
  margin-bottom: 0.1rem;
}

/* --------------------
 Smart device
-------------------- */
@media screen and (max-width: 768px) {
  /* PC-SP Switch */
  .dispPC {
    display: none;
  }
}

/* --------------------
 PC and Print
-------------------- */
@media screen and (min-width: 769px), print {
  /* PC-SP Switch */
  .dispSP {
    display: none;
  }
}

#price2501 .lead {
  font-size: 1rem;
  line-height: 1.8;
  margin-bottom: 2rem;
}

#price2501 .newslist {
  font-size: 1rem;
}
#price2501 .newslist dt {
  margin-bottom: 5px;
}
#price2501 .newslist dd {
  text-decoration: underline;
}
@media screen and (min-width: 769px), print {
  #price2501 .newslist dl {
    display: flex;
  }
  #price2501 .newslist dt {
    margin-right: 1rem;
  }
}

#price2501 .newslist time {
  color: #8e8e8e;
}
#price2501 .newslist li:not(:last-child) {
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #ddd;
}
#price2501 .newslist a {
  color: #3c3c3c;
}
