:root {
	--main: #F6ADC6;
	--sub: #E37CA4;
	--sub2: #FFF4F8;
	--sub3: #6B90B6;
	--sub4: #9B4D76;
	--text: #2C3E50;
}

body {
	color: var(--text);
}
address {
	font-family: "Helvetica Neue", Arial, "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "Hiragino Kaku Gothic ProN", sans-serif;
	font-weight: 400;
	font-style: normal;
}
@media (min-width: 768px) {
	.is-sp {
		display: none;
	}
}
@media (max-width: 767px) {
	.is-pc {
		display: none;
	}
}
.inner {
	max-width: 1180px;
	margin-inline: auto;
	width: calc(100% - 15px * 2);
}
@media (min-width: 768px) {
	.inner {
		width: calc(100% - 40px * 2);
	}
}

.inner1000 {
	max-width: 1000px;
	margin-inline: auto;
	width: calc(100% - 40px);
}
@media (min-width: 768px) {
	.inner1000 {
		width: calc(100% - 80px);
	}
}

.inner800 {
	max-width: 800px;
	margin-inline: auto;
	width: calc(100% - 40px);
}
@media (min-width: 768px) {
	.inner800 {
		width: calc(100% - 80px);
	}
}

/* ヘッダー */
.header-sub-box {
	display: flex;
	flex-direction: row-reverse;
}
.header {
	position: sticky;
	top: 0;
	z-index: 1000;
}
.header-menu {
	background-color: transparent;
}
.header-menu .sub-menu a {
	color: var(--text);
}
.header-menu > li a {
	color: var(--text);
	padding: 0 30px;
}
.header-top__inner {
	width: 96%;
	margin-left: auto;
}
.c-header__logo {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
@media (any-hover: hover) {
	.c-header__logo:hover {
		opacity: 0.7;
	}
}
.c-header__logo img{
	height: 70px;
	width: auto;
	object-fit: contain;
}
.header__nav-list {
	display: flex;
	background: #F3F3F3;
	align-items: center;
	justify-content: center;
	height: 60px;
}
.menu-item{
	max-width: 240px;
	width: 100%;
	text-align: center;
}
.menu-item a {
	font-size: 18px;
	width: 100%;
	height: 100%;
	display: inline-flex;
	/*justify-content: center;*/
	align-items: center;
	padding: 8px 6px;
	font-weight: 700;
}
.menu-item-has-children {
	position: relative;
	display: inline-block;
	cursor: pointer;
}
.header-top__right .menu-item-has-children > a::before,
.header-top__right .menu-item-has-children > a::after {
	content: "";
	position: absolute;
	width: 1.6px;
	height: 12px;
	border-radius: 9999px;
	background-color: var(--text);
	right: 8px;
	top: 50%;
}
.header-top__right .menu-item-has-children > a::before {
	transform: rotate(45deg) translateY(-50%);
}
.header-top__right .menu-item-has-children > a::after {
	transform: rotate(-45deg)  translateY(-50%);
}
.header-menu .sub-menu li {
	border-bottom: #fff;
}
.header-top {
	background: #fff;
}
.header-top__content {
	display: flex;
	justify-content: space-between;
	align-items: center;
	height: 90px;
}
.header-top__right {
	display: flex;
	justify-content: space-around;
	align-items: center;
	gap: 2rem;
}
.header-top__right-tel a{
	display: flex;
	align-items: center;
	color: var(--main);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
@media (any-hover: hover) {
	.header-top__right-tel a:hover {
		opacity: 0.7;
	}
}
.header-top__right-tel a svg {
	width: 36px;
	height: 36px;
}
.header-top__right-tel-num {
	font-size: 32px;
	font-weight: 500;
	line-height: 1;
	color: var(--text);
}
.header-top__right-tel-info {
	display:block;
	font-weight: 700;
	font-size: 14px;
	text-align: center;
	margin-top: 8px;
}
.header-top__right-buttons {
	display: flex;
	align-items: center;
}
.header-top__right-button-link {
	height: 90px;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: var(--main);
	padding: 20px;
	gap: 8px;
	transition: .3s;
	font-weight: 500;
}
.header-top__right-button-link img{
	width: 26px;
	height: 26px;
	object-fit: contain;
}
.header-top__right-button-link:hover {
	opacity: .7;
}
.--recruit {
	background-color: var(--sub3) !important;
	color: #fff !important;
}
@media screen and (max-width:1024px) {
	.header-top{
		display: none;
	}
}
.--contact {
	background-color: var(--main) !important;
}

/* fv */
.fv-wrapper {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 200px;
	content: "";
}

.fv__scrolldown-text {
	position: absolute;
	left: 0px;
	bottom: 160px;
	font-size: 20px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	rotate: 90deg;
}

.fv__scrolldown-bar {
	position: absolute;
	left: 23px;
	bottom: 20px;
	width: 2px;
	height: 140px;
	background: #BBBBBB;
	overflow: hidden;
}

.fv__scrolldown-bar-active {
	position: absolute;
	bottom: 100%;
	left: 0;
	width: 2px;
	height: 50px;
	background: #000;
	animation: 3.0s ease-in-out backwards infinite scrollDown;
}


@keyframes scrollDown {
	0% {
		bottom: 100%;
	}
	100% {
		bottom: -50px;
	}
}
.n2-ss-align.n2-ss-align-visible {
	overflow: hidden !important;
}


/** 看板 **/
.sub-header {
	height: 16rem;
	position: relative;
	background-size: cover;
	background-position: center;
	overflow: hidden;
}
@media screen and (min-width:480px) {
	.sub-header {
		height: 24rem;
	}
}
@media screen and (min-width:768px) {
	.sub-header {
		height: 28rem;
	}
}
@media screen and (min-width:1024px) {
	.sub-header {
		height: 30rem;
	}
}
/*.contact .sub-header,
.thanks .sub-header{
background-image: url("/wp-content/uploads/2025/03/contact.jpg") !important;
}*/
.sub-header-txt {
	color: var(--text);	
	background: transparent;
	position: relative;
	z-index: 3;
	font-size: 2rem;
	margin-bottom: 0;
}
@media screen and (min-width:480px) {
	.sub-header-txt {
		font-size: 2.4rem;
	}
}
@media screen and (min-width:768px) {
	.sub-header-txt {
		font-size: 2.8rem;
	}
}
@media screen and (min-width:1024px) {
	.sub-header-txt {
		font-size: 3.2rem;
	}
}
.sub-header::before {
	content: "";
	position: absolute;
	inset: 0;
	background-color: rgba(255, 255, 255, 0.7); /* 白＋透明度 */
	backdrop-filter: blur(5px); /* ぼかし効果 */
	z-index: 1;
}
/* 中のコンテンツを上に表示するため */
.sub-header-title {
	position: relative;
	z-index: 2;
}

.drop-menu {
	z-index: 3;
}
h3.recruit-single-title {
	color: #fff;
	background-color: var(--sub);
}
.job-table th {
	color: var(--text);
	background-color: var(--main);
}
.entry-btn a {
	color: var(--text);
}

.contact-form01 th {
	background-color: var(--main);
	border-bottom: 1px solid var(--sub);
	color: var(--text);
	font-weight: 600;
}
input[type="radio"] {
	border-radius: 100vmax !important;
}
input[type="radio"]:checked:before {
	top: 3px;
	left: 3px;
}
input[type="text"], textarea, input[type="email"], input[type="tel"], input[type="checkbox"], input[type="radio"] {
	border-radius: 0;
	background-color: #FFF9F2;
	border: 1px solid #E0DAD1 !important;
}
input[type="submit"] {
	transition: 0.3s;
}

input[type="submit"], input[type="button"] {
	color: var(--text);
}

.required {
	background-color: var(--sub);
}
#page-top {
	bottom: 70px !important;
}
#page-top img {
	max-height: 70px;
	transition: 0.3s;
}
@media screen and (max-width: 768) {
	#page-top img {
		max-height: 50px;	
	}
}
.to-top-page {
	max-width: 240px;
	width: 100%;
	margin-inline: auto;
}

