@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;500&display=swap');


@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/

body {
	font-family: "Shippori Mincho", serif;
	font-weight: 400;
	font-style: normal;
}

#body_wrap {
	background-size: 480px;
}

:root {
    --swl-btn_shadow: 0px 0px 16px rgba(0, 0, 0, 0.12);
	--b-radius: 10px;
	--color_light_gray: #EDEDED;
	--color_header_bg: rgba(181, 174, 158, 0.1);
	--color_footer_bg: rgba(181, 174, 158, 0.1);
	--color_bg_brown: rgba(174, 159, 128, 0.15);
	--color_bg_blue: rgba(128, 174, 168, 0.15);
}

b, strong {
	font-weight: 500;
}

@media (max-width: 959px) {
	:root {
		--swl-pad_container: 1.4em;
		--b-radius: 5px;
	}
	
	.-frame-on {
        --swl-pad_container: 1.4em;
	}
}

@media (min-width: 600px) {
    :root {
        --swl-fz--huge: 1.45em;
    }
}

@media (max-width: 599px) {
    :root {
        --swl-fz--huge: 1.4em;
		--swl-box_padding: 1.4em;
	}
}

.serif {
	font-family: "Shippori Mincho", serif;
	font-style: normal;
}

h1, h2, h3, h4, h5, .cap_box_ttl span {
	font-family: "Shippori Mincho", serif;
	font-weight: 500;
	font-style: normal;
}

h2.is-style-section_ttl, h2.is-style-section_ttl span {
	color: var(--color_main);
}

.post_content {
	line-height: 1.7;
}

.post_content hr {
    border-color: #e6e6e6;
    max-width: none!important;
}

.post_content li {
    margin: 0.5em 0;
}

.bg-gray {
    background: #f7f7f7;
}

.bg-blue {
    background: #f1f4f9;
}

.max640 {
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}

.max480 {
	max-width: 480px;
	margin-left: auto;
	margin-right: auto;
}

.fadeInUp {
    animation-name: fadeInUp-OW!important;
}

/*
plug-in
* */

.w3eden .card-body {
    padding: 0.6em;
}

.w3eden .media {
    flex-wrap: wrap;
}

.w3eden .media-body {
    margin-bottom: 0.25em;
}

.w3eden .media > div:nth-child(2) a {
    pointer-events: none;
    font-size: 0.75em;
    color: var(--swl-text_color--black);
}

.w3eden .media > div:nth-child(1) {
    width: 56px;
    margin-right: 0!important;
    padding-right: 10px;
}

.w3eden .media > div:nth-child(2) {
    width: calc(100% - 56px);
}

.w3eden .media > div:nth-child(3) {
    width: 100%;
    margin-left: 0!important;
    text-align: right;
}

.w3eden .media > div:nth-child(1) img {
    width: 100%;
    max-width: none;
    min-width: inherit;
    display: block;
}

.w3eden .package-title {
    padding-bottom: 0.55em!important;
    line-height: 1.15;
}

@keyframes fadeInUp-OW {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0,30px,0);
        transform: translate3d(0,30px,0);
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}

.fadeInLeft {
    animation-name: fadeInLeft-OW!important;
}

@keyframes fadeInLeft-OW {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-30px,0,0);
        transform: translate3d(-30px,0,0);
    }

    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}

/*
header
 * */

.l-header__inner.l-container, .l-fixHeader__inner.l-container {
    max-width: none;
}

.l-fixHeader__logo {
	position: absolute;
}

.l-fixHeader__gnav .c-gnav {
	margin-left: 140px;
	width: 100%;
}

.c-gnav>.menu-item a .ttl {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-style: normal;
}

.c-gnav>.menu-item>a .ttl {
    color: #000;
}

.-series-right .c-gnavWrap {
    margin-right: 0;
    margin-left: auto;
}

.-body-solid .l-fixHeader {
    box-shadow: none;
}

.c-gnav > li:hover > a::after, .c-gnav > .-current > a::after {
	height: 1px;
}

/*
.l-content {
    margin-bottom: 0 !important;
}
*/

.l-header__customBtn {
    display: none;
}

.l-header__menuBtn .c-iconBtn, .p-spMenu__closeBtn .c-iconBtn {
	width: 32px;
	height: 32px;
    border-radius: 16px;
    background: var(--color_text);
}

.l-header__menuBtn .c-iconBtn .c-iconBtn__icon, .p-spMenu__closeBtn .c-iconBtn .c-iconBtn__icon {
    color: #fff;
    font-size: 18px;
}

.c-widget__title.-spmenu {
    display: none;
}

.l-header__menuBtn {
    margin-right: var(--swl-pad_container,0);
    margin-left: 8px;
}

