@charset "UTF-8";

/*
 Theme Name:   BASARA 子テーマ
 Template:     basara_tcd100
 Author:       masakichi
 Version:      1.3
*/

/*------------------------------------------------------------------------------------------------------------------------------
文字フォント
------------------------------------------------------------------------------------------------------------------------------*/
html {
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
}

:root,
::before,
::after {
	--tcd-child-accent-color: #f01919;
	--tcd-child-link-color: #f01919;
}
/*------------------------------------------------------------------------------------------------------------------------------
文字フォント end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
各色の変更
------------------------------------------------------------------------------------------------------------------------------*/
@media (hover: hover) and (pointer: fine) {
	a:hover {
		color: var(--tcd-child-accent-color);
	}
}
@media (hover: hover) and (pointer: fine) {
	.c-comment-tab-item:not(.is-active) a:hover {
		color: #fff;
		background-color: var(--tcd-child-accent-color);
		border-color: var(--tcd-child-accent-color);
	}
}
@media (hover: hover) and (pointer: fine) {
	.c-pw-btn--submit:hover {
		background: var(--tcd-child-accent-color);
	}
}
@media (hover: hover) and (pointer: fine) {
	.l-header-bar-inner a:hover,
	.l-header-bar-inner button:hover {
		color: var(--tcd-child-accent-color);
	}
}
@media (hover: hover) and (pointer: fine) {
	body.drawer-available .p-drawer-contents-close:hover {
		color: var(--tcd-child-accent-color);
	}
}
body.drawer-available .p-drawer-menu li.current-menu-item > a {
	color: var(--tcd-child-accent-color);
}
@media (hover: hover) and (pointer: fine) {
	body.drawer-available .p-drawer-menu a:hover,
	body.drawer-available .p-drawer-menu .menu-item-has-children > a > .p-drawer-menu-toggle:hover {
		color: var(--tcd-child-accent-color);
	}

	body.drawer-available .p-drawer-menu a:hover:has(.p-drawer-menu-toggle:hover) {
		color: inherit;
	}
}
body.drawer-available .p-drawer-type2 .p-drawer-menu > li > .sub-menu::after {
	background-color: var(--tcd-child-accent-color);
	opacity: 1;
}

/* global nav */
@media (min-width: 992px) {
	body:not(.drawer-available) .p-global-nav > li.current-menu-item > a {
		z-index: 2;
		color: var(--tcd-child-accent-color);
	}
	body:not(.drawer-available) .p-global-nav .sub-menu .current-menu-item > a {
		background-color: var(--tcd-child-accent-color);
	}
	@media (hover: hover) and (pointer: fine) {
		body:not(.drawer-available) .p-global-nav > li > a:hover {
			z-index: 2;
			color: var(--tcd-child-accent-color);
		}

		body:not(.drawer-available) .p-global-nav .sub-menu a:hover {
			background-color: var(--tcd-child-accent-color);
		}

		body:not(.drawer-available) .p-global-nav .menu-item-has-children:hover > .sub-menu {
			visibility: visible;
			opacity: 1;
		}
	}
}
@media (hover: hover) and (pointer: fine) {
	.p-megamenu:hover {
		z-index: 999;
		pointer-events: auto;
		visibility: visible;
		opacity: 1;
		transition-duration: 0.2s;
	}

	.p-megamenu01 .p-megamenu-list-item a:hover .p-megamenu-list-item-title {
		background-color: var(--tcd-child-accent-color);
	}

	.p-megamenu01 .p-megamenu-list-item a:hover .p-megamenu-list-item-thumbnail-overlay,
	.p-megamenu01 .p-megamenu-list-item a:hover .p-megamenu-list-item-info {
		opacity: 1;
	}

	.p-megamenu02 .p-megamenu-archive-item a:hover .p-megamenu-archive-item-title {
		color: var(--tcd-child-accent-color);
	}

	.p-megamenu02 .p-megamenu-list-item.is-active .p-megamenu-list-item-title,
	.p-megamenu02 .p-megamenu-list-item-title:hover {
		background-color: var(--tcd-child-accent-color);
	}
}
.p-breadcrumb-inner {
	font-size: 14px;
	line-height: 1;
	color: var(--tcd-child-accent-color);
	white-space: nowrap;
}
@media (hover: hover) and (pointer: fine) {
	.p-footer-nav a:hover,
	.p-footer-nav-area .p-social-nav a:hover {
		color: var(--tcd-child-accent-color);
	}
}
.p-pagetop a {
	display: block;
	width: 60px;
	height: 60px;
	line-height: 60px;
	color: #fff;
	text-align: center;
	background-color: var(--tcd-child-accent-color);
}
@media (hover: hover) and (pointer: fine) {
	a.p-button:hover,
	button.p-button:not(:disabled):hover {
		background-color: var(--tcd-child-accent-color);
	}
}
.p-archive02-s .p-archive02-item-date {
	padding-right: 16px;
	font-size: 14px;
	color: var(--tcd-child-accent-color);
}
@media (hover: hover) and (pointer: fine) {
	.p-archive02-s .p-archive02-item-anchor:hover .p-archive02-item-title {
		color: var(--tcd-child-accent-color);
	}
}
@media (hover: hover) and (pointer: fine) {
	.p-main-expand-search-submit:hover {
		color: var(--tcd-child-accent-color);
	}
}
@media (hover: hover) and (pointer: fine) {
	.p-cb-item-button:hover {
		color: #fff;
		background-color: var(--tcd-child-accent-color);
	}
}
@media (hover: hover) and (pointer: fine) {
	.p-cb-carousel-tab-item a:hover {
		color: #fff;
		background-color: var(--tcd-child-accent-color);
	}
}
/* widget title */
.p-widget-title {
	position: relative;
	padding-top: 22px;
	margin-bottom: 22px;
	font-size: 16px;
	font-weight: 600;
	line-height: 1.4;
	border-top: 3px solid var(--tcd-child-accent-color);
}
@media (hover: hover) and (pointer: fine) {
	.widget_tag_cloud .tag-cloud-link:hover {
		color: #fff;
		text-decoration: none !important;
		background: var(--tcd-child-accent-color);
	}
}
/* post bottom slider */
.tcd-post-slider-widget {
	padding: 19px 19px 16px;
	background: #fff;
	border-color: var(--tcd-child-accent-color) #ddd #ddd #ddd;
	border-style: solid;
	border-width: 3px 1px 1px 1px;
}
.p-archive03-item-category {
	font-size: 14px;
	color: var(--tcd-child-accent-color);
}
.p-archive03-item-rank {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 4;
	min-width: 40px;
	height: 40px;
	padding: 0 5px;
	font-weight: 600;
	line-height: 40px;
	color: #fff;
	text-align: center;
	background-color: var(--tcd-child-accent-color);
}
.p-archive03-item-cart a {
	color: var(--tcd-child-accent-color);
	background: #fff;
}
@media (hover: hover) and (pointer: fine) {

	.p-archive03-item-like:hover,
	.p-archive03-item-cart a:hover {
		color: #fff;
		background-color: var(--tcd-child-accent-color);
	}
}
:not(.wp-block-pullquote) > blockquote:not([class*="is-style-"]),
.wp-block-quote.is-style-default {
	position: relative;
	padding: 2rem 2.4rem;
	line-height: 1.8;
	color: rgba(0, 0, 0, 0.6);
	background: rgba(0, 0, 0, 0.03);
	border-top: none;
	border-right: none;
	border-bottom: none;
	border-left: 5px solid var(--tcd-child-accent-color);
}
:not(.wp-block-pullquote) > blockquote:not([class*="is-style-"])::before,
:not(.wp-block-pullquote) > blockquote:not([class*="is-style-"])::after,
.wp-block-quote.is-style-default::before,
.wp-block-quote.is-style-default::after {
	position: absolute;
	width: 30px;
	height: 30px;
	font-size: 30px;
	font-style: italic;
	font-weight: 400;
	color: var(--tcd-child-accent-color);
	content: '"';
}
:not(.wp-block-pullquote) > blockquote:not([class*="is-style-"]) cite,
.wp-block-quote.is-style-default cite {
	display: block;
	padding: 2rem 0 0 0;
	margin: 2rem 0 0 0;
	font-size: 90%;
	font-style: italic;
	text-align: right;
	border-top: 1px dotted var(--tcd-child-accent-color);
}
.p-body pre:not(.wp-block-code) {
	padding: 20px;
	overflow: auto;
	line-height: 1.8;
	background: rgba(0, 0, 0, 0.03);
	border-top: none;
	border-right: none;
	border-bottom: none;
	border-left: 3px solid var(--tcd-child-accent-color);
}
.splide__pagination__page.is-active {
	background-color: var(--tcd-child-accent-color);
	border-color: var(--tcd-child-accent-color);
}

