@charset "utf-8";

/**
 * root, reset, common
 */
:root {
	--base-color:     #fdf6e6;
	--light-color:    #fff;
	--dark-color:     #362e2b;
	--accent-color01: #df616b;
	--accent-color02: #4ba6b7;
	--txt-color:      #4a3c37;
	--txt-size-xxs: 14px;
	--txt-size-xs:  15px;
	--txt-size-s:   16px;
	--txt-size-m:   18px;
	--txt-size-l:   20px;
	--txt-size-xl:  22px;
	--txt-size-xxl: 26px;
	--space-s:   50px;
	--space-m:   80px;
	--space-l:  100px;
	--space-xl: 120px;
	--webicon-box: boxicons;
}

@media screen and (max-width: 991px) {
	:root {
		--space-m:   60px;
		--space-l:   80px;
		--space-xl: 100px;
	}
}

@media screen and (max-width: 600px) {
	:root {
		--txt-size-xxs: 12px;
		--txt-size-xs:  13px;
		--txt-size-s:   13px;
		--txt-size-m:   15px;
		--txt-size-l:   16px;
		--txt-size-xl:  18px;
		--txt-size-xxl: 19px;
		--space-s:  30px;
		--space-m:  50px;
		--space-l:  65px;
		--space-xl: 80px;
	}
}

html {
	-webkit-text-size-adjust: 100%;
	-webkit-tap-highlight-color: rgba(255, 255, 255, 0);
	scroll-behavior: smooth;
	scroll-padding-top: var(--space-l);
	background: #fff;
}

*, ::* {
	font-size: inherit;
	color: inherit;
	box-sizing: border-box;
	position: relative;
}

body {
	background: #fff;
	font-size: var(--txt-size-m);
	color: var(--txt-color);
	font-family: -apple-system, BlinkMacSystemFont, YuGothic, 'Yu Gothic', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
	line-height: 1.77em;
	letter-spacing: 0.02em;
	overflow-wrap: break-word;
	font-display: swap;
	-webkit-font-smoothing: antialiased;	
	font-weight: 500;
}

body:has(.toggled) {
	overflow-y: hidden;
	height: 100vh;
	height: 100dvh;
}

body > #page:has(.toggled) {
	overflow-y: hidden;
	/*ここに高さ指定するとページ上部に戻る*/
}

::selection {
    background-color: #df616b;
    color: #fff;
}

h1, h2, h3, h4, p {
	margin: 0;
	
}

h1, h2, h3, h4 {
	line-height: 1.2em;
}

img, iframe, video {
	width: 100%;
	vertical-align: top;
}

a {
	text-decoration: none;
	color: inherit;
}
a:hover, a:visited {
	color: inherit;
}
a:focus{
	outline:none;
}

ul, li {
	margin: 0;
	padding: 0;
	list-style: none;
}

dd {
	margin: 0;
}

.c-txt-s { font-size: var(--txt-size-s); }
.c-txt-m { 
	font-size: var(--txt-size-m);
	line-height: 1.3em;
}
.c-txt-l { font-size: var(--txt-size-l); }
.c-txt-xl { font-size: var(--txt-size-xl); }
.c-txt-xxl { font-size: var(--txt-size-xxl); }

.space-xs {
	content: "";
	margin-top: 0.5em;	
}
.space-s {
	content: "";
	margin-top: var(--space-s);
}
.space-m {
	content: "";
	margin-top: var(--space-m);
}
.space-l {
	content: "";
	margin-top: var(--space-l);
}

.c-b {
	font-weight: bold;
}
.c-n {
	font-weight: 500;
}

.c-marker--yellow {
	background-image: linear-gradient(to bottom, transparent 0, transparent 29.9%, #fff67f 30%, #fff67f 100%);
}

.c-txt-through {
	text-decoration: line-through;
}

article.type-page .entry-content {
	margin: 0;
}

.c-out_wrap {
	position: relative;
}
.c-about .c-out_wrap,
.c-news .c-out_wrap,
.c-event_info .c-out_wrap,
.c-content_center .c-out_wrap {
	padding-right: 19.2vw;
	padding-left: 280px;
}

.c-inner_wrap {
	position: relative;
	max-width: 800px;
	margin: 0 auto;
	padding-top: var(--space-xl);
	padding-bottom: var(--space-l);
}

.c-inner_wrap.c-inner_wrap_small {
	padding-top: var(--space-s);
	padding-bottom: var(--space-s);	
}

.c-section_ttl {
	max-width: 480px;
	margin: 0 auto;
	text-align: center;
	font-size: var(--txt-size-l);
	font-weight: 500;
}

.c-section_ttl-txt {
	margin-top: 0.9em;
	letter-spacing: 0.02em;
}

.c-square_btn {
	width: 92%;
	max-width: 400px;
	margin: 30px auto 50px;
	text-align: center;
}
.c-square_btn a {
	display: block;
	padding: 0.9em;
	font-size: var(--txt-size-l);
	color: #fff;
	line-height: 1em;
	background: var(--dark-color);
	border-radius: 2px;
}
.c-square_btn a:hover {
	opacity: 0.8;
}

.c-arch_btn {
	width: fit-content;
	max-width: 92%;
	margin: 30px auto;
	text-align: center;
}
.c-arch_btn a {
	display: block;
	padding: 0.8em 2.5em;
	background: var(--accent-color01);
	color: #fff;
	border-radius: 3em;
}
.c-arch_btn a:hover {
	opacity: 0.8;
}

.c-arch_btn.c-soldout_btn a {
	background: #dcdde1;
	pointer-events: none;
}

.c-line_btn {
	width: fit-content;
	min-width: 300px;
	margin: 1em auto;
	border: 1px solid var(--txt-color);
	border-radius: 2px;
}
.c-line_btn a {
	position: relative;
	display: block;
	padding: 0.95em 3em;
	font-size: var(--txt-size-l);
	line-height: 1em;
	text-align: center;
}
.c-line_btn a::before {
	content: "";
	position: absolute;
	right: calc(1em + 1px);
	top: calc(50% - 6px);
	height: 8px;
	width: 1px;
	background: var(--dark-color);
	transform: rotate(-45deg);
	transition: 0.4s cubic-bezier(0, 0, 0, 1);
}
.c-line_btn a::after {
	content: "";
	position: absolute;
	right: 1em;
	top: 50%;
	width: 1.5em;
	height: 1px;
	background: var(--dark-color);
	transition: 0.4s cubic-bezier(0, 0, 0, 1);
}
.c-line_btn a:hover::before {
	right: calc(-0.5em + 1px);	
}
.c-line_btn a:hover::after {
	right: -0.5em;
}

.c-externalLink {
	display: inline-block;
	content: "";
	width: 0.8em;
	height: 0.8em;
	background: url("/wp-content/uploads/2024/09/external-link.png") no-repeat;
	background-size: contain;
	background-position: center;
	filter: invert(1);
}

.c-mailLink {
	display: inline-block;
	content: "";
	width: 0.8em;
	height: 0.8em;
	background: url("/wp-content/uploads/2024/09/mail.png") no-repeat;
	background-size: contain;
	background-position: center;
	filter: invert(1);
}

@media screen and (max-width: 991px) {
	body {
		font-weight: 400;
	}
	
	.c-about .c-out_wrap,
	.c-news .c-out_wrap,
	.c-event_info .c-out_wrap,
	.c-content_center .c-out_wrap {
		padding-right: calc(3vw + 6px);
		padding-left: calc(3vw + 6px);
	}
}

@media screen and (max-width: 600px) {
	.c-arch_btn {
		width: 95%;
	}
	.c-arch_btn a {
		padding: 0.8em 2em;
		line-height: 1.3em;
	}
	.c-about .c-out_wrap,
	.c-news .c-out_wrap,
	.c-event_info .c-out_wrap,
	.c-content_center .c-out_wrap {
		padding-right: 6vw;
		padding-left: 6vw;
	}
	
}



/**
 * logo , nav [.site-header]
 */
.site-header {
	width: 220px;
    position: fixed;
    top: 0;
    left: 2vw;
	z-index: 10;
}
#masthead_dropdown.site-header {
	display: none;
}

