@charset "UTF-8";


audio:not([controls]){
  display: none;
}
button{overflow: visible;
  -webkit-appearance: button;}
html{-ms-overflow-style: -ms-autohiding-scrollbar;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;}
input[type="button"]{-webkit-appearance: button;}
main{display: block;}
*,::before,::after{box-sizing: inherit;}
*{font-size: inherit;}
::before,::after{text-decoration: inherit;
  vertical-align: inherit;}
*,::before,::after{border-style: solid;
  border-width: 0;}
*{background-repeat: no-repeat;
  margin: 0;
  padding: 0;}
:root{background-color: #FFFFFF;
  box-sizing: border-box;
  color: #000000;
  cursor: default;
  font: 100%/1.5 sans-serif;
  text-rendering: optimizeLegibility;}
a{text-decoration: none;}
img{vertical-align: middle;}
button{background-color: transparent;}
button{color: inherit;
  font-family: "FP-ヒラギノ角ゴ StdN W2", FP-HiraKakuStdN-W2, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif !important;}
button,[type="button"]{min-height: 1.5em;}
nav ol,nav ul{list-style: none;}
ul{list-style: none;}
::-moz-selection,::selection{background-color: #B3D4FC;
  color: #ffffff;
  text-shadow: none;}
button{margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;}
@media only screen and (max-width: 767px){
.item-radio2 [class*="label"]{font-size: 12rem !important;}
}
.item-radio > label > input:checked + [class*="item"]{box-shadow: 0 0 0 1px #979797;}
.item-radio > label > [class*="item"]{margin: 1px;
  background: #fff;
  border: 1px solid #979797;
  border-radius: 5px;
  padding: 1.2em 1em;
  width: 100%;
  display: inline-block;
  line-height: 1;
  font-size: 12rem;
  margin-top: 0.8em;}
.item-radio > label > [class*="item"] .label2{display: inline-block;
  font-size: 14rem !important;
  margin: 0 !important;}
.item-radio > label > [class*="item"] .label,.item-radio > label > [class*="item"] .label3,.item-radio > label > [class*="item"] .label5,.item-radio > label > [class*="item"] .label4{vertical-align: middle;
  display: inline-block;
  font-size: 14rem !important;
  margin: 0 !important;
  width: 65%;}
.item-radio > label > [class*="item"] .label + a,.item-radio > label > [class*="item"] .label3 + a,.item-radio > label > [class*="item"] .label5 + a,.item-radio > label > [class*="item"] .label4 + a{color: #7489F8;
  display: inline-block;
  margin-right: 2em;
  vertical-align: middle;}
.item-radio > label > [class*="item"] .label3{width: calc(100% - 2em);
  vertical-align: middle;}
.item-radio > label > [class*="item"] .label3 + a{margin-right: 0;
  vertical-align: middle;}
.item-radio > label > [class*="item"] .label5{width: calc(100%);}
.item-radio > label > [class*="item"] .price{vertical-align: middle;
  font-size: 14rem !important;}
@media only screen and (max-width: 767px){
.item-radio > label > [class*="item"]{font-size: 12rem;
    padding: 1em 0.5em;}
.item-radio > label > [class*="item"] .label,.item-radio > label > [class*="item"] .label3,.item-radio > label > [class*="item"] .label4,.item-radio > label > [class*="item"] .label5{font-size: 12rem !important;
    width: 100%;
    padding: 0.2em;}
.item-radio > label > [class*="item"] .label + a,.item-radio > label > [class*="item"] .label3 + a,.item-radio > label > [class*="item"] .label4 + a,.item-radio > label > [class*="item"] .label5 + a{padding-top: 0.6em;
    display: inline-block;}
.item-radio > label > [class*="item"] .label4{width: calc(100% - 2em);}
.item-radio > label > [class*="item"] .label4 + a{margin-right: 0;}
.item-radio > label > [class*="item"] .price{font-size: 12rem !important;}
}
.btnselect{background-color: #000;
  color: #fff !important;
  display: inline-block;
  border-radius: 5px;
  padding: 0.5em 1.3em;
  font-size: 16rem;
  cursor: pointer;}
.btnselect.sizeL{font-size: 20rem;}
.btnselect:hover{opacity: 0.7;}
@media only screen and (max-width: 767px){
.btnselect{font-size: 14rem;}
.btnselect.sizeL{font-size: 16rem;}
}
a{color: #333;}
a:hover{color: #7489F8;}
a img:hover{opacity: 0.7;}
.icon{position: relative;
    width: 10px;}
img{width: 100%;
  max-width: 100%;}
form #pro label#pr2 .ttl{display: block;
  width: 70%;
  font-size: 8px;}
form #pro label#pr2 .ttl a{display: block;
  color: #7489F8;
  margin: 0 0 0 8%;
  font-size: 8px;}
form #privilege label.privileBox .ttl{display: block;
  width: 70%;}