/*==============================================================================
# footer
==============================================================================*/
.footer {
	background-color: #f6f6f6;
	padding-bottom: 0;
}

.footer__logo {
	text-align: center;
}
.footer__logo img {
	max-width: 400px;
	width: 100%;
	margin-inline: auto;
	height: auto;
}

.footer__company-info {
	border-bottom: 1px solid #d9d9d9;
	padding-bottom: 30px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 3rem;
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.footer__company-info {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 6%;
		margin-top: 3rem;
	}
}

@media (min-width: 768px) {
	.footer__company-info-left {
		width: 40%;
	}
}

.footer-info-name {
	font-size: 2rem;
	font-weight: 700;
}
@media (min-width: 768px) {
	.footer-info-name {
		font-size: 2.4rem;
	}
}

.footer-info-address {
	font-size: 1.6rem;
	margin-top: 1.2rem;
	line-height: normal;

}
@media (min-width: 768px) {
	.footer-info-address {
		margin-top: 1rem;
	}
}
.footer-info-tel {
	margin-top: 6px;
}
.footer-info-tel a {
	text-decoration: underline;
	font-weight: 500;
	font-size: 2rem;
	transition: .3s;
}
@media (min-width: 768px) {
	.footer-info-tel a {
		font-size: 2.4rem;
	}
}
@media (any-hover: hover) {
	.footer-info-tel a:hover {
		opacity: .7;
	}
}