.site-header .site-branding {
	position: absolute;
	top: 50px;
	left: calc(50% - 40px);
	width: 80px;
	margin: 0 auto 16px;
}

.site-header .site-branding .custom-logo {
	filter: 
		drop-shadow(6px 0 5px #fff)
		drop-shadow(-6px 0 5px #fff)
		drop-shadow(0 6px 5px #fff)
		drop-shadow(0 -6px 5px #fff);
}

.main-navigation {
	position: absolute;
	top: 110px;
	left: 0;
	padding: 5px 10px;
	background: rgba(255,255,255,1);
	text-align: center;
	border-radius: 17px;
	box-shadow: 0 10px 15px rgba(0,0,0,0.1);
	border: 1px solid #f7f7f7;
}

.main-navigation #primary-menu > li {
	padding: 0.45em 0;
}
.main-navigation #primary-menu > li:not(:last-child) {
	border-bottom: 1px solid #eceff1;
}

.main-navigation #primary-menu > li > a {
	font-style: italic;
}

.main-navigation #primary-menu li a:hover {
	color: var(--accent-color01);
}

/* single header, nav */
body.single .site-header,
body.archive .site-header,
.c-grid_2_colsLayout .site-header {
	position: relative;
	left: 0;
	margin: var(--space-s) auto;
}
body.single .site-header .site-branding,
body.archive .site-header .site-branding,
.c-grid_2_colsLayout .site-header .site-branding {
	position: relative;
	left: 0;
	top: 0;
}
body.single .main-navigation,
body.archive .main-navigation,
.c-grid_2_colsLayout .main-navigation {
	position: relative;
	top: 0;
}

@media screen and (min-width: 992px) {
	.main-navigation ul,
	body.single .main-navigation ul,
	body.archive .main-navigation ul,
	.c-grid_2_colsLayout .main-navigation ul {
        display: block;
    }
	.c-circle-bg {
		display: none;
	}
}

.main-navigation ul ul {
	box-shadow: none;
	float: none;
    position: relative;
	left: 0; /* 下の階層も常に表示 */
}

.main-navigation ul .menu-item-has-children .sub-menu {
	height: auto;
	margin-top: 0.3em;
	font-size: var(--txt-size-s);
	transition: height  0.4s cubic-bezier(0.25, 0.1, 0.25, 1);
}
/* .main-navigation ul .menu-item-has-children.is-close .sub-menu {
	height: 0;  hover時の高さ調整はjs
	overflow: hidden;
	transition: height  0.4s cubic-bezier(0.25, 0.1, 0.25, 1);
} */

.main-navigation ul .menu-item-has-children ul li {
	margin: 0.5em 0;
}

.main-navigation ul .menu-item-has-children ul a {
	display: block;
	line-height: 1.3em;
}

.c-sns_link {
	display: flex;
	justify-content: space-evenly;
	margin: 10px auto 20px;
}
.c-sns_link a {
	display: block;
	height: 40px;
	aspect-ratio: 1;
}