.-right .p-spMenu__closeBtn {
    top: 12px;
    right: var(--swl-pad_container,0);
}

.p-spMenu__inner {
    padding-top: 80px;
}

.-frame-on .p-breadcrumb, .c-infoBar+.p-breadcrumb, .c-infoBar+[data-barba=container]>.p-breadcrumb, .l-topTitleArea+.p-breadcrumb, .p-breadcrumb.-bg-on {
	background: rgba(174, 159, 128, 0.15)!important;
	box-shadow: none;
	z-index: 1;
}

.l-fixHeader:before {
    display: none;
}

.w-header__inner .swell-block-button__link span {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 400;
	font-style: normal;
}

.w-header__inner .wp-block-group-is-layout-flex {
	gap: 0;
}

@media (min-width: 960px) {
    .c-gnav>.menu-item>a .ttl {
		font-size: 16px;
	}
    
    .c-gnav>.menu-item>a {
        padding: 0 20px;
    }
    
    .-series .l-header__inner, .-series .l-fixHeader__inner {
        align-items: center;
		justify-content: space-between;
        padding-top: 15px;
        padding-bottom: 15px;
		background: var(--color_header_bg);
    }
    
    .-series .l-header__logo, .-series .l-fixHeader__logo {
        padding: 0;
    }
    
    .-series-right .c-gnavWrap {
        height: 49px;
    }
    
    .p-breadcrumb {
        position: absolute;
        top: 94px;
        left: 195px;
        width: calc(100% - 195px);
        z-index: 100;
    }
    
    .p-breadcrumb__list {
        padding-left: 22px;
        padding-right: 22px;
        max-width: none;
    }
    
    #header {
        visibility: hidden;
    }
    
    #fix_header {
        transform: translateY(0)!important;
        opacity: 1!important;
        visibility: visible!important;
    }
	
	.w-header__inner div:first-child > a {
		border-radius: 4px 0 0 4px;
		height: 48px;
		margin-top: 1px;
	}

	.w-header__inner div:last-child > a {
		border-radius: 0 4px 4px 0;
	}
	
}

@media not all and (min-width: 960px) {
    
    .-img .c-headLogo__link img {
        opacity: 0;
    }
    
    .-img .c-headLogo__link {
        width: 112px;
        height: 42px;
		padding: 0;
        background-image: url(/wp-content/uploads/2025/09/logo_hotaru.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
    }
	
	.c-headLogo {
		height: 42px;
	}
    
    .w-header {
        display: flex!important;
    }
	
	.w-header__inner .swell-block-button {
		height: 32px;
	}
	
	.w-header__inner .swell-block-button .swell-block-button__link {
		display: block;
	}
	
	.w-header__inner .swell-block-button:first-child .swell-block-button__link {
		height: 32px;
		padding: 0 16px;
		display: flex;
		align-items: center;
		width: auto;
	}
	
	.w-header__inner .swell-block-button:first-child .swell-block-button__link {
		font-size: 0.86em;
	}
	
	.w-header__inner .is-layout-flex:not(.is-vertical).is-content-justification-right {
		gap: 8px;
	}
	
	.w-header__inner .swell-block-button:nth-child(1) {
        padding: 0 16px;
        height: 100%;
		padding: 0;
    }
	   
	.w-header__inner .swell-block-button:nth-child(2) .swell-block-button__link {
		width: 32px;
		height: 32px;
		border-radius: 16px;
		padding: 0;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	
	.w-header__inner .swell-block-button:nth-child(2) {
        padding: 0;
        height: 100%;
    }
    
	.w-header__inner .swell-block-button:nth-child(2) span {
		font-size: 16px;
	}
    
    .l-header__logo {
        padding: 0 0 0 12px;
    }
	
	.l-header__logo img {
		display: block;
		width: 100%;
	}
    
    .l-header__inner {
        padding-top: 8px;
        padding-bottom: 8px;
    }
	
	.l-header__menuBtn {
		margin-right: 12px;
		margin-left: 8px;
		width: 32px;
		height: 32px;
	}
	

	
}

.c-spnav > .menu-item > a {
	font-family: "Noto Serif JP", serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
}

.c-listMenu a:not([href]) {
	pointer-events: none;
}

.c-listMenu a:not([href])::before {
	display: none;
}

.c-gnav .sub-menu {
    z-index: 101;
	background: rgba(255, 255, 255, 0.3);
}

.c-gnav .sub-menu a:before, .c-listMenu a:before {
	color: var(--color_main);
}


.c-gnav .menu-item-has-children::after {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBkPSJtMjIuOSAzMy0xMy0xMy4xYy0uOC0uOC0uOC0yIDAtMi44LjgtLjggMi0uOCAyLjggMEwyNCAyOC40bDExLjMtMTEuM2MuOC0uOCAyLS44IDIuOCAwIC44LjguOCAyIDAgMi44TDI1LjEgMzNjLS42LjYtMS42LjYtMi4yIDB6Ij48L3BhdGg+PC9zdmc+);
    mask-image: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBkPSJtMjIuOSAzMy0xMy0xMy4xYy0uOC0uOC0uOC0yIDAtMi44LjgtLjggMi0uOCAyLjggMEwyNCAyOC40bDExLjMtMTEuM2MuOC0uOCAyLS44IDIuOCAwIC44LjguOCAyIDAgMi44TDI1LjEgMzNjLS42LjYtMS42LjYtMi4yIDB6Ij48L3BhdGg+PC9zdmc+);
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    mask-size: contain;
    background: var(--color_main);
}

