@charset "utf-8";

/*　***********************************************************************************　*/
/* グッズページ追加分 */
/*　***********************************************************************************　*/

/* --------------------------------------------------

グッズリスト系 ここから

-------------------------------------------------- */

#goods_itemcontainer ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

#goods_itemcontainer li {
  position: relative;
  margin-right: var(--goods_margin_right);
  margin-bottom: 1.5rem;
  float: left;
}

#goods_itemcontainer li.empty {
  position: relative;
  margin-right: var(--goods_margin_right);
  margin-bottom: 1.5rem;
  float: left;
  border: none;
  background-color: transparent !important;
}

#goods_itemcontainer li:nth-of-type(3n) {
  margin-right: 0px;
}

#goods_itemcontainer li .item_box {
  width: var(--item_box_witdh);
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: center;
  position: relative;
  border: #ffffff 3px double;
  /* background-color: #ffffff; */
  box-shadow: 0 0 15px #019c96, inset 0 0 15px #019c96;
 background: rgba(255,255,255,0.1); /* 背景色 */
 -webkit-backdrop-filter: blur(10px);
 backdrop-filter: blur(10px); /* ぼけ具合を指定 */
 cursor: pointer;
}
#goods_itemcontainer li .item_box:hover {
  box-shadow: 0 0 15px #019c96, inset 0 0 15px #019c96,0 0 15px #019c96, inset 0 0 15px #019c96,0 0 15px #019c96, inset 0 0 15px #019c96;
}
#goods_itemcontainer li .item_box:hover .item_thumb>img {
  opacity: 1;
  transform: scale(1.02);
  box-shadow: 0 0 15px #019c96, inset 0 0 15px #019c96,0 0 15px #019c96, inset 0 0 15px #019c96;
  
}
#goods_itemcontainer li .item_box_empty {
  width: var(--item_box_witdh);
  /* background-color: #b29966; */
  overflow: hidden;
  display: flex;
  flex-direction: column;
  justify-content: start;
  align-items: center;
  position: relative;
}

#goods_itemcontainer li .item_box .item_thumb {
  background: url(../images/goods/frame.png);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  width: var(--item_thumb_witdh);
  height: calc(var(--item_thumb_witdh) / 475 * 498);
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}

#goods_itemcontainer li .item_box .item_thumb>img {
  /* padding-top: 1.4rem;購入ボタンあり */
  padding-top: 0.2rem;
  width: var(--item_thumb_img_witdh);
  opacity: 1;
  transform: scale(1);
  transition: transform 0.1s, opacity 0.1s;
  box-shadow: 0 0 15px #019c96, inset 0 0 15px #019c96;
}

/* #goods_itemcontainer li .item_box .item_thumb:hover>img {
  opacity: 0.7;
  transform: scale(1.02);
} */

#goods_itemcontainer li .item_box .item_thumb .item_zoomicon {
  position: absolute;
  width: 30px;
  bottom: 8px;
  right: 8px;
  /* pointer-events: none; */
}

#goods_itemcontainer li .item_box .item_thumb:hover .item_zoomicon>img {
  transform: scale(1.02);
}

#goods_itemcontainer li .item_box .item_badge {
  width: var(--item_box_witdh);
  /* padding: 0.3rem 0 0.2rem; */
  padding: 0.1em 1em 0.2em;
  vertical-align: middle;
  text-align: center;
  /* background-color: #c54695; */
  font-size: smaller;
  color: #fff;
  text-shadow: 0 0 10px #fff41d,0 0 10px #fff41d,0 0 10px #fff41d;
  position: absolute;
  left: 0;
  z-index: 2;
}

#goods_itemcontainer li .item_box .item_name {
  text-align: justify;
  word-break: break-all;
  width: var(--item_thumb_witdh);
  height: var(--item_name_hieght);
  font-size: 1em;
  font-weight: normal;
  margin-top: 10px;
  color: #ffffff;
  /* color: rgb(42, 42, 42); */
  /* background-color: #ffffff; */
}

#goods_itemcontainer li .item_box .item_price {
  margin-top: auto;
  /* margin-bottom: 0.5rem;購入ボタンあり */
  margin-bottom: 1rem;
  width: var(--item_thumb_witdh);
  text-align: left;
  color: #ffffff;
  text-shadow: 0 0 10px #c54695,0 0 10px #c54695,0 0 10px #c54695;
  /* -webkit-text-stroke: 2px #c54695;
  paint-order: stroke; */
  font-size: 1em;
}