@media screen and (max-width: 991px) {
	.site-header,
	body.single .site-header,
	body.archive .site-header,
	.c-grid_2_colsLayout .site-header {
		position: absolute;
		width: 100%;
		height: 70px;
		top: 0 ;
		left: 0;
		background: rgba(255, 255, 255, 0);
	}
	
	#masthead_dropdown.site-header {
		display: block;
		position: fixed;
		top: -80px;
		background: rgba(255, 255, 255, 0.85);
	}
	
	.site-header .site-branding,
	body.single .site-header .site-branding,
	body.archive .site-header .site-branding,
	.c-grid_2_colsLayout .site-header .site-branding {
		position: relative;
		top: 50%;
		left: 3vw;
		margin: 0;
		width: 62px;
		transform: translateY(-50%);
	}
	
	.site-header .site-branding{
		z-index: 1;
	}
	
	.main-navigation,
	body.single .main-navigation,
	body.archive .main-navigation,
	.c-grid_2_colsLayout .main-navigation {
		width: fit-content;
		height: 0;
		padding: 0;
		top: 0;
		left: auto;
		right: 0;
		transform: translateY(-50%);
		border-radius: 0;
		box-shadow: none;
	}
	.main-navigation.toggled,
	body.single .main-navigation.toggled,
	body.archive .main-navigation.toggled,
	.c-grid_2_colsLayout .main-navigation.toggled {
		width: 100%;
		height: 100vh;
		height: 100dvh;
		top: 0;
		transform: none;
		background: rgba(255,255,255,0);
		overflow-y: scroll;
		backdrop-filter: blur(6px);
		-webkit-backdrop-filter: blur(6px);
		overscroll-behavior-y: contain;
	}
	
	.main-navigation button.menu-toggle {
		position: absolute;
		top: 10px;
		right: 3vw;
		width: 50px;
		height: 50px;
		padding: 0.5em;
		background: #fff;
		border: none;
		border-radius: 5px;
		box-shadow: 0 2px 7px rgba(0, 0, 0, 0.2);
		cursor: pointer;
	}
	#masthead_dropdown .main-navigation button.menu-toggle {
		box-shadow: none;
	}
	
	.main-navigation.toggled button.menu-toggle {
		box-shadow: none;
		background: transparent;
	}
	
	.main-navigation .menu-toggle .c-hamburger {
		display: block;
		content: "";
		position: absolute;
		left: 12px;
		width: 55%;
		height: 3px;
		border-radius: 2px;
		background: #70635e;
		transition: all .4s;
	}
	.main-navigation .menu-toggle .c-hamburger:nth-child(1) {
		top: 15px;
	}
	.main-navigation .menu-toggle .c-hamburger:nth-child(2) {
		top: 23px;
	}
	.main-navigation .menu-toggle .c-hamburger:nth-child(3) {
		top: 31px;
	}
	.main-navigation.toggled .menu-toggle .c-hamburger:nth-child(1) {
		top: 18px;
		left: 15px;
		transform: translateY(6px) rotate(-45deg);
		width: 40%;
	}
	.main-navigation.toggled .menu-toggle .c-hamburger:nth-child(2) {
		opacity: 0;
	}
	.main-navigation.toggled .menu-toggle .c-hamburger:nth-child(3) {
		top: 30px;
		left: 15px;
		transform: translateY(-6px) rotate(45deg);
		width: 40%;
	}
	
	.main-navigation .menu-global-nav-container {
		width: 100%;
		margin: 0;
	}
	.main-navigation.toggled .menu-global-nav-container {
		margin: 100px auto 50px;
	}
	
	.main-navigation ul {
		font-size: clamp(18px, 3vw, 20px);
	}
	
	.main-navigation #primary-menu > li:not(:last-child) {
		padding: 0;
		border-bottom: 1px solid #eceff1;
		box-shadow: 0 1px rgba(255, 255, 255, 0.1);
	}
	.main-navigation #primary-menu > li:last-child {
		border-bottom: 1px solid #eceff1;
		box-shadow: 0 1px rgba(255, 255, 255, 0.1);	
	}
	.main-navigation #primary-menu > li:first-child {
		border-top: 1px solid #eceff1;
	}
	
	.main-navigation a {
		line-height: 2.5em;
	}

	.main-navigation ul .menu-item-has-children ul li {
		margin: 0;
	}
	
	.main-navigation ul .menu-item-has-children ul a {
		width: 100%;
		padding: 0.2em 0;
		line-height: 1.8em;
	}
	.main-navigation ul .menu-item-has-children > a {
		display: block;
	}
	
	.main-navigation ul .menu-item-has-children > .c-dropdown_arrow {
		display: block;
		position: absolute;
        top: 0.8em;
        right: 6vw;
        width: 36px;
        height: 28px;
	}
	
	.main-navigation ul .menu-item-has-children > .c-dropdown_arrow::before {
		transform: translate(1px, 8px);
	}
	
	.c-sns_link {
		display: none;
	}
	.main-navigation.toggled .c-sns_link {
		display: flex;
		max-width: 200px;
	}
	
	.main-navigation + .c-circle-bg {
		display: block;
		position: fixed;
		z-index: -1;
		width: 100px;
		height: 100px;
		border-radius: 50%;
		background: rgba(255,255,255,0.8);
		transform: scale(0);
		right:-50px;
		top:-50px;
		transition: all .6s;
	}
	.main-navigation.toggled + .c-circle-bg {
		transform: scale(50);
	}
	
	/* single header, nav */
	body.single .site-header,
	body.archive .site-header,
	.c-grid_2_colsLayout .site-header {
		position: absolute;
		margin: 0 auto;
	}
	body.single .site-header .site-branding,
	body.archive .site-header .site-branding,
	.c-grid_2_colsLayout .site-header .site-branding {
		top: 50%;
		left: 3vw;
		margin: 0;
	}
	body.single .main-navigation,
	body.archive .main-navigation,
	.c-grid_2_colsLayout .main-navigation {
		position: absolute;
		width: fit-content;
		height: 0;
		padding: 0;
		top: 0;
		left: auto;
		right: 0;
	}	

}

@media screen  and (max-width:600px) {
	.site-header {
		height: 56px;
	}
	
	.site-header .site-branding{
		width: 56px;
	}
	
	.main-navigation button.menu-toggle {
		top: 8px;
		width: 40px;
        height: 40px;
	}
	
	.main-navigation .menu-toggle .c-hamburger {
		left: 9px;
	}
	.main-navigation .menu-toggle .c-hamburger:nth-child(1) {
		top: 10px;
	}
	.main-navigation .menu-toggle .c-hamburger:nth-child(2) {
		top: 18px;
	}
	.main-navigation .menu-toggle .c-hamburger:nth-child(3) {
		top: 26px;
	}
	.main-navigation.toggled .menu-toggle .c-hamburger:nth-child(1) {
		top: 13px;
		left: 12px;
	}
	.main-navigation.toggled .menu-toggle .c-hamburger:nth-child(3) {
		top: 25px;
		left: 12px;
	}
	.main-navigation.toggled .menu-global-nav-container {
		margin: 100px auto 20px;
	}	
}