.c-gnav .menu-item-has-children {
    padding-right: 20px;
}

/*
footer
* */

.l-footer__inner {
	padding: 2em 0 1.25em;
	position: relative;
}

.l-footer__nav {
	display: block;
	text-align: center;
}

.l-footer__nav li a {
	font-size: 1em;
}

.l-footer__nav li a, .l-footer__nav li:first-child a {
	border: none;
}

.l-footer__nav > li > a {
	padding-left: 0;
}

.l-footer__nav > li > .sub-menu {
	border-left: 1px solid #fff;
	margin-top: .5em;
}

.l-footer__nav li {
	padding: .5em 0;
}

.w-footer__box {
	padding: 0;
}

.l-footer__inner .wp-block-image img {
	display: block;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

.w-beforeFooter {
	margin-top: 0;
	margin-bottom: 0;
}

.l-footer__inner .copyright {
	text-align: center;
}

.l-footer__inner .sub-menu {
	display: none;
}

.c-iconList .c-iconList__link {
	font-size: 20px;
}

.c-fixBtn {
	background: #F1EDE5;
}

@media (min-width: 960px) {
	
	.l-footer__nav {
		display: flex;
		gap: 56px;
	}

	.l-footer__inner {
		padding: 2em 0 3em;
	}
	
	.l-footer__inner .copyright {
		position: absolute;
		left: 50%;
		bottom: 2em;
		transform: translateX(-50%);
		text-align: center;
	}
}

/*
contents
* */

a, a span {
	transition-duration: .25s;
}

a[href=""] {
	pointer-events: none;
}

.swell-block-dl__dd {
	padding: 0.5em 0;
}

.post_content dt, .post_content h2, .post_content h3, .post_content h4 {
	font-weight: 500;
}

.post_content > .swell-block-fullWide:first-child {
    margin-top: -4em!important;
}

.is-vertically-aligned-top>.wp-block-media-text__content {
	padding-top: 0;
}

.swell-block-button span {
	line-height: 1.35;
	font-weight: 500;
}

.swell-block-button svg {
	transition-duration: .25s;
}

.swell-block-button.is-style-btn_line a {
	transition: border .25s;
	border: 1px solid var(--color_main);
}

.swell-block-button.is-style-btn_line a:hover {
	color: var(--color_text)!important;
}

.swell-block-button.is-style-btn_line span {
	color: var(--color_text);
}

.is-style-simple th, .is-style-simple td {
	padding-top: 1em;
	padding-bottom: 1em;
}

.is-style-simple th {
	border-color: var(--color_main);
}

.is-style-simple tr:first-child > * {
	border-top: none;
}

.post_content .swell-block-fullWide + hr {
    margin: 0;
}

#main_content .post_content .p-toc {
    width: 100%;
    max-width: none;
    background: var(--color_gray);
    border: none;
}

.p-articleThumb__img, .p-articleThumb__youtube {
    box-shadow: none;
}

.blog .l-mainContent__inner>.post_content {
    padding-left: 0;
    padding-right: 0;
}

#body_wrap:not(.home):not(.single-post) .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
	display: flex;
	margin-left: 0;
	margin-right: 0;
	align-items: flex-start;
	color: var(--color_text);
	font-size: 1.75em;
}

#body_wrap:not(.home):not(.single-post) .post_content h2.is-style-default:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
	flex-direction: column;
}

#body_wrap:not(.home):not(.single-post) .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::after {
	content: "";
	display: block;
    width: 1px;
    height: 80px;
    background: var(--color_main);
    position: static;
    margin-left: 16px;
	margin-top: 0;
	transform: translateY(11%);
}

#body_wrap:not(.home):not(.single-post) .post_content h2.is-style-default:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::after {
	content: "";
	display: block;
    width: 80px;
    height: 1px;
    background: var(--color_main);
    position: static;
    margin-top: 16px;
	margin-left: 0;
}

