﻿@charset "UTF-8";

.pane-header + .pane-globalnav + .block-faq,
.pane-header + .pane-globalnav + .block-guide,
.pane-header + .pane-globalnav + .block-privacy {
  padding-top: 112px;
}

/* fade image in after load */

.lazyload {
  opacity: 0;
}

.lazyloading {
  opacity: 1;
}

.lazyloaded {
  opacity: 1;
  transition: opacity 200ms;
}

/* よくあるご質問 */
.block-faq {
  padding: 0 20px;
  margin: 12px 0 40px;
}
.block-faq h1 {
  padding: 12px 0 0;
}
.block-faq-intro {
  margin: 0 0 40px;
}
.block-faq-intro--text {
  margin: 0 0 20px;
}
.block-faq-intro--nav li:not(:last-child) {
  margin: 0 0 8px;
}
.block-faq-intro--nav a {
  position: relative;
  display: block;
  border: 1px solid #dedede;
  border-radius: 3px;
  font-size: 15px;
  padding: 13px 15px;
}
.block-faq-intro--nav a:after {
  content: "";
  position: absolute;
  top: 17px;
  right: 15px;
  width: 10px;
  height: 10px;
  border-right: 1px solid #111;
  border-bottom: 1px solid #111;
  transform: rotate(45deg);
}
.block-faq h2 {
  padding: 0 0 5px;
}
.block-faq-section:not(:last-child) {
  margin: 0 0 40px;
}
.block-faq-section dl:not(:last-child) {
  margin: 0 0 4px;
}
.block-faq-section dt {
  position: relative;
  background: #eee;
  border-radius: 3px;
  padding: 13px 35px 13px 15px;
}
.block-faq-section dt:before,
.block-faq-section dt:after {
  content: "";
  position: absolute;
  top: 0;
  right: 15px;
  bottom: 0;
  margin: auto;
  width: 14px;
  height: 2px;
  background: #111;
  transition: 0.3s ease;
}
.block-faq-section dt:after {
  transform: rotate(90deg);
}
.block-faq-section dt.open:after {
  transform: rotate(180deg);
}
.block-faq-section dt span {
  position: relative;
  font-size: 14px;
  padding: 0 0 0 25px;
}
.block-faq-section dt span:before {
  content: "Q.";
  position: absolute;
  top: -5px;
  left: 0;
  font-size: 18px;
}
.block-faq-section dd {
  display: none;
  position: relative;
  margin: 16px 0 20px;
  padding: 0 0 0 40px;
  font-size: 13px;
}
.block-faq-section dd:before {
  content: "A.";
  position: absolute;
  top: -4px;
  left: 18px;
  font-size: 18px;
}
.block-faq-section dd p:not(:last-child) {
  margin: 0 0 20px;
}
.block-faq-section dd span {
  color: #d53100;
}

/* ご利用ガイド */
.block-guide {
  padding: 0 20px;
  margin: 12px 0 40px;
}
.block-guide h1 {
  padding: 12px 0 0;
}
.block-guide-intro {
  margin: 0 0 40px;
}
.block-guide-intro--text {
  margin: 0 0 20px;
}
.block-guide-intro--nav li:not(:last-child) {
  margin: 0 0 8px;
}
.block-guide-intro--nav a {
  position: relative;
  display: block;
  border: 1px solid #dedede;
  border-radius: 3px;
  font-size: 15px;
  padding: 13px 15px;
}
.block-guide-intro--nav a:after {
  content: "";
  position: absolute;
  top: 17px;
  right: 15px;
  width: 10px;
  height: 10px;
  border-right: 1px solid #111;
  border-bottom: 1px solid #111;
  transform: rotate(45deg);
}
.block-guide h2 {
  padding: 0 0 5px;
}
.block-guide-section:not(:last-child) {
  margin: 0 0 40px;
}
.block-guide-section--box:not(:last-child) {
  margin: 0 0 32px;
}
.block-guide-section--text {
  font-size: 13px;
  margin: 0 0 32px;
}
.block-guide-section--text a {
  text-decoration: underline;
}
.block-guide h3 {
  font-size: 16px;
  padding: 0 0 5px;
  margin: 0 0 15px;
}
.block-guide-section--text p:not(:last-child) {
  margin: 0 0 20px;
}
#payment .block-guide-section--box:nth-of-type(2) .block-guide-section--text p:nth-child(3) {
  margin: 0;
}
#payment .block-guide-section--box:nth-of-type(2) .block-guide-section--text ul {
  margin: 0 0 20px;
}

/* プライバシーポリシー */
.block-privacy {
  padding: 0 20px;
  margin: 12px 0 40px;
}
.block-privacy h1 {
  padding: 12px 0 0;
}
.block-privacy h2 {
  font-size: 16px;
  padding: 0 0 5px;
  margin: 0 0 15px;
  border-bottom: 1px solid #dedede;
}
.block-privacy-section:not(:last-child) {
  margin: 0 0 42px;
}
.block-privacy-section--text p {
  margin: 0 0 20px;
  font-size: 13px;
}
.block-privacy-section--text p:last-child {
  margin: 0;
}

/* ---------------------------------------
	ランディングページ
---------------------------------------- */
/* common */
.pane-landingpage-contents {
  background: #fff;
}
.block-landingpage h2[class^="block-landingpage"] {
  margin: 20px 0 10px 0;
  padding: 0;
  font-size: 19px;
  border: none;
}
.block-landingpage .block-landingpage-login--member h2.block-landingpage-login--member-header {
  margin: 0 0 10px;
}
.block-landingpage h2.block-landingpage-form--goods-title,
.block-landingpage h2.block-landingpage-form--guest-title,
.block-landingpage h2.block-landingpage-form--sales-append-title,
.block-landingpage h2.block-landingpage-order--host-title {
  padding: 0;
  margin: 0 0 10px 0;
  font-size: 14px;
  border: none;
}
.block-landingpage h2.block-landingpage-form--sales-append-title {
  margin: 20px 0 5px 0;
}
.block-landingpage #method_spec h3 {
  padding: 0;
  margin: 0 0 10px 0;
  font-size: 14px;
  border: none;
}
.block-landingpage #method_pay h3 {
  display: none;
}
.block-landingpage .block-landingpage--dest-amazonpay h3 {
  padding: 0;
  margin: 0 0 10px 0;
  font-size: 14px;
  border: none;
}
.block-landingpage .block-landingpage-login--member-message {
  margin: 0 0 20px 0;
  font-size: 14px;
  text-align: center;
}
.block-landingpage .block-landingpage-login--ask-password {
  margin: 20px 0 0 0;
  font-size: 14px;
  text-align: center;
}
.block-landingpage .block-landingpage-login--ask-password a {
  text-decoration: underline;
}
.block-landingpage .block-landingpage-login--guest {
  padding: 0;
  margin: 0;
  border: none;
}
.block-landingpage .block-landingpage-other--dest {
  margin: 30px 0 10px;
  padding: 20px;
  border: none;
}
.block-landingpage .block-landingpage-login--member-body {
  width: auto !important;
  margin: 0 0 20px 0;
  border: #dcdcdc 1px solid;
}
.block-landingpage .block-landingpage-form {
  width: auto !important;
  margin: 0 0 20px 0;
  border: #dcdcdc 1px solid;
  display: block;
}
.block-landingpage .block-landingpage-login--first-time-message {
  margin: 0;
  font-size: 14px;
  text-align: center;
}
.block-landingpage .block-landingpage-login--first-time-body {
  width: auto !important;
  border: #dcdcdc 1px solid;
  display: block;
}
.block-landingpage .block-landingpage-form .block-landingpage-form--goods,
.block-landingpage .block-landingpage-form .block-landingpage-form--sales-append-content {
  padding: 0;
  border: none;
}
.block-landingpage-form--spec-content dl dt {
  float: left;
}
.block-landingpage-form--spec-content dl dd {
  margin-left: 8em;
}
.block-landingpage input {
  max-width: 100%;
}
.pane-landingpage-contents #frmLP {
  margin: 0 20px;
}
.pane-landingpage-contents #frmLP .fieldset-vertical {
  border: none !important;
}
.pane-landingpage-contents #frmLP .form-group {
  border: none;
}
.block-landingpage-form--sales-append-content .form-label {
  background: none;
}
.pane-landingpage-contents .block-landingpage-other--dest-change {
  border: none !important;
}
.pane-landingpage-contents #frmLP .action-buttons {
  margin: 30px 0 40px;
}
.pane-landingpage-contents .action-buttons .btn.btn-primary {
  width: 80%;
  padding: 12px 0;
  margin: 0 auto;
  border-radius: 3px;
  font-size: 15px;
  text-align: center;
  display: block;
}
.pane-landingpage-contents #frmLP .action-buttons .btn.btn-primary {
  width: 100%;
}
/* details */
.pane-landingpage-contents #lp_details {
  margin: 40px 20px 0;
}
.pane-landingpage-contents .detail-box {
  margin: 0 0 30px 0;
}
.pane-landingpage-contents .detail-box#detail_bottom {
  margin: 0 0 10px 0;
}
.pane-landingpage-contents .detail-box .detail-ttl {
  padding: 10px 0;
  margin: 0;
  border: none;
  font-size: 13px;
  font-weight: bold;
  text-align: center;
  background: #707070;
  color: #fff;
}
.pane-landingpage-contents .detail-box .detail-inbox {
  padding: 10px;
  border-left: #dedede 2px solid;
  border-right: #dedede 2px solid;
  border-bottom: #dedede 2px solid;
}
.pane-landingpage-contents .detail-box .detail-inbox.table {
  padding: 0;
}
.pane-landingpage-contents .detail-box p {
  font-size: 12px;
}
.pane-landingpage-contents .detail-box p + p {
  margin-top: 10px;
}
.pane-landingpage-contents .detail-box .notice-list {
  margin: 0 1em 10px;
}
.pane-landingpage-contents .detail-box .notice-list li {
  font-size: 12px;
  list-style: disc inside;
  padding-left: 1em;
  text-indent: -1em;
}
.pane-landingpage-contents .detail-box .dl-table {
  display: flex;
  align-items: stretch;
}
.pane-landingpage-contents .detail-box .dl-table + .dl-table {
  border-top: #dedede 2px solid;
}
.pane-landingpage-contents .detail-box .dl-table dt {
  width: 30%;
  padding: 10px;
  border-right: #dedede 2px solid;
  font-size: 12px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.pane-landingpage-contents .detail-box .dl-table dd {
  width: 70%;
  height: 100%;
  padding: 10px;
  font-size: 12px;
  box-sizing: border-box;
}

/* LP:CLEAR SKIN */
#lp_clear_skin .for-pc {
  display: none;
}
#lp_clear_skin * {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
#lp_clear_skin section {
  position: relative;
}
#lp_clear_skin section .inner {
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
#lp_clear_skin h1,
#lp_clear_skin h2,
#lp_clear_skin h3 {
  padding: 0;
  margin: 0;
  border: none;
}
#lp_clear_skin #sec_main .top-pop {
  width: 100%;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
}
#lp_clear_skin #sec_main .visual img {
  width: 100%;
}
#lp_clear_skin #sec_main .desc-box {
  width: 100%;
  height: 100%;
  padding: 30% 3% 0 55%;
  position: absolute;
  top: 0;
  left: 0;
}
#lp_clear_skin #sec_main .desc-box h1 {
  max-width: 324px;
  margin: 0 auto 10px;
}
#lp_clear_skin #sec_main .desc-box .text {
  margin: 0 0 20px;
  font-size: 0.7rem;
  text-align: center;
  line-height: 1.8;
}
#lp_clear_skin #sec_main .button.days10 a {
  width: 100%;
  height: 38px;
  margin: 0 auto;
  border: #000 1px solid;
  border-radius: 38px;
  font-size: 11px;
  text-align: center;
  line-height: 36px;
  text-decoration: none;
  display: block;
  position: relative;
  transition: 0.3s;
  background: transparent;
}
#lp_clear_skin #sec_main .button.days10 a::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  right: 25px;
  top: calc(50% - 4px);
  transform: rotate(45deg);
}
#lp_clear_skin #sec_main .button.days10 a:hover {
  border: #000 1px solid;
  background: #000;
  color: #fff;
}
#lp_clear_skin #sec_main .button.days10 a:hover::after {
  border-color: #fff;
}
#lp_clear_skin #sec_story {
  padding: 0 0 35vw 0;
  background: url("../../img/usr/lp/clear-skin/story_bg_sp.png") center bottom no-repeat;
  -webkit-background-size: 100% auto;
  background-size: 100% auto;
  position: relative;
  box-sizing: border-box;
}
#lp_clear_skin #sec_story .side {
  width: 16px;
  position: absolute;
  left: 10px;
  bottom: 45vw;
}
#lp_clear_skin #sec_story .side img {
  width: 16px;
}
#lp_clear_skin #sec_story h2 {
  margin: 0 0 20px 0;
  text-align: center;
}
#lp_clear_skin #sec_story .pop {
  margin: 0 0 20px 0;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
#lp_clear_skin #sec_story .text {
  margin: 0 0 20px 0;
  font-size: 12px;
  line-height: 1.8;
  text-align: center;
}
#lp_clear_skin #sec_story .kome-list {
  margin: 0 0 30px 0;
  display: flex;
  justify-content: center;
}
#lp_clear_skin #sec_story .kome-list li {
  margin: 0 10px 0 0;
  font-size: 10px;
}
#lp_clear_skin #sec_story .button.days10 a {
  width: 70%;
  height: 50px;
  margin: 0 auto;
  border: #000 1px solid;
  border-radius: 50px;
  font-size: 18px;
  text-align: center;
  line-height: 48px;
  text-decoration: none;
  display: block;
  position: relative;
  transition: 0.3s;
  background: #fff;
}
#lp_clear_skin #sec_story .button.days10 a::after {
  content: "";
  width: 8px;
  height: 8px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  position: absolute;
  right: 25px;
  top: calc(50% - 4px);
  transform: rotate(45deg);
}
#lp_clear_skin #sec_story .product {
  width: 70%;
  margin: 25px auto 60px;
  text-align: center;
}
#lp_clear_skin #sec_body {
  width: 100%;
  padding: 0;
  background: url("../../img/usr/lp/clear-skin/body_bg_sp.jpg") center bottom no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