/**
 * site_top 
 */
.c-site_top {
	position: relative;
	background-color: #fdf6e6;
	background-image: url('/wp-content/uploads/2024/08/top_bg.jpg');
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center top;
	background-attachment: fixed;
}
.c-site_top::before {
	position: absolute;
	bottom: -2px;
	left: 0;
	content: "";
	display: block;
	width: 100%;
	height: calc( 100vw / 20.69 );
	background-image: url("/wp-content/uploads/2024/09/top_item02.png");
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: contain;
}

.c-site_top .c-inner_wrap {
	display: flex;
	justify-content: center;
	align-items: center;
	height: 96vh;
	height: 96svh;
	min-height: 700px;
}

.c-siteTop_logo {
	position: relative;
	width: clamp(330px, 29.42vw, 400px);
	margin-top: -2vh;
	margin-top: -2svh;
}

.c-siteTop_logo .c-siteTop_logo--inner {
	position: absolute;
	top: 0;
	left: 0;
	mix-blend-mode: multiply;
	filter: saturate(1.15);	
}

/* top news */
.c-siteTop-news {
	position: absolute;
	bottom: 16%;
	right: 2.5%;
	width: fit-content;
	max-width: 360px;
	background: rgba(255,255,255,0.8);
	white-space: nowrap;
	border: 3px solid #fff;
}
.c-siteTop-news:hover {
	opacity: 0.8;
}

.c-siteTop-news::after {
	position: absolute;
	bottom: 1em;
	right: 0.7em;
	content: "\ed3e";
	font-family: var(--webicon-box);
	font-size: 15px;
}

.c-siteTop-news a {
	display: block;
	padding: 20px calc(16px + 1em) 20px 20px;
}

.c-siteTop-news__name {
	margin-left: -30px;
	font-weight: bold;
	letter-spacing: 0.1em;
}
.c-siteTop-news__name img {
	width: 134px;
	margin-right: 0.8em;
	vertical-align: bottom;
}

.c-siteTop-news__date {
	margin: 0.55em 0 0.18em;
	font-size: var(--txt-size-xl);
	font-weight: bold;
	line-height: 1em;
}
.c-siteTop-news__date span {
	font-size: var(--txt-size-xs);
}
.c-siteTop-news__note {
	font-size: var(--txt-size-xxs);
	line-height: 1.5em;
}

@media screen and (max-width: 1100px) {
	.c-site_top .c-inner_wrap {
		height: clamp(650px, 100vh, 1020px);
		height: clamp(650px, 100svh, 1020px);
	}
}

@media screen  and (max-width:991px) {
	.c-site_top {
		background-image: url("/wp-content/uploads/2024/09/top_bg_sp.jpg");
	}
	.c-siteTop_logo {
		width: clamp(230px,56vw, 440px);
		margin-top: calc(-100vh / 6);
	}
	
	.c-siteTop-news {
		bottom: 6%;
		right: 50%;
    	transform: translatex(50%);
	}
}

@media screen  and (max-width:600px) {
	.c-site_top {
		background-attachment: unset;
		/*background-size: 100%;*/
	}
	.c-siteTop_logo {
		width: clamp(230px,70vw, 440px);
	}
	.c-site_top .c-inner_wrap{
		min-height: 500px;
		max-height: 700px;
	}	
}



/**
 * about
 */
.c-about .c-out_wrap {
	background-image: url("/wp-content/uploads/2024/09/about_item01.png"), url("/wp-content/uploads/2024/09/about_item02.png");
	background-repeat: no-repeat;
	background-position: calc(50% - 380px - 18vw) -14%, calc(50% + 380px + 20.2vw) -14%;
}

@media screen and (min-width: 1360px) {
	.c-about .c-out_wrap {
		background-position: calc(50% - 380px - 20.2vw) -14%, calc(50% + 380px + 20.2vw) -14%;
	}
}

@media screen and (max-width: 991px) {
	.c-about .c-out_wrap{
		background-image: url("/wp-content/uploads/2024/09/about_item02_sp.png");
		background-repeat: no-repeat;
		background-position: center calc(100% + 150px);	
		background-size: 930px;
	}
}

.c-about .c-section_ttl-txt {
	color: var(--accent-color01);
}

.c-about .c-content {
	margin-top: var(--space-m);
	text-align: center;
	color: var(--accent-color01);
}

.c-about .c-content p {
	margin-bottom: 1.8em;
}

.c-about .c-plur_details {
	margin-top: var(--space-l);
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: clamp( 20px, 5%, 40px);
	grid-row-gap : 40px;
	color: #836d62;
}

.c-about .c-plur_detail {
	display: grid;
	grid-template-columns: clamp(40px, 7vw, 54px) 1fr;
	grid-gap: 22px;
}

.c-about .c-plur_detail--content {
	padding-top: 0.6em;
}

.c-about .c-plur_detail--content dt {
	font-size: var(--txt-size-l);
	line-height: 1em;
	letter-spacing: 0.14em;
}

.c-about .c-plur_detail--content dd {
	margin-top: 0.8em;
	font-size: var(--txt-size-xs);
	line-height: 1.4em;
	text-align: justify;
}

@media screen and (max-width: 600px) {
	.c-about .c-plur_details {
		grid-template-columns: 1fr;
		grid-row-gap : 34px;
	}
	
	.c-about .c-plur_detail {
		grid-gap: 15px;
	}
	
	.c-about .c-out_wrap {
		background-size: 700px;
		background-position: center calc(100% + 80px);
	}
}



/**
 * news
 */
.c-news {
	background-image: url("/wp-content/uploads/2024/09/news_bg.png");
}
.c-news .c-inner_wrap .c-grid {
	display: grid;
	grid-template-columns: 66px 1fr;
	grid-gap: 30px;
	max-width: 740px;
	margin-bottom: var(--space-s);
}