.post_content h2:not(.is-style-section_ttl)::after {
	content: "";
	display: block;
    width: 80px;
    height: 1px;
    background: var(--color_main);
    position: static;
    margin-top: 16px;
}

#body_wrap:not(.home):not(.single-post) .post_content h2.is-style-default:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)).has-text-align-right {
	align-items: flex-end;
}

#body_wrap:not(.home):not(.single-post) .post_content h2.is-style-default:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)).has-text-align-right::after {
	margin-right: 0;
	margin-left: auto;
}

#body_wrap:not(.home):not(.single-post) .post_content h2.is-style-default:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)).has-text-align-center {
	align-items: center;
}

#body_wrap:not(.home):not(.single-post) .post_content h2.is-style-default:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)).has-text-align-center::after {
	margin-right: auto;
	margin-left: auto;
}


#body_wrap:not(.home) .l-content {
	margin-top: 2.5em;
}

.p-articleMetas {
	flex-direction: column;
	align-items: flex-start;
}

.p-articleMetas .p-articleMetas__times {
	width: 100%;
	border-bottom: 1px solid #E6E6E6;
	padding-bottom: 1em;
	margin-bottom: .5em;
}

.p-articleMetas .c-postTimes__posted {
	font-weight: 500;
	color: var(--color_text);
	font-size: 1.25em;
}

.p-articleMetas .c-postTimes__posted::before {
	display: none;
}

.p-articleMetas .p-articleMetas__termList {
	order: 3;
}

.p-articleThumb {
	margin-top: 4em;
}

.is-style-simple th, .is-style-simple td {
	padding-top: 1.5em;
	padding-bottom: 1.5em;
}

.is-style-card.wp-block-media-text {
	box-shadow: none;
	border: 1px solid var(--color_main);
	border-radius: var(--b-radius);
	overflow: hidden;
}

.swell-block-column > .swell-block-columns__inner {
	height: 100%;
}

.c-pageTitle {
	text-align: center;
}

.c-pageTitle span {
	font-size: .7em;
}

@media (min-width: 960px) {
    .c-pageTitle {
        font-size: 2.2em;
    }

	.l-topTitleArea {
		margin-top: 28px;
	}

}

@media (min-width: 600px) {
	#main_content .post_content .wp-block-table td:first-child {
		min-width: 200px!important;
	}

	.is-style-simple th, .is-style-simple td {
		padding-top: 2em;
		padding-bottom: 2em;
	}
}

@media (max-width: 959px) {
    .is-style-crease {
        padding: calc(0.5em + 8px);
    }

    .cap_box_content {
        padding: 1em;
    }

    .post_content > .swell-block-fullWide:first-child {
        margin-top: -2em!important;
    }

	.c-pageTitle {
        font-size: 1.8em;
    }
}

@media (max-width: 599px) {
	#body_wrap:not(.home):not(.single-post) .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title)) {
		font-size: 1.5em;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	#body_wrap:not(.home):not(.single-post) .post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::after {
		content: "";
		width: 1.5em;
		height: 1px;
		background: var(--color_main);
		position: inherit;
		margin-top: .5em;
		margin-left: 0;
	}

	.post_content h2:where(:not([class^="swell-block-"]):not(.faq_q):not(.p-postList__title))::before {

	}

	.c-balloon.-bln-left .c-balloon__body {
		padding-left: 18px;
		padding-right: 0;
	}
	
	.c-balloon.-bln-right .c-balloon__body {
		padding-left: 0;
		padding-right: 18px;
	}
    
    .fancybox.image {
        pointer-events: none;
    }
    
    .fancybox.image + figcaption {
        display: none!important;
    }
}
/*
contact form
* */

.wpcf7-form {
	max-width: 720px;
	margin-left: auto;
	margin-right: auto;
}

.wpcf7-form > p {
  margin: 0 0 1.25em;
  font-weight: 700;
}

.wpcf7-form .wpcf7-form-control-wrap {
	display: block;
	font-weight: 500;
	margin-top: .35em;
}

.contact-form-label {
  width: 30%;
  margin: 0;
}

.contact-form-input {
  width: 100%;
  margin-left: 10px;
}

.post_content .wpcf7 input[type=submit] {
	border-radius: 4px;
}

.post_content .wpcf7 input[type=submit]:hover {
	background: #000;
	border-color: #000;
}

.wpcf7-form input, .wpcf7-form select, .wpcf7-form textarea {
	padding: .5em .5em;
}

.post_content .wpcf7 input[type=submit] {
	margin-top: 2.5em;
}

.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output {
	background-color: #ffefef; /* Red */
	color: #dc3232;
	border: none;
}