form #privilege label.privileBox .price{display: block;
  width: 20%;}
html{height: 100%;
  margin: 0;
  font-size: 6.25% !important;}
body{font-size: 14em;
  line-height: 1.5;
  font-family: "FP-ヒラギノ角ゴ StdN W2", FP-HiraKakuStdN-W2, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
  color: #333;
  overflow-x: hidden;}
@media only screen and (max-width: 767px){
body{font-size: 12em;}
}
header{text-align: center;
  width: 100%;
  top: 0;
  left: 0;
  position: fixed;
  z-index: 100;
  padding: 2.4em 1em 1.4em;
  background: rgba(255, 255, 255, 0.8);}
header .ttlbox{display: inline-block;
  text-align: left;
  width: 280px;}
header .ttlbox h1{font-size: 16rem;
  font-weight: normal;
  margin-bottom: 0.8em;
  display: inline-block;}
header .ttlbox .menu-trigger{display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
  position: relative;
  width: 36px;
  height: 17px;
  cursor: pointer;
  float: right;
  margin-top: 3px;}
header .ttlbox .menu-trigger span{display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
  position: absolute;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: #000;
  border: 1px;}
header .ttlbox .menu-trigger span:nth-of-type(1){top: 0;}
header .ttlbox .menu-trigger span:nth-of-type(2){top: 8px;}
header .ttlbox .menu-trigger span:nth-of-type(3){bottom: 0;}
header .ttlbox .menu-trigger.active span{background-color: #888;
  width: 60%;}
header .ttlbox .menu-trigger.active span:nth-of-type(1){transform: translateY(0.6em) translateX(0em) rotate(45deg);}
header .ttlbox .menu-trigger.active span:nth-of-type(2){opacity: 0;}
header .ttlbox .menu-trigger.active span:nth-of-type(3){transform: translateY(-0.6em) translateX(1.05em) rotate(-45deg);}
header .block_menu{width: 280px;
  margin: 0 auto;
  display: none;
  text-align: left;}
header .block_menu #acMenu{display: flex;
  margin: .5em 0;}
header .block_menu #acMenu ul{width: 60%;}
header .block_menu #acMenu ul li{font-size: 12rem;
  margin-bottom: 0.6em;}
header .block_menu #acMenu ul li a:hover{font-weight: bold;
  color: inherit;
  font-family: "FP-ヒラギノ角ゴ StdN W5", FP-HiraKakuStdN-W5;}