#lp_clear_skin #sec_eye {
  width: 100%;
  padding: 22vw 0 0;
  background: url("../../img/usr/lp/clear-skin/eye_bg_sp.jpg") center bottom no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
#lp_clear_skin #sec_face {
  width: 100%;
  padding: 22vw 0 0 0;
  background: url("../../img/usr/lp/clear-skin/face_bg_sp.jpg") center bottom no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
#lp_clear_skin #sec_body h2 {
  width: 24%;
  position: absolute;
  bottom: -20vw;
  left: -2%;
  z-index: 2;
}
#lp_clear_skin #sec_eye h2 {
  width: 26%;
  position: absolute;
  bottom: -2vw;
  right: 0;
  z-index: 2;
}
#lp_clear_skin #sec_face h2 {
  width: 20%;
  position: absolute;
  bottom: -18vw;
  left: 0;
  z-index: 2;
}
#lp_clear_skin .item-frame .inner {
  display: flex;
  justify-content: center;
  flex-direction: column-reverse;
}
#lp_clear_skin .item-frame .image {
  padding: 0 20%;
  text-align: center;
}
#lp_clear_skin .item-frame .image img {
  vertical-align: top;
}
#lp_clear_skin .item-frame .item-desc {
  margin: 10px 0 0 0;
  font-size: 10px;
  line-height: 1.4;
  text-align: center;
}
#lp_clear_skin .item-frame .desc-box .pop {
  margin: 0 0 20px;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  line-height: 1.4;
  color: #fff;
}
#lp_clear_skin .item-frame .desc-box .text {
  margin: 0;
  font-size: 12px;
  text-align: center;
  line-height: 2;
  color: #fff;
}
#lp_clear_skin #sec_eye.item-frame .desc-box .text {
  margin-bottom: 20px;
}
#lp_clear_skin #sec_nayami {
  padding: 35vw 0 60px;
  background: url("../../img/usr/lp/clear-skin/nayami_bg_sp.jpg") center bottom no-repeat;
  -webkit-background-size: 100% 100%;
  background-size: 100% 100%;
}
#lp_clear_skin #sec_nayami .inner {
  position: relative;
  z-index: 2;
}
#lp_clear_skin #sec_nayami h2 {
  margin: 0 0 30px 0;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
#lp_clear_skin #sec_nayami .nayami-list {
  margin: 0 0 25px 0;
  display: flex;
  justify-content: center;
}
#lp_clear_skin #sec_nayami .nayami-list li {
  width: 30vw;
  height: 30vw;
  margin: 0 1vw;
  border-radius: 30vw;
  text-align: center;
  background: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 1.2rem;
  font-weight: bold;
  font-family: YuMincho, "Yu Mincho", sans-serif;
}
#lp_clear_skin #sec_nayami .line01 {
  margin: 0 0 25px 0;
  font-size: 12px;
  text-align: center;
  line-height: 1.8;
}
#lp_clear_skin #sec_nayami .line02 {
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  line-height: 2;
}
#lp_clear_skin #sec_offer {
  padding: 30px 20px 20px;
  background: #cac4c4;
  overflow: hidden;
}
#lp_clear_skin #sec_offer .inner {
  margin: 0 auto;
  background: #fff;
  position: relative;
  z-index: 2;
}
#lp_clear_skin #sec_offer .head {
  padding: 30px 15% 15px;
  text-align: center;
  position: relative;
}
#lp_clear_skin #sec_offer .head .pop {
  width: 100%;
  text-align: center;
  position: absolute;
  top: -12px;
  left: 0;
}
#lp_clear_skin #sec_offer .head .pop img {
  width: 142px;
}
#lp_clear_skin #sec_offer .main {
  margin: 0 -20px;
}
#lp_clear_skin #sec_offer .main img {
  width: 100%;
}
#lp_clear_skin #sec_offer .details {
  padding: 30px 25px;
}
#lp_clear_skin #sec_offer .ttl-point {
  margin: 0 0 20px 0;
  font-size: 16px;
  font-weight: bold;
  letter-spacing: 0.2em;
  text-align: center;
  color: #e37a7a;
}
#lp_clear_skin #sec_offer .ttl-point strong {
  font-size: 24px;
  font-weight: bold;
}
#lp_clear_skin #sec_offer .point-list {
  margin: 0 0 20px 0;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
#lp_clear_skin #sec_offer .point-list li {
  width: 46%;
  padding: 5px 0;
  margin: 0 1% 2%;
  border: #000 1px solid;
  border-radius: 6px;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
}
#lp_clear_skin #sec_offer .middle-text {
  margin: 0 0 30px 0;
  font-size: 14px;
  text-align: center;
  line-height: 2;
}
#lp_clear_skin #sec_offer .middle-text .days10 {
  padding: 5px 8px;
  margin: 0 10px;
  border: #e37a7a 1px solid;
  color: #e37a7a;
  display: inline-block;
  line-height: 1;
}
#lp_clear_skin #sec_offer .middle-text .line {
  border-bottom: #e37a7a 2px solid;
  display: inline-block;
  line-height: 1;
}
#lp_clear_skin #sec_offer .price-box-wrap {
  margin: 0 0 25px 0;
  border: #dedede 1px solid;
  padding: 20px;
  background: #f5f5f5;
}
#lp_clear_skin #sec_offer .price-box .price-line {
  margin: 0 0 10px 0;
  text-align: center;
}
#lp_clear_skin #sec_offer .price-box .regular-line {
  display: none;
}
#lp_clear_skin #sec_offer .trial-button {
  margin: 0;
}
#lp_clear_skin #sec_offer .trial-button a {
  width: 100%;
  height: 50px;
  margin: 0 auto;
  border-radius: 3px;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
  text-decoration: none;
  line-height: 50px;
  letter-spacing: 0.1em;
  color: #fff;
  display: block;
  background: linear-gradient(90deg, rgba(213, 8, 8, 1) 0%, rgba(237, 9, 141, 1) 100%);
  transition: 0.3s;
}
#lp_clear_skin #sec_offer .trial-button a:hover {
  opacity: 0.7;
}
#lp_clear_skin #sec_offer .trial-button a::after {
  content: "";
  width: 0;
  height: 0;
  margin: 0 0 0 14px;
  border-top: 6px solid transparent;
  border-right: 6px solid transparent;
  border-left: 6px solid #fff;
  border-bottom: 6px solid transparent;
  display: inline-block;
}
#lp_clear_skin #sec_offer .notice-list li {
  padding-left: 1em;
  text-indent: -1em;
  font-size: 10px;
  color: #444;
}

/* lightbox.css override */
/*  Preload images */
body:after {
  content: url(../../img/sys/close.png) url(../../img/sys/loading.gif) url(../../img/sys/prev.png) url(../../img/sys/next.png);
  display: none;
}

body .lightboxOverlay {
  z-index: 99999;
}

body .lightbox {
  z-index: 100000;
}

/* inline link */
.zaiho-container a.inline {
  text-decoration: underline;
  transition: all 0.3s ease;
}

/* form elements */
.zaiho-container input[type="text"],
.zaiho-container input[type="email"],
.zaiho-container input[type="password"],
.zaiho-container input[type="tel"],
.zaiho-container input[type="url"],
.zaiho-container input[type="search"],
.zaiho-container input[type="number"],
.zaiho-container textarea,
.zaiho-container select {
  border: 1px #bfbfbf solid;
  border-radius: 5px;
  padding: 12px;
  width: 100%;
  appearance: none;
  font-size: 16px;
  background: #fff;
}
.zaiho-container .select-style-wrap {
  display: inline-block;
  width: fit-content;
  position: relative;
}
.zaiho-container .select-style-wrap:has(.fw) {
  width: 100%;
}
.zaiho-container .select-style-wrap:after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: translateY(-65%) rotate(45deg);
  pointer-events: none;
}
.zaiho-container .select-style-wrap select {
  display: block;
  width: 100%;
  appearance: none;
  padding-right: 30px;
}
.zaiho-container .form-control span {
  font-size: 16px;
}
.zaiho-container .help-block {
  font-size: 14px;
}
.zaiho-container .required:after {
  background-color: #ff5d5d;
  border-radius: 5px;
}
.zaiho-container .btn:active,
.zaiho-container .btn.active{
  box-shadow:none;
}

/* br display control */
@media screen and (max-width: 768px) {
  /* =============================== mobile =============================== */
  .zaiho-container .pc-br,
  .zh-modal .pc-br {
    display: none;
  }
  .zaiho-container .sp-br,
  .zh-modal .sp-br {
    display: inline;
  }
}
@media screen and (min-width: 769px) {
  /* =============================== pc =============================== */
  .zaiho-container .sp-br,
  .zh-modal .sp-br {
    display: none;
  }
  .zaiho-container .pc-br,
  .zh-modal .pc-br {
    display: inline;
  }

  .zaiho-container a.inline:hover {
    text-decoration: none;
    color: #003E9A;
  }

  /* form elements */
  .zaiho-container input[type="text"],
  .zaiho-container input[type="email"],
  .zaiho-container input[type="password"],
  .zaiho-container input[type="tel"],
  .zaiho-container input[type="url"],
  .zaiho-container input[type="search"],
  .zaiho-container input[type="number"],
  .zaiho-container textarea,
  .zaiho-container select {
    padding: 15px;
    font-size: 20px;
  }
  .zaiho-container .form-uid input[type="email"],
  .zaiho-container .form-uid input[type="text"] {
    width: 100%;
  }
  .zaiho-container .form-control span {
    font-size: 18px;
  }
  .zaiho-container .help-block {
    font-size: 16px;
  }
  /* button ui */
  .zaiho-container .btn{
    transition:all 0.3s ease;
  }
}

/* image modal */
/* modal backdrop */
.zh-img-modal {
  position: fixed;
  inset: 0;
  z-index: 199999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 15px;
  background: rgba(0, 0, 0, 0.6);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition:
    opacity 0.25s ease,
    visibility 0.25s ease;
}

/* open state */
.zh-img-modal.is-active {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* image wrapper */
.zh-img-modal__dialog {
  max-width: calc(100vw - 30px);
  max-height: calc(100dvh - 30px);
  transform: scale(0.96);
  opacity: 0;
  transition:
    transform 0.25s ease,
    opacity 0.25s ease;
}

/* open animation */
.zh-img-modal.is-active .zh-img-modal__dialog {
  transform: scale(1);
  opacity: 1;
}

/* enlarged image */
.zh-img-modal__img {
  display: block;
  max-width: calc(100vw - 30px);
  max-height: calc(100dvh - 30px);
  width: auto;
  height: auto;
  object-fit: contain;
}

/* close button visual */
.zh-img-modal__close {
  position: fixed;
  top: 0;
  right: 0;
  width: 40px;
  height: 40px;
  border: 0;
  padding: 0;
  background: transparent;
  cursor: pointer;
  z-index: 1;
}

.zh-img-modal__close::before,
.zh-img-modal__close::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 24px;
  height: 2px;
  background: #fff;
  transform-origin: center;
}

.zh-img-modal__close::before {
  transform: translate(-50%, -50%) rotate(45deg);
}

.zh-img-modal__close::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}

@media screen and (min-width: 769px) {
  .zh-img-modal {
    padding: 30px;
  }

  .zh-img-modal__dialog {
    max-width: 800px;
    max-height: calc(100dvh - 60px);
  }

  .zh-img-modal__img {
    max-width: 800px;
    max-height: calc(100dvh - 60px);
  }

  .zh-img-modal__close {
    width: 60px;
    height: 60px;
  }

  .zh-img-modal__close::before,
  .zh-img-modal__close::after {
    width: 34px;
  }
}

/* modals  */
.modal-dialog.zh-modal {
  max-width: calc(100dvw - 30px);
  max-height: calc(100dvh - 50px);
  padding: 0;
  border-radius: 10px;
  overflow: hidden;
}
.zh-modal .modal-header {
  background: #004da0;
  color: #fff;
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  padding: 12px 40px;
  min-height: 96px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  line-height: 1.3;
}
.zh-modal .modal-close {
  width: 30px;
  height: 30px;
  border: 2px #fff solid;
  border-radius: 50%;
  position: absolute;
  top: 10px;
  right: 10px;
  cursor: pointer;
  text-align: center;
  line-height: 24px;
  font-size: 18px;
  font-weight: bold;
}
.zh-modal .modal-body {
  background: #fff;
  padding: 30px 30px 10px;
  font-size: 18px;
  max-height: calc(100dvh - 240px);
  overflow-y: auto;
}
.zh-modal .modal-body.has-form {
  background: #f9f9fa;
  padding: 15px;
}
.zh-modal .modal-body.has-form + .modal-footer {
  background: #f9f9fa;
}