.wpcf7 form.spam .wpcf7-response-output {
	background-color: #ffefef; /* Red */
	color: #dc3232;
	border: none;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	background-color: #ffefef; /* Red */
	color: #dc3232;
	border: none;
}

.wpcf7 form .wpcf7-response-output {
	padding: 0.5em 1em;
}

.wpcf7 form .required {
	display: inline-block;
	background: transparent;
	border: 1px solid #dc3232;
	color: #dc3232;
	padding: 0 .35em;
	font-size: .8em;
	margin-left: .4em;
}

.wpcf7 form .wpcf7-acceptance {
	text-align: center;
    display: block;
}

.wpcf7 form .wpcf7-acceptance .wpcf7-list-item {
	margin-left: 0;
}

@media (min-width: 960px) {
	.wpcf7 form .wpcf7-response-output {
		text-align: center;
	}
}

/*
sitemap
* */

.wsp-pages-list a {
    font-weight: 700;
}

.wsp-container > .wsp-pages-list > li, .wsp-container > .wsp-posts-list > li, .wsp-container > .wsp-news-list > li {
    margin: 1.25em 0;
}

.wsp-container a {
    display: flex;
    align-items: center;
    color: #333;
}

.wsp-container a::after {
    content: "";
    display: inline-block;
    width: 18px;
    height: 18px;
    transform: translateY(0.08em) rotate(-90deg);
    margin-left: 0.25em;
    -webkit-mask-image: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBkPSJtMjIuOSAzMy0xMy0xMy4xYy0uOC0uOC0uOC0yIDAtMi44LjgtLjggMi0uOCAyLjggMEwyNCAyOC40bDExLjMtMTEuM2MuOC0uOCAyLS44IDIuOCAwIC44LjguOCAyIDAgMi44TDI1LjEgMzNjLS42LjYtMS42LjYtMi4yIDB6Ij48L3BhdGg+PC9zdmc+);
    mask-image: url(data:image/svg+xml;base64,PHN2ZyBoZWlnaHQ9IjFlbSIgd2lkdGg9IjFlbSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiBhcmlhLWhpZGRlbj0idHJ1ZSIgdmlld0JveD0iMCAwIDQ4IDQ4Ij48cGF0aCBkPSJtMjIuOSAzMy0xMy0xMy4xYy0uOC0uOC0uOC0yIDAtMi44LjgtLjggMi0uOCAyLjggMEwyNCAyOC40bDExLjMtMTEuM2MuOC0uOCAyLS44IDIuOCAwIC44LjguOCAyIDAgMi44TDI1LjEgMzNjLS42LjYtMS42LjYtMi4yIDB6Ij48L3BhdGg+PC9zdmc+);
    -webkit-mask-position: center center;
    mask-position: center center;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: contain;
    mask-size: contain;
    background: var(--color_main);
}

/* common */
.form-wrapper label {
  font-weight:bold;
}

.form-wrapper {
  display: block;
}

.wpcf7 input[type="text"],.wpcf7 input[type="email"],.wpcf7 input[type="tel"],.wpcf7 input[type="select"] {
  width: 100%;
}

.wpcf7 textarea {
  width: 100%;
  height: 150px;
}

.contact-form-submit {
  text-align: center;
}

.wpcf7 input[type=submit] {
	display: block;
	color: var(--color_main);
	font-size: 110%;
	font-weight: 700;
	background: #fff;
	border: 1px solid var(--color_main);
	height: 60px;
	border-radius: 30px;
	line-height: 1.5;
	margin: 0;
	min-width: 60%;
	padding: 0.5em 1.5em;
	text-decoration: none;
	width: auto;
	transition: background .25s, color .25s;
	margin-left: auto!important;
	margin-right: auto!important;
}

.wpcf7 input[type=submit]:hover {
	background: var(--color_main);
	color: #fff;
	opacity: 1;
}

@media screen and (max-width: 599px) {
	.wpcf7 input[type=submit] {
		height: 52px;
		border-radius: 26px;
		width: 100%;
		min-width: unset;
	}
}

/*　required　*/
.contact-form-required {
  font-size: 80%;
  padding: 1px 6px;
  background: #FFE8E8;
  color: #D90101;
  margin-left: 10px;
  display: inline-block;
}

@media screen and (max-width: 959px) {
  .form-wrapper {
    margin: 40px auto 0;
  }

  .contact-form-input {
    margin-left: 0px;
  }

  .contact-form-input-item {
    display: block;
    margin: 0 0 0.75em;
  }

  .form-wrapper label{
    display: block;
    margin-bottom: 10px;
  }

  .contact-form-label {
    width: 100%;
    margin: 0;
  }

  .wpcf7 input[type=submit] {
    margin-top: 20px;
  }
}