.splide__pagination__page:focus-visible,
.splide.is-focus-in .splide__pagination__page:focus {
	outline: 3px solid var(--tcd-child-accent-color);
	outline-offset: 3px;
}

@media (hover: hover) and (pointer: fine) {
	.splide__arrow:hover:not(:disabled) {
		color: #999;
	}

	.splide__pagination__page:hover {
		background-color: var(--tcd-child-accent-color);
		border-color: var(--tcd-child-accent-color);
	}
}
.q_custom_button::after {
	position: absolute;
	inset: 0;
	z-index: -1;
	display: block;
	content: "";
	background-color: var(--tcd-child-accent-color, #000);
	opacity: 0;
	transition-timing-function: cubic-bezier(0.17, 0.84, 0.44, 1);
	transition-duration: 0.5s;
	transition-property: opacity, transform;
}

.q_underline1 {
	font-weight: var(--tcd-underline1-font-weight, 400);
	background-image: linear-gradient(to right, transparent 50%, var(--tcd-underline1-color, var(--tcd-child-accent-color)) 50%);
	background-position: var(--tcd-underline1-background-position, 0 0.8em);
}

.q_underline2 {
	font-weight: var(--tcd-underline2-font-weight, 400);
	background-image: linear-gradient(to right, transparent 50%, var(--tcd-underline2-color, var(--tcd-child-accent-color)) 50%);
	background-position: var(--tcd-underline2-background-position, 0 0.8em);
}

.q_underline3 {
	font-weight: var(--tcd-underline3-font-weight, 400);
	background-image: linear-gradient(to right, transparent 50%, var(--tcd-underline3-color, var(--tcd-child-accent-color)) 50%);
	background-position: var(--tcd-underline3-background-position, 0 0.8em);
}

@media (hover: hover) and (pointer: fine) {
	.p-header-view-cart .woocommerce.widget_shopping_cart ul.cart_list li a:hover { color:rgba(var(--tcd-child-accent-color, 0,0,0),1); }
}

/*------------------------------------------------------------------------------------------------------------------------------
各色の変更 end
------------------------------------------------------------------------------------------------------------------------------*/

body.drawer-available.show-drawer .p-drawer-contents{
	top: 32px;
}

.p-header-slider-item-3 .p-header-content-image{
	background-position: top center;
}

@media (max-width: 599px) {
	.p-header-slider-item-1 .p-header-content-image{
		background-position: 40% 50%;
	}
	.p-header-slider-item-2 .p-header-content-image{
		background-position: 70% 50%;
	}
	.p-header-slider-item-3 .p-header-content-image{
		background-position: 30% 50%;
	}
}

.sns_area{
	display: none;
}
.sns_area .insta_link{
	display: block;
	width: 20px;
	height: 20px;
}
.sns_area .line_link{
	display: block;
	width: 20px;
	height: 20px;
}
.sns_area .insta_link img{
	width: 100%;
	height: auto;
	opacity: 0.7;
}
.sns_area .line_link img{
	width: 100%;
	height: auto;
	opacity: 0.7;
}
body.drawer-available .sns_area{
	display: flex;
	align-items: center;
	gap: 0 12px;
}

body.drawer-available .p-menu-button{

}
body.drawer-available .switcher{
	width: 100%;
}

body.drawer-available .switcher .selected{
	background: rgba(0,0,0,0.7);
}
body.drawer-available .switcher .selected a{
	width: 100%;
}
body.drawer-available .switcher .option{
	width: 100%;
}

/* .fixed_btn{
	position: fixed;
	top: 286px;
	right: 0;
	display: block;
	width: 80px;
} */

.fixed_sns_area{
	position: fixed;
	/* top: 566px; */
	top: 70dvh;
	right: 0;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px 0;
	width: 80px;
	transition: opacity 0.3s; /* フェードイン・アウトのトランジション */
}
.fixed_sns_area a{
	display: block;
	width: 50px;
    height: 50px;
}
.fixed_sns_area a img{
	width: 100%;
	height: auto;
	opacity: .8;
}
.fixed_btn {
	position: fixed;
	/* top: 286px; */
	top: calc(50dvh - 20dvh);
	right: 0;
	display: block;
	width: 80px;
	transition: opacity 0.3s; /* フェードイン・アウトのトランジション */
  }
  .hidden {
	opacity: 0;
  }
.fixed_btn img{
	display: block;
	width: 100%;
}
.p-loading-screen-catch p{
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.p-loading-screen{
	/* background: linear-gradient(rgba(255, 255, 255, .3), rgba(255, 255, 255, .3)),rgba(240, 25, 25, 1)!important; */
}
.p-header-search{
	display: none!important;
}
.p-header-logo-text{
	font-family: "biz-udmincho", sans-serif!important;
	font-weight: 400;
	font-style: normal;
	font-size: 28px;
}
.p-header-logo-text a{
	display: flex;
	align-items: center;
	gap: 0 8px;
}
.p-header-logo img{
	width: 38px;
	margin-bottom: 4px;
    object-fit: contain;
}
.p-header-logo-mobile{
	display: none!important;
}
@media (max-width: 991px){
	.p-breadcrumb-inner{
		line-height: 2;
	}
	.p-header-logo{
		display: flex;
		font-size: 20px;
	}
	.p-header-logo-text a{
		gap: 0 4px;
	}
	.fixed_btn{
		width: 60px;
		top: 200px;
	}
	.sns_area{
		width: 60px;
		top: 412px;
	}
	.sns_area a{
		width: 40px;
		height: 40px;
	}
	.p-header-logo img{
		width: 27px;
	}
	.fixed_sns_area{
		display: none;
	}
}

.header_tel_area{
	display: none;
}
/* .header_tel_area{
	display: flex;
	justify-content: center;
}
.header_tel_area a{
	display: flex;
	align-items: center;
	gap: 0 4px;
	font-size: 26px;
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #F01919;
}
.header_tel_area a::before{
	content: '';
	display: block;
	background: url(./img/phone.svg) no-repeat 50% / contain;
	width: 21px;
	height: 20px;
} */


/*  これなしになった
.sns_footer_area{
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 0 0;
	margin: 52px auto 0;
	max-width: 330px;
	width: 100%;
}

.sns_footer_area .insta_link{
	display: flex;
	align-items: center;
	gap: 0 15px;
}

.sns_footer_area .line_link{
	display: flex;
	align-items: center;
	gap: 0 15px;
}
.sns_footer_area .insta_link:hover{
	opacity: 0.7;
}

.sns_footer_area .line_link:hover{
	opacity: 0.7;
}
.sns_footer_area img{
	width: 40px;
	height: auto;
}
.sns_footer_area p{
	color: #ffffff;
	font-family: "biz-udmincho", sans-serif !important;
    font-weight: 400;
    font-style: normal;
	font-size: 20px;
	line-height: 1;
}

.p-footer-nav-area{
	margin-top: 82px;
}
*/

/* @media (max-width: 991px) {
	.sns_footer_area{
		margin: 45px auto 10px;
		justify-content: space-around;
	}
	.sns_footer_area .insta_link{
		gap: 0 10px;
	}
	.sns_footer_area .insta_link{
		gap: 0 10px;
	}
	.sns_footer_area img{
		width: 30px;
	}
} */

@media (min-width: 992px){
	body:not(.drawer-available) .p-global-nav>li.current-menu-item>a{
		color: #f01919;
	}
	body:not(.drawer-available) .header_tel_area{
		display: flex;
		justify-content: center;
	}
	body:not(.drawer-available) .header_tel_area a{
		display: flex;
		align-items: center;
		gap: 0 4px;
		font-size: 26px;
		font-family: "biz-udmincho", sans-serif;
		font-weight: 400;
		font-style: normal;
		color: #F01919;
	}
	body:not(.drawer-available) .header_tel_area a::before{
		content: '';
		display: block;
		background: url(./img/phone.svg) no-repeat 50% / contain;
		width: 21px;
		height: 20px;
	}
}

.p-footer-logo-text{
	font-family: "biz-udmincho", sans-serif!important;
	font-weight: 400;
	font-style: normal;
	font-size: 28px;
}
.p-footer-logo-text a{
	display: flex;
	align-items: center;
	gap: 0 10px;
	width: fit-content;
	margin: 0 auto;
	color: #ffffff!important;
}
.p-footer-logo img{
	width: 38px;
	margin-bottom: 4px;
    object-fit: contain;
}

.p-footer-logo-mobile{
	display: none!important;
}
@media (max-width: 991px){
	.p-footer-logo{
		display: block;
	}
	.p-footer-nav-area{
		display: none;
	}
	.p-footer{
		padding-top: 25px!important;
	}
	.p-footer-logo img{
		width: 27px;
	}
	.p-footer-logo-text a{
		font-size: 20px;
		gap: 0 4px;
	}
}

.p-breadcrumb-inner{
	color: #F01919;
}
/*------------------------------------------------------------------------------------------------------------------------------
TOPページ
------------------------------------------------------------------------------------------------------------------------------*/
.splide__pagination{
	gap: 30px;
}
.home h2{
	color: #F01919;
	font-weight: 500;
	font-family: "biz-udmincho", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.home h2.p-text-direction-type2{
	letter-spacing: 3px;
	line-height: 1.6;
	font-family: "biz-udmincho", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.p-header-content-catch{
	margin: unset!important;
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
	line-height: 2!important;
	letter-spacing: 1px;
}

.home .p-cb-item.p-cb-item-carousel_gallery{
	margin-top: 133px;
}
.home .p-cb-item.p-cb-item-carousel_gallery .p-text-direction-inner{
	display: flex;
	align-items: center;
	gap: 0 16px;
}
.home .p-cb-item.p-cb-item-carousel_gallery .p-text-direction-inner::before{
	content: '';
	display: block;
	background: url(./img/mark.svg) no-repeat 50% / contain;
	width: 60px;
	height: 58px;
}

.home .p-cb-item.p-cb-item-design_content{
	margin-top: 133px;
}
.home .p-cb-item.p-cb-item-design_content .p-text-direction-inner{
	display: flex;
	align-items: center;
	gap: 0 16px;
}
.home .p-cb-item.p-cb-item-design_content .p-text-direction-inner::before{
	content: '';
	display: block;
	background: url(./img/mark.svg) no-repeat 50% / contain;
	width: 60px;
	height: 58px;
}

@media (min-width: 992px) {
	.home .p-cb-design-content-image{
		margin-top: 80px;
	}
}

.home #cb-4.p-cb-item.p-cb-item-design_content{
	margin-top: 194px;
}
.home #cb-5{
	margin-top: 200px;
}
.home #cb-6 .p-text-direction-inner{
	display: flex;
	align-items: center;
	gap: 0 16px;
}
.home #cb-6 .p-text-direction-inner::before{
	content: '';
	display: block;
	background: url(./img/mark.svg) no-repeat 50% / contain;
	width: 60px;
	height: 58px;
}
.home #cb-7{
	margin-top: 186px;
}
.home #cb-8{
	margin-top: 143px;
}

