@charset "utf-8";
/* CSS Document */

/*Webフォントの読み込み*/
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css2?family=BIZ+UDGothic&display=swap);

@media screen,print {
	/* 960px以上に適用されるCSS（PC用）、印刷に適用されるCSS */

	/***************
	共通
	***************/

	* {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 16px;
		letter-spacing: 0.1em;
	}
	body {
		overflow-x: hidden;
	}
	/*ヘッダー*/
	div.l-header__inner.l-container {
		max-width: 100%;
		height: 100px;
	}
	div.l-fixHeader__inner.l-container {
		max-width: 100%;
		height: 100px;
	}
	.-body-solid .l-fixHeader {
		box-shadow: 0 0 0 0;
	}
	/*ロゴ*/
	.-series .l-header__logo {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
	.l-fixHeader__logo {
		position: absolute;
		left: 0;
	}
	a.c-headLogo__link {
		display: block;
		background-color: #FFFFFF;
		padding: 10px 40px 25px 30px;
		border-radius: 0 0 15px 0;
	}
	h1.c-headLogo {
		border: 0px solid #FFFFFF;
	}
	h1.c-headLogo img:hover, img.c-headLogo__img:hover {
		animation: glow 0.6s ease-in-out forwards;
		transition: .5s;
	}
	/*メインナビ*/
	ul.c-gnav li {
		height: 100px;
		font-weight: 600;
		padding: 35px 0 0 0;
	}
	.c-gnav > .menu-item > a {
		padding: 0 min(1.3vw, 30px);
	}
	ul.c-gnav li a span {
		font-size: clamp(0.8em, 1vw, 0.9em)!important;
	}
	/*右上部メニュー*/
	.w-header {
		align-items: center;
		display: block;
		position: absolute;
		top: 0;
		right: 0;
	}
	ul.submenu {
		display: flex;
		background-color: #035AA6;
		border-radius: 0 0 0 40px
	}
	ul.submenu li {
		height: 35px;
		padding: 0 30px 0 70px;
		color: #FFFFFF;
		display: flex;
		align-items: center;
		justify-content: center;
		position: relative;
	}
	ul.submenu li a {
		font-size: 0.8em;
	}
	ul.submenu li a:hover {
		line-height: 10px;
		transition: .5s;
	}
	ul.submenu li.blog::before {
		content: '';
		width: 17px;
		height: 17px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/header_blog.png);
		background-size: cover;
		display: block;
		position: absolute;
		left: 44px;
	}
	ul.submenu li.news::before {
		content: '';
		width: 17px;
		height: 17px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/header_news.png);
		background-size: cover;
		display: block;
		position: absolute;
		left: 44px;
	}
	ul.submenu li.contact {
		background-color: #021F59;
		border-radius: 0 0 0 40px
	}
	ul.submenu li.contact::before {
		content: '';
		width: 17px;
		height: 17px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/header_mail.png);
		background-size: cover;
		display: block;
		position: absolute;
		left: 44px;
	}
	/*サブメニュー*/
	.c-gnav > .menu-item > .sub-menu {
		width: 100vw;
		height: 90px;
		padding: 0px 5%;
		background-color: rgb(3, 90, 166, .95);
		position: fixed;
		top: 100px;
		right: 0;
		display: flex;
		justify-content: center;
		align-items: center;
		z-index: -1;
	}
	.c-gnav > .menu-item > .sub-menu li {
		height: 90px;
		padding: 0 1vw;
	}
	.c-gnav > .menu-item > .sub-menu li a {
		height: 90px;
		color: #FFFFFF;
		font-weight: 500;
		letter-spacing: 0.2em;
		padding: 0 2vw;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	/*コンテンツ枠*/
	.l-article {
		max-width: 1200px;
	}
	/*フッターリンク*/
	div.wp-block-columns.footer_link {
		width: 99.05vw;
		margin-left: calc(50% - 49.5vw);
		margin-right: calc(50% - 49.5vw);
		margin-bottom: 0;
		max-width: none;
		box-sizing: border-box;
		border-right: 2px solid #021F59;
		gap: 0!important;
		position: relative;
		z-index: 2;
	}
	div.wp-block-columns.footer_link a {
		border: 2px solid #021F59;
		border-right: 0px solid #021F59;
		background-color: #FFFFFF;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		padding: 60px 0 0;
		position: relative;
	}
	div.wp-block-columns.footer_link a.footer_link_strength::before {
		content: '';
		width: 25px;
		height: 25px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/footer_link_image01.png);
		background-size: cover;
		position: absolute;
		top: 18px;
	}
	div.wp-block-columns.footer_link a.footer_link_service::before {
		content: '';
		width: 25px;
		height: 25px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/footer_link_image02.png);
		background-size: cover;
		position: absolute;
		top: 18px;
	}
	div.wp-block-columns.footer_link a.footer_link_company::before {
		content: '';
		width: 25px;
		height: 25px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/footer_link_image03.png);
		background-size: cover;
		position: absolute;
		top: 18px;
	}
	div.wp-block-columns.footer_link a:hover {
		background-color: #DBEAFD;
		transition: .5s;
	}
	div.wp-block-columns.footer_link p {
		font-weight: 600;
		color: #021F59;
		margin: 0;
		text-align: center;
	}
	div.wp-block-columns.footer_link p.en {
		font-size: 2.0rem;
		color: #F9AA8E;
		letter-spacing: 0.2em;
	}
	/*CTA*/
	div.footer_cta {
		background-color: #021F59;
		width: 99.05vw;
		margin-left: calc(50% - 49.5vw);
		margin-right: calc(50% - 49.5vw);
		margin-bottom: 0;
		padding: 50px 0;
		max-width: none;
		justify-content: center
	}
	div.footer_cta div.text {
		max-width: 500px;
		padding: 0 0 0 30px;
		display: flex;
		flex-direction: column;
		align-items: start;
		justify-content: center;
	}
	div.footer_cta div.text p {
		font-weight: 600;
		color: #FFFFFF;
		line-height: 2.5em;
	}
	div.footer_cta div.image {
		max-width: 500px;
		padding: 0 20px 0 0;
	}
	/*ボタン*/
	div.footer_cta div.swell-block-button.is-style-btn_normal {
		margin: 20px 0 0 0;
		position: relative;
	}
	div.footer_cta div.swell-block-button.is-style-btn_normal::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
		z-index: 9;
	}
	div.footer_cta div.swell-block-button.is-style-btn_normal::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
		z-index: 99;
	}
	div.footer_cta div.swell-block-button.is-style-btn_normal a {
		height: 70px;
		color: #021F59;
		background-color: #FFFFFF;
		padding: 24px 100px 24px 30px;
	}
	div.footer_cta div.swell-block-button.is-style-btn_normal a:hover {
		background-color: #FFFFFF!important;
		color: #021F59!important;
		animation: glow 0.6s ease-in-out forwards;
		transition: .5s;
	}
	div.footer_cta div.swell-block-button.is-style-btn_normal a:hover::before {
		background-color: #021F59!important;
	}
	div.footer_cta div.swell-block-button.is-style-btn_normal a:hover::after {
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png)!important;
	}
	/*フッター*/
	div.footer_main {
		padding: 100px 0 0;
	}
	div.footer_main div.logo {
		max-width: 450px;
	}
	div.footer_main div.logo figure {
		max-width: 300px;
	}
	div.footer_main div.logo p.companyname {
		font-size: 1.8em;
		font-weight: 600;
		padding: 30px 0 0 0;
	}
	div.footer_main div.logo p.companyinfo {
		font-size: 0.9em;
		line-height: 1.7em;
	}
	div.footer_main div.link {
		max-width: 750px;
		min-width: 500px;
		padding: 0 0 0 70px;
	}
	div.footer_main div.link div.main {
		font-size: 1.1em;
		font-weight: 600;
	}
	div.footer_main div.link div.main ul li {
		padding: 5px 0 15px 0;
		position: relative;
	}
	div.footer_main div.link div.main ul li::before {
		content: '';
		width: 25px;
		height: 25px;
		border-radius: 50%;
		background-color: #0367A6;
		position: absolute;
		top: 2.8px;
	}
	div.footer_main div.link div.main .swell-block-linkList.is-style-default .swell-block-linkList__icon {
		font-size: 15px;
		color: #FFFFFF;
		margin: 0 5px;
	}
	div.footer_main div.link div.main ul li span {
		padding: 0 0 0 10px;
	}
	div.footer_main div.link div.sub ul li {
		padding: 5px 0 15px 0;
		position: relative;
	}
	div.footer_main div.link div.sub ul li::before {
		content: '';
		width: 20px;
		height: 20px;
		border: 1.5px solid #0367A6;
		border-radius: 50%;
		background-color: #FFFFFF;
		position: absolute;
		top: 6px;
	}
	div.footer_main div.link div.sub .swell-block-linkList.is-style-default .swell-block-linkList__icon {
		font-size: 15px;
		color: #0367A6;
		margin: 0 2.5px;
	}
	div.footer_main div.link div.sub ul li span {
		padding: 0 0 0 5px;
	}
	.l-footer {
		background-color: #021F59;
	}
	div.l-footer__foot {
		padding: 1.3em 0;
	}
	p.copyright {
		color: #FFFFFF;
	}
	/*固定ページ共通*/
	/*タイトル*/
	div#top_title_area.l-topTitleArea {
		max-width: 1200px;
		min-height: 300px;
		margin: 0 auto;
		padding: 0 20px;
		position: relative;
	}
	div#top_title_area.l-topTitleArea:before {
		content: '';
		width: 40%;
		height: 300px;
		position: absolute;
		top: 0;
		right: 20px;
		z-index: 1;
	}
	div.l-topTitleArea__body.l-container {
		border-bottom: 4px solid #0367A6;
		margin: 0 100px 0 0;
		padding: 25px 0 30px;
		z-index: 0;
	}
	div.l-topTitleArea__body.l-container h1 {
		font-size: 2.6em;
		font-weight: 600;
		color: #333333;
		text-shadow: 0px 0px 0 rgba(0, 0, 0, .0);
		position: relative;
	}
	div.l-topTitleArea__body.l-container h1:before {
		content: '';
		font-size: 0.35em;
		letter-spacing: 0.15em;
		color: #F24405;
		position: absolute;
		top: -30px;
	}
	/*パンくず*/
	div#breadcrumb.p-breadcrumb.-bg-on {
		max-width: 1200px;
		margin: 0 auto;
		padding-left: 20px;
	}
	ol.p-breadcrumb__list.l-container {
		padding: 0
	}
	/*ボタン*/
	div.swell-block-button.is-style-btn_normal a:hover {
		background-color: #021F59!important;
		color: #FFFFFF!important;
		transition: .5s!important;
	}
	div.swell-block-button.is-style-btn_normal a:hover::before {
		background-color: #FFFFFF!important;
		transition: .5s!important;
	}
	div.swell-block-button.is-style-btn_normal a:hover::after {
		background-image: url(/marukyu/wp-content/uploads/2026/02/arrow_blue_01.png)!important;
		transition: .5s!important;
	}
	/*リキャプチャマーク*/
	.grecaptcha-badge {
		visibility: hidden;
	}

	/***************
	HOME
	***************/

	/*メインビジュアル*/
	.p-mainVisual__slide.c-filterLayer.-nofilter {
		width: 90vw;
		margin: 0 auto;
		max-width: 1500px;
		min-width: 900px;
	}
	.p-mainVisual {
		width: calc(100% - 60px);
		margin: 0 auto;
		border-radius: 25px;
		background-color: #B1CDE3;
		position: relative;
	}
	.p-mainVisual::before {
		content: '';
		width: 30px;
		height: 30px;
		background-image: url(/marukyu/wp-content/uploads/2026/03/main_lefttop.png);
		background-size: cover;
		position: absolute;
		top: 35px;
		left: 0;
		z-index: 1;
	}
	.p-mainVisual::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/03/main_lefttop.png);
		background-size: cover;
		position: absolute;
		top : 0;
		left: 283px;
	}
	.p-mainVisual__inner {
		max-height: 1000px;
		min-height: 600px;
	}
	.p-mainVisual picture {
		padding: 0 0 0 0;
		display: flex;
		align-items: center;
		justify-content: end;
	}
	div.p-mainVisual__textLayer.l-parent.l-container.u-ta-c {
		max-width: 100%;
	}
	div.p-mainVisual__slideTitle {
		display: flex;
		flex-direction: column;
		align-items: flex-start; 
	}
	div.p-mainVisual__slideTitle div.allwrap {
		align-items: center;
	}
	div.p-mainVisual__slideTitle div.wrap {
		display: flex;
		flex-direction: row-reverse;
		align-items: flex-start;
		justify-content: center;
		padding: 10px 0 0 0;
	}
	div.p-mainVisual__slideTitle p {
		color: #021F59;
		letter-spacing: 0.2em;
		text-shadow: 0px 0px 0px rgba(0, 0, 0, 0);
		text-align: left;
		line-height: 1.2em;
		background-color: #FFFFFF;
		margin: 15px 15px;
		padding: 25px 5px 20px 5px;
	}
	div.p-mainVisual__slideTitle p.year {
		width: 100%;
		font-family: "BIZ UDGothic", sans-serif;
		font-weight: 400;
		font-size: 1.0em;
		color: #FFFFFF;
		text-align: center;
		background-color: #0367A6;
		border-radius: 30px;
		margin: 0;
		padding: 12px;
		position: relative;
		z-index: 2;
	}
	div.p-mainVisual__slideTitle p.year::before {
		content: '';
		width: 15px;
		height: 15px;
		background-color: #FFFFFF;
		border-radius: 50%;
		position: absolute;
		top: 14px;
		left: 15px;
	}
	div.p-mainVisual__slideTitle p.year::after {
		content: '';
		width: 15px;
		height: 15px;
		background-color: #FFFFFF;
		border-radius: 50%;
		position: absolute;
		top: 14px;
		right: 15px;
	}
	div.p-mainVisual__slideTitle p.all {
		font-size: 2.6em;
		writing-mode: vertical-rl;
		font-family: "BIZ UDGothic", sans-serif;
		font-weight: 700;
		padding-top: 30px;
		position: relative;
		border-radius: 10px;
	}
	div.p-mainVisual__slideTitle p.all::before {
		content: '';
		width: 3px;
		height: 30px;
		background-color: #021F59;
		position: absolute;
		top: -15px;
		right: 0;
		left: 0;
		margin: auto;
	}
	div.p-mainVisual__slideTitle p.all::after {
		content: '';
		width: 3px;
		height: 30px;
		background-color: #021F59;
		position: absolute;
		bottom: -15px;
		right: 0;
		left: 0;
		margin: auto;
	}
	div.p-mainVisual__slideTitle p.speed {
		font-size: 1.6em;
		writing-mode: vertical-rl;
		margin-top: 2.6em;
		font-family: "BIZ UDGothic", sans-serif;
		font-weight: 400;
		border-radius: 9px;
	}
	div.p-mainVisual__slideTitle p.mono {
		font-size: 1.6em;
		writing-mode: vertical-rl;
		margin-top: 2.6em;
		margin-right: 0px;
		font-family: "BIZ UDGothic", sans-serif;
		font-weight: 400;
		border-radius: 9px;
	}
	/*スタッフブログ*/
	div.top_update {
		padding: 50px 0 200px 0;
	}
	div.top_update div.blog {
		max-width: 800px;
		min-width: 540px;
		padding: 0 20px 0 0;
	}
	div.top_update div.blog p.about {
		font-size: 0.9em;
		color: #FFFFFF;
		background-color: #F24405;
		border-radius: 20px;
		padding: 10px 35px;
		display: inline;
		position: relative;
	}
	div.top_update div.blog p.about::before {
		content: '';
		width: 15px;
		height: 10px;
		background-color: #F24405;
		clip-path: polygon(0 0, 100% 0%, 20% 100%);
		position: absolute;
		bottom: -10px;
		right: 50px;
	}
	div.top_update div.blog div.title {
		margin: 60px 0;
	}
	div.top_update div.blog h2 {
		font-size: 2.2em;
		padding: 0 20px 0 50px;
		display: inline;
	}
	div.top_update div.blog h2::before {
		content: '';
		width: 40px;
		height: 40px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/top_blog_image01.png);
		background-size: cover;
		position: absolute;
		top: 6px;
		left: 0;
	}
	div.top_update div.blog p.en {
		font-size: 1.3em;
		font-weight: 900;
		color: #0367A6;
		display: inline;
	}
	div.p-postListWrap.bloglist.sp {
		display: none;
	}
	div.top_update div.blog a.p-postList__link {
		align-items: center;
		position: relative;
	}
	div.top_update div.blog div.p-postList__body {
		padding: 20px 0 0 0;
	}
	div.top_update div.blog a.p-postList__link h3 {
		text-decoration: underline;
	}
	div.top_update div.blog a.p-postList__link div.p-postList__meta {
		position: absolute;
		top: -20px;
	}
	div.top_update div.blog a.p-postList__link div.p-postList__meta time::before {
		display: none;
	}
	/*ボタン*/
	div.top_update div.blog div.is-style-more_btn {
		text-align: left;
		margin: 50px 0 0 0;
		position: relative;
	}
	div.top_update div.blog div.is-style-more_btn a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
		z-index: 9;
	}
	div.top_update div.blog div.is-style-more_btn a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 31px;
		right: 29px;
		z-index: 99;
	}
	div.top_update div.blog div.is-style-more_btn a {
		font-size: 1.0em;
		font-weight: 600;
		min-width: auto;
		height: 70px;
		color: #021F59;
		border: 2px solid #021F59;
		border-radius: 50px;
		background-color: #FFFFFF;
		box-shadow: var(--swl-btn_shadow);
		padding: 22px 90px 24px 30px;
		position: relative;
	}
	div.top_update div.blog div.is-style-more_btn a:hover {
		background-color: #021F59!important;
		color: #FFFFFF!important;
		transition: .5s;
	}
	div.top_update div.blog div.is-style-more_btn a:hover::before {
		background-color: #FFFFFF;
		transition: .5s;
	}
	div.top_update div.blog div.is-style-more_btn a:hover::after {
		background-image: url(/marukyu/wp-content/uploads/2026/02/arrow_blue_01.png);
		transition: .5s;
	}
	/*サイトバー*/
	body#staffblogsingle h2 {
		color: #FFFFFF;
		background-color: #035AA6;
		padding: 10px 15px;
		margin: 0 0 20px;
	}
	body#staffblogsingle div.widget {
		width: 300px;
	}
	body#staffblogsingle div.widget ul li {
		color: 
			border-bottom: 1px dotted #cccccc;
		padding: 20px 15px;
	}
	body#staffblogsingle div.widget p.time {
		font-size: 0.8em;
	}
	/*X*/
	div.top_update div.sns_x {
		max-width: 400px;
		min-width: 300px;
		display: flex;
		flex-direction: column;
		align-items: center;
	}
	div.top_update div.sns_x h2 {
		font-size: 1.7em;
		color: #0367A6;
		position: relative;
	}
	div.top_update div.sns_x h2::before {
		content: '';
		width: 46px;
		height: 46px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/top_x_image02.png);
		background-size: cover;
		position: absolute;
		bottom: 0px;
		left: -56px;
	}
	div.top_update div.sns_x h2::after {
		content: '';
		width: 46px;
		height: 46px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/top_x_image02.png);
		background-size: cover;
		position: absolute;
		bottom: 0px;
		right: -46px;
	}
	div.sns_x_inner {
		background-color: #021F59;
		border-radius: 30px;
		padding: 50px 40px 70px;
		position: relative;
	}
	div.sns_x_inner figure {
		margin: 0;
	}
	/*ボタン*/
	div.sns_x_inner div.swell-block-button.is-style-btn_normal {
		margin: 30px 0 0 0;
		position: absolute;
		right: 0;
		left: 0;
	}
	div.sns_x_inner div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
		z-index: 9;
	}
	div.sns_x_inner div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
		z-index: 99;
	}
	div.sns_x_inner div.swell-block-button.is-style-btn_normal a {
		height: 70px;
		color: #021F59;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 24px 90px 24px 30px;
		position: relative;
	}
	/*トップ-丸久化学について*/
	div.top_about {
		background-color: #0367A6;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		position: relative;
		z-index: 0;
	}
	div.top_about::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #0367A6;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		top: -150px;
		z-index: 0;
	}
	div.top_about > div {
		width: 150vw;
		height: 1350px;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		position: relative;
	}
	div.top_about_strength{
		max-width: 1200px;
		width: calc(100vw - 40px);
		text-align: center;
		margin: 0 auto!important;
	}
	div.top_about h2 {
		font-size: 2.6em;
		color: #FFFFFF;
		margin: 0 0 30px;
	}
	div.top_about p {
		color: #FFFFFF;
	}
	div.top_about p.en {
		font-size: 1.5em;
		font-weight: 600;
		color: #FFFFFF;
		padding: 0 0 30px;
	}
	div.top_about div.strength {
		margin: 0px 10px 150px;
		padding: 150px 0 0 0;
		--wp-column-gap : 0em;
		position: relative;
		justify-content: space-between;
	}
	div.top_about div.strength::before {
		content: 'OUR STRENGTH';
		font-family: "Arial Narrow", "Helvetica Neue", "メイリオ";
		font-size: min(130px, 9vw);
		font-weight: 600;
		color: rgba(255,255,255, .2);
		position: absolute;
		top: 0px;
		right: 0;
		left: 0;
	}
	div.top_about div.strength > div {
		position: relative;
		max-width: 350px;
		min-width: 270px;
		min-height: 350px;
	}
	div.top_about div.strength > div a {
		max-width: 350px;
		min-width: 270px;
		min-height: 350px;
		background-color: #FFFFFF;
		border-radius: 30px;
		margin: 0 10px;
		padding: 50px 10px;
		position: relative;
	}
	div.top_about div.strength > div a:hover {
		background-color: #DBEAFD;
		transition: .5s;
	}
	div.top_about div.strength > div a::before {
		content: '';
		width: 15px;
		height: 35px;
		background-color: #F24405;
		position: absolute;
		top: 0;
		top: 0;
		left: 0;
		right: 0;
		margin: auto;
	}
	div.top_about div.strength h3 {
		font-size: 1.3em;
		color: #F24405;
		margin: 0;
		padding: 20px 0 30px;
	}
	div.top_about div.strength p {
		font-weight: 600;
		line-height: 1.7em;
	}
	div.top_about div.strength figure {
		max-width: 100%;
		height: 180px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.top_about div.strength div.strength01 img {
		max-width: 160px;
	}
	div.top_about div.strength div.strength01 p::before {
		content: '01';
		color: rgba(242,68,5,.1);
		font-family: "Arial Narrow", "Helvetica Neue", "メイリオ";
		font-size: 11em;
		font-weight: 600;
		position: absolute;
		bottom: 55px;
		right: 0;
		left: 0;
	}
	div.top_about div.strength div.strength02 img {
		max-width: 150px;
	}
	div.top_about div.strength div.strength02 p::before {
		content: '02';
		color: rgba(242,68,5,.1);
		font-family: "Arial Narrow", "Helvetica Neue", "メイリオ";
		font-size: 11em;
		font-weight: 600;
		position: absolute;
		bottom: 55px;
		right: 0;
		left: 0;
	}
	div.top_about div.strength div.strength03 img {
		max-width: 120px;
	}
	div.top_about div.strength div.strength03 p::before {
		content: '03';
		color: rgba(242,68,5,.1);
		font-family: "Arial Narrow", "Helvetica Neue", "メイリオ";
		font-size: 11em;
		font-weight: 600;
		position: absolute;
		bottom: 55px;
		right: 0;
		left: 0;
	}
	div.top_about div.strength p {
		color: #333333;
	}
	div.top_about_pricedeadline {
		max-width: 1200px;
		width: calc(100vw - 40px);
		margin: 0 auto 0!important;
		padding: 150px 0 0;
		background-color: #0367A6;
		position: relative;
	}
	div.top_about_pricedeadline::before {
		content: 'PRICE AND DELIVERY TIME';
		font-family: "Arial Narrow", "Helvetica Neue", "メイリオ";
		font-size: min(90px, 6vw);
		font-weight: 600;
		color: rgba(255,255,255, .2);
		text-align: center;
		letter-spacing: 0;
		position: absolute;
		top: 40px;
		right: 0;
		left: 0;
	}
	div.top_about_pricedeadline > div > a {
		background-color: #ffffff;
		border-radius: 30px;
		margin: 50px 20px;
		padding: 40px 30px 30px 60px;
		justify-content: space-evenly;
	}
	div.top_about_pricedeadline > div > a:hover {
		background-color: #DBEAFD;
		transition: .5s;
	}
	div.top_about_pricedeadline div.text {
		max-width: 280px;
	}
	div.top_about_pricedeadline div.image {
		max-width: 100px;
		min-width: 90px;
		height: 130px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.top_about_pricedeadline h3 {
		font-size: 1.4em;
		position: relative;
		text-align: left;
		margin: 0 0 30px 0;
		padding: 0 0 0 60px;
	}
	div.top_about_pricedeadline h3::before {
		content: '';
		width: 40px;
		height: 40px;
		background-color: #0367A6;
		border-radius: 50%;
		position: absolute;
		top: -5px;
		left: 0;
	}
	div.top_about_pricedeadline div.price h3::after {
		content: '';
		width: 25px;
		height: 25px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: -4px;
		left: 7px;
	}
	div.top_about_pricedeadline div.deadline h3::after {
		content: '';
		width: 25px;
		height: 25px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: -4px;
		left: 7px;
	}
	div.top_about_pricedeadline p {
		color: #333333;
		text-align: left;
		text-wrap: nowrap;
	}
	div.top_about_pricedeadline > div > div figure {
		width: 120px;
		height: 120px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.top_about_pricedeadline  > div > div img 
	{
		max-width: 100px;
	}
	/*ボタン*/
	div.top_service div.swell-block-button.is-style-btn_normal.about {
		position: absolute;
		right: 0;
		left: 0;
		top: -230px;
		z-index: 9;
	}
	div.top_service div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
		z-index: 9;
	}
	div.top_service div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
		z-index: 99;
	}
	div.top_service div.swell-block-button.is-style-btn_normal a {
		min-width: auto;
		height: 70px;
		color: #021F59;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 120px 24px 30px;
		position: relative;
	}
	/*トップ-事業内容*/
	div.top_service {
		position: relative;
		text-align: center;
		padding-bottom: 250px;
	}
	div.top_service::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #FFFFFF;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		right: 0;
		left: 0;
		top: -200px;
		z-index: 1;
	}
	div.top_service > div {
		z-index: 2;
	}
	div.top_service h2 {
		font-size: 2.6em;
		margin: 0 0 30px;
	}
	div.top_service p.en {
		font-size: 1.5em;
		font-weight: 600;
		color: #F24405;
		padding: 0 0 30px;
	}
	div.top_service_inner div.image {
		max-width: 500px;
	}
	div.top_service_inner div.image img {
	}
	div.top_service_inner div.text {
		max-width: 700px;
		text-align: left;
		padding: 0 0 0 20px;
	}
	div.top_service_inner div.text p {
		line-height: 2.0em;
	}
	div.top_service_inner div.text ul {
		padding: 10px 0 30px 0;
	}
	.swell-block-linkList.is-style-default {
		--the-color: var(--color_main);
		--the-gap: 0;
	}
	div.top_service_inner div.text li {
		border-bottom: 1px dotted #333333;
		position: relative;
	}
	div.top_service_inner div.text li a {
		padding: 24px 0 20px 50px;
	}
	div.top_service_inner div.text li a span {
		font-size: 1.1em;
		font-weight: 600;
	}
	div.top_service_inner div.text li:last-child {
		border-bottom: 0px dotted #333333;
	}
	div.top_service_inner div.text li::before {
		content: '';
		width: 26px;
		height: 26px;
		background-color: #0367A6;
		border-radius: 50%;
		position: absolute;
		top: 22px;
		left: 0px;
		z-index: 9;
	}
	div.top_service_inner div.text li::after {
		content: '';
		width: 13px;
		height: 13px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 25px;
		left: 7px;
		z-index: 10;
	}
	div.top_service_inner div.text li a:hover {
		background-color: var(--swl-color_hov_gray);
	}
	/*ボタン*/
	div.top_service_inner div.text div.swell-block-button.is-style-btn_normal {
		text-align: left;
	}
	/*トップ-サステナビリティ*/
	div.top_sustainability {
		background-color: #E5EEF6;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		padding-top: 50px;
		padding-bottom: 300px;
		display: block;
		position: relative;
		z-index: 1;
	}
	div.top_sustainability::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #E5EEF6;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		top: -150px;
		z-index: 1;
	}
	div.top_sustainability > div {
		width: 100%;
		height: 100%;
		text-align: center;
		position: relative;
		z-index: 2;
	}
	div.top_sustainability div.top_sustainability_wrap {
		background-color: #CEE0EE;
		width: 150vw;
		max-width: 150vw;
		height: 700px;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		padding-bottom: 300px;
		display: block;
		position: relative;
		z-index: 1;
	}
	div.top_sustainability div.top_sustainability_wrap::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #CEE0EE;
		width: 120vw;
		max-width: 120vw;
		margin-left: calc(60% - 75vw);
		margin-right: calc(60% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 600px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		top: -190px;
		left: 0;
		z-index: 1;
	}
	div.top_sustainability div.top_sustainability_wrap::after {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #CEE0EE;
		width: 120vw;
		max-width: 120vw;
		margin-left: calc(60% - 75vw);
		margin-right: calc(60% - 75vw);
		border-bottom-left-radius: 50%;
		border-bottom-right-radius: 50%;
		height: 600px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		bottom: -130px;
		left: 0;
		z-index: 1;
	}
	div.top_sustainability div.top_sustainability_wrap_inner {
		background-color: initial;
		width: 150vw;
		max-width: 150vw;
		height: 500px;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		padding-bottom: 300px;
		display: block;
		position: relative;
		top: 300px;
		z-index: 2;
	}
	div.top_sustainability div.top_sustainability_wrap_inner::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #B9D2E7;
		width: 120vw;
		max-width: 120vw;
		margin-left: calc(60% - 75vw);
		margin-right: calc(60% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 500px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		top: -430px;
		left: 0;
		z-index: 1;
	}
	div.top_sustainability div.top_sustainability_wrap_inner::after {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #B9D2E7;
		width: 115vw;
		max-width: 115vw;
		margin-left: calc(62% - 75vw);
		margin-right: calc(62% - 75vw);
		border-bottom-left-radius: 50%;
		border-bottom-right-radius: 50%;
		height: 500px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		bottom: 20px;
		left: 0;
		z-index: 1;
	}
	div.top_sustainability div.top_sustainability_wrap_inner > div {
		max-width: 1200px;
		width: calc(100vw - 40px);
		margin: 50px auto!important;
		position: relative;
		top: -350px;
		z-index: 3;
	}	
	div.top_sustainability .wp-block-column {
		margin: 0 auto!important;
	}
	div.top_sustainability h2 {
		font-size: 2.6em;
		margin: 0 0 30px;
	}
	div.top_sustainability p.en {
		font-size: 1.5em;
		font-weight: 600;
		color: #F24405;
		padding: 0 0 30px;
	}
	div.top_sustainability_inner {
		margin: 0;
	}
	div.top_sustainability_inner > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.top_sustainability_inner div.space {
		padding-top: 100px;
	}
	div.top_sustainability a:hover div.sustainability01, div.top_sustainability a:hover div.sustainability02, div.top_sustainability a:hover div.sustainability03 {
		filter: brightness(130%);
		transition: .5s;
	}
	div.top_sustainability_inner div.sustainability01 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		background-color: #FFFFFF;
		border-radius: 50%;
	}
	div.top_sustainability div.sustainability01 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.top_sustainability div.sustainability02 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		background-color: #FFFFFF;
		border-radius: 50%;
	}
	div.top_sustainability div.sustainability02 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.top_sustainability div.sustainability03 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		background-color: #FFFFFF;
		border-radius: 50%;
	}
	div.top_sustainability div.sustainability03 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.top_sustainability figure {
		max-width: 150px;
	}
	div.top_sustainability h3 {
		margin: 0;
	}
	div.top_sustainability h3 a {
		font-size: 0.85em;
		color: #021F59;
		margin: 0;
	}
	/*ボタン*/
	div.top_company div.swell-block-button.is-style-btn_normal.sustainability {
		position: absolute;
		right: 0;
		left: 0;
		top: -230px;
		z-index: 9;
	}
	div.top_company div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
		z-index: 9;
	}
	div.top_company div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
		z-index: 99;
	}
	div.top_company div.swell-block-button.is-style-btn_normal a {
		min-width: auto;
		height: 70px;
		color: #021F59;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 120px 24px 30px;
		position: relative;
	}
	/*トップ-会社案内*/
	div.top_company {
		position: relative;
		text-align: center;
		padding-bottom: 250px;
	}
	div.top_company::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #FFFFFF;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		right: 0;
		left: 0;
		top: -200px;
		z-index: 1;
	}
	div.top_company > div {
		z-index: 2;
	}
	div.top_company h2 {
		font-size: 2.6em;
		margin: 0 0 30px;
	}
	div.top_company p.en {
		font-size: 1.5em;
		font-weight: 600;
		color: #F24405;
		padding: 0 0 30px;
	}
	div.top_company_inner div.image {
		max-width: 500px;
	}
	div.top_company_inner div.image img {
	}
	div.top_company_inner div.text {
		max-width: 700px;
		text-align: left;
		padding: 0 0 0 20px;
	}
	div.top_company_inner div.text p {
		line-height: 2.0em;
	}
	div.top_company_inner div.text ul {
		padding: 10px 0 30px 0;
		flex-direction: row;
		align-items: start;
	}
	div.top_company_inner div.text ul:after {
		content: '';
		display: block;
		width: 50%;
	}
	div.top_company_inner div.text li {
		width: 48%;
		border-bottom: 1px dotted #333333;
		position: relative;
		margin: 0 0.5px;
	}
	div.top_company_inner div.text li:last-child {
		border-bottom: 0px dotted #333333;
	}
	div.top_company_inner div.text li::before {
		content: '';
		width: 26px;
		height: 26px;
		background-color: #0367A6;
		border-radius: 50%;
		position: absolute;
		top: 22px;
		left: 0px;
		z-index: 9;
	}
	div.top_company_inner div.text li::after {
		content: '';
		width: 13px;
		height: 13px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 25px;
		left: 7px;
		z-index: 10;
	}
	div.top_company_inner div.text li a {
		padding: 24px 0 20px 44px;
	}
	div.top_company_inner div.text li a:hover {
		background-color: var(--swl-color_hov_gray);
	}
	div.top_company_inner div.text li a span {
		font-size: 1.1em;
		font-weight: 600;
	}
	/*ボタン*/
	div.top_company_inner div.text div.swell-block-button.is-style-btn_normal {
		text-align: left;
	}
	/*トップ-採用情報*/
	div.top_recruit {
		background-color: #021F59;
		width: 150vw;
		color: #FFFFFF;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		padding-bottom: 300px;
		display: block;
		position: relative;
		z-index: 1;
	}
	div.top_recruit::before {
		content: '';
		text-align: center;
		background-color: #021F59;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		top: -150px;
		z-index: 1;
	}
	div.top_recruit > div {
		max-width: 1200px;
		width: calc(100vw - 40px);
		text-align: center;
		position: relative;
		z-index: 2;
	}
	div.top_recruit .wp-block-column {
		margin: 0 auto!important;
	}
	div.top_recruit h2 {
		font-size: 2.6em;
		margin: 0 0 30px;
	}
	div.top_recruit p.en {
		font-size: 1.5em;
		font-weight: 600;
		color: #FFFFFF;
		padding: 0 0 30px;
	}
	div.top_recruit_inner {
		max-width: 960px;
		margin: 50px auto;
		flex-wrap: wrap!important;
		justify-content: space-evenly;
	}
	div.top_recruit div.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		flex-basis: 30%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.top_recruit_inner a {
		width: 100%;
		max-width: 250px;
		height: 160px;
	}
	div.top_recruit_inner a:hover {
		background-color: #FFFFFF;
		transition: .5s;
	}
	div.top_recruit_inner a:hover div.recruit_box::before {
		display: none;
	}
	div.top_recruit_inner a:hover div.recruit_box.detail {
		background-color: #FFFFFF;
	}
	div.top_recruit_inner a:hover div.recruit_box.detail h3 {
		color: #021F59;
	}
	div.top_recruit_inner div.recruit_box {
		width: 100%;
		max-width: 250px;
		height: 160px;
		background-color: #FFFFFF;
		border-radius: 0 30px;
		position: relative;
	}
	div.top_recruit_inner div.recruit_box.detail {
		width: 100%;
		max-width: 250px;
		height: 160px;
		background-color: #021F59;
		border: 2px solid #FFFFFF;
		border-radius: 0 30px;
		position: relative;
	}
	div.top_recruit_inner div.recruit_box::before {
		content: '';
		width: 25px;
		height: 25px;
		background-color: #F24405;
		aspect-ratio: cos(30deg);
		clip-path: polygon(0 100%,100% 100%,100% 0);
		position: absolute;
		bottom: 0;
		right: 0;
		z-index: 3;
	}
	div.top_recruit_inner div.recruit_box > div {
		display: flex;
		flex-direction: column;
	}
	div.top_recruit_inner div.recruit_box img {
		max-width: 80px;
	}
	div.top_recruit_inner h3 {
		font-size: 1.3em;
		color: #021F59;;
		margin: 0;
		right: 0;
	}
	div.top_recruit_inner div.recruit_box.detail h3 {
		color: #FFFFFF;
	}
	div.top_recruit_inner div.recruit_box.detail::before {
		display: none;
	}
	/*トップ-お知らせ*/
	div.top_news {
		position: relative;
		text-align: center;
		padding-bottom: 180px;
	}
	div.top_news::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #FFFFFF;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		right: 0;
		left: 0;
		top: -200px;
		z-index: 1;
	}
	div.top_news > div {
		z-index: 2;
	}
	div.top_news h2 {
		font-size: 2.6em;
		margin: 0 0 30px;
	}
	div.top_news p.en {
		font-size: 1.5em;
		font-weight: 600;
		color: #F24405;
		padding: 0 0 30px;
	}
	/*一覧*/
	div.top_news ul {
		list-style: none;
	}
	div.top_news div.swellx-posts-list ul.c-list.c-list--simple {
		border-top: 1px solid var(--color_border);
		padding: 0;
	}
	div.top_news div.swellx-posts-list  ul.c-list.c-list--simple li {
		text-align: left;
		border-bottom: 1px solid var(--color_border);
		display: flex;
		flex-wrap: nowrap!important;
		padding: 1em .25em;
		position: relative;
	}
	div.top_news div.swellx-posts-list .c-list__text.swellx-list-cat {
		font-size: 0.9em;
		color: #FFFFFF;
		background-color: #035AA6;
		padding: 4px 15px 5px;
		position: absolute;
		top: 11px;
	}
	div.top_news div.swellx-posts-list time {
		min-width: 280px;
		font-size: 0.9em;
		padding: 0 50px 0 130px;
	}
	div.top_news div.swellx-posts-list li.c-list__item a {
		text-decoration: underline;
	}
	/*ボタン*/
	div.top_news div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
	}
	div.top_news div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.top_news div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.top_news div.swell-block-button.is-style-btn_normal a {
		min-width: auto;
		height: 70px;
		color: #021F59;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 120px 24px 30px;
		position: relative;
	}

	/***************
	丸久化学について
	***************/

	/*ページTOP*/
	body#about div.l-topTitleArea__body.l-container h1:before {
		content: 'ABOUT MARUKYU';
	}
	body#about div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/about_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	div.about_top {
		margin-bottom: 200px;
	}
	div.about_top p.lead {
		font-size: 1.6em;
		font-weight: 600;
		line-height: 1.6em;
		margin-bottom: 2.0em;
	}
	div.about_top_inner > div {
		width: 30%;
	}
	/*ボタン*/
	div.about_top_inner div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
	}
	div.about_top_inner div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.about_top_inner div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.about_top_inner div.swell-block-button.is-style-btn_normal a {
		min-width: 270px;
		height: 70px;
		color: #021F59;
		text-align: left;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 110px 24px 30px;
		position: relative;
	}
	/*強み*/
	div.about_strength {
		background-color: #0367A6;
		width: 150vw;
		max-width: 150vw;
		text-align: center;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		padding: 0 0 100px 0;
		position: relative;
		z-index: 0;
	}
	div.about_strength > div {
		max-width: 1200px;
		width: 150vw;
		height: 1200px;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		position: relative;
		position: relative;
		z-index: 2;
	}
	div.about_strength .wp-block-column {
		margin: 0 auto!important;
	}
	div.about_strength::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #0367A6;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		top: -150px;
		z-index: 0;
	}
	div.about_strength h2 {
		font-size: 2.6em;
		color: #FFFFFF;
		margin: 0 0 160px;
	}
	div.about_strength h2::before {
		content: '';
		width: 30px;
		height: 30px;
		border-radius: 50%;
		background-color: #FFFFFF;
		position: absolute;
		right: 0;
		left: calc(50% - 15px);
		top: 2.5em;
	}
	div.about_strength h2::after {
		content: '';
		width: 18px;
		height: 18px;
		border-radius: 50%;
		background-color: #FFFFFF;
		position: absolute;
		right: 0;
		left: calc(50% - 9px);
		top: 3.8em;
	}
	div.about_strength p {
		color: #FFFFFF;
	}
	div.about_strength_inner {
		max-width: 900px;
		width: calc(100vw - 40px);
		margin: 50px auto;
	}
	div.about_strength_inner > div > div {
		background-color: #FFFFFF;
		border-radius: 30px;
		margin: 0 0 40px 0;
		padding: 30px 50px 30px 0;
	}
	div.about_strength_inner > div > div > div {
		align-items: center;
		justify-content: center;
	}
	div.about_strength_inner div.number {
		max-width: 230px;
		display: flex;
		align-items: center;
		justify-content: start;
	}
	div.about_strength_inner div.number p {
		font-family: "Arial Narrow", "Helvetica Neue", "メイリオ";
		font-size: 6.0em;
		font-weight: 600;
		letter-spacing: 0;
		color: #F24405;
		padding: 0 0 0 80px;
		position: relative;
		display: flex;
		align-items: center;
		justify-content: start;
	}
	div.about_strength_inner div.number p::before {
		content: '';
		width: 50px;
		height: 8px;
		background-color: #F24405;
		position: absolute;
		left: 0;
	}
	div.about_strength_inner div.text {
		text-align: left;
		color: #333333;
		display: flex;
		flex-direction: column;
		align-items: start;
		justify-content: center;
	}
	div.about_strength_inner div.text h3 {
		color: #035AA6;
		margin: 0 0 20px 0;
	}
	div.about_strength_inner div.text p {
		color: #333333;
	}
	div.about_strength_inner div.image{
		max-width: 150px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.about_strength_inner div.image figure {
		max-width: 200px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	div.about_strength_inner div.strength01 div.image img {
		width: 200px;
	}
	div.about_strength_inner div.strength02 div.image img {
		width: 170px;
	}
	div.about_strength_inner div.strength03 div.image img {
		width: 140px;
	}
	/*価格*/
	div.about_price {
		position: relative;
		text-align: center;
		padding-bottom: 280px;
	}
	div.about_price::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #FFFFFF;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		right: 0;
		left: 0;
		top: -150px;
		z-index: 1;
	}
	div.about_price > div {
		z-index: 2;
	}
	div.about_price h2 {
		font-size: 2.6em;
		margin: 0 0 160px;
		position: relative;
	}
	div.about_price h2::before {
		content: '';
		width: 30px;
		height: 30px;
		border-radius: 50%;
		background-color: #035AA6;
		position: absolute;
		right: 0;
		left: calc(50% - 15px);
		top: 2.5em;
	}
	div.about_price h2::after {
		content: '';
		width: 18px;
		height: 18px;
		border-radius: 50%;
		background-color: #035AA6;
		position: absolute;
		right: 0;
		left: calc(50% - 9px);
		top: 3.8em;
	}
	div.about_price p.sub {
		font-size: 1.5em;
		font-weight: 600;
		color: #F24405;
		text-align: center;
		padding: 0 0 30px;
	}
	div.about_price p {
		text-align: left;
		line-height: 1.8em;
	}
	div.about_price_inner {
		border: 2px solid rgba(3,90,166,.7);
		border-radius: 30px;
		margin: 50px 0;
		padding: 50px;
	}
	div.about_price_inner h3 {
		font-size: 1.6em;
		color: #035AA6;
	}
	div.about_price_inner p {
		line-height: 2.0em;
	}
	div.about_price_inner p.lead {
		font-size: 1.2em;
		font-weight: 600;
	}
	div.about_price_inner figure {
		padding: 50px 10px 0;
	}
	/*ボタン*/
	div.about_price_inner div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
		text-align: right;
	}
	div.about_price_inner div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.about_price_inner div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.about_price_inner div.swell-block-button.is-style-btn_normal a {
		min-width: auto;
		height: 70px;
		color: #021F59;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 120px 24px 30px;
		position: relative;
	}
	/*納期*/
	div.about_deadline {
		position: relative;
		text-align: center;
	}
	.post_content>* {
		clear: both;
		margin-bottom: 0;
	}
	div.about_deadline::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #E5EEF6;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		right: 0;
		left: 0;
		top: -200px;
		z-index: 1;
	}
	div.about_deadline div.about_deadline_wrap {
		background-color: #E5EEF6;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1400px;
		justify-content: center;
	}
	div.about_deadline div.about_deadline_wrap > div {
		max-width: 1200px;
		text-align: center;
		position: relative;
		z-index: 1;
	}
	div.about_deadline h2 {
		font-size: 2.6em;
		margin: 0 0 160px;
		position: relative;
	}
	div.about_deadline h2::before {
		content: '';
		width: 30px;
		height: 30px;
		border-radius: 50%;
		background-color: #035AA6;
		position: absolute;
		right: 0;
		left: calc(50% - 15px);
		top: 2.5em;
	}
	div.about_deadline h2::after {
		content: '';
		width: 18px;
		height: 18px;
		border-radius: 50%;
		background-color: #035AA6;
		position: absolute;
		right: 0;
		left: calc(50% - 9px);
		top: 3.8em;
	}
	div.about_deadline p.sub {
		font-size: 1.5em;
		font-weight: 600;
		color: #F24405;
		text-align: center;
		padding: 0 0 30px;
	}
	div.about_deadline p.main {
		max-width: 1200px;
		width: calc(100vw - 40px);
		margin: 50px auto !important;
		text-align: left;
		line-height: 1.8em;
	}
	div.about_deadline_inner {
		background-color: #E5EEF6;
		max-width: 1200px;
		width: calc(100vw - 40px);
		margin: 50px auto !important;
	}
	div.about_deadline_inner > div {
		background-color: #FFFFFF;
		border-radius: 30px;
		padding: 50px;
	}
	div.about_deadline_inner p.pre {
		font-size: 1.2em;
		font-weight: 600;
	}
	div.about_deadline_inner h3 {
		font-size: 1.3em;
		color: #035AA6;
		text-align: left;
		margin: 0;
	}
	div.about_deadline_inner p {
		line-height: 2.0em;
		text-align: left;
	}
	div.about_deadline_inner figure {
		padding: 50px 10px 0;
	}

	/***************
	事業内容
	***************/

	/*ページTOP*/
	body#service div.l-topTitleArea__body.l-container h1:before {
		content: 'SERVICE';
	}
	body#service div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/service_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	div.service_top {
		margin-bottom: 100px;
	}
	div.service_top p.lead {
		font-size: 1.6em;
		font-weight: 600;
		line-height: 1.6em;
		margin-bottom: 2.0em;
	}
	div.service_top_inner > div {
		width: 30%;
	}
	/*ボタン*/
	div.service_top_inner div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
	}
	div.service_top_inner div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.service_top_inner div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.service_top_inner div.swell-block-button.is-style-btn_normal a {
		min-width: 270px;
		height: 70px;
		color: #021F59;
		text-align: left;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 110px 24px 30px;
		position: relative;
	}
	/*原料販売*/
	div.service_materials {
		border: 2px solid rgba(3,90,166,.7);
		border-radius: 30px;
		margin: 50px 0;
		padding: 50px;
	}
	div.service_materials h2 {
		font-size: 2.0em;
		color: #333333;
		text-align: center;
	}
	div.service_materials div.image {
		max-width: 400px;
		padding: 0 20px 0 0;
	}
	div.service_materials div.image figure {
		border: 1px solid #CCCCCC;
	}
	div.service_materials div.text {
		max-width: 800px;
		min-width: 400px;
	}
	div.service_materials p {
		line-height: 2.0em;
	}
	div.service_materials p.lead {
		font-size: 1.2em;
		font-weight: 600;
	}
	/*ボタン*/
	div.service_materials div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
		text-align: right;
	}
	div.service_materials div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.service_materials div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.service_materials div.swell-block-button.is-style-btn_normal a {
		min-width: 270px;
		height: 70px;
		color: #021F59;
		text-align: left;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 110px 24px 30px;
		position: relative;
	}
	/*原料名*/
	div.service_materials h3 {
		font-size: 1.6em;
		color: #333333;
		text-align: center;
		margin: 60px 0 30px;
	}
	div.service_materials_name {
		background-color: #E5EEF6;
		border-radius: 30px;
		margin: 30px 0;
		padding: 50px;
	}
	div.service_materials_name h4 {
		font-size: 1.3em;
		color: #333333;
	}
	div.service_materials_name ul {
		list-style: none;
		margin: 0;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: start;
	}
	div.service_materials_name ul li {
		height: 90px;
		font-size: 0.7em;
		line-height: 1.2em;
		background-color: #FFFFFF;
		border: 1px solid #333333;
		margin: 0 10px 10px 0;
		padding: 10px 20px;
		text-align: center;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	div.service_materials_name ul li strong {
		font-family: "Arial Narrow", "Helvetica Neue", "メイリオ";
		font-size: 2.2em;
		font-weight: 300;
		line-height: 1.0em;
		padding: 0 0 10px 0;
		display: block;
	}
	/*リサイクル事業*/
	div.service_recycle {
		border: 2px solid rgba(3,90,166,.7);
		border-radius: 30px;
		margin: 50px 0;
		padding: 50px;
	}
	div.service_recycle h2 {
		font-size: 2.0em;
		color: #333333;
		text-align: center;
	}
	div.service_recycle div.image {
		max-width: 400px;
		padding: 0 20px 0 0;
	}
	div.service_recycle div.image figure {
		border: 1px solid #CCCCCC;
	}
	div.service_recycle div.image img {
		padding: 50px;
	}
	div.service_recycle div.text {
		max-width: 800px;
		min-width: 400px;
	}
	div.service_recycle p.lead {
		font-size: 1.2em;
		font-weight: 600;
	}
	div.service_recycle p {
		line-height: 2.0em;
	}
	/*ボタン*/
	div.service_recycle div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
		text-align: right;
	}
	div.service_recycle div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.service_recycle div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.service_recycle div.swell-block-button.is-style-btn_normal a {
		min-width: 270px;
		height: 70px;
		color: #021F59;
		text-align: left;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 110px 24px 30px;
		position: relative;
	}
	/*リサイクルの流れ*/
	div.service_recycle h3 {
		font-size: 1.6em;
		color: #333333;
		text-align: center;
		margin: 60px 0 30px;
	}
	div.service_recycle_flow {
		justify-content: space-between;
		display: relative;
	}
	div.service_recycle_flow > div {
		position: relative;
	}
	div.service_recycle_flow > div::before {
		content: '';
		width: 25px;
		height: 25px;
		display: block;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_black_01.png);
		background-size: cover;
		position: absolute;
		top: 7vw;
		right:-2.5vw;
	}
	div.service_recycle_flow > div:last-child::before {
		display: none;
	}
	div.service_recycle_flow > div.flow01 {
		width: 20%;
		max-width: 250px;
	}
	div.service_recycle_flow > div.flow02 {
		width: 45%;
		max-width: 450px;
	}
	div.service_recycle_flow > div.flow02 div.left img {
		width: 100%;
		object-position: right center;
	}
	div.service_recycle_flow > div.flow02 div.right img {
		object-position: right top;
	}
	div.service_recycle_flow > div.flow03 {
		width: 20%;
		max-width: 250px;
	}
	div.service_recycle_flow > div figure {
		border: 1px solid #CCCCCC;
	}
	div.service_recycle_flow > div img {
		height: 280px;
		width: auto;
		object-fit: cover;
	}
	div.service_recycle_flow > div.flow01 figure img {
		padding: 20px 0;
	}
	div.service_recycle_flow > div.flow03 figure img {
		padding: 20px 0;
	}
	div.service_recycle_flow > div > div {
		gap: 0!important;
	}
	div.service_recycle_flow p {
		font-size: 0.9em;
	}
	/*製品加工*/
	div.service_process {
		border: 2px solid rgba(3,90,166,.7);
		border-radius: 30px;
		margin: 50px 0;
		padding: 50px;
	}
	div.service_process h2 {
		font-size: 2.0em;
		color: #333333;
		text-align: center;
	}
	div.service_process div.image {
		max-width: 400px;
		padding: 0 20px 0 0;
	}
	div.service_process div.image figure {
		border: 1px solid #CCCCCC;
	}
	div.service_process div.text {
		max-width: 800px;
		min-width: 400px;
	}
	div.service_process p.lead {
		font-size: 1.2em;
		font-weight: 600;
	}
	div.service_process p {
		line-height: 2.0em;
	}
	/*ボタン*/
	div.service_process div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
		text-align: right;
	}
	div.service_process div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.service_process div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.service_process div.swell-block-button.is-style-btn_normal a {
		min-width: 270px;
		height: 70px;
		color: #021F59;
		text-align: left;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 110px 24px 30px;
		position: relative;
	}
	/*リサイクルの流れ*/
	div.service_process h3 {
		font-size: 1.6em;
		color: #333333;
		text-align: center;
		margin: 60px 0 30px;
	}
	div.service_process_case {
		justify-content: space-between;
		position: relative;
		margin: 30px 0 0 0;
	}
	div.service_process_case > div {
		width: 30%;
		max-width: 320px;
	}
	div.service_process_case > div figure {
		border: 1px solid #CCCCCC;
	}
	div.service_process_case_case p {
		font-size: 0.9em;
	}
	div.service_process:last-child::before {
		display: none;
	}

	/***************
	実績・導入事例
	***************/
	/*ページTOP*/
	body#case div.l-topTitleArea__body.l-container h1:before {
		content: 'CASE';
	}
	body#case div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/case_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	/*一覧*/
	div.casestudy_wrap {
		max-width: 1200px;
		width: 100%;
		margin: 0 auto 100px;
	}
	div.casestudy_wrap li.c-cptList__item {
		margin: 0 0 5em!important;
		display: grid;
		grid-template-columns: 350px auto!important;
		gap: 2em!important;
	}
	div.casestudy_wrap li.c-cptList__item div:first-child {
		height: 100%;
		border: 1px solid #CCCCCC;
		padding: 10px;
		display: flex;
		justify-content: center;
		align-items: center;
	}
	div.casestudy_wrap h2 {
		color: #0367A6;
		padding: 10px 0 20px;
	}
	div.casestudy_wrap h3 {
		font-size: 1.1em;
		margin: 2em 0 1.5em;
	}
	div.casestudy_wrap nav.pagination.c-cptList__pagination ul {
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: rgba(255,255,255,0);
		box-shadow: none;
	}
	div.casestudy_wrap nav.pagination.c-cptList__pagination a.next.page-numbers, div.casestudy_wrap nav.pagination.c-cptList__pagination a.prev.page-numbers {
		display: none;
	}
	div.casestudy_wrap li::marker {
		display: none!important;
		font-size: 0px;
	}

	/***************
	サステナビリティ
	***************/

	/*ページTOP*/
	body#sustainability div.l-topTitleArea__body.l-container h1:before {
		content: 'SUSTAINABILITY';
	}
	body#sustainability div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/sustainability_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	div.sustainability_top {
		margin-bottom: 200px;
	}
	div.sustainability_top_inner > div {
		width: 30%;
	}
	/*ボタン*/
	div.sustainability_top_inner div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
	}
	div.sustainability_top_inner div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 17px;
		right: 22px;
	}
	div.sustainability_top_inner div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 19px;
		right: 29px;
	}
	div.sustainability_top_inner div.swell-block-button.is-style-btn_normal a {
		min-width: 270px;
		height: 70px;
		color: #021F59;
		text-align: left;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 21px 90px 24px 30px;
		position: relative;
	}
	/*メッセージ*/
	div.sustainability_message {
		background-color: #E5EEF6;
		width: 150vw;
		max-width: 150vw;
		text-align: center;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		position: relative;
		z-index: 0;
	}
	div.sustainability_message > div {
		max-width: 1200px;
		text-align: center;
		position: relative;
		z-index: 2;
	}
	div.sustainability_message .wp-block-column {
		margin: 0 auto!important;
	}
	div.sustainability_message::before {
		content: '';
		text-align: center;
		padding: 150px 0 0 0;
		background-color: #E5EEF6;
		width: 150vw;
		max-width: 150vw;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		border-top-left-radius: 50%;
		border-top-right-radius: 50%;
		height: 1000px;
		padding-left: 25vw;
		padding-right: 25vw;
		position: absolute;
		top: -150px;
		z-index: 0;
	}
	div.sustainability_message > div {
		width: 150vw;
		height: 900px;
		margin-left: calc(50% - 75vw);
		margin-right: calc(50% - 75vw);
		padding: 100px 0 0 0;
		position: relative;
	}
	div.sustainability_message h2 {
		font-size: 2.2em;
		color: #035AA6;
		margin: 0 0 80px;
		position: relative;
	}
	div.sustainability_message h2::before {
		content: '';
		width: 100px;
		height: 100px;
		background-color: #FFFFFF;
		border-radius: 50%;
		position: absolute;
		left: calc(50% - 50px);
		top: -160px;
	}
	div.sustainability_message h2::after {
		content: '';
		width: 60px;
		height: 70px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/top_sustainability_image01.png);
		background-size: contain;
		position: absolute;
		left: calc(50% - 28px);
		top: -147px;
	}
	div.sustainability_message p {
		font-weight: 600;
		line-height: 2.0em;
		padding: 0 0 30px;
		position: relative;
	}
	div.sustainability_message p.message01::before {
		content: '';
		width: 30px;
		height: 30px;
		border-radius: 50%;
		background-color: #FFFFFF;
		position: absolute;
		right: 0;
		left: calc(50% - 15px);
		top: -120px;
	}
	div.sustainability_message p.message01::after {
		content: '';
		width: 18px;
		height: 18px;
		border-radius: 50%;
		background-color: #FFFFFF;
		position: absolute;
		right: 0;
		left: calc(50% - 9px);
		top: -60px;
	}
	/*環境への取り組み*/
	div.sustainability_environment {
		position: relative;
		text-align: center;
		padding-bottom: 280px;
		position: relative;
	}
	div.sustainability_environment::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #FFFFFF;
		border-radius: 0 150px 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 1000px;
		position: absolute;
		top: -100px;
		z-index: 1;
	}
	div.sustainability_environment > div {
		z-index: 2;
	}
	div.sustainability_environment h2 {
		font-size: 2.6em;
		margin: 0 0 160px;
		position: relative;
	}
	div.sustainability_environment h2::before {
		content: '';
		width: 30px;
		height: 30px;
		border-radius: 50%;
		background-color: #035AA6;
		position: absolute;
		right: 0;
		left: calc(50% - 15px);
		top: 2.5em;
	}
	div.sustainability_environment h2::after {
		content: '';
		width: 18px;
		height: 18px;
		border-radius: 50%;
		background-color: #035AA6;
		position: absolute;
		right: 0;
		left: calc(50% - 9px);
		top: 3.8em;
	}
	div.sustainability_environment p.sub {
		font-size: 1.4em;
		font-weight: 600;
		color: #F24405;
		text-align: center;
		padding: 0 0 30px;
	}
	div.sustainability_environment p {
		text-align: left;
		line-height: 1.8em;
	}
	div.sustainability_environment_inner {
		justify-content: space-between;
		margin: 0 0 50px 0;
	}
	div.sustainability_environment_inner > div {
		max-width: 550px;
		width: 45%;
	}
	div.sustainability_environment_inner h3 {
		font-size: 1.2rem;
		color: #021F59;
		text-align: left;
		margin: 0;
		padding: 30px 0 20px
	}
	div.sustainability_environment_inner figure {
		border: 1px solid #CCCCCC;
	}
	div.sustainability_environment_inner img {
		width: auto;
		height: 300px;
		object-fit: cover;
	}
	/*社会への取り組み*/
	div.sustainability_society {
		position: relative;
		text-align: center;
		padding-bottom: 139px;
		position: relative;
		z-index: 0;
	}
	div.sustainability_society::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #E5EEF6;
		border-radius: 150px 0 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 2000px;
		position: absolute;
		top: -100px;
		z-index: 1;
	}
	div.sustainability_society > div {
		z-index: 2;
	}
	div.sustainability_society h2 {
		font-size: 2.6em;
		margin: 0 0 160px;
		position: relative;
	}
	div.sustainability_society h2::before {
		content: '';
		width: 30px;
		height: 30px;
		border-radius: 50%;
		background-color: #035AA6;
		position: absolute;
		right: 0;
		left: calc(50% - 15px);
		top: 2.5em;
	}
	div.sustainability_society h2::after {
		content: '';
		width: 18px;
		height: 18px;
		border-radius: 50%;
		background-color: #035AA6;
		position: absolute;
		right: 0;
		left: calc(50% - 9px);
		top: 3.8em;
	}
	div.sustainability_society p.sub {
		font-size: 1.4em;
		font-weight: 600;
		color: #F24405;
		text-align: center;
		padding: 0 0 30px;
	}
	div.sustainability_society p {
		text-align: left;
		line-height: 1.8em;
	}
	div.sustainability_society_inner {
		margin: 0 0 50px 0;
	}
	div.sustainability_society_inner div.image {
		max-width: 400px;
		height: 250px;
		overflow: hidden;
		padding: 0 20px 0 0;
	}
	div.sustainability_society_inner div.image figure {
		max-width: 400px;
		height: 250px;
	}
	div.sustainability_society_inner div.image figure img {
		height: 250px;
		object-fit: cover;
	}
	div.sustainability_society_inner div.text {
		max-width: 800px;
		min-width: 450px;
		text-align: left;
	}
	div.sustainability_society_inner div.text h3 {
		margin: 0;
		padding: 10px 0 20px 0;
	}

	/***************
	会社案内
	***************/

	/*ページTOP*/
	body#company div.l-topTitleArea__body.l-container h1:before {
		content: 'COMPANY';
	}
	body#company div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/about_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	div.company_top {
		margin-bottom: 150px;
	}
	div.company_top .wp-block-columns {
		flex-wrap: wrap!important;
		justify-content: space-between
	}
	div.company_top .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		flex-basis: initial;
	}
	div.company_top_inner > div {
		width: 30%;
		max-width: 280px;
	}
	div.company_top_inner::after {
		content: '';
		display: block;
		width: 30%;
		min-width: 270px;
		max-width: 280px;
	}
	/*ボタン*/
	div.company_top_inner div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
	}
	div.company_top_inner div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.company_top_inner div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.company_top_inner div.swell-block-button.is-style-btn_normal a {
		min-width: 270px;
		max-width: 280px;
		height: 70px;
		color: #021F59;
		text-align: left;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 60px 24px 30px;
		position: relative;
	}
	/*社長挨拶*/
	div.company_message {
		width:100vw;
		margin-left:calc( ( 100% - 100vw ) / 2 );
		margin-bottom: 200px;
		padding: 0 0 0 42%;
		display: block;
		position: relative;
	}
	div.company_message:before {
		content: '';
		background-color: #E5EEF6;
		position: absolute;
		top: 0;
		left: 0;
		width: 27%;
		max-width: 400px;
		height: 120%;
	}
	div.company_message::after {
		content: 'MESSAGE';
		font-size: clamp(130px, 13.0em, 200px);
		font-weight: 900;
		letter-spacing: 0em;
		color: #FFFFFF;
		position: absolute;
		top: 0;
		left: 6%;
		transform: rotate(90deg);
		transform-origin: 10% 50%;
	}
	div.company_message > div.wp-block-column {
		max-width: 1200px;
		min-width: 600px;
		margin: 0 auto!important;
	}
	div.company_message h2 {
		color: #F24405;
		position: relative;
		padding: 20px 0 0 0;
	}
	div.company_message h3 {
		font-size: 1.9em;
		line-height: 1.6em;
		margin: 0 0 50px 0;
	}
	div.company_message figure.lead {
		max-width: 750px;
		margin: 0 auto;
		padding: 20px 0 70px;
	}
	div.company_message p {
		font-weight: 600;
		line-height: 2.4em;
		padding: 0 0 30px 0;
	}
	div.company_message figure.name {
		display: flex;
		justify-content: end;
		padding: 30px 20% 0 0;
	}
	div.company_message figure.name img {
		max-width: 200px;
	}
	/*経営理念*/
	div.company_philosophy {
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		position: relative;
		text-align: center;
		justify-content: center;
	}
	div.company_philosophy::before {
		content: '';
		width: 100vw;
		text-align: center;
		padding: 0;
		background-color: #035AA6;
		border-radius: 0 150px 0 0;
		height: 1000px;
		position: absolute;
		top: -100px;
		z-index: 1;
	}
	div.company_philosophy > div {
		max-width: 1200px;
		margin: 0 auto;
		z-index: 2;
	}
	div.company_philosophy h2 {
		color: #FFFFFF;
		font-size: 2.6em;
		padding: 20px 0 0;
	}
	div.company_philosophy_inner {
		margin: 70px 0;
	}
	div.company_philosophy_inner > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.company_philosophy_inner div.philosophy01 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		color: #035AA6;
		background-color: #FFFFFF;
		border-radius: 50%;
	}
	div.company_philosophy div.philosophy01 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.company_philosophy div.philosophy02 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		background-color: #FFFFFF;
		border-radius: 50%;
	}
	div.company_philosophy div.philosophy02 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.company_philosophy div.philosophy03 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		background-color: #FFFFFF;
		border-radius: 50%;
	}
	div.company_philosophy div.philosophy03 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.company_philosophy figure {
		max-width: 120px;
	}
	div.company_philosophy p {
		color: #FFFFFF;
		padding: 10px 0 0 0;
	}
	div.company_philosophy div.philosophy01 p, div.company_philosophy div.philosophy02 p, div.company_philosophy div.philosophy03 p {
		font-size: 1.25em;
		font-weight: 600;
		color: #035AA6;
		padding: 5px 0 0 0;
	}
	/*会社概要*/
	div.company_profile {
		position: relative;
		text-align: center;
		margin: 120px 0 0 0;
		padding-bottom: 0;
		position: relative;
		z-index: 1;
	}
	div.company_profile::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #FFFFFF;
		border-radius: 150px 0 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 2000px;
		position: absolute;
		top: 0;
		z-index: 1;
	}
	div.company_profile > div {
		z-index: 2;
	}
	div.company_profile h2 {
		font-size: 2.6em;
		padding: 120px 0 10px;
		position: relative;
	}
	div.company_profile table th, div.company_profile table td {
		border: 0px;
		background-color: #FFFFFF;
	}
	div.company_profile table {
		border-top: 1px solid #CCCCCC;
	}
	div.company_profile table th, div.company_profile table td {
		border-bottom: 1px solid #CCCCCC;
		padding: 20px 0;
	}
	div.company_profile table th {
		min-width: 200px;
		width: 20%;
	}
	div.company_profile table td {
		width: 80%;
	}
	/*アクセス*/
	div.company_access {
		position: relative;
		text-align: center;
		margin: 120px 0 0 0;
		padding-bottom: 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		position: relative;
		z-index: 1;
	}
	div.company_access::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #E5EEF6;
		border-radius: 0 150px 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 2000px;
		position: absolute;
		top: 0;
		z-index: 1;
	}
	div.company_access > div {
		z-index: 2;
	}
	div.company_access h2 {
		font-size: 2.6em;
		padding: 120px 0 10px;
		position: relative;
	}
	div.company_access iframe{
		right: 0;
	}
	div.company_access_inner {
		max-width: 800px;
		margin: 50px auto;
	}
	div.company_access_inner div.image {
		max-width: 400px;
		padding: 0 20px 0 0;
	}
	div.company_access_inner div.text {
		max-width: 600px;
		font-weight: 600;
		display: flex;
		flex-direction: column;
		align-items: start;
		justify-content: center;
		text-align: left;
	}
	div.company_access_inner div.text p.name {
		font-size: 2.0em;
	}
	div.company_access_inner div.text figure {
		max-width: 300px;
		padding: 0 0 15px 0;
	}
	/*プライバシーポリシー*/
	div.company_policy {
		position: relative;
		text-align: left;
		margin: 120px 0 0 0;
		padding-bottom: 0;
		position: relative;
		z-index: 1;
	}
	div.company_policy::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #FFFFFF;
		border-radius: 150px 0 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 1000px;
		position: absolute;
		top: 0;
		z-index: 1;
	}
	div.company_policy > div {
		padding: 0 0 150px 0;
		z-index: 2;
	}
	div.company_policy h2 {
		font-size: 2.6em;
		padding: 120px 0 10px;
		position: relative;
		text-align: center;
	}
	div.company_policy h3 {
		padding: 0 0 0 20px;
		position: relative;
	}
	div.company_policy h3::before {
		content: '';
		width: 5px;
		height: 35px;
		background-color: #035AA6;
		position: absolute;
		top: -2px;
		left: 0;
	}
	div.company_policy_inner {
		border: 2px solid #035AA6;
		margin: 50px 0;
		padding: 30px 50px 10px;
	}
	div.company_policy_inner strong {
		font-size: 1.1em;
		display: block;
		margin:10px 0 0 0;
	}

	/***************
	採用情報
	***************/

	/*ページTOP*/
	body#recruit div.l-topTitleArea__body.l-container h1:before {
		content: 'RECRUIT';
	}
	body#recruit div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/recruit_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	div.recruit_top {
		margin-bottom: 200px;
	}
	div.recruit_top .wp-block-columns {
		flex-wrap: wrap!important;
		justify-content: space-between
	}
	div.recruit_top .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		flex-basis: initial;
	}
	div.recruit_top_inner > div {
		width: 30%;
		max-width: 280px;
	}
	div.recruit_top_inner::after {
		content: '';
		display: block;
		width: 30%;
		min-width: 270px;
		max-width: 280px;
	}
	/*ボタン*/
	div.recruit_top_inner div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
	}
	div.recruit_top_inner div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.recruit_top_inner div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.recruit_top_inner div.swell-block-button.is-style-btn_normal a {
		min-width: 270px;
		max-width: 280px;
		height: 70px;
		color: #021F59;
		text-align: left;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 60px 24px 30px;
		position: relative;
	}
	/*メッセージ*/
	div.recruit_message {
		padding: 0 0 50px 0;
	}
	div.recruit_message div.image {
		max-width: 450px;
		padding: 0 20px 40px 0;
	}
	div.recruit_message div.image.right {
		max-width: 450px;
		padding: 0 0 40px 20px;
	}
	div.recruit_message div.text {
		max-width: 750px;
		padding: 0 0 40px 0;
	}
	div.recruit_message p {
		line-height: 1.8em;
	}
	div.recruit_message p.lead {
		font-size: 1.2em;
		font-weight: 600;
		padding: 0 0 20px 30px;
		position: relative;
	}
	div.recruit_message p.lead::before {
		content: '';
		width: 7px;
		height: 40px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/recrui_message_image0.png);
		background-size: cover;
		position: absolute;
		top: 0;
		left: 0;
	}
	/*求める人物像*/
	div.recruit_person {
		position: relative;
		text-align: center;
		padding-bottom: 0;
		position: relative;
		z-index: 0;
	}
	div.recruit_person::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #E5EEF6;
		border-radius: 150px 0 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 1000px;
		position: absolute;
		top: 0;
		z-index: 1;
	}
	div.recruit_person > div {
		z-index: 2;
	}
	div.recruit_person h2 {
		font-size: 2.6em;
		margin: 0;
		padding: 100px 0 50px 0;
		position: relative;
	}
	div.recruit_person_inner {
		margin: 70px 0;
	}
	div.recruit_person_inner > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.recruit_person div.person01 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		color: #035AA6;
		background-color: #FFFFFF;
		border: 4px solid #035AA6;
		border-radius: 50%;
	}
	div.recruit_person div.person01 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.recruit_person div.person02 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		background-color: #FFFFFF;
		border: 4px solid #035AA6;
		border-radius: 50%;
	}
	div.recruit_person div.person02 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.recruit_person div.person03 {
		width: 25vw;
		max-width: 250px;
		max-height: 250px;
		height: 25vw;
		background-color: #FFFFFF;
		border: 4px solid #035AA6;
		border-radius: 50%;
	}
	div.recruit_person div.person03 > div {
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.recruit_person figure {
		max-width: 90px;
	}
	div.recruit_person p {
		font-weight: 600;
		color: #333333;
		padding: 10px 0 0 0;
	}
	div.recruit_person div.person01 p, div.recruit_person div.person02 p, div.recruit_person div.person03 p {
		font-size: 1.1em;
		font-weight: 600;
		color: #035AA6;
		padding: 5px 0 0 0;
	}
	/*福利厚生*/
	div.recruit_benefits {
		position: relative;
		text-align: center;
		margin: 120px 0 0 0;
		padding-bottom: 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		padding: 0 0 100px 0;
		position: relative;
		z-index: 1;
	}
	div.recruit_benefits::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #021F59;
		border-radius: 0 150px 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 1100px;
		position: absolute;
		top: 0;
		z-index: 1;
	}
	div.recruit_benefits > div {
		z-index: 2;
	}
	div.recruit_benefits h2 {
		font-size: 2.6em;
		color: #FFFFFF;
		padding: 120px 0 10px;
		position: relative;
	}
	div.recruit_benefits_inner {
		max-width: 1200px;
		margin: 0 auto;
		padding: 0 20px;
	}
	div.recruit_benefits .wp-block-columns {
		flex-wrap: wrap!important;
		justify-content: space-between
	}
	div.recruit_benefits_inner > div {
		width: 20%;
		max-width: 230px;
		height: 160px;
		background-color: #FFFFFF;
		border-radius: 20px;
	}
	div.recruit_benefits div.wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
		flex-basis: 20%;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	div.recruit_benefits_inner > div figure {
		max-width: 50px;
	}
	div.recruit_benefits_inner p {
		font-weight: 600;
		color: #021F59;
	}
	/*仕事内容*/
	div.recruit_works {
		position: relative;
		text-align: center;
		padding-bottom: 100px;
		position: relative;
		z-index: 2;
	}
	div.recruit_works::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #FFFFFF;
		border-radius: 150px 0 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 1000px;
		position: absolute;
		top: 0;
		z-index: 2;
	}
	div.recruit_works > div {
		z-index: 2;
	}
	div.recruit_works h2 {
		font-size: 2.6em;
		margin: 0;
		padding: 100px 0 50px 0;
		position: relative;
	}
	div.recruit_works_inner div.image {
		width: 30%;
		max-width: 400px;
	}
	div.recruit_works_inner div.image figure {
		height: 500px;
		padding: 0 20px 0 0;
	}
	div.recruit_works_inner div.image figure img {
		width: auto;
		height: 500px;
		object-fit: cover;
		overflow: hidden;
	}
	div.recruit_works_inner div.text {
		width: 70%;
		max-width: 900px;
		text-align: left;
	}
	div.recruit_works_inner div.text p {
		line-height: 1.8em;
	}
	div.recruit_works_inner div.text div.pwrap {
		margin: 20px 0;
		padding: 10px 0 10px 30px;
		position: relative;
	}
	div.recruit_works_inner div.text div.pwrap::before {
		content: '';
		width: 7px;
		height: 100%;
		background-image: url(/marukyu/wp-content/uploads/2026/01/recrui_message_image0.png);
		background-size: cover;
		position: absolute;
		top: 0;
		left: 0;
	}
	div.recruit_works_inner div.text h3 {
		font-size: 1.1em;
		color: #035AA6;
		margin: 40px 0 10px;
	}
	/*入社後の流れ*/
	div.recruit_flow {
		position: relative;
		text-align: center;
		padding-bottom: 100px;
		position: relative;
		z-index: 2;
	}
	div.recruit_flow::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #E5EEF6;
		border-radius: 0 150px 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 800px;
		position: absolute;
		top: 0;
		z-index: 2;
	}
	div.recruit_flow > div {
		z-index: 2;
	}
	div.recruit_flow h2 {
		font-size: 2.6em;
		margin: 0;
		padding: 100px 0 50px 0;
		position: relative;
	}
	div.recruit_flow_inner div.image {
		width: 50%;
		max-width: 600px;
	}
	div.recruit_flow_inner div.image figure {
		height: 350px;
		padding: 0 20px 0 0;
	}
	div.recruit_flow_inner div.image figure img {
		width: auto;
		height: 350px;
		object-fit: cover;
		overflow: hidden;
	}
	div.recruit_flow_inner div.text {
		width: 50%;
		max-width: 600px;
		text-align: left;
	}
	div.recruit_flow_inner div.text p {
		line-height: 1.8em;
		padding: 0 0 0 20px;
	}
	div.recruit_flow_inner div.text h3 {
		font-size: 1.2em;
		color: #035AA6;
		margin: 40px 0 20px;
	}
	/*募集要項*/
	div.recruit_requirements {
		position: relative;
		text-align: left;
		padding-bottom: 100px;
		position: relative;
		z-index: 2;
	}
	div.recruit_requirements::before {
		content: '';
		text-align: center;
		padding: 0;
		background-color: #FFFFFF;
		border-radius: 150px 0 0 0;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		height: 1000px;
		position: absolute;
		top: 0;
		z-index: 2;
	}
	div.recruit_requirements > div {
		z-index: 2;
	}
	div.recruit_requirements h2 {
		font-size: 2.6em;
		text-align: center;
		margin: 0;
		padding: 100px 0 70px 0;
		position: relative;
	}
	div.recruit_requirements p.lead {
		font-size: 1.1em;
		font-weight: 600;
		padding: 0 0 15px;
	}
	div.recruit_requirements table th, div.recruit_requirements table td {
		border: 0px;
		background-color: #FFFFFF;
	}
	div.recruit_requirements table {
		border-top: 1px solid #CCCCCC;
	}
	div.recruit_requirements table th, div.recruit_requirements table td {
		border-bottom: 1px solid #CCCCCC;
		padding: 20px 0;
	}
	div.recruit_requirements table th {
		min-width: 200px;
		width: 20%;
	}
	div.recruit_requirements table td {
		width: 80%;
	}
	/*ボタン*/
	div.recruit_requirements div.swell-block-button.is-style-btn_normal {
		margin: 50px 0;
	}
	div.recruit_requirements div.swell-block-button.is-style-btn_normal a::before {
		content: '';
		width: 35px;
		height: 35px;
		background-color: #021F59;
		border-radius: 50%;
		position: absolute;
		top: 19px;
		right: 22px;
	}
	div.recruit_requirements div.swell-block-button.is-style-btn_normal a::after {
		content: '';
		width: 20px;
		height: 20px;
		background-image: url(/marukyu/wp-content/uploads/2026/01/arrow_white_01.png);
		background-size: cover;
		position: absolute;
		top: 21px;
		right: 29px;
	}
	div.recruit_requirements div.swell-block-button.is-style-btn_normal a {
		min-width: auto;
		height: 70px;
		color: #021F59;
		background-color: #FFFFFF;
		border: 2px solid #021F59;
		padding: 22px 120px 24px 30px;
		position: relative;
	}

	/***************
	スタッフブログ
	***************/

	/*ページTOP*/
	body#staffblog div.l-topTitleArea__body.l-container h1:before {
		content: 'STAFF BLOG';
	}
	body#staffblog div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/blog_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	div.staffblog h2 {
		padding: 30px 0 10px 0!important;
		text-decoration: underline;
	}
	/*一覧*/
	div.staffblog ul {
		list-style: none;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	div.staffblog ul li.p-postList__item {
		width: 32%;
	}
	div.staffblog ul li.p-postList__item figure {
		height: 230px;
		overflow: hidden;
		margin: 0 0 10px 0;
	}
	div.staffblog ul li.p-postList__item figure img {
		height: 230px;
		object-fit: cover;
	}
	div.staffblog ul li.p-postList__item time {
		font-size: 0.9em;
	}
	div.staffblog ul li.p-postList__item h3 {
		font-size: 1.1em;
		text-decoration: underline;
		margin: 10px 0 10px 0;
	}
	/*ページネーション*/
	body#staffblog nav.c-pagination {
		width: 100%;
		margin-bottom: 150px!important;
	}
	body#staffblog nav.c-pagination ul.page-numbers {
		background-color: #FFFFFF;
		box-shadow: none;
	}
	body#staffblog nav.c-pagination ul.page-numbers a.next, body#staffblog nav.c-pagination ul.page-numbers a.prev {
		display: none;
	}

	/***************
	スタッフブログ　個別ページ
	***************/
	body#staffblogsingle time {
		color: #333333;
		text-shadow: 0px 0px 0 rgba(0, 0, 0, .0);
	}
	body#staffblogsingle div.post_content p {
		padding: 15px 0;
	}
	body#staffblogsingle div.post_content figure {
		padding: 15px 0;
	}
	/*サイドバー*/
	aside#sidebar.l-sidebar h2 {
		background-color: #035AA6;
		color: #FFFFFF;
		padding: 10px 20px;
	}


	/***************
	お知らせ
	***************/

	/*ページTOP*/
	body#news div.l-topTitleArea__body.l-container h1:before {
		content: 'NEWS';
	}
	body#news div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/news_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	div.news {
		position: relative;
		text-align: center;
		padding: 0 0 100px;
	}
	div.news h2 {
		font-size: 2.6em;
		margin: 0 0 30px;
		text-align: left;
	}
	/*一覧*/
	body#news ul {
		list-style: none;
	}
	body#news div.swellx-posts-list ul.c-list.c-list--simple {
		border-top: 1px solid var(--color_border);
		padding: 0;
	}
	body#news div.swellx-posts-list  ul.c-list.c-list--simple li {
		text-align: left;
		border-bottom: 1px solid var(--color_border);
		display: flex;
		flex-wrap: nowrap!important;
		padding: 1em .25em;
		position: relative;
	}
	body#news div.swellx-posts-list .c-list__text.swellx-list-cat {
		font-size: 0.9em;
		color: #FFFFFF;
		background-color: #035AA6;
		padding: 4px 15px 5px;
		position: absolute;
		top: 11px;
	}
	body#news div.swellx-posts-list time {
		min-width: 280px;
		font-size: 0.9em;
		padding: 0 50px 0 130px;
	}
	body#news div.swellx-posts-list li.c-list__item a {
		text-decoration: underline;
	}
	/*ページネーション*/
	body#news nav.pagination ul.page-numbers {
		display: flex;
		align-items: center;
		justify-content: center;
		background-color: rgba(255,255,255,0);
		box-shadow: none;
		padding: 50px 0 0 0;
	}
	body#news nav.pagination a.next.page-numbers, body#news nav.pagination a.prev.page-numbers {
		display: none;
	}




	/***************
	お問い合わせ
	***************/

	/*ページTOP*/
	body#inquiry div.l-topTitleArea__body.l-container h1:before {
		content: 'CONTACT US';
	}
	body#inquiry div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/contact_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}
	/*問い合わせフォーム*/
	div.contactwrap {
		width: 100%;
		max-width: 960px;
		margin: 0 auto;
		padding: 50px 0;
	}
	div.contactwrap a {
		text-decoration: underline;
	}
	div.contactformwrap {
		width: 100%;
		padding: 50px 0 100px;
	}
	div.contactformwrap label, div.contactformwrap div.labelwrap {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: start;
		margin-bottom: 50px;
		justify-content: space-between;
	}
	/*入力ボックス（通常）*/
	div.contactformwrap span.title, div.contactformwrap span.title02 {
		width: 40%;
		min-width: 250px;
		max-width: 350px;
		max-height: 50px;
		font-size: 1rem;
		font-weight: 700;
		margin-top: 0px;
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	div.contactformwrap span.entry {
		width: 60%;
	}
	div.contactformwrap span.title02::after {
		width: auto;
		height: 25px;
		content: '必須';
		font-size:0.7rem;
		font-weight: 700;
		color: #FFFFFF;
		background-color: #F24405;
		margin: 0px 30px 0px 10px;
		padding: 0px 20px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	/*入力ボックス（セレクト）*/
	div.contactformwrap span.title_select {
		width: 40%;
		min-width: 200px;
		max-width: 300px;
		font-weight: 700;
		margin-top: 6px;
		display: flex;
		justify-content: space-between;
	}
	div.contactformwrap span.entry_select {
		width: 60%;
	}
	div.contactformwrap span.title_select::after {
		width: auto;
		height: 25px;
		content: '必須';
		font-size:0.7rem;
		font-weight: 500;
		color: #FFFFFF;
		background-color: #F24405;
		margin: 0px 30px 0px 10px;
		padding: 0px 20px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	/*入力ボックス（日付）*/
	div.contactformwrap span.entry_birth {
		width: 70%;
	}
	/*入力エリア*/
	div.contactformwrap input, div.contactformwrap textarea, div.contactformwrap select {
		width: 100%;
		min-height: 50px;
		border: 1px solid #666666;
		border-radius: 3px;
		padding: 0 15px;
		font-weight: 500;
		color: #777777;
		background-color: #FFFFFF;
	}
	div.contactformwrap textarea
	{
		padding: 10px 15px;
	}
	/*入力ボックス（チェック）*/
	div.contactformwrap span.check input {
		width: 20px;
		margin-right: 10px;
		appearance: auto;
	}
	span.wpcf7-list-item-label {
		font-size: 1.0rem;
	}
	/*ボタン*/
	div.contactformwrap div.buttonwrap {
		width: 100%;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 50px 0 0;
	}
	div.contactformwrap div.buttonwrap > div {
		margin: 0
	}
	div.contactformwrap div.buttonwrap p span {
		position: absolute;
		right: 0;
		top: 30px;
	}
	div.contactformwrap div.buttonwrap input {
		width: 300px;
		height: 80px;
		margin: 0 30px;
		text-align: center;
		background-color: #035AA6;
		border: 0px solid #FFFFFF;
		position: relative;
		color: #FFFFFF;
		display: block;
	}
	div.contactformwrap div.buttonwrap input:hover {
		background-color: #FF4958;
		color: #FFFFFF;
		transition: .5s;
	}
	.wpcf7 form .wpcf7-response-output {
		margin: 0em 0.5em 2em;
		padding: 0.2em 1em 0;
		border: 2px solid #00a0d2;
	}
	p.policy {
		font-weight: 600;
		text-align: center;
		padding: 20px 0;
	}
	p.policy a {
		text-decoration: underline;
	}
	p.recapcha-text {
		font-weight: 600;
		text-align: center;
		padding: 20px 0;
	}
	p.recapcha-text a {
		text-decoration: underline;
	}

	@keyframes glow {
		0%   { opacity: 1; }
		50%  { opacity: 0.4; }
		100% { opacity: 1; }
	}

	/***************
	採用エントリー
	***************/
	/*ページTOP*/
	body#entry div.l-topTitleArea__body.l-container h1:before {
		content: 'ENTRY';
	}
	body#entry div#top_title_area.l-topTitleArea:before {
		background-image: url(/marukyu/wp-content/uploads/2026/03/contact_top_image01.png);
		background-size: contain;
		background-position: right bottom;
		background-repeat: no-repeat;
	}

	/***************
	TOPアニメーション
	***************/

	.p-mainVisual picture svg {
		width: auto;
		height: 100%;
		aspect-ratio: auto;
		border-radius: 0 30px 30px 0;
	}

	/* 飛行機 */
	#plane {
		position: fixed;/* ビューポート基準 */
		inset: 0;/* top/right/bottom/left を 0 に（基準点だけに使う） */
		width: clamp(80px, 10vw, 160px);/* 画面に応じたサイズ。お好みで */
		transform: translate(-10vw, -10vh);/* 初期位置：画面外 左上（ビューポート単位） */
		animation: fly-diagonal 20s linear infinite;
		will-change: transform;/* パフォーマンスヒント */
		pointer-events: none;/* クリック透過（必要なら） */
	}

	@keyframes fly-diagonal {
		0% {
			transform: translate(-10vw, -10vh);/* 画面外 左上 */
			opacity: 1;
		}
		10% {
			opacity: 1;/* 画面内に入り始めたらフェードイン */
		}
		100% {
			transform: translate(110vw, 110vh);/* 画面外 右下 */
			opacity: 1;
		}
	}

	/* 煙 */
	#smoke01 {
		animation: smokeFade 6s ease-in-out infinite;
	}

	@keyframes smokeFade {
		0% {
			opacity: 0;
		}
		50% {
			opacity: 1;
		}
		100% {
			opacity: 0;
		}
	}

	#smoke02 {
		animation: smokeFade 3s ease-in-out infinite;
	}

	@keyframes ship-slide-left-bottom {
		0% {
			transform: translate(0, 0);
			opacity: 1;
		}

		20% {
			transform: translate(0, 0);
			opacity: 1;
		}

		58% {
			transform: translate(-25vw, 120vh);
			opacity: 0.3;
		}

		70% {
			transform: translate(0, 0);
			opacity: 1;
		}
	}


	/* 船（下） */
	/* ▼ 共通設定 */
	#ship02, #ship03 {
		position: relative;
		will-change: transform, opacity;
		animation-name: ship-slide-left-bottom;
		animation-timing-function: ease-in-out;
		animation-iteration-count: infinite;
	}

	/* 1隻目：標準ゆっくり */
	#ship02 {
		animation-duration: 32s;
		animation-delay: 0s;
	}
	/* 3隻目：一番ゆっくりで遠くを航行しているような動き */
	#ship03 {
		animation-duration: 38s;
		animation-delay: 6s;
	}

	/* 元の場所 ↔ 右上の画面外 へゆっくり往復 */
	@keyframes ship-to-topright-and-back {
		0% {
			transform: translate(0, 0);/* 元の場所 */
			opacity: 1;
		}
		45% {
			transform: translate(35vw, -35vh);/* 右上へ（画面外手前） */
			opacity: 1;
		}
		50% {
			transform: translate(45vw, -55vh);/* 右上の画面外まで抜ける */
			opacity: 0.85;/* 少し遠ざかった感じで薄く */
		}
		100% {
			transform: translate(0, 0); /* 元の場所に戻る */
			opacity: 1;
		}
	}

	/* 船（上） */
	#ship01 {
		position: relative;/* 元の配置を基準に移動 */
		will-change: transform, opacity;
		animation: ship-to-topright-and-back 24s ease-in-out infinite;
	}

	/* フレコンバック */
	/* ▼ 交互に表示されるアニメーション */
	@keyframes show-odd-even {
		0%, 45% {
			opacity: 1;/* 奇数グループ表示 */
		}
		50%, 100% {
			opacity: 0;/* 奇数グループ非表示 */
		}
	}

	@keyframes show-even-odd {
		0%, 45% {
			opacity: 0;/* 偶数グループ非表示 */
		}
		50%, 100% {
			opacity: 1;/* 偶数グループ表示 */
		}
	}

	/* ▼ 奇数グループ (01, 03, 05) は前半に表示 */
	#container01_01,
	#container01_03,
	#container01_05 {
		animation: show-odd-even 3s linear infinite;
	}

	/* ▼ 偶数グループ (02, 04) は後半に表示 */
	#container01_02,
	#container01_04 {
		animation: show-even-odd 3s linear infinite;
	}

	/* 交互表示のためのキーフレーム */
	@keyframes show-A-hide-B {
		0%, 49%   { opacity: 1; }  /* グループA表示 */
		50%, 100% { opacity: 0; }  /* グループA非表示 */
	}

	@keyframes show-B-hide-A {
		0%, 49%   { opacity: 0; }  /* グループB非表示 */
		50%, 100% { opacity: 1; }  /* グループB表示 */
	}

	/* グループA：#container02_01 と #container02_03 は前半で表示 */
	#container02_01,
	#container02_03 {
		animation: show-B-hide-A 3s linear infinite;
	}

	/* グループB：#container02_02 は後半で表示 */
	#container02_02 {
		animation: show-A-hide-B 3s linear infinite;
	}

	/* #windmill02 */
	#windmill02{
		transform-box: fill-box;          /* SVG では必須 */
		transform-origin: 50% 65.55%;
		animation: windmill-spin 6s linear infinite;
	}

	/* アニメーション定義 */
	@keyframes windmill-spin{
		to { transform: rotate(360deg); }
	}

	/* Safari 対応（必要なら） */
	@-webkit-keyframes windmill-spin{
		to { -webkit-transform: rotate(360deg); }
	}


	/* windmill01 を自分の中心で回転（同心前提） */
	#windmill01 {
		transform-box: fill-box;              /* SVG では必須 */
		transform-origin: 50% 65.55%;
		animation: windmill01-spin 7.5s ease-in-out 0.6s infinite;
	}

	@keyframes windmill01-spin {
		to { transform: rotate(360deg); }
	}

	/* Safari 古め対応（必要なら） */
	@-webkit-keyframes windmill01-spin {
		to { -webkit-transform: rotate(360deg); }
	}

}