.footer-info-time {
	display: block;
	margin-top: 0.6rem;
}

@media (min-width: 768px) {
	.footer__company-info-right {
		width: 54%;
	}
}

.footer__company-info-right-office {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
@media (min-width: 768px) {
	.footer__company-info-right-office {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
}

.footer__company-info-right-office-line {
	padding: 0 2rem;
	position: relative;
}
.footer__company-info-right-office-line::before {
	position: absolute;
	width: 1px;
	height: 100%;
	background: var(--text);
	content: "";
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}

.footer__company-info-right-office-link {
	text-decoration: underline;
}
.footer__company-info-right-office-title {
	display: flex;
	align-items: center;
}
@media (min-width: 768px) {
	.footer__company-info-right-office-title,
	.footer__company-info-right-office-list {
		width: 50%;
	}
}

.footer__company-info-right-button-link {
	height: 58px;
	line-height: 58px;
}
.footer__company-info-right-button-link.--recruit {
	border: var(--sub3);
}
@media (any-hover: hover) {
	.footer__company-info-right-button-link:hover {
		opacity: .7;
	}
}
.footer__company-info-right-button-link img {
	width: 26px;
	height: 26px;
	object-fit: contain;
}

.footer__company-info-right-buttons {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 1.6rem;
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.footer__company-info-right-buttons {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 2rem;
		margin-top: 3rem;
	}
}
.footer__company-info-right-button {
	width: 50%;
}
.footer__other-info {
	padding-block: 3rem;
}
.footer-info-url {
	font-size: 1.6rem;
	margin-top: 0.6rem;
	transition: .3s;
}
.footer-info-url a {
	text-decoration: underline;
	transition: .3s;
}
@media (any-hover: hover) {
	.footer-info-url a:hover {
		opacity: .7;
	}
}
.footer__regal {
	background-color: #fff;
	padding: 10px;
	margin-bottom: 59px;
}
.footer__regal-inner {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 16px;
	align-items: center;

}
@media (min-width: 768px) {
	.footer__regal {
		margin-bottom: 0;
	}
	.footer__regal-inner {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 0;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		justify-content: space-between;
	}
}
.footer__regal a{
	text-decoration: underline;
	transition: .3;
}
.footer__regal p{
	margin-bottom: 0;
}
@media (any-hover: hover) {
	.footer__regal a:hover{
		opacity: .7;
	}
}

/** お問い合わせ **/
.contact__agree {
	text-align: center;
}
.to-privacy-policy {
	color: var(--sub);
	text-decoration: underline;
	font-weight: 600;
}
.contact-btn {
	margin-top: 5rem;
}

input[type="radio"]:checked:before {
	top: 2px;
	left: 2px;
}
.contact__agree .wpcf7-list-item {
	margin-left: 0!important;
}

@media screen and (max-width: 600px) {
	p, a, li, dt, dd, th, td, span {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 1024px) {
	p, a, li, dt, dd, time, h1, h2, h3, h4, h5, h6, th, td, span {
		font-size: 1.6rem;
	}
}

/* 下層/プライバシーポリシー */
.privacy-head {
	padding-left: 8px;
	border-left: 4px solid var(--main);
	padding-bottom: 0;
	border-bottom: none;
}

@media screen and (max-width: 1024px) {
	.privacy-head {
		font-size: 2.4rem;
	}
}
@media screen and (max-width: 820px) {
	.privacy-head {
		font-size: 2rem;
	}
}
@media screen and (max-width: 600px) {
	.privacy-head {
		font-size: 2rem;
	}
}

/* 下層/事務所ページ */
.office__greeting {
	position: relative;
	padding-block: 8rem;
}
.office__greeting::before {
	position: absolute;
	content: "";
	right: 0;
	bottom: 0;
	background: #fff4f8;
	width: 80%;
	height: 100%;
	z-index: -1;
}

.office__greeting-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 4%;
}
@media (min-width: 768px) {
	.office__greeting-content {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
}

.office__greeting-img {
	width: 100%;
}
@media (min-width: 768px) {
	.office__greeting-img {
		width: 48%;
	}
}
.office__greeting-img img {
	aspect-ratio: 4 / 3;
}

.office__greeting-texts {
	width: 100%;
	margin-top: 2.4rem;
}
@media (min-width: 768px) {
	.office__greeting-texts {
		width: 100%;
		margin-top: 0;
	}
}

.office__info-content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 4%;
}
@media (min-width: 768px) {
	.office__info-content {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
}

.office__info-table {
	width: 100%;
}
@media (min-width: 768px) {
	.office__info-table {
		width: 48%;
	}
}

.office__info-map {
	width: 100%;
	margin-top: 24px;
}
@media (min-width: 768px) {
	.office__info-map {
		width: 48%;
		margin-top: 0;
	}
}
.office__info-map iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 4/3;
}
.tablepress-id-8 tbody td.column-1{
	color: #fff;
	background-color: var(--sub);
}
@media (max-width: 767px) {
	.tablepress-id-8 tr {
		display: flex;
		flex-direction: column;
	}
	.tablepress-id-8 tbody td.column-1,
	.tablepress-id-8 tbody td.column-2{
		width: 100%;
	}
}


/* mv調整 */
ss3-force-full-width {
	display: inline !important;
	width: 100% !important;
}
.fv {
	display: flex;
	position: relative;
}
.fv__scrolldown {
	height: 100%;
	position: absolute;
	left: 20px;
	width: 80px;
	display: none;
}
@media screen and (min-width:768px) {
	.fv__scrolldown {
		display:block;
	}
}
.fv__scrolldown-link{
	display: flex;
	flex-direction: column;
}
.fv__img {
	width: 100%;
	margin-left: auto;
}
@media screen and (min-width:768px) {
	.fv__img {
		width: calc(100% - 80px);
	}
}
@media screen and (max-width:1440px) {
	.fv__copy p {
		font-size: 3rem !important;
	}
}
@media screen and (max-width:980px) {
	.fv__copy p {
		font-size: 2.4rem !important;
	}
}
@media screen and (max-width:800px) {
	.fv__copy p {
		font-size: 2.2rem !important;
	}
}
@media screen and (max-width:620px) {
	.fv__copy p {
		font-size: 2rem !important;
	}
}
@media screen and (max-width:570px) {
	.fv__copy p {
		font-size: 1.8rem !important;
	}
}

/* 採用について */
.tab-panel-a .tab {
	border: 1px solid var(--main);	
	background-color: #fff;
	color: var(--text);
}
.recruit-content h3 {
	color: var(--text);
	border-bottom: 1px solid var(--main);
}
.top-news__to-list-link {
	background: var(--main);
	box-shadow: 0px 4px 20px 0px rgba(0, 0, 0, 0.16);
	padding: 12px;
	width: 100%;
	max-width: 180px;
}
.tab-panel-a .tab.is-active, .tab-panel-a .tab:hover {
	color: var(--text);
}
.recruit-feed01 > li {
	background-color: var(--sub2);	
}
.recruit-feed01 .recruit-sub.flex span {
	color: var(--text);
	border-radius: 0;
}
.recruit-feed01 .recruit-img img,
.link-over,
.tab-panel-a .tab{
	border-radius: 0;
}
.tab-panel-a .tab{
	text-align: center;
}

@media (max-width: 480px) {
	.tab-panel-a .tab-group {
		display: block !important;
	}
	.tab-panel-a .tab{
		width:100%;　 !important;
		margin-inline: 0;

	}
}

/*==============================================================================
# Welfare
==============================================================================*/
.welfare {
	position: relative;
}
.welfare::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 78%;
	background: var(--sub2);
	bottom: 0;
	left: 0;
	z-index: -1;
}
@media (min-width: 768px) {
	.welfare::after {
		height: 48%;
	}
}

.welfare__content {
	margin-top: 4rem;
}
@media (min-width: 768px) {
	.welfare__content {
		margin-top: 7rem;
	}
}

.welfare__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 2rem;
	padding-top: 1rem;
}
@media (min-width: 768px) {
	.welfare__list {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 4%;
		padding-top: 1.6rem;
	}
}