/*
post
* */

.l-topTitleArea__img {
    display: none;
}

.l-topTitleArea {
    border-bottom: 1px solid #E6E6E6;
}

.l-topTitleArea__body {
    text-shadow: none;
    color: #222;
}

.c-pageTitle__subTitle {
    display: none;
}

.p-termHead__desc {
    font-weight: 700;
}

.single .c-categoryList__link, .p-postList__cat {
    background-color: transparent;
    color: var(--color_text);
    border: 1px solid var(--color_text);
    line-height: 1;
    padding: 4px .5em;
}

.c-categoryList::before, .p-postList__cat::before {
    display: none;
}

.p-articleMetas__termList, .p-postList__cat {
    font-weight: 700;
}

.wp-block-categories-list {
    display: flex;
    flex-wrap: wrap;
    border-bottom: 1px solid var(--color_border);
}

.wp-block-categories-list .cat-item {
    margin-right: 10px;
    margin-bottom: 10px;
}

.wp-block-categories-list .cat-item a {
    color: var(--color_main);
    font-weight: 700;
    padding: .2em 10px;
    border: 1px solid var(--color_main);
    font-size: 1.1em;
}

.wp-block-categories-list .cat-item a::before {
    display: none;
}

.p-pickupBanners__item .c-bannerLink, .p-postList__thumb {
    box-shadow: none;
}

/*
Instagram
* */

.box-qr .cap_box_ttl {
	left: 50%;
	transform: translateX(-50%);
}

.box-qr .cap_box_content {
	border-radius: var(--b-radius);
}

@media (min-width: 960px) {
    .single .c-postTitle__ttl {
        font-size: 2.2em;
    }
    
    .single .p-articleMetas {
        font-size: 14px;
    }
    
    .single .p-articleMetas.-top .p-articleMetas__termList {
        font-size: 13px;
    }
}

@media (max-width: 959px) {
    .single .c-postTitle__ttl {
        font-size: 1.8em;
    }
    
    .single .p-articleMetas {
        font-size: 0.95em;
    }
    
    .single .p-articleMetas.-top .p-articleMetas__termList {
        font-size: 0.9em;
    }
}

/*
top main
* */

.p-mainVisual__inner {
	height: auto;
}

.p-mainVisual .swiper-wrapper {
	transition-timing-function: linear;
	pointer-events: none;
}

@media (min-width: 960px) {

}


@media (max-width: 959px) {


}

/*
top contents
* */
.home .l-header {
	height: 79px;
}

.is-style-btn_normal a, .is-style-btn_line {
	transition: all .25s;
}

.is-style-btn_line a:hover {
	border-color: var(--color_text);
	background: none;
}

.home .post_content h2.is-style-section_ttl::after {
	display: none;
}

.swell-block-button.is-style-btn_line.green_ a {
	border: 1px solid #fff;
	transition: all .25s;
}

.swell-block-button.is-style-btn_line.green_ a:hover {
	color: #fff!important;
	background: rgba(255, 255, 255, 0.025);
}

.swell-block-button.is-style-btn_line.green_ span {
	color: #fff;
}

.top-cover-button .wp-block-cover {
	aspect-ratio: 2 / 1;
	width: 100%;
	height: auto;
	min-height: auto;
}

.top-movie .wp-block-video video {
	max-width: 800px;
}

.top-block01 .swell-block-column:last-child h1, .top-block01 .swell-block-column:last-child p {
	writing-mode: vertical-rl;
}

.top-block01 .swell-block-column:last-child {
	display: flex;
}

.top-block01 .swell-block-column:last-child h1 {
	order: 1;
}

.top-block01 .swell-block-column:last-child p {
	order: 0;
	margin: 0 7% 0 11%;
	padding-top: 20%;
	letter-spacing: 0.25em;
	line-height: 1.8;
}

.top-sec01::before {
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 3%;
    width: 86%;
    height: 33%;
	background: rgba(128, 174, 168, 0.15);
}

.top-sec01::after {
	content: "";
	display: block;
	position: absolute;
	right: 0;
    top: 47.3%;
    width: 69%;
    height: 31%;
	background: rgba(174, 159, 128, 0.15);
}

.opening-overlay {
	content: "";
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100dvh;
	background: rgba(18, 14, 9, 1);
	position: fixed;
	left: 0;
	top: 0;
	z-index: 999;
	pointer-events: none;
	animation: backgroundOpacity 3s 1;
	animation-delay: 3s;
	animation-fill-mode: forwards;
}

.p-mainVisual__inner {
	background: rgba(18, 14, 9, 1);
}