.c-news .c-section_ttl-txt {
	font-size: var(--txt-size-xs);
	color: #8b766f;
}

.c-news .c-post_list {
	padding-top: 1.8em;
}

.c-news .c-post_list--thumbnail {
    border: 1px solid #e1ccc4;
	aspect-ratio: 1;
}

.c-news .c-post_list--item {
	position: relative;
}

.c-news .c-post_list--item::after {
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	content: "\f345";
	font-family: dashicons;
	line-height: 1;
    font-weight: 400;
}
.c-news .c-post_list--item:has(:hover)::after {
	color: var(--accent-color01);
}

.c-news .c-post_list--item:not(:last-child) {
	margin-bottom: 20px;
}

.c-news .c-post_list--item a {
	display: grid;
	grid-template-columns: 120px 1fr;
}

.c-news .c-post_list--item a:hover {
	color: var(--accent-color01);
}

.c-news .c-post_list--content {
	display: flex;
	flex-direction: column;
    align-items: start;
    justify-content: center;
	padding: 20px;
}

.c-news .c-post_list--content time {
	margin-bottom: 0.2em;
	font-size: var(--txt-size-xxs);
	line-height: 1em;
	color: #a78f85;
}
.c-news .c-post_list--item a:hover .c-post_list--content time {
	color: #e99da3;
}

.c-news .c-post_list--content > p {
	font-weight: bold;
	line-height: 1.4em;
}



@media screen and (max-width:991px) {
	.c-news .c-inner_wrap .c-grid {
		grid-template-columns: 1fr;
	}
	
	.c-news .c-section_ttl {
		width: 100%;
		max-width: 100%;
		text-align: left;
	}
	
	.c-news .c-section_ttl--img,
	.c-news .c-section_ttl-txt {
		display: inline-block;
	}
	.c-news .c-section_ttl--img {
		width: clamp(100px, 26vw, 140px);
	}
	
	.c-news .c-inner_wrap .c-grid {
		max-width: 680px;
		grid-gap: 0;
	}
}

@media screen and (max-width:600px) {
	.c-news .c-post_list--item a {
		grid-template-columns: 100px 1fr;
	}
}



/**
 * Party info
 */
.c-event_info {
	background-image: url("/wp-content/uploads/2024/09/eventinfo_bg.jpg");
	background-repeat: repeat-y;
	background-position: center top;
	background-size: 100%;
	background-attachment: fixed;
}

.c-event_info .c-section_ttl-txt {
	font-weight: bold;
}

.c-event_info .c-description {
	margin-top: var(--space-m);
	text-align: center;
}

.c-event_info .c-description p:first-child {
	color: var(--accent-color01);
	font-weight: bold;
	letter-spacing: 0.07em;
}
.c-event_info .c-description p {
	margin-bottom: 1em;
}

.c-event_info .c-summary_container {
	margin-top: var(--space-l);
}
.c-event_info .c-description + .c-summary_container {
	margin-top: var(--space-l);
}

.c-event_info .c-summary_container h3 {
	width: fit-content;
	margin-bottom: 1.2em;
	padding: 0.55em 2.1em 0.4em 1em;
	font-size: var(--txt-size-l);
	font-weight: 500;
	letter-spacing: 2px;
	color: #fff;
	background-image: url("/wp-content/uploads/2024/09/eventinfo_item01.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;	
}

.c-event_info .c-summary_container p {
	letter-spacing: 0.05em;
}

.c-event_info .c-summary_container .c-summary_desc {
	margin-left: 1.8em;
}

.c-event_info .c-summary_container .c-summary_desc > .c-txt-l {
	margin-bottom: 0.8em;
	line-height: 1.3em;
}
.c-event_info .c-summary_container .c-summary_desc > .c-txt-l + p {
	line-height: 1.3em;
}

@media screen and (max-width: 991px) {
	.c-event_info {
		background-image: url("/wp-content/uploads/2024/09/eventinfo_bg_sp.jpg");
	}
}
@media screen and (max-width: 600px) {
	.c-event_info .c-summary_container .c-summary_desc {
		margin-left: 0;
	}
}

/* checkbox */
.c-event_info .c-checkbox {
	position: relative;
	margin-top: 50px;
	padding: 24px 30px;
	border: 2px solid #f3b8bd;
	background: rgba(255,255,255,0.7);
	font-size: var(--txt-size-s);
	line-height: 1.5;
}
.c-event_info .c-checkbox::before {
	position: absolute;
    top: -30px;
    left: -1.5em;
	content: "";
	width: 78px;
	height: 50px;
	background-image: url("/wp-content/uploads/2024/09/check.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
}

.c-underLine {
	text-decoration: underline;
	text-underline-offset: 4px;
	font-weight: bold;
}

/* ticket_info */
.c-event_info  .c-ticket_info.c-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(315px, 1fr));
	grid-gap: 1em;
}

.c-event_info  .c-ticket_info p {
	display: inline-block;
	line-height: 1em;
}

.c-event_info  .c-ticket_info .c-ticket_type {
	margin-right: 0.6em;
	padding: 6px 8px;
	font-size: var(--txt-size-l);
	font-weight: bold;
	border: 1px solid var(--dark-color);
	border-radius: 2px;
}

.c-event_info  .c-ticket_info .c-ticket_price {
	font-size: var(--txt-size-xxl);
	font-weight: bold;
}
.c-soldout {
	position: relative;
	text-decoration: line-through;
	text-decoration-color: red;
}
.c-soldout::after {
	content: "SOLDOUT";
	position: absolute;
	top: 25%;
	left: 50%;
	transform: translate(-50%) rotate(5deg);
	padding: 0.3em;
	line-height: 1em;
	color: red;
	border: 1px solid red;
	background: #fff;
	border-radius: 4px;
	font-size: 12px;
}


.c-event_info  .c-ticket_info + p {
	line-height: 1.3em;
	margin-top: 0.9em;
}