header .block_menu #acMenu ul + ul{width: 40%;}
.tmp-btn-2 header .header-button2{display: inline-block !important;}
@media only screen and (max-width: 767px){
.tmp-btn-2 header .header-button2 span{display: none;}
}
@media only screen and (max-width: 767px){
header{padding: 1em 1em 0.5em;}
.tmp-btn-2 header{padding: 1em 4em 0.5em 1em;}
header .ttlbox{width: 18em;}
header .ttlbox h1{font-size: 14rem;
    margin-bottom: 0.5em;}
header .ttlbox .menu-trigger{width: 24px;
    height: 13px;
    top: 1px;}
header .ttlbox .menu-trigger span:nth-of-type(2){top: 6px;}
header .ttlbox .menu-trigger.active span:nth-of-type(1){transform: translateY(0.4em) translateX(0em) rotate(45deg);}
header .ttlbox .menu-trigger.active span:nth-of-type(3){transform: translateY(-0.6em) translateX(0.8em) rotate(-45deg);}
header .block_menu{width: 100%;
    padding: 0 1em;}
header .block_menu #acMenu ul{width: 60%;}
header .block_menu #acMenu ul + ul{width: 40%;}
}
footer{position: relative;
  z-index: 40;
  background-color: #F2F2F2;
  border-top: 1px solid #979797;
  background-color: #F2F2F2;
  text-align: center;
  padding: 0 10px;
  color: #999;}
footer a{color: inherit;
  display: inline-block;}
footer a:hover{color: inherit;
  opacity: 0.7;}
footer a:hover img{opacity: 1;}
footer nav{width: 100%;
  max-width: 750px;
  display: flex;
  font-size: 10rem;
  margin: 6em auto 5em;}
footer nav .icon{width: 20%;}
footer nav .icon img{height: 50px;
  width: auto;
  transition: width 0.5s ease-out;
  margin-bottom: 10px;}
footer h3{margin-bottom: 2em;
  font-weight: normal;
  color: #333;}
footer .ttl{font-weight: bold;
  margin-bottom: 0.6em;
  color: #333;
  font-family: "FP-ヒラギノ角ゴ StdN W9", FP-HiraKakuStdN-W9;}
footer .address{font-size: 12rem;
  color: #333;
  margin-bottom: 1.5em;}
footer .menu{color: #333;
  border-top: 1px solid #979797;
  width: 100%;
  max-width: 400px;
  margin: 0 auto 4em;
  text-align: center;
  display: inline-block;
  padding: 2em 1em;
  font-size: 11rem;}
footer .menu li{display: inline-block;
  padding: 0 1em 0 1.5em;}
footer .menu li + li{border-left: 1px solid #979797;}
@media only screen and (max-width: 767px){
footer{padding-left: 20px;
    padding-right: 20px;}
footer nav{margin: 4em auto 2.5em;
    flex-wrap: wrap;}
footer nav .icon{width: 33.33333%;
    margin-bottom: 2em;
    padding: 0 2px;}
footer nav .icon img{height: 30px;}
footer nav .icon p{font-size: 8rem;}
footer h3{margin-bottom: 1em;}
footer .ttl{margin-bottom: 1.2em;}
footer .address{font-size: 10rem;
    margin-bottom: 2em;}
footer .menu{margin: 0 auto 2em;
    padding: 2em 1em 0;
    font-size: 10rem;}
footer .menu li{display: block;
    padding: 0;
    margin-bottom: 1em;}
footer .menu li + li{border-left: none;}
}
#container{width: 100%;
  overflow-x: hidden;}
#container #contentBox{padding-top: 10em;
  position: relative;
  z-index: 10;}
@media only screen and (max-width: 767px){
#container #contentBox{padding-top: 5em;}
}
main{line-height: 1.8;}
.block_top-product .box_product-title .ttl .img1{width: auto;
  height: 30px;}
.block_top-product .box_product-title .ttl .img2{width: auto;
  height: 30px;}
.block_top-product .box_welcome .txt{font-family: "FP-ヒラギノ角ゴ StdN W2", FP-HiraKakuStdN-W2, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif !important;
  text-align: left;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;}
@media only screen and (max-width: 767px){
.block_top-product .box_product-title .ttl .img1{height: 20px;}
.block_top-product .box_product-title .ttl .img2{height: 20px;}
}
.block_top-calendar .subtxt{margin-bottom: 6em;}
.block_top-calendar .clBox .box_calendar-title .ttl .img1{width: auto;
  height: 30px;}
.block_top-calendar .clBox .box_calendar-title .ttl .img2{width: auto;
  height: 30px;}
.block_top-calendar .clBox .box_calendar-info .txt{font-size: 11rem;
  color: #666;
  padding-left: 0.8em;}
.block_top-calendar .clBox .box_calendar-info .txt .mark{display: inline-block;
  text-indent: -0.8em;}
.block_top-calendar .clBox .box_calendar-info .txt strong{color: #333;}
.block_top-calendar .box_calendar2 .subtxt{text-align: left;
  margin-bottom: 8em;}
.block_top-calendar .box_calendar .subtxt{margin-bottom: 1.5em;}
.block_top-calendar .box_calendar > *:nth-child(2n-1){padding-right: 25px;}
.block_top-calendar .box_calendar > *:nth-child(2n){padding-left: 25px;}
.block_top-calendar .box_calendar-list dl dt .subtxt{display: block;
  font-size: 14rem;
  margin-top: 3em;
  margin-bottom: 7em;}
@media only screen and (max-width: 767px){
.block_top-calendar .subtxt{margin-bottom: 3em;}
.block_top-calendar .clBox .box_calendar-title .ttl .img1{height: 20px;}
.block_top-calendar .clBox .box_calendar-title .ttl .img2{height: 20px;}
.block_top-calendar .clBox .box_calendar-info .txt{font-size: 10rem;}
.block_top-calendar .box_calendar2 .subtxt{margin-bottom: 4em;}
.block_top-calendar .box_calendar .subtxt{margin-bottom: 1.5em;}
.block_top-calendar .box_calendar > *:first-child{padding-right: 0;}
.block_top-calendar .box_calendar > *:last-child{padding-left: 0;}
.block_top-calendar .box_calendar-list dl dt .subtxt{font-size: 12rem;
    margin-top: 4em;
    margin-bottom: 4em;}
}
.block_top-google .box_text .ttl{font-size: 32rem;
  text-align: center;
  font-weight: normal;
  margin-bottom: 1em;}
@media only screen and (max-width: 767px){
.block_top-google .box_text .ttl{font-size: 18rem;}
}
.block_top-person .txt{margin-bottom: 8em;
  text-align: left;
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;}
.block_top-person .box_person{display: flex;
  flex-wrap: wrap;
  width: 100%;
  max-width: 900px;
  margin: 0 auto;}
.block_top-person .box_person a{display: inline-block;
  color: inherit;}
.block_top-person .box_person a:hover dt{border-radius: 50%;
  position: relative;}
.block_top-person .box_person a:hover dt:after{position: absolute;
  top: 0;
  left: 0;
  content: "詳細を見る";
  color: #fff;
  display: inline-block;
  background: rgba(0, 0, 0, 0.5);
  text-align: center;
  width: 100%;
  height: 100%;
  line-height: 180px;}
.block_top-person .box_person dl{width: 33.33333%;
  display: block;
  padding: 0 10px;
  margin-bottom: 6em;}
.block_top-person .box_person dl dt{display: inline-block;
  overflow: hidden;
  margin-bottom: 2em;}
.block_top-person .box_person dl dt img{max-width: 180px;}
@media only screen and (max-width: 767px){
.block_top-person .txt{margin-bottom: 4em;}
.block_top-person .box_person a:hover dt:after{font-size: 10rem;
    line-height: 120px;}
.block_top-person .box_person dl{width: 50%;
    margin-bottom: 3em;
    font-size: 10rem;}
.block_top-person .box_person dl dt{margin-bottom: 1em;}
.block_top-person .box_person dl dt img{max-width: 120px;}
}
.block_top-movie .box_txt .txt{margin-bottom: 2em;}
.block_product-item .box_text .subtxt{font-size: 16rem;}
@media only screen and (max-width: 767px){
.block_product-item .box_text .subtxt{font-size: 12rem;}
}
.block_product-form .product-itemBox .box_text .subtxt,.block_product-form .product-itemBox2 .box_text .subtxt{margin: 5% 0 0 0;}
.block_product-form .itemInfo .txt{font-size: 12rem;
  margin-bottom: 5em;}
.block_product-form .f0 > *{font-size: 14rem;}
.block_product-form .f0 [class*="w-"] + [class*="w-"]{margin-left: 3%;}
.block_product-form .box_explain .subtxt{margin: 0 0 3% 0;}
@media only screen and (max-width: 767px){
.block_product-form .product-itemBox .box_text .subtxt,.block_product-form .product-itemBox2 .box_text .subtxt{font-size: 10rem;}
.block_product-form .itemInfo .txt{margin-bottom: 3em;}
.block_product-form .f0 > *{font-size: 12rem;}
}
form#product .box_form .ttl{padding: 0;
  font-size: 18rem;
  margin-top: 2em;
  margin-bottom: 0.2em;
  font-weight: normal;}
form#product .box_form .subtxt{font-size: 12rem;
  margin-bottom: 0.4em;}