#body_wrap.home > * {
	filter: grayscale(100%);
	animation: bgGrayScale 4s 1;
	animation-delay: 5s;
	animation-fill-mode: forwards;
}

.logo-opening {
	width: 144px;
	margin: 0 auto 1em;
	animation: fadeOuCount 1s 1;
	animation-delay: 3.8s;
	animation-fill-mode: forwards;
}

.ov-since, .ov-year {
	color: #fff;
}

.ov-since {
	text-align: center;
	font-size: 1.5em;
	line-height: 1;
	letter-spacing: 0.075em;
	animation: fadeOutSince .5s 1;
	animation-delay: 1s;
	animation-fill-mode: forwards;
}

.ov-year {
	font-size: 2.2em;
	line-height: 1.25;
	width: 136px;
	text-align: center;
	letter-spacing: .1em;
}

.count-wrap {
	animation: fadeOuCount 1s 1;
	animation-delay: 3.8s;
	animation-fill-mode: forwards;
}

@property --count {
  syntax: "<integer>";
  inherits: false;
  initial-value: 1999;
}

.countUp {
  /* counter-set: countUp var(--count);
  animation: countUp 4s 1;
  animation-fill-mode: forwards;
  animation-timing-function: ease-in-out;
  animation-delay: 1.0s; */
  font-variant-numeric: tabular-nums;
}

/* .countUp::after {
  content: counter(countUp);
} */

@keyframes countUp {
  100% {
    --count: 2027;
  }
}

@keyframes fadeOutSince {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@keyframes fadeOuCount {
    0% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@keyframes backgroundOpacity {
    0% {
        background: rgba(18, 14, 9, 1);
    }
    100% {
        background: rgba(18, 14, 9, 0);
    }
}

@keyframes bgGrayScale {
    0% {
        filter: grayscale(100%);
    }
    100% {
        filter: grayscale(0);
    }
}

@media (max-width: 959px) {
	
	.home .l-header {
		height: 58px;
	}

	.top-cover-button .wp-block-cover {
		aspect-ratio: 3 / 2;
	}

	.top-block01 .swell-block-column:last-child p {
		margin: 0 2% 0 0;
		padding-top: 20%;
	}

}

@media (max-width: 767px) {
	.top-block01 .swell-block-columns__inner, .top-block02 .swell-block-columns__inner, .top-block03 .swell-block-columns__inner {
		flex-direction: column;
	}

	.top-block01 .swell-block-columns__inner .swell-block-column, .top-block02 .swell-block-columns__inner .swell-block-column, .top-block03 .swell-block-columns__inner .swell-block-column {
		width: 100%;
	}

	.top-block01 .swell-block-columns__inner .swell-block-column:first-child {
		order: 1;
	}

	.top-block01 .swell-block-columns__inner .swell-block-column:first-child figure {
		padding-left: 40vw;
		margin-top: -30%!important;
	}

	.top-block01 .swell-block-columns__inner .swell-block-column:first-child img {
		aspect-ratio: 1 / 1;
		object-fit: cover;
		object-position: center;
	}

	.top-block01 .swell-block-columns__inner .swell-block-column:last-child {
		justify-content: center;
		gap: 2em;
		padding: 0;
	}

	.top-sec01 .swell-block-column {
		padding-left: 0;
		padding-right: 0;
	}

	.top-block02 h2 {
		text-align: right!important;
	}

	.top-block02 figure, .top-block03 figure, .top-movie .wp-block-video {
		width: 100vw;
		margin-left: -1.4em;
		margin-right: -1.4em;
	}

	.top-block03 figure img {
		padding-left: 25.3%;
	}

	.top-block03 .swell-block-column:first-child {
		order: 1;
	}
}

@media (max-width: 599px) {
	.top-sec01 .wp-block-spacer {
		display: none;
	}
}

/*
top news
* */

.-type-simple .p-postList__times {
    padding: 0;
}

.-type-simple .p-postList__link {
    padding: 1.25em 0 1.25em 1.25em;
}

.-type-simple .p-postList__link, .p-postList.-type-simple {
    border: none;
}

.-type-simple .p-postList__item {
	background: var(--color_bg_brown);
	margin-bottom: 1em;
}

.top-news .p-postList__title {
	font-weight: 500;
}

.-type-simple .c-postTimes__posted {
    font-size: 1.4em;
    font-weight: 500;
    color: var(--color_text);
	margin-bottom: .5em;
}

.p-postList .p-postList__title {
	font-weight: 500;
}

.-type-simple .c-postTimes__posted::before {
    display: none;
}

.-type-simple .p-postList__body {
    position: relative;
    padding-right: 1.25em;
}

#body_wrap:not(.home) .p-postList__meta {
	margin-bottom: 1em;
}

#body_wrap:not(.home) .-type-simple .c-postTimes__posted {
	margin-bottom: 0;
}