.zh-modal .modal-body a {
  text-decoration: underline;
}
.zh-modal .modal-body p:not(:last-child) {
  margin: 0 0 10px;
}
.zh-modal .modal-body .skip-select label {
  display: block;
  margin: 0 0 10px;
  font-size: 16px;
}
.zh-modal .modal-body .select-style-wrap {
  width: 100%;
  display: block;
  position: relative;
}
.zh-modal .modal-body .select-style-wrap select {
  display: block;
  width: 100%;
  appearance: none;
  padding: 12px;
  border: 1px #a1a1a1 solid;
  border-radius: 5px;
  font-size: 16px;
  background: #fff;
}
.zh-modal .modal-body .select-style-wrap::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 15px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: translateY(-65%) rotate(45deg);
  pointer-events: none;
}
.zh-modal .modal-body .modal-note {
  font-weight: bold;
  display: flex;
  flex-direction: column;
}
.zh-modal .modal-body:not(:has(.modal-footer)) {
  padding-bottom: 40px;
}
.zh-modal .modal-footer {
  background: #fff;
  padding: 10px 30px 30px;
  display: flex;
  justify-content: space-between;
  gap: 10px;
  flex-wrap: wrap;
}
.zh-modal .modal-footer.change-address{
  padding-top: 30px;
  flex-direction:row-reverse;
}
.zh-modal .modal-footer.change-address .btn.btn-primary{
  max-width: 300px;
}
.zh-modal .modal-footer .btn,
.zh-modal .available-coupon--list .btn {
  flex: 1;
  padding: 12px 15px;
  border-radius: 5px;
  font-size: 16px;
  text-align: center;
  text-decoration: none;
  display: block;
  font-weight: normal;
  margin: 0;
}
.zh-modal .available-coupon--list .btn{
  width: 100%;
  padding:8px 15px;
}
.zh-modal .modal-footer .btn.btn-primary,
.zh-modal .available-coupon--list .btn.btn-primary {
  background: #4a9f92;
  color: #fff;
  border-color: #4a9f92;
  transition: all 0.3s ease;
}
.zh-modal .modal-footer .btn.btn-secondary {
  background: #fff;
  color: #333;
  border-color: #4a9f92;
  transition: all 0.3s ease;
}
.zh-modal .modal-footer .btn.btn-primary:hover,
.zh-modal .available-coupon--list .btn.btn-primary:hover {
 background-color: #55B7A8;
}
.zh-modal .modal-footer .btn.btn-secondary:hover {
  border-color: #3F8779;
  background-color: #F1F7F6;
}
.zh-modal .modal-footer .modal-footer--note{
  width: 100%;
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 15px;
}
/* 定期商品追加 */
.zh-modal .block-regular-sales-add--goods{
  margin-bottom: 20px;
  display: block;
}
.zh-modal .block-regular-sales-add--goods-image{
  margin-bottom: 10px;
  width: 100%;
}
.zh-modal .block-regular-sales-add--goods-image a{
  display: block;

}
.zh-modal .block-regular-sales-add--goods-image figure.img-center{
  display: block;
  padding:0;
  min-width:0;
  min-height:0;
}
.zh-modal .block-regular-sales-add--goods-image figure.img-center img{
  display: block;
  max-width: 100%;
  max-height: 100%;
  height: auto;
  margin: 0 auto;
  object-fit: contain;

}
.zh-modal .block-regular-sales-add--goods-info{
  padding:0;
  margin:0;
}
.zh-modal .block-regular-sales-add--goods-name{
  font-size:16px;
  font-weight: bold;
  margin-bottom: 20px;
}
.zh-modal .block-regular-sales-add--goods-name a{
  text-decoration: none;
}
.zh-modal .block-regular-sales-add--price-info{
  margin-bottom: 20px;
}
.zh-modal .block-goods-price--qty-table{
  width: 100%;
  display: block;
}
.zh-modal .block-goods-price--qty-table tbody{
  display: block;
}
.zh-modal .block-goods-price--qty-row{
  border-bottom: 1px #DEDEDE solid;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: wrap;
  padding:10px 0;
}
.zh-modal .block-goods-price--qty-label{
  width:auto;
  padding:0 20px 5px 0;
  font-size: 16px;
}
.zh-modal .block-goods-price--qty-unit{
  flex: 1;
  padding-bottom:5px;
  font-size: 16px;
}
.zh-modal .block-goods-price--qty-detail{
  text-align: right;
  width: 100%;
}
.zh-modal .block-goods-price--on-sales-comment{
  color: #DB483B;
  font-weight: bold;
  font-size: 12px;
}
.zh-modal .block-goods-price--on-sales-off-percent{
  font-size: 12px;
}
.zh-modal .block-goods-price--price{
  font-size: 22px;
  font-weight: bold;
  color: #DB483B;
  text-align: right;
}
.zh-modal .block-goods-price--price::after{
  font-size: 13px;
  font-feature-settings: "palt";
}
.zh-modal .subscription-item--unit:last-child {
  border-bottom: none;
}

.zh-modal .block-goods-price--regular-repeat-default-price{
  font-size: 12px;
  font-weight: normal;
}
.zh-modal .block-regular-sales-add--qty{
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}
.zh-modal .block-regular-sales-add--qty input[type="number"]{
  width: 100px;
  text-align: center;
  padding:15px;
}

.zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group{
  display:flex;
  justify-content: space-between;
  align-items: flex-start;
  padding:10px 0;
  border-top: 1px #dadada solid;
  border-bottom: 1px #dadada solid;
}
.zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-label{
  font-size: 16px;
  font-weight: bold;
  padding:18px 5px 0 0;
  margin: 0;
  width: 4.5em;
}
.zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .constraint{
  width: 0;
}
.zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-control{
  flex: 1;
  display: flex;
  padding: 8px 0;
  gap: 6px;
  flex-wrap: wrap;
}
.zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-control label.radio{
  border: 1px #333 solid;
  border-radius: 5px;
  padding: 10px 10px 10px 38px;
  background-position: 12px center;
  flex-grow: 1;
  margin: 0;
  background: url(../../img/icon/radio-default.png) no-repeat 12px center;
  background-size: 20px auto;
  transition: all 0.3s ease;
  width: calc(50% - 3px);
  font-size: 16px;
}
.zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-control label.radio input[type="radio"]{
  display: none;
}
.zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-control label.radio:has(input[type="radio"]:checked) {
  background-image: url(../../img/icon/radio-checked.png);
  background-color: #e7f0f8;
  border-color: #004da0;
  color: #004da0;
  font-weight: bold;
}
.zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-control .help-block{
  color: #333;
  font-size:12px;;
}

/* modal for destination confirm */
.zh-modal .modal-guide {
  font-size: 18px;
  padding-bottom: 12px;
  margin-bottom: 12px;
  border-bottom: 1px #004da0 solid;
}
.zh-modal .modal-dest-list {
  list-style: none;
}
.zh-modal .modal-dest-list .modal-dest-item {
  font-size: 16px;
  border-bottom: 1px #bfbfbf solid;
  position: relative;
}
.zh-modal .modal-dest-list .modal-dest-item::before,
.zh-modal .modal-dest-list .modal-dest-item::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -3px;
  width: 5px;
  height: 5px;
  background: #bfbfbf;
  border-radius: 50%;
}
.zh-modal .modal-dest-list .modal-dest-item::before {
  left: -2px;
}
.zh-modal .modal-dest-list .modal-dest-item::after {
  right: -2px;
}
.zh-modal .modal-dest-list .modal-dest-item a {
  display: block;
  padding: 12px 20px 12px 0;
  text-decoration: none;
}
.zh-modal .modal-dest-list .modal-dest-item a::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 10px;
  width: 8px;
  height: 8px;
  border-right: 2px solid #3f61bc;
  border-bottom: 2px solid #3f61bc;
  transform: translateY(-50%) rotate(-45deg);
  pointer-events: none;
}

.modal-body:has(.modal-dest-changer){
  padding:25px;
}

.zh-modal .modal-dest-changer .dest-changer__item{
  border: 3px #d6ddf3 solid;
  border-radius: 5px;
  padding:15px;
  font-size: 16px;
  background: #fff;
}
.zh-modal .modal-dest-changer .dest-changer__item:has(.item-current__disp) {
  background: #F5F8FF;
}
.zh-modal .modal-dest-changer .dest-changer__item:not(:last-child){
  margin-bottom: 10px;
}
.zh-modal .modal-dest-changer .dest-changer__item .btn{
  border: 1px #c84545 solid;
  border-radius: 5px;
  padding:15px;
  text-align: center;
  font-size: 16px;
  background: #fff;
  color: #c84545;
  display: block;
  width: 100%;
  transition: all 0.3s ease;
}
.zh-modal .modal-dest-changer .dest-changer__item .btn:hover {
  background-color: #FBEEEE;
}
.zh-modal .modal-dest-changer .dest-changer__item .btn + .btn,
.zh-modal .modal-dest-changer .dest-changer__item .item-current__disp + .btn {
  margin-top: 10px;
}
.zh-modal .modal-dest-changer .dest-changer__item .changer__item-list{
  display: flex;
  gap: 10px;
  flex-direction: column;
}
.zh-modal .modal-dest-changer .dest-changer__item .changer__item-list dt{
  font-size: 18px;
  font-weight: bold;
}
.zh-modal .modal-dest-changer .dest-changer__item .changer__item-list dd address{
  font-size: 18px;
}
.zh-modal .modal-dest-changer .dest-changer__item .item-current__disp{
  display:block;
  background: #c84545;
  padding: 15px;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  text-align: center;
}
.zh-modal .fieldset-vertical {
  margin: 0;
}
.zh-modal .fieldset-vertical .form-group {
  border-bottom: 1px #bfbfbf solid;
  padding: 25px 0;
  margin: 0;
}
.zh-modal .fieldset-vertical .form-group .form-label {
  margin: 3px 5px 10px 0;
  font-size: 18px;
  font-weight: bold;
}
.zh-modal .required:after {
  background-color: #ff5d5d;
  border-radius: 3px;
}
.zh-modal input[type="text"],
.zh-modal input[type="tel"],
.zh-modal input[type="email"],
.zh-modal input[type="search"],
.zh-modal input[type="password"],
.zh-modal input[type="url"],
.zh-modal input[type="number"],
.zh-modal select,
.zh-modal textarea {
  border: 1px #bfbfbf solid;
  border-radius: 5px;
  padding: 12px;
  width: 100%;
  appearance: none;
  font-size: 16px;
  background: #fff;
}