.item_btn_buy {
  width: var(--item_thumb_witdh);
  height: 40px;
  position: relative;
  overflow: hidden;
  display: inline-block;
  background-color: black;
  text-align: center;
  outline: none;
  margin-bottom: 0.75rem;
}

.item_btn_buy a {
  text-decoration: none;
}

.item_btn_buy span {
  padding: 10px 30px;
  display: block;
  position: relative;
  z-index: 3;
  color: #fff !important;
  font-weight: bold;
  font-feature-settings: "pkna";
  letter-spacing: 0.3em;
}

.item_btn_buy:hover span {
  opacity: 0.7;
}


/* modal */
#goods_modal {
  position: fixed;
  display: none;
  top: 0;
  left: 0;
  width: 100%;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.4s, height 0s 0.4s;
  color: #604c3f;
}

#goods_modal.show {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow-y: hidden;
  z-index: 4;
  opacity: 1;
  transition: opacity 0.4s, height 0s 0s;
}

.modal_bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  background: rgba(0, 0, 0, 0.7);
  z-index: auto;
}

#goods_modal .modal_inner {
  width: var(--goods-modal-witdh);
  /* height: calc(700px); */
  position: fixed;
  height: 80vh;
  top: 50%;
  right: 49vw;
  margin-top: -40vh;
  margin-right: calc(-1 * (var(--goods-modal-witdh) / 2));

  background-color: #ffffff;
  border-radius: 5px;
  display: flex;
  align-items: start;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.3);

  transform: scale(0.9);
  transition: transform 0.2s ease-out;
  flex-flow: column;
}

#goods_modal.show .modal_inner {
  transform: scale(1);
}

#goods_modal.show .modal_wrap {
  width: 100%;
  overflow-y: scroll;
  -ms-overflow-style: none;
  /* IE, Edge 対応 */
  scrollbar-width: none;
  /* Firefox 対応 */
}

#goods_modal .modal_inner .modal_images {
  /* width: 400px;
			height: 500px; */
  margin-top: 30px;
}

#goods_modal .modal_inner .modal_images .slider {
  width: 400px;
  height: 400px;
  margin: 0 auto;
}

#goods_modal .modal_inner .modal_images .thumbnail {
  width: 400px;
  height: 40px;
  margin: 0 auto;
}

#goods_modal .modal_inner .modal_texts {
  position: relative;
  /* height: 500px; */
  padding: 0 5% 5% 5%;
  display: flex;
  margin-top: 5em;
  flex-direction: column;
  color: rgb(42, 42, 42);
}

#goods_modal .modal_inner .modal_texts .item_name {
  font-size: 1.5em;
  font-weight: bold;
}

#goods_modal .modal_inner .modal_texts .item_subspec {
  font-size: 0.9em;
  font-weight: 600;
  color: #019c96;
}

#goods_modal .modal_inner .modal_texts .item_spec {
  font-size: 0.8em;
  padding: 1em;
  margin: 0.5em;
  color: rgb(42, 42, 42);
  /* color: #a99765; */
  font-weight: bold;
  /* margin-top: 10px; */
  background-color: #eaeaea;
  border-radius: 10px;
}

#goods_modal .modal_inner .modal_texts .item_label {
  margin-top: 10px;
  display: flex;
  width: 100%;
}

#goods_modal .modal_inner .modal_texts .item_badge {

  width: auto;
  font-size: 0.7em;
  border: solid 1px #019c96;
  border-radius: 18px;
  text-align: center;
  color: #019c96;
  padding: 7px 16px;
  font-weight: bold;
}

#goods_modal .modal_inner .modal_texts .item_price {
  width: auto;
  margin: auto;
  text-align: right;
  color: #c54695;
  font-size: 1em;
  font-weight: bold;
  flex-grow: 1;
}

#goods_modal .modal_inner .modal_texts .item_detail {
  position: relative;
  margin-top: 20px;
  height: auto;
  overflow-y: auto;
  flex-grow: 1;
  text-align: justify;
}

.item_ex {
  font-size: 0.8em;
  color: #65625f !important;
}

.item_btn_buy_modal {
  /* width: var(--item_thumb_witdh); */
  width: 100%;
  /* height: 40px; */
  position: relative;
  overflow: hidden;
  display: inline-block;
  border: 1px solid black;
  background-color: black;
  text-align: center;
  outline: none;
  margin: 0.75rem 0;
  /* margin: 0.25rem 0.25rem 0.75rem 0.25rem; */
}