/* infobox */
.c-event_info .c-infobox {
	margin: 40px 0;
	padding: 30px;
	border: 1px solid #f3b8bd;
	background: rgba(255,255,255,0.7);
}

.c-event_info .c-infobox h4 {
	font-size: calc(var(--txt-size-xxl) * 1.077);
	color: var(--accent-color01);
	text-align: center;
}

.c-event_info .c-infobox h4 + p {
	color: var(--accent-color01);
	text-align: center;
}

.c-event_info .c-infobox .c-table {
	display: table;
	width: 100%;
	margin: 20px 0;
	border-collapse: collapse;
}

.c-event_info .c-infobox .c-table_row {
	display: table-row;
}
.c-event_info .c-infobox .c-table_row:nth-of-type(odd) {
	background: rgba(223,97,107,0.1);
}
.c-event_info .c-infobox .c-table_row:nth-of-type(even) {
	background: rgba(223,97,107,0.2);
}

.c-event_info .c-infobox .c-table_cell {
	display: table-cell;
	padding: 0.8em;
	font-size: var(--txt-size-l);
}
.c-event_info .c-infobox .c-table_cell:last-child {
	text-align: right;
}

.c-event_info .c-infobox .c-infobox_desc_list li {
	margin-bottom: 0.3em;
}

.c-event_info .c-infobox .c-infobox_desc_list p {
	padding-left: 1em;
	font-size: var(--txt-size-s);
	letter-spacing: 0.02em;
	line-height: 1.3;
	text-indent: -1em;
}

@media screen and (max-width:600px) {
	.c-event_info  .c-ticket_info.c-grid {
		grid-template-columns: 1fr;
	}
	
	.c-event_info .c-infobox {
		padding: 20px 15px;
	}
	
	.c-event_info .c-infobox .c-table_cell {
		padding: 10px;
		font-size: 14px;
	}
	.c-event_info .c-infobox .c-table_cell:first-child {
		padding-right: 0;
	}
	.c-event_info .c-infobox .c-table_cell:last-child {
		padding-left: 0;
	}
	.c-event_info .c-infobox .c-infobox_desc_list p {
		text-indent: -0.8em;
	}
}

/* LINEUP */
.c-event_info_container.c-lineup {
	position: relative;
}
.c-event_info_container.c-lineup::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #df3f4c;
	mix-blend-mode: hard-light;
}

.c-event_info .c-lineup {
	color: #fff;
}

.c-event_info .c-lineup .c-section_ttl-txt {
	font-weight: 500;
}

.c-event_info .c-lineup dl dt {
	margin: 2em 0 1em;
	padding: 0.55em 1em;
    line-height: 1em;
	width: fit-content;
	background: #fff;
	border-radius: 4px;
}

.c-event_info .c-lineup dl dt p {
	font-size: var(--txt-size-l);
	font-weight: 500;
	color: var(--accent-color01);
}

.c-event_info .c-lineup dl dd p {
	margin-bottom: 0.5em;
	font-size: var(--txt-size-l);
	font-weight: bold;
	line-height: 1.2em;
	letter-spacing: 1.5px;
}

.c-event_info .c-lineup dl dd p span {
	font-size: var(--txt-size-m);
	font-weight: 500;
	letter-spacing: 0;
}

.c-event_info .c-lineup dl dd.c-txt_big p {
	font-size: calc( var(--txt-size-l) * 1.5 );
}

.c-event_info .c-lineup dl dd.c-txt_big p span {
	font-size: var(--txt-size-xl);
}

@media screen and (max-width: 600px) {
	.c-event_info .c-lineup dl dt p {
		font-size: 14px;
	}
	.c-event_info .c-lineup dl dd p {
		line-height: 1.2em;
		margin-bottom: 0.6em;
	}
	
	.c-event_info .c-lineup dl dd.c-txt_big p {
		font-size: calc(var(--txt-size-l)* 1.3);
	}
}

/* access */
.c-event_info .c-summary_container.c-access,
.c-event_info .c-summary_container.c-rule {
	margin-top: var(--space-s);
}

.c-map {
	margin: 50px 0 60px;
	width: 100%;
	aspect-ratio: 2 / 1;
	border: 1px solid #fff;
}
.c-map iframe {
	width: 100%;
	height: 100%;
}

.c-event_info .c-summary_list-m {
	margin: 0 auto;
	width: 95%;
	max-width: 740px;
	line-height: 1.66em;
}

.c-event_info .c-summary_list-m dt {
	position: relative;
	margin: 1.2em 0 0.6em;
	font-size: var(--txt-size-l);
}
.c-event_info .c-summary_list-m dt::before {
	position: absolute;
	top: 0.35em;
	left: -1em;
	content: "";
	width: 0.7em;
	height: 0.7em;
	border: 4px solid var(--dark-color);
	border-radius: 50%;
}

.c-event_info .c-summary_list-m dd.desc {
	margin-top: 0.5em;
	font-size: var(--txt-size-s);
}

.c-event_info .c-infobox:has(.c-summary_list-s) {
	margin-left: auto;
	margin-right: auto;
	width: 95%;
	max-width: 740px;
}

.c-event_info .c-summary_list-s {
	margin: 0;
}

.c-event_info .c-summary_list-s dt {
	margin: 1em 0 0.1em 1em;
	position: relative;
	color: var(--accent-color01);
	font-weight: bold;
}
.c-event_info .c-summary_list-s dt:first-child {
	margin-top: 0;
}
.c-event_info .c-summary_list-s dt::before {
	position: absolute;
	top: 0.25em;
	left: -1em;
	content: "";
	width: 6px;
	height: 1em;
	background: var(--accent-color01);
}

.c-event_info .c-summary_list-s dd {
	font-size: var(--txt-size-s);
	line-height: 1.5em;
}

@media screen and (max-width: 600px) {
	.c-map {
		margin: 30px 0;
		aspect-ratio: 4 / 3
	}
}