form#product .box_form .txt{font-size: 12rem;
  margin-bottom: 0.4em;
  font-weight: normal;}
form#product .box_form .txt a{color: #7489F8;}
form#product .box_form h3.txt{margin-top: 2em;
  margin-bottom: 0;}
form#product .box_form-line .ttl{font-size: 12rem;
  margin-bottom: 0.4em;
  margin-top: 0;}
form#product .box_form-line .ttl + input + .ttl{margin-top: 1em;}
@media only screen and (max-width: 767px){
form#product .box_form .ttl{font-size: 16rem;}
form#product .box_form h3.txt{margin-top: 1.2em;
    font-size: 14rem;}
}
.block_consulting-person{text-align: center;
	width: 100%;
	max-width: 1220px;
	margin: 0 auto;
	padding-top: 1em;
	padding-right: 20px;
	padding-left: 20px;}
.block_consulting-person .box_person-photo{padding-bottom: 8em;}
.block_consulting-person .box_person-photo .person{vertical-align: middle;
  display: inline-block;}
.block_consulting-person .box_person-photo .person img{max-width: 300px;
  margin-bottom: 1em;}
.block_consulting-person .box_person-photo .you{vertical-align: middle;
  display: inline-block;
  font-size: 56rem;
  font-weight: normal;
  font-family: "FP-ヒラギノ角ゴ StdN W0", FP-HiraKakuStdN-W0;
  text-align: left;
  margin-bottom: 0.7em;
  line-height: 1.2;}