.zh-modal .modal-dest-form{
  margin-top:20px;
  background:#F8F8F9;
}
.zh-modal .modal-dest-form__header{
  padding:12px 10px;
  background: #004da0;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  line-height: 1.3;
  border-radius:10px 10px 0 0;
}
.zh-modal .modal-dest-form__body{
  padding: 0 15px 15px 15px;
}
.zh-modal .modal-dest-form__body .form-group:has(.half-width) .form-control{
  display:flex;
  gap:4px;
  justify-content:space-between;
  align-items:center;
}
.zh-modal .modal-dest-form__body .fieldset-vertical .form-group {
  padding: 15px 0;
}
.zh-modal .modal-dest-form__body .fieldset-vertical .form-group .form-label{
  margin: 0 0 5px 0;
  font-size: 14px;
}
.zh-modal .modal-dest-form__body .fieldset-vertical .constraint{
  margin:0 5px 5px;
  float:none;
  display:inline-block;
  vertical-align:middle;
  position:relative;
  top:-3px;
}
.zh-modal .modal-dest-form__body .fieldset-vertical .constraint span::after{
  display:block;
  padding:1px 5px 3px;
}
.zh-modal .modal-dest-form__body .fieldset-vertical input[type="text"],
.zh-modal .modal-dest-form__body .fieldset-vertical input[type="tel"],
.zh-modal .modal-dest-form__body .fieldset-vertical input[type="url"],
.zh-modal .modal-dest-form__body .fieldset-vertical textarea{
  padding:10px;
  font-size:12px;
}
.zh-modal .modal-dest-form__body .fieldset-vertical select{
  padding:10px;
  font-size:12px;
}
.zh-modal .modal-dest-form__body label{
  font-weight:bold;
  font-size:14px;
}
.zh-modal .modal-dest-form__body .half-width{
  width: calc(50% - 2px);
}
.zh-modal .modal-form__footer{
  padding: 15px 15px 30px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.zh-modal .modal-form__footer .btn{
  display: block;
  font-size: 14px;
  padding: 10px;
  border-radius:10px;
  background: #fff;
  border: 1px #000 solid;
  transition: all 0.3s ease;
}
.zh-modal .modal-form__footer .btn.btn-primary{
  border-color: #C84545; color: #C84545;
}
.zh-modal .modal-form__footer .btn.btn-cancel{
  border-color: #999; color: #595959;
}
.zh-modal .modal-form__footer .btn:hover{
  background: #616161;
  color: #fff;
  border-color: #616161;
}

/* coupon modal */
.zh-modal .modal-body:has(.available-coupon--list) {
  padding: 30px 0;
}
.zh-modal .available-coupon--list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.zh-modal .available-coupon--item {
  margin-bottom: 40px;
  padding-bottom:15px;
  border-bottom: 2px solid #bfbfbf;
}

.zh-modal .available-coupon--item table {
  width: 100%;
  border: 1px solid #bfbfbf;
  border-width: 2px 0 1px;
}

.zh-modal .available-coupon--item tr{
  border-bottom: 1px solid #bfbfbf;
}
.zh-modal .available-coupon--item th,
.zh-modal .available-coupon--item td {
  text-align: left;
  font-size:14px;
  padding: 10px;
}
.zh-modal .available-coupon--item th{
  background-color: #fafafa;
  font-weight: bold;
  width: 45%;
}

.zh-modal .available-coupon--note {
  font-size: 14px;
  margin-bottom: 5px;
  padding: 10px;
}

.zh-modal .available-coupon--actions {
  padding: 0 10px;
}
.zh-modal .available-coupon--number{
  text-align:right;
  padding: 0 15px;
  font-size: 14px;
}

@media screen and (min-width: 769px) {
  .modal-dialog.zh-modal {
    max-width: 920px;
    width: calc(100% - 50px);
  }
  .zh-modal .modal-header {
    font-size: 24px;
    padding: 15px 50px;
    min-height: 89px;
  }
  .zh-modal .modal-close {
    width: 36px;
    height: 36px;
    top: calc(50% - 18px);
    right: 20px;
    line-height: 30px;
    font-size: 22px;
  }
  .zh-modal .modal-body {
    padding: 50px 30px 15px;
  }

  .zh-modal .modal-body.has-form {
    padding: 30px 30px 0;
  }

  .zh-modal .skip-select {
    display: flex;
    align-items: center;
    gap: 0;
    justify-content: center;
    margin: 20px 0 0;
  }
  .zh-modal .modal-body-inner {
    width: fit-content;
    max-width: 640px;
    min-width: 480px;
    margin: 0 auto;
  }
  .zh-modal .modal-body.has-form .modal-body-inner {
    max-width: none;
    width: 100%;
  }

  .zh-modal .modal-body .skip-select label {
    display: block;
    margin: 0;
    font-size: 18px;
    white-space: nowrap;
  }
  .zh-modal .modal-body .select-style-wrap {
    width: 310px;
  }
  .zh-modal .modal-body .modal-note {
    font-weight: bold;
    flex-direction: row;
  }
  .zh-modal .modal-body:not(:has(.modal-footer)) {
    padding-bottom: 60px;
  }
  .zh-modal .modal-footer {
    padding: 10px 30px 50px;
    flex-direction: row;
  }
  .zh-modal .modal-footer .btn {
    max-width: 230px;
  }

  .zh-modal .modal-footer .modal-footer--note{
    font-size: 18px;
  }

  /* 定期商品追加 */
  .zh-modal .modal-body:has(.block-regular-sales-add--goods) {
    padding: 40px 60px;
  }
  .zh-modal .block-regular-sales-add--goods{
    margin-bottom: 20px;
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    width: 100%;
  }
  .zh-modal .block-regular-sales-add--goods-image{
    width: 240px;
  }
  .zh-modal .block-regular-sales-add--goods-image a{
    display: block;
    text-decoration: none;
  }
  .zh-modal .block-regular-sales-add--goods-image a::after{
    content: attr(title);
    font-size: 18px;
    font-weight: bold;
    display: block;
    margin-top: 10px;
  }
  .zh-modal .block-regular-sales-add--goods-info{
    width: calc(100% - 270px);
  }
  .zh-modal .block-regular-sales-add--goods-name{
    display: none;
  }
  .zh-modal .block-goods-price--qty-row{
    padding:20px 0;
    flex-wrap: nowrap;
    align-items: flex-start;
  }
  .zh-modal .block-goods-price--qty-label{
    width:240px;
    padding:0 20px 5px 0;
    font-size: 18px;
  }
  .zh-modal .block-goods-price--qty-unit{
    flex: none;
    width: 60px;
    padding-bottom:5px;
    font-size: 18px;
  }
  .zh-modal .block-goods-price--qty-detail{
    text-align: right;
    width: 100%;
  }
  .zh-modal .block-goods-price--on-sales-comment{
    font-size: 14px;
    padding: 4px 0 0;
    text-align: left;
  }
  .zh-modal .block-goods-price--on-sales-off-percent{
    font-size: 14px;
  }
  .zh-modal .block-goods-price--price{
    font-size: 28px;
  }
  .zh-modal .block-goods-price--price::after{
    font-size: 18px;
  }

  .zh-modal .block-goods-price--regular-repeat-default-price{
    font-size: 12px;
    font-weight: normal;
  }
  .zh-modal .block-regular-sales-add--qty{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
  }
  .zh-modal .block-regular-sales-add--qty input[type="number"]{
    width: 120px;
  }
  .zh-modal .block-regular-sales-add-sales-detail-append{
    margin-left: 270px;
  }
  .zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical{
    border:0;
  }
  .zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group{
    padding:20px 0;
  }
  .zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-label{
    font-size: 16px;
    font-weight: bold;
    padding:18px 5px 0 0;
    margin: 0;
    width: 4.5em;
    flex-basis: 4.5em;
  }
  .zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .constraint{
    width: 0;
  }
  .zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-control{
    column-gap: 16px;
    margin:0;
  }
  .zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-control label.radio{
    width: calc(50% - 8px);
  }
  .zh-modal .fieldset-vertical.block-regular-sales-add-sales-detail-append--item.fieldset-vertical .form-group .form-control .help-block{
    font-size:14px;
  }




  .zh-modal .modal-body:has(.subscription-items){
    padding:40px 60px;
  }
  .zh-modal .modal-body-inner:has(.subscription-items){
    width:auto;
    max-width: none;
  }

  .zh-modal .subscription-items{
    padding-left:280px;
  }
  .zh-modal .subscription-item--header{
    width: 240px;
    margin-left: -280px;
    float: left;
  }
  .zh-modal .subscription-item--header-image{
    margin-bottom: 15px;
  }
  .zh-modal .subscription-item--header-title{
    font-size:18px;
  }
  .zh-modal .subscription-item--unit{
    padding: 20px 0;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }
  .zh-modal .subscription-item--numbers{
    justify-content: space-between;
    font-size: 18px;
    width: 200px;
  }
  .zh-modal .subscription-item--price{
    width: calc(100% - 200px);
    padding-left:30px;
  }
  .zh-modal .subscription-item--price li{
    border:0;
  }
  .zh-modal .subscription-item--price-label {
    font-size: 14px;
    line-height: 1.75;
  }
  .zh-modal .subscription-item--price-discount{
    font-size: 14px;
  }
  .zh-modal .subscription-item--price-value{
    font-size: 28px;
  }
  .zh-modal .subscription-item--price-value.price::after{
    font-size: 16px;
  }
  .zh-modal .subscription-item--price-original {
    font-size: 14px;
  }
  .zh-modal .subscription-item--order{
    font-size: 18px;
  }
  .zh-modal .subscription-item--order input[type="number"]{
    width: 120px;
  }

  /* modal for destination confirm */
  .zh-modal .modal-guide {
    font-size: 18px;
    padding: 0 50px 20px;
    margin-bottom: 20px;
    text-align: center;
  }
  .zh-modal .modal-dest-list .modal-dest-item {
    font-size: 20px;
  }
  .zh-modal .modal-dest-list .modal-dest-item a {
    padding: 20px 20px 20px 0;
    color: #333;
    font-size: 20px;
    transition: all 0.3s ease;
  }
  .zh-modal .modal-dest-list .modal-dest-item a::after {
    width: 10px;
    height: 10px;
  }
  .zh-modal .modal-dest-list .modal-dest-item a:hover {
    color: #004da0;
  }

  .modal-body:has(.modal-dest-changer):not(:has(.modal-footer)){
    padding:25px 30px;
  }
  .modal-body:has(.modal-dest-changer) .modal-body-inner{
    width: 100%;
    max-width: none;
    min-width: 0;
  }

  .zh-modal .modal-dest-changer{
    display: flex;
    gap: 10px;
    justify-content:flex-start;
    flex-wrap: wrap;
  }

  .zh-modal .modal-dest-changer .dest-changer__item{
    padding:20px 25px;
    font-size: 18px;
    width: calc((100% - 20px) / 3);
  }
  .zh-modal .modal-dest-changer .dest-changer__item:not(:last-child){
    margin-bottom:0;
  }
  .zh-modal .modal-dest-changer .dest-changer__item .btn{
    padding:10px;
    font-size: 14px;
  }
  .zh-modal .modal-dest-changer .dest-changer__item .changer__item-list{
    height: 100%;
    display: flex;
    gap: 10px;
    flex-direction: column;
    justify-content: space-between;
  }
  .zh-modal .modal-dest-changer .dest-changer__item .changer__item-list dt{
    font-size: 18px;
    font-weight: bold;
  }
  .zh-modal .modal-dest-changer .dest-changer__item .changer__item-list dd:has(address){
    margin-bottom: 10px;
    flex: 1;
  }
  .zh-modal .modal-dest-changer .dest-changer__item .item-current__disp{
    padding: 10px;
  }
  /* -------------------------------------------------------- */
  .zh-modal .fieldset-vertical {
    margin: 0;
    border-top: 1px #bfbfbf solid;
  }
  .zh-modal .fieldset-vertical .form-group {
    border-top: 0;
    padding: 0;
    margin: 0;
  }
  .zh-modal .fieldset-vertical div.form-group:last-of-type {
    border-bottom: 1px #bfbfbf solid;
  }
  .zh-modal .fieldset-vertical .form-group .form-label {
    margin: 0;
    font-size: 20px;
    background: #fff;
    flex-basis: 260px;
  }
  .zh-modal .fieldset-vertical .form-group .constraint {
    background: #fff;
  }
  .zh-modal .fieldset-vertical .form-label + .constraint + .form-control {
    padding: 30px 20px;
  }

  .zh-modal input[type="text"],
  .zh-modal input[type="tel"],
  .zh-modal input[type="email"],
  .zh-modal input[type="search"],
  .zh-modal input[type="password"],
  .zh-modal input[type="url"],
  .zh-modal input[type="number"],
  .zh-modal select,
  .zh-modal textarea {
    width: 890px;
  }
  .zh-modal input[type="text"].fw,
  .zh-modal input[type="tel"].fw,
  .zh-modal input[type="email"].fw,
  .zh-modal input[type="search"].fw,
  .zh-modal input[type="password"].fw,
  .zh-modal input[type="url"].fw,
  .zh-modal input[type="number"].fw,
  .zh-modal select.fw,
  .zh-modal textarea.fw {
    width: 100%;
  }

  /* 勤務先住所登録モーダル（LP） */
  .zh-modal .modal-work-dest-form .fieldset-vertical .form-label + .constraint + .form-control {
    width: auto;
    min-width: 0;
    flex: 1 1 0;
  }
  .zh-modal .modal-work-dest-form input[type="text"],
  .zh-modal .modal-work-dest-form input[type="tel"] {
    width: 100%;
    max-width: 370px;
  }
  .zh-modal .modal-work-dest-form input[type="text"].fw,
  .zh-modal .modal-work-dest-form input[type="tel"].fw {
    max-width: none;
  }
  .zh-modal .modal-work-dest-form .select-style-wrap {
    max-width: 100%;
  }


  .zh-modal .modal-dest-form{
    margin-top:40px;
  }
  .zh-modal .modal-dest-form__header{
    padding:20px;
    font-size: 20px;
    text-align: left;
  }
  .zh-modal .modal-dest-form__body{
    padding: 0;
  }
  .zh-modal .modal-dest-form__body .form-group .form-control{
    margin: 0;
    padding: 20px;
  }
  .zh-modal .modal-dest-form__body .form-group:has(.half-width) .form-control{
    gap:10px;
  }
  .zh-modal .modal-dest-form__body .fieldset-vertical .form-group {
    padding:0;
  }
  .zh-modal .modal-dest-form__body .fieldset-vertical .form-group .form-label{
    margin: 0;
    font-size: 20px;
    flex-basis: 240px;
  }
  .zh-modal .modal-dest-form__body .fieldset-vertical .form-group .form-label label{
    font-size: 20px;
  }
  .zh-modal .modal-dest-form__body .fieldset-vertical .constraint{
    margin:0;
    display:flex;
    top:0;
    flex-basis: 50px;
  }
  .zh-modal .modal-dest-form__body .fieldset-vertical .help-block{
    font-size: 16px;
    color: #FF5D5D;
  }
  .zh-modal .modal-dest-form__body .fieldset-vertical input[type="text"],
  .zh-modal .modal-dest-form__body .fieldset-vertical input[type="tel"],
  .zh-modal .modal-dest-form__body .fieldset-vertical input[type="url"],
  .zh-modal .modal-dest-form__body .fieldset-vertical textarea{
    padding:10px;
    font-size:20px;
    width: 100%;
  }
  .zh-modal .modal-dest-form__body .fieldset-vertical select{
    padding:10px;
    font-size:20px;
    width: 100%;
  }
  .zh-modal .modal-dest-form__body label{
    font-weight:bold;
    font-size:14px;
  }
  .zh-modal .modal-dest-form__body .half-width{
    width: calc(50% - 5px);
  }
  .zh-modal .modal-dest-form__body .with-label{
    display:flex;
    align-items:center;
    justify-content:space-between;
  }
  .zh-modal .modal-dest-form__body .with-label label{
    width: 2.5em;
    text-align: center;
  }
  .zh-modal .modal-form__footer{
    padding: 30px 150px 50px;
    flex-direction: row-reverse;
    justify-content: space-between;
    gap: 20px;
  }
  .zh-modal .modal-form__footer .btn{
    padding: 15px;
  }
  .zh-modal .modal-form__footer .btn.btn-primary{
    flex-grow: 2;
  }
  .zh-modal .modal-form__footer .btn.btn-cancel{
    flex-grow: 1;
  }
  /* coupon modal */
  .zh-modal .modal-body:has(.available-coupon--list) {
    padding: 30px 40px;
  }
  .zh-modal .modal-body:has(.available-coupon--list) .modal-body-inner{
    max-width: none;
    width: 100%;
    margin: 0 auto;
  }
  .zh-modal .available-coupon--item {
    margin-bottom: 40px;
    padding-bottom:0px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
  }
  .zh-modal .available-coupon--item:last-child{
    margin-bottom: 20px;
  }
  .zh-modal .available-coupon--item table {
    width: 100%;
  }
  .zh-modal .available-coupon--item th,
  .zh-modal .available-coupon--item td {
    text-align: left;
    font-size:16px;
    padding: 15px;
  }
  .zh-modal .available-coupon--item th{
    width: 30%;
  }
  .zh-modal .available-coupon--note {
    font-size: 16px;
    margin-bottom:0;
    padding: 15px 15px 15px 0;
    width: 620px;
  }

  .zh-modal .available-coupon--actions {
    padding: 15px 0;
    width: calc(100% - 620px);
  }
  .zh-modal .available-coupon--number{
    text-align:right;
    padding: 0;
    font-size: 16px;
  }
}

  /* お客様番号入力モーダル（LP） */
  .zh-modal .modal-custno-form input[type="text"]{
    width: 400px;
  }

/* magnific popup z-index override */
.page-estimate .mfp-bg {
  z-index: 100001;
}
.page-estimate .mfp-wrap {
  z-index: 100002;
}

/* landing pages */
.zaiho-container .block-landingpage{
  overflow: hidden;
}
.zaiho-container .block-landingpage--header h1 {
  margin: 0;
  padding: 0;
}
.zaiho-container .block-landingpage--header h1 img {
  display: block;
  width: 100%;
  height: auto;
}
.zaiho-container .pane-landingpage-contents #frmLP {
  margin: 0;
  padding: 0;
}
.zaiho-container .block-landingpage-form {
  padding: 30px 15px;
  border: none;
}
.zaiho-container .block-landingpage-form .block-landingpage-form--goods-title {
  font-size: 24px;
  font-weight: bold;
  padding: 0 0 15px;
  display: flex;
  gap: 5px;
  align-items: center;
  border-bottom: 1px solid #888;
}
.zaiho-container .block-landingpage .form-error,
#js-customerno-modal-overlay .form-error,
#js-dest-ajax-modal .form-error{
  display: block;
  color: #fb0606;
  position: relative;
  background: url(../../img/icon/icn_alert.png) no-repeat 15px center #ffe9e9;
  background-size: 22px;
  margin-bottom: 10px;
  border-radius: 10px;
  padding: 15px 15px 15px 50px;
}
/* 中身が空のプレースホルダ(regenerate系)は警告ボックスごと非表示にする */
.zaiho-container .block-landingpage .form-error:empty,
#js-customerno-modal-overlay .form-error:empty,
#js-dest-ajax-modal .form-error:empty{
  display: none;
  margin: 0;
  padding: 0;
  background: none;
}
/* 以下の項目は見た目統一の対象外とし、元のシンプルな表示に戻す
   （注文者氏名・注文者カナ・生年月日・メールアドレス・注文者電話番号・
     注文者郵便番号・注文者都道府県・注文者住所（郡市区）・注文者住所2・
     パスワード・プライバシーポリシー・
     勤務先電話番号・勤務先郵便番号・勤務先都道府県・
     勤務先住所（郡市区）・勤務先住所2・勤務先住所3・
     メールマガジン・追加認証機能・
     注文拡張情報（その他）） */
