@charset "UTF-8";
/**
 *
 *  コンテンツ共通
 *
 */
/*--------------------------------------------------------------------------
  Container
---------------------------------------------------------------------------*/
#Container {
  width: 100%;
}
@media screen and (max-width: 960px) {
  #Container {
    width: 100%;
    min-width: 100%;
    overflow: hidden;
  }
}

#Content {
  width: 100%;
  margin: 0 auto;
  /* font-size: 130%; */
}
@media screen and (max-width: 960px) {
  #Content {
    width: 100%;
    /* font-size: 110%; */
  }
}


/*--------------------------------------------------------------------------
  remodal
---------------------------------------------------------------------------*/
.remodal {
  max-width: 1000px;
}
@media screen and (max-width: 960px) {
  .remodal {
    max-width: 92%;
  }
}

.remodal-overlay {
  background: rgba(37, 44, 62, 0.9);
}
@media screen and (max-width: 960px) {
  .remodal-overlay {
    background: #252c3e;
  }
}

@media screen and (max-width: 960px) {
  .remodal-wrapper {
    padding: 0;
    box-sizing: border-box;
  }
}

.shop-modal-header {
  overflow: hidden;
  box-sizing: border-box;
  padding-top: 100px;
  padding-bottom: 100px;
}
@media screen and (max-width: 960px) {
  .shop-modal-header {
    padding-top: 75px;
    padding-bottom: 75px;
  }
}
.shop-modal-header .shop-modal-inner {
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: flex;
  -ms-flex-pack: justify;
  /*--- IE10 ---*/
  -webkit-justify-content: center;
  justify-content: center;
  max-width: 1000px;
  margin: 0 auto;
  flex-wrap: wrap;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner {
    display: block;
    max-width: 300px;
  }
}
.shop-modal-header .shop-modal-inner dl {
  max-width: 275px;
  margin: 20px;
}
.shop-modal-header .shop-modal-inner dl:hover dt a, .shop-modal-header .shop-modal-inner dl:hover dd a {
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  color: #1C212F;
  -moz-box: 0 0 0 4px #A69177 inset;
  -webkit-box-shadow: 0 0 0 4px #A69177 inset;
  -o-box: 0 0 0 4px #A69177 inset;
  box-shadow: 0 0 0 4px #A69177 inset;
}
.shop-modal-header .shop-modal-inner dl:hover dt:before, .shop-modal-header .shop-modal-inner dl:hover dd:before {
  opacity: 1 !important;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.shop-modal-header .shop-modal-inner dl:hover dt:after, .shop-modal-header .shop-modal-inner dl:hover dd:after {
  opacity: 0 !important;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner dl {
    max-width: 300px;
    margin-bottom: 25px;
  }
}
.shop-modal-header .shop-modal-inner dl dt {
  background-color: #FFFFFF;
  box-sizing: border-box;
  width: 275px;
  height: 240px;
  position: relative;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner dl dt {
    width: 100%;
    height: 100px;
  }
}
.shop-modal-header .shop-modal-inner dl dt a {
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
  display: inline-block;
  width: 100%;
  height: 100%;
}
.shop-modal-header .shop-modal-inner dl dt img {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.shop-modal-header .shop-modal-inner dl dd {
  margin-top: 30px;
}
.shop-modal-header .shop-modal-inner dl dd a {
  font-weight: bold;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner dl dd {
    margin-top: 15px;
    display: none;
  }
}
/*
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner .shop-amazon {
    margin-right: 0;
  }
}
*/
.shop-modal-header .shop-modal-inner .shop-amazon dt img {
  max-width: 123px;
  top: 54%;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner .shop-amazon dt img {
    max-width: 113px;
  }
}
.shop-modal-header .shop-modal-inner .shop-lohaco dt img {
  max-width: 128px;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner .shop-lohaco dt img {
    max-width: 117px;
  }
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner .shop-rakuten {
    margin-bottom: 0;
  }
}
.shop-modal-header .shop-modal-inner .shop-rakuten dt img {
  max-width: 136px;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner .shop-rakuten dt img {
    max-width: 136px;
  }
}
.shop-modal-header .shop-modal-inner .shop-soukai dt img {
  max-width: 162px;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner .shop-soukai dt img {
    max-width: 150px;
  }
}
.shop-modal-header .shop-modal-inner .shop-kenko dt img {
  max-width: 134px;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner .shop-kenko dt img {
    max-width: 130px;
  }
}
.shop-modal-header .shop-modal-inner .shop-welcia {
  margin-bottom: 0;
}
.shop-modal-header .shop-modal-inner .shop-welcia dt img {
  max-width: 134px;
}
@media screen and (max-width: 960px) {
  .shop-modal-header .shop-modal-inner .shop-welcia dt img {
    max-width: 130px;
    transform: translate(-50%, -60%);
  }
}

@media screen and (min-width: 961px) {
  .remodal a {
    font-size: 17px;
  }
}


/*--------------------------------------------------------------------------
  共通パーツ
---------------------------------------------------------------------------*/
.common-bt-detail {
  position: relative;
  box-sizing: border-box;
  width: 100%;
  max-width: 274px;
  margin: 0 auto;
}
.common-bt-detail:before {
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  background-color: #FFFFFF;
  background: -moz-linear-gradient(to right bottom, #FFFFFF 49.999%, #FFFFFF 50%, #F1F0EE 50.001%, #F1F0EE);
  background: -webkit-linear-gradient(to right bottom, #FFFFFF 49.999%, #FFFFFF 50%, #F1F0EE 50.001%, #F1F0EE);
  background: linear-gradient(to right bottom, #ffffff 49.999%, #ffffff 50%, #f1f0ee 50.001%, #f1f0ee);
}
.common-bt-detail:after {
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 1;
  background-color: #1C212F;
  background: -moz-linear-gradient(to right bottom, #252C3E 49.999%, #252C3E 50%, #1C212F 50.001%, #1C212F);
  background: -webkit-linear-gradient(to right bottom, #252C3E 49.999%, #252C3E 50%, #1C212F 50.001%, #1C212F);
  background: linear-gradient(to right bottom, #252c3e 49.999%, #252c3e 50%, #1c212f 50.001%, #1c212f);
}
.common-bt-detail:hover a {
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  color: #1C212F;
  -moz-box: 0 0 0 4px #1C212F inset;
  -webkit-box-shadow: 0 0 0 4px #1C212F inset;
  -o-box: 0 0 0 4px #1C212F inset;
  box-shadow: 0 0 0 4px #1C212F inset;
}
.common-bt-detail:hover:before {
  opacity: 1;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.common-bt-detail:hover:after {
  opacity: 0;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.common-bt-detail a {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  z-index: 10;
  color: #FFFFFF;
  text-align: center;
  box-sizing: border-box;
  padding-top: 20px;
  padding-bottom: 20px;
  line-height: 100%;
  letter-spacing: -0.5px;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.common-bt-detail a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: 15px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 3px solid #A59075;
  border-right: 3px solid #A59075;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 10;
}

.common-bt-detail2 {
  position: relative;
  box-sizing: border-box;
  max-width: 274px;
  margin: 0 auto;
}
.common-bt-detail2 a {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  z-index: 10;
  background-color: #226288;
  color: #FFFFFF;
  text-align: center;
  box-sizing: border-box;
  padding-top: 20px;
  padding-bottom: 20px;
  line-height: 100%;
  letter-spacing: -0.5px;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.common-bt-detail2 a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: 15px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 3px solid #FFFFFF;
  border-right: 3px solid #FFFFFF;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 10;
}
.common-bt-detail2:hover a {
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  color: #226288;
  -moz-box: 0 0 0 4px #226288 inset;
  -webkit-box-shadow: 0 0 0 4px #226288 inset;
  -o-box: 0 0 0 4px #226288 inset;
  box-shadow: 0 0 0 4px #226288 inset;
  background-color: #FFFFFF;
}
.common-bt-detail2:hover a:after {
  border-top: 3px solid #226288;
  border-right: 3px solid #226288;
}

.common-bt-detail3 {
  position: relative;
  box-sizing: border-box;
  max-width: 274px;
  margin: 0 auto;
}
.common-bt-detail3 a {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  z-index: 10;
  background-color: #F5A101;
  color: #000000;
  text-align: center;
  box-sizing: border-box;
  padding-top: 20px;
  padding-bottom: 20px;
  line-height: 100%;
  letter-spacing: -0.5px;
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
}
.common-bt-detail3 a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: 15px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 3px solid #000000;
  border-right: 3px solid #000000;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 10;
}
.common-bt-detail3:hover a {
  transition: all 0.3s cubic-bezier(0.230, 1.000, 0.320, 1.000);
  color: #F5A101;
  -moz-box: 0 0 0 4px #F5A101 inset;
  -webkit-box-shadow: 0 0 0 4px #F5A101 inset;
  -o-box: 0 0 0 4px #F5A101 inset;
  box-shadow: 0 0 0 4px #F5A101 inset;
  background-color: #FFFFFF;
}
.common-bt-detail3:hover a:after {
  border-top: 3px solid #F5A101;
  border-right: 3px solid #F5A101;
}

.common-bt-detail4 {
  position: relative;
  box-sizing: border-box;
  max-width: 274px;
  margin: 0 auto;
}
.common-bt-detail4:before {
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
  background-color: #FFFFFF;
  background: -moz-linear-gradient(to right bottom, #FFFFFF 49.999%, #FFFFFF 50%, #F1F0EE 50.001%, #F1F0EE);
  background: -webkit-linear-gradient(to right bottom, #FFFFFF 49.999%, #FFFFFF 50%, #F1F0EE 50.001%, #F1F0EE);
  background: linear-gradient(to right bottom, #ffffff 49.999%, #ffffff 50%, #f1f0ee 50.001%, #f1f0ee);
}
.common-bt-detail4:after {
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 1;
  background-color: #1C212F;
  background: -moz-linear-gradient(to right bottom, #A69177 49.999%, #A69177 50%, #917F68 50.001%, #917F68);
  background: -webkit-linear-gradient(to right bottom, #A69177 49.999%, #A69177 50%, #917F68 50.001%, #917F68);
  background: linear-gradient(to right bottom, #a69177 49.999%, #a69177 50%, #917f68 50.001%, #917f68);
}
.common-bt-detail4:hover a {
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  color: #1C212F;
  -moz-box: 0 0 0 4px #A69177 inset;
  -webkit-box-shadow: 0 0 0 4px #A69177 inset;
  -o-box: 0 0 0 4px #A69177 inset;
  box-shadow: 0 0 0 4px #A69177 inset;
}
.common-bt-detail4:hover:before {
  opacity: 1;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.common-bt-detail4:hover:after {
  opacity: 0;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.common-bt-detail4 a {
  position: relative;
  display: inline-block;
  width: 100%;
  height: 100%;
  z-index: 10;
  color: #1C212F;
  text-align: center;
  box-sizing: border-box;
  padding-top: 20px;
  padding-bottom: 20px;
  line-height: 100%;
  letter-spacing: -0.5px;
  transition: all 0.6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}
.common-bt-detail4 a:after {
  position: absolute;
  top: 0;
  bottom: 0;
  left: auto;
  right: 15px;
  margin: auto;
  content: "";
  vertical-align: middle;
  width: 5px;
  height: 5px;
  border-top: 3px solid #1C212F;
  border-right: 3px solid #1C212F;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  z-index: 10;
}

.common-font-s {
  font-size: 75%;
}

.common-font-m {
  font-size: 100%;
}

.common-font-l {
  font-size: 120%;
}

.common-red {
  color: #FF0000;
}
.common-red a {
  color: #FF0000;
}

.common-sup {
  font-size: 60%;
  vertical-align: top;
  position: relative;
  top: 0;
}
.ttl .common-sup,
.ttl-section .common-sup {
  font-size: 11px;
  font-weight: normal;
}
@media screen and (max-width: 960px) {
  .ttl .common-sup,
  .ttl-section .common-sup {
    font-size: 12px;
  }
}

.common-sub {
  font-size: 60%;
  vertical-align: bottom;
  position: relative;
  top: 0;
}

.common-indent1 {
  padding-left: 1em;
  text-indent: -1em;
}

.common-indent1-5 {
  padding-left: 1.5em;
  text-indent: -1.5em;
}

.common-indent2 {
  padding-left: 2em;
  text-indent: -2em;
}

.common-indent2-5 {
  padding-left: 2.5em;
  text-indent: -2.5em;
}

.common-indent-1 {
  display: inline-block;
  margin-left: -1em;
}

.common-indent-clear {
  margin-left: -1em;
  padding-left: 0;
  text-indent: 0;
}

.common-indent-1clear {
  display: inline-block;
  margin-left: 1em;
}