.splide__pagination__page.is-active{
	background-color: #F01919;
	border-color: #F01919;
}
.p-archive02 .p-archive02-item-date{
	color: #F01919;
}
.p-archive02 .p-archive02-item-title{
	font-weight: 500;
}
.p-archive02 .p-archive02-item:first-child:before{
	border-width: 0 0 1px;
}
.p-archive02 .p-archive02-item:before{
	border-width: 0 0 1px;
}
.p-archive02 .p-archive02-item-thumbnail{
	flex: 0 0 120px;
	padding-top: 90px;
}
.p-archive02 .p-archive02-item-anchor{
	padding: 15px 0;
}
@media (max-width: 991px) {
	.p-archive02{
		display: unset;
		margin: unset;
	}
	.p-archive02 .p-archive02-item-anchor{
		display: flex;
	}
	.p-archive02 .p-archive02-item:nth-child(odd) .p-archive02-item-info{
		border-right: unset;
	}
	.p-archive02 .p-archive02-item-date{
		margin-bottom: 9px;
	}
	.p-archive02 .p-archive02-item-title{
		height: unset;
		margin: unset;
	}
	.p-archive02 .p-archive02-item{
		border-bottom: 1px solid #ddd;
	}
}
.reserva_btn{
	max-width: 700px;
	margin: 0 auto;
}
.reserva_btn a{
	position: relative;
	display: block;
	margin-bottom: 19px;
}
.reserva_btn a::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(12px, -12px);
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid #F01919;
}
.reserva_btn img{
	display: block;
}
.reserva_btn span{
	display: block;
}
.reserva_btn br{
	display: none;
}
.reserva_btn > a > p{
	display: none;
}
.reserva_btn .notice{
	font-size: 14px;
	text-align: center;
}