.item_btn_buy_modal:hover {
  background-color: #363636;
}

.item_btn_buy_modal a {
  text-decoration: none !important;
  font-weight: bold;
}

.item_btn_buy_modal span {
  padding: 15px 30px;
  display: block;
  position: relative;
  z-index: 3;
  color: #fff !important;
  font-feature-settings: "pkna";
  letter-spacing: 0.3em;
}

.item_btn_buy_modal:hover span {
  color: #c54695;
}

#goods_modal .modal_inner .btn_modal_close {
  position: fixed;
  top: 0;
  right: 0;
  background-color: #c54695;
  /* top: -45px;
		right: -55px; */
  width: 50px;
  transform: rotate(0deg) scale(1);
  transition: transform 0.1s ease-out;
  cursor: pointer;
  line-height: 0;
}

#goods_modal .modal_inner .btn_modal_close:hover {
  opacity: 0.7;
  /* transform: rotate(90deg) scale(1.1); */
}

.thumbnail .slick-track {
  transform: unset !important;
}

.thumbnail-img {
  opacity: 0.3;
  transition: opacity .3s linear;
  cursor: pointer;
  transform: scale(0.8);
}

.thumbnail-img:hover {
  opacity: 0.7;
  transform: scale(1);
}

.thumbnail .slick-current {
  opacity: 1;
}

.thumbnail-img img {
  border: solid 1px #CCCCCC;
}

#goods_modal ::-webkit-scrollbar {
  border-radius: 8px;
  width: 8px;
  /* スクロールバーの幅 */
}

/* スクロールバーのツマミ部分 */
#goods_modal ::-webkit-scrollbar-thumb {
  background-color: #c1c1c1;
  /* ツマミの色を変更 */
  border-radius: 10px;
  /* 角を丸くする */
}

/* --------------------------------------------------

グッズリスト系 ここまで

-------------------------------------------------- */


:root {
  --detail-witdh: calc(800px - (20px * 2));

  --goods_margin_right: 1rem;
  --item_box_witdh: calc((var(--detail-witdh) - var(--goods_margin_right) * 4) / 3 - 0.2rem);
  --item_thumb_witdh: calc(var(--item_box_witdh) - 1.5rem);
  --item_thumb_img_witdh: calc(var(--item_thumb_witdh) - 2rem);

  --item_name_hieght: 5rem;

  --goods-modal-witdh: 750px;

  --goods-info-witdh: 450px;
}

#contentWrap {
  /* background-color: #ffffff; */
}

#goodsMv {
  background-color: #83c8a7;
  margin: 0 auto;
  text-align: center;
}

#goodsMv p.textLogo {
  display: block;
  text-align: center;
  margin: 0 auto;
  padding-top: 45px;
  padding-bottom: 1em;
}

#goodsMv p.textLogo img {
  max-width: 400px;
}

#mainWrapBk {
  background-image: url(../images/bk.png) !important;

}

div#goodsInfo {
  /* 文字あり */
  /* width: var(--goods-info-witdh);
  max-width: 95vw;
  margin: 0 auto;
  text-align: center;
  background-color: #b5db9c73;
  margin-bottom: 1rem;
  padding: 10px; */

  /* 文字なし調整 */
  height: 0.25em;
  display: block;
}

#goodsList .logo {
  padding: 0 0 1.5em 0;
  display: block;
  text-align: center;
}

#goodsList .logo img {
  width: 560px;
  max-width: 60%;
}


#contsBody {
  padding-top: 40px !important;
}

div.center {
  text-align: center;
}

p.naname {
  position: relative;
  display: inline;
  padding: 1rem 1.5rem;
  text-align: center;
}

p.naname::before,
p.naname::after {
  position: absolute;
  /* top: 0.8rem; */
  height: 1.2rem;
  content: '';
}

p.naname::before {
  border-left: solid 1.5px #8cc367;
  left: 0;
  transform: rotate(-30deg);
}

p.naname::after {
  border-right: solid 1.5px #8cc367;
  right: 0;
  transform: rotate(30deg);
}


p.logo {
  text-align: center;
}

p.logo img {
  max-width: 90px;
}