/* after party */
.c-event_info_container.c-afterparty {
	position: relative;
}
.c-event_info_container.c-afterparty::before {
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background: #60a8c9;
	mix-blend-mode: multiply;
}

.c-event_info .c-afterparty {
	color: #fff;
}

.c-event_info .c-afterparty h2 .c-section_ttl-txt {
	font-weight: 500;
}

.c-event_info .c-afterparty .c-description {
	margin-top: var(--space-s);
}

.c-event_info .c-afterparty .c-description p:first-child {
	color: #fff;
	font-weight: 500;
}

.c-event_info .c-infobox.blue {
	border: 1px solid #59b2d4;
	
}

.c-event_info .c-infobox.blue dt {
	color: #41a8bb;
}
.c-event_info .c-infobox.blue .c-summary_list-s dt::before {
	background: #41a8bb;
}

.c-event_info .c-infobox.blue .c-summary_list-s dd {
	color: var(--txt-color);
}
.c-event_info .c-infobox.blue .c-summary_list-s dd:not(dt + dd) {
	margin-top: 1em;
}

.c-event_info .c-infobox.blue .c-summary_list-s dd a {
	color: #41a8bb;
	text-decoration: underline;
}
.c-event_info .c-infobox.blue .c-summary_list-s dd a:hover {
	opacity: 0.8;
}

/* RULE */
.c-event_info .c-summary_container.c-rule h3 {
	background-image: url(/wp-content/uploads/2024/09/eventinfo_item02.png);
}

.c-event_info .c-summary_container.c-rule ul {
	width: 95%;
	max-width: 740px;
	margin-left: auto;
	margin-right: auto;
	margin-top: var(--space-s);
	margin-bottom: var(--space-l);
	padding-left: 1.5em;
}

.c-event_info .c-summary_container.c-rule li {
	position: relative;
	margin-bottom: 0.7em;
	line-height: 1.5em;
}
.c-event_info .c-summary_container.c-rule li::before {
	position: absolute;
	left: -1.5em;
	top: 0;
	content: "\ecb6";
	font-family: var(--webicon-box);
	color: #f791a0;
}

/**
 * ALBUM
 */
.c-album .c-inner_wrap {
	padding-top: var(--space-m);
    padding-bottom: var(--space-s);
}

.c-album .c-section_ttl-txt {
	color: var(--accent-color01);
}

/* slider */
.metaslider.nav-hidden .flexslider {
	overflow: hidden;
}

.album_slide .flex-viewport {
	display: flex;
    justify-content: center;
}

.c-album .c-album_desc {
	margin-top: 2em;
	font-size: var(--txt-size-xxs);
	text-align: center;
	line-height: 1.5;
	color: #9f8e88;
}

.c-album .c-album_desc a {
	text-decoration: underline;
}
.c-album .c-album_desc a:hover {
	color: var(--accent-color01);
}

@media screen and (max-width:991px) {
	.album_slide li { 
		width: 35vw !important;
	}
}



/**
 * footer
 */

footer.site-footer {
	padding: 0.7em 1em;
	background: var(--dark-color);
	color: #fff;
	text-align: center;
	font-size: 12px;
}




/**
 * post(single) style
 */