.reserva_btn .card_text{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: block;
	width: 100%;
	text-align: center;
	/* font-size: 30px; */
	font-size: clamp(16px,3vw,30px);
	line-height: 1.888;
	color: #ffffff;
	z-index: 1;
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.reserva_btn .card_text br{
	display: block;
}


.enjoy_backgound{
	margin: 0 calc(50% - 50vw);
    width: 100vw;
}
.enjoy_backgound img{
	display: block;
	height: 450px!important;
	object-fit: cover;
	margin-bottom: 40px;
}
.enjoy_backgound + p{
	display: block;
	max-width: 525px;
	margin: 0 auto!important;
}

.japanese_goods_btn{
	color: #ffffff!important;
	text-decoration: none!important;
}
.guide_card{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0 98px;
}
.guide_card img{
	max-width: 500px!important;
	width: calc(100% / 2);
}
.guide_card h3{
	margin: 0 0 14px!important;
	display: flex;
	align-items: center;
	gap: 0 11px;
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 28px;
}
.guide_card h3::before{
	content: '';
	display: block;
	background: url(./img/mark.svg) no-repeat 50% / contain;
	width: 38px;
	height: 36px;
}
.guide_card p{
	margin: 0!important;
}
.guide_card .guide_card_item{
	display: flex;
	flex-direction: column;
	gap: 0 25px;
	width: 100%;
	max-width: 500px;
}
.guide_card .guide_card_item p{
	display: flex;
	gap: 0 19px;
}
.guide_card .guide_card_item p span:nth-of-type(1){
	width: 64px;
}

.card_list{
	display: flex;
	flex-direction: column;
	gap: 30px 0;
	width: 100%;
	max-width: 610px;
	margin: 0 auto;
}
.card_list p{
	display: flex;
	align-items: center;
	gap: 0 38px;
}
.card_list p .card_list_title{
	border: 1px solid #000000;
	width: 200px;
	padding: 22px 0;
	text-align: center;
	line-height: 1;
}
@media (max-width: 991px) {
	.guide_card{
		flex-direction: column;
		gap: 16px 0;
		max-width: 700px;
		width: 100%;
		margin: 0 auto;
	}
	.guide_card img{
		width: 100%;
	}
	.guide_card .guide_card_item{
		width: fit-content;
	}
}
@media (max-width: 599px) {
	.card_list{
		max-width: 400px;	
	}
	.card_list p{
		flex-direction: column;
		align-items: center;
		gap: 8px 0;
	}
}
.p-footer{
	background-color: #525252;
	padding: 65px 0 25px;
}
.p-social-nav{
	display: none;
}
.p-footer-nav{
	display: flex;
	align-items: baseline;
	gap: 0 42px;
}
.p-footer-nav a{
	color: #ffffff;
}
.p-copyright{
	background-color: #2C2C2C;
}
.iframe_wrapper iframe{
	display: block;
	width: 100%;
	height: 600px;
}
/*------------------------------------------------------------------------------------------------------------------------------
TOPページ end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
topicsスライダー
------------------------------------------------------------------------------------------------------------------------------*/
@media (min-width: 992px) {
	.p-cb-item-carousel_topics.has-headline .p-cb-item-inner > .p-cb-item-headline {
		display: none;
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-item-content {
		display: flex;
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-carousel-headline {
		flex: 0 0 21.5862%;
		max-width: 370px;
		padding-right: 40px;
		padding-left: 40px;
		overflow: hidden;
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-carousel-headline .p-cb-item-headline {
		margin-bottom: 0;
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-carousel-wrapper {
		width: 78.4138%;
		padding-right: 0;
		padding-left: 0;
		margin-right: 0;
		margin-left: 0;
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-carousel .splide__arrow {
		top: 96px;
		background: #fff;
		border-radius: 50%;
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-carousel .splide__arrow--prev {
		transform: translate3d(-50%, -50%, 0);
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-carousel .splide__arrow--next {
		right: auto;
		left: 1050px;
		transform: translate3d(-45px, -50%, 0);
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-carousel .splide__arrow svg {
		width: 18px;
		height: 18px;
	}

	.p-cb-carousel-headline.p-text-direction-type2 .p-text-direction-inner {
		margin: 0;
	}

	/* 縦書き（見出しロゴ画像付き）の例外処理 */
	.p-cb-item-carousel_topics .p-cb-headline-logo-wrapper {
		width: 21.5862%;
		max-width: 370px;
		padding-right: 40px;
		padding-left: 40px;
	}

	.p-cb-item-carousel_topics .p-cb-headline-logo-wrapper .p-headline-logo img {
		display: block;
		margin: auto;
	}

	.p-cb-item-carousel_topics .p-cb-headline-logo-wrapper + .p-cb-item-content .p-headline-logo {
		display: none;
	}
}

@media (min-width: 1715px) {
	.p-cb-item-carousel_topics.has-headline .p-cb-carousel-wrapper {
		width: calc(100% - 370px);
	}
}

@media (min-width: 1280px) {
	.p-cb-item-carousel_topics.has-headline .p-cb-carousel-headline,
	.p-cb-item-carousel_topics .p-cb-headline-logo-wrapper {
		padding-left: 80px;
	}
}

@media (max-width: 991px) {
	.p-cb-carousel .p-archive-item,
	.p-cb-carousel .p-archive03-item {
		flex: 0 0 230px;
		width: 230px;
	}

	.p-cb-carousel .p-archive-item-info,
	.p-cb-carousel .p-archive03-item-info {
		margin-top: 20px;
	}

	.p-cb-carousel .p-archive03-item-meta {
		margin-bottom: calc(14px - 0.1em);
	}

	.p-cb-item-carousel_topics .p-cb-carousel-wrapper {
		margin-right: -20px;
	}

	.p-cb-item-carousel_topics.has-headline .p-cb-carousel-wrapper {
		margin-right: 0;
		margin-left: 20px;
	}

	.p-cb-item-carousel_topics .p-cb-headline-logo-wrapper,
	.p-cb-item-carousel_topics .p-cb-carousel-headline {
		display: none;
	}
}
/*------------------------------------------------------------------------------------------------------------------------------
topicsスライダー end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
galleryスライダー
------------------------------------------------------------------------------------------------------------------------------*/
@media (min-width: 992px) {
	.p-cb-item-carousel_gallery.has-headline .p-cb-item-inner > .p-cb-item-headline {
		display: none;
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-item-content {
		display: flex;
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel-headline {
		flex: 0 0 21.5862%;
		max-width: 370px;
		padding-right: 40px;
		padding-left: 40px;
		overflow: hidden;
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel-headline .p-cb-item-headline {
		margin-bottom: 0;
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel-wrapper {
		margin-top: 80px;
		width: 78.4138%;
		padding-right: 0;
		padding-left: 0;
		margin-right: 0;
		margin-left: 0;
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel .splide__arrow {
		top: 126px;
		background: #fff;
		border-radius: 50%;
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel .splide__arrow--prev {
		transform: translate3d(-50%, -50%, 0);
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel .splide__arrow--next {
		right: auto;
		left: 1050px;
		transform: translate3d(-45px, -50%, 0);
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel .splide__arrow svg {
		width: 18px;
		height: 18px;
	}

	.p-cb-carousel-headline.p-text-direction-type2 .p-text-direction-inner {
		margin: 0;
	}

	/* 縦書き（見出しロゴ画像付き）の例外処理 */
	.p-cb-item-carousel_gallery .p-cb-headline-logo-wrapper {
		width: 21.5862%;
		max-width: 370px;
		padding-right: 40px;
		padding-left: 40px;
	}

	.p-cb-item-carousel_gallery .p-cb-headline-logo-wrapper .p-headline-logo img {
		display: block;
		margin: auto;
	}

	.p-cb-item-carousel_gallery .p-cb-headline-logo-wrapper + .p-cb-item-content .p-headline-logo {
		display: none;
	}
}

@media (min-width: 1715px) {
	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel-wrapper {
		width: calc(100% - 370px);
	}
}

@media (min-width: 1280px) {
	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel-headline,
	.p-cb-item-carousel_gallery .p-cb-headline-logo-wrapper {
		padding-left: 80px;
	}
}

@media (max-width: 991px) {
	.p-cb-carousel .p-archive-item,
	.p-cb-carousel .p-archive03-item {
		flex: 0 0 230px;
		width: 230px;
	}

	.p-cb-carousel .p-archive-item-info,
	.p-cb-carousel .p-archive03-item-info {
		margin-top: 20px;
	}

	.p-cb-carousel .p-archive03-item-meta {
		margin-bottom: calc(14px - 0.1em);
	}

	.p-cb-item-carousel_gallery .p-cb-carousel-wrapper {
		margin-right: -20px;
	}

	.p-cb-item-carousel_gallery.has-headline .p-cb-carousel-wrapper {
		margin-right: 0;
		margin-left: 20px;
	}

	.p-cb-item-carousel_gallery .p-cb-headline-logo-wrapper,
	.p-cb-item-carousel_gallery .p-cb-carousel-headline {
		display: none;
	}
}

.p-cb-item-carousel_gallery .p-archive-item-info{
	display: none;
}
.p-cb-item-carousel_gallery .p-cb-item-inner.l-inner{
	max-width: none;
    padding-left: 0;
    padding-right: 0;
}

/*------------------------------------------------------------------------------------------------------------------------------
galleryスライダー end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
お知らせ一覧ページ
------------------------------------------------------------------------------------------------------------------------------*/
.post-type-archive-news .p-header-content-has-catch-bg .p-header-content-catch-bg{
	background-color: rgba(240,25,25,0.7);
}
.post-type-archive-news .p-header-content-has-catch-bg .p-header-content-catch{
	color: #ffffff;
}
.post-type-archive-news .p-archive02-s .p-archive02-item{
	border-radius: 0;
	border: 0;
}
.post-type-archive-news .p-archive02-s .p-archive02-item:before{
	position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    content: "";
    border-color: #ddd;
    border-style: solid;
	border-width: 0 0 1px;
}
.post-type-archive-news .p-archive02-s .p-archive02-item a{
	position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
	padding: 15px 0;
}
.post-type-archive-news .p-hover-effect-bg{
	position: relative;
	flex: 0 0 120px;
    padding-top: 90px;
}
.post-type-archive-news .p-archive02-s .p-archive02-item img.p-hover-effect-image{
	position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}
.post-type-archive-news .p-archive02-s .p-archive02-item-info{
	padding: 20px 50px;
	height: auto;
	line-height: 1;
}
.post-type-archive-news .p-archive02-s .p-archive02-item-date{
	display: block;
    margin-top: -.1em;
    margin-bottom: 9px;
	padding-right: 0;
    font-size: 14px;
    line-height: 1.2;
	color: #f01919;
}
.post-type-archive-news .p-archive02-s .p-archive02-item-title{
	display: -webkit-box;
    max-height: 4.5em;
    overflow: hidden;
    font-size: 18px;
    font-weight: 500;
    line-height: 1.5;
	color: #000000;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.post-type-archive-news .plan_category_area{
	margin-top: 8px;
    font-size: 14px;
    /* color: #f01919; */
}
.post-type-archive-news .plan_category_area > span{
	background: #f01919;
    color: #ffffff;
    display: inline-block;
    padding: 4px 16px;
	margin-right: 8px;
}
.single-news .news_category_area{
	margin-top: 8px;
	font-size: 14px;
    /* color: #f01919; */
}
.single-news .news_category_area > span{
	background: #f01919;
    color: #ffffff;
    display: inline-block;
    padding: 4px 16px;
	margin-right: 8px;
}
.p-archive02 .plan_category_area{
	margin-top: 8px;
	font-size: 14px;
    /* color: #f01919; */
}
.p-archive02 .plan_category_area > span{
	background: #f01919;
    color: #ffffff;
    display: inline-block;
    padding: 4px 16px;
	margin-right: 8px;
}
/*------------------------------------------------------------------------------------------------------------------------------
お知らせ一覧ページ end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
フォトギャラリー一覧ページ end
------------------------------------------------------------------------------------------------------------------------------*/
.post-type-archive-gallery .p-header-content-has-catch-bg .p-header-content-catch-bg{
	background-color: rgba(240,25,25,0.7);
}
.post-type-archive-gallery .p-header-content-has-catch-bg .p-header-content-catch{
	color: #ffffff;
}
.post-type-archive-gallery .p-archive02-s{
	display: flex;
	flex-wrap: wrap;
	gap: 5px 5px;
}
.post-type-archive-gallery .p-archive02-s .p-archive-item{
	flex: unset;
	width: calc((100% / 2) - 2.5px);
}
.post-type-archive-gallery .p-archive02-s .p-archive-item .p-archive-item-info{
	display: none;
}
.post-type-archive-gallery .p-archive02-s .p-archive-item a img{
	-webkit-transition: scale .3s;
	transition: scale .3s;
}
.post-type-archive-gallery .l-main-inner{
	margin-top: 120px;
}
.post-type-archive-gallery .explain_area{
	width: fit-content;
	margin: 0 auto 175px;
	text-align: center;
}
.post-type-archive-gallery .explain_area .message{
	margin-bottom: 30px;
	font-size: 20px;
	line-height: 1.5;
	color: #F01919;
}
.post-type-archive-gallery .explain_area .explain{
	line-height: 1.875;
}
.load-more-container{
	margin-top: 128px;
    text-align: center;
}
.load-more-button{
	border: 0;
	display: inline-block;
    min-width: 280px;
    height: 60px;
    line-height: 60px;
    color: #fff;
    text-align: center;
    background-color: #000;
	cursor: pointer;
    transition-timing-function: cubic-bezier(.17,.84,.44,1);
    transition-duration: .5s;
    transition-property: background-color;
	font-family: arial,"Hiragino Sans","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","游ゴシック",yugothic,"メイリオ",meiryo,sans-serif;
}
@media (hover: hover) and (pointer: fine) {
    .load-more-button:hover {
        color: #fff;
        background-color: var(--tcd-child-accent-color);
    }
	body:not(.drawer-available) .p-global-nav>li>a:hover{
		color: #F01919;
	}
	.l-header-bar-inner a:hover, .l-header-bar-inner button:hover{
		color: #f01919;
	}
	.post-type-archive-gallery .p-archive02-s .p-archive-item a:hover img{
		scale: 1.2;
		-webkit-transition: scale .3s;
		transition: scale .3s;
	}
}

/* モーダルの基本スタイル */
#modal {
	position: fixed;
	z-index: 9999;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgba(0, 0, 0, 0.4);
}

#modal-content {
	background-color: #fefefe;
	/* margin: 15% auto; */
	margin: 20px auto;
	padding: 20px;
	border: 1px solid #888;
	/* width: 80%; */
	max-width: 80%;
	width: fit-content;
	max-height: calc(100vh - 40px);
}

#modal-body{
	/* height: 100%; */
	height: 100vh;
}
#modal-body img{
	height: 100%;
	max-height: calc(100% - 130px);
	object-fit: contain;
}
#modal-close {
	color: #aaa;
	float: right;
	font-size: 28px;
	font-weight: bold;
}

#modal-close:hover,
#modal-close:focus {
	color: black;
	text-decoration: none;
	cursor: pointer;
}
@media (max-width: 991px){
	.post-type-archive-gallery .l-main-inner{
		margin-bottom: 80px;
	}
}
@media (max-width: 767px){
	.post-type-archive-gallery .p-archive02-s .p-archive-item{
		margin-bottom: unset;
	}
	.post-type-archive-gallery .explain_area{
		margin-bottom: 60px;
	}
	.load-more-container{
		margin-top: 64px;
	}
}
/*------------------------------------------------------------------------------------------------------------------------------
フォトギャラリー一覧ページ end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
プラン・サービス一覧ページ
------------------------------------------------------------------------------------------------------------------------------*/
.post-type-archive-plan .p-header-content-has-catch-bg .p-header-content-catch-bg{
	background-color: rgba(240,25,25,0.7);
}
.post-type-archive-plan .p-header-content-has-catch-bg .p-header-content-catch{
	color: #ffffff;
}

.post-type-archive-plan .l-inner02{
	max-width: 1100px;
}
.post-type-archive-plan .p-archive02-s{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	/* gap: 90px 100px; */
	gap: 90px 20px;
	max-width: 1020px;
	margin: 0 auto;
}
.post-type-archive-plan .p-archive02-s .p-archive-item{
	flex: unset;
	width: calc((100% / 2) - 10px);
	max-width: 450px;
}
.post-type-archive-plan .p-archive02-s .p-archive-item a img{
	-webkit-transition: scale .3s;
	transition: scale .3s;
}
.post-type-archive-plan .p-archive-item-info{
	margin-top: 20px;
}

.post-type-archive-plan .l-main-inner{
	margin-top: 120px;
}
.post-type-archive-plan .explain_area{
	width: fit-content;
	margin: 0 auto 175px;
	text-align: center;
}
.post-type-archive-plan .explain_area .message{
	font-size: 20px;
	line-height: 2;
	color: #F01919;
}
.post-type-archive-plan .plan_category_area{
	margin-bottom: 20px;
	font-size: 14px;
	color: #F01919;
}
.post-type-archive-plan .p-archive-item-title{
	font-weight: 400;
	line-height: 1;
	max-height: unset;
	margin-top: 0;
	margin-bottom: 20px;
	font-size: 30px;
	font-family: biz-udmincho, sans-serif;
	font-style: normal;
	font-weight: 400;
}
.post-type-archive-plan .price_value{
	margin-bottom: 11px;
	font-size: 33px;
	font-weight: 600;
}
.post-type-archive-plan .price_mark{
	font-size: 20px;
}
.post-type-archive-plan .price_notice{
	font-size: 14px;
}
@media (hover: hover) and (pointer: fine){
	.post-type-archive-plan .p-archive02-s .p-archive-item a:hover{
		color: unset;
	}
	.post-type-archive-plan .p-archive02-s .p-archive-item a:hover img{
		scale: 1.2;
		-webkit-transition: scale .3s;
		transition: scale .3s;
	}
}

.post-type-archive-plan .reservation{
	margin-top: 161px;
}
.post-type-archive-plan .reservation .p-cb-item-headline{
	margin-bottom: 57px;
	font-size: 35px;
	color: #F01919;
	text-align: center;
	font-family: "biz-udmincho", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.post-type-archive-plan .reservation .explain{
	width: 100%;
	max-width: 594px;
	margin: 0 auto 85px;
	text-align: center;
	font-size: 18px;
	line-height: 2.222;
}
.post-type-archive-plan .reservation_card{
	position: relative;
	display: block;
	max-width: 700px;
	margin: 0 auto 19px;
}
.post-type-archive-plan .reservation_card::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	transform: translate(12px, -12px);
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid #F01919;
}
.post-type-archive-plan .reservation_card img{
	display: block;
	width: 100%;
}
.post-type-archive-plan .reservation_card .card_text{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	text-align: center;
	font-size: 30px;
	line-height: 1.888;
	color: #ffffff;
	z-index: 1;
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: clamp(16px, 3vw, 30px);
}
.post-type-archive-plan .reservation .notice{
	display: block;
	width: fit-content;
	margin: 0 auto;
	font-size: 14px;
	text-align: center;
}
@media (max-width: 991px) {
	.post-type-archive-plan .p-archive02-s{
		gap: 60px 20px;
	}
	.post-type-archive-plan .l-main-inner{
		margin-bottom: 80px;
	}
	.post-type-archive-plan .explain_area{
		margin-bottom: 60px;
	}
	.post-type-archive-plan .explain_area .message{
		font-size: 18px;
	}
	.post-type-archive-plan .p-archive-item-title{
		margin-bottom: 10px;
		font-size: 24px;
	}
	.post-type-archive-plan .price_value{
		font-size: 24px;
	}
	.post-type-archive-plan .price_mark{
		font-size: 14px;
	}
	.post-type-archive-plan .reservation .p-cb-item-headline{
		font-size: 22px;
	}
	.post-type-archive-plan .reservation .explain{
		font-size: 16px;
		text-align-last: left;
	}
}
@media (max-width: 599px) {
	.post-type-archive-plan .explain_area .message{
		text-align-last: left;
	}
}
/*------------------------------------------------------------------------------------------------------------------------------
プラン・サービス一覧ページ end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
プラン・サービス個別ページ
------------------------------------------------------------------------------------------------------------------------------*/
.single-plan .l-inner02{
	max-width: 1100px;
}
.single-plan .plan_category_area{
	font-size: 14px;
	color: #F01919;
}
.single-plan .price_top{
	margin-bottom: 10px;
	font-size: 14px;
}
.single-plan .price_value{
	margin-bottom: 11px;
	font-size: 33px;
	font-weight: 600;
}
.single-plan .price_mark{
	font-size: 20px;
}
.single-plan .price_consultation{
	display: inline-block;
}
.single-plan .price_notice{
	font-size: 14px;
}
.single-plan .p-button{
	margin-top: 38px;
}

.single-plan .spec_box{
	margin-bottom: 100px;
	border: 1px solid #707070;
}
.single-plan .spec_box_title{
	border-width: 0 1px 1px 0;
	border-color: #707070;
	border-style: solid;
	width: 100%;
	max-width: 339px;
	padding: 21px 0;
	text-align: center;
}
.single-plan .p-recent-plan .p-archive02-s{
	display: flex;
	gap: 0 34px;
}
.single-plan .p-recent-plan .p-archive-item-info{
	margin-top: 20px;
}
.single-plan .p-recent-plan .plan_category_area{
	margin-bottom: 10px;
	min-height: 48px;
}
.single-plan .p-recent-plan .plan_category{
	line-height: 1.7142857;
}
.single-plan .p-recent-plan .p-archive-item-title{
	margin: 0 0 10px;
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 20px;
}
.single-plan .p-recent-plan .price_value{
	font-size: 16px;
	font-weight: 400;
}
.single-plan .p-recent-plan .price_mark{
	font-size: 16px;
}

.single-plan .spec_box_explain{
	padding: 48px 30px 56px 74px;
}
.single-plan .spec_box_explain p{
	line-height: 2.5;
}

.single-plan .p-headline{
	margin-bottom: 80px;
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 35px;
	color: #F01919;
}

/* product single */
.p-entry-product {}

.p-entry-product-header {
	margin-top: -0.5em;
	margin-bottom: 37px;
	font-size: 28px;
	line-height: 2;
}

.p-entry-product-title {
	display: inline;
	padding-right: 14px;
	margin: 0;
	line-height: 2;
	font-size: 30px;
	font-family: "biz-udmincho", sans-serif;
	font-weight: 400;
	font-style: normal;
}

.p-entry-product-header-category,
.p-entry-product-header-category a {
	color: var(--tcd-child-accent-color);
}

.p-entry-product-header-meta {
	display: inline-flex;
	align-items: center;
	font-size: 14px;
	line-height: 2;
	vertical-align: 4px;
}

.p-entry-product-header-meta .woocommerce-product-rating .star-rating {
	display: none;
}

.p-entry-product-header-meta > * {
	display: inline-block;
	margin-right: 15px;
}

.p-entry-product-header-meta > :last-child {
	margin-right: 0;
}

.p-entry-product-header-meta > * + .p-entry-product-header-like {
	margin-left: 5px;
}

@media (max-width: 991px) {
	body.single-product .l-main-inner {
		margin-top: 20px;
	}

	.p-entry-product-header {
		margin-top: 0;
		margin-bottom: 17px;
	}

	.p-entry-product-title {
		display: block;
		padding-right: 0;
		margin: -0.5em 0;
	}

	.p-entry-product-header-meta {
		display: flex;
		flex-wrap: wrap;
		margin: 8px 0 -0.5em;
		vertical-align: baseline;
	}

	.p-entry-product-header-meta .p-entry-product-header-category {
		width: 100%;
		margin-right: 0;
	}

	body.has-footer-bar .p-entry-product-header-like {
		display: none;
	}

	.p-entry-product-cart {
		margin-top: 39px;
	}

	.p-entry-product-cart-prices {
		margin-top: 11px;
	}

	.p-entry-product-cart .p-button,
	.p-entry-product-cart > .out-of-stock {
		width: 250px;
		margin: 16px auto 0;
	}

	.p-entry-product-ad-top {
		margin-top: 40px;
	}

	.p-entry-product-ad-bottom {
		margin-top: 40px;
	}
}

/* product single image */
.p-entry-product-mainimage-outer {
	position: relative;
}

img.p-entry-product-mainimage {
	display: block;
	width: 100%;
	height: auto;
}

.p-entry-product-subimages {
	margin-top: 4px;
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.p-entry-product-subimages-inner {
	display: flex;
	gap: 4px;
}

.p-entry-product-subimage {
	flex: 0 0 162px;
	cursor: pointer;
}

.p-entry-product-subimage-inner {
	position: relative;
	padding-top: 68.1818%;
	overflow: hidden;
}

img.p-entry-product-subimage-image {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	object-fit: cover;
	width: 100%;
	height: 100%;
}

.p-entry-product-images-square .p-entry-product-subimage-inner {
	padding-top: 100%;
}

.p-entry-product-images-expand {
	position: absolute;
	right: 20px;
	bottom: 20px;
	z-index: 3;
	width: 50px;
	height: 50px;
	padding: 0;
	font-family: "design_plus";
	font-size: 16px;
	color: #000;
	cursor: pointer;
	background: #fff;
	border: none;
	border-radius: 50%;
	outline: none;
	appearance: none;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

@media (min-width: 992px) {
	.p-entry-product-main {
		display: flex;
		align-items: start;
		height: 448px;
		margin-bottom: 60px;
	}

	.p-entry-product-images,
	.p-entry-product-media {
		/* position: sticky;
		top: 1px;
		flex: 1 1 auto; */
		height: 100%;
		margin-right: 4.9%;
		transition: top 0.5s ease;
	}

	body.l-header-fix.is-header-fixed .p-entry-product-images,
	body.l-header-fix.is-header-fixed .p-entry-product-media {
		top: 96px;
	}

	.p-entry-product-main-right {
		flex: 0 0 30.3921%;
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.p-entry-product-main-right:only-child {
		flex: 0 0 100%;
	}

	body:not(.wp-mobile-device) .p-entry-product-subimages-inner {
		flex-wrap: wrap;
	}

	body:not(.wp-mobile-device) .p-entry-product-subimage {
		flex-basis: calc((100% - 12px) / 4);
	}
}

@media (max-width: 991px) {
	.p-entry-product-images {
		margin: 0 -20px 40px;
	}

	.p-entry-product-subimage {
		flex: 0 0 110px;
	}

	.p-entry-product-images-expand {
		display: none;
	}
}

@media (hover: hover) and (pointer: fine){
	.single-plan .p-archive02-s .p-archive-item a:hover{
		color: unset;
	}
}


@media (max-width: 991px) {
	.single-plan .l-main-inner{
		margin-bottom: 80px;
	}
	.single-plan .p-entry-product-main-right .p-entry-body p{
		margin-bottom: 40px;
	}
	.single-plan .p-headline{
		margin-bottom: 40px;
	}
	.single-plan .p-button{
		display: block;
		margin: 38px auto 38px;
		width: fit-content;
	}
	.single-plan .spec_box_explain{
		padding: 32px 30px 32px;
	}
	.single-plan .p-recent-plan .p-archive02-s{
		flex-direction: column;
		gap: 34px 0;
	}
	.single-plan .p-recent-plan .p-archive02-s .p-archive-item{
		flex: unset;
		width: 100%;
		max-width: 610px;
		margin: 0 auto;
	}
	.single-plan .p-recent-plan .plan_category_area{
		min-height: auto;
	}
}
@media (max-width: 599px) {
	.single-plan .spec_box_title{
		max-width: 140px;
	}
	.single-plan .p-headline{
		font-size: 22px;
	}
}
/*------------------------------------------------------------------------------------------------------------------------------
プラン・サービス個別ページ end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
こだわりページ
------------------------------------------------------------------------------------------------------------------------------*/
.page-id-80 .p-cb-item-headline{
	margin-bottom: 80px!important;
	font-family: "biz-udmincho", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.page-id-80 .p-cb-item-headline > br{
	display: none;
}
.page-id-80 .p-header-content-has-catch-bg .p-header-content-catch-bg{
	background-color: rgba(240,25,25,0.7);
}
.page-id-80 .p-header-content-has-catch-bg .p-header-content-catch{
	color: #ffffff;
}
.page-id-80 .l-main-inner{
	margin-top: 120px;
}
.page-id-80 .l-inner02{
	max-width: 1100px;
}
.page-id-80 .p-cb-item-headline{
	color: #F01919;
	font-size: 35px;
}
.page-id-80 .p-cb-item-headline.p-text-direction-type2{
	font-style: normal;
	line-height: 2;
	letter-spacing: 3px;
	font-family: "biz-udmincho", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.page-id-80 .image_area{
	display: flex;
	gap: 0 30px;
	margin-bottom: 85px;
}
.page-id-80 .image_area img{
	display: block;
	width: calc((100% / 2) - 15px);
}
.page-id-80 .image_area br{
	display: none;
}
.page-id-80 .explain{
	width: 100%;
	max-width: 800px;
	margin: 0 auto 175px;
}
.deliver_backgound{
	margin: 0 calc(50% - 50vw);
    width: 100vw;
}
.deliver_backgound img{
	display: block;
	height: 600px!important;
	object-fit: cover;
	margin-bottom: 40px;
}
.page-id-80 .image_area.image_area02{
	margin-bottom: 64px;
}
.page-id-80 .explain.explain02{
	margin-bottom: 76px;
}
.page-id-80 .explain.explain03{
	margin-bottom: 76px;
}
@media (max-width: 991px) {
	.page-id-80 .p-cb-item-headline{
		margin-bottom: 40px!important;
		font-size: 22px;
	
	}
	.page-id-80 .image_area{
		margin-bottom: 40px;
	}
	.page-id-80 .image_area.image_area02{
		margin-bottom: 40px;
	}
	.page-id-80 .l-main-inner{
		margin-bottom: 80px;
	}
}
@media (max-width: 768px) {
	.page-id-80 .image_area{
		flex-direction: column;
		align-items: center;
		gap: 16px 0;
	}
	.page-id-80 .image_area img{
		width: 100%;
		max-width: 500px;
	}
	.page-id-80 .explain{
		margin-bottom: 60px;
	}
	.page-id-80 .explain.explain02{
		margin-bottom: 32px;
	}
}
/*------------------------------------------------------------------------------------------------------------------------------
こだわりページ end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
和雑貨ページ
------------------------------------------------------------------------------------------------------------------------------*/
.page-id-89 .p-cb-item-headline{
	margin-bottom: 80px!important;
	font-family: "biz-udmincho", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.page-id-89 .p-cb-item-headline > br{
	display: none;
}
.page-id-89 .p-header-content-has-catch-bg .p-header-content-catch-bg{
	background-color: rgba(240,25,25,0.7);
}
.page-id-89 .p-header-content-has-catch-bg .p-header-content-catch{
	color: #ffffff;
}
.page-id-89 .l-main-inner{
	margin-top: 120px;
}
.page-id-89 .l-inner02{
	max-width: 1100px;
}
.page-id-89 .p-cb-item-headline{
	color: #F01919;
	font-size: 35px;
}
.page-id-89 .p-cb-item-headline.p-text-direction-type2{
	font-style: normal;
	line-height: 2;
	letter-spacing: 3px;
}
.page-id-89 .image_area{
	display: flex;
	flex-direction: column;
	gap: 100px 0;
	margin-bottom: 50px;
}
.page-id-89 .image_area img{
	display: block;
	width: 100%;
}
.page-id-89 .image_area br{
	display: none;
}
.page-id-89 .explain{
	width: 100%;
	max-width: 800px;
	margin: 0 auto 50px;
	text-align: center;
}
.deliver_backgound{
	margin: 0 calc(50% - 50vw);
    width: 100vw;
}
.deliver_backgound img{
	display: block;
	height: 600px!important;
	object-fit: cover;
	margin-bottom: 40px;
}
.page-id-89 .image_area.image_area02{
	margin-bottom: 64px;
}
.page-id-89 .explain.explain02{
	margin-bottom: 163px;
}
.page-id-89 .card_area{
	display: flex;
	flex-direction: column;
	gap: 57px 0;
	margin-bottom: 117px;
}
.page-id-89 .card_item{
	display: flex;
	align-items: center;
	gap: 0 46px;
}
.page-id-89 .card_item > p{
	display: none;
}
.page-id-89 .card_item img{
	width: 100%;
	max-width: 446px;
}
.page-id-89 .card_item h3{
	font-size: 30px;
	color: #F01919;
	margin: 0 0 14px!important;
	font-family: "biz-udmincho", sans-serif;
    font-weight: 400;
    font-style: normal;
}
.page-id-89 .card_explain{
	margin: unset!important;
}
.page-id-89 .card_explain + p{
	display: none;
}
.page-id-89 .notice{
	text-align: center;
}
.page-id-89 .notice a{
	color: #000;
	text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
    .page-id-89 .notice a:hover {
        text-decoration: none;
    }
}


@media (max-width: 991px) {
	.page-id-89 .p-cb-item-headline{
		margin-bottom: 40px!important;
		font-size: 22px;
	
	}
	.page-id-89 .image_area{
		gap: 50px 0;
		align-items: center;
	}
	.page-id-89 .l-main-inner{
		margin-bottom: 80px;
	}
	.page-id-89 .card_item h3{
		font-size: 21px;
	}
	.page-id-89 .card_item{
		gap: 0 20px;
	}
	.page-id-89 .card_area{
		margin-bottom: 60px;
	}
}
@media (max-width: 768px) {
	.page-id-89 .card_item{
		flex-direction: column;
		align-items: center;
		gap: 23px 0;
		max-width: 500px;
		margin: 0 auto;
	}
	.page-id-89 .card_item img{
		max-width: none;
	}
	.page-id-89 .image_area{
		gap: 16px 0;
	}
	.page-id-89 .image_area img{
		width: 100%;
		max-width: 500px;
	}
	.page-id-89 .explain{
		margin-bottom: 60px;
	}
	.page-id-89 .explain.explain02{
		margin-bottom: 32px;
	}
}
@media (max-width: 599px) {
	.page-id-89 .explain{
		text-align-last: left;
	}
}
/*------------------------------------------------------------------------------------------------------------------------------
和雑貨ページ end
------------------------------------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------------------------------------
お問い合わせページ
------------------------------------------------------------------------------------------------------------------------------*/
.page-id-92 .p-cb-item-headline{
	margin-bottom: 80px!important;
}
.page-id-92 .p-cb-item-headline > br{
	display: none;
}
.page-id-92 .explain{
	width: fit-content;
	margin: 0 auto 100px;
	text-align: center;
}
.page-id-92 .info_area{
	width: fit-content;
	margin: 0 auto 150px;
}
.page-id-92 .info_area .site_title{

}
.page-id-92 .info_area .tel{
	margin-bottom: 18px;
}
.page-id-92 .info_area a{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0 10px;
	margin-bottom: 0;
	font-size: 55px;
	line-height: 1.2;
	font-family: biz-udmincho, sans-serif;
	font-style: normal;
	font-weight: 400;
	color: #F01919;
}
.page-id-92 .info_area a::before{
	content: '';
	display: block;
	background: url(./img/phone.svg) no-repeat 50% / contain;
	width: 44px;
	height: 43px;
}
.page-id-92 .info_area a:hover{
	text-decoration: none;
}
.page-id-92 .info_area .hours{
	display: flex;
	justify-content: center;
	gap: 0 20px;
	line-height: 1;
}

.page-id-92 .contact_headline{	
	font-size: 20px;
	text-align: center;
}

.page-id-92 .wpcf7{
	max-width: 800px;
	margin: 0 auto 2.5rem!important;
}
.page-id-92 .p-header-content-has-catch-bg .p-header-content-catch-bg{
	background-color: rgba(240,25,25,0.7);
}
.page-id-92 .p-header-content-has-catch-bg .p-header-content-catch{
	color: #ffffff;
}
.page-id-92 .l-main-inner{
	margin-top: 120px;
}
.page-id-92 .l-inner02{
	max-width: 1100px;
}
.page-id-92 .p-cb-item-headline{
	color: #F01919;
	font-size: 35px;
}
.page-id-92 .site_title{
	display: flex;
	align-items: center;
	gap: 0 10px;
	width: fit-content;
    margin: 0 auto 28px;
	font-size: 28px;
	font-family: biz-udmincho, sans-serif;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
}
.page-id-92 .site_title::before{
	content: '';
    display: block;
    background: url(./img/mark.svg) no-repeat 50% / contain;
    width: 38px;
    height: 36px;
}

.privacy_confirm{
	display: flex;
	gap: 0 10px;
	width: fit-content;
	margin: 0 auto;
}
.privacy_confirm .wpcf7-list-item{
	margin: 0;
}

.privacy {
    background: #ffffff;
    padding: 30px 36px;
    margin-bottom: 54px;
	height: 250px;
    overflow-y: scroll;
	/* overflow-x: hidden; */
	font-family: arial,"Hiragino Sans","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","游ゴシック",yugothic,"メイリオ",meiryo,sans-serif;
}
.privacy::-webkit-scrollbar{
	display: none;
}
/* .privacy > div::-webkit-scrollbar{
	display: none;
} */
.privacy h2{
	text-align: left!important;
	margin: 0!important;
	font-size: 14px;
	line-height: 1.7142857;
	color: #F01919;
	font-weight: 600;
	font-family: arial,"Hiragino Sans","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","游ゴシック",yugothic,"メイリオ",meiryo,sans-serif;
}
.privacy h3{
	margin: 0!important;
	font-size: 14px;
	line-height: 1.7142857;
	font-weight: 400;
	font-family: arial,"Hiragino Sans","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","游ゴシック",yugothic,"メイリオ",meiryo,sans-serif;
}
.privacy p{
	margin-bottom: 30px;
	font-size: 14px;
	line-height: 1.7142857;
	font-family: arial,"Hiragino Sans","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","游ゴシック",yugothic,"メイリオ",meiryo,sans-serif;
}
.page-id-92 .wpcf7-submit{
	min-width: 280px;
	min-height: 60px;
	background: #000;
	font-family: arial,"Hiragino Sans","ヒラギノ角ゴ ProN","Hiragino Kaku Gothic ProN","游ゴシック",yugothic,"メイリオ",meiryo,sans-serif;
}
.privacy .simplebar-track.simplebar-vertical{
	/* background-color: #ccc; */
	background: linear-gradient(to right, #fff 1px, #ccc 1px, #ccc calc(100% - 1px), #fff calc(100% - 1px));
    width: 4px;
	height: calc(100% - 20px);
	transform: translate(-16px, 10px);
}
.privacy .simplebar-scrollbar::before{
	background: #707070;
    width: 4px;
    margin: 0;
    top: 0;
    left: 0;
    bottom: 0;
}
.privacy .simplebar-scrollbar.simplebar-visible::before{
	opacity: 1;
}
@media (max-width: 911px){
	.page-id-92 .p-cb-item-headline{
		margin-bottom: 40px!important;
	}	
}

@media (max-width: 599px){
	.page-id-92 .explain{
		margin-bottom: 60px;
	}
	.page-id-92 .site_title{
		font-size: 22px;
	}
	.page-id-92 .info_area a{
		font-size: 35px;
	}
	.page-id-92 .info_area a:before{
		width: 36px;
		height: 36px;
	}
	.page-id-92 .info_area .hours{
		flex-wrap: wrap;
		gap: 8px 20px;
	}
	.page-id-92 .info_area{
		margin-bottom: 60px;
	}
	.page-id-92 .contact_headline{
		margin-bottom: 20px;
	}
}

.page-id-98 .p-cb-item-headline{
	margin-bottom: 80px!important;
}
.page-id-98 .p-cb-item-headline > br{
	display: none;
}
.page-id-98 .p-header-content-has-catch-bg .p-header-content-catch-bg{
	background-color: rgba(240,25,25,0.7);
}
.page-id-98 .p-header-content-has-catch-bg .p-header-content-catch{
	color: #ffffff;
}
.page-id-98 .l-inner02{
	max-width: 1100px;
}
.page-id-98 .l-main-inner{
	margin-top: 120px;
	margin-bottom: 190px;
}
.page-id-98 .p-cb-item-headline{
	color: #F01919;
	font-size: 35px;
}
.page-id-98 .explain{
	text-align: center;
}
@media (max-width: 991px){
	.page-id-98 .p-cb-item-headline{
		margin-bottom: 40px!important;
		font-size: 22px;
	}
	.page-id-98 .l-main-inner{
		margin-bottom: 80px;
	}	
}
@media (max-width: 599px){
	.page-id-98 .explain{
		text-align-last: left;
	}
}
/*------------------------------------------------------------------------------------------------------------------------------
お問い合わせページ end
------------------------------------------------------------------------------------------------------------------------------*/