.page-YSMW4 {
    text-align: center; /* 親で中央揃え */
}

.page-YSMW4 .reservation-info {
    display: inline-block;        /* 幅を文字にフィット */
    border: 2px solid #000;       /* 枠線 */
    padding: 10px 20px;           /* 内側の余白 */
    background: #fff;             /* 背景色 */
    text-align: left;             /* 枠内のテキストは左寄せ */
    border-radius: 4px;           /* 角丸 */
    line-height: 1.6;             /* 行間 */
    font-size: 1rem;              /* 文字サイズ */
 margin-top: 30px;             /* ← 上部余白 */
}


/* レスポンシブ動画用 */
.blk05_wrap_mv_responsive {
  position: relative;
  width: 100%;
  padding-top: 56.25%; /* 16:9アスペクト比 */
  overflow: hidden;
}

.blk05_wrap_mv_responsive video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover; /* 動画の比率を維持 */
}


/* PC・スマホ共通で見出し上の余白を調整 */
h2.cmn_tit08,
h2.cmn_tit01 {
    margin-top: 10px; /* 必要に応じて数字を変更 */
}

/* 画面幅が767px以下（スマホ）ならさらに調整したい場合 */
@media screen and (max-width: 767px) {
    h2.cmn_tit08,
    h2.cmn_tit01 {
        margin-top: 10px; /* スマホは少し狭くする例 */
    }
}
/* PC・スマホ共通 */
p.order_btn {
    margin-top: 30px;    /* 上の余白 */
    margin-bottom: 30px; /* 下の余白 */
}

/* 必要に応じてスマホ専用に調整 */
@media screen and (max-width: 767px) {
    p.order_btn {
        margin-top: 20px;
        margin-bottom: 20px;
    }
}


.toptitle{
margin: 0 auto !important;
     margin-bottom: 30px !important;
}

.goods_detail_voice_list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
  align-items: stretch;
}

.goods_detail_voice_list_box {
  background: #fff;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  display: flex;
  flex-direction: column;   /* 縦並び */
  height: 100%;             /* 高さ揃え */
}

/* ホバー時の浮き上がり */
.goods_detail_voice_list_box:hover {
  transform: translateY(-6px);
  box-shadow: 0 8px 20px rgba(0,0,0,0.15);
}

/* 本文エリア */
.goods_detail_voice_list_txt {
  font-size: 1.2rem;
  line-height: 1.8;
  margin-bottom: 12px;
  color: #333;
  flex-grow: 1;             /* 余白を埋めて伸び縮み */
}

/* 性別・地域：下に固定 */
.goods_detail_voice_list_info {
  font-size: 1rem;
  font-weight: bold;
  text-align: right;
  color: #666;
  margin-top: auto;         /* 常に一番下に配置 */
}

.goods_detail_voice_list_info.woman {
  color: #c45;
}

.goods_detail_voice_list_info.man {
  color: #258;
}

/* 注意書き */
.goods_detail_voice_noties {
  margin-top: 28px;
  font-size: 0.9rem;
  color: #777;
  text-align: center;
}



h2.subtitle{
color: #441802;
border-top: 1px solid #441802;
border-bottom: 1px solid #441802;
text-align: center;
padding: 20px 0;
font-weight: 900;
width: 920px; margin: 0 auto 35px;
letter-spacing: 0.01em;
}

.back_img{
    background-image:url(../../../../img/usr/goodsdetail/YSMW4/bg_img3.webp);
	  background-size:100%;
	padding:10px;
	text-shadow: 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff, 0 0 3px #fff;
          font-size: 20px;
}