p.announce {
  text-align: center;
  margin: 0 auto;
  max-width: 95%;
  /* line-height: 270%; */
  line-height: 160%;
  font-size: 1.5rem;
  /* font-weight: bold; */
  font-feature-settings: "pkna";
}

span.highLight {
  /* text-decoration: underline;
  text-decoration-thickness: 0.4em;
  text-decoration-color: rgba(140, 195, 103, 0.4);
  text-underline-offset: -0.2em;
  text-decoration-skip-ink: none; */
  line-height: 220%;
  font-size: 1.2rem;
  /* font-weight: bold; */
  font-feature-settings: "pkna";
}

span.dotline {
  border-bottom: #b1a49a 2px dotted;
}

h4.announce {
  font-size: 1rem;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
  padding: 0.3rem 0 0.1rem;
  color: #fff;
  background-color: #83c8a7;
}

div#goods_announce {
  margin: 0 auto;
  width: var(--detail-witdh);
  text-align: center;
}

#goods_announce p.detail {
  margin: 0 auto;
  width: 90%;
  text-align: left;
}

#goods_announce ul.announce {
  width: 90%;
  display: block;
  margin: 0 auto;
  text-align: left;
  /* text-indent: -1em;
  margin-left: 1em; */
}

#goods_announce ul.announce li {
  text-align: left;
  line-height: 1.3;
  margin-bottom: 0.5rem;
  font-size: 0.8rem;
  font-weight: normal;
}



/*　***********************************************************************************　*/

@media screen and (max-width: 1045px) {
  /*　画面サイズが999pxまではここを読み込む　*/

  :root {
    /* --main-witdh: 90vw; */
    /* --detail-witdh: calc( var(--main-witdh) - 140px ); */
    --detail-witdh: calc(90vw - 240px);

    --goods_margin_right: 0.5rem;
    --item_box_witdh: calc((var(--detail-witdh) - var(--goods_margin_right) * 3) / 2);
    --item_thumb_witdh: calc(var(--item_box_witdh) - 1rem);
    --item_thumb_img_witdh: calc(var(--item_thumb_witdh) - 4rem);

    --goods-modal-witdh: 95vw
  }

  #goods_itemcontainer ul {
    justify-content: space-between;
  }

  #goods_itemcontainer li:nth-of-type(3n) {
    margin-right: var(--goods_margin_right);
  }

  #goods_itemcontainer li:nth-of-type(2n) {
    margin-right: 0;
  }

  /* 2列調整用！！ */
  #goods_itemcontainer li:last-child {
    margin-right: auto;
  }

  #goods_itemcontainer li {
    margin-bottom: 2rem;
  }


}

