@charset "utf-8";

/***************************************************************
Base Styles of SP
header.css
breadcrumb.css
Sidebar.css
footer.css
Cross-page style
****************************************************************/

html,
input.wpcf7c-btn-confirm,
input.zip-addr,
select {
	font-family: 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}
html {
	font-size: 0.2666666vw;
}
body {
	background-color: var(--body-color);
	font-size: 16rem;
}
a:hover {
	opacity: 0.8;
	cursor: pointer;
	text-underline-offset: 0.3em;
}
a.hover-no-opacity:hover {
	opacity: 1;
}
a.no_pointer_event {
	pointer-events: none;
}
.header-sp-sticky {
	position: fixed;
	top: 0;
	background-color: var(--body-color);
	z-index: 1000;
	width: 100%;
}
.header-sp-sticky.fixed {
	box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1);
}
.helvetica {
	font-family: Helvetica;
}
.mincho {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}
.notoSans {
	font-family: 'NotoSansJP', sans-serif;
}
.notoSerifJP {
	font-family: 'Noto Serif JP', serif;
}
*[class*="--radius-none"] {
	border-radius: 0;
}
*[class*="--radius-bit"] {
	border-radius: 2px;
}
*[class*="--radius-little"] {
	border-radius: 4px;
}
*[class*="--radius-radius"] {
	border-radius: 8px;
}
*[class*="--radius-ellipse"] {
	border-radius: 30px;
}