body.single .site::before,
body.archive .site::before,
.site:has(.c-grid_2_colsLayout)::before {
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 70px;
	background-image: url("/wp-content/uploads/2024/08/top_bg.jpg");
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

body.single .c-grid_2_colsLayout,
body.archive .c-grid_2_colsLayout,
body.page .c-grid_2_colsLayout {
	display: grid;
	grid-template-columns: 280px 1fr;
	max-width: 1150px;
    margin: var(--space-m) auto var(--space-m);
}

body.single .c-grid_2_colsLayout .site-main,
body.archive .c-grid_2_colsLayout .site-main,
body.page .c-grid_2_colsLayout .site-main {
	min-height: 100vh;
	min-height: 100svh;
	padding: var(--space-s);
}

/* .entry-header */
body.single .entry-header .entry-title,
body.archive .page-title,
body.page:has(.c-grid_2_colsLayout) .entry-header .entry-title {
	position: relative;
	font-size: calc( var(--txt-size-l) * 1.5 );
	font-weight: bold;
	border-bottom: 2px solid #f4f5f7;
    padding-bottom: 0.4em;
    margin-bottom: 0.5em;
}
body.single .entry-header .entry-title::after,
body.archive .page-title::after,
body.page:has(.c-grid_2_colsLayout) .entry-header .entry-title::after {
	position: absolute;
	bottom: -2px;
	left: 0;
	content: "";
	display: block;
	width: 2.7em;
	height: 2px;
	background: var(--accent-color01);
}

body.single .entry-header .entry-meta {
	font-size: var(--txt-size-xxs);
	color: #726f6f;
}

body.single .entry-header .entry-meta i {
	color: #ccc;
	font-size: 1.2em;
	vertical-align: middle;
	margin-right: 0.2em;
}

body.single .entry-header .entry-meta .tags-links i {
	margin-left: 1em;
}

body.single .entry-header .entry-meta .tags-links a {
	color: var(--accent-color01);
}

/* .thumbnail */
body.single .post-thumbnail {
	border: 1px solid #efefef;
	aspect-ratio: 770 / 433;
	background: #f4f5f7;
	margin-top: 1.6em;
}

body.single .post-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

/* .entry-footer */
body.single .entry-footer {
	margin: var(--space-l) 0 var(--space-s);
	padding-bottom: var(--space-s);
	border-bottom: 1px solid #f4f5f7;
}

.c-share_box {
	position: relative;
	text-align: center;
}
.c-share_text {
	display: flex;
	align-items: center;
	width: 100%;
	padding: 0 30%;
	font-size: var(--txt-size-s);
	color: #726f6f;
	font-weight: bold;
	letter-spacing: 0.1em;
}
.c-share_text::before,
.c-share_text::after {
	content: "";
	display: block;
	flex: 1;
	border-bottom: 1px solid #726f6f;
}
.c-share_text::before {
	margin-right: 1em;
}
.c-share_text::after {
	margin-left: 1em;
}

.c-sns_container {
	display: flex;
	justify-content: space-evenly;
	margin-top: 1.5em;
}
.c-sns_container .c-sns_item {
	content: "";
	width: 46px;
	aspect-ratio: 1;
	border-radius: 50%;
	overflow: hidden;
}
.c-sns_container .c-sns_item.c-sns_x {
	background: #555;
}
.c-sns_container .c-sns_item a {
	display: block;
	content: "";
	height: 100%;
}
.c-sns_container .c-sns_item.c-sns_x a {
	padding: 22%;
}
.c-sns_container .c-sns_item:has(a:hover) {
	opacity: 0.8;
}

.post-navigation .nav-links {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-gap: 6%;
	font-size: var(--txt-size-s);
	color: #eb939a;
	line-height: 1.5em;
}
.post-navigation .nav-links a {
	flex: 1;
}
.post-navigation .nav-links a:hover {
	color: var(--accent-color01);
}
.post-navigation .nav-links .nav-previous,
.post-navigation .nav-links .nav-next {
	position: relative;
	display: flex;
	align-items: center;
	gap: 0.5em;
}
.post-navigation .nav-links .nav-next {
	text-align: right;
}
.post-navigation .nav-links .nav-previous::before {
	content: "\ea54";
	font-family: var(--webicon-box);
	font-size: 2em;
	color: #ccc;
}
.post-navigation .nav-links .nav-next::after {
	content: "\ea55";
	font-family: var(--webicon-box);
	font-size: 2em;
	color: #ccc;
}
.post-navigation .nav-links .nav-previous:has(:hover)::before,
.post-navigation .nav-links .nav-next:has(:hover)::after {
	color: var(--accent-color01);
}

@media screen and (max-width: 991px) {
	body.single .c-grid_2_colsLayout,
	body.archive .c-grid_2_colsLayout,
	body.page .c-grid_2_colsLayout {
		grid-template-columns: 1fr;
	}
}

@media screen and (max-width: 600px) {
	body.single .c-grid_2_colsLayout .site-main,
	body.archive .c-grid_2_colsLayout .site-main,
	body.page .c-grid_2_colsLayout .site-main {
		padding: calc(var(--space-s) * 2) 6vw;
	}
	.post-navigation .nav-links {
		grid-template-columns: 1fr;
	}
	.post-navigation .nav-links .nav-previous {
		width: 85%;
	}
	.post-navigation .nav-links .nav-next {
		width: 85%;
		margin-top: 0.8em;
		margin-left: auto;
	}
	.c-share_text {
		padding: 0 10%;
	}
}


/**
 * archive style
 */
body.archive .page-header {
	margin-bottom: var(--space-s);
} 

body.archive article {
	display: grid;
	grid-template-columns: 170px 1fr;
	gap: 20px;
	margin-bottom: 1.8em;
}

body.archive article a.post-thumbnail {
	display: block;
	aspect-ratio: 1;
	border: 1px solid #efefef;
}
body.archive article:has(:hover) a.post-thumbnail {
	opacity: 0.8;
}

body.archive article a.post-thumbnail img {
	width: 100%;
	height: 100%;
	object-fit: cover;	
}

body.archive article .c-entry-wrap {
	display: flex;
	flex-direction: column;
}

body.archive article .entry-content {
	margin: 0;
	flex-grow: 1;
}

body.archive article a.c-archive_txtLink {
	display: block;
	font-size: var(--txt-size-xs);
	line-height: 1.5;
}
body.archive article:has(:hover) a.c-archive_txtLink {
	color: var(--accent-color01);
}

body.archive article .entry-header {
	margin-bottom: 0.7em;
}
body.archive article .entry-header h2 {
	font-size: var(--txt-size-l);
}

body.archive article .entry-meta {
	font-size: var(--txt-size-xxs);
	color: #726f6f;
}

body.archive article .entry-meta .tags-links {
	margin-left: 1em;
}

body.archive article .entry-meta i {
	margin-right: 0.3em;
}

@media screen and (max-width: 600px) {
	body.archive article {
		grid-template-columns: 1fr;
		margin-bottom: 3em;
	}
	
	body.archive article a.post-thumbnail {
		aspect-ratio: 19 / 13;
	}
}












/**
 * custom page style
 */
body.single-post .entry-content p {
	font-size: 0.94em;
	line-height: 1.7em;
	margin-bottom: 1em;
}

body.single-post .entry-content h2,
body.single-post .entry-content h3 {
	margin: 45px 0 20px;
}
body.single-post .entry-content h2 {
	border-top: 1px dashed #ccc;
	padding-top: 0.5em;
}
body.single-post .entry-content h3 {
    border-left: 7px solid #df616b;
    padding-left: 0.5em;	
}

body.single-post .entry-content ul,
body.single-post .entry-content li {
	position: relative;
}
body.single-post .entry-content ul {
	margin: 2em;
	padding: 10px 2em 10px 2.2em;
	border-left: 2px solid #ffd6da;
}
body.single-post .entry-content li::before {
	position: absolute;
	left: -1.3em;
	content: "\eafe";
	font-family: boxicons;
	color: #efb3b7;
}

.wp-block-button__link {
	background: var(--accent-color01);
	transition: 0.2s;
}
a.wp-block-button__link:hover {
	opacity: 0.8;
	color: #fff;
}
.wp-block-button.is-style-outline--8e1b06525ee5ab2e29e2b88a2cd3a800 {
	background: transparent none;
	color: var(--accent-color01) !important;
	transition: 0.2s;
}
.wp-block-button.is-style-outline--8e1b06525ee5ab2e29e2b88a2cd3a800 a:hover {
	background: var(--accent-color01);
	color: #fff;
	opacity: 1;
}


.pc { display: block; }
.pconl { display: block; }
.tbsp { display: none; }
.sp { display: none; }
@media screen and (max-width:991px) {
	.pconl { display: none; }
	.tbsp { display: block; }
}
@media screen and (max-width:600px) {
	.pc { display: none; }
	.sp { display: block; }
}