.block_consulting-person .box_person{text-align: center;
	margin-bottom: 1em;}
.block_consulting-person .box_person h2{font-size: 28rem;
  font-weight: bold;
  font-family: "FP-ヒラギノ角ゴ StdN W9", FP-HiraKakuStdN-W9;
  margin-bottom: 1.5em;}
.block_consulting-person .box_person h2 img{max-width: 500px;}
.block_consulting-person .box_person .subtxt{text-align: left;
  display: block;
  max-width: 800px;
  margin: 0 auto 5em;}
.block_consulting-person .box_person button{background-color: #000;
  color: #fff;
  display: inline-block;
  border-radius: 5px;
  padding: 0.5em 1.3em;}
.block_consulting-person .box_txt{max-width: 800px;
  margin-left: auto;
  margin-right: auto;}
.block_consulting-person .box_txt .ttl{font-size: 32rem;
  font-weight: normal;
  margin-bottom: 1.5em;}
.block_consulting-person .box_txt .txt{font-size: 14rem;
  text-align: left;}
@media only screen and (max-width: 767px){
.block_consulting-person{padding-top: 2em;
	padding-right: 20px;
	padding-left: 20px;
	padding-bottom: 1em;}
.block_consulting-person .box_person-photo{padding-bottom: 4em;}
.block_consulting-person .box_person-photo .person{font-size: 10rem;
    display: block;}
.block_consulting-person .box_person-photo .person img{max-width: 100px;}
.block_consulting-person .box_person-photo .you{display: block;
    font-size: 30rem;
    margin-top: 1em;
    margin-bottom: .5em;}
.block_consulting-person .box_person{margin-bottom: 4em;}
.block_consulting-person .box_person h2{font-size: 18rem;}
.block_consulting-person .box_person .subtxt{margin: 0 auto 3em;}
.block_consulting-person .box_txt{padding: 0;}
.block_consulting-person .box_txt .ttl{font-size: 20rem;
    margin-bottom: 2em;}
.block_consulting-person .box_txt .txt{font-size: 12rem;}
}
.block_consulting-ttl .subtxt{margin-top: 1em;
  font-size: 12rem;
  color: #999;}
.block_consulting-ttl .ttl{font-size: 32rem;
  font-weight: normal;
  margin: 2em 0 1em;}
.block_consulting-ttl .txt{max-width: 800px;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
  font-size: 14rem;}
@media only screen and (max-width: 767px){
.block_consulting-ttl .subtxt{font-size: 10rem;}
.block_consulting-ttl .ttl{font-size: 20rem;}
.block_consulting-ttl .txt{font-size: 12rem;}
}
.block_consulting-menu{padding: 8em 0 4em;}
.block_consulting-menu h2{font-size: 24rem;
  font-weight: normal;
  margin: 0 auto 1em;
  max-width: 800px;}
.block_consulting-menu h2 strong{font-family: "FP-ヒラギノ角ゴ StdN W5", FP-HiraKakuStdN-W5;}
.block_consulting-menu .ttl{text-align: center;
  font-size: 18rem;
  margin-bottom: 1em;}
.block_consulting-menu .txt{max-width: 800px;
  margin: 0 auto 5em;}
.block_consulting-menu .box_menu{max-width: 1220px;
  margin: 0 auto 8em;
  display: flex;}
.block_consulting-menu .box_menu.box_menu-border{border-bottom: 1px solid #979797;
  padding-bottom: 10em;}
.block_consulting-menu .box_menu-csl,.block_consulting-menu .box_menu-cslg{margin: 0 1.5%;
  border: 1px solid #979797;
  border-radius: 10px;
  width: calc(100% / 3);
  padding: 2.5em 3% 2em;
  text-align: center;}
.block_consulting-menu .box_menu-csl .ttl,.block_consulting-menu .box_menu-cslg .ttl{font-size: 22rem;
  margin-bottom: 0.4em;
  line-height: 1.2;}
.block_consulting-menu .box_menu-csl .ttl strong,.block_consulting-menu .box_menu-cslg .ttl strong{font-family: "FP-ヒラギノ角ゴ StdN W5", FP-HiraKakuStdN-W5;}
.block_consulting-menu .box_menu-csl .date,.block_consulting-menu .box_menu-cslg .date{margin-bottom: 1.8em;
  font-size: 16rem;}
.block_consulting-menu .box_menu-csl .price,.block_consulting-menu .box_menu-cslg .price{font-size: 24rem;
  margin-bottom: 1.8em;}
.block_consulting-menu .box_menu-csl .information,.block_consulting-menu .box_menu-cslg .information{text-align: left;
  margin-bottom: 2em;}
.block_consulting-menu .box_menu-csl .btnselect,.block_consulting-menu .box_menu-cslg .btnselect{margin: 0 auto;}
.block_consulting-menu .box_menu-cslg{background-color: #F2F2F2;}
@media only screen and (max-width: 767px){
.block_consulting-menu{padding: 4em 20px 3em;}
.block_consulting-menu h2{font-size: 20rem;}
.block_consulting-menu .ttl{font-size: 14rem;}
.block_consulting-menu .txt{margin: 0 auto 3em;}
.block_consulting-menu .box_menu{margin: 0 auto 4em;
    display: block;}
.block_consulting-menu .box_menu.box_menu-border{padding-bottom: 4em;}
.block_consulting-menu .box_menu-csl,.block_consulting-menu .box_menu-cslg{margin: 0;
    border: 1px solid #979797;
    border-radius: 5px;
    width: 100%;
    padding: 2em 1em;
    display: block;}
.block_consulting-menu .box_menu-csl + .box_menu-csl,.block_consulting-menu .box_menu-csl + .box_menu-cslg,.block_consulting-menu .box_menu-cslg + .box_menu-csl,.block_consulting-menu .box_menu-cslg + .box_menu-cslg{margin-top: 2em;}
.block_consulting-menu .box_menu-csl .ttl,.block_consulting-menu .box_menu-cslg .ttl{font-size: 16rem;}
.block_consulting-menu .box_menu-csl .date,.block_consulting-menu .box_menu-cslg .date{font-size: 14rem;
    margin-bottom: 1em;}
.block_consulting-menu .box_menu-csl .price,.block_consulting-menu .box_menu-cslg .price{font-size: 16rem;
    margin-bottom: 1em;}
}
.block_privacy-title2 .subtxt{margin-bottom: 2em;}
.block_price .box_price .date{font-size: 12rem;}
.block_price .box_price .price{font-size: 28rem;
	vertical-align: middle;
	margin: 0 1em;}
.block_price .box_price .btnselect{padding: 1em 1.3em;}
@media only screen and (max-width: 767px){
.block_price .box_price .date{font-size: 10rem;
    line-height: 1.2;}
.block_price .box_price .price{font-size: 14rem;
    margin: 0 5px;}
.block_price .box_price .btnselect{font-size: 12rem;}
}
.modal-inner .txt,.modal .txt{text-align: center;
  margin-top: 1em;
  margin-bottom: 2em;}
.modal-inner .ttl,.modal .ttl{font-size: 24rem;
  font-weight: normal;
  text-align: center;
  margin-bottom: 1em;}
.modal-inner .grid > *,.modal .grid > *{padding: 0 2em 1em;}
.modal-inner .grid > * img,.modal .grid > * img{max-width: 300px;
  margin-bottom: 1em;
  box-shadow: 4px 4px 10px rgba(0, 0, 0, 0.3);}
.modal-inner .txt{text-align: left;}
.modal-inner .subtxt{font-size: 18rem;}
@media only screen and (max-width: 767px){
.modal-inner .ttl,.modal .ttl{font-size: 16rem;}
.modal-inner .subtxt{font-size: 12rem;}
}
@media only screen and (max-width: 767px){
.sp-w-100 + [class*="sp-w-"]{margin-left: 0 !important;}
[class*="w-"] + [class*="sp-w-100"]{margin-left: 0 !important;}
}
.margin-bottom10{margin-bottom: 10px;}
.font-bold{font-weight: bold;}
img{vertical-align: middle;}
#hikaku .icon{position: relative;
    width: 10px;}

/* ------------------------------------------------------------------
   2026-09-21 追加（この3つだけ）
   ------------------------------------------------------------------ */

/* メニューの開け閉め。jQuery の slideToggle（400ミリ秒かけてすべるように開く）を、
   ブラウザの標準の機能（transition）で作り直したもの。
   ・閉じているときは高さ0＋はみ出しを隠す＝場所を取らない（display:none と同じ見え方）
   ・visibility: hidden にしてあるので、閉じている間はキーボードでも触れない
   ・transition は途中で止まっても必ず最後の状態へ行き着くため、開かないまま固まることがない */
header .block_menu{display: block;
  max-height: 0;
  overflow: hidden;
  visibility: hidden;
  transition: max-height .4s cubic-bezier(.5, 0, .5, 1), visibility 0s linear .4s;}
header .block_menu.is-open{max-height: 300px;
  visibility: visible;
  transition: max-height .4s cubic-bezier(.5, 0, .5, 1), visibility 0s;}

/* 動きを控える設定にしている方には、動かさずに切り替える */
@media (prefers-reduced-motion: reduce){
header .block_menu,header .block_menu.is-open{transition: none;}
}

/* 写真の縦横比を保つ。HTMLに width/height を書いたぶん、高さは自動に戻す。 */
img{height: auto;}