.welfare__item {
	position: relative;
	flex: 1;
}

.welfare__item-num {
	font-size: 4rem;
	position: absolute;
	top: -1rem;
	left: 1rem;
	color: var(--main);
}
@media (min-width: 768px) {
	.welfare__item-num {
		font-size: 7.2rem;
		top: -1.6rem;
		left: 2rem;
	}
}

.welfare__item-title {
	background: var(--main);
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
	padding: 4px 12px;
}
@media (min-width: 768px) {
	.welfare__item-title {
		font-size: 2.2rem;
	}
}

.welfare__item-text {
	margin-top: 2rem;
}

/*==============================================================================
# requirements
==============================================================================*/
.requirements {
	position: relative;
}
.requirements::before {
	position: absolute;
	content: "";
	background: url() repeat left top/contain;
}

.requirements__title {
	margin-inline: auto;
}

.requirements__content {
	margin-top: 4rem;
}
@media (min-width: 768px) {
	.requirements__content {
		margin-top: 7rem;
	}
}

.requirements__list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 2rem;
	padding-top: 1rem;
}
@media (min-width: 768px) {
	.requirements__list {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 4%;
		padding-top: 1.6rem;
	}
}

.requirements__item {
	position: relative;
	background-color: var(--sub2);
	padding: 20px;
	flex: 1;
}
@media (min-width: 768px) {
	.requirements__item {
		padding: 40px;
	}
}
.requirements__item img {
	-o-object-fit: contain;
	object-fit: contain;
}

