/* アコーディオン */
.accordion_wrapper {width:90%;margin: 1.5rem auto;}
.accordion-box {border: 1px solid #ccc;border-radius:.4rem;margin-bottom: 10px;overflow: hidden;}
.accordion-box summary {cursor:pointer;padding:1rem;font-size: clamp(0.9rem, 2.5vw, 1rem);font-weight:bold;background:linear-gradient(134deg, #5a87ff, #00fff2);display:flex;align-items: center;justify-content: space-between;list-style:none;-webkit-appearance:none;}
.accordion-box summary::-webkit-details-marker {display: none !important;}
.accordion-box summary .icon {transition: transform 0.3s ease;color:blue;font-size:1.8rem;}
summary h3{text-align: center;font-size:1.1rem!important;color:#ffffff!important;width: fit-content;margin: 0 auto;border:none!important;}
summary h3 span{color:#ffff00;}
.accordion-box summary h4{text-align:center;font-size:1.3rem!important;color:#ffffff!important;width:fit-content;margin: 0 auto;}
.accordion-box summary h4 span{color:#ffff00;}
details[open] summary .icon {transform: rotate(180deg);}
.accordion-box p {padding: 1rem;margin: 0;background: #fff;font-size:.8rem;}
.accordion-box p a{font-weight:bold;border-bottom:2px solid;}
.accordion-box h5{padding:12px 20px 5px;font-size: 1.6rem;color:#5454ff;font-weight: bold;}
.accordion-box ul li{font-size:.9rem;margin:1rem;}
.bc-img{width:100%;margin:1vh auto;display:flex;flex-wrap: wrap;}
.bc-img img{width: 800px;max-width: 100%;margin: 0 auto;}
/* アコーディオン end*/

#designOP-button{display:block;width:fit-content;margin:0 auto;}
#designOP-button img{display: block;width: 315px;max-width:85%;margin:auto;border-radius:.4rem;box-shadow: 4px 6px 5px #989898;}
#designOP-button:hover{transform:scale(1.05);}

.img-sec{display:flex;justify-content:center;margin:2rem auto;}
.img-sec img{width:350px;max-width:48%;border:2px solid;border-radius:.4rem;margin:0.5rem;}
@media (max-width:495px) {
	.img-sec{flex-direction:column;align-items:center;}
	.img-sec img{max-width:90%;}
}
.font01{margin:0 auto;padding:0 1.2rem;}
.font01 h4{font-size:1.1rem;font-weight:bold;}
.font01 p{margin:.2rem .5rem;}
/* .ul-box{} */
.ul-box ul{padding:1rem;}
.ul-box ul h4{font-weight: bold;font-size: 1.4rem;color: #ff1515;text-align: center;}
.ul-box ul p{font-size:.9rem;padding:.5rem;}
.ul-box ul li{margin:1.1rem auto;background: aliceblue;padding: 1.3rem 1rem;position:relative;border-radius:.4rem;max-width:100%;}
/* .ul-box ul li>div:nth-child(-n + 4)::after{content: "";display: inline-block;position: absolute;width: 100px;height: 100px;background-image: url(https://visipri.com/woodpanel/img/u-ya.png);background-size: cover;background-repeat: no-repeat;vertical-align: middle;bottom: 98%;left: 43%;} */
.ul-box ul li img{width:600px;max-width:98%;margin:.5rem auto 1.2rem;display:block;}
.ul-box li>div {padding: 1rem;background: #fff;border-radius:.4rem;}

/* アコーディオン */
.animated {-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-fill-mode: both;animation-fill-mode: both;}
.content-wrap {position: relative;overflow: hidden;transition: height 0.3s ease;}
.close-btn, .more-btn {display: block;width: 100%;padding: 45px 0 0;position: absolute;bottom: 0;left: 0;text-align: center;background: -moz-linear-gradient(top,rgba(255, 255, 255, 0) 0%,rgba(255, 255, 255, 1) 60%);
background: -webkit-linear-gradient(top,rgba(255, 255, 255, 0) 0%,rgba(255, 255, 255, 1) 60%);
background: linear-gradient(to bottom,rgba(255, 255, 255, 0) 0%,rgba(255, 255, 255, 1) 60%);
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff',endColorstr='#ffffff',GradientType=0);z-index:2;}
.close-btn {background: none;}
.slide-up {
padding-bottom: 0;}
.slide-down {padding-bottom: 50px;}
.more-btn p,.close-btn p {display: inline-block;color: #fff;cursor: pointer;padding: 5px 20px;width: 25%;border-radius: 20px;font-size: 1.1rem;font-weight: bold;}
.more-btn p {background: linear-gradient(45deg, #ff4e2f, #ecd00f);animation: blinkAnime 1s infinite alternate;}
@keyframes blinkAnime{
   0% { color: #fff }
 100% { color: #55ff5dff }
}
.close-btn {padding:0;}
.close-btn p {background: #aaa; }
.content-wrap {
--content-txt: 16px;
.content-txt {
font-size: var(--content-txt);}}
@media (max-width: 768px) {.more-btn p,.close-btn p {font-size: 1rem; width: 40%;}}
/* アコーディオン end */
.idea-div ul{margin:0 .5rem 1.3rem;}
.idea-div ul li{margin:.8rem;}
.idea-div h4{font-weight:bold;font-size:1.15rem;color: #1e1eff;border-bottom: 3px solid;width: fit-content;}
.idea-div h5{font-size:1rem;font-weight:bold;}
.idea-div h5::before{content:'■';}
.idea-div p{margin:5px;}

@media (max-width: 767px) {
#image-modal img {max-width: 80%;max-height: 80%;object-fit: contain;border-radius: 10px;box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);display: block;}
}

#image-modal .modal-close {position: absolute;top: 6px;right: -10px;font-size: 1.8rem;font-weight: bold;color: #fff;cursor: pointer;z-index: 11;background-color: rgba(0, 0, 0, 0.4);padding: .5rem;border-radius: 100%;line-height: 1;transition: background-color 0.2s;width: 30px;height: 30px;border: 3px solid #c6c6c6;}

@media screen and (max-width: 767px) {
 #image-modal .modal-close {font-size: 2rem;top: 3px;right: 25px;}
}
	#choice p{font-size:.95rem;}
/*display flexの指示*/
	.flex-f_w-a_c-j_c{ display: flex; flex-wrap: wrap; align-items: center; justify-content: center;}
	.flex-f_w-a_c-j_sb{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;}
	.flex-f_w-a_c-j_sa{ display: flex; flex-wrap: wrap; align-items: center; justify-content: space-around;}

/*image画像等の指示*/
	.img_w100 { width: 100%;}

/*image画像　横並びの指示*/
/*フルワイド：画像2枚横並び　width768px以下：画像1枚*/
.full_w2img-768_w1img{ width: 49%;}
/*フルワイド：画像3枚横並び　width768px以下：画像1枚*/
.full_w3img-768_w1img{ width: 32%;}
@media screen and (max-width: 768px){
	.full_w3img-768_w1img{ width: 100%;}
}
/*フルワイド：画像4枚横並び　width768px以下：画像1枚*/
.full_w4img-768_w1img{ width: 24%;}
@media screen and (max-width: 768px){
	.full_w4img-768_w1img{ width: 100%;}
}
/*フルワイド：画像2枚横並び　width768px以下：画像2枚*/
.full_w2img-768_w2img{ width: 49%;}
/*フルワイド：画像3枚横並び　width768px以下：画像2枚*/
.full_w3img-768_w2img{ width: 32%;}
@media screen and (max-width: 768px){
	.full_w3img-768_w2img{ width: 49%;}
}
/*フルワイド：画像4枚横並び　width768px以下：画像2枚*/
.full_w4img-768_w2img{ width: 24%;}
@media screen and (max-width: 768px){
	.full_w4img-768_w2img{ width: 49%;}
}
span.marker {background: linear-gradient(transparent 50%, #ffd700 100%);}
.mottomiru{text-align:right;}
.mottomiru img{width:17px;rotate:60deg;}
.mottomiru a{font-size:17px;font-weight:bold;margin:2% 18% 0 0;border-bottom:2px dotted red;color:red;}
.sec_title{margin-top:2vh;}
.p-1 p{margin-left:5%;}
.p-1 h3{font-size: 14px;color:blue;margin:1.3vh;}
.f-wrap{flex-wrap:wrap;}


/* -fix_20221210_uetani- */
main #right_column { margin-top: 80px;}
@media screen and (min-width: 768px){
 #wrap { width:100%; max-width: 1220px;margin: 10px auto;}
 #container {width:100%; max-width: 1220px;}
 main #left_column {width: 30%;max-width: 300px; box-sizing: border-box; margin: 0;}
 main #right_column {width: 70%;flex: 1;box-sizing: border-box;margin: 0;}
 #pankuzu {padding: 0 15px;box-sizing: border-box; }
 div#hospital {width: 100%;max-width: 920px;box-sizing: border-box; }
 div#hospital section#price dl.table dd, div#hospital section#deadline dl.table dd { max-width: 195px; }
 div#hospital section#deadline .box_wrap .box h4 {max-width: 190px;}
}
.list-8 {font-size:13px;position: relative;padding: 1.5em 1em 1em 1.5em;border: 2px solid #0930f6;}
.list-8 > #kaisetsukiji {position: absolute;top: -.75em;left: 1em;padding: 0 .5em;background-color: #fff;color: #0930f6;font-weight: 600;}
.list-flex{display:flex;}
.list-8 ul {margin: 0;padding: 0;}
.list-8 li {padding: .3em .3em .3em 0;}
.list-8 li::marker {color: #0930f6;font-size: 1.1em;}
.font01 {font-size: 16px;}
span.marker {
background: linear-gradient(transparent 50%, #ffd700 100%);
}
/* fix_20230212_uetani */
/**fix_20221210_uetani**/
main #right_column { margin-top: 80px;}
div#hospital { width: 100%;padding: 0 1rem; box-sizing: border-box;}
@media screen and (min-width: 768px){
#wrap { width:100%; max-width: 1220px;margin: 10px auto;}
#container {width:100%; max-width: 1220px; box-sizing: border-box;}
main #left_column {width: 30%;max-width: 300px; box-sizing: border-box; margin: 0;}
main #right_column {width: 70%;flex: 1;box-sizing: border-box;margin: 0;}
#pankuzu {padding: 0 15px;box-sizing: border-box; }
div#hospital {width: 100%;max-width: 920px;padding: 0 15px; box-sizing: border-box; }
div#hospital section#price dl.table dd, div#hospital section#deadline dl.table dd { max-width: 195px; }
div#hospital section#deadline .box_wrap .box h4 {max-width: 190px;}
}

/**common.css の修正**/
.sidebar-wrapper .product-section { margin-bottom: 20px;}
/**page-content.css の修正**/
.page-content { padding-left: 0px; padding-right: 0px; box-sizing: border-box;}
.page-content h2.item_title { font-size: 20px; background: #0202e5; color: #fff; padding: 0.5em 1em; font-weight: bold; margin-bottom: 15px; line-height: 1.2;}
.page-content h3.item_title { font-size: 20px; background: #0202e5; color: #fff; padding: 0.5em 1em; font-weight: bold; margin-bottom: 15px; line-height: 1.2;}
.item_title span{ font-size: 14px; padding: 0 10px 0 10px;}
.page-content h3{border-bottom:none;}
.price-table-wrapper table .price.reasonable, .price-table-wrapper table .price.reasonable a { background: #00A1E9; border: solid 1px #00A1E9;}
.price-table-wrapper .table-mobile-wrap th.reasonable, .price-table-wrapper table thead th.reasonable { color: #00A1E9; border-color: #00A1E9;}

.price-table-wrapper table .price.standard, .price-table-wrapper table .price.standard a { background: #1d8fff; border: solid 1px #1d8fff;}
.price-table-wrapper .table-mobile-wrap th.standard, .price-table-wrapper table thead th.standard { color: #1d8fff; border-color: #1d8fff;}

.price-table-wrapper table .price.express, .price-table-wrapper table .price.express a { background: #292929; border: solid 1px #292929;}
.price-table-wrapper .table-mobile-wrap th.express, .price-table-wrapper table thead th.express { color: #292929; border-color: #292929;}

.price-table-wrapper table span { font-size: 12px; letter-spacing: 0;}
.page-content .small { font-size: 13px; line-height: 1.5;}
#header h1 { height: 18px;}
@media screen and (min-width: 768px){
.page-content { width: 100%; max-width: 920px; padding: 0; padding-left: 15px; padding-right: 15px; box-sizing: border-box;}
.page-content h2.item_title { font-size: 23px; line-height: 1.6; margin-bottom: 20px;}
.page-content h3.item_title { font-size: 23px; line-height: 1.6; margin-bottom: 20px;}
.item_title span{ font-size: 17px; }
.price-table-wrapper table span { font-size: 13px;}
#header h1 { height: auto;}
}

/**既存部分修正**/
.cont_inner{ box-sizing: border-box; padding: 0 10px; margin: 0 0 50px 0;}

/**料金テーブル修正**/
/* 追加修正 */
.center-text{font-size: 1rem;}
@media screen and (max-width: 768px) {.center-text, .item_info_txt {text-align: center;}}
.page-content h3 {display: inline-block;}

        .thumbnail-active {
            border: 2px solid #3b82f6;
            opacity: 1;
        }
        .thumbnail-inactive {
            border: 2px solid transparent;
            opacity: 0.7;
        }
        .thumbnail-inactive:hover {
            opacity: 1;
            border-color: #93c5fd;
        }

.top-h2{
    font-size: 2rem;
    text-align: center;
    margin: 3vh 0;
    color: #000;
    text-shadow: -2px 1px 5px #c2c2c2;
}
.gra{color:var(--primary-color);text-shadow:none;}
/* .gra{background:linear-gradient(358deg, #ffd871 0%, #d6aa00 45%, #e6c457 70%, #ffd73c 85% 85%, #ffaa00 90% 100%);-webkit-background-clip:text;-webkit-text-fill-color: transparent;text-shadow:none;background-size: 300% 100%;
animation: gradationTextAnimation 8s linear infinite;} */
@keyframes gradationTextAnimation{
    0%{
        background-position: 0 0;
    }
    50%{
        background-position: 100% 0;
    }
    100%{
        background-position: 0 0;
    }
}
/* 料金表 */
	.price_box_wrap { margin: 0 0 10px 0;}
	.price_box_wrap * {box-sizing: border-box;}
	.price_box{ width: 100%; display: flex; }
	.p_item_L{ width: 35%;  display: flex; flex-wrap: wrap;}
	.p_item_R{ width: 65%;  display: flex; justify-content: space-between;}
	.p_item_R .title_area{ width: 100%; text-align: center; position: relative; margin: 0 0 15px 0; width: 32%;}
	.p_item_R .title_area h4{ position: relative;}
	.p_item_R .title_area h4 span{ height: unset !important; line-height: unset !important; margin-bottom: unset !important;  padding-top: unset !important; font-size: 16px !important;}
	.p_item_R .title_area i { width: 100%; text-align: center; font-size: 12px !important;}
	.p_item_R .title_area:nth-of-type(1) h4 span{ border: solid 1px #E4007F; color: #E4007F; font-weight: bold; padding: 26px 10px 12px 10px !important; }
	.p_item_R .title_area:nth-of-type(2) h4 span{ border: solid 1px #00A1E9; color: #00A1E9; font-weight: bold; padding: 26px 10px 12px 10px !important; }
	.p_item_R .title_area:nth-of-type(3) h4 span{ border: solid 1px #000000; color: #000000; font-weight: bold; padding: 26px 10px 12px 10px !important; }
	.p_item_R .title_area:nth-of-type(1) h4 i{  color: #E4007F !important; margin: 5px 0 0 0; display: inline-block; }
	.p_item_R .title_area:nth-of-type(2) h4 i{  color: #00A1E9 !important; margin: 5px 0 0 0; display: inline-block; }
	.p_item_R .title_area:nth-of-type(3) h4 i{  color: #000000 !important; margin: 5px 0 0 0; display: inline-block; }
	.p_item_R .title_area p { font-size: 15px; font-weight: bold; padding: 10px; position: absolute; top: -30px; width: 90%; left: 5%; text-align: center; }
	.p_item_R .title_area:nth-of-type(1) p{ background:  #E4007F; color: #fff; font-weight: bold; border-radius: 20px; }
	.p_item_R .title_area:nth-of-type(2) p{ background:  #00A1E9; color: #fff; font-weight: bold; border-radius: 20px; }
	.p_item_R .title_area:nth-of-type(3) p{ background:  #000000; color: #fff; font-weight: bold; border-radius: 20px; }
	.p_item_R .title_area:nth-of-type(1) p:before {content: ""; position: absolute; top: unset; bottom: -24px; left: calc(50% - 12px);	border: 12px solid transparent;	border-top: 12px solid #E4007F;}
	.p_item_R .title_area:nth-of-type(2) p:before {content: ""; position: absolute; top: unset; bottom: -24px; left: calc(50% - 12px);	border: 12px solid transparent;	border-top: 12px solid #00A1E9;}
	.p_item_R .title_area:nth-of-type(3) p:before {content: ""; position: absolute; top: unset; bottom: -24px; left: calc(50% - 12px);	border: 12px solid transparent;	border-top: 12px solid #000000;}
	.p_item_tit {position: relative; display: flex; flex-wrap: wrap; align-content: center; width: calc(100% - 30px); padding: 7px 10px; color: #000; background: #EBECF5;}
	.p_item_tit:before {content: ""; position: absolute; top: calc(50% - 20px);	left: 100%;	border: 20px solid transparent;	border-left: 16px solid #EBECF5;}
	.p_item_tit_L{ width: 100%; font-size:1rem;font-weight: bold;}
	.p_item_tit_L span{ display: block; width: 100%; font-size:.8rem;font-weight:normal;}
	.p_item_tit_S{ width: 100%; font-size:120%; margin: 5px 0 0 0;}
	.p_item_tit_S_midashi {background: #555; color: #fff;padding: 0px 5px;font-weight: normal;margin: 0 5px 0 0;border-radius: 2px;	font-size: 12px;display: inline-block;}
	.p_item_other_link{ width: 100%; margin: 5px 0 0 0;}
	.p_item_other_link span { display: inline-block !important; font-size: 10px; padding: 0 3px 0 0;}
	.p_bin{ position: relative; width: 32%; display: flex;}
	.p_bin a{display: flex; align-items: center; width: 100%; height: 100%; justify-content: center; text-align: center; padding: 10px 0;}
	.p_bin_txt{ display: none;}
	.p_bin_txt_03{ width: 100%; font-size: 13px; font-weight: bold;}
	.p_geki a{ background: #E4007F; color: #fff;}
	.p_tsuu a{ background: #00A1E9; color: #fff;}
	.p_toku a{ background: #000000; color: #fff;}
	.p_bin_txt_03:before { content:url(https://visipri.com/size/img/cart-icon.svg); position: absolute; width:17px;top:35%; right: 5%;z-index:2;}
	.price-h5{font-size:140%;font-weight: bold;display: flex;flex-wrap: wrap;justify-content: center;align-items: center;}
	.h5-flex{display:flex;align-items: center;}
	.price-h5 span{display:inline-block;font-size: 80%;}
	.h5-flex::after{content: " ▼ ";display:block;}
	.h5-flex::before{content: " ▼ ";display:block;}
	.smaller B {font-size:19px;}
    .price-card-title p {font-weight:bold;font-size:1.2rem;margin:0 0 0 2rem;}
@media screen and (max-width: 768px){
    .price-card-title p{text-align: center;margin:0;}
	.price_box_wrap {padding:2%;margin: 0 0 15px 0;}
	.p_item_R .title_area{ display: none;}
	.price_box{ flex-wrap: wrap; }
	.p_item_L{ width: 100%; }
	.p_item_tit{ width: 100%; text-align: center; padding: 10px 5px;}
	.p_item_tit:before {content: ""; position: absolute; top: unset; bottom: -39px; left: calc(50% - 20px);	border: 20px solid transparent;	border-top: 20px solid #EBECF5;}
	.p_item_tit_L span{ display: inline; margin: 0 0 0 10px;}
	.p_item_R{ width: 100%; flex-wrap: wrap;}
	.p_item_other_link{ margin: 3px 0 0 0; text-align: right; min-height: 18px;}
	.p_bin{ position: relative; width: 100%; margin: 3px 0;}
	.p_bin_txt{ display: block; width: 50%; padding: 10px; text-align: center;}
	.p_geki .p_bin_txt{ border: solid 1px #E4007F; color: #E4007F; }
	.p_tsuu .p_bin_txt{ border: solid 1px #00A1E9; color: #00A1E9; }
	.p_toku .p_bin_txt{ border: solid 1px #000000; color: #000000; }
	.p_bin_txt_03{ width: 50%; }
	.p_geki .p_bin_txt_03{ border: solid 1px #E4007F;}
	.p_tsuu .p_bin_txt_03{ border: solid 1px #00A1E9;}
	.p_toku .p_bin_txt_03{ border: solid 1px #000000;}
	.p_bin_txt_01{ font-size: 12px;}
	.p_bin_txt_02{ font-size: 15px; font-weight: bold;}
	.price-h5 {justify-content: center;}
	.h5-flex {width: 98%;margin: 0 auto;justify-content: center;}
	}
/* 料金表end */


.top-h2 span{display: block;font-weight:bold;margin:7px 0 0;font-size: 1.8rem;}
.class-batch span{font-size:.9rem;}
.f-kosu {align-items: flex-start;}
.prose p {font-size:1rem;}
.coment span{font-size: 1.1rem;}
.dialog_content {color: #000;}
.bg-white{background:#fff;}
.max-w-7xl{max-width: 95%;width: 900px;margin: 0 auto;}
.shadow-lg{box-shadow:0 0 8px #989898, 0 0 8px #6a6a6a;}
.overflow-hidden {overflow: hidden;}
.rounded-lg {border-radius: 0.5rem;}
.grid {display: grid;grid-auto-rows: auto;}
.gap-8 {gap: 2rem;}
.gap-2 {gap: 0.5rem;}
.grid-cols-1 {grid-template-columns: repeat(1, minmax(0, 1fr));}
.space-y-6 > :not([hidden]) ~ :not([hidden]) {--tw-space-y-reverse: 0; margin-top: calc(1.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom: calc(1.5rem * var(--tw-space-y-reverse));}
.space-y-1 > :not([hidden]) ~ :not([hidden]) {--tw-space-y-reverse: 0;margin-top: calc(0.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom: calc(0.25rem * var(--tw-space-y-reverse));}
.text-gray-700 {--tw-text-opacity: 1;color: rgb(55 65 81 / var(--tw-text-opacity, 1));}
.py-2 {padding-top: 0.5rem;padding-bottom: 0.5rem;}
.px-3 {padding-left: 0.75rem;padding-right: 0.75rem;}
.border-gray-300 { --tw-border-opacity: 1;border-color: rgb(209 213 219 / var(--tw-border-opacity, 1));}
.border {border-width: 1px;}
.rounded-md {border-radius: 0.375rem;}
.w-full {width: 100%;}
.h-full {height: 100%;}
.flex {display: flex;}
.shadow-sm {border: solid 1px #000;}
.text-3xl {font-size: 1.6rem;line-height:2rem;font-weight: bold;text-align:center;}
.text1rem{font-size:1rem;}
.text-center{text-align: center;}
.mb-2 { margin-bottom: 0.5rem;}
.block {display: block !important;}
.text-sm {font-size: 0.875rem;line-height: 1.25rem;}
.list-disc {list-style-type: disc;}
.list-inside {list-style-position: inside;}
.mt-3 {margin-top: 0.75rem;}
.text-white {--tw-text-opacity: 1;color: rgb(255 255 255 / var(--tw-text-opacity, 1));}
.font-semibold {font-weight: 600;}
.py-3 {padding-top: 0.75rem;padding-bottom: 0.75rem;}
.px-6 {padding-left: 1.5rem;padding-right: 1.5rem;}
.bg-blue-600 {--tw-bg-opacity: 1;background-color: rgb(37 99 235 / var(--tw-bg-opacity, 1));}
.rounded-lg {border-radius: 0.5rem;}
.f-kosu {align-items: flex-start;}
.justify-center {justify-content: center;}
.items-center {align-items: center;}
.t-pic{width:340px;;max-width:100%;margin:0 auto;}
.gap-2 {gap: 0.5rem;}
.m-img-a {border: 2px solid;margin-bottom: 1rem;}
.w-4 {width: 1rem;}
.h-4 {height: 1rem;}
.grid img{border:1px solid;}
.aspect-square { aspect-ratio: 1 / 1;}
.grid-cols-4 {grid-template-columns: repeat(4, minmax(0, 1fr));padding: 0 2rem;}
div#priceDisplay {text-align: center;color: #fff;font-size: 1rem;border-bottom: 2px solid;margin: 0 0 5px;}

.duration-200 {transition-duration: 200ms;}
.object-cover { object-fit: cover;width: -webkit-fill-available;}
.transition-colors {transition-property: color, background-color, border-color, fill, stroke, -webkit-text-decoration-color;transition-property: color, background-color, border-color, text-decoration-color, fill, stroke;transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, -webkit-text-decoration-color;transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);transition-duration: 150ms;}
.space-y-4{align-content:center;}
.space-y-4 select {color: #615959;font-size:1rem;font-weight: bold;}
.text-white {--tw-text-opacity: 1;color: rgb(255 255 255 / var(--tw-text-opacity, 1));}
.space-y-6 {align-content: center;}
.lg\:p-8 {padding:1.9rem;}
@media (min-width:820px) {
    .lg\:grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr));}
}
@media (min-width: 640px) {
    .sm\:px-6 {padding-left: 1.5rem;padding-right: 1.5rem;}
}


/* お客様の声モーダル制御 */
#image-modal {position: fixed;top: 0;left: 0;width: 100vw;height: 100%;background-color: rgba(0, 0, 0, 0.85);z-index: 9999;align-items: center;justify-content: center;text-align: center;}
#modal-content{width:100%;max-width:93%;}
.modal-inner {position: relative;display: flex;max-width: 97%;width: 700px;justify-content: center;}
.modal-image{cursor:pointer;}
@media (max-width: 767px) {
#image-modal img {max-width: 80%;max-height: 80%;object-fit: contain;border-radius: 10px;box-shadow: 0 0 20px rgba(0, 0, 0, 0.4);display: block;}
}

#image-modal .modal-close {position: absolute;top: 6px;right: -10px;font-size: 1.8rem;font-weight: bold;color: #fff;cursor: pointer;z-index: 11;background-color: rgba(0, 0, 0, 0.4);padding: .5rem;border-radius: 100%;line-height: 1;transition: background-color 0.2s;width: 30px;height: 30px;border: 3px solid #c6c6c6;}

@media screen and (max-width: 767px) {
 #image-modal .modal-close {font-size: 2rem;top: 3px;right: 25px;}
}
.page-content h3.item_title_fix { display: flex; flex-wrap: wrap; margin-bottom: 20px;line-height: 1.2;padding: 0; min-height: 50px; border-bottom: none;box-sizing: border-box;background:#0034f7;padding:.3rem .2rem .2rem;    align-items: center;}
.item_info_cate {display:flex;flex-wrap:wrap;align-items:center;font-size: 1.48rem;font-weight:bold;width:auto;color: #ffffff;border-right: none;padding:0 13px;box-sizing: border-box;position: relative;}
.item_info_cate_after img {width: 100%; height: 100%;}
.item_info_cate_name {display:flex;flex-wrap:wrap;align-items:center;font-size:.7rem;flex:1;padding:0px 10px;box-sizing:border-box;color:#ffffff;}
.class-batch {border-radius: 8px;font-size: 1.3rem;padding: .1rem .3rem;box-shadow: 2px 2px 3px #b4b4b4;background: #000;color: #fff;text-align: center;font-weight: bold;margin: .5rem auto 2.1rem;width: 300px;max-width: 100%;}
button#addToCartBtn {padding:1.2rem;font-size:1.5rem;background: #000;display: flex;flex-direction: column;}
button#addToCartBtn2 {padding:1.2rem;font-size:1.5rem;background:#000;display: flex;flex-direction: column;}
button#addToCartBtn3 {padding:1.2rem;font-size:1.5rem;background:#000;display: flex;flex-direction: column;}
button#addToCartBtn4 {padding:1.2rem;font-size:1.5rem;background:#000;display: flex;flex-direction: column;}

button#addToCartBtn:hover  { background-color:#fff; color:#000;border:.5px solid #000;cursor:pointer;}
button#addToCartBtn2:hover { background-color:#fff; color:#000;border:.5px solid #000;cursor:pointer;}
button#addToCartBtn3:hover { background-color:#fff; color:#000;border:.5px solid #000;cursor:pointer;}
button#addToCartBtn4:hover { background-color:#fff; color:#000;border:.5px solid #000;cursor:pointer;}
.dsc-box {padding: 0 .3rem;}
.dsc-box p { font-size:.9rem;margin:.2rem 1.5rem;}
.dsc-box p span{font-weight:bold;}
.dsc-box h4 {font-size:1.1rem;border-bottom: 1px solid;margin-bottom: .5rem; width: fit-content;font-weight: bold;color:#1d1f8e;}
.tbm{margin: 0 !important;}
.bi{margin: 0 .9rem;}
.nouki-plan{display:flex;flex-wrap:wrap;justify-content: center;}
.nouki-plan a{display:block;margin:.5rem 1rem;-webkit-transition: all .3s;transition: all .3s;}
.nouki-plan a:hover {-webkit-transform: translateY(-5px);-ms-transform: translateY(-5px);transform: translateY(-5px);}
.nouki-plan a img{display:block;width:250px;max-width: 100%;}
.heading-21 {position:relative;padding:.5rem .5rem .1rem;border-bottom: 3px solid #000;border-top: 3px solid #000;color: #000;font-size: 1.3rem;text-align: center;font-weight: bold;width:83%;margin:.5rem auto 2rem;}
.heading-21 span{font-size:.8rem;}
.heading-21::before,
.heading-21::after {position: absolute;left:70px;bottom: -15px;width: 30px;height: 15px;clip-path: polygon(0 0, 100% 0, 50% 100%);content: '';}
.heading-21::before { background-color: #000;}
.heading-21::after { bottom: -11px;background-color: #fff;}

@media screen and (max-width: 500px) {
.max-w-7xl { max-width: 90%;}
}
/* ダイアログ修正 */
.dialog_content {width:310px;max-width: 100%;}
.select-item select{width:100%;}
.info-card{margin:.4rem;padding:1rem;border-radius:.4rem;gap:1.2rem;align-items: center;background-image:url(https://visipri.com/woodpanel/img/wood-texture.webp);background-position:center;background-repeat:no-repeat;background-size:cover;}
.info-card img{display:block;width:500px;max-width: 46%;height:auto;margin:0 auto;border:4px solid;}
.info-expl{width:400px;max-width:46%;margin:0 auto;background:#ffffffba;padding:.8rem;height:auto;border-radius:0.4rem;font-family:sans-serif;align-content:center;}
.info-expl h4{text-align:center;margin:0 auto 1rem;color:#bc4d09;border-bottom:2px solid #492003;}
.info-expl p{font-size:.8rem;margin:.4rem;}
@media(max-width:650px){
	.info-card{flex-direction:column;}
	.f-wrap .info-card:nth-child(even){flex-direction:column-reverse;}
	.info-card img{width:360px;max-width:96%;}
	.info-expl{max-width: 85%;}
}
/* デザインオプションのボタン */
.div-design-option-button{position: relative;width: fit-content;margin:auto;}
.div-design-option-button a{width:100%;height:100%;display:block;position:absolute;top:0;opacity: 0;}
#design-option-button{display:block;width:380px;max-width:94%;border-radius:.4rem;margin:0 auto;box-shadow:5px 8px 5px #5e5e5e;}
.div-design-option-button:hover #design-option-button{transform:scale(1.08);}

.imp{width:690px;max-width:90%;margin:0 auto;}
.imp h4{color:#000;font-size:1.2rem;display:flex;align-items:center;font-weight:bold;margin:.2rem auto .7rem;border-bottom:2px solid;width:fit-content;text-align:center}
.imp h4 img{width:1.5rem;height:1.5rem;margin-right:5px;}
.imp p{margin:.2rem 1.5rem;}
.b-border{padding:.5rem;border-radius:.4rem;border:4px solid red;}
#deadline{width: 800px;max-width: 90%;margin: 0 auto;}