.-type-simple .p-postList__body::after {
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    position: absolute;
    right: 16px;
    top: 50%;
    background-image: url('data:image/svg+xml;utf8,<svg fill="%23aba392" xmlns="http://www.w3.org/2000/svg" class="swl-svg-chevronRight swell-block-linkList__icon -right" width="1em" height="1em" viewBox="0 0 48 48" role="img" aria-hidden="true" focusable="false"><path d="m33 25.1-13.1 13c-.8.8-2 .8-2.8 0-.8-.8-.8-2 0-2.8L28.4 24 17.1 12.7c-.8-.8-.8-2 0-2.8.8-.8 2-.8 2.8 0l13.1 13c.6.6.6 1.6 0 2.2z"></path></svg>');
	background-size: cover;
	transform: translateY(-50%);
	color: var(--color_main);
}

.-type-simple .p-postList__link:hover .p-postList__body::after {
	background-image: url('data:image/svg+xml;utf8,<svg fill="%23aba392" xmlns="http://www.w3.org/2000/svg" class="swl-svg-chevronRight swell-block-linkList__icon -right" width="1em" height="1em" viewBox="0 0 48 48" role="img" aria-hidden="true" focusable="false"><path d="m33 25.1-13.1 13c-.8.8-2 .8-2.8 0-.8-.8-.8-2 0-2.8L28.4 24 17.1 12.7c-.8-.8-.8-2 0-2.8.8-.8 2-.8 2.8 0l13.1 13c.6.6.6 1.6 0 2.2z"></path></svg>');
	background-size: cover;
	background-color: none;
	color: var(--color_text);
}

.sec-news-btn {
    margin-top: -1px!important;
}

.sec-news-btn .is-style-btn_line:not(:last-child) {
    margin-right: -1px;
}

.sec-news-btn .is-content-justification-right {
    gap: 0;
}

.sec-news-btn .swell-block-button__link:hover strong {
    color: #fff;
}

.p-postList__link:hover .p-postList__body:after {
	background: inherit;
}

.is-style-section_ttl.top-line {
	display: flex;
	align-items: center;
}

.is-style-section_ttl.top-line::before {
	content: "";
	width: 80px;
	height: 1px;
	background: var(--color_main);
	position: static;
	margin-right: 16px;
}

.top-brand-box {
	height: 100%;
}

.top-brand-img {
	width: 100%;
	height: auto;
	aspect-ratio: 279 / 186;
}

.top-brand-img > div, .top-brand-img figure, .top-brand-img a {
	width: 100%;
	height: 100%;
}

.top-brand-img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.top-brand-img.b-radius.wp-block-group img {
	border-radius: 0;
}

.p-mainVisual + .l-content {
	margin-bottom: 2em;
}

@media (min-width: 960px) {
    
    .-type-simple .p-postList__body {
        display: flex;
        flex-wrap: wrap;
    }

	#body_wrap:not(.home) .p-postList__body {
		display: block;
	}
    
    .-type-simple .c-postTimes__posted {
        width: 92px;
    }
    
    .-type-simple .p-postList__meta {
        margin-bottom: 0;
    }
    
}

@media (max-width: 959px) {
	
	.is-style-section_ttl.top-line {
		transform: translateX(-1.4em);
	}
	.is-style-section_ttl.top-line::before {
		width: 40px;
		height: 1px;
		margin-right: 8px;
	}
}

/*
about
* */

@media (max-width: 959px) {

	.about-column:nth-child(even) > .swell-block-columns__inner > .swell-block-column:first-child {
		order: 1;
	}

	.about-column:nth-child(even) > .swell-block-columns__inner > .swell-block-column:last-child {
		order: 0;
	}

	.about-column:nth-child(odd) > .swell-block-columns__inner > .swell-block-column:first-child {
		padding-right: 10%;
	}

	.about-column:nth-child(odd) > .swell-block-columns__inner > .swell-block-column figure {
		padding-right: 10%;
	}

	.about-column:nth-child(odd) > .swell-block-columns__inner > .swell-block-column:last-child > .swell-block-columns {
		padding-left: 5%;
	}

	.about-column:nth-child(even) > .swell-block-columns__inner > .swell-block-column:last-child {
		padding-left: 10%;
	}

	.about-column:nth-child(even) > .swell-block-columns__inner > .swell-block-column figure {
		padding-left: 10%;
	}

	.about-column:nth-child(even) > .swell-block-columns__inner > .swell-block-column:first-child > .swell-block-columns {
		padding-right: 5%;
	}

}