.zaiho-container .block-landingpage .form-error.js-efo-form-error-s_name,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-s_kana,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-birth,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-s_mail,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-s_tel,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-s_zip,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-s_pref,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-s_addr,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-s_addr2,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-pwd,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-privacy-policy,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-work_tel,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-work_zip,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-work_pref,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-work_addr,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-work_addr2,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-work_addr3,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-mailnews,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-spoofing_protection,
.zaiho-container .block-landingpage .form-error.js-efo-form-error-sales-append{
  display: block;
  position: static;
  background: none;
  border-radius: 0;
  margin: 0;
  padding: 0;
  color: #a94442;
}

.zaiho-container .block-landingpage-form .block-landingpage-form--goods-title img {
  width: 30px;
  height: auto;
}
.zaiho-container .block-lp--goods-list {
  margin-bottom: 20px;
}
.zaiho-container .block-landingpage-form .form-error + .block-lp--goods-list{
  margin-top: 30px;
}

.zaiho-container .block-lp--goods-item {
  padding: 10px 15px;
  margin: 0 0 20px;
  border:3px #d6ddf3 solid;
  display: flex;
  gap: 15px;
  flex-wrap: wrap;
  align-items: flex-start;
}
.zaiho-container .block-lp--goods-list .block-lp--goods-item:only-child {
  padding:0;
  border:0;
}
.zaiho-container .block-lp--goods-item-content .block-goods-price{
  margin-top: 0;
}