/*　　　*/
.blk02_wrap{width: 840px; margin: auto; display: flex; flex-wrap:wrap; align-items: center; padding: 40px; background: #fff;}
.blk02_wrap h2{text-align: center; padding: 10px 0; border-bottom: 1px solid #000; color: #b11802; margin-bottom: 25px; font-weight: 900;font-size: 3.8rem;}
.blk02_wrap h2 color_chg{color:#0b1489; font-style: normal;}
.blk02_wrap blk02_img{width: calc(100% - 470px); padding-right: 30px;}
.blk02_wrap blk02_txt{max-width: 440px;}
.blk02_wrap blk02_txt p{color: #231815; font-size: 2.2rem; line-height: 1.7em;}
.blk02_wrap blk02_txt span{color: #441802; font-weight: 900;}

.blk07_wrap2 h2 {
  flex-basis: 100%; /* 1行すべて使う */
  width: 100%;
}

/*　　　*/
#block07{background: #91b9ce; padding: 0 0 60px;}

#block07 .blk07_box1 li p{ font-family: "Noto Sans JP", system-ui; font-weight: 300;}

h3.yotei{background:#6c96ca; color: #fff;}
h3.health{background:#49cad4; color: #fff;}
h3.kiroku{background:#a9d251; color: #fff;}
h3.money{background:#f3aa9b; color: #fff;}
h3.brain{background:#c99d3c; color: #fff;}
h3.diary{background:#d874a3; color: #fff;}

#block07 .blk07_wrap1{width: 1000px; margin: 0 auto 70px; background: rgba(255,255,255,.70); padding: 20px;}
#block07 .blk07_box1 {display: flex; flex-wrap: wrap; justify-content: space-between;}
#block07 .blk07_box1 li{width: 48%; margin-bottom: 30px;}

/* 各色付き見出しの共通デザイン */
#block07 h3 {
  font-size: 1.8rem;        /* 文字を大きめに */
  font-weight: bold;
  padding: 12px 20px;       /* 上下・左右に余白を追加 */
  margin: 0 0 25px;         /* 下に余白を追加 */
  border-radius: 6px;       /* 少し角丸にすると柔らかい印象 */
  line-height: 1.4;         /* 行間を少し広めに */
}

/* 個別カラー（既存の色を維持） */
h3.yotei  { background:#6c96ca; color:#fff; }
h3.health { background:#49cad4; color:#fff; }
h3.kiroku { background:#a9d251; color:#fff; }
h3.money  { background:#f3aa9b; color:#fff; }
h3.brain  { background:#c99d3c; color:#fff; }
h3.diary  { background:#d874a3; color:#fff; }

/* blk07内の見出し（テキスト型） */
#block07 .blk07_box2 h3.blk07_h3,
#block07 .blk07_box3 h3.blk07_h3 {
  color: #0b1489;
  font-size: 1.6rem;        /* 色付き見出しより少し小さめ */
  margin: 0 0 20px;
  padding: 5px 0;           /* 余白を軽めに調整 */
}

#block07 .blk07_wrap2{width: 1200px; display: flex; justify-content: space-around;
margin: auto; background: rgba(255,255,255,.70); padding: 20px;}
#block07 .blk07_box2{width: calc((100% - 30px)/3);}
#block07 .blk07_box3{width: 60%;}
#block07 .blk07_box3 ul{
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  /*height: 64em;*/
  height: 40em;
  gap: 3px;
}
#block07 .blk07_box3 ul li{width: 50%; 
  padding-right: 10px;  font-family: "Noto Sans JP", system-ui; font-weight: 500;
　font-size: 0.9rem;
  }
  
#block07 .blk07_box2_tit{font-weight: bold; font-family: "Noto Serif JP", serif; }
#block07 .sub{font-size: 15px;}

#block07 .blk07_box2 h3.blk07_h3,
#block07 .blk07_box3 h3.blk07_h3{color: #0b1489; padding: 0; margin: 0 0 30px;}


@media screen and (max-width: 767px) {
#block07{padding: 0 0 20px;}
#block07 .blk07_wrap1{width: 90%; padding: 2%;}
#block07 .blk07_box1{display: block;}
#block07 .blk07_box1 li{width: 95%; margin:  0 auto 20px;}

#block07 .blk07_wrap2{width: 90%; display: block; padding: 20px 2%;}
#block07 .blk07_box2{width: auto;}
#block07 .blk07_box3{width: 100%;}
#block07 .blk07_box3 ul{height: auto;}
#block07 .blk07_box3 ul li{width: auto;}

#block07 .blk07_box2 h3.blk07_h3,
#block07 .blk07_box3 h3.blk07_h3{margin: 0 0 10px;}
}




.cmn_tit08{
    display: block;
    font-weight: 700!important;
    border-top: none;
    font-size: 50px !important;
    letter-spacing: -2px;
    text-shadow: 0 0 10px #fff;
    height: auto;
    line-height: 1.2;
    border-bottom: 2px solid #441802;
    padding: 0 0 20px;
    color: #441802;
	font-family:YakuHanMPs, 'NotoserifJP', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif !important;
text-align: center; /* ← これを追加 */
}




/*　　　*/
#block05{padding: 0 0 0px;}
#block05 .blk05_wrap{width: 920px; margin: auto;} 

#block05 .blk05_mv{margin: 0 auto 35px;}

#block05 ul.blk05_box01{display: flex; justify-content: space-between; margin: 30px 0 70px;}
#block05 ul.blk05_box01 li{width: calc((100% - 50px)/3);}

@media screen and (max-width: 767px) {
#block05 .blk05_wrap{width: 100%;}
#block05 .blk05_txt{width: 95%; margin: auto;}
/*#block05 ul.blk05_box01{display: block;}
#block05 ul.blk05_box01 li{width: 95%; margin:0 auto 10px; display: flex; justify-content: center; align-items: center;}
#block05 ul.blk05_box01 li img{width: 40%;}*/
#block05 ul.blk05_box01 li{width: calc((100% - 8px)/3);}
}



/*youtube対応*/
#block05_y{background: #91b9ce; padding: 40px 0 60px;}
#block05_y .blk05_wrap_mv{width: 640px; margin: auto;}
#block05_y .blk05_wrap_mv .youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
#block05_y .blk05_wrap_mv .youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
#block05_y{padding: 40px 0 10px;}
#block05_y .blk05_wrap_mv{width: 90%; margin: auto;}
}

/*　　　*/

#block09 p,
#block10 p {
  font-size: 20px;
  line-height: 1.6; /* 読みやすさのため推奨 */
}

#block09{background: #fff; padding: 60px 0 10px;}
#block10{background: #fff; padding: 0 0 10px;}
#block09>div,
#block10>div{width: 920px; margin: auto;}

#block09 h3,
#block10 h3{padding: 0; font-size: 28px; color: #441802; margin: 0 0 20px;}

#block09 .blk09_box{display: flex; justify-content: space-between; width: 100%; margin: 35px auto 40px;}
#block09 .blk09_box li{width: 440px;}

#block10 .blk10_box{display: flex; justify-content: space-between; flex-wrap: wrap; width: 100%; margin: auto;}
#block10 .blk10_box li{width: 440px; margin:  0 0 35px;}

#block09 p{font-family: "Noto Sans JP", system-ui; font-weight: 400;}

#block09 h2,
#block10 h2 {
  font-weight: 900;
  font-feature-settings: "palt";
  text-shadow:
    1px 1px 2px #fff,
    -1px 1px 2px #fff,
    1px -1px 2px #fff,
    -1px -1px 2px #fff;

  background: linear-gradient(
    90deg,
    #fff 0%,
    #e8f7fe 10%,
    #abe1fa 50%,
    #e8f7fe 90%,
    #fff 100%
  );

  border: none;
  width: 100%;
  text-align: center;

  /* &#128071; ここを調整 */
  padding: 0.8em 0;   /* 内側の余白（文字と背景の間） */

}

@media screen and (max-width: 767px) {
#block09>div,
#block10>div{width: 95%; margin: auto;}
#block09 .blk09_box{margin: 0 auto 20px; display: block;}
#block09 .blk09_box:last-child{display: block;}
#block09 .blk09_box li{width: auto; margin: 10px 0;}
#block09 .blk09_box:last-child li{margin-bottom: 20px;}
#block09 h3,
#block10 h3{font-size: 6vw; margin: 0 0 10px;}
#block10 .blk10_box li{width: 100%;  margin:  0 auto 35px;}
}





.backyellow {
  background-color: #FFF3C6;
  width: 100%;
  display: block;
  margin: 0;     /* 余白をなくす */
  padding: 40px 0; /* 中身にゆとりを持たせたい場合 */
}


.backblue{
background-color:#91B9CE;
  font-size: 20px;
}


.wrapper3{
background-color:#FFF3C6;
}


.wrapper2{
background-color:#91B9CE;
}


.width1200{
width:1200px;
	margin:0 auto;
	padding:50px 0px;

}

.paddingtop30{
padding-top:30px;
}

@media screen and (max-width: 767px) {
.width1200{
width:100% ;
	padding:20px 0px;
}

.paddingtop30{
padding-top:0px;
}

.js-toggle_parent{
    width: 95% !important;
    margin: 0 auto !important;
margin-bottom:20px !important;
}
}



.cmn_tit01{
	width:1200px;
}

.syuroku{
	padding-top:30px;
	text-align:right;
}

.cmn_column03{
    padding-bottom: 30px;
}

.furoku_img{
	margin: 0px 100px 20px !important;
}




.zituroku{
	color:#fff;
	background-color:#c53d43;
	text-align:center;
	font-weight:bold;
	padding 30px;
	font-size:150%;
}

.ysm_mv{
	text-align:center;
	background-color:#91BACE;
}

.cmn_tit01{
    display: block;
    font-weight: 700!important;
    border-top: none;
    font-size: 50px !important;
    letter-spacing: -2px;
    text-shadow: 0 0 10px #fff;
    height: auto;
    line-height: 1.2;
    border-bottom: 4px solid #007bbb;
    padding: 0 0 20px;
    margin: 0px 0 15px;
    color: #cb1212;
	font-family:YakuHanMPs, 'NotoserifJP', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif !important;
}

@media screen and (max-width: 767px) {
.cmn_tit01{
    font-weight: bold!important;
}
}

.title_small{
	font-size:40px!important;
}



.wrapper .cmn_tit01_underline:after {
    background: #cb1212;
}

@media screen and (max-width: 767px) {
.wrapper .cmn_tit01:after {
    background: #cb1212;
}
}

.parent {
display: grid;
grid-template-columns: repeat(2, 1fr);
grid-template-rows: repeat(2, 1fr);
grid-column-gap: 20px;
grid-row-gap: 20px;
}

@media screen and (max-width: 767px) {
.parent {
display:block;
}
}



.div1 { grid-area: 1 / 1 / 2 / 2; }
.div2 { grid-area: 1 / 2 / 2 / 3; }
.div3 { grid-area: 2 / 1 / 3 / 2; }
.div4 { grid-area: 2 / 2 / 3 / 3; }


@media screen and (max-width: 767px) {
.div1{
	padding-bottom:10px;
}
.div2{
	padding-bottom:10px;
}
.div3{
	padding-bottom:10px;
}
}


.red{
	color:#cb1212 !important;
}


.wrapper .cmn_column02_02_list_tit:before {
    content: counter(count01);
    position: absolute;
    left: 13px;
    top: 50%;
    margin-top: -17px;
    background: url(../../img/usr/goodsdetail/yqq/img/bg_number02.png) no-repeat center;
    background-size: contain;
    width: 34px;
    height: 34px;
    font-size: 18px;
    font-weight: 700;
    color: #fff;
    text-align: center;
    line-height: 32px;
}

.tyusyaku{
	padding-top:10px;
}

.heishi{
	padding:0 80px;
}

.wrapper .cmn_tit03 {
    border-left: 6px solid #0c2087;
	border-top: none;
	border-right: none;

}

@media screen and (max-width: 767px) {
.wrapper .cmn_tit03 {
padding:10px !important;
}
}

.wrapper .frame-bg-orange {
background: #44444445;
}

.subtitle{
color: #ffef33;
    background-color: #51063d;
    font-weight: bold;
    padding: 5px 10px;
    font-size: 120%;
}

.padding-bottom10{
	padding-bottom:10px;
}

.tracklist2 li::before {
    position: relative;
    top: -2px;
    left: -6px;
    display: inline-block;
    width: 15px;
    height: 15px;
    content: '';
    border-radius: 100%;
    background: #59227bc7;
}

.tracklist2 li {
    list-style: none;
}


.brown{
	color:#441802;
}


.red{
	color:#cb1212;
}

.padding40{
	padding:0px 40px;
}

.padding30{
	padding:0px 30px;
}



.year80{
	    border: solid 2px #0c2087;
    padding: 10px;
    background-color: #00000014;
}

.senchi{
	border-top: 3px solid #0c2087!important;
    border-bottom: 3px solid #0c2087!important;
	border-left:none!important;
    text-align: center;
    padding: 20px !important;
    font-family: YakuHanMPs, 'NotoserifJP', '&#65533;q&#65533;&#65533;&#65533;M&#65533;m&#65533;&#65533;&#65533;&#65533; ProN W3', 'Hiragino Mincho ProN', 'HG&#65533;&#65533;&#65533;&#65533;E', '&#65533;l&#65533;r &#65533;o&#65533;&#65533;&#65533;&#65533;', '&#65533;l&#65533;r &#65533;&#65533;&#65533;&#65533;', serif !important;
    font-size: 150%!important;
    color: #0c2087;

}

.small_title{
	font-size:160% !important;
}

.column{
	border-top:solid 1px;
	border-bottom:solid 1px;
	padding:20px 10px;
}

.heishi{
border: solid 3px #dfab16;padding: 25px;background-color: #f5e9c5;margin-top:40px;
}

.heishi2{
    background-color: #dfab16;
    margin: -25px -25px 0px;
    padding: 5px 0px;
    text-align: center;
    font-size: 120%;
    color: #fff;
	margin-bottom:25px;
}

@media screen and (max-width: 767px) {
.heishi2{
margin: -17px -25px 0px;
	margin-bottom:25px;
}
}





@media screen and (max-width: 767px) {
.wrapper .cmn_tit01 {
font-size:160% !important;
width:100%;
}

.title_small {
    font-size: 25px !important;
}


}


.wrapper .cmn_message.cmn_message_brown {
    border: 4px solid #441802;
}


.wrapper .cmn_message.cmn_message_orange .cmn_message_tit {
    color: #cb1212;
}


.order_btn a:hover {
    opacity: 0.6 !important;
}


    /* スライダー調整用CSS */
    @media (max-width: 767px) {
      .let_slider.loading {
        height: 0;
      }

      .let_slider.loading .order_btn {
        display: none;
      }
    }
/* --------------------------------------
slider
-------------------------------------- */
.let_slider .loading_icon:before {
	content: url(/icon_loader.gif);
	display: block;
	text-align: center;
	color: #000;
	font-weight: bold;
	font-size: 5vw;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: 45vw auto;
}

.let_slider {
	position: relative;
	padding-top: 0;
	margin-bottom: 20px;
}
.let_slider.loading .goods_flexslider {
	opacity: 0;
}

.let_slider .flex-control-nav {
	display: none;
}

.let_slider .flex-direction-nav {
	position: absolute;
	display: flex;
	justify-content: center;
	bottom: 0;
	margin: auto;
	left: 0;
	right: 0;
}

.let_slider .flex-direction-nav li {
	margin: 0 10vw 0;
	width: 35px;
	height: 35px;
	font-size: 0;
	display: flex;
	align-items: center;
}

.let_slider .flex-direction-nav li:last-child {
	right: 0;
}

.let_slider .flex-direction-nav a {
	text-decoration: none;
}

.let_slider .flex-direction-nav a:before {
	display: inline-block;
	font-size: 31px;
	opacity: 0.7 !important;
	color: #28a4ed;
}

.let_slider .flex-direction-nav a.flex-prev:before {
	font-family: 'Material Icons' !important;
	content: '\eaa7' !important;
}

.let_slider .flex-direction-nav a.flex-next:before {
	font-family: 'Material Icons' !important;
	content: '\eaaa' !important;
}

.let_slider .custom_nav_number {
	width: 60px;
	text-align: center;
	margin: 10px auto;
	background: rgba(0, 0, 0, 0.5);
	border-radius: 30px;
	color: #fff;
	font-size: 0.9em;
	padding: 0.3em;
}

@media (max-width: 320px) {



	.let_slider .flex-direction-nav a {
		margin: 10px 25vw 0;
		top: 1vw;
	}

	.let_slider .deviceSP .flex-control-paging li a {
		width: 10px !important;
		height: 10px !important;
	}
}

.catalog{
	font-size:150%;
}

@media screen and (max-width: 767px) {
.catalog{
	font-size:120%;
}
}

.webpre{
font-size:16px;
}

@media screen and (max-width: 767px) {
.webpre{
font-size:12px;
}
}

@media screen and (max-width: 767px) {
  .cmn_tit08.toptitle {
    font-size: 22px !important;   /* スマホ用に縮小 */
    line-height: 1.4;             /* 行間を広めに */
    letter-spacing: 0;            /* 字間をデフォルトに戻す */
    word-break: keep-all;         /* 日本語の単語を分割しない */
    white-space: normal;          /* 強制改行を許可 */
  }
}

@media screen and (max-width: 767px) {
  .cmn_tit01.toptitle {
    font-size: 25px !important;
    line-height: 1.2;
    letter-spacing: -1px;
    word-break: break-word;
    font-weight: 900 !important; /* ここを追加して太くする */
  }


  .cmn_tit01.toptitle .title_small {
    display: block;                  /* 必要に応じて改行 */
    font-size: 22px !important;
  }
}