.requirements__item-title {
	text-align: center;
	font-size: 1.8rem;
	font-weight: 700;
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.requirements__item-title {
		font-size: 2.2rem;
	}
}

.requirements__item-text {
	margin-top: 2rem;
}

.dot-bg {
	background-color: #fff;
	background-image: radial-gradient(#f0f5ff 12%, transparent 20%), radial-gradient(#f0f5ff 12%, transparent 20%);
	background-size: 20px 20px;
	background-position: 0 0, 10px 10px;
}
.requirements__item-img {
	border-radius: 100vmax;
	width: 120px;
	height: 120px;
	padding: 3rem;
	background: #fff;
	margin-inline: auto;
}

/*==============================================================================
# job-list
==============================================================================*/
.job-list {
	background-color: var(--sub2);
}
.job-list__content {
	margin-top: 4rem;
}
@media (min-width: 768px) {
	.job-list__content {
		margin-top: 7rem;
	}
}

/* トップページ */
.top-news {
	padding-top: 13.8889vw;
	background-color: var(--sub2);
	margin-top: -6.94444vw;
}
.top-news__title {
	font-size: 2.4rem;
	font-weight: 700;
	text-align: center;
}
@media (min-width: 768px) {
	.top-news__title {
		font-size: 3.2rem;
	}
}
.top-news__icon {
	text-align: center;
}
.top-news__icon img {
	width: 48px;
	height: auto;
	object-fit: contain;
	display: inline-block;
}
.top-news__content {
	display: flex;
	flex-direction: column;
	padding: 20px;
	background-color: #fff;
	gap: 4rem;
}

@media (min-width: 768px) {
	.news-list01 li .date-cat.flex {
		margin-bottom: 0;
	}
}
.top-news__list {
	margin-top: 0;
}
.news-list01 {
	margin-bottom: 0;
}

.top-news__to-list-link {
	width: 100%;
	display: inline-block;
	text-align: center;
	font-weight: 700;
}
.top-news__to-list {
	text-align: center;
}
.date-cat {
	width: 100%;
	gap: 8px;
}
.news-txt {
	width: 100%;
}
@media (min-width: 768px) {
	.news-list01 li{
		display: flex;
		gap: 1rem;
		align-items: center;
	}
	.news-txt {
		width: 70%;
	}
	.date-cat {
		width: 30%;
	}
	.top-news__content {
		flex-direction: row;
		align-items: center;
		padding: 40px;
	}
	.top-news__to-list {
		/* PC時は左側の下に表示 */
		margin-top: 8px;
		order: 2; /* 任意調整可 */
	}
	.top-news__left {
		max-width: 240px;
		flex-shrink: 0;
		display: flex;
		flex-direction: column;
	}
	.top-news__list {
		flex-grow: 1;
	}
}
.news-list01 li .news-cat a,
.archive-info-cat a{
	border-radius: 0;
	background-color: var(--sub4);
	border: 1px solid var(--sub4); 
}
.archive-info-cat a:hover,
.news-list01 li .news-cat a:hover
{
	color: var(--sub4);
	background-color: #fff;
}
.top-news__to-list-link  {
	border: 1px solid var(--main);
	transition: 0.3s;
}
.top-news__to-list-link:hover {
	background-color: #fff;
}

.greeting {
	position: relative;
}
.greeting::after {
	position: absolute;
	content: "";
	left: 0;
	bottom: 0;
	height: 50%;
	width: 86%;
	background-color: #fff4f8;
	z-index: -1;
}

.greeting__content {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	max-width: 1000px;
	margin-inline: auto;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: 30px;
}
@media (min-width: 768px) {
	.greeting__content {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 10%;
	}
}

@media (min-width: 768px) {
	.greeting__texts {
		width: 50%;
	}
}

.section__title {
	position: relative;
	font-size: 2.8rem;
	font-weight: 700;
	padding-bottom: 4px;
	width: fit-content;
	z-index: 0;
}
.section__title::before {
	position: absolute;
	background: url(/wp-content/uploads/2025/04/sec-title-deco.png) no-repeat top left / contain;
	left: 0;
	bottom: 0;
	content: "";
	height: 25px;
	width: 78px;
	z-index: -1;
}
@media (min-width: 768px) {
	.section__title {
		font-size: 4rem;
		padding-bottom: 10px;
	}
	.section__title::before {
		height: 50px;
		width: 155px;
	}
}

.section__title-en {
	display: block;
	margin-bottom: 10px;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1;
}
@media (min-width: 768px) {
	.section__title-en {
		font-size: 2.4rem;
	}
}

.section__title-en-initial {
	color: var(--main);
	font-weight: inherit;
	font-size: inherit;
}
.section__title-center {
	margin-inline: auto;
}
.section__title-center span {
	text-align: center;
}
.section__title-center::before {
	left: 50%;
	transform: translatex(-50%);
}

.greeting__subtitle {
	color: var(--sub4);
	font-size: 2rem;
	margin-top: 4rem;
	font-weight: 700;
}
@media (min-width: 768px) {
	.greeting__subtitle {
		font-size: 2.4rem;
		margin-top: 7rem;
	}
}

.greeting__text {
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.greeting__text {
		margin-top: 3rem;
	}
}

@media (min-width: 768px) {
	.greeting__img {
		width: 40%;
	}
}
/*==============================================================================
# service
==============================================================================*/
.service__content {
	gap: 3rem;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin-top: 4rem;
}
@media (min-width: 768px) {
	.service__content {
		gap: 7rem;
		margin-top: 7rem;
	}
}

.service__box {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 2rem;
	-webkit-box-orient: vertical;
	-webkit-box-direction: reverse;
	-ms-flex-direction: column-reverse;
	flex-direction: column-reverse;
	position: relative;
}
@media (min-width: 768px) {
	.service__box {
		gap: 8%;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
}

@media (min-width: 768px) {
	.--reverse {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
}

@media (min-width: 768px) {
	.service__box-texts {
		width: 46%;
	}
}

.service__box-title {
	position: relative;
	color: var(--sub4);
	font-weight: 700;
	font-size: 2.4rem;
}
@media (min-width: 768px) {
	.service__box-title {
		font-size: 3.2rem;
	}
}

.service__box-line {
	position: absolute;
	content: "";
	background: var(--main);
	height: 1px;
	width: 100%;
	left: 0;
	bottom: 0;
	z-index: 1;
}
@media (min-width: 768px) {
	.service__box-line {
		width: min(600px, 41.66667vw);
	}
}

.service__box.--reverse .service__box-line {
	right: 0;
	left: auto;
}
@media (min-width: 768px) {
	.service__box.--reverse .service__box-title {
		text-align: right;
	}
}

.service__box-text {
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.service__box-text {
		margin-top: 4rem;
	}
}

@media (min-width: 768px) {
	.service__box-img {
		width: 46%;
	}
}

/*==============================================================================
# top-office
==============================================================================*/
.top-office {
	background-color: var(--sub2);
}
.top-office__content {
	margin-top: 4rem;
}
@media (min-width: 768px) {
	.top-office__content {
		margin-top: 7rem;
	}
}
.top-office__block {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	gap: 30px;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
@media (min-width: 768px) {
	.top-office__block {
		gap: 4%;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
}

.top-office__box {
	background: #fff;
	-webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
	box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
	padding: 2rem;
}
@media (min-width: 768px) {
	.top-office__box {
		width: 48%;
		padding: 4rem;
	}
}

.top-office__box-texts {
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.top-office__box-texts {
		margin-top: 3rem;
	}
}

.top-office__box-title {
	color: var(--sub4);
	font-weight: 700;
	font-size: 2rem;
	text-align: center;
}
@media (min-width: 768px) {
	.top-office__box-title {
		font-size: 2.8rem;
	}
}

.top-office__box-text {
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.top-office__box-text {
		margin-top: 3rem;
	}
}

/*==============================================================================
# top-infomation
==============================================================================*/
.top-infomation__content {
	margin-top: 4rem;
}
@media (min-width: 768px) {
	.top-infomation__content {
		margin-top: 7rem;
	}
}
.top-infomation__buttons {
	display: grid;
	grid-template-columns: repeat(1, 1fr);
	gap: 16px;
}
@media (min-width: 520px) {
	.top-infomation__buttons {
		grid-template-columns: repeat(2, 1fr);
	}
}
@media (min-width: 768px) {
	.top-infomation__buttons {
		grid-template-columns: repeat(3, 1fr);
	}
}
@media (min-width: 1024px) {
	.top-infomation__buttons {
		grid-template-columns: repeat(4, 1fr);
	}
}
.common-button a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	gap: 4px;
	padding: 14px 20px;
	font-weight: 700;
	border: 1px solid var(--main);
	background-color: var(--main);
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
	box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.16);
}
@media (any-hover: hover) {
	.common-button a:hover {
		background-color: #fff;
	}
}


/*==============================================================================
# 採用ページバナー
==============================================================================*/
.to-recruit {
	background: -webkit-gradient(linear, left bottom, left top, from(rgba(155, 77, 118, 0.9)), to(rgba(155, 77, 118, 0.9))), url(/wp-content/uploads/2025/04/to-recruit-banner-bg.jpg) lightgray 50%/cover no-repeat;
	background: linear-gradient(0deg, rgba(155, 77, 118, 0.9) 0%, rgba(155, 77, 118, 0.9) 100%), url(/wp-content/uploads/2025/04/to-recruit-banner-bg.jpg) lightgray 50%/cover no-repeat;
}

.to-recruit__content {
	margin-inline: auto;
	max-width: 600px;
	width: 100%;
}

.to-recruit__text {
	color: #fff;
	font-weight: 700;
	font-size: 1.8rem;
	text-align: center;
}
@media (min-width: 768px) {
	.to-recruit__text {
		font-size: 2.4rem;
	}
}

.to-recruit__benner {
	margin-top: 2rem;
}
@media (min-width: 768px) {
	.to-recruit__benner {
		margin-top: 3rem;
	}
}

.to-recruit__banner-link {
	-webkit-transition: all 0.3s ease;
	transition: all 0.3s ease;
}
@media (any-hover: hover) {
	.to-recruit__banner-link:hover {
		opacity: 0.7;
	}
}
/*==============================================================================
# tablepress css
==============================================================================*/
.tablepress tbody td.column-1 {
	color: var(--text);
	background-color: var(--main);
}

/*==============================================================================
# ドロワーメニュー
==============================================================================*/
#hamburger span{
	border-radius: 0;
	height: 2px;
	width: 45% !important;
}
#mobile-nav {
	background-color: var(--sub2);
}
.mobile-nav-wrap .mobile-menu-list .sub-menu {
	padding: 15px;
	gap: 10px;
	flex-direction: column;
}
.mobile-nav-wrap .mobile-menu-list .sub-menu li {
	width: 100%;
}
@media (min-width: 768px) {
	.mobile-nav-wrap .mobile-menu-list .sub-menu {
		flex-direction: row;
	}
	.mobile-nav-wrap .mobile-menu-list .sub-menu li {
		width: 49%;
	}
}
.mobile-nav-wrap .mobile-menu-list {
	border-radius: 0;
}
.mobile-menu-list .menu-item {
	max-width: none;
}
.mobile-nav-wrap .mobile-menu-list .sub-menu li a {
	background-color: var(--sub4);
}
.mobile-nav-wrap .mobile-menu-list > li > a {
	color: var(--text);
}
.mobile-sub-nav li a {
	color: var(--text);
	border-radius: 0;
}
.drawer-buttons {
	padding-inline: 15px;
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 768px) {
	.drawer-buttons {
		grid-template-columns: repeat(1, 1fr);
	}
}
.moblie-menu-head {
	color: var(--text) !important; 
}

/** フッターバー **/
@media screen and (min-width:768px) {
	.footer-bar {
		display: none;
	}
}
.footer-bar {
	position: fixed;
	bottom: 0;
	width: 100%;
	z-index: 9998;
}
.footer-inner {
	max-width: 1000px;
}
.footer-bar__nav {

}
.footer-bar__list {
	background: var(--main);
	border-top: 1px solid #fff;
	display: flex;
	font-size: 12px;

}
.footer-bar__item {
	flex: 1; /* 各アイテムを均等幅にする */
	text-align: center;
}
.footer-bar__item + .footer-bar__item {
	border-left: 1px solid #fff;
}
.footer-bar__link {
	padding: 15px 0;
	color: var(--text);
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer-bar__link--home {
}
.footer-bar__icon {
	line-height: 1;
	margin-right: 6px;
}

.footer-bar__icon svg{
	width: 26px;
	height: 26px;
	object-fit: contain;
}
.copyright p{
	color: var(--text-color);
}
@media screen and (max-width:767px) {
	.copyright {
		padding-bottom: 60px;
	}
}


/* アーカイブ */
.archive-info-img img {
	border-radius: 0;
}
.side-box h3{
	color: var(--text);
}

/* 詳細ページ */
.single-info-date-cat span a,
.single-info-catch-img img,
.gallery-list a img{
	border-radius: 0;
}
.single-info-date-cat span a {
	background-color: var(--sub4);
	border: 1px solid var(--sub4);
}
@media (any-hover: hover) {
	.single-info-date-cat span a:hover {
		color: var(--sub4);
	}
}
.n2-ss-slider .n2-ss-slide-background-image img {
	width: auto !important;
	height: auto !important;
	max-width: 100%;
	max-height: 100%;
	display: block;
	margin: 0 auto;
}

/** アニメーション **/
/* ふわっと出現 */
.animated__fadeIn {
	opacity: 0;
	translate: 0 40px;
	-webkit-transition: opacity 0.3s ease, translate 0.3s ease;
	transition: opacity 0.3s ease, translate 0.3s ease;
}
.animated__fadeIn.js-show {
	opacity: 1;
	translate: 0 0;
}
/* 時間差で出現 */
.animated_time {
	opacity: 0;
	translate: 0 40px;
	transition: opacity 1s ease, translate 1s ease;
}
.animated_time.js-show2 {
	opacity: 1;
	translate: 0 0;
}



/*20250617:修正;グローバルナビゲーション変更*/


.header-box01 .logo {
  max-width: unset;
  width: 100%;
  height: 70px;
  width: auto;
}
.header-box01 .logo img{
 height: 70px;
}

.header-top__content{
	display:none;
}
.header-content02 {
	background: rgba(255,255,255,0.9);
}
@media screen and (max-width:1800px) {
	.menu-item {
		max-width: 200px;
	}
}
@media screen and (max-width:1500px) {
  .menu-item {
    max-width: auto;
    width: calc(100% / 7);
  }
  .header-menu .sub-menu li {
    width: 100%;
  }
  .header-menu > li a {
   padding: 0 10px;
}
}	