@media screen and (max-width: 828px) {
  /*　画面サイズが999pxまではここを読み込む　*/

  :root {
    --main-witdh: 90vw;
    --detail-witdh: calc(var(--main-witdh) - 12rem);

    --goods_margin_right: 0.5rem;
    --item_box_witdh: calc((var(--detail-witdh) - var(--goods_margin_right) * 3) / 2 - 0.2rem);
    --item_thumb_witdh: calc(var(--item_box_witdh) - 1rem);
    --item_thumb_img_witdh: calc(var(--item_thumb_witdh) - 4rem);

    --goods-modal-witdh: 95vw
  }

  #goods_itemcontainer ul {
    justify-content: space-between;
  }

  #goods_itemcontainer li:nth-of-type(3n) {
    margin-right: var(--goods_margin_right);
  }

  #goods_itemcontainer li:nth-of-type(2n) {
    margin-right: 0;
  }

  /* 2列調整用！！ */
  #goods_itemcontainer li:last-child {
    margin-right: auto;
  }

  .item_btn_buy {
    background-color: #8cc367;
  }

  .item_btn_buy span {
    color: #fff;
  }

  .item_btn_buy:hover span {
    color: #fff;
  }

  .item_btn_buy {
    padding: 10px 0;
  }

  .item_btn_buy span {
    font-size: 0.9em;
  }

  /* modal */
  #goods_modal.show {
    /* height: 100%; */
  }

  #goods_modal .modal_inner {
    width: var(--goods-modal-witdh);
    height: calc(84vh - 14vw);
    position: fixed;
    height: 80vh;
    top: 50%;
    right: 49vw;
    margin-top: -40vh;
    margin-right: calc(-1 * (var(--goods-modal-witdh) / 2));
    /* top: -3vh;
		left: 50%;
		margin-left: calc(90vw /-2); */
    border-radius: 1vw;
  }

  #goods_modal .modal_inner .modal_images {
    width: 84vw;
    height: 100vw;
    margin: 2.5em auto 0 auto;
  }

  #goods_modal .modal_inner .modal_images .slider {
    width: 84vw;
    height: 84vw;
  }

  #goods_modal .modal_inner .modal_images .thumbnail {
    width: 84vw;
    height: 16vw;
  }

  #goods_modal .modal_inner .modal_texts {
    height: auto;
    margin-top: 0;
  }

  #goods_modal .modal_inner .modal_texts .item_name {
    line-height: 1.3em;
    margin-top: 1em;
  }

  #goods_modal .modal_inner .modal_texts .item_spec {
    margin-top: 2vw;
  }

  #goods_modal .modal_inner .modal_texts .item_label {
    margin-top: 2vw;
    flex-direction: column;
  }

  /* #goods_modal .modal_inner .modal_texts .item_badge{
					width: auto;
					font-size: 0.7em;
					border: solid 1px #00a0e9;
					border-radius: 18px;
					text-align: center;
					color: #00a0e9;
					padding: 7px 16px;
					font-weight: bold;
				} */
  #goods_modal .modal_inner .modal_texts .item_price {
    margin-top: 5vw;
    font-size: 1.2em;
    font-weight: bold;
  }

  #goods_modal .modal_inner .btn_modal_close {
    top: 0;
    /* position: absolute;
		top: -12vw;
		right: -1vw;
		width: 12vw;
		line-height: 0;
		transition: transform 0.3s ease-out;
		line-height: 0; */
  }

  #goods_modal.show .btn_modal_close.sp {
    /* transform: rotate(0deg) scale(1); */
  }

  .thumbnail-img {
    transform: scale(0.8) !important;
  }

  .thumbnail-img:hover {
    opacity: 0.3;
    transform: scale(0.8);
  }

  #goodsList .logo img {
    /* width: 320px; */
    max-width: 60%;
  }

  #announce p {
    font-size: 0.875rem;
    font-weight: 700;
    line-height: 220%;
    font-feature-settings: "pkna";
    margin: 0 auto;
    max-width: 95%;
    font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
  }


  #footer {
    height: 100px;
  }





  .upper_goods {
    max-width: 95px;

    /*デフォルトで非表示にする*/
    opacity: 0;
    visibility: hidden;
  }

  /*このクラスが付与されると表示する*/
  .active {
    opacity: 1;
    visibility: visible;
  }




}

  /*　画面サイズが768pxまではここを読み込む　*/
/* @media screen and (max-width: 768px) {


  :root {
    --main-witdh: 90vw;
    --detail-witdh: calc(var(--main-witdh) - 6rem);

    --goods_margin_right: 0.5rem;
    --item_box_witdh: calc((var(--detail-witdh) - var(--goods_margin_right) * 3) / 2);
    --item_thumb_img_witdh: calc(var(--item_thumb_witdh) - 2.6rem);

  }

  #goods_itemcontainer ul {
    justify-content: space-between;
  }

  #goods_itemcontainer li {
    margin-bottom: 1rem;
  }

  #goods_itemcontainer li:last-child {
    margin-right: auto;
  }

  .contentDetail {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .upper_goods {
    max-width: 75px;
  }

} */

@media screen and (max-width: 768px) {
  /*　画面サイズが768pxまではここを読み込む　*/


  :root {
    --main-witdh: 90vw;
    --detail-witdh: calc(var(--main-witdh) - 0rem);

    --goods_margin_right: 2rem;
    --item_box_witdh: calc((var(--detail-witdh) - var(--goods_margin_right) * 3) / 1);
    --item_thumb_img_witdh: calc(var(--item_thumb_witdh) - 2.6rem);

    /* --item_name_hieght: 75px; */
  }

  #goods_itemcontainer ul {
    justify-content: center;
  }

  #goods_itemcontainer li {
    margin-right: 0 !important;
    margin-bottom: 1rem;
  }

  /* 2列調整用！！ */
  #goods_itemcontainer li:last-child {
    margin-right: 0;
  }

  .contentDetail {
    padding-left: 1.5rem;
    padding-right: 1.5rem;
  }

  .upper_goods {
    max-width: 75px;
  }

}

/*　***********************************************************************************　*/



/*　***********************************************************************************　*/