.zaiho-container .block-lp--goods-item .block-lp--goods-item-image {
  width: 160px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-image img {
  width: 100%;
  height: auto;
  display: block;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-container {
  display: contents;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-primary {
  width: calc(100% - 175px);
  display: flex;
  flex-direction: column-reverse;
  gap: 10px;
  justify-content: center;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-name {
  font-size: 17px;
  font-weight: bold;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-specs {
  display: flex;
  gap: 2px;
  flex-wrap: wrap;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-specs img {
  display: block;
  width: auto;
  height: 19px;
}

.zaiho-container .block-goods-price {
  margin: 25px 0 0;
}

/*-- 在庫切れの場合 --*/
.zaiho-container .block-goods-price:has(.block-no-stock){
  display: flex;
  flex-direction: column;
  position: relative;
}
.zaiho-container .block-goods-price:has(.block-no-stock) .add-cart--float{
  display:none !important;
}

.zaiho-container .block-goods-price:has(.block-no-stock) .block-goods-code,
.zaiho-container .block-goods-price:has(.block-no-stock) .block-goods-stock{
  order: 0;
}
.zaiho-container .block-goods-price:has(.block-no-stock) .block-arrival-notice,
.zaiho-container .block-goods-price:has(.block-no-stock) .block-no-stock{
  order: 0;
  margin: 30px 0 10px;
  padding: 0 70px 0 0;
  width: 100%;
}
.zaiho-container .block-goods-price:has(.block-no-stock) .block-no-stock{
  margin: 30px 0 10px;
  padding: 0 70px 0 0;
}

.zaiho-container .block-goods-price:has(.block-no-stock) .block-add-cart{
  width:60px;
  margin: 30px 0 10px;
  padding: 0;
  position: absolute;
  top: auto;
  right: 0;
  bottom:40px;
}
.zaiho-container .block-goods-price:has(.block-no-stock) .block-add-cart + .block-contact-about-goods{
  text-align: center;
  margin: 0 0 20px 0;
}
/*-- //在庫切れの場合 --*/
/*-- //在庫切れでかつ入荷案内がある場合 --*/
.zaiho-container .block-goods-price:has(.block-arrival-notice):has(.block-no-stock)  .block-no-stock{
  margin: 0;
}

.zaiho-container .block-goods-price .block-goods-price--price {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  gap: 5px;
  margin: 0 0 15px;
  padding: 0;
}

.zaiho-container .block-goods-price .block-cart--note{
  padding: 0 0 10px 0;
  margin-top: 10px;
}

.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price {
  gap: 3px;
}
.zaiho-container .block-goods-price .block-goods-price--on-sales {
  display: flex;
  align-items: center;
  gap: 5px;
  width: 100%;
}

.zaiho-container .block-goods-price .block-goods-price--on-sales-comment {
  color: #db483b;
  font-size: 13px;
  font-weight: bold;
}
.zaiho-container .block-goods-price .block-goods-price--on-sales-off-percent {
  font-size: 11px;
  background: #db483b;
  color: #fff;
  padding: 2px 4px;
  margin: 0;
  font-weight: bold;
  border-radius: 4px;
}

.zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--value {
  font-weight: bold;
  line-height: 1.2;
  font-size: 30px;
  font-feature-settings: "palt";
}
.zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--value.price::after {
  font-size: 15px;
}
.zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--value.is-sale {
  color: #db483b;
}
.zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--value .unit {
  font-size: 15px;
  color: inherit;
}
.zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--points {
  font-size: 15px;
  display: flex;
  align-items: center;
  padding: 0 0 0 5px;
  position: relative;
  top: -2px;
}

.zaiho-container .block-goods-price .block-goods-price--price .regular-price {
  font-size: 13px;
  width: 100%;
  order: 2;
}

.zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--points::before {
  content: "P";
  font-size: 80%;
  margin-right: 2px;
  background: #bbd1dd;
  text-align: center;
  border-radius: 50%;
  aspect-ratio: 1/1;
  width: 20px;
  height: 20px;
  display: block;
  line-height: 20px;
}
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .regular-price del {
  color: #b9b9b9;
}

.zaiho-container .block-lp--goods-item .block-lp--goods-item-code,
.zaiho-container .block-lp--goods-item .block-lp--goods-item-stock {
  font-size: 12px;
  font-weight: 500;
  padding: 0 5px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-stock {
  margin-bottom: 20px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-delivery {
  font-size: 16px;
  padding: 0 5px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-delivery .asuchaku {
  margin-bottom: 10px;
  font-weight: 500;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-delivery .asuchaku:has(.asuchaku-label) {
  padding-left: 60px;
}

.zaiho-container .block-lp--goods-item .block-lp--goods-item-delivery .asuchaku .asuchaku-label {
  background: #c84545;
  color: #fff;
  font-size: 12px;
  padding: 2px 6px;
  display: block;
  font-weight: normal;
  float: left;
  margin-top: 2px;
  margin-left: -60px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-delivery .asuchaku .asuchaku-time {
  color: #c84545;
  font-weight: bold;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase {
  width: 100%;
  display: flex;
  gap: 10px;
  flex-direction: column;
  padding: 0 5px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl,
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label {
  display: flex;
  gap: 10px;
  justify-content: flex-start;
  align-items: flex-start;
  font-size: 16px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dt,
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .control-label {
  font-size: 16px;
  font-weight: bold;
  width: 4.5em;
  display: block;
  padding-top: 12px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .constraint{
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control .form-error{
  width: 100%;
  font-size: 14px;
  font-weight: normal;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dd,
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control{
  width: calc(100% - 4.5em);
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dd{
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: flex-start;
}

.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dd .select-style-wrap {
  width: 90px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control {
  display: flex;
  column-gap: 10px;
  row-gap: 5px;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control label.radio {
  border: 1px #bfbfbf solid;
  border-radius: 5%;
  width: 90px;
  padding: 12px 12px 12px 36px;
  font-size: 16px;
  background-position: 12px center;
  background-repeat: no-repeat;
  cursor: pointer;
  margin:0;
  background:url(../../img/icon/radio-default.png) no-repeat 12px center #fff;
  background-size: 20px auto;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control label.radio:has(input[type="radio"]:checked) {
  background-image: url(../../img/icon/radio-checked.png);
  background-color: #d6ddf3;
  color: #004da0;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control label.radio input[type="radio"] {
  position: absolute;
  left: -9999px;
}
.zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control .help-block{
  width: 100%;
  font-size: 12px;
  font-weight: normal;
}

.zaiho-container .block-goods-price.has-price-variation {
  padding-top: 0;
  margin-bottom: 10px;
  border-top: 1px solid #bfbfbf;
}

.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price {
  border-bottom: 1px solid #bfbfbf;
  padding: 10px 0 10px 100px;
  margin-bottom: 0;
  position: relative;
}

.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .block-goods-price--value {
  font-size: 24px;
}
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .block-goods-price--value.is-sale .price {
  color: #db483b;
}
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price + .goods-detail-description {
  margin-top: 15px;
}

.zaiho-container .block-goods-price:not(.has-price-variation) .block-goods-price--price:has(.block-goods-price--qty-label){
  position: relative;
  padding: 0 0 0 100px;
}
.zaiho-container .block-goods-price:not(.has-price-variation) .block-goods-price--price:has(.block-goods-price--qty-label) .block-goods-price--qty-label{
  transform: translateY(calc(-50% + 3px));
}

.zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--qty-label {
  background: #9e846b;
  color: #fff;
  font-weight: bold;
  font-size: 12px; /* 11px */
  padding: 4px; /* 2px 4px */
  width: 90px;
  text-align: center;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.zaiho-container .line-break-unit{
  display: inline-block;
  white-space: nowrap;
}

.zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--value .unit{
  font-size: 12px;
  padding-right: 5px;
}
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .block-goods-price--value .price::after {
  font-size: 12px;
}
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .regular-price {
  font-size: 13px;
  font-weight: normal;
  padding: 0 0 5px 0;
}
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .regular-price .price,
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .block-goods-price--value .regular-price .price {
  color: #333;
}
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .regular-price .price::after {
  font-size: 13px;
}
.zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .regular-price del {
  color: #000;
}

.zaiho-container .block-landingpage--wrapper .block-lp--goods-list-note {
  background: #e7f0f8;
  padding: 15px;
  font-size: 16px;
  text-align: center;
  margin: 0 -15px;
}
.zaiho-container .block-landingpage--wrapper .block-lp--goods-list-note.goods-list-note-bottom {
  margin:0 0 40px;
}

.zaiho-container .block-landingpage-login--member {
  padding: 30px 15px;
}
.zaiho-container .block-landingpage-member--header h2 {
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 20px;
  padding: 0;
  border: 0;
}
.zaiho-container .block-landingpage-member--header h2 span {
  font-size: 18px;
  display: block;
}
.zaiho-container .block-landingpage-member--header h3 {
  font-size: 23px;
  margin: 0 0 10px;
  border: 0;
  padding: 0;
}
.zaiho-container .block-landingpage-member--header img {
  width: 30px;
  height: auto;
  margin-right: 5px;
  vertical-align: bottom;
  position: relative;
}
.zaiho-container .block-landingpage-member--header-msg {
  font-size: 16px;
  margin: 0 0 20px;
  font-weight: 500;
}
.zaiho-container .block-landingpage-member--header-note {
  font-size: 16px;
  margin: 0 0 20px;
}

.zaiho-container .block-landingpage-login--member-body {
  border: 5px #d6ddf3 solid;
  padding: 30px 20px;
  display: block;
}
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-login--member-body .action-buttons {
  margin: 0;
  padding: 0;
}
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-login--member-body .action-buttons .btn-primary {
  background: #c84545;
  color: #fff;
  font-weight: bold;
  padding: 16px;
  border-radius: 10px;
  font-size: 16px;
  text-align: center;
  text-decoration: none;
  display: block;
  width: 100%;
}
.zaiho-container .block-landingpage-member--form {
  padding: 30px 15px 0;
  background: #f7f8f9;
}
.zaiho-container .pane-landingpage-contents #frmLP .form-group {
  border-bottom: 1px solid #bfbfbf;
  padding: 25px 0;
  margin: 0;
}
.zaiho-container .pane-landingpage-contents #frmLP .form-label {
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 10px;
}
.zaiho-container .pane-landingpage-contents #frmLP .form-control.twin {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.zaiho-container .pane-landingpage-contents #frmLP .form-control.twin > span {
  flex: 1;
  width: calc(50% - 5px);
}
.zaiho-container .pane-landingpage-contents #frmLP .form-control.twin .help-block {
  margin-top: 5px;
  width: 100%;
}
.zaiho-container .block-landingpage .fieldset-vertical {
  margin: 0;
}
.zaiho-container .block-landingpage .fieldset-vertical .form-label,
.fieldset-vertical .constraint {
  margin: 0 0 0 5px;
  vertical-align: middle;
}
.zaiho-container .block-landingpage .help-block {
  margin: 5px 0 0;
  font-size: 14px;
}
.zaiho-container .block-landingpage .help-block.a-rt {
  text-align: right;
}
.zaiho-container .block-landingpage .form-group .select-style-wrap {
  width: 100%;
}
.zaiho-container .block-landingpage .form-control.form-birth .select-style-wrap {
  width: calc((100% / 3) - 35px);
  display: inline-block;
}
.zaiho-container .block-landingpage .form-control.form-birth .select-style-wrap:not(:first-of-type) {
  margin-left: 10px;
}
.zaiho-container .block-landingpage .help-block.alert {
  background: transparent;
  color: #ff5d5d;
  padding: 0;
  margin: 5px 0 0;
  border: 0;
}
.zaiho-container .block-landingpage .use-company {
  padding: 30px 0 0;
}
.zaiho-container .block-landingpage .use-company label {
  font-size: 20px;
  font-weight: bold;
  text-align: center;
  display: block;
  margin: 0 0 10px;
  padding: 10px 0 10px 26px;
}
.zaiho-container .block-landingpage .custom-checkbox {
  padding: 5px 0 5px 35px;
  background: url(../../img/icon/checkbox-default.png) no-repeat left 10px;
  background-size: 28px;
  display: block;
  font-size: 16px;
}
.zaiho-container .block-landingpage .custom-checkbox:has(input:checked) {
  background-image: url(../../img/icon/checkbox-checked.png);
}
.zaiho-container .block-landingpage .custom-checkbox input[type="checkbox"] {
  display: none;
}
.zaiho-container .block-landingpage .use-company--note {
  font-size: 16px;
  margin: 0 0 20px;
}
.zaiho-container .block-landingpage .company-info {
  display: none;
  padding-bottom: 40px;
}
.zaiho-container .block-landingpage .company-info .action {
  padding: 10px 0;
  margin: 0;
}
.zaiho-container .block-landingpage .company-info .action .btn.clear-fields {
  border: 1px solid #c84545;
  color: #c84545;
  background: #fff;
  padding: 16px;
  border-radius: 5px;
  font-size: 18px;
  text-align: center;
  text-decoration: none;
  display: block;
  width: 100%;
}
.zaiho-container .block-landingpage .block-landingpage-dest {
  border: 2px solid #bfbfbf;
  border-width: 2px 0;
  background: #fff;
  padding: 30px 15px;
  margin: 30px -15px 0;
}
.zaiho-container .block-landingpage .block-landingpage-member--form-wrap .block-landingpage-member--form .block-landingpage-dest {
  margin: 30px -15px 0;
  padding: 30px 15px;
  border: 1px solid #bfbfbf;
  border-width: 1px 0;
}

.zaiho-container .block-landingpage .block-landingpage-dest .fieldset-vertical {
  display: flex;
  gap: 10px;
  justify-content: space-between;
  align-items: center;
  padding: 0 10px;
}

/* radioをcustom-raidoとして局所的に使う */
.zaiho-container .block-landingpage .block-landingpage-mailmag label.radio,
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection label.radio,
.zaiho-container .block-landingpage .block-landingpage-delivery-spec label.radio{
  padding: 5px 0 5px 30px;
  background: url(../../img/icon/radio-default.png) no-repeat left center;
  background-size: 20px;
  display: block;
  cursor:pointer;
}
.zaiho-container .block-landingpage .block-landingpage-mailmag label.radio:has(input[type="radio"]:checked),
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection label.radio:has(input[type="radio"]:checked),
.zaiho-container .block-landingpage .block-landingpage-delivery-spec label.radio:has(input[type="radio"]:checked) {
  background-image: url(../../img/icon/radio-checked.png);
}
.zaiho-container .block-landingpage .block-landingpage-mailmag label.radio.custom-radio--blk:has(input[type="radio"]:checked),
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection label.radio.custom-radio--blk:has(input[type="radio"]:checked),
.zaiho-container .block-landingpage .block-landingpage-delivery-spec label.radio.custom-radio--blk:has(input[type="radio"]:checked) {
  background-image: url(../../img/icon/radio-checked-blk.png);
}
.zaiho-container .block-landingpage .block-landingpage-mailmag label.radio input[type="radio"],
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection label.radio input[type="radio"],
.zaiho-container .block-landingpage .block-landingpage-delivery-spec label.radio input[type="radio"] {
  display: none;
}
/* //radioをcustom-raidoとして局所的に使う */

.zaiho-container .block-landingpage .block-landingpage-dest .fieldset-vertical .custom-radio,
.zaiho-container .block-landingpage .block-landingpage-mailmag .fieldset-vertical .radio,
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection .fieldset-vertical .radio,
.zaiho-container .block-landingpage .block-landingpage-delivery-spec .fieldset-vertical .radio {
  width: 100%;
}
.zaiho-container .block-landingpage .custom-radio,
.zaiho-container .block-landingpage .block-landingpage-mailmag label.radio,
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection label.radio,
.zaiho-container .block-landingpage .block-landingpage-delivery-spec label.radio{
  border: 1px #bfbfbf solid;
  border-radius: 5px;
  /*width: 90px;*/
  padding: 12px 9px 12px 34px;
  font-size: 16px;
  background-position: 12px center;
  background-repeat: no-repeat;
  cursor: pointer;
  margin: 0;
  background-color: #fff;
  flex: 1;
  transition: all 0.3s ease;
}
.zaiho-container .block-landingpage .custom-radio:hover,
.zaiho-container .block-landingpage .block-landingpage-mailmag label.radio:hover,
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection label.radio:hover,
.zaiho-container .block-landingpage .block-landingpage-delivery-spec label.radio:hover {
  background-color: #d6ddf3;
}
.zaiho-container .block-landingpage .custom-radio:has(input[type="radio"]:checked),
.zaiho-container .block-landingpage .block-landingpage-mailmag label.radio:has(input[type="radio"]:checked),
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection label.radio:has(input[type="radio"]:checked),
.zaiho-container .block-landingpage .block-landingpage-delivery-spec label.radio:has(input[type="radio"]:checked) {
  background-color: #d6ddf3;
  color: #004da0;
  font-weight: bold;
}
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-dest .form-group {
  padding: 20px 0 0;
  border: 0;
}
.zaiho-container .block-landingpage .block-landingpage-mailmag {
  padding: 30px 15px 10px;
  margin: 0 -15px;
  border-bottom: 1px solid #bfbfbf;
}
.zaiho-container .block-landingpage .block-member-info--message {
  font-size: 16px;
  margin: 0;
  padding-bottom: 20px;
}
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-mailmag .fieldset-vertical,
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-pswd .fieldset-vertical,
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-spoofing-protection .fieldset-vertical {
  margin: 0;
  border-top: 1px solid #bfbfbf !important;
  padding: 0;
}
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-member--form .fieldset-vertical {
  border: 0 !important;
}

.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-mailmag .form-group {
  border: 0;
}
.zaiho-container .block-landingpage .block-landingpage-mailmag .form-control > span {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}
.zaiho-container .block-landingpage .block-landingpage-mailmag .form-control > span .custom-radio
.zaiho-container .block-landingpage .block-landingpage-mailmag .form-control > span .radio {
  flex: 1;
  width: 100%;
  margin: 0;
  letter-spacing: -0.05em;
}
.zaiho-container .block-landingpage .block-landingpage-pswd {
  padding: 30px 15px 0;
  margin: 0 -15px;
  border-bottom: 1px solid #bfbfbf;
}
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-pswd .form-group {
  border: 0;
}
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection {
  padding: 30px 15px 0;
  margin: 0 -15px;
  border-bottom: 1px solid #bfbfbf;
}
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection .block-member-info--message {
  margin: 0 0 20px;
  padding: 0;
}
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection .form-control {
  padding: 10px 0 0;
}
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-spoofing-protection .form-group {
  border: 0;
}
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection .form-control > span {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 20px;
}
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection .form-control > span .custom-radio {
  flex: 1;
  width: 100%;
  margin: 0;
  letter-spacing: -0.05em;
}
.zaiho-container .block-landingpage .block-landingpage-spoofing-protection .fieldset-vertical {
  margin: 0;
  border-top: 1px solid #bfbfbf !important;
  padding: 0;
}
.zaiho-container .block-landingpage .block-landingpage-privacy-agreement {
  padding: 30px 15px 0;
  margin: 0 -15px;
}
.zaiho-container .block-landingpage .block-landingpage-member--header {
  border-bottom: 1px solid #bfbfbf;
}
.zaiho-container .block-landingpage .block-landingpage-privacy-agreement .block-landingpage-member--header {
  border-bottom: 0;
}
.zaiho-container .block-landingpage .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement {
  background: #ddd;
  margin: 0 -15px 40px;
  padding: 20px 15px;
  border-radius: 5px;
}
.zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-group {
  border: 0;
  padding: 0;
  margin: 0;
  display: flex;
  gap: 10px;
  align-items: flex-start;
}
.zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-group .checkbox.custom-checkbox {
  background-position: 0;
}
.zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-control {
  position: relative;
  padding-left: 24px;
  font-size: 16px;
}
.zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-control input {
  position: absolute;
  left: 0;
  top: 5px;
}
.zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-control .block-order-estimate--order-terms-link {
  display: block;
  padding: 0;
}
.zaiho-container .block-landingpage .block-order-estimate--order-terms-link {
  padding: 10px 0 0 35px;
}
.zaiho-container .block-landingpage .block-landingpage-delivery-spec {
  padding: 30px 15px 0;
  margin: 0 -15px;
  border-bottom: 1px solid #bfbfbf;
}
.zaiho-container .block-landingpage .block-landingpage-form--spec-content {
  padding: 0;
  border: 0;
  margin: 0;
  background: transparent;
}
.zaiho-container .block-landingpage .block-landingpage-form--spec-content .form-label {
  display: none;
}

.zaiho-container .block-landingpage .block-landingpage-form--delivery-method{
  display: flex;
  gap: 10px;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 30px;
}
.zaiho-container .block-landingpage .block-landingpage-form--delivery-method .custom-radio {
  flex: 1;
}

.zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dt,
.zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--time-spec dt {
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 10px;
  display: flex;
  align-items: center;
}
.zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dt .constraint,
.zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--time-spec dt .constraint {
  float: none;
  display: block;
  margin: 0 0 0 10px;
  position: relative;
  top: -2px;
}
.zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dd,
.zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--time-spec dd {
  margin: 0 0 20px;
  font-size: 18px;
}
.zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-form--spec-content .form-group {
  border-bottom: 0 !important;
}
.zaiho-container .block-landingpage #method_pay h3 {
  display: block;
}
.zaiho-container .block-landingpage .block-order-method--payment-method-select .custom-radio {
  width: 100%;
  padding: 6px 6px 6px 34px;
  background-position: 12px center;
  background-repeat: no-repeat;
  border: 0;
  border-radius: 5px;
  margin: 0;
  cursor: pointer;
}
.zaiho-container .block-landingpage .block-order-method--payment-method-select .custom-radio:has(input[type="radio"]:checked) {
  background-color: #d6ddf3;
}
.zaiho-container .block-landingpage .block-landingpage-payment-method {
  padding: 30px 15px;
  margin: 0 -15px;
  background: #fff;
}
.zaiho-container .block-landingpage .block-order-method--payment-method-content {
  padding: 20px 0 0;
}
.zaiho-container .pane-landingpage-contents #frmLP .action-buttons.bottom {
  border-top: 1px solid #bfbfbf;
  padding: 40px;
  margin: 0 -15px;
}
.zaiho-container .block-landingpage .action-buttons .btn.btn-primary {
  background: #4a9f92;
  color: #fff;
  padding: 18px;
  border-radius: 10px;
  font-size: 18px;
  width: 100%;
  max-width: 286px;
  font-weight: bold;
  border: none;
}

.zaiho-container .block-landingpage .block-landingpage-member--form-wrap {
  padding: 10px 0;
  background: #f7f8f9;
}
.zaiho-container .block-landingpage .block-landingpage-member--form {
  padding: 30px 15px 0;
  background: transparent;
  border: 0;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest {
  border: 0;
  margin: 0 0 50px;
  padding: 0;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-member--header {
  border-bottom: 0;
  margin-bottom: 20px;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-list {
  border: 5px #d6ddf3 solid;
  padding: 10px;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item {
  border-radius: 10px;
  padding: 15px;
  margin-bottom: 15px;
  position: relative;
  font-size: 16px;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-select .custom-radio {
  border: 0;
  padding: 5px 0 5px 30px;
  background-color: transparent;
  background-position: left center;
  font-size: 16px;
  width: auto;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item {
  border-radius: 10px;
  padding: 15px;
  margin-bottom: 15px;
  position: relative;
  font-size: 16px;
  border: 0;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -8px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #bfbfbf;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 5px;
  background:
    url(../../img/icon/gray-dot.png) no-repeat left center,
    url(../../img/icon/gray-dot.png) no-repeat right center;
  background-size: contain;
}

.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:last-child,
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:last-of-type,
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:only-child{
  margin-bottom: 0;
}

.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:last-child::before,
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:last-child::after,
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:last-of-type::before,
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:last-of-type::after,
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:only-child::before,
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-items .block-landingpage-dest-item:only-child::after {
  display: none;
  content: none;
}

.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item:has(input:checked) {
  background: #f0f2f2;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item:has(input:checked) .custom-radio:has(input[type="radio"]:checked) {
  background-color: transparent;
}

.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest--address {
  font-size: 16px;
  padding: 5px 0 5px 30px;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest--update {
  padding: 10px 15px 0;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .btn.btn-default {
  border: 1px #c84545 solid;
  border-radius: 8px;
  padding: 10px;
  background: #fff;
  color: #c84545;
  font-size: 16px;
  transition: all 0.3s ease;
  width: 100%;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-delivery-spec {
  padding: 0;
  margin: 0;
  border: 0;
}
.zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-member--header {
  /*border-bottom: 1px solid #bfbfbf;*/
  padding: 0;
  margin: 0;
}

/* subscription */
.zaiho-container .block-landingpage .block-order-method--regular-content {
  padding: 0;
  border: 0;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle {
  padding: 20px 0;
  margin-bottom: 50px;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type{
  border:0;
  background:transparent;
  padding:0;
  margin:0 0 50px;
  padding-bottom: 30px;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type dt{
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 10px;
}

.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-timing-m{
  clear: both;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select{
  margin: 20px 0 0;
  width: 100%;
  border-radius:10px 10px 0 0;
  padding: 20px 20px 0;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select label.radio{
  padding: 0 0 0 25px;
  background: url(../../img/icon/radio-default.png) no-repeat left center;
  background-size: 18px;
  display: block;
  font-size: 16px;
  font-weight: normal;
  margin: 0;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select label.radio input[type="radio"] {
  display: none;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select label.radio:has(input[type="radio"]:checked) {
  background-image: url(../../img/icon/radio-checked.png);
  background-color: #f0f2f2;
  border-color: #004da0;
  font-weight: bold;
  color: #004da0;
}

.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type{
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  margin-bottom: 30px;
}

.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type input[type="radio"] {
  display: none;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type label.radio {
  padding: 10px 10px 10px 35px;
  background-image: url(../../img/icon/radio-default.png);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: 18px;
  display: block;
  border: 1px #a1a1a1 solid;
  border-radius: 5px;
  font-size: 16px;
  max-width: 110px;
  font-weight: normal;
  margin: 0;
  flex: 1;
  transition: all .3s ease;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type label.radio:hover {
  background-color: #e7f0f8;
}

.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type input[type="radio"]:checked + label.radio {
  background-image: url(../../img/icon/radio-checked.png);
  background-color: #e7f0f8;
  border-color: #004da0;
  font-weight: bold;
  color: #004da0;
}


.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select:has(input[type="radio"]:checked),
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select:has(input[type="radio"]:checked) + .block-regular-cycle--select-dm,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select:has(input[type="radio"]:checked) + .block-regular-cycle--select-wm{
  background-color: #f3f5f5;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--select-dm,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--select-wm{
  width: 100%px;
  border-radius:0 0 10px 10px;
  padding: 10px 20px 20px;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .select-date{
  margin:10px 0;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--select-dm .help-block,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--select-wm .help-block {
  font-size: 14px;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select .custom-radio{
  padding: 0 0 0 34px;
  border:0;
  background-color:transparent;
  background-position: left center;
  width:fit-content;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle-item:not(:last-child),
.zaiho-container .block-landingpage .block-order-method--regular-cycle > .help-block:first-child,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type {
  margin-bottom: 50px;
  position: relative;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle-item:not(:last-child)::after,
.zaiho-container .block-landingpage .block-order-method--regular-cycle > .help-block:first-child::after,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type::after,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type::after {
  content: "";
  display: block;
  position: absolute;
  bottom: -23px;
  left: 0;
  width: 100%;
  height: 1px;
  background: #bfbfbf;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle-item:not(:last-child)::before,
.zaiho-container .block-landingpage .block-order-method--regular-cycle > .help-block:first-child::before,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type::before,
.zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type::before {
  content: "";
  display: block;
  position: absolute;
  bottom: -25px;
  left: 0;
  width: 100%;
  height: 5px;
  background:
    url(../../img/icon/gray-dot.png) no-repeat left center,
    url(../../img/icon/gray-dot.png) no-repeat right center;
  background-size: contain;
}
.zaiho-container .block-landingpage .block-order-method--regular-cycle-item h3 {
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 10px;
}
.zaiho-container .block-landingpage .block-regular-cycle--cycle-type {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
.zaiho-container .block-landingpage .block-regular-cycle--cycle-type li {
  margin: 0;
  padding: 0;
  flex: auto;
}
.zaiho-container .block-landingpage .block-regular-cycle--cycle-type li .custom-radio {
  width: 100%;
}
.zaiho-container .block-landingpage .block-regular-cycle--cycle-timing .custom-radio {
  border: 0;
  padding: 6px 6px 6px 24px;
  background-position: left center;
  background-color: transparent;
  cursor: pointer;
  width: 100%;
  font-size: 16px;
}
.zaiho-container .block-landingpage .block-regular-cycle--cycle-timing .custom-radio:has(input[type="radio"]:checked) {
  background-color: transparent;
}
.zaiho-container .block-landingpage .block-regular-cycle--deliv_date {
  margin: 0;
  padding: 0;
  border: 0;
}
.zaiho-container .block-landingpage .block-regular-cycle--deliv_date dt {
  font-size: 18px;
  font-weight: bold;
  padding: 15px;
}
.zaiho-container .block-landingpage .block-regular-cycle--deliv_date dd {
  font-size: 20px;
  font-weight: bold;
  padding: 15px;
}
.zaiho-container .block-landingpage .block-landingpage-payment-method {
  padding: 30px 15px 30px;
}

@media screen and (min-width: 769px) {
  .zaiho-container .pane-landingpage-contents .container {
    width: auto;
    max-width: none;
  }
  .zaiho-container .block-landingpage-form {
    margin: 0 auto;
    padding: 100px 0;
    max-width: 1200px;
  }
  .zaiho-container .block-landingpage-form .block-landingpage-form--goods-title {
    font-size: 30px;
    padding: 0;
    margin: 0 0 30px;
    border-bottom:0;
  }

  .zaiho-container .block-landingpage .form-error,
  #js-customerno-modal-overlay .form-error,
  #js-dest-ajax-modal .form-error{
    color: #fb0606;
    position: relative;
    background: url(../../img/icon/icn_alert.png) no-repeat 15px center #ffe9e9;
    background-size: 22px;
    margin-bottom: 10px;
    border-radius: 10px;
    padding: 15px 15px 15px 50px;
  }
  .zaiho-container .block-lp--goods-list {
    margin-bottom: 0;
  }
  .zaiho-container .block-landingpage-form .form-error + .block-lp--goods-list{
    margin-top: 50px;
  }

  .zaiho-container .block-lp--goods-item {
    padding: 30px;
    flex-direction: row;
    gap: 25px;
    flex-wrap: nowrap;
    align-items: flex-start;
    margin-bottom: 40px;
  }
  .zaiho-container .block-lp--goods-list .block-lp--goods-item:only-child {
    padding:30px 0 0;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-image {
    width: 275px;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-container {
    display: block;
    width: calc(100% - 275px - 390px - 50px);
    padding: 20px 0 0;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-primary {
    display: flex;
    flex-direction: column;
    gap: 15px;
    width: auto;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-name {
    font-size: 26px;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-specs {
    gap: 4px;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-specs img {
    height: 24px;
  }
  .zaiho-container .block-goods-price {
    padding: 30px 0;
    margin: 20px 0 15px;
    border-bottom: 1px solid #bfbfbf;
    width: 100%;
    align-self: flex-end;
  }
  .zaiho-container .block-lp--goods-list .block-goods-price {
    border-top: 0;
    padding: 0;
    margin-top: 10px;
  }

  .zaiho-container .pane-goods-right-side .block-goods-price {
    border-bottom: 0;
  }

  .zaiho-container .block-goods-price.has-price-variation {
    border-bottom: 0;
    padding: 0;
    margin-top: 0;
  }
  .zaiho-container .block-goods-price .block-goods-price--price {
    padding: 0;
    margin: 0 0 25px;
  }

  .zaiho-container .block-goods-price.has-price-variation .block-goods-price--price {
    padding: 15px 0 15px 130px;
  }

  .zaiho-container .block-goods-price .block-cart--note{
    padding: 0 0 15px 0;
    margin-top: 15px;
    font-size: 16px;
  }

  .zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--value,
  .zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .block-goods-price--value {
    font-size: 34px;
  }
  .zaiho-container .block-lp--goods-list .block-goods-price.has-price-variation .block-goods-price--price .block-goods-price--value {
    font-size: 28px;
  }

  .zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--value .unit,
  .zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .block-goods-price--value .unit {
    font-size: 16px;
  }
  .zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--points,
  .zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .block-goods-price--points {
    font-size: 18px;
  }

  .zaiho-container .block-goods-price .block-goods-price--price .block-goods-price--qty-label {
    width: 120px;
    font-size: 14px;
    padding: 4px 10px;
  }

  .zaiho-container .block-goods-price:not(.has-price-variation) .block-goods-price--price:has(.block-goods-price--qty-label){
    position: relative;
    padding: 0 0 0 130px;
  }

  .zaiho-container .block-goods-price.has-price-variation .block-goods-price--price .regular-price {
    font-size: 14px;
  }

  /*-- 在庫切れの場合 --*/
  .zaiho-container .block-goods-price:has(.block-no-stock) .block-arrival-notice,
  .zaiho-container .block-goods-price:has(.block-no-stock) .block-no-stock{
    padding: 0 80px 0 0;
  }

  .zaiho-container .block-goods-price:has(.block-no-stock) .block-add-cart{
    width:72px;
    margin: 30px 0 10px;
    bottom:80px;
  }
  .zaiho-container .block-goods-price:has(.block-no-stock) .block-add-cart + .block-contact-about-goods{
    text-align: center;
    margin: 0 0 20px 0;
    padding: 0;
  }
  /*-- //在庫切れの場合 --*/

/**/
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-code,
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-stock {
    font-size: 15px;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase {
    width: 390px;
    flex-direction: column-reverse;
    padding: 0;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl.block-lp--goods-item-qty {
    order: 3;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl {
    justify-content: flex-start;
    align-items: center;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dt,
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dd {
    width: 4em;
    padding: 0;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dd .select-style-wrap {
    width: 60px;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dd .select-style-wrap select {
    padding: 4px 15px;
  }
  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl dd .custom-radio {
    padding: 6px 12px 6px 36px;
  }

  .zaiho-container .block-lp--goods-item .block-lp--goods-item-purchase dl.block-lp--goods-item-bag dd .custom-radio{
    width: 90px;
  }

  .zaiho-container .pane-landingpage-contents #frmLP .block-lp--goods-item .block-lp--goods-item-purchase .form-label{
    justify-content: flex-start;
    width:100%;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-lp--goods-item .block-lp--goods-item-purchase .form-label .control-label{
    width: 4.0em;
    padding-top: 8px;
    flex-shrink: 0;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control {
    align-items: flex-start;
    justify-content: flex-start;
    padding: 0;
    width: 100%;
  }

  .zaiho-container .pane-landingpage-contents #frmLP .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control label.radio {
    padding: 6px 12px 6px 36px;
    flex: 1;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control label.radio:hover{
    background-color: #d6ddf3;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-lp--goods-item .block-lp--goods-item-purchase .form-label .form-control .help-block{
    width: 100%;
    font-size: 14px;
  }

  .zaiho-container .block-landingpage--wrapper .block-lp--goods-list-note {
    margin: 0;
  }
  .zaiho-container .block-landingpage--wrapper .block-lp--goods-list-note.goods-list-note-bottom{
    max-width: 1200px;
    margin: 40px auto;
  }

  .zaiho-container .block-landingpage-login--member {
    padding: 0 0 100px;
    max-width: 1200px;
    margin: 0 auto;
  }
  .zaiho-container .block-landingpage-login--member-body .block-landingpage-login--member-frame {
    width: 500px;
    margin: 0 auto;
  }

  .zaiho-container .block-landingpage-member--header h2 {
    margin: 0 0 30px;
  }
  .zaiho-container .block-landingpage-member--header h2 span {
    font-size: 19px;
    display: inline;
    padding-left: 19px;
  }
  .zaiho-container .block-landingpage-member--header h3 {
    font-size: 30px;
    margin: 0 0 20px;
    border: 0;
    padding: 0;
  }
  .zaiho-container .block-landingpage-member--header img {
    top: -5px;
  }
  .zaiho-container .block-landingpage-member--header-msg {
    font-size: 18px;
  }

  .zaiho-container .block-landingpage-login--member-body {
    padding: 60px;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-login--member-body .action-buttons .btn-primary {
    font-size: 18px;
    max-width: none;
  }
  .zaiho-container .block-landingpage-member--form {
    padding: 100px 0 0;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .form-group {
    padding: 0;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .form-label {
    font-size: 20px;
    margin: 0;
    flex-basis: 22%;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .form-control {
    width: auto;
    padding: 25px;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .form-group .form-control.twin > span {
    display: flex;
    gap: 10px;
    align-items: center;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .form-group .form-control.twin > span label {
    font-weight: bold;
  }
  .zaiho-container .block-landingpage #frmLP .form-group .form-control.twin > span input[type="text"],
  .zaiho-container .block-landingpage #frmLP .form-group .form-control.twin > span label input[type="email"],
  .zaiho-container .block-landingpage #frmLP .form-group .form-control.twin > span label input[type="password"],
  .zaiho-container .block-landingpage #frmLP .form-group .form-control.twin > span label input[type="tel"] {
    width: 100%;
  }
  .zaiho-container .block-landingpage #frmLP .form-group .form-control.twin .help-block {
    margin-top: 5px;
    width: 100%;
  }
  .zaiho-container .block-landingpage .fieldset-vertical {
    margin: 0;
  }
  .zaiho-container .block-landingpage .fieldset-vertical .form-label,
  .fieldset-vertical .constraint {
    margin: 3px 0 0 5px;
    vertical-align: middle;
  }
  .zaiho-container .fieldset-vertical .constraint {
    /*background: #fff;*/
  }
  .zaiho-container .block-landingpage .help-block {
    margin: 5px 0 0;
    font-size: 18px;
  }
  .zaiho-container .block-landingpage .help-block.art.sm {
    margin-top: -10px;
  }
  .zaiho-container .block-landingpage .help-block.a-rt {
    text-align: right;
  }
  .zaiho-container .block-landingpage #frmLP .form-group:last-of-type {
    border-bottom-color: #bfbfbf;
  }
  .zaiho-container .block-landingpage #frmLP .form-group:first-of-type {
    border-top-color: #bfbfbf;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-member--form-wrap .form-group:first-of-type {
    border-top: 1px #bfbfbf solid;
  }

  .zaiho-container .block-landingpage .form-group input[type="text"],
  .zaiho-container .block-landingpage .form-group input[type="email"],
  .zaiho-container .block-landingpage .form-group input[type="password"],
  .zaiho-container .block-landingpage .form-group input[type="tel"],
  .zaiho-container .block-landingpage .form-group .select-style-wrap {
    width: 360px;
  }
  .zaiho-container .block-landingpage .form-group input[type="text"].fw,
  .zaiho-container .block-landingpage .form-group input[type="email"].fw,
  .zaiho-container .block-landingpage .form-group input[type="password"].fw,
  .zaiho-container .block-landingpage .form-group input[type="tel"].fw,
  .zaiho-container .block-landingpage .form-group .select-style-wrap:has(.fw) {
    width: 100%;
  }
  .zaiho-container .block-landingpage .form-control.form-birth .select-style-wrap {
    width: auto;
    min-width: 100px;
    display: inline-block;
  }
  .zaiho-container .block-landingpage .form-control.form-birth .select-style-wrap:not(:first-of-type) {
    margin-left: 10px;
  }
  .zaiho-container .block-landingpage .use-company {
    padding: 60px 0 0;
    max-width: 1200px;
    margin: 0 auto;
  }
  .zaiho-container .block-landingpage .use-company label {
    text-align: left;
    margin: 0 0 15px;
    padding: 10px 0 10px 40px;
    width: fit-content;
  }
  .zaiho-container .block-landingpage .use-company--note {
    font-size: 18px;
    margin: 0 0 60px;
  }
  .zaiho-container .block-landingpage .company-info {
    padding-bottom: 60px;
  }
  .zaiho-container .block-landingpage .company-info .action {
    padding: 0;
    margin: -120px auto 30px;
    width: 1200px;
    text-align: right;
    display: flex;
    justify-content: flex-end;
  }
  .zaiho-container .block-landingpage .company-info .action .btn.clear-fields {
    padding: 12px 20px;
    display: block;
    width: fit-content;
  }
  .zaiho-container .block-landingpage .block-landingpage-dest {
    border: 0;
    padding: 60px 0;
    background: transparent;
    margin: 0 auto;
  }
  .zaiho-container .block-landingpage .block-landingpage-dest .block-landingpage-member--header {
    border: 0;
    margin: 0 auto;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-member--form .block-landingpage-dest .fieldset-vertical {
    justify-content: flex-start;
    flex-direction: row;
    align-items: center;
    padding: 50px 30px;
    background: #fff;
    border: 1px solid #bfbfbf !important;
    border-width: 1px 0 !important;
  }
  .zaiho-container .block-landingpage .block-landingpage-dest .fieldset-vertical .custom-radio,
  .zaiho-container .block-landingpage .block-landingpage-dest .fieldset-vertical label.radio {
    width: 160px;
    flex: none;
  }
  .zaiho-container .block-landingpage .custom-radio,
  .zaiho-container .block-landingpage label.radio {
    border-radius: 5px;
    width: 160px;
    padding: 10px 9px 12px 34px;
    font-size: 16px;
    flex: none;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-dest .form-group {
    padding: 0;
    border: 0;
  }

  .zaiho-container .block-landingpage .block-landingpage-mailmag,
  .zaiho-container .block-landingpage .block-landingpage-pswd,
  .zaiho-container .block-landingpage .block-landingpage-spoofing-protection,
  .zaiho-container .block-landingpage .block-landingpage-privacy-agreement,
  .zaiho-container .block-landingpage .block-landingpage-delivery-spec,
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content,
  .zaiho-container .block-landingpage .block-landingpage-payment-method {
    max-width: 1200px;
    margin: 0 auto;
  }

  .zaiho-container .block-landingpage .block-landingpage-mailmag {
    padding: 0;
    margin: 0 auto 30px;
  }
  .zaiho-container .block-landingpage .block-member-info--message {
    font-size: 18px;
    margin: 0;
    padding-bottom: 20px;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-mailmag .fieldset-vertical,
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-pswd .fieldset-vertical,
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-spoofing-protection .fieldset-vertical {
    margin: 0;
    border-top: 1px solid #bfbfbf !important;
    padding: 0;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-member--form .fieldset-vertical {
    border: 0 !important;
  }

  .zaiho-container .block-landingpage .block-landingpage-mailmag .form-control > span {
    justify-content: flex-start;
  }
  .zaiho-container .block-landingpage .block-landingpage-mailmag .form-control > span .custom-radio,
  .zaiho-container .block-landingpage .block-landingpage-mailmag .form-control > span label.radio {
    flex: none;
    width: 190px;
  }
  .zaiho-container .block-landingpage .block-landingpage-pswd {
    padding: 30px 0 0;
    margin-bottom: 30px;
  }

  .zaiho-container .block-landingpage .block-landingpage-spoofing-protection {
    padding: 30px 0 0;
    margin-bottom: 30px;
  }
  .zaiho-container .block-landingpage .block-landingpage-spoofing-protection .block-member-info--message {
    margin: 0 0 20px;
    padding: 0;
    text-align: left;
  }

  .zaiho-container .block-landingpage .block-landingpage-spoofing-protection .form-control > span {
    justify-content: flex-start;
  }
  .zaiho-container .block-landingpage .block-landingpage-spoofing-protection .form-control > span .custom-radio,
  .zaiho-container .block-landingpage .block-landingpage-spoofing-protection .form-control > span label.radio {
    flex: none;
    width: 190px;
  }
  .zaiho-container .block-landingpage .block-landingpage-spoofing-protection .fieldset-vertical {
    margin: 0;
    border-top: 1px solid #bfbfbf !important;
    padding: 0;
  }
  .zaiho-container .block-landingpage .block-landingpage-privacy-agreement {
    padding: 30px 0 0;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--header {
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    column-gap: 80px;
    justify-content: flex-start;
    align-items: center;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--header img {
    top: -4px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--header h2 {
    width: 100%;
  }
  .zaiho-container .block-landingpage .fieldset-vertical {
    max-width: 1200px;
    margin: 0 auto;
  }

  .zaiho-container .block-landingpage .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement {
    padding: 30px;
    margin: 0 auto 30px;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-member--form .fieldset-vertical.privacy-agreement {
    padding: 30px;
    margin: 0 auto 30px;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-control {
    flex: none;
    margin: 0;
    padding: 0;
    font-size: 20px;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-control input {
    position: relative;
    left: auto;
    top: auto;
    margin-right: 10px;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-control .block-order-estimate--order-terms-link {
    display: inline;
    padding: 0;
    transition: all 0.3s ease;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-control .block-order-estimate--order-terms-link:hover {
    text-decoration: none;
    color: #003E9A;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-group {
    align-items: center;
    justify-content: center;
    gap: 15px;
    line-height: 1;
    display: flex;
    margin: 0;
    padding: 0;
    border: 0;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-group .checkbox.custom-checkbox {
    background-position: 0;
  }
  .zaiho-container .block-landingpage #frmLP .block-landingpage-privacy-agreement .fieldset-vertical.privacy-agreement .form-group .constraint {
    background: transparent;
    margin: 0;
    width: auto;
    flex-basis: auto;
  }
  .zaiho-container .block-landingpage .block-order-estimate--order-terms-link {
    padding: 0;
  }
  .zaiho-container .block-landingpage .block-landingpage-delivery-spec {
    padding: 30px 0 0;
    margin-bottom: 30px;
  }
  .zaiho-container .block-landingpage .block-landingpage-delivery-spec .block-landingpage-member--header {
    border-bottom: 0;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content {
    padding: 0;
    border: 0;
    margin: 0;
    background: transparent;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .form-label {
    display: flex;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dt,
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--time-spec dt {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 10px;
    display: flex;
    align-items: center;
    float: none;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--time-spec{
    margin-bottom:0;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dt .constraint,
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--time-spec dt .constraint {
    float: none;
    display: block;
    margin: 0 0 0 10px;
    position: relative;
    top: -2px;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dd,
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--time-spec dd {
    margin: 0 0 20px;
    font-size: 18px;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--time-spec dd{
    margin-bottom: 0;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--delivery-method{
    width:auto;
    justify-content: flex-start;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--delivery-method .custom-radio,
  .zaiho-container .block-landingpage .block-landingpage-delivery-spec .fieldset-vertical .radio{
    width: 190px;
    flex: none;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-form--spec-content .form-group {
    border-bottom: 0 !important;
  }
  .zaiho-container .block-landingpage #method_pay h3 {
    display: block;
  }
  .zaiho-container .block-landingpage .block-order-method--payment-method-select .custom-radio {
    width: 100%;
    padding: 6px 6px 6px 34px;
    background-position: 12px center;
    background-repeat: no-repeat;
    border: 0;
    border-radius: 5px;
    margin: 0;
    cursor: pointer;
    font-size: 18px;
  }
  .zaiho-container .block-landingpage .block-order-method--payment-method-select .custom-radio:has(input[type="radio"]:checked) {
    background-color: #d6ddf3;
  }
  .zaiho-container .block-landingpage .block-landingpage-payment-method {
    padding: 30px 0 0;
    background: transparent;
  }
  .zaiho-container .block-landingpage .block-order-method--payment-method-content {
    padding: 20px 60px;
    background: #fff;
    border-bottom: 1px solid #bfbfbf;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .action-buttons.bottom {
    padding: 60px;
    border: 0;
  }

  .zaiho-container .block-landingpage .block-landingpage-member--form-wrap {
    background: #f9f9fa;
    padding: 90px 0 50px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form {
    padding: 0;
    max-width: 1200px;
    margin: 0 auto;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form-wrap .form-label,
  .zaiho-container .block-landingpage .block-landingpage-member--form-wrap .constraint {
    background: #fff;
  }

  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest {
    margin: 0 0 80px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form-wrap .block-landingpage-member--form .block-landingpage-dest {
    border: 0;
    margin: 0 0 60px;
    padding: 0;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-member--header {
    margin-bottom: 30px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-list {
    padding: 20px 40px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-select .custom-radio {
    font-size: 18px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item {
    padding: 15px 25px;
    margin-bottom: 30px;
    font-size: 18px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item::after {
    bottom: -14px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item::before {
    bottom: -16px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest-item:last-child {
    margin-bottom: 0;
  }

  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest--address {
    font-size: 18px;
    padding: 10px 0 10px 30px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-dest--update {
    padding: 0;
    text-align: right;
    margin-top: -40px;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .btn.btn-default {
    padding: 8px 30px;
    font-size: 14px;
    width: fit-content;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-delivery-spec {
    padding: 0;
    margin: 0 0 80px;
    border: 0;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-form--spec-content {
    border-bottom: 1px solid #bfbfbf;
    margin: 0 0 50px;
  }
  .zaiho-container .pane-landingpage-contents #frmLP .block-landingpage-member--form .form-control {
    padding: 30px;
    flex:1;
  }

  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec{
    display:block;
  }

  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dt {
    font-size: 18px;
    font-weight: bold;
    margin: 0 0 10px;
    display: flex;
    align-items: center;
    float: none;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dt .constraint {
    float: none;
    display: block;
    margin: 0 0 0 10px;
    position: relative;
    top: -2px;
  }
  .zaiho-container .block-landingpage .block-landingpage-form--spec-content .block-landingpage-form--date-spec dd {
    margin: 0 0 20px;
    font-size: 18px;
  }


  .zaiho-container .block-landingpage .block-landingpage-member--form .block-order-method--payment-method-content {
    border-top: 1px solid #bfbfbf;
  }
  .zaiho-container .block-landingpage .block-landingpage-member--form .block-landingpage-member--header {
    border-bottom: 0;
    margin-bottom: 0;
  }

  .zaiho-container .block-landingpage .block-order-method--regular-cycle {
    padding: 40px 30px;
    border: 5px #d6ddf3 solid;
    margin-bottom: 50px;
  }

  .zaiho-container .block-landingpage .block-order-method--regular-cycle .help-block{

  }

  .zaiho-container .block-landingpage .block-order-method--regular-cycle-item:not(:last-child) {
    margin-bottom: 60px;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle-item:not(:last-child)::after {
    bottom: -28px;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle-item:not(:last-child)::before {
    bottom: -30px;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle-item h3 {
    font-size: 20px;
    margin: 0 0 10px;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle-item p.help-block {
    font-size: 18px;
    margin: 0 0 20px;
  }
  .zaiho-container .block-landingpage dl.block-regular-cycle--cycle-timing dd .help-block {
    font-size: 14px;
    margin: 10px 0 0;
  }
  .zaiho-container .block-landingpage .block-regular-cycle--cycle-type {
    display: flex;
    justify-content: flex-start;
    gap: 15px;
  }
  .zaiho-container .block-landingpage .block-regular-cycle--cycle-type li {
    flex: none;
    width: 120px;
  }
  .zaiho-container .block-landingpage .block-regular-cycle--cycle-timing .custom-radio {
    border: 0;
    padding: 6px 6px 6px 24px;
    background-position: left center;
    background-color: transparent;
    cursor: pointer;
    width: 100%;
    font-size: 16px;
  }
  .zaiho-container .block-landingpage .block-regular-cycle--cycle-timing .custom-radio:has(input[type="radio"]:checked) {
    background-color: transparent;
  }

  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type{
    justify-content: flex-start;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-type label.radio{
    flex: none;
    font-size: 18px;
    padding: 16px 20px 16px 35px;
    max-width: none;
  }

  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select,
  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--select-dm,
  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--select-wm{
    width: 480px;
  }

  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select{
    padding: 0;
    margin-top: 0;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select label.radio {
    padding: 15px 15px 15px 40px;
    background-position: 15px center;
    display: block;
    width: 100%;
    font-size:20px;;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select label.radio:hover{
    background-color: #e7f0f8;
    border-radius: 5px;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-sub-type .block-regular-cycle--cycle-sub-type-select label.radio:has(input[type="radio"]:checked){
    background-color: transparent;
  }
  .zaiho-container .block-landingpage .block-order-method--regular-cycle .block-regular-cycle--cycle-timing-m .help-block{
    margin-bottom: 30px;
  }

  .zaiho-container .block-landingpage .block-regular-cycle--deliv_date {
    margin: 0;
    padding: 0;
    border: 0;
  }
  .zaiho-container .block-landingpage .block-regular-cycle--deliv_date dt {
    font-size: 18px;
    font-weight: bold;
    padding: 15px;
  }
  .zaiho-container .block-landingpage .block-regular-cycle--deliv_date dd {
    font-size: 20px;
    font-weight: bold;
    padding: 15px;
  }
  .zaiho-container .block-landingpage .block-landingpage-payment-method {
    padding: 50px 0 0;
  }
}

/* swiper disabled state */
.zaiho-container .swiper-button-next.swiper-button-disabled,
.zaiho-container .swiper-button-prev.swiper-button-disabled,
.zaiho-container .swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
  pointer-events: none;
}