.border-bottom-width-0 {
	border-width: 0;
}
.border-bottom-width-1 {
	border-width: 1px;
}
.border-bottom-width-2 {
	border-width: 2px;
}
.border-bottom-width-3 {
	border-width: 3px;
}
.border-bottom-width-4 {
	border-width: 4px;
}
.wp-block-image img[class*="has-border-"],
.wp-block-image img[style*="border-width"] {
	border-style: solid;
	box-sizing: content-box;
}
.font-normal {
	font-weight: normal;
}
.font-bold {
	font-weight: bold;
}
.mt-10 {
	margin-top: 10px;
}
.mt-20 {
	margin-top: 20px;
}
.mt-30 {
	margin-top: 30px;
}
.mt-40 {
	margin-top: 40px;
}
.content {
	padding-bottom: 150px;
}
.content--home {
	padding-bottom: 0;
}
.main {
	container-type: inline-size;
	container-name: lower-content;
	margin: 0 2.5vw;
}
.main_full:not(.home .main_full) {
	margin-left: 2vw;
	margin-right: 2vw;
}
.page_before {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
.page_before__service_img {
	position: relative;
	top: 34px;
	display: inline-block;
	max-width: 100%;
	height: auto;
	max-width: 56px;
	max-height: 56px;
}
.h1-style {
	margin: 40px 0 25px;
	padding-bottom: 8px;
	border-bottom: 1px solid #000;
	display: block;
	width: 100%;
	line-height: 1.5;
	font-size: 28rem;
	font-weight: bold;
	letter-spacing: 0.4px;
}
.page_before__service_img + .h1-style {
	flex: 1;
	margin-left: 10px;
	width: 100%;
	display: inline-block;
}
.single_before-top + .h1-style {
	margin-top: 16px;
}
.h2-style {
	margin: 40px 0 16px;
	padding: 0 2.5vw 12px;
	letter-spacing: 1.6px;
	line-height: 1.4;
	border-bottom: 2px solid #000;
	color: #111;
	font-weight: bold;
	font-size: 24rem;
}
.h3-style {
	margin: 36px 0 16px;
	padding-bottom: 12px;
	letter-spacing: 1.6px;
	line-height: 1.4;
	border-bottom: 1px solid #000;
	font-size: 20rem;
	font-weight: bold;
}
.h4-style {
	position: relative;
	margin: 36px 0 16px;
	padding: 4px 10px;
	border-left: 3px solid #000;
	font-size: 18rem;
	line-height: 1.4;
	font-weight: bold;
}
.h5-style {
	margin: 36px 0 16px;
	line-height: 1.3;
	color: #111;
	font-weight: bold;
	font-size: 18rem;
}
.h6-style {
	margin: 36px 0 16px;
	line-height: 1.3;
	color: #111;
	font-weight: bold;
	font-size: 14rem;
}
.img-style {
	margin-bottom: 15px;
	max-width: 100%;
	height: auto;
}
.p-style {
	margin-bottom: 20px;
	line-height: 1.4;
	color: #111;
}
.center {
	text-align: center;
}
.left {
	text-align: left;
}
.right {
	text-align: right;
}
.w-10 {
	width: 10% !important;
}
.w-20 {
	width: 20% !important;
}
.w-30 {
	width: 30% !important;
}
.w-40 {
	width: 40% !important;
}
.w-50 {
	width: 50% !important;
}
.w-60 {
	width: 60% !important;
}
.w-70 {
	width: 70% !important;
}
.w-80 {
	width: 80% !important;
}
.w-90 {
	width: 90% !important;
}
.w-100 {
	width: 100% !important;
}
.child-inline-block > * {
	display: inline-block;
}
.child-inline-block--R * {
	display: inline-block;
}
a.button-B.opacity-06:hover,
.wppost .is-style-button-B > a.opacity-06:hover,
.wppost .is-style-button-B2 > a.opacity-06:hover {
	opacity: 0.6;
}
.icon-clock-arrow-before::before,
.icon-clock-arrow-after::after {
	font-family: "icomoon";
	content: "\e912";
	font-weight: normal;
}
.icon-clock-before::before,
.icon-clock-after::after {
	font-family: "icomoon";
	content: "\e911";
	font-weight: normal;
}
.icon-toc-before::before,
.icon-toc-after::after {
	font-family: "icomoon";
	content: "\e901";
	font-weight: normal;
}
.icon-tag-before::before,
.icon-tag-after::after {
	font-family: "icomoon";
	content: "\e902";
	font-weight: normal;
}
.icon-angle-right-before::before,
.icon-angle-right-after::after {
	font-family: "icomoon";
	content: "\e903";
	font-weight: normal;
}
.icon-thin-angle-right-before::before,
.icon-thin-angle-right-after::after {
	font-family: "icomoon";
	content: "\e913";
	font-weight: normal;
}
.icon-last-before::before,
.icon-last-after::after {
	font-family: "icomoon";
	content: "\e904";
	font-weight: normal;
}
.icon-external-link-before::before,
.icon-external-link-after::after {
	font-family: "icomoon";
	content: "\e90b";
	font-weight: normal;
}
/* 元々パンくずのホームとして利用していた
.icon-home-before::before {
	font-family: "icomoon";
	content: "\e900";
	font-weight: normal;
} */
.icon-pin-before::before,
.icon-pin-after::after {
	font-family: "icomoon";
	content: "\e906";
	font-weight: normal;
}
.icon-mail-before::before,
.icon-mail-after::after {
	font-family: "icomoon";
	content: "\e905";
	font-weight: normal;
}
.icon-mail-line-before::before,
.icon-mail-line-after::after {
	font-family: "icomoon";
	content: "\e90d";
	font-weight: normal;
}
.icon-mail-line2-before::before,
.icon-mail-line2-after::after {
	font-family: "icomoon";
	content: "\e910";
	font-weight: normal;
}
.icon-tel-before::before,
.icon-tel-after::after {
	font-family: "icomoon";
	content: "\e907";
	font-weight: normal;
}
.icon-tel-line-before::before,
.icon-tel-line-after::after {
	font-family: "icomoon";
	content: "\e90e";
	font-weight: normal;
}
.icon-search-before::before,
.icon-search-after::after {
	font-family: "icomoon";
	content: "\e908";
	font-weight: normal;
}
.icon-download-before::before,
.icon-download-after::after {
	font-family: "icomoon";
	content: "\e90c";
	font-weight: normal;
}
.icon-calc-before::before,
.icon-calc-after::after {
	font-family: "icomoon";
	content: "\e90a";
	font-weight: normal;
}
.icon-twitter-before::before,
.icon-twitter-after::after {
	font-family: "icomoon";
	content: "\e916";
	font-weight: normal;
}
.icon-facebook-before::before,
.icon-facebook-after::after {
	font-family: "icomoon";
	content: "\e915";
	font-weight: normal;
}
.icon-instagram-before::before,
.icon-instagram-after::after {
	font-family: "icomoon";
	content: "\e90f";
	font-weight: normal;
}
.icon-online-mtg-before::before,
.icon-online-mtg-after::after {
	font-family: "icomoon";
	content: "\e914";
	font-weight: normal;
}
.icon-online-mtg-before::before {
	position: relative;
	top: 0.3em;
	margin-right: 16px;
	display: inline-block;
	font-size: 44rem;
}

/* button */
.button-A,
.is-style-button-A > a,
.wppost .button-A {
	margin: 0 auto;
	box-sizing: border-box;
	display: block;
	max-width: 100%;
	position: relative;
	text-align: center;
	font-size: 16rem;
	font-weight: bold;
	color: #fff;
	transition: .3s;
}

.is-style-button-A > a,
.wppost .button-A {
	display: inline-block;
}
.button-B,
.is-style-button-B > a,
.wppost .button-B,
.button-B2,
.is-style-button-B2 > a,
.wppost .button-B2 {
	position: relative;
	margin: 0 auto;
	box-sizing: border-box;
	display: inline-block;
	border: solid 1px;
	color: #fff;
	background-color: #fff;
	text-align: center;
	font-size: 16rem;
	font-weight: bold;
}
.button-B2,
.is-style-button-B2 > a,
.wppost .button-B2 {
	border-width: 2px;
}
.button-C,
.is-style-button-C > a,
.wppost .button-C {
	position: relative;
	margin: 0 auto;
	box-sizing: border-box;
	display: inline-block;
	border: solid 2px #fff;
	color: #0d0d0d;
	background-color: #fff;
	text-align: center;
	font-size: 16rem;
	font-weight: bold;
	transition: .3s;
}
.button-B--transition {
	transition: .3s;
}
a.button-B:hover,
.wppost .is-style-button-B > a:hover,
.wppost .is-style-button-B2 > a:hover {
	opacity: 1;
	color: #fff;
}
.wppost a.button-A:hover,
.wppost a.button-B:hover,
.wppost a.button-B2:hover,
.wppost a.button-C:hover,
.wppost .is-style-button-A > a:hover,
.wppost .is-style-button-B > a:hover,
.wppost .is-style-button-B2 > a:hover,
.wppost .is-style-button-C > a:hover {
	text-decoration: none;
}
.wppost .button-A::before,
.wppost .button-B::before,
.wppost .button-B2::before,
.wppost .button-C::before,
.wppost .is-style-button-A > a::before,
.wppost .is-style-button-B > a::before,
.wppost .is-style-button-B2 > a::before,
.wppost .is-style-button-C > a::before {
	margin-right: 0.5em;
	display: inline-block;
	font-size: 0.8em;
}
.wppost .button-A::after,
.wppost .button-B::after,
.wppost .button-B2::after,
.wppost .button-C::after,
.wppost .is-style-button-A > a::after,
.wppost .is-style-button-B > a::after,
.wppost .is-style-button-B2 > a::after,
.wppost .is-style-button-C > a::after {
	margin-left: 0.5em;
	display: inline-block;
	font-size: 0.8em;
}
.wppost .wp-element-button:hover {
	text-decoration: none;
}

/* breadcrumb */
.breadcrumb {
	padding: 7px 5%;
	background-color: #f0f0f0;
}
.breadcrumb-list {
	margin: 0 auto;
	font-size: 14rem;
	color: #444;
	letter-spacing: -0.3px;
}
.breadcrumb-list-item {
	display: inline;
	line-height: 1.3;
	font-size: 14rem;
	color: #444;
}
.breadcrumb-list-item:not(:first-child)::before {
	font-family: "icomoon";
	content: "\e903";
	position: relative;
	top: 1px;
	margin: 0 5px;
	display: inline-block;
	font-weight: normal;
	color: #d7d7d7;
}
.breadcrumb-list-item__link {
	color: #004272;
}
.breadcrumb-list-item__link:hover {
	text-decoration: underline;
}

/* cta */
.cta {
	margin: 80px -2.5vw 0;
	position: relative;
	height: auto;
	overflow: hidden;
}
.cta--home {
	margin-top: 0;
}
.cta__image,
.cta__image source,
.cta__image img {
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.cta__on_image {
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	opacity: 0.64;
}
.cta-main {
	position: relative;
	box-sizing: border-box;
	padding: 10.7vw 2.5vw;
	width: 100%;
	text-align: center;
	color: #fff;
}
.cta-main__title {
	line-height: 1.6;
	letter-spacing: 3.3px;
	font-size: 28rem;
	font-weight: bold;
}
.cta-main__title--vertical {
	font-size: 36px;
}
.cta-main__text {
	margin-top: 10px;
	line-height: 1.4;
	font-size: 14rem;
}
.cta-main-contact {
	margin-top: 16px;
	padding: 18px 2.5vw 45px;
	border: 1px solid #fff;
	border-radius: 8px;
}
.cta-main-contact--line {
	padding-bottom: 25px;
}
.cta-main-contact--solid {
	background-color: #ffffff;
}
.cta-main-contact--radius-none {
	border-radius: 0;
}
.cta-main-contact--radius-bit {
	border-radius: 2px;
}
.cta-main-contact--radius-little {
	border-radius: 4px;
}
.cta-main-contact--radius-radius {
	border-radius: 8px;
}
.cta-main-contact--radius-ellipse {
	border-radius: 30px;
}
.cta-main-contact-tel {
	padding-bottom: 20px;
	border-bottom: 1px solid #fff;
}
.cta-main-contact-tel__title {
	display: block;
	font-size: 16rem;
	font-weight: bold;
}
.cta-main-contact-tel__num {
	position: relative;
	left: 22px;
	margin-top: 10px;
	display: inline-block;
	line-height: 0.9;
	font-family: Helvetica;
	font-size: 42rem;
	font-weight: bold;
}
.cta-main-contact-tel__num::before {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	left: -45px;
	width: 11vw;
	height: 11vw;
	background-color: #fff;
	border-radius: 50%;
}
.cta-main-contact-tel__num::after {
	display: inline-block;
	font-family: "icomoon";
	content: "\e907";
	position: absolute;
	top: 7px;
	left: -37px;
	font-size: 28rem;
	font-weight: normal;
}
.cta-main-contact-tel__num--no-circle::before {
	content: none;
}
.cta-main-contact-tel__text {
	margin: 5px auto 0;
	display: block;
	max-width: 335px;
	font-size: 16rem;
}
.cta-main-contact-tel__text--black {
	color: #0d0d0d;
}
.cta-main-contact__notice {
	font-size: 10rem;
	color: #444444;
}
.cta-main-contact-right {
	padding-top: 14px;
}
.cta-main-contact-mail__title {
	display: block;
	line-height: 1.4;
	font-size: 16rem;
	font-weight: bold;
}
.cta-main-contact-mail__link {
	position: relative;
	margin: 12px 2.5vw 0;
	box-sizing: border-box;
	padding: 17px 8px 17px 0;
	display: inline-block;
	width: 95%;
	border: 2px solid #fff;
	line-height: 18px;
	letter-spacing: 1.5px;
	font-size: 16rem;
	transition: .3s;
}
.cta-main-contact-mail__link.linedup {
	padding: 17px 38px 17px 58px;
}
.cta-main-contact-mail__link::before {
	font-size: 22rem;
	margin-right: 8px;
	vertical-align: bottom;
}
.cta-main-contact-mail__link.linedup::before {
	position: absolute;
	top: 17px;
	left: 22px;
	margin-right: 0;
}
.cta-main-contact-mail__link::after {
	position: absolute;
	top: 50%;
	right: 12px;
	font-size: 12rem;
	transform: translateY(-50%);
}
.cta-main-contact-mail__link--radius-none {
	border-radius: 0;
}
.cta-main-contact-mail__link--radius-bit {
	border-radius: 2px;
}
.cta-main-contact-mail__link--radius-little {
	border-radius: 4px;
}
.cta-main-contact-mail__link--radius-radius {
	border-radius: 8px;
}
.cta-main-contact-mail__link--radius-ellipse {
	border-radius: 30px;
}
.button-B.cta-main-contact-mail__link--border {
	color: #111 !important;
}
a.button-B.cta-main-contact-mail__link--border:hover,
a.button-B.cta-main-contact-mail__link--border:hover::before,
a.button-B.cta-main-contact-mail__link--border:hover::after {
	color: #fff !important;
}
.cta-main-contact-line {
	margin-top: 16px;
}
.cta-main-contact-line--radius-none {
	border-radius: 0;
}
.cta-main-contact-line--radius-bit {
	border-radius: 2px;
}
.cta-main-contact-line--radius-little {
	border-radius: 4px;
}
.cta-main-contact-line--radius-radius {
	border-radius: 8px;
}
.cta-main-contact-line--radius-ellipse {
	border-radius: 30px;
}
.cta-main-contact-line__icon {
	position: absolute;
	top: 16px;
	left: 20px;
	width: 24rem;
}
.cta-main-contact-line__link {
	position: relative;
	margin: 0 2.5vw;
	padding: 16px 42px 15px 58px;
	width: 95%;
	border: 2px solid #fff;
	line-height: 1.3;
	letter-spacing: 1.5px;
	font-size: 16rem;
	transition: .3s;
}
.cta-main-contact-line__link::after {
	position: absolute;
	top: 50%;
	right: 12px;
	font-size: 12rem;
	transform: translateY(-50%);
}
.cta-main-contact-line__link--jp {
	padding: 18px 42px 16px 58px;
	font-size: 18rem;
	line-height: 1;
}
.button-B.cta-main-contact-line__link--border {
	border: 2px solid #000;
	color: #111 !important;
}
a.button-B.cta-main-contact-line__link--border:hover,
a.button-B.cta-main-contact-line__link--border:hover::after {
	color: #fff !important;
}

/* custom-html-widget */
.widget_custom_html h2.widget-title {
	display: none;
}

@media screen and (max-width: 374px) {
	.cta-main-contact-tel__num::after {
		left: -38px;
	}
}
@media screen and (min-width: 400px) {
	.cta-main-contact-tel__num::before {
		width: 40px;
		height: 40px;
	}
}

/* cta2 */
.cta2 {
	margin-top: 40px;
	border: solid 3px #000;
	background-color: #fcfcfa;
}
.cta2__main {
	padding: 12px 16px;
}
.cta2__sp-top {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.cta2__text {
	line-height: 1.7;
	font-size: 15rem;
}
.cta2__img {
	margin-left: 8px;
}
.cta2__title {
	margin-top: 4px;
	line-height: 1.2;
	letter-spacing: 2px;
	font-size: 26rem;
	font-weight: bold;
}
.cta2__tel {
	margin-top: 2px;
	text-align: center;
}
.cta2__tel-num__img {
	margin-right: 4px;
}
.cta2__tel-num {
	font-family: Helvetica;
	text-align: center;
	line-height: 1;
	letter-spacing: -0.6px;
	font-size: 40rem;
	font-weight: bold;
}
.cta2__tel-time {
	text-align: center;
	font-size: 13rem;
	font-weight: bold;
}
.cta2__mail {
	position: relative;
	margin-top: 10px;
	padding: 8px 0;
	display: block;
	width: 100%;
	font-size: 17rem;
}
.cta2__mail::before {
	position: absolute;
	top: 0;
	left: 2.5vw;
	color: #fff;
	font-size: 34rem;
}
.cta2__mail::after {
	position: absolute;
	top: calc(50% - 6px);
	right: 5vw;
	font-size: 10rem;
}
.cta2__last {
	padding-top: 3px;
	text-align: center;
	color: #fff;
	font-size: 11rem;
}

/* under_layer_search_form */
.under_layer_search_form {
	margin-top: 20px;
}
.under_layer_search_form .searchform {
	padding-left: 0;
}
.under_layer_search_form .searchform::before {
	display: none;
}
.under_layer_search_form .searchform-div {
	width: auto;
}
.under_layer_search_form .searchform-div__text {
	text-align: left;
	width: 195px;
	height: 46px;
	color: #111;
}
.under_layer_search_form .searchform-div__text--A {
	background-color: #f1f1f1;
}
.under_layer_search_form .searchform-div__text--B {
	background-color: #fcfcfc;
	border: solid 1px #d1d1d1;
}
.under_layer_search_form .searchform-div__text--radius-ellipse {
	border-radius: 23px;
}
.under_layer_search_form .searchform-div::after {
	position: absolute;
	display: inline-block;
	top: 50%;
	right: 14px;
	font-size: 22px;
	color: #a5a5a5;
	transform: translateY(-50%);
}
.under_layer_search_form .searchform-div__button {
	opacity: 0;
}
.search-archive-not_found_ul {
	list-style-type: disc;
	margin-top: 20px;
	padding-left: 30px;
}

/* signle */
.single_before {
	margin-top: 40px;
}
.single_before-top {
	display: flex;
	align-items: center;
}
.single_before-top__category {
	margin-left: 0;
	margin-right: 0;
	padding: 1px 8px;
	border-radius: 4px;
	font-size: 14rem;
}
.single_before-date {
	margin: 4px 0 0 0;
}

/* column_posts (rel_posts, recent_posts, recommend_posts) */
.column_posts {
	margin: 40px 0 0;
}

/* column-archive */
.side__title {
	position: relative;
	border-color: #dbdbdb;
}
.side__title::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
	width: 24%;
	height: 2px;
}
.column-archive {
}
.wppost ul.column-archive--category {
	margin-bottom: 0;
	padding-left: 0;
}
.column-archive--border {
	border-top: 1px solid #d9d9d9;
}
.column-archive-li {
	margin-top: 6px;
	padding: 0 1.5vw 1px;
	border-bottom: 1px solid #d9d9d9;
	font-size: 0;
}
.column-archive-li--side {
	margin-top: 17px;
}
ul > li.column-archive-li--home::before {
	content: none;
}
.column-archive-li-left {
	display: inline-block;
	top: 3px;
	width: 100px;
	height: 63px;
	position: relative;
	overflow: hidden;
}
.wppost h2.home_column__title--categorys {
	margin: 0;
	padding-top: 0;
}
.column-archive-li--category:first-of-type {
	border-top: 1px solid #d9d9d9;
	padding-top: 16px;
	margin-top: 0;
}
img.column-archive-li-left__image,
.column-archive-li-left__image source,
.column-archive-li-left__image img {
	display: initial;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.column-archive-li-detail {
	margin: 5px 0 0 3vw;
	display: inline-block;
	max-width: calc(89vw - 100px);
	vertical-align: top;
}
.column-archive-li-detail--side {
	margin-top: 0;
}
.column-archive-li-detail--news {
	margin-left: 0;
	max-width: 100%;
}
.column-archive-li-detail__title-div {
	min-height: 40px;
}
a.column-archive-li-detail__title,
.column-archive-li-detail__title {
	display: inline-block;
	color: #004272;
	font-size: 16rem;
	font-weight: bold;
	letter-spacing: -.7px;
}
.column-archive-li-detail__title:hover {
	text-decoration: underline;
}
.column-archive-li-detail__title--side {
	font-size: 14rem;
}
.column-archive-li-detail__date {
	margin: 6px 8px 4px 0;
	display: inline-block;
	font-size: 12rem;
}
.column-archive-li-detail__text {
	font-size: 14rem;
	line-height: 1.4;
	color: #444;
}
.column-archive-li-detail-categories {
	display: inline-block;
}
.column-archive-li-detail-categories--category.button-B {
	font-size: 12rem;
}
.cpt-categories {
}
.cpt-categories__li {
	display: inline-block;
}
ul > li.cpt-categories__li::before {
	content: none;
}
.cpt-categories__category {
	margin: 0 8px 8px 0;
	padding: 1px 10px;
	display: inline-block;
	font-size: 12rem;
	color: #fff;
	transition: .2s;
}
.cpt-categories__li:first-child > .cpt-categories__category,
.cpt-categories__category:not(.cpt-categories__li > .cpt-categories__category):first-child {
	margin-left: 0;
}
.cpt-categories__category.cpt-categories__category--radius-ellipse {
	border-radius: 20px;
}

/* prev-next-post-in-category */
.prev-next-post-in-category {
	margin-top: 40px;
}
.prev-next-post-in-category__1 {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}
.prev-next-post-in-category__prev,
.prev-next-post-in-category__next {
	flex: 1;
}
.prev-next-post-in-category__prev + .prev-next-post-in-category__next {
	margin-left: 2.5vw;
}
.prev-next-post-in-category__prev-link,
.prev-next-post-in-category__next-link,
.prev-next-post-in-category__back-category-link {
	border: 2px solid #000;
	transition: .2s;
}
.prev-next-post-in-category__prev-link,
.prev-next-post-in-category__next-link {
	padding: 12px 4vw 30px;
	display: block;
}
.prev-next-post-in-category__next-link {
	text-align: right;
}
.prev-next-post-in-category__prev-link--radius-ellipse,
.prev-next-post-in-category__next-link--radius-ellipse,
.prev-next-post-in-category__back-category-link--radius-ellipse {
	border-radius: 50px;
}
.prev-next-post-in-category__prev-link:hover,
.prev-next-post-in-category__next-link:hover,
.prev-next-post-in-category__back-category-link:hover {
	opacity: 1;
}
.prev-next-post-in-category__post-label {
	position: relative;
	display: block;
	line-height: 1;
	letter-spacing: 1.6px;
	font-size: 20rem;
	font-weight: bold;
}
.prev-next-post-in-category__post-label--prev {
	padding-left: calc(14rem + 2vw);
}
.prev-next-post-in-category__post-label--next {
	padding-right: calc(14rem + 2vw);
}
.prev-next-post-in-category__post-label--prev::before,
.prev-next-post-in-category__post-label--next::after {
	position: absolute;
	top: 0;
	font-size: 14rem;
	font-weight: normal;
}
.prev-next-post-in-category__post-label--prev::before {
	left: 0;
	transform: rotate(180deg);
}
.prev-next-post-in-category__post-label--next::after {
	top: 2px;
	right: 0;
}
.prev-next-post-in-category__post-title {
	margin-top: 8px;
	display: block;
	line-height: 1.3;
	font-size: 18rem;
}
.prev-next-post-in-category__2 {
	margin-top: 16px;
}
.prev-next-post-in-category__back-category-link {
	box-sizing: border-box;
	padding: 26px 0;
	display: block;
	width: 100%;
	line-height: 1.25;
	letter-spacing: 1.4px;
	font-size: 18rem;
	font-weight: bold;
	text-align: center;
}


/* searchform */
.searchform {
	position: relative;
	border-bottom: 1px solid #ffffff;
	padding-left: 9.7%;
	color: #ffffff;
}
.searchform::before {
	position: absolute;
	top: 0;
	left: 0;
	font-size: 18rem;
}
.searchform-div {
	display: inline-block;
	position: relative;
	top: -4px;
	width: 100%;
}
.searchform-div::after {
	display: none;
}
.searchform-div__text {
	-webkit-appearance: none;
	background-color: unset;
	width: calc(68vw - 42px);
	height: 28px;
	padding: 0 2.5em 0 1em;
	font-size: 16rem;
	color: #fff;
}
header .searchform-div__text {
	padding: 0 0.5em 0 0;
}
header input.searchform-div__text::placeholder {
	color: #fff;
	opacity: 0.6;
}
.searchform-div__button {
	display: inline-block;
	position: absolute;
	right: 5px;
	padding: 0 4px;
	max-width: 52px;
	height: 24px;
	border-radius: 4rem;
	background-color: #ffffff;
	text-align: center;
	font-size: 12rem;
}
.searchform-div__button:hover {
	cursor: pointer;
}
.hamburger-menu-search .searchform-div__button--radius-none {
	border-radius: 0;
}
.hamburger-menu-search .searchform-div__button--radius-bit {
	border-radius: 2px;
}
.hamburger-menu-search .searchform-div__button--radius-little {
	border-radius: 4px;
}
.hamburger-menu-search .searchform-div__button--radius-radius {
	border-radius: 8px;
}
.hamburger-menu-search .searchform-div__button--radius-ellipse {
	border-radius: 30px;
}

/* buibetsu-accordion */
.buibetsu-accordion__li {
	padding: 16px 4.2vw;
	background-color: #ececec;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.buibetsu-accordion__li:hover {
	cursor: pointer;
}
.buibetsu-accordion__li:not(:last-child) {
	border-bottom: 1px solid #dfdfdf;
}
.buibetsu-accordion__li::after {
	content: "＋";
	margin: auto 0 auto auto;
	font-size: 22rem;
	font-weight: bold;
	transition: .3s;
}
.buibetsu-accordion__li.active::after {
	transform: rotate(45deg);
}
.buibetsu-accordion__li-span {
	margin-left: 4.2vw;
	display: inline-block;
	font-weight: bold;
	font-size: 18rem;
}
.buibetsu-accordion__child-ul {
	display: none;
}
.buibetsu-accordion__a {
	position: relative;
	display: block;
	padding: 20px 5.3vw;
	font-size: 14rem;
	font-weight: bold;
}
.buibetsu-accordion__a:nth-child(n+2) {
	border-top: 1px solid #dfdfdf;
}
.buibetsu-accordion__child-li .buibetsu-accordion__a {
	border-bottom: 1px solid #dfdfdf;
}
.buibetsu-accordion__a::after {
	position: absolute;
	top: 50%;
	right: 5vw;
	transform: translateY(-50%);
	font-size: 14rem;
}
.leago-accordion__content {
	display: none;
}

.archive-h1 {
	margin: 36px 4% 40px;
	font-size: 28rem;
	font-weight: bold;
	letter-spacing: 0.5px;
}

/* footer */
/* footer-top-cta */
.footer-top-cta-sp {
	padding: 0 2.5vw;
}
.footer-top-cta-sp .cta {
	margin-top: 0;
	margin-bottom: 0;
}
/* pagetop */
.pagetop {
	position: fixed;
	right: 20px;
	bottom: -100px;
	z-index: 999;
	border-radius: 4px;
	opacity: 0.7;
}
.pagetop-link {
	display: block;
	color: #fff;
	height: 48px;
	width: 48px;
}
.pagetop-link:hover {
	opacity: 0.6;
}
.pagetop-link::before {
	font-family: "icomoon" !important;
	content: "\e903" !important;
	font-size: 22rem;
	font-weight: bold;
	position: absolute;
	top: 50%;
	left: 50%;
	margin: auto;
	transform: translateX(-50%) translateY(-50%) rotate(270deg);
}
/* footer-banner */
.footer_main-banner {
	margin-top: 22px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
	gap: 16px 22px;
}
.footer_main-banner__img {
	margin: 0 auto;
	display: block;
	max-width: 100%;
}
/* footer_main-sns */
.footer_main-sns {
	margin-top: 40px;
	text-align: right;
}
.footer_main-sns__link:not(:first-child) {
	margin-left: 30px;
}
.footer_main-sns__link::before {
	display: inline-block;
	font-family: "icomoon";
	font-size: 32rem;
}
.footer_main-sns--twitter::before {
	content: "\e916";
}
.footer_main-sns--facebook::before {
	content: "\e915";
}
.footer_main-sns--instagram::before {
	content: "\e90f";
}
/* footer-bottom */
.footer_bottom {
	padding: 10px 2.5%;
	background-color: #000205;
	text-align: center;
	color: #fff;
	font-size: 12rem;
}
/* footer-side-sticky */
.footer-side-sticky {
	display: none;
	position: fixed;
	box-sizing: border-box;
	width: auto;
	height: auto;
	margin: 0;
	top: 80px;
	right: 0;
	background-color: #fff;
	box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.16);
	z-index: 51;
	font-size: 0;
}

/* footer_sticky */
.sticky_space {
	margin-bottom: 70px;
}
.sticky-contact-container {
	height: 70px;
}
.sticky-contact {
	display: none;
	position: fixed;
	box-sizing: border-box;
	width: 100vw;
	height: 70px;
	margin: 0;
	bottom: 0;
	left: 0;
	background-color: #ffffff;
	box-shadow: 0 0 2px 0 #0000004d;
	z-index: 100;
}
.sticky-contact-content {
	justify-content: space-around;
	height: 100%;
	display: flex;
}
.sticky-contact-content-inner {
	flex-basis: 50vw;
	position: relative;
	padding-top: 40px;
	text-align: center;
	font-size: 12rem;
	color: #fff;
}
.sticky-contact-content-inner--C {
	color: #0d0d0d;
}
.sticky-contact-content-inner--right-exists {
	flex-basis: 33.33vw;
}
.sticky-contact-content-inner::before {
	font-size: 24rem;
	color: #fff;
	transition: .2s;
	position: absolute;
	top: 10px;
	left: 0;
	right: 0;
}
.sticky-contact-content-tel::after {
	content: "";
	position: absolute;
	right: 0;
	top: 8px;
	width: 1px;
	height: 52px;
	transform: translateX(-50%);
	background-color: rgba(0, 8, 24, 0.4);
}
.sticky-contact-telaccess-access--line::before {
	display: none;
}
.sticky-contact-telaccess-access__img source,
.sticky-contact-telaccess-access__img img {
	position: absolute;
	top: 12px;
	left: 0;
	right: 0;
	margin: 0 auto;
	display: block;
	width: 20px;
	height: 20px;
}
.sticky-contact-telaccess-access::after {
	content: "";
	position: absolute;
	left: 0;
	top: 8px;
	width: 1px;
	height: 52px;
	transform: translateX(-50%);
	background-color: rgba(0, 8, 24, 0.4);
}

/* wp-block */
.wp-block-table thead {
	border-bottom: none;
}

@media screen and (max-width: 374px) {
	.sticky-contact-telaccess-access__img source,
	.sticky-contact-telaccess-access__img img {
		width: 20rem;
		height: 20rem;
	}
}

@media screen and (min-width: 376px) {
	html {
		font-size: 1px;
	}
}
@media screen and (min-width: 790px) {
	.main {
		width: 752px;
		margin: 0 auto;
	}
}

@media screen and (min-width: 1024px) {
	/* PC/Tablet */
	html {
		overflow-x: hidden;
	}
	.header-sp-sticky {
		position: static;
		z-index: auto;
	}
	.header-sp-sticky.fixed {
		box-shadow: none;
	}
	.header-pc-sticky.fixed {
		box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.1);
	}
	.header-pc-sticky {
		position: fixed;
		top: 0;
		background-color: var(--body-color);
		z-index: 1000;
		width: 100%;
	}
	.content {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		width: 1024px;
		margin: 0 auto;
	}
	.main {
		margin: 0 0;
	}
	.main_full,
	.main_full:not(.home .main_full) {
		width: 1024px;
		margin: 0 auto;
	}
	.h2-style,
	.h4-style {
		padding-left: 0;
		padding-right: 0;
	}
	.button-A {
		font-size: 16px;
	}
	.button-B {
		font-size: 14px;
	}

	/* breadcrumb */
	.breadcrumb {
		padding-left: calc(50vw - 512px);
		padding-right: calc(50vw - 512px);
	}

	.cpt-categories__category {
		padding: 1px 10px;
		font-size: 12rem;
	}

	.cta {
		margin-left: 0;
		margin-right: 0;
		height: 328px;
	}
	.cta--line {
		height: 348px;
	}
	.cta--home {
		margin-left: calc((100vw - 100%) / -2);
		height: 480px;
		width: 100vw;
	}
	.cta--vertical {
		height: auto;
	}
	.footer-top-cta-pc .cta {
		margin-top: 0;
		margin-bottom: 0;
		height: 480px;
		width: 100vw;
	}
	.footer-top-cta-pc--vertical .cta {
		height: auto;
	}
	.cta__image,
	.cta__image source,
	.cta__image img {
		width: 100vw;
	}
	.cta-main {
		padding: 28px 16px 32px;
		width: 100%;
	}
	.cta-main--home {
		padding: 28px 47px 32px;
	}
	.cta-main--home,
	.footer-top-cta-pc .cta-main {
		margin-left: calc(50vw - 512px);
		padding-top: 80px;
		width: 1024px;
	}
	.cta-main--vertical,
	.footer-top-cta-pc .cta-main--vertical {
		padding-top: 40px;
		padding-bottom: 56px;
	}
	.cta-main__text {
		margin-top: 0;
		font-size: 16px;
	}
	.cta-main-contact {
		margin-top: 20px;
		padding: 16px 12px;
		border-width: 2px;
		font-size: 0;
	}
	.cta-main-contact--home {
		margin-top: 36px;
	}
	.cta-main-contact-tel,
	.cta-main-contact-right {
		display: inline-block;
		box-sizing: border-box;
		vertical-align: top;
		width: 50%;
		font-size: 16px;
	}
	.cta-main-contact-tel--vertical,
	.cta-main-contact-right--vertical {
		display: block;
		width: 100%;
	}
	.cta-main-contact-tel {
		padding: 12px 10px 22px 0;
		border-bottom: none;
		border-right: 1px solid #fff;
	}
	.cta-main-contact-tel--line {
		padding-top: 28px;
		padding-bottom: 32px;
	}
	.cta-main-contact-tel--line:has(.cta-main-contact__notice) {
		padding-top: 12px;
		padding-bottom: 17px;
	}
	.cta-main-contact-tel__title {
		display: block;
		font-size: 16rem;
	}
	.cta-main-contact-tel__num--home,
	.footer-top-cta-pc .cta-main-contact-tel__num {
		font-size: 48px;
	}
	.cta-main-contact-tel__num--line {
		margin-top: 24px;
	}
	.cta-main-contact-tel__num::before {
		top: 0;
		left: -50px;
	}
	.cta-main-contact-tel__num::after {
		top: 9px;
		left: -43px;
	}
	.cta-main-contact-tel__num--home::before,
	.footer-top-cta-pc .cta-main-contact-tel__num::before {
		top: 2px;
	}
	.cta-main-contact-tel__num--home::after,
	.footer-top-cta-pc .cta-main-contact-tel__num::after {
		top: 11px;
	}
	.cta-main-contact-tel__text {
		margin-top: 0;
		display: block;
	}
	.cta-main-contact-tel__text--home {
		margin-top: 10px;
	}
	.cta-main-contact__notice {
		font-size: 10px;
	}
	.cta-main-contact-right {
		padding: 10px 0 0 12px;
	}
	.cta-main-contact-mail__title {
		display: block;
	}
	.cta-main-contact-mail__link {
		margin: 26px auto 0;
		padding: 17px 8px 17px 0;
		width: 336px;
		font-size: 18px;
		line-height: 18px;
	}
	.cta-main-contact-mail__link.linedup {
		margin-left: auto;
		margin-right: auto;
		padding-right: 32px;
		padding-left: 56px;
		font-size: 18px;
	}
	.cta-main-contact-mail__link--home {
		margin-top: 26px;
		width: 336px;
		font-size: 18px;
	}
	.cta-main-contact-mail__link--line {
		margin-top: 8px;
	}
	.cta-main-contact-mail__link--home::before {
		top: 14px;
	}
	.cta-main-contact-mail__link--home::after {
		top: 54%;
		transform: translateY(-50%);
	}
	.cta-main-contact-line {
		margin-top: 12px;
	}
	.cta-main-contact-line__link {
		margin-right: auto;
		margin-left: auto;
		width: 336px;
	}
	.cta-main-contact-line__link--home {
		width: 336px;
		font-size: 18px;
	}
	.cta-main-contact-line__link--jp {
		font-size: 18rem;
	}

	/* cta2 */
	.cta2 {
		margin-top: 80px;
	}
	.cta2__main {
		padding: 8px 20px 4px;
	}
	.cta2__top {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.cta2__sp-top {
		display: block;
	}
	.cta2__text {
		font-size: 14px;
	}
	.cta2__title {
		margin-top: 10px;
		letter-spacing: 1px;
		font-size: 31px;
	}
	.cta2__bottom {
		margin-top: 6px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.cta2__tel-num__img {
		margin-right: 0;
	}
	.cta2__tel-num {
		font-size: 48px;
	}
	.cta2__tel-time {
		line-height: 1.2;
		font-size: 14px;
	}
	.cta2__mail {
		margin-top: 0;
		width: 340px;
	}
	.cta2__mail::after {
		right: 16px;
	}
	.cta2__last {
		font-size: 12px;
	}

	/* prev-next-post-in-category */
	.prev-next-post-in-category {
		margin-top: 80px;
	}
	.prev-next-post-in-category__prev-link,
	.prev-next-post-in-category__next-link {
		padding: 12px 16px;
	}
	.prev-next-post-in-category__prev-link {
		padding-right: 48px;
	}
	.prev-next-post-in-category__next-link {
		padding-left: 48px;
	}
	.prev-next-post-in-category__prev + .prev-next-post-in-category__next {
		margin-left: 20px;
	}
	.prev-next-post-in-category__post-label--prev {
		padding-left: calc(14rem + 8px);
	}
	.prev-next-post-in-category__post-label--next {
		padding-right: calc(14rem + 8px);
	}

	/* related-post */
	.relatedpost-content-left-img {
		width: 178px;
		height: 126px;
	}
	.relatedpost-content-right__title {
		font-size: 16px;
	}

	/* column-category-posts */
	.column_posts--category {
		width: 640px;
	}

	/* searchform */
	.searchform {
		padding: 0;
		border-bottom: none;
	}
	.searchform::before {
		content: none;
	}
	.searchform-div {
		top: 0;
		width: auto;
	}
	header .searchform-div {
		position: relative;
		top: 8px;
	}
	.searchform-div::after {
		position: absolute;
		display: inline-block;
		top: 50%;
		right: 14px;
		font-size: 22px;
		color: #a5a5a5;
		pointer-events: none;
		transform: translateY(-50%);
	}
	.searchform-div__text {
		text-align: left;
		width: 195px;
		height: 46px;
		background-color: #f1f1f1;
		color: #111;
	}
	.searchform-div__text,
	header .searchform-div__text {
		padding: 0 42px 0 12px;
	}
	.searchform-div__text--radius-ellipse {
		border-radius: 23px;
		padding-left: 20px;
	}
	.searchform-div__text--A {
		background-color: #f1f1f1;
	}
	.searchform-div__text--B {
		background-color: #fcfcfc;
		border: solid 1px #d1d1d1;
	}
	input.searchform-div__text::placeholder,
	header input.searchform-div__text::placeholder {
		color: #a5a5a5;
	}
	.searchform-div__button {
		position: absolute;
		top: 7px;
		right: 11px;
		background: none;
		width: 32px;
		height: 32px;
		color: #737373;
		border-radius: 20px;
	}

	/* qa */
	.qa-categories__category {
		margin: 0 0 7px 63px;
		display: inline-block;
		width: 336px;
		box-sizing: border-box;
	}
	.qa-categories__category:first-child {
		margin: 0;
	}

	/* buibetsu */
	.buibetsu-jintaizu {
		position: relative;
	}
	.buibetsu-jintaizu__bg {
		height: 400px;
	}
	.buibetsu-jintaizu__bg-img {
		position: absolute;
	}
	.buibetsu-jintaizu__content {
		position: absolute;
		top: 0;
		left: 260px;
	}
	.buibetsu-jintaizu__ul {
		display: flex;
		align-items: center;
		justify-content: flex-start;
	}
	.buibetsu-jintaizu__a {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		border-radius: 2px;
		box-sizing: border-box;
		min-height: 50px;
		padding: 4px 16px;
		background-color: #ececec;
		box-shadow: 0 2px 2px 0 rgba(165, 165, 165, 0.5);
		line-height: 1.2;
		font-size: 14rem;
		font-weight: bold;
		transition: .3s;
	}
	.buibetsu-jintaizu__a:hover {
		opacity: 1;
	}
	.buibetsu-jintaizu__li:nth-child(n+2) .buibetsu-jintaizu__a {
		margin-left: 10px;
	}
	/* footer_sticky */
	.sticky_space {
		margin-bottom: 88px;
	}
	.sticky-contact-container {
		height: 88px;
	}
	.sticky-contact {
		height: 88px;
	}
	.sticky-contact-content {
		justify-content: center;
		max-width: 740px;
		margin: 0 auto;
		padding: 13px 0;
	}
	.sticky-contact-content--line {
		max-width: 970px;
	}
	.sticky-contact-content--right-exists {
		max-width: 1024px;
	}
	.sticky-contact-content-inner {
		margin-right: 72px;
		padding-top: 0;
	}
	.sticky-contact-content-inner::before {
		position: static;
		line-height: 1;
		display: inline-block;
		vertical-align: text-bottom;
		margin-right: 8px;
	}
	.sticky-contact-content-inner.linedup::before {
		position: absolute;
		top: 18px;
		left: 14px;
		right: auto;
	}
	.sticky-contact-telaccess-access,
	.sticky-contact-content-mail {
		margin-right: 0;
		padding: 14px 0 10px;
		height: 60px;
		border-width: 2px;
		line-height: 1.6;
		font-size: 18px;
		transition: 0.3s;
	}
	.sticky-contact-content-mail {
		margin-right: 0;
		margin-left: 0;
		flex-basis: 290px;
	}
	.sticky-contact-content-access.linedup,
	.sticky-contact-content-mail.linedup {
		padding: 14px 0 10px 30px;
	}
	.sticky-contact-telaccess-access--jp,
	.sticky-contact-content-mail--jp {
		padding: 13px 0 11px 30px;
		font-size: 20px;
	}
	.sticky-contact-telaccess-access::before {
		left: 20px;
		font-size: 27px;
	}
	.sticky-contact-content-info {
		flex-basis: 290px;
	}
	.sticky-contact-content-info__tel {
		position: relative;
		margin-left: 12px;
		width: 262px;
		font-family: Helvetica !important;
		font-size: 40px;
		font-weight: bold;
		line-height: 1;
		color: #fff;
		letter-spacing: -0.84px;
	}
	.sticky-contact-content-info__tel::before {
		content: "";
		position: absolute;
		top: 4px;
		left: -40px;
		width: 40px;
		height: 40px;
		background-color: #fff;
		border-radius: 50%;
	}
	.sticky-contact-content-info__tel::after {
		position: absolute;
		top: 10px;
		left: -32px;
		font-size: 28px;
	}
	.sticky-contact-content-info__time {
		text-align: center;
		color: #fff;
		font-size: 16px;
	}
	.sticky-contact-telaccess-access {
		flex-basis: 191px;
		margin-left: 16px;
	}
	.sticky-contact-telaccess-access::after,
	.sticky-contact-content-tel::after {
		content: none;
	}
	.sticky-contact-telaccess-access--line {
		flex-basis: 270px;
	}
	.sticky-contact-telaccess-access--line::before {
		display: none;
	}
	.sticky-contact-telaccess-access--type-A {
		padding-left: 0;
		padding-right: 0;
	}
	.sticky-contact-telaccess-access__img source,
	.sticky-contact-telaccess-access__img img {
		margin: 0;
		top: 16px;
		left: 16px;
		width: 24px;
		height: 24px;
	}
	.footer_main-banner {
		justify-content: flex-start;
	}

	/* single */
	.date__published + br + .date__modified {
		margin-left: 10px;
	}
}
