@charset "utf-8";
/*
Theme Name:mrp04-child
Template:mrp04
Version: 0.01
 */

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Merriweather+Sans:wght@400;700;800&display=swap");

/* --
font-family: 'Noto Sans JP', sans-serif;
400,700

font-family: 'Merriweather Sans', sans-serif;
400,700,800
-- */

/* ----------------------
全体
---------------------- */

html {
	font-size: 62.5%;
	overflow-x: hidden;
	/* -- iphone用 -- */
}

*,
*::before,
*::after {
	box-sizing: border-box;
	overflow-wrap: break-word;
	word-wrap: break-word;
}

body {
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
		"メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.6rem;
	letter-spacing: normal;
	overflow-x: hidden;
	counter-reset: number;
}

img {
	max-width: 100%;
	vertical-align: bottom;
}

.post a {
	transition: 0.3s color, 0.3s opacity, 0.3s background-color;
}

div.post a {
	text-decoration: underline;
}

div.post a:hover {
	text-decoration: underline;
}

a:not([href]) {
	pointer-events: none !important;
}

#editor-style a:not([href]) {
	pointer-events: auto !important;
}

html:not(.mobile) a[href^="tel:"] {
	pointer-events: none;
}

#editor-style a[href^="tel:"] {
	pointer-events: auto !important;
}

em {
	font-weight: 700;
	font-style: normal;
}

input[type="text"],
input[type="tel"],
input[type="email"],
input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
}

textarea {
	-webkit-appearance: none;
}

input,
textarea,
select {
	border-radius: 0;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
		"メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.6rem;
	letter-spacing: normal;
}

@media only screen and (max-width: 767px) {

	body,
	input,
	textarea,
	select {
		font-size: 1.4rem;
	}
}

/* -- body -- */

body.mobile {
	margin-top: 0;
}

body.mobile #mainImg,
body.mobile #breadcrumb {
	margin-top: 0;
}

/* -- body終わり -- */

/* -- コンテンツ幅 -- */

#wrapper {
	max-width: 1180px;
	width: 90%;
	margin: 0 auto;
	padding: 110px 0 160px;
	box-sizing: content-box;
	overflow: visible;
}

#wrapper::after {
	content: "";
	display: block;
	clear: both;
}

#content {
	width: calc(100% - 250px);
	padding: 0;
}

.home #content {
	padding: 0;
}

#content.wide {
	width: 100%;
}

#full-wrapper #content {
	width: 100%;
}

#sidebar {
	width: 225px;
	padding: 0;
}

div.post {
	margin: 0;
	padding: 0;
	line-height: 1.875;
}

@media only screen and (max-width: 1023px) {
	#wrapper {
		padding: 90px 0 120px;
	}

	#content {
		padding: 0;
	}

	#sidebar {
		padding: 0;
	}
}

@media only screen and (max-width: 959px) {
	#content {
		width: 100%;
	}

	#sidebar {
		width: 100%;
		margin: 60px 0 0;
		padding: 0;
	}
}

@media only screen and (max-width: 767px) {
	#wrapper {
		padding: 50px 0 60px;
	}

	#content {
		padding: 0;
	}

	#sidebar {
		margin: 40px 0 0;
		padding: 0;
	}
}

/* -- コンテンツ幅終わり -- */

/* -- パラグラフ -- */

div.post p {
	padding: 0;
	margin: 0;
}

div.post p+p {
	margin-top: 1em;
}

@media screen and (max-width: 767px) {
	div.post p+p {
		margin-top: 0.6em;
	}
}

/* -- パラグラフ終わり -- */

/* -- リスト -- */

.post ul {
	margin: 0;
}

.post ul li,
.post ol li {
	margin: 0;
}

.post ul li+li,
.post ol li+li {
	margin-top: 0.5em;
}

.post ol[class] li {
	list-style: none;
}

.post ul.comma_list li {
	display: inline-block;
	margin-bottom: 0;
}

.post ul.comma_list li::after {
	content: "、";
}

.post ul.comma_list li:last-child::after {
	content: none;
}

.post .slash_list li {
	display: inline-block;
	margin: 0 0.2em 0 0;
}

.post .slash_list li::after {
	content: "/";
	margin: 0 0 0 0.5em;
}

.post ul.slash_list li:last-child::after {
	content: none;
}

.post ul.indent_list>li {
	padding-left: 1em;
	text-indent: -1em;
	line-height: 1.6;
}

.post ul.indent_list>li::before {
	content: "・";
}

.post ul.kome_list li {
	margin-bottom: 0;
	padding-left: 1em;
	text-indent: -1em;
}

.post ul.kome_list li+li {
	margin-top: 0;
}

.post ul.kome_list li::before {
	content: "※";
}

.post ol.order_list {
	margin: 0;
	padding: 0 0 0 1em;
}

.post ol.order_list>li {
	list-style-type: decimal;
}

@media screen and (max-width: 767px) {
	.post ul.indent_list {
		margin: 0 0 0.2em;
	}
}

/* -- リスト終わり -- */

/* -- テーブル -- */

.post table {
	width: calc(100% + 40px);
	margin: 0 -20px;
	font-size: 100%;
	border: none;
	border-collapse: separate !important;
	border-spacing: 20px 0 !important;
	word-break: break-all;
	table-layout: fixed;
}

.post table th,
.post table td {
	border: none;
	border-bottom: 2px solid #0d0d0d;
	padding: 25px 20px;
	border-collapse: separate !important;
}

.post table tr {
	border: none;
}

.post table.responsive {
	max-width: none;
}

.post table.responsive th,
.post table.responsive td {
	text-align: left;
}

@media only screen and (max-width: 640px) {
	.post table {
		width: calc(100% + 20px);
		margin: 0 -10px;
		border-spacing: 10px 0 !important;
	}

	.post table th,
	.post table td {
		padding: 15px 10px;
		border-spacing: 0 10px !important;
	}

	.post table.responsive {
		margin: 0;
		border-collapse: collapse !important;
		border-spacing: 0 !important;
	}

	.post table.responsive tr {
		border-bottom: 2px solid #0d0d0d;
	}

	.post table.responsive tr:first-child {
		border-top: 2px solid #0d0d0d;
	}

	.post table.responsive th {
		border: none;
		padding: 10px 12px 4px;
	}

	.post table.responsive td {
		border: none;
		padding: 4px 12px 10px;
	}
}

/* -- テーブル 終わり -- */

/* ----------------------
	汎用クラス
	---------------------- */

.anchor {
	margin-top: -140px;
	padding-top: 140px;
}

.on-sp {
	display: none;
}

.on-tab {
	display: none;
}

.mb-16 {
	margin-bottom: 160px !important;
}

.mb-10 {
	margin-bottom: 100px !important;
}

.mb-9 {
	margin-bottom: 90px !important;
}

.mb-8 {
	margin-bottom: 80px !important;
}

.mb-7 {
	margin-bottom: 70px !important;
}

.mb-6 {
	margin-bottom: 60px !important;
}

.mb-5_6 {
	margin-bottom: 56px !important;
}

.mb-5 {
	margin-bottom: 50px !important;
}

.mb-4_8 {
	margin-bottom: 48px !important;
}

.mb-4 {
	margin-bottom: 40px !important;
}

.mb-3 {
	margin-bottom: 30px !important;
}

.mb-2_4 {
	margin-bottom: 24px !important;
}

.mb-2 {
	margin-bottom: 20px !important;
}

.mb-1_6 {
	margin-bottom: 16px !important;
}

.mb-1 {
	margin-bottom: 10px !important;
}

.mb-0 {
	margin-bottom: 0 !important;
}

.mt-0 {
	margin-top: 0 !important;
}

.pt-0 {
	padding-top: 0 !important;
}

.max-1000 {
	max-width: 1000px;
	margin: 0 auto;
}

.text-center {
	text-align: center !important;
}

.content_inner+.content_inner {
	margin-top: 160px;
}

.content_sub_inner+.content_sub_inner {
	margin-top: 120px;
}

.fz-1_8 {
	font-size: 18px;
}

.fw-b {
	font-weight: bold;
}

.kome {
	padding-left: 1em;
	text-indent: -1em;
}

@media screen and (max-width: 1600px) {

	.off-1600 {
		display: none;
	}

}

@media screen and (max-width: 1023px) {
	.on-tab {
		display: block;
	}

	.off-tab {
		display: none;
	}

	.mb-16 {
		margin-bottom: 120px !important;
	}

	.mb-10 {
		margin-bottom: 80px !important;
	}

	.mb-9 {
		margin-bottom: 72px !important;
	}

	.mb-8 {
		margin-bottom: 64px !important;
	}

	.mb-7 {
		margin-bottom: 56px !important;
	}

	.mb-6 {
		margin-bottom: 48px !important;
	}

	.mb-5_6 {
		margin-bottom: 44px !important;
	}

	.mb-5 {
		margin-bottom: 40px !important;
	}

	.mb-4_8 {
		margin-bottom: 36px !important;
	}

	.mb-4 {
		margin-bottom: 32px !important;
	}

	.mb-3 {
		margin-bottom: 24px !important;
	}

	.mb-2_4 {
		margin-bottom: 20px !important;
	}

	.content_inner+.content_inner {
		margin-top: 110px;
	}

	.content_sub_inner+.content_sub_inner {
		margin-top: 80px;
	}

	.fz-1_8 {
		font-size: 16px;
	}
}

@media screen and (max-width: 767px) {
	.anchor {
		margin-top: -60px;
		padding-top: 60px;
	}

	.on-sp {
		display: block;
	}

	.off-sp {
		display: none;
	}

	.mb-16 {
		margin-bottom: 60px !important;
	}

	.mb-10 {
		margin-bottom: 50px !important;
	}

	.mb-9 {
		margin-bottom: 45px !important;
	}

	.mb-8 {
		margin-bottom: 40px !important;
	}

	.mb-7 {
		margin-bottom: 35px !important;
	}

	.mb-6 {
		margin-bottom: 30px !important;
	}

	.mb-5_6 {
		margin-bottom: 28px !important;
	}

	.mb-5 {
		margin-bottom: 25px !important;
	}

	.mb-4_8 {
		margin-bottom: 24px !important;
	}

	.mb-4 {
		margin-bottom: 20px !important;
	}

	.mb-2_4 {
		margin-bottom: 16px !important;
	}

	.text-center {
		text-align: left !important;
	}

	.text-center-sp {
		text-align: center !important;
	}

	.content_inner+.content_inner {
		margin-top: 50px;
	}

	.content_sub_inner+.content_sub_inner {
		margin-top: 40px;
	}
}

/* ----------------------
ボタン
---------------------- */

.linkBtn,
.post .linkBtn {
	flex-shrink: 0;
	display: table;
	position: static;
	background: none;
	border-radius: 0;
	margin: 0;
	padding: 0;
	color: inherit;
	line-height: 1.5;
	transition: none;
}

.linkBtn::after,
.post .linkBtn::after {
	content: none;
}

.linkBtn:hover,
.post .linkBtn:hover {
	background: none;
}

.linkBtn a,
.post .linkBtn a {
	display: flex;
	align-items: center;
	position: relative;
	background: none;
	background-repeat: no-repeat;
	background-position: right 0px top;
	height: 90px;
	margin: 0 auto;
	padding: 0 145px 0 0;
	color: inherit;
	font-family: "Roboto", "Noto Sans JP", "ヒラギノ角ゴ Pro W3",
		"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI",
		"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 700;
	font-size: 18px;
	text-align: right;
	line-height: 1.5;
	text-decoration: none !important;
	transition: opacity 0.5s;
	text-align: right;
}

.linkBtn a .circle,
.post .linkBtn a .circle {
	flex-shrink: 0;
	content: "";
	display: block;
	position: absolute;
	right: 0;
	top: 50%;
	border-radius: 100%;
	background-color: #0d0d0d;
	width: 90px;
	height: 90px;
	margin: 0;
	transform: translateY(-50%);
	transition: all 0.3s ease-in-out;
	overflow: hidden;
	z-index: 5;
}

.linkBtn .arrow,
.post .linkBtn .arrow {
	display: flex;
	align-items: center;
	position: absolute;
	right: 35px;
	top: calc(50% - 1px);
	margin: 0 10px 0 0;
	padding: 0;
	transition: all 0.3s ease-in-out;
}

.linkBtn .arrow::before,
.post .linkBtn .arrow::before,
.linkBtn .arrow::after,
.post .linkBtn .arrow::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #0d0d0d;
	height: 1px;
}

.linkBtn .arrow-w,
.post .linkBtn .arrow-w {
	display: flex;
	align-items: center;
	position: absolute;
	right: 45px;
	top: calc(50% - 1px);
	margin: 0;
	padding: 0 100px 0 0;
	transition: all 0.3s ease-in-out;
}

.linkBtn .arrow-w::before,
.post .linkBtn .arrow-w::before,
.linkBtn .arrow-w::after,
.post .linkBtn .arrow-w::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	background-color: #fff;
	height: 1px;
}

.linkBtn .arrow::before,
.post .linkBtn .arrow::before,
.linkBtn .arrow-w::before,
.post .linkBtn .arrow-w::before {
	width: 85px;
}

.linkBtn .arrow::after,
.post .linkBtn .arrow::after,
.linkBtn .arrow-w::after,
.post .linkBtn .arrow-w::after {
	transform: rotate(45deg);
	transform-origin: right bottom;
	width: 13px;
}

.linkBtn a span,
.post .linkBtn span {
	white-space: nowrap;
	margin: 0 -10px 0 0;
	background-clip: padding-box;
}

.linkBtn a:hover .circle,
.post .linkBtn a:hover .circle {
	width: 84px;
	height: 84px;
	margin-right: 3px;
}

.linkBtn a:hover .arrow,
.post .linkBtn a:hover .arrow {
	right: 23px;
}

.linkBtn a:hover .arrow-w,
.post .linkBtn a:hover .arrow-w {
	right: 30px;
}

.post .link_button-2 a {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	max-width: 100%;
	width: 520px;
	height: 158px;
	background-color: #0068b1;
	margin: 0 auto;
	padding: 30px;
	color: #fff;
	font-weight: 700;
	font-size: 24px;
	text-decoration: none !important;
	text-align: center;
	line-height: 1.6;
	transition: background-color 0.3s ease-in-out;
}

.post .link_button-2-orange a {
	background-color: #fe7e22;
}

.post .link_button-2-red a {
	background-color: #d00015;
}

.post .link_button-2 a .big {
	display: block;
	font-size: 30px;
}

.post .link_button-2 a .small {
	display: block;
	margin-top: 2px;
	font-size: 14px;
}

.post .link_button-2 a:hover {
	background-color: #fe7e22;
}

@media screen and (max-width: 1023px) {

	.linkBtn a,
	.post .linkBtn a {
		height: 72px;
		padding: 0 120px 0 0;
		font-size: 17px;
	}

	.linkBtn a .circle,
	.post .linkBtn a .circle {
		width: 72px;
		height: 72px;
	}

	.linkBtn .arrow,
	.post .linkBtn .arrow {
		right: 27px;
	}

	.linkBtn .arrow-w,
	.post .linkBtn .arrow-w {
		right: 36px;
	}

	.linkBtn .arrow::before,
	.post .linkBtn .arrow::before,
	.linkBtn .arrow-w::before,
	.post .linkBtn .arrow-w::before {
		width: 68px;
	}

	.linkBtn .arrow::after,
	.post .linkBtn .arrow::after,
	.linkBtn .arrow-w::after,
	.post .linkBtn .arrow-w::after {
		width: 11px;
	}

	.linkBtn a:hover .circle,
	.post .linkBtn a:hover .circle {
		width: 56px;
		height: 56px;
		margin-right: 8px;
	}

	.linkBtn a:hover .arrow-w,
	.post .linkBtn a:hover .arrow-w {
		right: 28px;
	}

	.post .link_button-2 a {
		width: 420px;
		height: 120px;
		padding: 25px;
		font-size: 20px;
	}

	.post .link_button-2 a .big {
		font-size: 28px;
	}

	.post .link_button-2 a .small {
		font-size: 14px;
	}
}

@media screen and (max-width: 767px) {

	.linkBtn a,
	.post .linkBtn a {
		height: 55px;
		padding: 0 95px 0 0;
		font-size: 14px;
	}

	.linkBtn a .circle,
	.post .linkBtn a .circle {
		width: 55px;
		height: 55px;
	}

	.linkBtn .arrow,
	.post .linkBtn .arrow {
		right: 27px;
		margin: 0;
	}

	.linkBtn .arrow-w,
	.post .linkBtn .arrow-w {
		right: 27px;
	}

	.linkBtn .arrow::before,
	.post .linkBtn .arrow::before,
	.linkBtn .arrow-w::before,
	.post .linkBtn .arrow-w::before {
		width: 53px;
	}

	.linkBtn .arrow::after,
	.post .linkBtn .arrow::after,
	.linkBtn .arrow-w::after,
	.post .linkBtn .arrow-w::after {
		width: 9px;
	}

	.linkBtn a:hover .circle,
	.post .linkBtn a:hover .circle {
		width: 46px;
		height: 46px;
		margin-right: 0;
	}

	.linkBtn a:hover .arrow-w,
	.post .linkBtn a:hover .arrow-w {
		right: 29px;
	}

	.post .link_button-2 a {
		width: 260px;
		height: auto;
		padding: 25px 20px;
		font-size: 17px;
	}

	.post .link_button-2-sp a {
		padding-top: 11px;
		padding-bottom: 12px;
	}

	.post .link_button-2 a .big {
		font-size: 21px;
	}

	.post .link_button-2 a .small {
		margin-top: 0;
		font-size: 13px;
	}
}

/* ----------------------
見出し
---------------------- */

/* -- h1 -- */
/* -- 通常 カテゴリー -- */

.post h1:not([class]) {
	margin: 0 0 6rem;
	font-weight: 500;
	font-size: 3.6rem;
	text-align: center;
	text-shadow: none;
	line-height: 1.5;
	letter-spacing: 0.2em;
	text-transform: uppercase;
}

.post h1 {
	padding: 0;
}

.post h1 span {
	padding: 0;
}

/* -- 投稿・サーチ・404 -- */

h1.title {
	background: none;
	margin: 0 0 6.4rem;
	padding: 0;
	font-size: 4rem;
	line-height: 1.2;
}

.single h1.title,
.error404 h1.title,
.category h1.title,
.archive h1.title {
	margin: 0 0 4rem;
	font-size: 2.6rem;
	text-align: left;
	line-height: 1.6;
}

/* -- アイキャッチ内 -- */

header#h1Header h1.title {
	background: none;
	margin: 0;
	padding: 0 5%;
	color: inherit;
	font-weight: 700;
	font-size: 50px;
	text-align: center;
	text-shadow: none;
	line-height: 1.2;
	letter-spacing: 0.04em;
	text-indent: 0.04em;
}

header#h1Header h1.title span::before {
	content: attr(data-text);
	display: block;
	margin: 0 0 5px;
	font-size: 20px;
	text-transform: uppercase;
	letter-spacing: 0.08em;
	text-indent: 0.08em;
}

@media screen and (max-width: 1023px) {
	/* -- 投稿・サーチ・404 -- */

	h1.title {
		margin: 0 0 2.5rem;
		font-size: 3.2rem;
	}

	.single h1.title,
	.error404 h1.title,
	.category h1.title,
	.archive h1.title {
		margin: 0 0 3rem;
		font-size: 2rem;
		line-height: 1.65;
	}

	/* -- アイキャッチ内 -- */

	header#h1Header h1.title {
		font-size: 38px;
		line-height: 1.3;
	}

	header#h1Header h1.title span::before {
		margin: 0 0 3px;
		font-size: 18px;
	}
}

@media screen and (max-width: 767px) {
	/* -- 投稿・サーチ・404 -- */

	h1.title {
		margin: 0 0 2rem;
		font-size: 2.4rem;
	}

	.single h1.title,
	.error404 h1.title,
	.category h1.title,
	.archive h1.title {
		margin: 0 0 2rem;
		font-size: 1.8rem;
		line-height: 1.7;
	}

	/* -- アイキャッチ内 -- */

	header#h1Header h1.title {
		font-size: 24px;
		line-height: 1.4;
	}

	header#h1Header h1.title span::before {
		margin: 0 0 1px;
		font-size: 12px;
	}
}

/* -- h2 -- */

/* -- 通常 -- */

.post h2::before,
.post h2::after {
	content: none;
	visibility: visible;
}

.post h2 {
	background: none;
	border: none;
	border-radius: 0;
	padding: 0;
}

.post h2 span {
	margin: 0;
	padding: 0;
}

.post h2:not([class]),
.post .title-2 {
	border: none;
	margin: 0 auto 80px;
	padding: 0;
	font-weight: 700;
	font-size: 20px;
	text-align: center;
	line-height: 1.5;
	letter-spacing: 0.06em;
}

.post h2:not([class]) .en,
.post .title-2 .en {
	display: block;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 800;
	font-size: 60px;
	line-height: 1.3;
}

.post .title-2.small .en {
	font-size: 46px;
}

.post h2:not([class]) .ja,
.post .title-2 .ja {
	display: block;
}

@media screen and (max-width: 1023px) {

	.post h2:not([class]),
	.post .title-2 {
		margin: 0 auto 60px;
		font-size: 18px;
		line-height: 1.6;
	}

	.post h2:not([class]) .en,
	.post .title-2 .en {
		font-size: 50px;
		line-height: 1.35;
	}

	.post .title-2.small .en {
		font-size: 38px;
	}
}

@media screen and (max-width: 767px) {

	.post h2:not([class]),
	.post .title-2 {
		margin: 0 auto 40px;
		font-size: 14px;
	}

	.post h2:not([class]) .en,
	.post .title-2 .en {
		font-size: 28px;
		line-height: 1.25;
	}

	.post .title-2.small .en {
		margin: 0 auto 35px;
		font-size: 24px;
	}

	.post h2:not([class]) .ja,
	.post .title-2 .ja {
		margin-top: 3px;
	}
}

/* -- h3 -- */

.post h3::before,
.post h3::after {
	content: none;
}

.post h3,
.post h3 span {
	padding: 0;
}

.post h3:not([class]),
.post .title-3 {
	border: none;
	border-bottom: 2px solid #0d0d0d;
	margin: 0 auto 60px;
	padding: 0 0 15px;
	font-weight: 700;
	font-size: 30px;
	text-align: left;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

@media screen and (max-width: 1023px) {

	.post h3:not([class]),
	.post .title-3 {
		margin: 0 auto 50px;
		padding: 0 0 12px;
		font-size: 24px;
		line-height: 1.65;
	}
}

@media screen and (max-width: 767px) {

	.post h3:not([class]),
	.post .title-3 {
		margin: 0 auto 30px;
		padding: 0 0 8px;
		font-size: 20px;
		line-height: 1.65;
	}
}

/* -- h4 -- */

.post h4:not([class]),
.post .title-4 {
	border: none;
	border-left: 10px solid #a4c0d4;
	margin: 0 0 20px;
	padding: 0 0 2px 15px;
	color: inherit;
	font-weight: 700;
	font-size: 24px;
	letter-spacing: 0.04em;
	line-height: 1.6;
}

.post h4::before {
	content: none;
}

@media screen and (max-width: 1023px) {

	.post h4:not([class]),
	.post .title-4 {
		margin: 0 0 15px;
		padding: 0 0 1px 15px;
		font-size: 22px;
	}
}

@media screen and (max-width: 767px) {

	.post h4:not([class]),
	.post .title-4 {
		border-left: 8px solid #a4c0d4;
		margin: 0 0 15px;
		padding: 0 0 1px 12px;
		font-size: 18px;
	}
}

/* -- h5 h6 -- */

.post h5:not([class]) {
	position: relative;
	border-bottom: 1px solid #b3b3b3;
	margin: 0 0 1.6rem;
	padding: 0 0 0.15em 0.5em;
	font-weight: 400;
	font-size: 2rem;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.post h6:not([class]) {
	margin: 0 0 1.6rem;
	font-size: 1.8rem;
	line-height: 1.6;
}

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

.post .bg {
	display: table;
	margin: 0 auto;
}

.post .title-bg_wrap {
	display: block;
	margin: 0;
	text-align: center;
}

.post .title-bg_wrap+.title-bg_wrap {
	margin-top: 2px;
}

.post .title-bg {
	display: block;
	background-color: #000;
	padding: 0 36px 4px;
	color: #fff;
	font-weight: 700;
	font-size: 30px;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

@media screen and (max-width: 1023px) {
	.post .title-bg {
		padding: 1px 30px 4px;
		font-size: 3vw;
	}
}

@media screen and (max-width: 767px) {
	.post .bg {
		display: block;
	}

	.post .title-bg_wrap+.title-bg_wrap {
		margin-top: 3px;
	}

	.post .title-bg {
		margin: 0;
		padding: 1px 3% 4px;
		font-size: 4.2vw;
		letter-spacing: 0.04em;
		font-feature-settings: "palt";
	}
}

@media screen and (max-width: 767px) {
	.animated {
		animation-delay: 0s !important;
	}
}

/*header_label*/

.imgWrap {
	display: block;
	overflow: hidden;
	width: 100%;
	backface-visibility: hidden;
}

.imgWrap img {
	display: block;
}

.top_service_list .imgWrap,
.top_service_list .img-bg {
	height: 100%;
}

.top_service_list .img-bg {
	box-sizing: border-box;
}

#top_insta .img-bg {
	padding: 0;
}

#editor-style .header_label_in2 {
	transform: translateX(0);
}

#editor-style .header_label_in2::before {
	top: 0;
	background-color: transparent;
}

/*header_label*/
.header_label {
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	line-height: 1.1;
	position: relative;
	z-index: 10;
	margin: 0px;
}

.header_label_in1 {
	display: block;
	overflow: hidden;
}

.header_label_in2 {
	display: block;
	position: relative;
	padding-bottom: 10px;
	transform: translateX(-100.5%);
	transition-delay: 0.15s;
	transition-duration: 0.8s;
	transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	transition-property: transform, -webkit-transform;
}

.header_label_in2::before {
	top: 0;
}

.header_label_in2::after {
	height: 0;
}

.header_label_in2::before {
	transform-origin: center bottom 0px;
	transition-delay: 0.8s;
	transition-duration: 1s;
	transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
}

.header_label_in2::after,
.header_label_in2::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -1px;
	right: 0px;
	left: 0px;
	background-color: rgb(0, 0, 0);
	z-index: 10;
}

.header_label.is-shown .header_label_in2 {
	transform: translateX(0px);
}

.header_label.is-shown .header_label_in2::before {
	transform: scaleY(0);
}

@media only screen and (max-width: 640px) {
	.header_label.is-shown .header_label_in2 {
		font-size: 31.05px;
	}

	.op0-tr-delay-40.is-shown {
		width: 100%;
	}
}

/*animation*/

.img-bg {
	overflow: hidden;
	position: relative;
	padding: 5px;
	box-sizing: content-box;
	backface-visibility: hidden;
}

.img-bg:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 2;
	background-color: #000;
}

.img-bg-w:before {
	background-color: #fff;
	border: 1px solid #fff;
}

.img-bg img {
	-webkit-transform: scale(1);
	transform: scale(1);
	-webkit-transition-duration: 4s;
	transition-duration: 4s;
	-webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
}

.img-bg {
	-webkit-transform: translate3d(-100.5%, 0, 0);
	transform: translate3d(-100.5%, 0, 0);
	-webkit-transform-origin: left;
	transform-origin: left;
	-webkit-transition-duration: 1s;
	transition-duration: 1s;
	-webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-delay: 0s;
	transition-delay: 0s;
}

.img-bg.is-shown {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	backface-visibility: hidden;
}

.img-bg:before {
	-webkit-transform: translateZ(0) scaleX(1);
	transform: translateZ(0) scaleX(1);
	-webkit-transform-origin: right;
	transform-origin: right;
	-webkit-transition-duration: 1s;
	transition-duration: 1s;
	-webkit-transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1);
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	transition-property: transform;
	transition-property: transform, -webkit-transform;
	-webkit-transition-delay: 0.4s;
	transition-delay: 0.4s;
}

.img-bg.is-shown:before {
	-webkit-transform: translateZ(0) scaleX(0);
	transform: translateZ(0) scaleX(0);
}

/* -- エディター用 -- */

#editor-style .imgWrap {
	overflow: visible;
}

#editor-style .img-bg {
	transform: none;
	overflow: visible;
}

#editor-style .img-bg:before {
	content: none;
}

/* -- IE用 -- */

@media all and (-ms-high-contrast: none) {
	.imgWrap {
		overflow: visible;
	}

	.img-bg {
		transform: none;
		overflow: visible;
	}

	.img-bg:before {
		content: none;
	}
}

/* ----------------------
メインイメージ
---------------------- */

#main_image {
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
}

.mobile #main_image {
	height: calc(100vh - 140px - 128px);
}

#main_image .main_image_inner {
	position: relative;
	max-width: 1538px;
	width: 80.1041vw;
	max-height: 720px;
	height: 37.5vw;
	margin: 0 auto;
	padding: 0;
}

#main_image .main_images {
	position: relative;
	height: 100%;
}

#main_image .main_images::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: #fff;
	z-index: -1;
}

@media screen and (max-width: 1023px) {
	#main_image .main_image_inner {
		width: calc(80.1041vw * 1.1);
		height: calc(37.5vw * 1.1);
	}
}

@media screen and (max-width: 767px) {
	#main_image {
		height: 100vh;
		min-height: 128.5333vw;
	}

	.mobile #main_image {
		margin-top: 70px;
		margin-bottom: 70px;
	}

	#main_image .main_image_inner {
		width: calc(80.1041vw * 1.15);
		height: calc(37.5vw * 3);
	}
}

/* -- テキスト -- */

#main_image .main_image_text {
	position: absolute;
	z-index: 10;
}

#main_image .main_image_text-1 {
	display: flex;
	flex-direction: row-reverse;
	align-items: flex-start;
	right: 0;
	top: 4.8611%;
	font-weight: 400;
	font-size: 2.5vw;
	line-height: 1.4583;
	white-space: nowrap;
}

#main_image .main_image_text-1 span {
	display: inline-block;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	border-right: 1px solid #0d0d0d;
}

#main_image .main_image_text-2 {
	top: 29.8611%;
	right: 14.8244%;
	font-weight: 700;
	font-size: 1.1458vw;
	line-height: 1.3636;
	letter-spacing: 0.08em;
}

#main_image .main_image_text-3 {
	top: 66.6666%;
	left: 4.5513%;
	display: table;
	background-color: #0d0d0d;
	padding: 0.25em 6px 0.2em;
	color: #fff;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 700;
	font-size: 24px;
	line-height: 1;
	letter-spacing: 0.04em;
}

#main_image .main_image_text-4 {
	top: 72.3611%;
	left: 4.5513%;
	display: table;
	background-color: #0d0d0d;
	width: 25.5526%;
	height: 3.2em;
	padding: 0.25em 6px 0.2em;
	color: #fff;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 700;
	font-size: 24px;
	line-height: 1;
	letter-spacing: 0.04em;
}

@media screen and (max-width: 1600px) {
	#main_image .main_image_text-3 {
		font-size: 1.25vw;
	}
}

@media screen and (max-width: 767px) {
	#main_image .main_image_text-1 {
		top: 0%;
		font-weight: 400;
		font-size: calc(2.5vw * 2.5);
	}

	#main_image .main_image_text-2 {
		top: 35%;
		font-size: calc(1.1458vw * 2.5);
	}

	#main_image .main_image_text-3 {
		top: 78%;
	}

	#main_image .main_image_text-4 {
		top: 83%;
		width: calc(25.5526% * 2);
		font-size: calc(1.25vw * 2.5);
	}
}

/* -- 画像 -- */

#main_image .main_images img {
	display: block;
	position: absolute;
}

#main_image .main_image_aflo {
	width: 121px;
	top: 190px;
	left: 375px;
	height: 133px;
	max-width: 7.8673%;
	max-height: 18.4722%;
	top: 26.3888%;
	left: 24.3823%;
}

#main_image .main_image_bird {
	max-width: 7.5846%;
	width: 103px;
	max-height: 15.2777%;
	height: 110px;
	top: 9.7222%;
	right: 17.9453%;
}

#main_image .main_image_birds-1 {
	max-width: 8.1924%;
	width: 126px;
	max-height: 13.75%;
	height: 99px;
	top: 9.7222%;
	right: 26.5279%;
}

#main_image .main_image_birds-2 {
	max-width: 5.4616%;
	width: 84px;
	max-height: 9.3055%;
	height: 67px;
	top: 3.75%;
	right: 13.524%;
}

#main_image .main_image_building-1 {
	max-width: 57.8023%;
	width: 889px;
	max-height: 87.2222%;
	height: 628px;
	top: 7.6388%;
	left: 17.7503%;
}

#main_image .main_image_building-2 {
	max-width: 34.7854%;
	width: 535px;
	max-height: 30.8333%;
	height: 222px;
	top: 500px;
	right: 210px;
	top: 69.4444%;
	right: 13.654%;
}

#main_image .main_image_circle-1 {
	max-width: 19.8959%;
	width: 306px;
	max-height: 42.5%;
	height: 306px;
	top: 14.3055%;
	left: 14.9544%;
}

#main_image .main_image_circle-2 {
	/*max-width: 24.9024%;
	width: 383px;
	max-height: 53.1944%;
	height: 383px;
	right: 286px;
	top: 176px;
	top: 24.4444%;
	right: 18.5955%;*/
	mix-blend-mode: hard-light;
}

#main_image .main_image_crayon {
	max-width: 17.9453%;
	width: 276px;
	max-height: 54.4444%;
	height: 392px;
	top: 49.3055%;
	left: 11.3133%;
}

#main_image .main_image_dot {
	max-width: 4.2262%;
	width: 65px;
	max-height: 32.7777%;
	height: 236px;
	top: 63.3333%;
	right: 11.7035%;
}

#main_image .main_image_line {
	max-width: 23.0819%;
	width: 355px;
	max-height: 50.9722%;
	height: 367px;
	top: 7.6388%;
	left: 12.5487%;
}

#main_image .main_image_map {
	max-width: 24.6423%;
	width: 379px;
	max-height: 75.8333%;
	height: 546px;
	top: 0;
	right: 34.7854%;
}

#main_image .main_image_plane {
	max-width: 18.0754%;
	width: 278px;
	max-height: 18.0555%;
	height: 130px;
	top: 0.4166%;
	left: 16.905%;
}

#main_image .main_image_tower {
	max-width: 20.6111%;
	width: 317px;
	max-height: 52.9166%;
	height: 381px;
	top: 25%;
	right: 20.6762%;
}

#main_image .main_image_wave {
	max-width: 6.827%;
	width: 105px;
	max-height: 7.0833%;
	height: 51px;
	top: 32.7777%;
	left: 12.2236%;
}

#main_image .main_image_copy {
	max-width: 69.7009%;
	width: 1072px;
	max-height: 18.1944%;
	height: 131px;
	top: 41.6666%;
	left: 50%;
	transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
	#main_image .main_images img {
		width: auto;
		height: auto;
	}

	#main_image .main_image_aflo {
		max-width: calc(7.8673% * 2.5);
		max-height: calc(18.4722% * 3);
		top: 26.3888%;
		left: 18%;
	}

	#main_image .main_image_bird {
		max-width: calc(7.5846% * 1.15);
		max-height: calc(15.2777% * 3);
		top: 9.7222%;
		right: 17.9453%;
	}

	#main_image .main_image_birds-1 {
		max-width: calc(8.1924% * 1.15);
		max-height: calc(13.75% * 3);
		top: 9.7222%;
		right: 26.5279%;
	}

	#main_image .main_image_birds-2 {
		max-width: calc(5.4616% * 1.15);
		max-height: calc(9.3055% * 3);
		top: 3.75%;
		right: 13.524%;
	}

	#main_image .main_image_building-1 {
		max-width: calc(57.8023% * 1.3);
		max-height: calc(87.2222% * 3);
		top: 18%;
		left: 5%;
	}

	#main_image .main_image_building-2 {
		max-width: calc(34.7854% * 1.5);
		max-height: calc(30.8333% * 3);
		top: 78%;
		right: 3%;
	}

	#main_image .main_image_circle-1 {
		max-width: calc(19.8959% * 1.15);
		max-height: calc(42.5% * 3);
		top: 14.3055%;
		left: 14.9544%;
	}

	#main_image .main_image_circle-2 {
		max-width: none;
		max-height: none;
		top: 24.4444%;
		right: 12%;
		mix-blend-mode: hard-light;
	}

	#main_image .main_image_crayon {
		max-width: calc(17.9453% * 1.15);
		max-height: calc(54.4444% * 3);
		top: 49.3055%;
		left: 11.3133%;
	}

	#main_image .main_image_dot {
		max-width: calc(4.2262% * 1.15);
		max-height: calc(32.7777% * 3);
		top: 63.3333%;
		right: 11.7035%;
	}

	#main_image .main_image_line {
		max-width: calc(23.0819% * 1.15);
		max-height: calc(50.9722% * 3);
		top: 7.6388%;
		left: 12.5487%;
	}

	#main_image .main_image_map {
		max-width: calc(24.6423% * 1.5);
		max-height: calc(75.8333% * 3);
		top: 0;
		right: 30%;
	}

	#main_image .main_image_plane {
		max-width: calc(18.0754% * 1.7);
		max-height: calc(18.0555% * 3);
		top: 0.4166%;
		left: 10%;
	}

	#main_image .main_image_tower {
		max-width: calc(20.6111% * 1.15);
		max-height: calc(52.9166% * 3);
		top: 25%;
		right: 18%;
	}

	#main_image .main_image_wave {
		max-width: calc(6.827% * 1.5);
		max-height: calc(7.0833% * 3);
		top: 22%;
		left: 10%;
	}

	#main_image .main_image_copy {
		max-width: calc(69.7009% * 1.15);
		max-height: calc(18.1944% * 3);
		top: 65%;
		left: 50%;
		transform: translateX(-50%);
	}
}

/* ----------------------
トップページ
---------------------- */

/* -- top_sky -- */

.top_sky {
	position: relative;
	z-index: 5;
	overflow: hidden;
}

.top_sky::before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: linear-gradient(to bottom, #0085e3, #dbe4ed);
	z-index: -100;
}

.top_sky::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-image: url(/struct/wp-content/uploads/bg_pattern.png);
	background-size: 150px;
	mix-blend-mode: multiply;
	z-index: -99;
}

@media all and (-ms-high-contrast: none) {
	.top_sky::after {
		display: none;
	}
}

.top_sky .top_sky_inner {
	padding: 0 0 400px;
}

@media screen and (max-width: 1600px) {
	.top_sky .top_sky_inner {
		padding: 0 0 25vw;
	}
}

@media screen and (max-width: 1023px) {
	.top_sky .top_sky_inner {
		padding: 0 0 28vw;
	}
}

@media screen and (max-width: 767px) {
	.top_sky .top_sky_inner {
		padding: 0 0 53.3333vw;
	}
}

/* -- 背景画像 -- */

.top_sky .sky_images img {
	display: block;
	position: absolute;
}

.sky_image_moon {
	width: 457px;
	top: 94px;
	right: 106px;
	z-index: -10;
}

.sky_image_airballoon-1 {
	width: 315px;
	top: 850px;
	right: 146px;
}

.sky_image_airballoon-2 {
	width: 208px;
	top: 995px;
	right: 440px;
}

.sky_image_airballoon-3 {
	width: 112px;
	top: 1122px;
	right: 32px;
}

.sky_image_bird-1 {
	width: 197px;
	top: 1385px;
	right: 130px;
	z-index: 10;
}

.sky_image_bird-2 {
	width: 126px;
	top: 1180px;
	right: 104px;
}

.sky_image_birds-1 {
	width: 303px;
	top: 1080px;
	right: 1040px;
	z-index: -5;
}

.sky_image_birds-2 {
	width: 237px;
	top: 1285px;
	right: 908px;
	z-index: -5;
}

.sky_image_birds-3 {
	width: 369px;
	top: 1420px;
	right: 612px;
}

.sky_image_balloon-1 {
	width: 186px;
	top: 850px;
	left: 215px;
	z-index: 1;
}

.sky_image_balloon-2 {
	width: 265px;
	top: 806px;
	left: 807px;
}

.sky_image_balloon-3 {
	width: 237px;
	top: 1136px;
	right: 660px;
	z-index: -5;
}

.sky_image_balloon-4 {
	width: 123px;
	top: 1176px;
	left: 580px;
}

.sky_image_balloon-5 {
	width: 123px;
	top: 1338px;
	left: 730px;
	z-index: 0;
}

.sky_image_balloon-6 {
	width: 312px;
	top: 1565px;
	right: 505px;
}

.sky_image_balloon-7 {
	width: 157px;
	top: 1345px;
	right: 100px;
}

.sky_image_balloon-8 {
	width: 170px;
	top: 1865px;
	right: 62px;
}

.sky_image_balloon-10 {
	width: 835px;
	top: 1725px;
	right: 150px;
}

.sky_image_airship {
	width: 661px;
	top: 473px;
	left: 93px;
}

.sky_image_cloud-1 {
	width: 784px;
	top: 0;
	left: 0;
	z-index: -10;
}

.sky_image_cloud-2 {
	width: 1012px;
	top: 310px;
	right: 0;
	z-index: -9;
}

.sky_image_cloud-3 {
	width: 527px;
	top: 960px;
	left: 0;
	z-index: -9;
}

.sky_image_cloud-4 {
	width: 469px;
	top: 500px;
	left: 300px;
}

.sky_image_cloud-5 {
	width: 425px;
	top: 800px;
	left: 435px;
}

.sky_image_cloud-6 {
	width: 510px;
	top: 1515px;
	left: 605px;
	z-index: -20;
}

.sky_image_cloud-7 {
	width: 858px;
	top: 2100px;
	left: 0;
}

.sky_image_cloud-8 {
	width: 706px;
	top: 2270px;
	right: 0;
}

.sky_image_cloud-9 {
	width: 422px;
	top: 1580px;
	right: 0;
	z-index: 10;
}

.sky_image_building {
	width: 100%;
	bottom: 0;
	left: 0;
	right: 0;
}

@media screen and (max-width: 1800px) {
	.sky_image_moon {
		width: 24.7395vw;
		top: 4.8958vw;
		right: 5.5208vw;
	}

	.sky_image_airballoon-1 {
		width: 16.4062vw;
		top: 44.2708vw;
		right: 7.6041vw;
	}

	.sky_image_airballoon-2 {
		width: 10.8333vw;
		top: 51.8229vw;
		right: 22.9166vw;
	}

	.sky_image_airballoon-3 {
		width: 5.8333vw;
		top: 58.4375vw;
		right: 1.6666vw;
	}

	.sky_image_bird-1 {
		width: 10.2604vw;
		top: 66.4062vw;
		right: 11.4583vw;
	}

	.sky_image_bird-2 {
		width: 6.5625vw;
		top: 74.7395vw;
		right: 5.4166vw;
	}

	.sky_image_birds-1 {
		width: 15.7812vw;
		top: 56.25vw;
		right: 54.1666vw;
	}

	.sky_image_birds-2 {
		width: 12.3437vw;
		top: 66.927vw;
		right: 47.2916vw;
	}

	.sky_image_birds-3 {
		width: 20.625vw;
		top: 73.9583vw;
		right: 31.875vw;
	}

	.sky_image_balloon-1 {
		width: 9.6875vw;
		top: 44.2708vw;
		left: 11.1979vw;
	}

	.sky_image_balloon-2 {
		width: 9.6875vw;
		top: 41.9791vw;
		left: 42.0312vw;
	}

	.sky_image_balloon-3 {
		width: 12.3437vw;
		top: 59.1666vw;
		right: 34.375vw;
	}

	.sky_image_balloon-4 {
		width: 6.4062vw;
		top: 61.25vw;
		left: 30.2083vw;
	}

	.sky_image_balloon-5 {
		width: 6.4062vw;
		top: 69.6875vw;
		left: 38.0208vw;
	}

	.sky_image_balloon-6 {
		width: 16.4062vw;
		top: 81.5104vw;
		right: 26.302vw;
	}

	.sky_image_balloon-7 {
		width: 8.177vw;
		top: 70.052vw;
		right: 5.2083vw;
	}

	.sky_image_balloon-8 {
		width: 8.8541vw;
		top: 97.1354vw;
		right: 3.2291vw;
	}

	.sky_image_balloon-10 {
		width: 43.4895vw;
		top: 89.8437vw;
		right: 7.8125vw;
	}

	.sky_image_airship {
		width: 34.427vw;
		top: 24.6354vw;
		left: 4.8437vw;
	}

	.sky_image_cloud-1 {
		width: 40.8333vw;
	}

	.sky_image_cloud-2 {
		width: 52.7083vw;
		top: 16.1458vw;
	}

	.sky_image_cloud-3 {
		width: 27.4479vw;
		top: 38.2815vw;
	}

	.sky_image_cloud-4 {
		width: 24.427vw;
		top: 26.0416vw;
		left: 15.625vw;
	}

	.sky_image_cloud-5 {
		width: 22.1345vw;
		top: 41.6666vw;
		left: 22.6562vw;
	}

	.sky_image_cloud-6 {
		width: 26.5625vw;
		top: 71.6145vw;
		left: 31.5104vw;
	}

	.sky_image_cloud-7 {
		width: 44.6875vw;
		top: 109.375vw;
	}

	.sky_image_cloud-8 {
		width: 36.7708vw;
		top: 118.2291vw;
	}

	.sky_image_cloud-9 {
		width: 21.9791vw;
		top: 82.2916vw;
	}
}

@media screen and (max-width: 767px) {
	.sky_image_moon {
		width: 56.6666vw;
		top: 4.3%;
		right: 7vw;
	}

	.sky_image_airballoon-1 {
		width: 42.4vw;
		top: 19%;
		right: -7.7333vw;
	}

	.sky_image_airballoon-2 {
		width: 26vw;
		top: 21.3%;
		right: 24vw;
	}

	.sky_image_airballoon-3 {
		display: none !important;
		width: calc(5.8333vw * 1.3);
		top: 76%;
		right: 5vw;
	}

	.sky_image_bird-1 {
		display: none !important;
		top: 47%;
		right: 50vw;
	}

	.sky_image_bird-2 {
		display: none !important;
		top: 49%;
		right: 43vw;
	}

	.sky_image_birds-1 {
		display: none !important;
		top: 50%;
		right: 80vw;
	}

	.sky_image_birds-2 {
		display: none !important;
		top: 52%;
		right: 78vw;
	}

	.sky_image_birds-3 {
		display: none !important;
		top: 55%;
		right: 68vw;
	}

	.sky_image_balloon-1 {
		display: none !important;
		width: calc(9.6875vw * 1.2);
		top: 8%;
		left: 50vw;
	}

	.sky_image_balloon-2 {
		width: 45.0666vw;
		top: 58.3%;
		left: 64.5333vw;
	}

	.sky_image_balloon-3 {
		display: none !important;
		top: 44%;
	}

	.sky_image_balloon-4 {
		display: none !important;
		width: calc(6.4062vw * 1.1);
		top: 50%;
	}

	.sky_image_balloon-5 {
		display: none !important;
		width: calc(6.4062vw * 1.2);
		top: 60%;
	}

	.sky_image_balloon-6 {
		display: none !important;
		width: calc(16.4062vw * 1.2);
		top: 64%;
	}

	.sky_image_balloon-7 {
		display: none !important;
		top: 70.052%;
	}

	.sky_image_balloon-8 {
		display: none !important;
		width: calc(8.8541vw * 1.2);
		top: 80%;
		right: 80vw;
	}

	.sky_image_balloon-10 {
		width: 97vw;
		top: 79.25%;
		right: 1.2vw;
	}

	.sky_image_airship {
		display: none !important;
	}

	.sky_image_cloud-1 {
		width: 136.5333vw;
		top: -8vw;
		left: -58vw;
	}

	.sky_image_cloud-2 {
		width: 132.5333vw;
		top: 7%;
		right: -21vw;
	}

	.sky_image_cloud-3 {
		width: 135vw;
		top: 33.5%;
		left: -22%;
		max-width: none !important;
	}

	.sky_image_cloud-4 {
		display: none !important;
		top: 32%;
	}

	.sky_image_cloud-5 {
		width: 65.0666vw;
		top: 17.5%;
		left: -22vw;
	}

	.sky_image_cloud-6 {
		max-width: none !important;
		width: 136vw;
		top: 63.55%;
		left: 13.6vw;
	}

	.sky_image_cloud-7 {
		width: 91vw;
		top: 78.5%;
		left: -41vw;
		z-index: -9;
	}

	.sky_image_cloud-8 {
		display: none !important;
		top: 70%;
	}

	.sky_image_cloud-9 {
		display: none !important;
		top: 74%;
	}

	.sky_image_building {
		max-width: none !important;
		width: 360vw;
		bottom: 0;
		left: -1.5%;
		right: auto;
		transform: translateX(-50%);
		z-index: -10;
	}
}

/* -- top_residence -- */

.top_residence {
	margin: 0 0 490px;
	padding: 0 5vw;
	overflow: hidden;
}

.top_residence .top_residence_inner {
	max-width: 1300px;
	margin: 0 auto;
}

.top_residence .top_residence_title {
	position: relative;
	margin: 0 0 100px;
	padding: 0;
	text-align: center;
	z-index: 10;
}

.top_residence .top_residence_title .en {
	display: block;
	margin: -0.11em 0 0;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 900;
	font-size: 10.4166vw;
	line-height: 1;
	letter-spacing: -0.04em;
}

.top_residence .top_residence_title .ja {
	display: block;
	position: relative;
	width: 283px;
	margin: 0 auto;
	padding: 90px 0 0;
}

.top_residence .top_residence_title .ja::before {
	content: "";
	display: block;
	position: absolute;
	top: -46px;
	left: calc(50% - 1px);
	background-color: #fff;
	width: 2px;
	height: 88px;
}

.top_residence_description {
	display: table;
	position: relative;
	margin: 0 0 0 auto;
	letter-spacing: 0.06em;
	z-index: 1;
}

.top_residence_lead {
	margin: 0 0 25px;
	font-weight: 700;
	font-size: 50px;
	line-height: 1.4;
}

.top_residence_text {
	font-size: 18px;
	line-height: 2.777;
}

@media screen and (max-width: 1600px) {
	.top_residence {
		margin: 0 0 30.625vw;
	}

	.top_residence .top_residence_title .ja {
		width: 17.6875vw;
		padding: 5.625vw 0 0;
	}

	.top_residence .top_residence_title .ja::before {
		top: -2.5vw;
		height: 5.5vw;
	}
}

@media screen and (max-width: 1280px) {
	.top_residence_lead {
		margin: 0 0 25px;
		font-size: 3.9062vw;
	}

	.top_residence_text {
		font-size: 17px;
		line-height: 2.5;
	}
}

@media screen and (max-width: 1023px) {
	.top_residence .top_residence_title {
		margin: 0 0 6.8426vw;
	}

	.top_residence .top_residence_title .en {
		font-size: calc(10.4166vw * 1.2);
	}

	.top_residence .top_residence_title .ja {
		width: calc(17.6875vw * 1.2);
	}

	.top_residence_description {
		margin: 0 0 0 10vw;
	}

	.top_residence_lead {
		margin: 0 0 20px;
		font-size: calc(3.9062vw * 1.3);
	}
}

@media screen and (max-width: 767px) {
	.top_residence {
		margin: 0 0 98.6666vw;
		padding: 0 8vw;
	}

	.top_residence .top_residence_title {
		margin: 0 0 36vw;
	}

	.top_residence .top_residence_title .en {
		margin: -0.108em calc(50% - 50vw) 0;
		font-size: 16.5333vw;
	}

	.top_residence .top_residence_title .ja {
		width: 42.1333vw;
		padding: 14vw 0 0;
	}

	.top_residence .top_residence_title .ja::before {
		top: -2.5vw;
		height: 11.7333vw;
	}

	.top_residence_description {
		margin: 0 auto;
	}

	.top_residence_lead {
		margin: 0 0 30px;
		font-size: 9.6vw;
	}

	.top_residence_text {
		font-size: 15px;
		line-height: 2;
	}
}

/* -- top_service -- */

.top_service_title_wrap {
	position: relative;
}

.top_service {
	padding: 0 5vw;
}

.top_service .top_service_inner {
	max-width: 1590px;
	margin: 0 auto;
	position: relative;
	z-index: 5;
}

.top_service_title_wrap .top_service_title {
	position: absolute;
	left: -0.1em;
	top: -1.3em;
	color: #7dc1f1;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 900;
	font-size: 18.75vw;
	line-height: 0.8277;
	z-index: -1;
}

.top_service .top_service_list {
	display: flex;
	flex-wrap: wrap;
}

.top_service .top_service_list li {
	margin: 0;
	padding: 0 50px 0 45px;
}

.top_service .top_service_list .top_service_list-b {
	width: 50%;
	padding-top: 45px;
}

.top_service .top_service_list-b:nth-child(2) {
	margin-top: 165px;
}

.top_service .top_service_list-s {
	width: 33%;
}

.top_service .top_service_list-s:nth-child(3) {
	margin: -25px 0 0;
}

.top_service .top_service_list-s:nth-child(4) {
	margin: 97px 0 0;
}

.top_service .top_service_list-s:nth-child(5) {
	margin: 217px 0 0;
}

.top_service .top_service_list_image_wrap {
	position: relative;
	margin: 0 auto 40px;
}

.top_service .top_service_list_image_wrap_text::before {
	content: attr(data-text);
	position: absolute;
	left: -45px;
	top: -45px;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 900;
	font-size: 80px;
	line-height: 1;
	letter-spacing: 0.04em;
}

.top_service_list_image_wrap a {
	display: block;
}

.top_service_list-b_image,
.top_service_list-s_image {
	position: relative;
	overflow: hidden;
	z-index: -1;
}

.top_service_list-b_image {
	padding-top: 70.7142%;
}

.top_service_list-s_image {
	padding-top: 100%;
}

.top_service_list-b_image img,
.top_service_list-s_image img {
	position: absolute;
	top: 50%;
	left: 50%;
	opacity: 1 !important;
	transform: translate(-50%, -50%);
	transition: 0.3s transform;
	z-index: -1;
}

.top_service_list_image_wrap a:hover .top_service_list-b_image img,
.top_service_list_image_wrap a:hover .top_service_list-s_image img {
	transform: translate(-50%, -50%) scale(1.1);
}

.top_service .top_service_list_title {
	position: absolute;
	bottom: 80px;
	left: -40px;
	margin: 0;
	color: #fff;
}

.top_service .top_service_list_title span {
	display: table;
	width: auto;
}

.top_service .top_service_list_title .ja {
	margin: 0;
	padding: 10px 14px 10px 10px;
	font-weight: 700;
	font-size: 44px;
	line-height: 1.1363;
	background-color: #0d0d0d;
	letter-spacing: 0.06em;
}

.top_service .top_service_list_title .ja_wrap {
	margin: 0 0 10px;
}

.top_service .top_service_list_title .en {
	padding: 4px 11px 4px 10px;
	font-family: "Merriweather Sans", sans-serif;
	font-size: 16px;
	line-height: 1.4;
	background-color: #0d0d0d;
	letter-spacing: 0.06em;
}

.top_service .top_service_list-s .top_service_list_title .ja {
	padding: 10px 14px 10px 10px;
	font-size: 30px;
	line-height: 1.1363;
}

.top_service .top_service_list-b .top_service_list_description {
	display: flex;
	justify-content: space-between;
}

.top_service .top_service_list_text {
	line-height: 2.5;
}

.top_service .top_service_list-b .top_service_list_text {
	padding-right: 20px;
}

.top_service .top_service_list-s .top_service_list_text {
	margin: 0 0 25px;
}

.top_service .top_service_list-s .linkBtn {
	margin: 0 0 0 auto;
}

@media screen and (max-width: 1600px) {
	.top_service .top_service_list li {
		padding: 0 45px 0 40px;
	}

	.top_service .top_service_list .top_service_list-b {
		padding-top: 2.8125vw;
	}

	.top_service .top_service_list-s .top_service_list_image_wrap {
		margin: 0 auto 30px;
	}

	.top_service .top_service_list_image_wrap_text::before {
		left: -40px;
		top: -2.8125vw;
		font-size: 5vw;
	}

	.top_service .top_service_list_title {
		bottom: 70px;
	}

	.top_service .top_service_list_title .ja {
		padding: 9px 14px 11px 10px;
		font-size: 2.75vw;
	}

	.top_service .top_service_list-s .top_service_list_title .ja {
		padding: 9px 14px 11px 10px;
		font-size: 1.875vw;
	}

	.top_service .top_service_list-s .top_service_list_text {
		margin: 0 0 20px;
	}
}

@media screen and (max-width: 1280px) {
	.top_service .top_service_list {
		justify-content: space-between;
		margin: 0 -20px 0 0;
	}

	.top_service .top_service_list li {
		padding: 0 40px 0 30px;
	}

	.top_service .top_service_list .top_service_list-b {
		padding-top: 2.8125vw;
	}

	.top_service .top_service_list-b:nth-child(2) {
		margin-top: 130px;
	}

	.top_service .top_service_list .top_service_list-s {
		padding: 0 30px 0 30px;
	}

	.top_service .top_service_list-s:nth-child(3) {
		margin: -35px 0 0;
	}

	.top_service .top_service_list-s:nth-child(4) {
		margin: 50px 0 0;
	}

	.top_service .top_service_list-s:nth-child(5) {
		margin: 135px 0 0;
		padding-right: 40px;
	}

	.top_service .top_service_list_image_wrap {
		margin: 0 auto 30px;
	}

	.top_service .top_service_list-s .top_service_list_image_wrap {
		margin: 0 auto 22px;
	}

	.top_service .top_service_list_image_wrap_text::before {
		left: -30px;
	}

	.top_service .top_service_list_title {
		bottom: 3.6vw;
		left: -30px;
	}

	.top_service .top_service_list_title .ja {
		font-size: calc(2.75vw * 0.95);
	}

	.top_service .top_service_list_title .en {
		font-size: 15px;
	}

	.top_service .top_service_list-b .top_service_list_description {
		display: block;
	}

	.top_service .top_service_list_text {
		margin: 0 0 20px;
		line-height: 2.4;
	}

	.top_service .top_service_list-b .top_service_list_text {
		padding-right: 0;
	}

	.top_service .linkBtn {
		margin: 0 0 0 auto;
	}
}

@media screen and (max-width: 1023px) {
	.top_service_title_wrap .top_service_title {
		font-size: calc(18.75vw * 1.1);
	}

	.top_service .top_service_list {
		margin: 0 -35px 0 0;
	}

	.top_service .top_service_list li {
		padding: 0 30px 0 20px;
	}

	.top_service .top_service_list-b:nth-child(2) {
		margin-top: 90px;
	}

	.top_service .top_service_list .top_service_list-s {
		padding: 0 18px 0 20px;
	}

	.top_service .top_service_list-s:nth-child(3) {
		margin: 0;
	}

	.top_service .top_service_list-s:nth-child(4) {
		margin: 60px 0 0;
	}

	.top_service .top_service_list-s:nth-child(5) {
		margin: 120px 0 0;
		padding-right: 30px;
	}

	.top_service .top_service_list_image_wrap {
		margin: 0 auto 22px;
	}

	.top_service .top_service_list-s .top_service_list_image_wrap {
		margin: 0 auto 22px;
	}

	.top_service .top_service_list_image_wrap_text::before {
		left: -20px;
	}

	.top_service .top_service_list_title {
		bottom: 3.6vw;
		left: -20px;
	}

	.top_service .top_service_list_title .en {
		padding: 4px 10px 2px 10px;
		font-size: 13px;
	}

	.top_service .top_service_list-s .top_service_list_title .ja {
		font-size: calc(1.875vw * 1.2);
	}

	.top_service .top_service_list_text {
		margin: 0 0 15px;
		line-height: 2.3;
	}

	.top_service .top_service_list-s .top_service_list_text {
		margin: 0 0 15px;
	}
}

@media screen and (max-width: 767px) {
	.top_service {
		padding: 0;
	}

	.top_service_title_wrap .top_service_title {
		left: -0.2em;
		top: -2em;
		font-size: 37.3333vw;
		letter-spacing: -0.05em;
	}

	.top_service .top_service_list {
		margin: 0;
	}

	.top_service .top_service_list li {
		padding: 0 0 0 25px;
	}

	.top_service .top_service_list .top_service_list-b {
		width: 100%;
		margin: 0 0 0 3.4666vw;
		padding-top: calc(2.8125vw * 2);
		padding-left: 5.3333vw;
	}

	.top_service .top_service_list-b:nth-child(2) {
		margin-top: 50px;
	}

	.top_service .top_service_list .top_service_list-s {
		width: 70.1333vw;
		padding: 0 0 0 5.0666vw;
	}

	.top_service .top_service_list-s:nth-child(3) {
		margin: 40px 0 0 5.6vw;
	}

	.top_service .top_service_list-s:nth-child(4) {
		margin: 40px 10.6666vw 0 auto;
	}

	.top_service .top_service_list-s:nth-child(5) {
		margin: 40px 0 0 5.6vw;
	}

	.top_service .top_service_list_image_wrap {
		margin: 0 auto 25px;
	}

	.top_service .top_service_list-s .top_service_list_image_wrap {
		width: 100%;
		margin: 0 auto 23px;
	}

	.top_service .top_service_list_image_wrap_text::before {
		left: -20px;
		top: calc(-2.8125vw * 2);
		font-size: 11.7333vw;
		letter-spacing: 0.02em;
	}

	.top_service .top_service_list_title {
		bottom: calc(3.6vw * 1.5);
		left: -20px;
	}

	.top_service .top_service_list_title .ja_wrap {
		margin: 0 0 5px;
	}

	.top_service .top_service_list_title .ja {
		margin: 0;
		padding: 6px 12px 9px 8px;
		font-size: 5.8666vw;
	}

	.top_service .top_service_list_title .en {
		padding: 3px 8px 2px 8px;
		font-size: 3.2vw;
	}

	.top_service .top_service_list-s .top_service_list_title .ja {
		padding: 6px 12px 9px 8px;
		font-size: 4.8vw;
	}

	.top_service .top_service_list-b .top_service_list_description {
		display: flex;
		justify-content: space-between;
		padding-right: 6.6666vw;
	}

	.top_service .top_service_list_text {
		margin: 0 0 10px;
		font-weight: 700;
		font-size: 13px;
		font-feature-settings: "palt";
		line-height: 1.8461;
	}

	.top_service .top_service_list-b .top_service_list_text {
		margin-right: 15px;
	}

	.top_service .top_service_list-s .top_service_list_text {
		margin: 0 0 15px;
		line-height: 1.9406;
	}
}

/* -- recruit -- */

.top_recruit {
	position: relative;
	padding: 0 5vw;
	z-index: 10;
}

.top_recruit::before {
	content: attr(data-text);
	position: absolute;
	right: -0.12em;
	top: -4.6875vw;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 900;
	font-size: 10.4166vw;
	line-height: 1;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	z-index: -1;
}

.top_recruit .top_recruit_inner {
	max-width: 1260px;
	margin: 0 auto;
	padding: 60px 0 200px;
}

.top_recruit .top_recruit_title_wrap {
	display: flex;
	justify-content: space-between;
	margin: 0 0 90px;
}

.top_recruit .top_recruit_title {
	margin: calc(-130px - 0.5em) 0 0;
	font-weight: 700;
	font-size: 60px;
	line-height: 1.22;
	letter-spacing: 0.02em;
}

.top_recruit .top_recruit_title .bg {
	display: inline-block;
	background-color: #fff;
	margin: 0;
	padding: 3px 10px 6px 15px;
	vertical-align: bottom;
}

.top_recruit .top_recruit_title .small {
	position: relative;
	font-size: 34px;
	line-height: 1.7647;
	margin: 0 0 -0.55em;
	padding: 0;
}

.top_recruit .top_recruit_title .big {
	margin: 0 0 -0.2em;
}

.top_recruit .top_recruit_title_wrap .linkBtn {
	margin-top: 7px;
}

.top_recruit .top_recruit_list {
	display: flex;
}

.top_recruit .top_recruit_list li {
	width: 25%;
	margin: 0;
	padding: 0 25px 0 10px;
}

.top_recruit .top_recruit_list li a img {
	opacity: 1 !important;
}

.top_recruit .top_recruit_list_item {
	display: flex;
	align-items: flex-end;
	position: relative;
	background: linear-gradient(135deg, #277ebb, #004b80);
	height: 611px;
}

.top_recruit .top_recruit_list li:nth-child(even) .top_recruit_list_item {
	background: linear-gradient(135deg, #f4a100, #d29000);
	margin: 60px 0 0;
}

.top_recruit .top_recruit_list_title {
	position: absolute;
	top: -4px;
	right: -3px;
	color: #fff;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 700;
	font-size: 50px;
	letter-spacing: 0.02em;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	line-height: 0.9;
}

.top_recruit .top_recruit_list_label {
	position: absolute;
	top: 30px;
	left: -10px;
	background-color: #ffba00;
	background-image: url(/struct/wp-content/uploads/dot.png);
	background-size: 7px;
	background-position: center center;
	padding: 12px 20px;
	color: #fff;
	font-size: 14px;
	line-height: 1.3;
}

.top_recruit .top_recruit_list_label:before {
	position: absolute;
	top: -10px;
	left: 0;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0 10px 10px;
	border-color: transparent transparent #8f6800 transparent;
}

.top_recruit .top_recruit_list_image_wrap {
	position: relative;
	overflow: hidden;
}

.top_recruit .top_recruit_list_image {
	margin-bottom: -1px;
}

.top_recruit .back {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	opacity: 0;
}

.top_recruit .top_recruit_list li a:hover .front {
	opacity: 0;
}

.top_recruit .top_recruit_list li a:hover .back {
	opacity: 1;
}

@media screen and (max-width: 1600px) {
	.top_recruit .top_recruit_title_wrap {
		justify-content: flex-start;
		margin: 0 0 90px;
	}

	.top_recruit .top_recruit_title_wrap .linkBtn {
		margin-top: 7px;
		margin-left: 60px;
	}
}

@media screen and (max-width: 1400px) {
	.top_recruit .top_recruit_list_item {
		height: 43.6428vw;
	}
}

@media screen and (max-width: 1280px) {
	.top_recruit::before {
		font-size: calc(10.4166vw * 1.2);
	}

	.top_recruit .top_recruit_inner {
		padding: 60px 0 180px;
	}

	.top_recruit .top_recruit_title_wrap {
		flex-direction: column;
		align-items: flex-start;
		justify-content: flex-start;
		margin: 0 0 40px;
	}

	.top_recruit .top_recruit_title {
		margin: calc(-12.5vw - 0.5em) 0 20px;
	}

	.top_recruit .top_recruit_title_wrap .linkBtn {
		align-self: flex-end;
		margin: 0 80px 0 0;
	}

	.top_recruit .top_recruit_list li {
		padding: 0 20px 0 10px;
	}

	.top_recruit .top_recruit_list_item {
		height: 43.6428vw;
	}
}

@media screen and (max-width: 1023px) {
	.top_recruit::before {
		font-size: calc(10.4166vw * 1.3);
	}

	.top_recruit .top_recruit_inner {
		padding: 60px 0 120px;
	}

	.top_recruit .top_recruit_title_wrap {
		margin: 0 0 45px;
	}

	.top_recruit .top_recruit_title {
		margin: calc((-12.5vw * 1.4) - 0.5em) 0 30px;
		font-size: calc(4.6875vw * 1.4);
	}

	.top_recruit .top_recruit_title .small {
		font-size: calc(2.6565vw * 1.5);
	}

	.top_recruit .top_recruit_list {
		margin: 0 -2vw;
	}

	.top_recruit .top_recruit_list li {
		padding: 0 10px 0 10px;
	}

	.top_recruit .top_recruit_list_title {
		top: -0.1em;
		right: -0.05em;
		font-size: 4vw;
	}

	.top_recruit .top_recruit_list_label {
		top: 20px;
		left: -10px;
		padding: 10px 16px 11px;
		font-size: 13px;
	}
}

@media screen and (max-width: 767px) {
	.top_recruit {
		padding: 0 5.4vw;
	}

	.top_recruit::before {
		right: 50%;
		top: 20vw;
		font-size: 9.0666vw;
		-ms-writing-mode: rl-tb;
		writing-mode: horizontal-tb;
		transform: translateX(50%);
	}

	.top_recruit .top_recruit_inner {
		padding: 1px 0 140px;
	}

	.top_recruit .top_recruit_title_wrap {
		margin: 0;
	}

	.top_recruit .top_recruit_title {
		margin: calc(-16.4vw - 1px) -1.3333vw 26.6666vw;
		font-size: 7.4666vw;
		line-height: 1.3103;
		letter-spacing: 0.03em;
		font-feature-settings: "palt";
	}

	.top_recruit .top_recruit_title .bg {
		margin: 0;
		padding: 0.04em 0.4em 0.15em 0.8em;
	}

	.top_recruit .top_recruit_title .small {
		font-size: 4.16vw;
		line-height: 1.8;
		margin: 0 0 -0.35em;
		padding: 0;
	}

	.top_recruit .top_recruit_title_wrap .linkBtn {
		margin: 0 -1.0667vw 0 auto;
		position: absolute;
		bottom: 40px;
	}

	.top_recruit .top_recruit_list {
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 0;
	}

	.top_recruit .top_recruit_list li {
		width: 47.5155%;
		padding: 0 5px;
	}

	.top_recruit .top_recruit_list li:nth-child(n + 3) {
		margin-top: 30px;
	}

	.top_recruit .top_recruit_list_item {
		height: calc(43.6428vw * 1.9);
	}

	.top_recruit .top_recruit_list li:nth-child(even) .top_recruit_list_item {
		margin: 0;
	}

	.top_recruit .top_recruit_list_title {
		top: -0.1em;
		right: -0.05em;
		font-size: 6.7786vw;
	}

	.top_recruit .top_recruit_list_label {
		top: 15px;
		left: -5px;
		background-position: center top 20%;
		padding: 4px 10px 5px;
		font-size: 10px;
	}

	.top_recruit .top_recruit_list_label:before {
		top: -6px;
		border-width: 0 0 6px 5px;
	}
}

/* -- トップ　投稿 -- */

#front-sectionPost {
	background-color: #0d0d0d;
	padding: 200px 5vw;
	color: #fff;
}

#front_bottom_content {
	display: flex;
	justify-content: space-between;
	max-width: 900px;
	margin: 0 auto;
	flex-wrap: wrap;
}

#front_bottom_content .linkBtn-area {
	width: 100%;
}

#front_bottom_content .linkBtn {
	display: block;
}

#front_bottom_content .linkBtn a {
	justify-content: right;
}

#front_bottom_content .linkBtn-area .linkBtn a .circle {
	background: #fff;
}

#front_bottom_content .linkBtn-area .linkBtn a .arrow::before,
#front_bottom_content .linkBtn-area .linkBtn a .arrow::after {
	background: #565454;
	z-index: 10;
}

#front_bottom_content .listTitle {
	width: 36.6666%;
	padding: 0 40px 0 0;
}

#front-sectionPost h1.title {
	margin: 0;
	color: inherit;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 900;
	font-size: 70px;
	line-height: 1;
	letter-spacing: 0.06em;
	transform: translateY(-0.1em);
}

#front_bottom_content ul {
	width: 63.3333%;
}

@media screen and (max-width: 1023px) {
	#front-sectionPost {
		padding: 100px 8vw;
	}

	#front_bottom_content {
		display: block;
		max-width: 700px;
	}

	#front_bottom_content .listTitle {
		width: 100%;
		margin: 0 0 40px;
	}

	#front-sectionPost h1.title {
		font-size: 60px;
	}

	#front_bottom_content ul {
		width: 100%;
	}
}

@media screen and (max-width: 767px) {
	#front-sectionPost {
		padding: 50px 8vw;
	}

	#front_bottom_content .listTitle {
		width: 100%;
		margin: 0 0 30px;
	}

	#front-sectionPost h1.title {
		font-size: 40px;
	}
}

/* ----------------------
下層　共通
---------------------- */

/* -- 下層　パラグラフ -- */

body:not(.home) p {
	letter-spacing: 0.04em;
}

.post .title-2_text {
	margin-bottom: 75px;
	text-align: center;
}

/* -- lead -- */

.post .lead {
	margin: 0 0 30px;
	font-weight: 700;
	font-size: 30px;
	line-height: 1.6;
}

.post .big-text {
	font-weight: 700;
	font-size: 2rem;
}

@media screen and (max-width: 1023px) {
	.post .title-2_text {
		margin-bottom: 60px;
	}

	.post .lead {
		margin: 0 0 25px;
		font-size: 26px;
		line-height: 1.65;
	}

	.post .big-text {
		font-size: 1.8rem;
	}
}

@media screen and (max-width: 767px) {
	.post .title-2_text {
		margin-bottom: 30px;
		text-align: left;
	}

	.post .lead {
		margin: 0 0 15px;
		font-size: 17px;
		line-height: 1.8;
	}

	.post .big-text {
		font-size: 1.6rem;
	}
}

/* -- アイキャッチ -- */

#h1Header #thumb,
#thumbImg {
	position: relative;
	height: 36.4583vw;
	overflow: hidden;
}

#h1Header.h1Header900 #thumb {
	height: 47.9177vw;
}

#h1Header #thumb img,
#thumbImg img {
	position: absolute;
	max-width: none;
	width: auto;
	height: 100%;
	top: 0;
	left: 50%;
	margin: 0;
	transform: translateX(-50%);
}

@media screen and (min-width: 1921px) {

	#h1Header #thumb,
	#thumbImg {
		position: relative;
		overflow: hidden;
	}

	#h1Header.h1Header900 #thumb {
		height: 46vw;
	}

	#h1Header #thumb img,
	#thumbImg img {
		width: 100%;
		height: auto;
	}
}

@media screen and (max-width: 1600px) {
	/* -- アイキャッチ -- */

	#h1Header #thumb,
	#thumbImg {
		height: calc(36.4583vw * 1.1);
	}

	#h1Header #thumb img,
	#thumbImg img {
		margin-left: 0;
	}
}

@media screen and (max-width: 1023px) {
	/* -- アイキャッチ -- */

	#h1Header #thumb,
	#thumbImg {
		height: calc(36.4583vw * 1.35);
		min-height: 230px;
	}

	#h1Header #thumb img,
	#thumbImg img {
		margin-left: 0;
	}

	#h1Header.h1Header900 #thumb {
		height: 97.6531vw;
	}

	/* -- IE -- */
	_:-ms-input-placeholder,
	:root #h1Header.h1Header900 #thumb {
		height: 46.875vw;
	}
}

/* -- 背景色 -- */

.post .bg-gray {
	position: relative;
	padding: 120px 0;
}

.post .bg-gray::before {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: #f7f7f7;
	margin: 0 calc(50% - 50vw);
	z-index: -1;
}

.post .bg-gray-bottom {
	padding-bottom: 0 !important;
}

.post .bg-gray-bottom::before {
	bottom: -160px;
}

@media only screen and (max-width: 1023px) {
	.post .bg-gray {
		position: relative;
		padding: 100px 0;
	}

	.post .bg-gray-bottom::before {
		bottom: -120px;
	}
}

@media only screen and (max-width: 767px) {
	.post .bg-gray {
		position: relative;
		padding: 60px 0;
	}

	.post .bg-gray-bottom::before {
		bottom: -60px;
	}
}

/* -- blue_box -- */

.post .blue_box_line {
	position: relative;
}

.post .blue_box_line::before,
.post .blue_box_line::after {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	width: 1px;
	height: 65px;
	z-index: 10;
}

.post .blue_box_line::before {
	bottom: 0;
	background-color: #fff;
}

.post .blue_box_line::after {
	bottom: -65px;
	background-color: #0d0d0d;
}

.post .blue_box {
	position: relative;
	background-color: #0068b1;
	padding: calc(70px + 65px) calc(65px + 65px);
	color: #fff;
	z-index: 5;
}

.post .blue_box::before {
	content: "";
	display: block;
	position: absolute;
	top: 65px;
	bottom: 65px;
	left: 65px;
	right: 65px;
	background-color: #005189;
	z-index: -1;
}

.post .blue_box_title {
	margin: calc(-0.5em - 0.5em - 65px) 0 45px;
	padding: 0;
	color: inherit !important;
	font-weight: 700;
	font-size: 26px;
	text-align: center;
	line-height: 1.6;
	letter-spacing: 0.06em;
}

.post .blue_box_text {
	color: inherit;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 0.06em;
}

@media screen and (max-width: 1023px) {

	.post .blue_box_line::before,
	.post .blue_box_line::after {
		height: 50px;
	}

	.post .blue_box_line::after {
		bottom: -50px;
	}

	.post .blue_box {
		padding: calc(50px + 45px) calc(50px + 45px);
		color: #fff;
		z-index: 5;
	}

	.post .blue_box::before {
		top: 50px;
		bottom: 50px;
		left: 45px;
		right: 45px;
	}

	.post .blue_box_title {
		margin: calc(-0.5em - 0.3em - 45px) 0 30px;
		font-size: 22px;
	}

	.post .blue_box_text {
		font-size: 17px;
	}
}

@media screen and (max-width: 767px) {

	.post .blue_box_line::before,
	.post .blue_box_line::after {
		height: 35px;
	}

	.post .blue_box_line::after {
		bottom: -35px;
	}

	.post .blue_box {
		margin: 0 -2vw;
		padding: calc(40px + 28px) calc(5% + 5%);
		color: #fff;
		z-index: 5;
	}

	.post .blue_box::before {
		top: 35px;
		bottom: 35px;
		left: 5%;
		right: 5%;
	}

	.post .blue_box_title {
		margin: calc(-0.5em - 0.35em - 28px) 0 25px;
		font-size: 18px;
	}

	.post .blue_box_text {
		font-size: 15px;
	}
}

/* -- white_box -- */

.post .white_box {
	background-color: #fff;
	box-shadow: 0 30px 37px 0 rgba(0, 0, 0, 0.05);
	padding: 40px 40px 70px;
}

@media screen and (max-width: 1023px) {
	.post .white_box {
		padding: 35px 35px 55px;
	}
}

@media screen and (max-width: 767px) {
	.post .white_box {
		padding: 8% 8% 10%;
	}
}

/* -- flex-gray -- */

.post .flex-gray {
	position: relative;
	padding: 80px 0 0;
}

.post .flex-gray .flex-gray_description {
	background-color: #f7f7f7;
	width: 72.6271%;
	min-height: 430px;
	padding: 0 22.6271% 0 0;
}

.post .flex-gray_description_inner {
	max-width: 590px;
	padding: 60px 78px;
}

.post .flex-gray_title {
	margin: 0 0 20px;
	font-weight: 700;
	font-size: 26px;
	line-height: 1.5769;
	letter-spacing: 0.06em;
}

.post .flex-gray_title_height {
	margin-top: 30px;
}

.post .flex-gray_text {
	text-align: justify;
	line-height: 2.5;
}

.post .flex-gray .flex-gray_imege {
	position: absolute;
	top: 0;
	right: 0;
	width: 50%;
	box-shadow: 0 30px 37px 0 rgba(0, 0, 0, 0.05);
}

.post .flex-gray-r .flex-gray_description {
	margin-left: auto;
	padding: 0 0 0 22.6271%;
}

.post .flex-gray-r .flex-gray_imege {
	right: auto;
	left: 0;
}

.post .flex-gray_list {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 4px -4px 19px;
	padding: 0;
}

.post .flex-gray_list li {
	background-color: #0068b1;
	width: calc(33.3333% - 8px);
	margin: 6px 4px;
	padding: 0.4em 2px 0.5em 8px;
	color: #fff;
	font-size: 14px;
	text-align: center;
	letter-spacing: 0.04em;
	line-height: 1.6;
}

.post .flex-gray_list li span {
	margin-left: -0.18em;
}

@media screen and (max-width: 1280px) {
	.post .flex-gray {
		padding: 60px 0 0;
	}

	.post .flex-gray .flex-gray_description {
		width: 76.6271%;
		min-height: 394px;
	}

	.post .flex-gray_description_inner {
		max-width: 590px;
		padding: 55px 60px;
	}

	.post .flex-gray_title {
		margin: 0 0 20px;
		font-weight: 700;
		font-size: 26px;
		line-height: 1.5769;
		letter-spacing: 0.06em;
	}

	.post .flex-gray_title_height {
		margin-top: 25px;
	}

	.post .flex-gray .flex-gray_imege {
		width: 46%;
	}

	.post .flex-gray_list {
		margin: 4px -3px 19px;
	}

	.post .flex-gray_list li {
		width: calc(33.3333% - 6px);
		margin: 6px 3px;
		padding: 0.4em 2px 0.4em 8px;
		font-size: 13px;
	}
}

@media screen and (max-width: 1023px) {
	.post .flex-gray {
		padding: 60px 0 0;
	}

	.post .flex-gray .flex-gray_description {
		width: 90%;
		min-height: 300px;
		padding: 0;
		overflow: hidden;
	}

	.post .flex-gray .flex-gray_description::before {
		content: "";
		display: block;
		width: 30.4947vw;
		height: 30.3385vw;
		margin: -50px 0 30px 50px;
		float: right;
	}

	.post .flex-gray_description_inner {
		max-width: none;
		padding: 45px 50px;
	}

	.post .flex-gray_title {
		font-size: 22px;
		clear: none;
	}

	.post .flex-gray_title_height {
		margin-top: 0;
	}

	.post .flex-gray_text {
		text-align: left;
		line-height: 2.5;
	}

	.post .flex-gray .flex-gray_imege {
		width: 45%;
	}

	.post .flex-gray .flex-gray_description {
		width: 90%;
		min-height: 300px;
		padding: 0;
		overflow: hidden;
	}

	.post .flex-gray-r .flex-gray_description::before {
		margin: -50px 50px 30px 0;
		float: left;
	}

	.post .flex-gray_list {
		margin: 7px -4px 20px;
	}

	.post .flex-gray_list li {
		width: calc(50% - 8px);
		margin: 4px;
		padding: 0.4em 2px 0.4em 8px;
	}
}

@media screen and (max-width: 767px) {
	.post .flex-gray {
		display: flex;
		flex-direction: column;
		padding: 40px 0 0;
	}

	.post .flex-gray .flex-gray_description {
		width: 95%;
		min-height: 300px;
		padding: 0;
		overflow: hidden;
	}

	.post .flex-gray .flex-gray_description::before {
		content: "";
		display: block;
		width: 100%;
		height: 62.1333vw;
		margin: -40px -5% 0 auto;
		float: none;
	}

	.post .flex-gray_description_inner {
		max-width: none;
		padding: 28px 8.5%;
	}

	.post .flex-gray_title {
		margin: 0 0 15px;
		font-size: 18px;
		clear: none;
	}

	.post .flex-gray_text {
		line-height: 2;
	}

	.post .flex-gray .flex-gray_imege {
		width: 92%;
		min-height: 0%;
	}

	.post .flex-gray_list {
		margin: 7px -4px 20px;
	}

	.post .flex-gray_list li {
		width: calc(50% - 8px);
		margin: 4px;
		padding: 0.4em 2px 0.4em 8px;
	}

	.post .flex-gray_list li:nth-child(3) {
		width: calc(62% - 8px);
	}
}

/* -- flex-3 -- */

.post .flex-3 {
	display: flex;
	flex-wrap: wrap;
}

.post .flex-3_item {
	width: 31.0169%;
	margin: 0;
}

.post .flex-3_item:not(:nth-child(3n + 1)) {
	margin-left: 3.4746%;
}

.post .flex-3_item:nth-child(n + 4) {
	margin-top: 4.5%;
}

@media screen and (max-width: 767px) {
	.post .flex-3 {
		display: flex;
		flex-wrap: wrap;
	}

	.post .flex-3_item {
		width: 48%;
		margin: 0;
	}

	.post .flex-3_item:not(:nth-child(3n + 1)) {
		margin-left: 0;
	}

	.post .flex-3_item:not(:nth-child(2n + 1)) {
		margin-left: 4%;
	}

	.post .flex-3_item:nth-child(n + 3) {
		margin-top: 8%;
	}
}

/* ----------------------
下層　募集要項
---------------------- */

.page-recruit-info #wrapper {
	padding-bottom: 0;
}

.select_link .vision_accordion {
	display: flex;
	flex-wrap: wrap;
	max-width: 90%;
	width: 350px;
	margin: 0 auto;
	font-family: inherit;
	font-size: inherit;
	letter-spacing: inherit;
}

.select_link .accordion_heading {
	position: relative;
	border: none !important;
	border-radius: 0 !important;
	background: #0068b1 !important;
	width: 100%;
	padding: 25px 30px !important;
	color: #fff;
	font-family: inherit;
	font-weight: 500 !important;
	font-size: 18px;
	line-height: 1.5;
	letter-spacing: inherit;
}

.select_link .accordion_heading::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 31px;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	width: 12px;
	height: 12px;
	transform-origin: center center;
	transform: translateY(-90%) rotate(45deg);
	transition: transform 0.3s;
}

.select_link .accordion_heading.ui-state-active::after {
	transform: translateY(-40%) rotate(225deg);
}

.select_link .accordion_content {
	border: none !important;
	background: none !important;
	width: 100%;
	color: inherit;
	font-family: inherit;
	font-weight: 400;
	font-size: inherit;
	line-height: 1.6666;
}

.select_link .ui-accordion .ui-accordion-content {
	padding: 0;
}

.select_link .select_list li {
	border-bottom: 1px solid #fff;
	margin: 0;
}

.select_link .select_list li a {
	display: block;
	background-color: #efefef;
	padding: 22px 30px;
	color: inherit;
	text-decoration: none;
	line-height: 1.5;
	letter-spacing: inherit;
	transition: background-color 0.3s;
}

.select_link .select_list li a:hover {
	background-color: #d8e0e8;
}

.recruit .recruit_image {
	margin: 0 calc(50% - 50vw);
}

.recruit .recruit_title_wrap {
	position: relative;
	margin: 0 calc(50% - 50vw) 100px;
	overflow: hidden;
}

.recruit .recruit_title_image {
	width: 100%;
}

.recruit .recruit_title_image::after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(6, 42, 67, 0.5);
}

.recruit .recruit_title {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	margin: 0;
	padding: 0 5vw;
	font-weight: 700;
	font-size: 40px;
	color: #fff;
	text-align: center;
	transform: translate(-50%, -50%);
	z-index: 5;
}

.recruit .recruit_table th {
	width: 25%;
}

.recruit .flow_list {
	display: flex;
	justify-content: space-between;
	margin: 0 0 40px;
	padding: 0;
}

.recruit .flow_list li {
	width: calc(33.3333% - 50px);
	margin: 0;
	padding: 0;
}

.recruit .flow_list_image {
	position: relative;
	margin: 0 0 10px;
}

.recruit .flow_list_image::after {
	content: "";
	display: block;
	position: absolute;
	top: calc(50% - 15px);
	right: -49px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 0 15px 20px;
	border-color: transparent transparent transparent #005189;
}

.recruit .flow_list li:last-child .flow_list_image::after {
	content: none;
}

.recruit .flow_list_text {
	font-weight: 700;
	font-size: 20px;
	text-align: center;
}

.recruit .flow_list_text::before {
	counter-increment: number 1;
	content: counter(number) ". ";
	color: #0068b1;
}

.recruit .recruit_contact_flex {
	display: flex;
	justify-content: center;
	margin: 100px 0 0;
}

.recruit_contact_right {
	margin: 0 0 0 60px;
}

.recruit_contact_right .big {
	font-weight: 700;
	font-size: 20px;
}

@media screen and (max-width: 1023px) {
	.recruit .recruit_title_image {
		width: 100%;
	}

	.recruit .recruit_title {
		font-size: 30px;
	}

	.recruit .recruit_table th {
		width: 24%;
	}

	.recruit .flow_list {
		margin: 0 0 40px;
		padding: 0;
	}

	.recruit .flow_list li {
		width: calc(33.3333% - 30px);
		margin: 0;
		padding: 0;
	}

	.recruit .flow_list_image {
		position: relative;
		margin: 0 0 10px;
	}

	.recruit .flow_list_image::after {
		top: calc(50% - 12px);
		right: -32px;
		border-width: 12px 0 12px 16px;
	}

	.recruit .flow_list_text {
		font-size: 18px;
	}

	.recruit .recruit_contact_flex {
		align-items: center;
		margin: 60px 0 0;
	}

	.recruit .recruit_contact_button a {
		width: 360px;
	}

	.recruit_contact_right {
		margin: 0 0 0 40px;
	}

	.recruit_contact_right .big {
		font-weight: 700;
		font-size: 18px;
	}
}

@media screen and (max-width: 767px) {
	.select_link .vision_accordion {
		width: 250px;
	}

	.select_link .accordion_heading {
		padding: 15px 20px !important;
		font-size: 15px;
	}

	.select_link .accordion_heading::after {
		right: 21px;
	}

	.select_link .select_list li a {
		padding: 15px 20px;
	}

	.recruit .recruit_title_wrap {
		margin: 0 calc(50% - 50vw) 15px;
	}

	.recruit .recruit_title_image {
		width: 100%;
		height: 28vw;
		min-height: 110px;
	}

	.recruit .recruit_title_image img {
		position: absolute;
		top: 0;
		left: 50%;
		max-width: none;
		width: auto;
		height: 100%;
		transform: translateX(-50%);
	}

	.recruit .recruit_title {
		font-size: 20px;
	}

	.recruit .recruit_table th {
		width: calc(5em + 20px);
	}

	.recruit .flow_list {
		flex-direction: column;
		width: 80%;
		margin: 0 auto 30px;
		padding: 0;
	}

	.recruit .flow_list li {
		position: relative;
		width: 100%;
		min-height: 0%;
		margin: 0;
		padding: 0;
	}

	.recruit .flow_list li::after {
		content: "";
		display: block;
		position: absolute;
		bottom: -28px;
		left: calc(50% - 11px);
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 12px 9px 0 9px;
		border-color: #005189 transparent transparent transparent;
	}

	.recruit .flow_list li:last-child::after {
		content: none;
	}

	.recruit .flow_list li+li {
		margin-top: 50px;
	}

	.recruit .flow_list_image {
		position: relative;
		margin: 0 0 10px;
		text-align: center;
	}

	.recruit .flow_list_image::after {
		content: none;
	}

	.recruit .flow_list_text {
		font-size: 17px;
	}

	.recruit .recruit_contact_flex {
		flex-direction: column-reverse;
		margin: 25px 0 0;
	}

	.recruit .recruit_contact_button a {
		max-width: 100%;
		width: 300px;
	}

	.recruit_contact_right {
		margin: 0 0 25px;
	}

	.recruit_contact_right .big {
		font-size: 17px;
	}
}

/* ----------------------
下層　先輩インタビュー
---------------------- */

.post .interview h2 {
	margin-bottom: 50px;
}

.interview .interview_box_head {
	display: flex;
	flex-direction: column;
	position: relative;
}

.interview .interview_box_head {
	margin: 0 0 140px;
}

.interview .interview_box_head_image {
	margin: 0 calc(50% - 50vw);
	min-height: 0%;
	text-align: center;
	order: 1;
}

.interview .interview_box_head_text {
	display: flex;
	flex-direction: column;
	position: relative;
	background-color: #0068b1;
	border-bottom: 5px solid #ff9000;
	max-width: 555px;
	margin: -172px 0 0 auto;
	padding: 0 60px 50px 60px;
	color: #fff;
	order: 2;
	z-index: 5;
}

.interview .interview_box_head_text::after {
	content: "";
	display: block;
	position: absolute;
	top: -102px;
	right: -34px;
	background-repeat: no-repeat;
	background-size: contain;
}

.interview-1 .interview_box_head_text::after {
	background-image: url(/struct/wp-content/uploads/aflo02.png);
	width: 160px;
	height: 169px;
}

.interview-2 .interview_box_head_text::after {
	background-image: url(/struct/wp-content/uploads/aflo03.png);
	width: 156px;
	height: 175px;
}

.interview-3 .interview_box_head_text::after {
	background-image: url(/struct/wp-content/uploads/aflo05.png);
	width: 156px;
	height: 172px;
}

.interview-4 .interview_box_head_text::after {
	background-image: url(/struct/wp-content/uploads/aflo06.png);
	width: 160px;
	height: 169px;
}

.interview .interview_box_en {
	margin: -1.4em 0 25px;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 700;
	font-size: 50px;
	line-height: 0.9;
	letter-spacing: 0.02em;
	order: 1;
}

.interview .interview_box_title {
	margin: 0 0 32px;
	color: inherit;
	font-size: 18px;
	line-height: 1.3;
	order: 2;
}

.interview .interview_box_lead {
	margin: 0;
	font-weight: 700;
	font-size: 26px;
	font-feature-settings: "palt";
	line-height: 1.5769;
	letter-spacing: 0.05em;
	order: 3;
}

.interview .interview_box_qa {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
}

.interview .interview_box_qa:nth-child(even) {
	flex-direction: row;
}

.interview .interview_box_qa+.interview_box_qa {
	margin-top: 120px;
}

.interview .interview_box_qa_image {
	width: 43.8983%;
}

.interview .interview_box_qa_text_wrap {
	width: 50%;
	padding-left: 6.6101%;
}

.interview .interview_box_qa:nth-child(even) .interview_box_qa_text_wrap {
	padding-left: 0;
	padding-right: 6.6101%;
}

.interview_box_qa_text+.interview_box_qa_text {
	margin-top: 50px;
}

.interview .interview_box_q {
	position: relative;
	border: none;
	border-bottom: 1px solid #000;
	margin: 0 0 16px;
	padding: 0 0 28px 1.5em;
	font-weight: 700;
	font-size: 26px;
	line-height: 1.5769;
}

.interview .interview_box_q::before {
	position: absolute;
	left: 0;
	top: 0;
	content: "Q.";
	color: #0068b1;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 700;
}

.interview .interview_box_a {
	line-height: 2.5;
}

.interview .recruit_button a {
	position: relative;
	padding-left: 145px;
	padding-right: 145px;
}

.interview .recruit_button a::after {
	content: "";
	display: block;
	position: absolute;
	right: -50px;
	top: -63px;
	width: 187px;
	height: 202px;
	background-image: url(/struct/wp-content/uploads/joinus.png);
	background-size: contain;
	background-repeat: no-repeat;
}

@media screen and (max-width: 1400px) {
	.interview .interview_box_head_text {
		max-width: 540px;
		margin: -158px 0 0 auto;
		padding: 0 60px 45px 60px;
	}

	.interview .interview_box_head_text::after {
		top: calc(-102px * 0.85);
		right: calc(-34px * 0.85);
	}

	.interview-1 .interview_box_head_text::after {
		width: calc(160px * 0.85);
		height: calc(169px * 0.85);
	}

	.interview-2 .interview_box_head_text::after {
		width: calc(156px * 0.85);
		height: calc(175px * 0.85);
	}

	.interview-3 .interview_box_head_text::after {
		width: calc(156px * 0.85);
		height: calc(172px * 0.85);
	}

	.interview-4 .interview_box_head_text::after {
		width: calc(160px * 0.85);
		height: calc(169px * 0.85);
	}

	.interview .interview_box_en {
		font-size: 45px;
	}

	.interview .interview_box_title {
		margin: 0 0 25px;
	}

	.interview .interview_box_lead {
		font-size: 24px;
	}
}

@media screen and (max-width: 1200px) {
	.interview .interview_box_head_text {
		max-width: 520px;
		margin: -100px 0 0 auto;
		padding: 0 50px 40px 50px;
	}

	.interview .interview_box_en {
		font-size: 40px;
		line-height: 1;
	}

	.interview .interview_box_title {
		margin: 0 0 25px;
	}

	.interview .interview_box_lead {
		font-size: 24px;
	}

	.interview .interview_box_qa_text_wrap {
		padding-left: 4%;
	}

	.interview .interview_box_qa:nth-child(even) .interview_box_qa_text_wrap {
		padding-left: 0;
		padding-right: 4%;
	}
}

@media screen and (max-width: 1023px) {
	.post .interview h2 {
		margin-bottom: 40px;
	}

	.interview .interview_box_head {
		margin: 0 0 100px;
	}

	.interview .interview_box_head_image {
		margin: 0 calc(50% - 60vw);
		min-height: 0%;
		text-align: center;
		order: 1;
	}

	.interview .interview_box_head_text {
		max-width: 460px;
		margin: -60px 0 0 auto;
		padding: 0 40px 40px 40px;
	}

	.interview .interview_box_head_text::after {
		top: calc(-102px * 0.6);
		right: calc(-34px * 0.4);
	}

	.interview-1 .interview_box_head_text::after {
		width: calc(160px * 0.65);
		height: calc(169px * 0.65);
	}

	.interview-2 .interview_box_head_text::after {
		width: calc(156px * 0.65);
		height: calc(175px * 0.65);
	}

	.interview-3 .interview_box_head_text::after {
		width: calc(156px * 0.65);
		height: calc(172px * 0.65);
	}

	.interview-4 .interview_box_head_text::after {
		width: calc(160px * 0.65);
		height: calc(169px * 0.65);
	}

	.interview .interview_box_en {
		margin: -1.4em 0 18px;
		font-size: 38px;
		line-height: 1;
	}

	.interview .interview_box_title {
		margin: 0 0 20px;
	}

	.interview .interview_box_lead {
		font-size: 22px;
	}

	.interview .interview_box_qa {
		display: block;
		overflow: hidden;
	}

	.interview .interview_box_qa+.interview_box_qa {
		margin-top: 60px;
	}

	.interview .interview_box_qa_image {
		flex-shrink: 0;
		width: 38%;
		margin: 0 0 20px 50px;
		float: right;
	}

	.interview .interview_box_qa:nth-child(even) .interview_box_qa_image {
		float: left;
		margin: 0 50px 20px 0;
	}

	.interview .interview_box_qa_text_wrap {
		width: auto;
		padding-left: 0;
	}

	.interview .interview_box_qa:nth-child(even) .interview_box_qa_text_wrap {
		padding-left: 0;
		padding-right: 0;
	}

	.interview_box_qa_text+.interview_box_qa_text {
		margin-top: 40px;
	}

	.interview .interview_box_q {
		margin: 0 0 13px;
		padding: 0 0 20px 1.5em;
		font-size: 21px;
		line-height: 1.6;
		clear: none;
		overflow: hidden;
	}

	.interview .recruit_button a {
		padding-left: 100px;
		padding-right: 100px;
	}

	.interview .recruit_button a::after {
		right: calc(-50px * 0.8);
		top: calc(-63px * 0.8);
		width: calc(187px * 0.8);
		height: calc(202px * 0.8);
	}
}

@media screen and (max-width: 767px) {
	.post .interview h2 {
		margin-bottom: 20px;
	}

	.interview .interview_box_head {
		margin: 0 0 35px;
	}

	.interview .interview_box_head_image {
		margin: 0 calc(50% - 75vw);
	}

	.interview .interview_box_head_text {
		width: 95%;
		margin: -30px auto 0;
		padding: 0 6% 7% 6%;
	}

	.interview .interview_box_head_text::after {
		transform: translateY(-70%);
	}

	.interview-1 .interview_box_head_text::after {
		top: 0;
		right: calc(-40px * 0.2);
		width: calc(188px * 0.4);
		height: calc(199px * 0.4);
	}

	.interview-2 .interview_box_head_text::after {
		top: 0;
		right: calc(-40px * 0.2);
		width: calc(183px * 0.4);
		height: calc(206px * 0.4);
	}

	.interview-3 .interview_box_head_text::after {
		top: 0;
		right: calc(-40px * 0.2);
		width: calc(183px * 0.4);
		height: calc(203px * 0.4);
	}

	.interview-4 .interview_box_head_text::after {
		top: 0;
		right: calc(-40px * 0.2);
		width: calc(188px * 0.4);
		height: calc(199px * 0.4);
	}

	.interview .interview_box_en {
		margin: -1.4em 0 12px;
		font-size: 32px;
	}

	.interview .interview_box_title {
		margin: 0 0 12px;
		font-size: 14px;
	}

	.interview .interview_box_lead {
		font-size: 18px;
	}

	.interview .interview_box_qa {
		display: flex;
		flex-direction: column-reverse;
	}

	.interview .interview_box_qa:nth-child(even) {
		flex-direction: column-reverse;
	}

	.interview .interview_box_qa+.interview_box_qa {
		margin-top: 35px;
	}

	.interview .interview_box_qa_image {
		max-width: 400px;
		max-width: 80%;
		width: 80%;
		margin: 0 auto;
		float: none;
	}

	.interview .interview_box_qa:nth-child(even) .interview_box_qa_image {
		float: none;
		margin: 0 auto;
	}

	.interview .interview_box_qa_text_wrap {
		width: auto;
		margin: 0 0 30px;
		padding-left: 0;
	}

	.interview .interview_box_qa:nth-child(even) .interview_box_qa_text_wrap {
		padding-left: 0;
		padding-right: 0;
	}

	.interview_box_qa_text+.interview_box_qa_text {
		margin-top: 20px;
	}

	.interview .interview_box_q {
		margin: 0 0 10px;
		padding: 0 0 15px 1.5em;
		font-size: 18px;
		line-height: 1.6;
		clear: none;
		overflow: hidden;
	}

	.interview .interview_box_a {
		line-height: 2.2;
	}

	.interview .recruit_button {
		padding: 0 40px;
	}

	.interview .recruit_button a {
		padding-left: 50px;
		padding-right: 50px;
	}

	.interview .recruit_button a::after {
		right: calc(-50px * 0.8);
		top: calc(-63px * 0.5);
		width: calc(187px * 0.5);
		height: calc(202px * 0.5);
	}
}

@media screen and (max-width: 359px) {
	.interview .interview_box_head_text::after {
		top: 0;
		right: calc(-34px * 0.2);
		transform: translateY(-70%);
	}

	.interview-1 .interview_box_head_text::after {
		width: calc(160px * 0.35);
		height: calc(169px * 0.35);
	}

	.interview-2 .interview_box_head_text::after {
		width: calc(156px * 0.35);
		height: calc(175px * 0.35);
	}

	.interview-3 .interview_box_head_text::after {
		width: calc(156px * 0.35);
		height: calc(172px * 0.35);
	}

	.interview-4 .interview_box_head_text::after {
		width: calc(160px * 0.35);
		height: calc(169px * 0.35);
	}

	.interview .interview_box_en {
		width: calc(100% - 35px);
		font-size: 30px;
	}

	.interview .recruit_button a {
		padding-left: 25px;
		padding-right: 40px;
	}

	.interview .recruit_button a::after {
		top: calc(-63px * 0.4);
		width: calc(187px * 0.4);
		height: calc(202px * 0.4);
	}
}

/* ----------------------
下層　不動産開発事業
---------------------- */

.page-used-house-renovation #wrapper {
	position: relative;
}

.page-used-house-renovation #wrapper::before {
	content: "";
	display: block;
	position: absolute;
	top: 550px;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: #f7f7f7;
	margin: 0 calc(50% - 50vw);
	z-index: -1;
}

.renovation .linkBtn {
	margin-top: 3rem;
	margin-left: auto;
}

.renovation .nu_logo {
	height: 45px;
	margin-right: 3px;
	margin-bottom: 1px;
	vertical-align: middle;
}

.post .kichi_logo {
	height: 55px;
	margin-right: 3px;
	margin-bottom: 1px;
	vertical-align: middle;
}

.renovation .renovation_works {
	margin-top: 120px;
}

.renovation .works_box+.works_box {
	margin-top: 120px;
}

.renovation .works_box_flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.renovation .works_box_left,
.renovation .works_box_right {
	width: calc(50% - 10px);
	margin-bottom: 20px;
}

.renovation .works_box_bottom {
	width: 100%;
}

.comingsoon {
	position: relative;
}

.comingsoon::after {
	content: "Coming soon...";
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	background-color: rgba(0, 0, 0, 0.6);
	color: #fff;
	font-family: "Merriweather Sans", sans-serif;
	font-size: 25px;
	letter-spacing: 0.06em;
	pointer-events: none;
}

/* -- ギャラリー共通 -- */

.renovation .gallery {
	margin: 0;
	padding: 0;
}

.renovation .wpview {
	width: 100%;
	margin-bottom: 0;
}

.renovation .works_box .gallery-item {
	float: none;
	padding: 0;
	text-align: center;
}

.renovation .works_box .gallery-icon a {
	display: block;
	position: relative;
	overflow: hidden;
}

.renovation .works_box .gallery-caption {
	max-width: 100%;
	margin: 1rem 0 0;
	padding: 0;
	font-size: 1.3rem;
	text-align: left;
	line-height: 1.5;
}

.renovation .works_box .gallery-icon a img {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: none;
	width: auto;
	height: 100%;
	transform: translate(-50%, -50%);
	transition: 0.3s transform;
}

.renovation .works_box .gallery-icon a:hover img {
	opacity: 1;
	transform: scale(1.1) translate(-45.4545%, -45.4545%);
}

#editor-style .renovation .works_box .gallery-icon {
	overflow: hidden;
}

#editor-style .renovation .works_box .gallery-icon img {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: none;
	width: auto;
	height: 100%;
	transform: translate(-50%, -50%);
	transition: 0.3s transform;
}

/* -- ギャラリー左 -- */

.renovation .works_gallery-1 {
	height: 100%;
}

.renovation .works_gallery-1 .gallery-columns-1 {
	display: flex;
	flex-wrap: wrap;
	width: auto;
	height: 100%;
}

.renovation .works_gallery-1 .gallery-item {
	margin: 0 !important;
	width: 100% !important;
}

.renovation .works_gallery-1 .gallery-icon {
	height: 100%;
}

.renovation .works_gallery-1 .gallery-icon a {
	height: 100%;
	padding-bottom: 138.9655%;
}

#editor-style .renovation .works_gallery-1 .gallery-item {
	width: 100% !important;
}

#editor-style .renovation .works_gallery-1 .gallery-icon {
	padding-bottom: 138.9655%;
}

/* -- ギャラリー右 -- */

.renovation .works_gallery-2 .gallery-columns-1 {
	display: flex;
	flex-wrap: wrap;
	width: auto;
}

.renovation .works_gallery-2 .works_gallery-2_item+.works_gallery-2_item {
	margin-top: 20px;
}

.renovation .works_gallery-2 .works_gallery-2_item p {
	padding-bottom: 0;
}

.renovation .works_gallery-2 .gallery-item {
	margin: 0 !important;
	width: 100% !important;
}

.renovation .works_gallery-2 .gallery-icon a {
	padding-bottom: 67.7586%;
}

#editor-style .renovation .works_gallery-2 .gallery-item {
	width: 100% !important;
}

#editor-style .renovation .works_gallery-2 .gallery-icon {
	padding-bottom: 67.7586%;
}

/* -- ギャラリー下 -- */

.renovation .works_gallery-3 .gallery-columns-4 {
	display: flex;
	flex-wrap: wrap;
	width: auto;
	margin: -10px !important;
}

.renovation .works_gallery-3 .gallery-item {
	margin: 10px !important;
	width: calc(25% - 20px) !important;
}

.renovation .works_gallery-3 .gallery-icon {
	position: relative;
}

.renovation .works_gallery-3 .gallery-icon a {
	display: block;
	position: relative;
	padding-bottom: 70.7142%;
	overflow: hidden;
}

#editor-style .renovation .works_gallery-3 .gallery-item {
	width: calc(25% - 20px) !important;
}

#editor-style .renovation .works_gallery-3 .gallery-icon {
	padding-bottom: 70.7142%;
}

.renovation .renovation_title {
	margin-bottom: 110px;
}

.renovation .renovation_type {
	margin: 0 0 135px;
}

.post .renovation_type_title {
	background-image: url(/struct/wp-content/uploads/wave_3lines.png);
	background-repeat: no-repeat;
	background-position: center bottom;
	background-size: 105px auto;
	margin: 0 0 60px;
	padding: 0 0 30px;
	font-weight: 700;
	font-size: 30px;
	text-align: center;
	line-height: 1.6;
}

.post .renovation_type_title .small {
	display: block;
	margin-top: .2em;
	font-weight: 400;
	font-size: 16px;
}

.renovation .renovation_type_list {
	display: flex;
	justify-content: space-between;
	max-width: 900px;
	margin: 0 auto;
}

.renovation .renovation_type_list li {
	width: calc(33.3333% - 12px);
	margin: 0 0 28px;
	font-weight: 700;
	font-size: 24px;
	line-height: 1.375;
}

.renovation .renovation_type_list li a {
	display: block;
	position: relative;
	border-bottom: 2px solid #0d0d0d;
	padding: 10px 10px 20px;
	text-align: center;
	text-decoration: none !important;
}

.renovation .renovation_type_list li a::before,
.renovation .renovation_type_list li a::after {
	content: "";
	display: block;
	position: absolute;
	left: calc(50% - 1px);
	bottom: -28px;
	width: 1px;
	background-color: #0d0d0d;
	transition: bottom 0.3s ease-in-out;
}

.renovation .renovation_type_list li a::before {
	height: 40px;
}

.renovation .renovation_type_list li a::after {
	height: 10px;
	transform: rotate(45deg);
	transform-origin: center bottom;
}

.renovation .renovation_type_list li a:hover::before,
.renovation .renovation_type_list li a:hover::after {
	bottom: -41px;
}

.renovation .renovation_type_list li .num {
	display: block;
	margin: 0 0 3px;
	color: #a4c0d4;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 800;
	font-size: 24px;
	text-align: center;
	line-height: 1;
	letter-spacing: 0.06em;
}

.renovation .renovation-1 h2 {
	margin-bottom: 50px;
}

.renovation .renovation_text {
	margin: 0 0 75px;
	text-align: center;
}

.renovation .chara {
	position: relative;
}

.renovation .chara::after {
	content: "";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
}

.renovation .chara-1::after {
	right: -39px;
	bottom: -92px;
	background-image: url(/struct/wp-content/uploads/aflo07.png);
	width: 163px;
	height: 178px;
}

.renovation .chara-2::after {
	left: -82px;
	bottom: -60px;
	background-image: url(/struct/wp-content/uploads/aflo04.png);
	width: 160px;
	height: 177px;
}

.renovation .renovation_list {
	display: flex;
	flex-wrap: wrap;
	margin: 0;
	padding: 0;
}

.renovation .renovation_list li {
	position: relative;
	width: 30.666%;
	margin: 0;
	padding-left: 34px;
}

.renovation .renovation_list li:not(:nth-child(3n + 1)) {
	margin-left: 4%;
}

.renovation .renovation_list li:nth-child(n + 4) {
	margin-top: 20px;
}

.renovation .renovation_list li::before {
	content: "";
	display: block;
	position: absolute;
	top: 13px;
	left: 0;
	width: 18px;
	height: 5px;
	background-color: #ff9000;
}

.renovation-2 .renovation_list li::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f058";
	display: inline-block;
	top: 0;
	background-color: transparent;
	color: #ff9000;
	width: auto;
	height: auto;
}

.renovation-2 .renovation-2_image {
	max-width: 700px;
	width: 90%;
	margin: 75px auto 0;
}

.renovation-3 .renovation-3_images {
	display: flex;
	justify-content: space-between;
}

.renovation-3 .renovation-3_image {
	width: 47.4576%;
}

@media screen and (max-width: 1600px) {
	.renovation .chara {
		position: relative;
	}

	.renovation .chara-1::after {
		right: calc(-39px * 0.6);
		bottom: calc(-92px * 0.6);
		width: calc(163px * 0.8);
		height: calc(178px * 0.8);
	}

	.renovation .chara-2::after {
		left: calc(-82px * 0.3);
		bottom: calc(-60px * 0.8);
		width: calc(160px * 0.8);
		height: calc(177px * 0.8);
	}
}

@media screen and (max-width: 1023px) {
	.renovation .linkBtn {
		margin-top: 2.5rem;
	}

	.renovation .nu_logo {
		height: 40px;
	}

	.post .kichi_logo {
		height: 45px;
	}

	.renovation .renovation_works {
		margin-top: 80px;
	}

	.renovation .works_box+.works_box {
		margin-top: 80px;
	}

	.renovation .works_box_left,
	.renovation .works_box_right {
		width: calc(50% - 8px);
		margin-bottom: 16px;
	}

	.comingsoon::after {
		font-size: 20px;
	}

	/* -- ギャラリー右 -- */

	.renovation .works_gallery-2 .works_gallery-2_item+.works_gallery-2_item {
		margin-top: 16px;
	}

	/* -- ギャラリー下 -- */

	.renovation .works_gallery-3 .gallery-columns-4 {
		margin: -8px !important;
	}

	.renovation .works_gallery-3 .gallery-item {
		margin: 8px !important;
		width: calc(25% - 16px) !important;
	}

	#editor-style .renovation .works_gallery-3 .gallery-item {
		width: calc(25% - 16px) !important;
	}

	.renovation .renovation_title {
		margin-bottom: 90px;
	}

	.renovation .renovation_type {
		margin: 0 0 100px;
	}

	.post .renovation_type_title {
		background-size: 95px auto;
		margin: 0 0 40px;
		padding: 0 0 30px;
		font-size: 26px;
	}

	.renovation .renovation_type_list li {
		font-size: 22px;
	}

	.renovation .renovation_type_list li .num {
		font-size: 20px;
	}

	.renovation .renovation-1 h2 {
		margin-bottom: 40px;
	}

	.renovation .renovation_text {
		margin: 0 0 60px;
	}

	.renovation .chara-1::after {
		right: calc(-39px * 0.4);
		bottom: calc(-92px * 0.3);
		width: calc(163px * 0.7);
		height: calc(178px * 0.7);
	}

	.renovation .chara-2::after {
		left: calc(-82px * 0.1);
		bottom: calc(-60px * 0.7);
		width: calc(160px * 0.7);
		height: calc(177px * 0.7);
	}

	.renovation .renovation_list li {
		width: 48%;
	}

	.renovation .renovation_list li:not(:nth-child(3n + 1)) {
		margin-left: 0;
	}

	.renovation .renovation_list li:not(:nth-child(2n + 1)) {
		margin-left: 4%;
	}

	.renovation .renovation_list li:nth-child(n + 3) {
		margin-top: 20px;
	}

	.renovation-2 .renovation-2_image {
		max-width: 600px;
		margin: 60px auto 0;
	}
}

@media screen and (max-width: 767px) {
	.renovation .linkBtn {
		margin-top: 2rem;
	}

	.renovation .nu_logo {
		height: 26px;
		margin-bottom: 2px;
	}

	.post .kichi_logo {
		height: 30px;
		margin-bottom: 2px;
	}

	.renovation .renovation_works {
		margin-top: 40px;
	}

	.renovation .works_box+.works_box {
		margin-top: 40px;
	}

	.renovation .works_box_left,
	.renovation .works_box_right {
		width: calc(50% - 5px);
		margin-bottom: 10px;
	}

	.comingsoon::after {
		font-size: 3.7333vw;
	}

	/* -- ギャラリー右 -- */

	.renovation .works_gallery-2 .works_gallery-2_item+.works_gallery-2_item {
		margin-top: 10px;
	}

	/* -- ギャラリー下 -- */

	.renovation .works_gallery-3 .gallery-columns-4 {
		margin: -5px !important;
	}

	.renovation .works_gallery-3 .gallery-item {
		margin: 5px !important;
		width: calc(25% - 10px) !important;
	}

	#editor-style .renovation .works_gallery-3 .gallery-item {
		width: calc(25% - 10px) !important;
	}

	.renovation .renovation_title {
		margin-bottom: 30px;
	}

	.renovation .renovation_type {
		margin: 0 0 60px;
	}

	.post .renovation_type_title {
		background-size: 60px auto;
		margin: 0 0 25px;
		padding: 0 0 20px;
		font-size: 21px;
	}

	.renovation .renovation_type_list {
		flex-wrap: wrap;
		max-width: 320px;
	}

	.renovation .renovation_type_list li {
		width: 100%;
		margin: 0 0 18px;
		font-size: 18px;
	}

	.renovation .renovation_type_list li a {
		padding: 10px 50px 10px 15px;
		text-align: left;
	}

	.renovation .renovation_type_list li a::before,
	.renovation .renovation_type_list li a::after {
		left: auto;
		right: 10px;
		bottom: 50%;
		height: 1px;
		width: auto;
		transition: right 0.2s ease-in-out;
	}

	.renovation .renovation_type_list li a::before {
		width: 30px;
	}

	.renovation .renovation_type_list li a::after {
		width: 8px;
		transform-origin: right bottom;
	}

	.renovation .renovation_type_list li a:hover::before,
	.renovation .renovation_type_list li a:hover::after {
		bottom: 50%;
		right: 0;
	}

	.renovation .renovation_type_list li .num {
		display: inline-block;
		margin: 0 10px 2px 0;
		font-size: 16px;
		vertical-align: middle;
	}

	.renovation .renovation-1 h2,
	.renovation .renovation-3 h2 {
		margin-bottom: 20px;
	}

	.renovation .renovation_text {
		margin: 0 0 30px;
		text-align: left;
	}

	.renovation .chara-1 {
		margin-bottom: 60px;
	}

	.renovation .chara-1::after {
		right: 5px;
		bottom: calc(-92px * 0.3);
		width: calc(163px * 0.5);
		height: calc(178px * 0.5);
	}

	.renovation .chara-2 {
		margin-bottom: 80px;
	}

	.renovation .chara-2::after {
		left: 8px;
		bottom: calc(-75px * 0.6);
		width: calc(160px * 0.5);
		height: calc(177px * 0.5);
	}

	.renovation .renovation_list li {
		width: 100%;
		padding-left: 28px;
	}

	.renovation .renovation_list li:not(:nth-child(2n + 1)) {
		margin-left: 0;
	}

	.renovation .renovation_list li:nth-child(n + 2) {
		margin-top: 12px;
	}

	.renovation .renovation_list li::before {
		top: 11px;
		width: 14px;
		height: 4px;
	}

	.renovation-2 .renovation-2_image {
		max-width: 500px;
		width: 95%;
		margin: 30px auto 0;
	}

	.renovation-2 .renovation_list li::before {
		top: 1px;
		width: auto;
		height: auto;
	}

	.renovation-3 .renovation-3_image {
		width: 48%;
	}
}

/* ----------------------
下層　不動産仲介事業
---------------------- */

.agency .agency_title {
	max-width: 300px;
	width: 40%;
	margin: 0 auto;
	padding: 0;
}

.agency .location_image {
	margin: 0 0 20px;
}

.agency .location_title {
	margin: 0 0 8px;
	font-weight: 700;
	font-size: 22px;
	line-height: 1.85;
	letter-spacing: 0.06em;
}

.agency .location_address {
	margin: 0;
	line-height: 1.85;
}

.agency .location_address a {
	transition: 0.3s opacity ease-in-out;
}

.agency .location_address a:hover {
	opacity: 0.7;
}

.agency .location_address i {
	display: inline-block;
	color: #0068b1;
	font-size: 1.4em;
	margin-left: 6px;
}

.agency .location_tel {
	margin: 0;
	line-height: 1.6;
}

@media screen and (max-width: 1023px) {
	.agency .agency_title {
		max-width: 300px;
	}

	.agency .location_image {
		margin: 0 0 15px;
	}

	.agency .location_title {
		margin: 0 0 5px;
		font-size: 19px;
	}
}

@media screen and (max-width: 767px) {
	.agency .agency_title {
		max-width: 250px;
		width: 48%;
		padding: 0 0 10px;
	}

	.agency .location_image {
		margin: 0 0 12px;
	}

	.agency .location_title {
		margin: 0 0 2px;
		font-size: 16px;
	}

	.agency .location_address {
		font-size: 13px;
	}

	.agency .location_tel {
		font-size: 13px;
	}
}

/* ----------------------
下層　ガレージハウス
---------------------- */

.garage .linkBtn {
	margin-left: auto;
	margin-top: 40px;
}

.post .point_list {
	display: flex;
	justify-content: space-between;
	max-width: 1000px;
	margin: 0 auto;
}

.post .point_list li {
	margin: 0;
	width: 31%;
}

.post .point_list_item {
	display: flex;
	flex-direction: column;
	background-color: #d00015;
	height: 100%;
	padding: 20px 12px;
	color: #fff;
	text-align: center;
}

.post .point_list_title {
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	margin: 0 0 12px;
	padding-right: 20px;
	font-weight: 700;
	font-size: 24px;
}

.post .point_list_title::before {
	content: '';
	display: block;
	background-color: #ff9000;
	width: 15px;
	height: 3px;
	margin-right: 10px;
}

.post .point_list_text {
	flex-grow: 1;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	font-weight: 700;
	font-size: 16px;
}

.post .over_wrap {
	position: relative;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}

.post .over_wrap img {
	max-width: none;
	width: 100%;
}

.post .page_slider {
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}

.post .over_image_text_wrap {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	max-width: 1920px;
	width: 100vw;
	margin: 0 auto;
	transform: translateX(-50%);
}

.post .over_image_text {
	position: absolute;
	top: 5vw;
	left: 5vw;
	background-color: #f7f7f7;
	border-bottom: 5px solid #d00015;
	padding: 1.5vw 2.5vw;
	font-family: "Merriweather Sans", "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
		"メイリオ", Meiryo, "Meiryo UI", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 700;
	font-size: calc(42 / 1920 * 100vw);
	line-height: 1.6;
}

.post .over_image_text .big {
	display: block;
	color: #d00015;
	font-weight: 800;
	font-size: 1.8em;
}

.post .garage_point {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: 0 calc(50% - 50vw);
}

.post .garage_point-r {
	flex-direction: row-reverse;
}

.post .garage_point+.garage_point {
	margin-top: 140px;
}

.post .garage_point_description {
	width: 40%;
	padding: 50px 5% 80px 8%;
}

.post .garage_point_description-r {
	padding: 50px 7.5% 80px 5.5%;
}

.post .garage_point_image {
	width: 60%;
	align-self: flex-start;
}

.post .garage_point_title {
	border: none;
	border-bottom: 1px solid #000;
	width: 100%;
	margin: 0 0 50px;
	padding: 0 0 50px;
	font-weight: 700;
	font-size: 30px;
	line-height: 1.5;
}

.post .garage_point_title .point {
	display: block;
	font-family: "Merriweather Sans", sans-serif;
	font-size: 26px;
	line-height: 0.9;
	letter-spacing: 0.02em;
}

.post .garage_point_title .point .num {
	margin-left: .1em;
	color: #d00015;
	font-size: 2.5em;
}

.post .garage_point_title .text {
	display: block;
	margin-top: 28px;
	color: #d00015;
	font-weight: 700;
}

.post .garage_point_lead {
	margin-bottom: 1em;
	font-weight: 700;
	font-size: 20px;
}

.garage_merit_wrap {
	margin: 0 calc(50% - 50vw);
}

.post .garage_merit_flex-2,
.post .garage_merit_flex-3 {
	display: flex;
	justify-content: space-between;
	max-width: 1500px;
	width: 90%;
	margin: 0 auto;
}

.post .garage_merit_flex-2 {
	margin-bottom: 100px;
}

.post .garage_merit_flex-2 .w46 {
	width: 46.5%;
}

.post .garage_merit_flex-3 .w30 {
	width: 30%;
}

.post .garage_merit {
	display: flex;
	flex-direction: column;
}

.garage_merit_title_wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	min-height: 0%;
	margin-bottom: 30px;
}

.post .garage_merit_title {
	border-bottom: none;
	margin-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.post .garage_merit_icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 74px;
	height: 74px;
	background-color: #eee;
	margin-left: 30px;
	padding: 0;
	line-height: 1;
}

.post .garage_merit_icon img {
	max-width: none;
	width: 65px;
}

.post .garage_merit_title .text {
	display: flex;
	margin-top: 25px;
}

.post .garage_merit_flex-3 .garage_merit_title .text_inner {
	display: flex;
	align-items: center;
	min-height: 90px;
}

.post .garage_merit_image {
	min-height: 0%;
	margin-bottom: 30px;
}

.post .garage_merit_text {
	line-height: 2.5;
}

.post .garage_contact {
	display: flex;
	justify-content: space-between;
	max-width: 1100px;
	margin: 0 auto;
}

.post .garage_contact_item {
	width: 48%;
}

.post .garage_contact_title {
	display: flex;
	justify-content: center;
	position: relative;
	margin: 0 0 40px;
	font-weight: 700;
	font-size: 22px;
	text-align: center;
}

.post .garage_contact_title::before {
	font-family: FontAwesome;
	display: inline-block;
	margin: 0 10px 0 0;
	color: #333;
	font-weight: 400;
	font-size: 30px;
	line-height: 1;
	transform: translateY(5px);
}

.post .garage_contact_title_tel::before {
	content: "\f0e0";
}

.post .garage_contact_title_mail::before {
	content: "\f095";
	margin: 0 6px 0 0;
	font-size: 32px;
	transform: translateY(8px);
}

.post .garage_contact_num {
	font-weight: 700;
	font-size: 40px;
	text-align: center;
}

.post .garage_contact_time {
	margin: 0;
	font-size: 14px;
	text-align: center;
}

@media screen and (min-width: 1921px) {

	.post .over_image_text {
		font-size: 42px;
	}

}

@media screen and (max-width: 1400px) {

	.post .garage_point+.garage_point {
		margin-top: 130px;
	}

	.post .garage_point_description {
		padding: 3% 5% 5% 7%;
	}

	.post .garage_point_description-r {
		padding: 3% 6.5% 5% 5.5%;
	}

	.post .garage_point_title {
		margin: 0 0 calc(40 / 1400 * 100vw);
		padding: 0 0 calc(40 / 1400 * 100vw);
	}

	.post .garage_point_title .point {
		font-size: 24px;
	}

	.post .garage_point_title .text {
		margin-top: calc(28 / 1400 * 100vw);
	}

}

@media screen and (max-width: 1280px) {

	.post .garage_point+.garage_point {
		margin-top: 110px;
	}

	.post .garage_point_description {
		width: 50%;
		padding: 0 5% 0 7%;
	}

	.post .garage_point_description-r {
		padding: 0 6.5% 0 5.5%;
	}

	.post .garage_point_image {
		width: 50%;
		align-self: center;
	}

	.post .garage_point_title .point {
		font-size: 22px;
	}

	.post .garage_merit_flex-2 {
		margin-bottom: 80px;
	}

	.post .garage_merit_flex-2 .w46 {
		width: 47.5%;
	}

	.post .garage_merit_flex-3 .w30 {
		width: 30.5%;
	}

}

@media screen and (max-width: 1023px) {

	.garage .linkBtn {
		margin-top: 3.5rem;
	}

	.post .point_list {
		flex-wrap: wrap;
		max-width: 800px;
	}

	.post .point_list li {
		margin: 0;
		padding: 12px;
		width: 50%;
	}

	.post .point_list li:first-child {
		margin: 0 auto;
		width: 51%;
	}

	.post .point_list_title {
		margin: 0 0 10px;
		padding-right: 18px;
		font-size: 22px;
	}

	.post .over_wrap {
		margin-right: calc(50% - 60vw);
		margin-left: calc(50% - 60vw);
	}

	.post .page_slider {
		margin-right: calc(50% - 70vw);
		margin-left: calc(50% - 70vw);
	}

	.post .over_image_text {
		font-size: calc(42 / 1920 * 120vw);
	}

	.post .garage_point {
		flex-direction: column-reverse;
	}

	.post .garage_point+.garage_point {
		margin-top: 80px;
	}

	.post .garage_point_description {
		width: 100%;
		padding: 0 8%;
	}

	.post .garage_point_image {
		width: 92%;
		min-height: 0%;
		margin: 0 auto 60px 0;
	}

	.post .garage_point_image-r {
		margin-left: auto;
		margin-right: 0;
	}

	.post .garage_point_title {
		margin: 0 0 30px;
		padding: 0 0 30px;
		font-size: 26px;
	}

	.post .garage_point_title .point {
		font-size: 20px;
	}

	.post .garage_point_title .point .num {
		font-size: 2.2em;
	}

	.post .garage_point_title .text {
		margin-top: 15px;
	}

	.post .garage_merit_flex-2,
	.post .garage_merit_flex-3 {
		flex-wrap: wrap;
		max-width: 1500px;
		width: 86%;
	}

	.post .garage_merit_flex-2 .w46 {
		max-width: 650px;
		width: 100%;
		margin: 0 auto;
	}

	.post .garage_merit_flex-2 .w46+.w46 {
		margin-top: 60px;
	}

	.post .garage_merit_flex-3 .w30 {
		width: 47.5%;
	}

	.post .garage_merit_flex-3 .w30:nth-child(n+3) {
		margin-top: 60px;
	}

	.garage_merit_title_wrap {
		margin-bottom: 20px;
		order: 2;
	}

	.post .garage_merit_flex-3 .garage_merit_title .text_inner {
		min-height: 78px;
	}

	.post .garage_merit_image {
		margin-bottom: 25px;
		order: 1;
	}

	.post .garage_merit_text {
		order: 3;
	}

	.post .garage_contact_title {
		margin: 0 0 35px;
		font-size: 20px;
	}

	.post .garage_contact_title::before {
		font-size: 28px;
		transform: translateY(4px);
	}

	.post .garage_contact_title_mail::before {
		font-size: 30px;
		transform: translateY(7px);
	}

}

@media screen and (max-width: 767px) {

	.garage .linkBtn {
		margin-top: 3rem;
	}

	.post .point_list {
		max-width: 500px;
	}

	.post .point_list li {
		padding: 8px;
		width: 100%;
	}

	.post .point_list li:first-child {
		margin: 0;
		width: 100%;
	}

	.post .point_list_item {
		padding: 15px 12px;
	}

	.post .point_list_title {
		margin: 0 0 10px;
		padding-right: 14px;
		font-size: 18px;
	}

	.post .point_list_text {
		font-size: 15px;
	}

	.post .over_wrap {
		margin-right: calc(50% - 70vw);
		margin-left: calc(50% - 70vw);
	}

	.post .page_slider {
		margin-right: calc(50% - 90vw);
		margin-left: calc(50% - 90vw);
	}

	.post .over_image_text {
		top: 2.5vw;
		left: 2.5vw;
		font-size: calc(42 / 1920 * 200vw);
	}

	.post .over_image_text .big {
		font-size: 1.5em;
	}

	.post .garage_point+.garage_point {
		margin-top: 50px;
	}

	.post .garage_point_description {
		width: 100%;
		padding: 0 5%;
	}

	.post .garage_point_image {
		width: 95%;
		margin: 0 auto 30px 0;
	}

	.post .garage_point_image-r {
		margin-left: auto;
		margin-right: 0;
	}

	.post .garage_point_title {
		margin: 0 0 20px;
		padding: 0 0 20px;
	}

	.post .garage_point_title .point {
		font-size: 16px;
	}

	.post .garage_point_title .point .num {
		font-size: 2em;
	}

	.post .garage_point_title .text {
		margin-top: 10px;
		font-size: 20px;
	}

	.post .garage_point_lead {
		margin-bottom: .5em;
		font-size: 16px;
	}

	.post .garage_merit_flex-2,
	.post .garage_merit_flex-3 {
		flex-direction: column;
		width: 90%;
	}

	.post .garage_merit_flex-2 {
		margin-bottom: 40px;
	}

	.post .garage_merit_flex-2 .w46 {
		min-height: 0%;
	}

	.post .garage_merit_flex-2 .w46+.w46 {
		margin-top: 40px;
	}

	.post .garage_merit_flex-3 .w30 {
		width: 100%;
		min-height: 0%;
	}

	.post .garage_merit_flex-3 .w30:nth-child(n+2) {
		margin-top: 40px;
	}

	.garage_merit_title_wrap {
		margin-bottom: 20px;
		order: 2;
	}

	.post .garage_merit_icon {
		width: 52px;
		height: 52px;
		margin-left: 18px;
	}

	.post .garage_merit_icon img {
		width: 46px;
	}

	.post .garage_merit_title .text {
		margin-top: 15px;
	}

	.post .garage_merit_flex-3 .garage_merit_title .text_inner {
		min-height: 0;
	}

	.post .garage_merit_image {
		margin-bottom: 20px;
	}

	.post .garage_merit_text {
		line-height: 2.2;
	}

	.post .garage_contact {
		flex-direction: column;
	}

	.post .garage_contact_item {
		width: 100%;
	}

	.post .garage_contact_item+.garage_contact_item {
		margin-top: 30px;
	}

	.post .garage_contact_title {
		margin: 0 0 16px;
		font-size: 16px;
	}

	.post .garage_contact_title::before {
		font-size: 26px;
		transform: translateY(3px);
	}

	.post .garage_contact_title_mail::before {
		margin: 0 4px 0 0;
		font-size: 28px;
		transform: translateY(6px);
	}

}

/* ----------------------
下層　会社概要
---------------------- */

.page-company #breadcrumb,
.page-company #wrapper {
	position: relative;
}

.page-company #breadcrumb::before,
.page-company #wrapper::before {
	content: "";
	position: absolute;
	top: -1px;
	bottom: -1px;
	left: 0;
	right: 0;
	margin: 0 calc(50% - 50vw);
	background-color: #f7f7f7;
	z-index: -1;
}

.page-company #wrapper::before {
	bottom: auto;
	height: calc(1px + 110px);
}

.company .company_title {
	position: relative;
	margin: 0 0 90px;
	padding: 7.29166vw 0 0;
	font-weight: 700;
	font-size: 40px;
	text-align: center;
	z-index: 5;
}

.company .company_title::before {
	content: attr(date-text);
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	width: 100%;
	color: #fff;
	font-family: "Merriweather Sans", sans-serif;
	font-weight: 800;
	font-size: 10.4166vw;
	text-align: center;
	line-height: 0.78;
	z-index: -1;
}

.company .company_title img {
	display: block;
	max-width: 283px;
	margin: 0 auto 45px;
}

.company .company_identity_title {
	margin-bottom: 40px;
	font-family: "Merriweather Sans", sans-serif;
	font-size: 30px;
}

.company .company_identity_list {
	margin: 0;
	padding: 0;
}

.company .company_identity_list li {
	margin: 0;
	padding-left: 2.15em;
	text-indent: -2.15em;
}

.company .company_identity_list li::before {
	content: "一、";
}

.company .company_identity_list li+li {
	margin-top: 1em;
}

.company .company_identity_image {
	position: absolute;
	bottom: 0;
	left: calc(50% + 287px);
	max-width: 1149px;
	width: 100%;
	margin: 0 calc(50% - 50vw) 0 0;
	z-index: 5;
}

.company .company_identity_image img {
	max-width: none;
	width: 100%;
}

.company .company_greeting {
	display: flex;
	justify-content: space-between;
	padding: 0 80px 0 0;
}

.company .company_motto {
	padding: 5px 0;
}

.company .company_motto_title {
	margin-bottom: 70px;
}

.company .company_motto_image {
	max-width: 556px;
	width: 85%;
	margin: 0 auto;
}

.company .company_medal {
	display: flex;
	justify-content: space-between;
	max-width: 930px;
	margin: 90px auto 0;
}

.company .company_medal_image {
	max-width: 280px;
	width: 30.1075%;
	margin: 0;
}

.company .company_greeting_image {
	width: 28.1818%;
	min-height: 0%;
}

.company .company_greeting_image img {
	max-width: none;
	width: 100%;
}

.company .company_greeting_text {
	width: 66.8181%;
	line-height: 2.5;
}

.company .company_greeting_name {
	margin-top: 15px;
	font-weight: 700;
	text-align: right;
	line-height: 1.875;
}

.company .company_greeting_name .name_image {
	display: inline-block;
	max-width: 134px;
}

.company_table_text {
	margin: 0 0 60px;
}

.company .group_logo {
	display: block;
	height: 45px;
	margin: 0.6em 0 0.5em;
}

.company .group_logo img {
	display: block;
	width: auto;
	max-height: 100%;
}

.company .map {
	height: 600px;
}

.company .map iframe {
	width: 100%;
	height: 100%;
}

.company .group_list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 1em !important;
	word-break: break-all;
}

.company .group_list li {
	max-width: 330px;
	width: 49%;
}

.company .group_list li+li {
	margin: 0;
}

.company .group_list li:nth-child(even) {
	margin-left: 2%;
}

.company .group_list li:nth-child(n + 3) {
	margin-top: 0.8em;
}

/* -- エディター用 -- */

#editor-style .company .map span {
	width: 100%;
	height: 100%;
}

@media screen and (max-width: 1600px) {
	.company .company_title img {
		max-width: 17.6845vw;
		margin: 0 auto 40px;
	}

	.company .company_identity_image {
		left: calc(50% + 14.9479vw);
		max-width: 59.84375vw;
	}
}

@media screen and (max-width: 1280px) {
	.company .company_title {
		margin: 0 0 80px;
		font-size: 35px;
	}

	.company .company_title img {
		max-width: 17.6845vw;
		margin: 0 auto 40px;
	}

	.company .company_identity_image {
		left: calc(50% + 14.9479vw);
		max-width: 59.84375vw;
	}

	.company .company_greeting {
		padding: 0;
	}
}

@media screen and (max-width: 1023px) {
	.company .company_title {
		margin: 0 0 60px;
		font-size: 30px;
	}

	.company .company_title::before {
		font-size: calc(10.4166vw * 1.2);
	}

	.company .company_title img {
		max-width: calc(17.6845vw * 1.2);
		margin: 0 auto 30px;
	}

	.company .company_identity_title {
		margin-bottom: 30px;
		font-size: 26px;
	}

	.company .company_identity_image {
		left: calc(50% + 14.9479vw * 0.8);
		max-width: calc(59.84375vw * 0.8);
		min-width: 440px;
	}

	.company .company_motto_title {
		margin-bottom: 50px;
	}

	.company .company_medal {
		margin: 70px auto 0;
	}

	.company .group_list li {
		max-width: none;
		width: 100%;
	}

	.company .group_list li:nth-child(even) {
		margin-left: 0;
	}

	.company .group_list li:nth-child(n + 2) {
		margin-top: 1.1em;
	}

	.company .map {
		height: 400px;
	}
}

@media screen and (max-width: 767px) {
	.company .company_title {
		margin: 0 0 35px;
		font-size: 24px;
		line-height: 1.5;
	}

	.company .company_title::before {
		font-size: calc(10.4166vw * 1.5);
	}

	.company .company_title img {
		max-width: calc(17.6845vw * 1.7);
		margin: 0 auto 25px;
	}

	.company .company_identity {
		margin-bottom: 15px;
	}

	.company .company_identity_title {
		margin-bottom: 20px;
		font-size: 26px;
	}

	.company .company_identity_image {
		left: auto;
		right: 0;
		max-width: calc(59.84375vw * 0.7);
		min-width: 320px;
		transform: translateX(33%);
	}

	.company .company_greeting {
		flex-direction: column;
		padding: 0;
	}

	.company .company_motto {
		padding: 15px 0 10px;
	}

	.company .company_motto_title {
		margin-bottom: 28px;
	}

	.company .company_motto_image {
		width: 90%;
	}

	.company .company_medal {
		flex-wrap: wrap;
		justify-content: center;
		margin: 35px auto 0;
		padding: 0 2%;
	}

	.company .company_medal_image {
		width: 45%;
		margin: 0 2.5%;
	}

	.company .company_medal_image:first-child {
		margin: 0 5% 1.2%;
	}

	.company .company_greeting_image {
		max-width: 220px;
		width: 80%;
		margin: 0 auto 25px;
		text-align: center;
	}

	.company .company_greeting_image img {
		width: 100%;
	}

	.company .company_greeting_text {
		width: 100%;
		line-height: 2.2;
	}

	.company .company_greeting_name span {
		font-size: 18px;
	}

	.company_table_text {
		margin: 0 0 35px;
	}

	.company .group_logo {
		height: 38px;
	}

	.company .map {
		height: 240px;
	}
}

/* -- 幅と高さの比率を合わせる -- */

/* ----------------------
下層　お問い合わせ
---------------------- */

#contact table {
	margin-bottom: 40px;
}

#contact .contact_text {
	display: flex;
	max-width: 1070px;
	margin: 0 auto;
}

.contact_text p {
	max-width: 100%;
}

#contact .contact_button {
	flex-shrink: 0;
	margin: 0 0 0 100px;
}

#contact .contact_button a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 15px 20px;
	text-align: center;
	font-weight: 800;
	font-size: 20px;
	background-color: #0068b1;
	color: #fff;
	text-decoration: none !important;
	letter-spacing: 0.04em;
	transition: background-color 0.3s ease-in-out;
}

#contact .contact_button a::before {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f879";
	margin-right: 6px;
	transform: translateY(0.09em) rotate(15deg);
}

.wpcf7-form {
	padding: 0;
}

span.wpcf7-list-item {
	margin: 0 1em 0 0;
}

div.wpcf7 .ajax-loader {
	display: block;
	margin: 8px auto 0;
}

.wpcf7-not-valid-tip {
	margin-top: 5px;
}

#contact .sendBtn {
	text-align: center;
}

#contact .sendBtn input[type="submit"] {
	background: #0068b1;
	border-radius: 0;
	max-width: 80%;
	width: 20rem;
	padding: 25px 10px;
	font-weight: 700;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	line-height: 1;
	transition: 0.3s background;
}

#contact .sendBtn input[type="submit"]:hover {
	background: #0d0d0d;
}

@media screen and (max-width: 1023px) {
	#contact .contact_text {
		flex-direction: column;
		align-items: flex-start;
	}

	#contact .contact_button {
		align-self: flex-end;
		display: table;
		margin: 25px 0 0;
	}

	#contact .contact_button a {
		padding: 14px 18px;
		font-size: 18px;
	}
}

@media screen and (max-width: 767px) {
	#contact table {
		margin: 0 0 40px;
	}

	#contact .contact_button {
		align-self: flex-start;
		margin: 18px 0 0;
	}

	#contact .contact_button a {
		padding: 12px 15px;
		font-size: 16px;
	}
}

/* ----------------------
下層　プライバシーポリシー
---------------------- */

#privacy {
	max-width: 1000px;
	margin: 0 auto;
}

#privacy .content_inner+.content_inner {
	margin-top: 90px;
}

#privacy h2:not([class]) {
	background: none;
	border: none;
	margin: 0 0 30px;
	padding: 0;
	font-weight: 700;
	font-size: 30px;
	text-align: left;
}

#privacy h2:not([class])::before,
#privacy h2:not([class])::after {
	content: none;
}

#privacy ol {
	margin: 0;
	padding-left: 2em;
}

#privacy ol li {
	list-style: decimal;
}

@media screen and (max-width: 1023px) {
	#privacy .content_inner+.content_inner {
		margin-top: 50px;
	}

	#privacy h2:not([class]) {
		margin: 0 0 20px;
		font-size: 24px;
	}
}

@media screen and (max-width: 767px) {
	#privacy .content_inner+.content_inner {
		margin-top: 30px;
	}

	#privacy h2:not([class]) {
		margin: 0 0 15px;
		font-size: 20px;
	}
}

/* ----------------------
下層　サイトマップ
---------------------- */

.post ul#sitemap_list,
.post ul.sitemap_list {
	max-width: 960px;
	margin: 0 auto;
}

.post ul#sitemap_list li,
.post ul.sitemap_list li {
	position: relative;
	margin: 0 0 1em;
	padding: 0 0 0 1.2em;
	text-indent: -1.2em;
}

.post ul#sitemap_list li::before,
.post ul.sitemap_list li::before {
	content: "・ ";
	display: inline;
	background: none;
	width: auto;
	height: auto;
	color: #0068b1;
	font-weight: bold;
}

.post ul#sitemap_list ul.children,
.post ul.sitemap_list ul.children {
	margin: 1em 0 0 1em;
}

/* ----------------------
投稿一覧
---------------------- */

.front_post_list .linkBtn {
	margin-top: 5rem;
}

.listTitle .frontlist a {
	background: none;
	color: inherit;
	transition: color 0.5s;
}

.listTitle .frontlist a:hover {
	color: #07affc;
}

.postlist a {
	transition: 0.5s opacity;
}

.postlist a:hover {
	color: inherit;
	opacity: 0.7;
}

ul.post,
.post2b,
.post4b,
.postlist {
	margin: 0 auto;
	padding: 0;
	font-size: 1.6rem;
	letter-spacing: 0.06em;
}

ul.post li,
.post2b li,
.post4b li,
.postlist li {
	font-size: inherit;
}

.ul.post .time,
.post2b .time,
.post4b .time,
.postlist .time {
	font-size: 100%;
}

.postlist .ttls,
.postlist .date {
	font-size: 100%;
}

@media only screen and (max-width: 767px) {
	.front_post_list .linkBtn {
		margin-top: 3rem;
	}

	ul.post,
	.post2b,
	.post4b,
	.postlist {
		width: 100%;
		margin: 0 auto;
		padding: 0;
		font-size: 1.4rem;
	}
}

/* -- postlist -- */

.postlist {
	background: none;
	border: none;
	margin: 0;
}

.postlist li {
	border-bottom: none;
	margin: 0;
	padding: 0;
}

.postlist li+li {
	margin-top: 60px;
}

@media only screen and (max-width: 1023px) {
	.postlist li+li {
		margin-top: 50px;
	}
}

@media only screen and (max-width: 767px) {
	.postlist li+li {
		margin-top: 30px;
	}
}

/* -- post_text -- */

.postlist .post_text {
	display: flex;
	align-items: center;
	width: 100%;
	margin: 0;
	padding: 0;
}

ul.post .post_text {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 0;
}

.post4b_text,
.post2b_text {
	display: flex;
	flex-direction: column;
}

@media only screen and (max-width: 799px) {

	.post4b_text {
		width: 100%;
	}

	.post4b_text70,
	.post2b_text70 {
		margin-right: 0;
	}
}

@media only screen and (max-width: 767px) {
	.postlist .post_text {
		flex-wrap: wrap;
	}
}

@media only screen and (max-width: 640px) {
	#content ul.post .post_text {
		width: 100%;
	}

	#content .post4b_text70,
	#content .post2b_text70 {
		width: 100%;
	}
}

/* -- cat-loop bottom-loop -- */

h2.top-loop,
h2.bottom-loop,
h2.cat-loop {
	width: 100%;
	margin: 0 0 0.8rem;
	padding: 0;
	font-size: 1.25em;
	text-overflow: clip;
	line-height: 1.65;
	white-space: normal;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
}

h2.top-loop a,
h2.bottom-loop a,
h2.cat-loop a {
	font-size: inherit;
	letter-spacing: inherit;
	line-height: inherit;
}

.post4b h2.top-loop,
.post4b h2.bottom-loop,
.post4b h2.cat-loop {
	margin: 0;
	font-weight: 700;
	font-size: 1.125em;
}

.post4b h2.top-loop a,
.post4b h2.bottom-loop a,
.post4b h2.cat-loop a {
	transition: opacity .5s;
}

.post4b h2.top-loop a:hover,
.post4b h2.bottom-loop a:hover,
.post4b h2.cat-loop a:hover {
	opacity: .5;
}

/* -- time -- */

ul.post .time,
.postlist .time,
.post2b .time,
.post4b .time {
	max-width: 100%;
	border-radius: 0;
	margin: 0 0 1.4rem;
	padding: 2px 12px;
	font-size: 1.3rem;
	line-height: 1.5;
	letter-spacing: normal;
}

.postlist .time {
	display: none;
}

ul.post .time {
	display: inline-block;
}

.post4b .time {
	background: none;
	padding: 0;
	margin: -5px -5px 10px -5px;
}

.post4b .time>.tag {
	display: inline-block;
	border: 2px solid #0068b1;
	margin: 5px;
	padding: 5px 8px 6px;
	color: #0068b1;
	font-weight: 700;
	font-size: 15px;
	letter-spacing: 0.05em;
}

.post4b .time>.tag-now {
	background-color: #0068b1;
	color: #fff;
}

.post4b span.tag:before {
	content: none;
}

@media only screen and (max-width: 799px) {
	.post2b .time {
		margin-bottom: 0.8rem;
	}

}

@media only screen and (max-width: 767px) {

	.post .time,
	.postlist .time,
	.post2b .time,
	.post4b .time {
		margin: 0 0 1rem;
		font-size: 1.2rem;
	}

	.postlist .time {
		margin: 0;
	}

	.post4b .time {
		padding: 0;
		margin: -3px -3px 5px -3px;
	}

	.post4b .time>.tag {
		margin: 3px;
		padding: 3px 5px 4px;
		font-size: 12px;
	}

	.post4b .time>.tag-now {
		background-color: #0068b1;
		color: #fff;
	}

	.post4b span.tag:before {
		content: none;
	}
}

/* -- cat -- */

ul.post .cat,
.post2b .cat,
.post4b .cat {
	margin: 0 0 0 5px;
}

/* -- .post_link -- */

.post_link,
.post2b_link,
.post4b_link {
	float: none;
	clear: none;
	margin: auto 0 0 auto;
	font-size: 100%;
}

/* -- postlistのみ -- */

/* -- date -- */

.postlist .date {
	align-self: flex-start;
	background-color: #0068b1;
	border-radius: 100px;
	margin: 0 40px 0 0;
	padding: 5px 22px 8px;
	color: #fff;
	font-size: 12px;
	order: 1;
}

@media only screen and (max-width: 767px) {
	.postlist .date {
		margin: 0 0 5px;
		padding: 4px 15px;
		font-size: 10px;
	}
}

/* -- ttl -- */

.postlist .ttls {
	margin: 0;
	padding: 0;
	transform: translateY(-0.2em);
	order: 3;
}

.postlist .ttls a {
	color: inherit;
}

@media only screen and (max-width: 767px) {
	.postlist .ttls {
		display: block;
		width: 100%;
		margin: 1rem 0 0 !important;
	}
}

/* -- postlistのみ 終わり -- */

/* -- post_img -- */

ul.post .post_img {
	position: relative;
	height: 0;
	min-height: 0%;
	padding-top: 22.0171%;
	overflow: hidden;
	z-index: 1;
}

ul.post .post_img img {
	position: absolute;
	top: 50%;
	left: 50%;
	width: auto;
	height: 100%;
	transform: translate(-50%, -50%);
}

.post4b .post4b_img,
.post2b .post2b_img {
	position: relative;
	max-width: none;
	height: 0;
	min-height: 0%;
	margin-bottom: 1rem;
	padding-top: 70.8222%;
	overflow: hidden;
	z-index: 1;
}

.post4b .post4b_img {
	margin-bottom: 15px;
}

.post4b .post4b_img img,
.post2b .post2b_img img {
	position: absolute;
	top: 50%;
	left: 50%;
	max-width: none;
	width: auto;
	height: 100%;
	transform: translate(-50%, -50%);
}

.post4b .post4b_img img {
	opacity: 1 !important;
	transition: 0.3s transform;
}

.post4b .post4b_img a:hover img {
	transform: translate(-50%, -50%) scale(1.1);
}

@media only screen and (max-width: 799px) {

	.post4b .post4b_img,
	.post2b .post2b_img {
		margin-bottom: 1rem;
		padding-top: 22.0171%;
	}

	.post4b .post4b_img {
		width: 100%;
		margin-bottom: 15px;
		padding-top: 70.8222%;
	}

}

@media only screen and (max-width: 640px) {

	#content ul.post .post_img,
	#content .post4b_img,
	#content .post2b_img {
		max-width: none;
		float: none;
		width: 100%;
		min-height: 0%;
		margin: 0 auto 1rem;
		padding-top: 70.8222%;
	}

	#content ul.post .post_img img,
	#content .post4b_img img,
	#content .post2b_img img {
		max-width: none;
	}
}

/* -- post_contents -- */

li .post_contents {
	max-width: 100%;
	margin: 0 0 2.5rem;
	padding: 0;
}

li .post4b_contents,
li .post2b_contents {
	max-width: 100%;
	margin-bottom: 2.5rem;
}

@media only screen and (max-width: 640px) {
	li .post_contents {
		margin: 0 0 2rem;
	}

	li .post4b_contents,
	li .post2b_contents {
		margin-bottom: 2rem;
	}
}

/* -- ul.post -- */

ul.post li {
	display: flex;
	justify-content: space-between;
	margin-bottom: 5%;
}

ul.post li.clearfix:after {
	content: none;
}

@media only screen and (max-width: 640px) {
	ul.post li {
		flex-direction: column;
		margin-bottom: 8%;
	}
}

/* -- 2b -- */

.post2b {
	display: flex;
	flex-wrap: wrap;
}

.post2b li {
	display: flex;
	flex-direction: column;
	border: none !important;
	margin: 0 0 4% 3%;
	padding: 0 0 0 0;
	line-height: inherit;
	width: 48.5%;
}

.post2b li:nth-child(2n + 1) {
	margin-left: 0;
}

.post2b li.clearfix:after {
	content: none;
}

@media only screen and (max-width: 799px) {
	.post2b li {
		flex-direction: row;
		justify-content: space-between;
		width: 100%;
		margin-bottom: 5%;
		margin-left: 0;
	}
}

@media only screen and (max-width: 640px) {
	.post2b li {
		flex-direction: column;
		justify-content: flex-start;
		margin-bottom: 8%;
	}
}

/* -- 4b -- */

.post4b {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
}

.post4b li {
	display: flex;
	flex-direction: column;
	border: none !important;
	margin: 0 0 0 5% !important;
	padding: 0 0 0 0;
	line-height: inherit;
	width: 30%;
}

.post4b li:nth-child(3n+1) {
	margin-left: 0 !important;
}

.post4b li:nth-child(n+4) {
	margin-top: 4% !important;
}

.post4b li.clearfix:after {
	content: none;
}

.post4b li a {
	text-decoration: none !important;
}

@media only screen and (max-width: 799px) {

	.post4b li {
		display: flex;
		flex-direction: column;
		border: none !important;
		margin: 0 0 0 8% !important;
		padding: 0 0 0 0;
		line-height: inherit;
		width: 46%;
	}

	.post4b li:nth-child(3n+1) {
		margin-left: 8% !important;
	}

	.post4b li:nth-child(2n+1) {
		margin-left: 0 !important;
	}

	.post4b li:nth-child(n+3) {
		margin-top: 4% !important;
	}

}

@media only screen and (max-width: 640px) {

	.post4b li {
		display: flex;
		flex-direction: column;
		border: none !important;
		margin: 0 0 0 4% !important;
		padding: 0 0 0 0;
		line-height: inherit;
		width: 48%;
	}

	.post4b li:nth-child(3n+1) {
		margin-left: 4% !important;
	}

	.post4b li:nth-child(2n+1) {
		margin-left: 0 !important;
	}

	.post4b li:nth-child(n+3) {
		margin-top: 6% !important;
	}

}

/* -- pagenav dateLabel -- */

.dateLabel {
	margin: 4rem 0 6rem;
}

.pagenav {
	margin: 8rem 0 0;
}

.pagenav a {
	transition: opacity 0.5s;
}

.pagenav a:hover {
	opacity: 0.7;
}

@media only screen and (max-width: 767px) {
	.dateLabel {
		margin: 1.5rem 0 3rem;
	}

	.pagenav {
		margin: 4rem 0 0;
	}
}

/* ----------------------
パンくず
---------------------- */

#breadcrumb {
	border-bottom: 1px solid #0d0d0d;
	max-width: 1180px;
	width: 90%;
	margin: 0 auto;
	padding: calc(25px + 30px) 0 25px;
}

#breadcrumb br {
	display: none;
}

#breadcrumb ul {
	max-width: none;
	width: 100%;
	padding: 0;
}

#breadcrumb ul li {
	font-size: 14px;
	line-height: 1.5;
	letter-spacing: 0.06em;
}

#breadcrumb ul li:first-child {
	margin-left: 0;
}

@media screen and (max-width: 1023px) {
	#breadcrumb {
		margin: 0 auto;
		padding: calc(15px + 20px) 0;
	}
}

@media screen and (max-width: 767px) {
	#breadcrumb {
		margin: 0 auto;
		padding: calc(10px + 10px) 0;
	}

	#breadcrumb ul li {
		font-size: 12px;
	}
}

/* ----------------------
フッタータブメニュー
---------------------- */

#MESY_FTMFM_footer_bar i::before {
	font-family: FontAwesome;
}

/* ----------------------
スクロール
---------------------- */

#scrollUp {
	border-radius: 0 !important;
	transition: opacity 0.2s;
}

.mobile #scrollUp {
	bottom: 80px !important;
}

.scroll-top {
	display: block;
	width: 12px;
	height: 12px;
	border: 1px solid;
	border-color: #fff #fff transparent transparent;
	transform: translate(-50%, -25%) rotate(-45deg);
	position: absolute;
	top: 50%;
	left: 50%;
}

.icon-up-open {
	display: none;
}

.side-open #scrollUp {
	visibility: hidden;
	opacity: 0;
}

/************************************************************
▼▼▼ header ▼▼▼
 ************************************************************/
#header,
.home #header {
	position: fixed;
	width: 100%;
	background: none;
	margin: 0 auto;
	top: 0;
	left: 0;
	z-index: 100;
}

#header .inner,
#header #header-layout {
	position: relative;
	width: 100% !important;
	max-width: none !important;
	margin: 0;
}

#header .inner,
#header #header-layout,
#header #header-layout .logo-catchphrase,
#header #header-layout ul.header__logos {
	height: 100%;
}

#header #header-layout {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 48px 62px;
	transition: opacity 0.2s;
}

#header #header-layout .logo,
#header #header-layout .sticky-logo {
	max-width: 137px;
	line-height: 1;
	margin: 0;
	padding: 0;
}

#header #header-layout .sticky-logo {
	margin-right: auto;
}

#header #header-layout .logo img,
#header #header-layout .sticky-logo img {
	width: 100%;
	height: auto;
}

#header #header-layout .logo-catchphrase,
#header ul.header__logos {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

#header .menu-trigger {
	position: relative;
	cursor: pointer;
	width: 50px;
	height: 23px;
	max-width: 50px;
	max-height: 23px;
	left: auto;
	top: auto;
	right: auto;
}

#header #header-layout.header-layout-sticky {
	position: relative;
}

#header #header-layout.header-layout-sticky .logo {
	max-width: 200px;
	opacity: .85;
	filter: drop-shadow(0px 0px 10px rgba(2, 30, 80, 385));
}

#header #header-layout.header-layout-sticky .logo img {
	max-height: none;
}


.sticky-header #header .header-layout-sticky .logo,
body:not(.sticky-header) #header .header-layout-sticky .sticky-logo {
	display: none;
}

@media screen and (max-width: 1900px) {

	#header #header-layout {
		padding: calc(48px + (1vw - 19px) * 2.4713) calc(62px + (1vw - 19px) * 3.7070);
	}

}

@media screen and (max-width: 1200px) {

	#header .menu-trigger {
		width: 40px;
		height: 19px;
		max-width: 40px;
		max-height: 19px;
	}

}

@media screen and (max-width: 1023px) {

	#header #header-layout .logo,
	#header #header-layout .sticky-logo {
		max-width: 120px;
	}

	#header #header-layout.header-layout-sticky .logo {
		max-width: 130px;
	}
}

@media screen and (max-width: 767px) {
	#header #header-layout {
		padding: 20px;
	}

	#header #header-layout .logo,
	#header #header-layout .sticky-logo {
		max-width: 85px;
	}

	#header #header-layout.header-layout-sticky .logo {
		max-width: 85px;
	}

	#header #header-layout .logo img,
	#header #header-layout .sticky-logo img {
		max-width: none;
		max-height: none;
	}

	#header .menu-trigger {
		width: 28px;
		height: 12px;
		max-width: 28px;
		max-height: 12px;
	}
}

/*menu btn
--------------------------------------------------------*/
nav#hbNav {
	position: fixed;
	width: 50px;
	height: 23px;
	max-width: 50px;
	max-height: 23px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	top: 55px;
	right: 55px;
	z-index: 100;
}

@media screen and (max-width: 1200px) {
	nav#hbNav {
		width: 40px;
		height: 19px;
		max-width: 40px;
		max-height: 19px;
		top: 48px;
		right: 48px;
	}
}

@media screen and (max-width: 767px) {
	nav#hbNav {
		width: 28px;
		height: 12px;
		max-width: 28px;
		max-height: 12px;
		top: 36px;
		right: 20px;
	}
}

/*tab*/
/*menu trigger
--------------------------------------------------------*/
.menu-trigger,
.menu-trigger span {
	display: inline-block;
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 13;
}

.menu-trigger {
	position: fixed;
	width: 50px;
	height: 20px;
	left: inherit;
	top: 70px;
	right: 16px;
}

.menu-trigger p.menutr {
	position: absolute;
	bottom: -82%;
	font-size: 80%;
	color: #000;
	z-index: 3;
}

#menu-trigger.active p.menutr {
	display: none;
}

.menu-trigger span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #000;
	border-radius: 0px;
}

.menu-trigger span:first-child {
	top: 0;
}

.menu-trigger span:last-child {
	bottom: 0;
}

@media only screen and (max-width: 1023px) {
	.menu-trigger span {
		height: 2px;
	}
}

/*menu trigger fix
--------------------------------------------------------*/
.menu-trigger-fix,
.menu-trigger-fix span {
	display: inline-block;
	-webkit-transition: all 0.4s;
	-o-transition: all 0.4s;
	transition: all 0.4s;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 13;
}

.menu-trigger-fix {
	position: fixed;
	width: 30px;
	height: 27px;
	left: 83%;
	top: 65px;
}

.menu-trigger-fix span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 4px;
	background-color: #111;
	border-radius: 0px;
}

.menu-trigger-fix span:first-child {
	top: 0;
}

.menu-trigger-fix span:last-child {
	bottom: 0;
}

/*menu trigger effect
--------------------------------------------------------*/

#menu-trigger.active span {
	background-color: #fff;
	transform-origin: center;
}

#menu-trigger.active span:first-child {
	-webkit-transform: translateY(20px) rotate(-45deg);
	-ms-transform: translateY(20px) rotate(-45deg);
	transform: translateY(20px) rotate(-45deg);
}

@-webkit-keyframes active-menu12-bar02 {
	100% {
		height: 0;
	}
}

@keyframes active-menu12-bar02 {
	100% {
		height: 0;
	}
}

#menu-trigger.active span:last-child {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

#menu-trigger.active::after {
	-webkit-animation: menu12-circle 0.4s 0.25s forwards;
	animation: menu12-circle 0.4s 0.25s forwards;
}

@-webkit-keyframes menu12-circle {
	0% {
		border-color: transparent;
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}

	100% {
		-webkit-transform: rotate(-680deg);
		transform: rotate(-680deg);
	}
}

@keyframes menu12-circle {
	0% {
		border-color: transparent;
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}

	100% {
		-webkit-transform: rotate(-680deg);
		transform: rotate(-680deg);
	}
}

@media screen and (max-width: 1200px) {
	#menu-trigger.active span:first-child {
		-webkit-transform: translateY(16px) rotate(-45deg);
		-ms-transform: translateY(16px) rotate(-45deg);
		transform: translateY(16px) rotate(-45deg);
	}
}

@media screen and (max-width: 767px) {
	#menu-trigger.active span:first-child {
		-webkit-transform: translateY(11px) rotate(-45deg);
		-ms-transform: translateY(11px) rotate(-45deg);
		transform: translateY(11px) rotate(-45deg);
	}
}

#all {
	position: relative;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	z-index: 2;
}

#right-panel {
	display: flex !important;
	align-items: center;
	justify-content: center;
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	text-align: left;
	background-color: rgba(0, 0, 0, 0.6);
	background-size: calc(901px + (1vw - 19.2px) * 36.3107) auto;
	background-position: center;
	background-repeat: no-repeat;
	z-index: 12;
	transition: opacity 0.2s ease-in-out, visibility 0.2s ease-in-out;
	padding: 80px 0 0;
	visibility: hidden;
	opacity: 0;
}

@media all and (-ms-high-contrast: none) {
	#right-panel {
		display: block !important;
		background-color: #000;
	}
}

#right-panel .headerMenu_wrap {
	display: flex;
	justify-content: center;
	max-width: 90%;
	height: auto;
	margin: auto;
}

@media all and (-ms-high-contrast: none) {
	#right-panel .headerMenu_wrap {
		position: relative;
		top: 15%;
		left: 50%;
		margin: 0;
		transform: translate(-50%, 0);
	}
}

#right-panel .headerMenu_wrap .nav_logo {
	width: 200px;
	margin-right: 6.72%;
}

#right-panel .headerMenu_wrap .nav_logo img {
	width: auto;
}

#right-panel .headerMenu_wrap .nav_left {
	column-count: 2;
	column-gap: 6.72%;
	border-left: 1px solid #fff;
	width: 705px;
	padding: 0 0 0 80px;
}

#right-panel .headerMenu_wrap .nav_left ul {
	height: auto;
	padding: 0;
}

#right-panel .headerMenu_wrap .nav_left ul li {
	margin: 0 0 35px;
	padding: 0;
	color: #fff;
	font-family: "Merriweather Sans", "Noto Sans JP", "ヒラギノ角ゴ Pro W3",
		"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "Meiryo UI",
		"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 40px;
	font-weight: 800;
	text-align: left;
	line-height: 1;
	letter-spacing: 0.04em;
	break-inside: avoid;
}

#right-panel .headerMenu_wrap .nav_left ul ul {
	margin-top: 25px;
	margin-left: -3px;
}

#right-panel .headerMenu_wrap .nav_left ul li li {
	position: relative;
	margin: 0 0 15px;
	padding: 0 0 0 31px;
	font-weight: 400;
	font-size: 18px;
	line-height: 1.4;
	letter-spacing: 0.02em;
}

#right-panel .headerMenu_wrap .nav_left ul li li::before {
	position: absolute;
	content: "";
	display: inline-block;
	width: 16px;
	height: 1px;
	background: #fff;
	top: 50%;
	left: 0;
}

#right-panel .headerMenu_wrap .nav_left ul li a {
	font-size: inherit;
	font-weight: inherit;
	color: inherit;
	transition: opacity 0.3s ease-in-out;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	overflow: hidden;
}

#right-panel .headerMenu_wrap .nav_left ul li a[target="_blank"]::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f35d";
	margin-left: 8px;
}

#right-panel .menu_contact_wrap {
	margin: 50px 0 0;
}

#right-panel .headerMenu_wrap .contact_mail {
	float: initial;
	width: 100%;
}

#right-panel .headerMenu_wrap .contact_mail a {
	display: block;
	width: 300px;
	padding: 35px 40px;
	text-align: center;
	font-weight: 800;
	font-size: 20px;
	background-color: #ff9000;
	color: #fff;
	letter-spacing: 0.1em;
	transition: background-color 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

#right-panel .headerMenu_wrap .contact_mail a:hover {
	background-color: #0d0d0d;
}

@media all and (-ms-high-contrast: none) {
	#right-panel .headerMenu_wrap .contact_mail a:hover {
		background-color: #ff9000;
		opacity: 0.7;
	}
}

@media only screen and (max-width: 1280px) {
	#right-panel .headerMenu_wrap {
		flex-wrap: wrap;
	}

	#right-panel .headerMenu_wrap .nav_logo {
		width: 160px;
		margin: 0 auto 35px 0;
	}

	#right-panel .headerMenu_wrap .nav_left {
		border-left: none;
		border-top: 1px solid #fff;
		width: 100%;
		padding: 35px 0 0;
	}

	#right-panel .headerMenu_wrap .nav_left ul li {
		margin: 0 0 35px;
	}
}

@media only screen and (max-width: 1023px) {
	#right-panel .headerMenu_wrap {
		max-width: 80%;
	}

	#right-panel .headerMenu_wrap .nav_logo {
		width: 140px;
		margin: 0 auto 30px 0;
	}

	#right-panel .headerMenu_wrap .nav_left {
		padding: 30px 0 0;
	}

	#right-panel .headerMenu_wrap .nav_left ul li {
		margin: 0 0 30px;
		font-size: 35px;
	}

	#right-panel .headerMenu_wrap .nav_left ul>li+li {
		margin-top: 25px;
	}

	#right-panel .headerMenu_wrap .nav_left ul ul {
		margin-top: 20px;
		margin-left: 0;
	}

	#right-panel .headerMenu_wrap .nav_left ul li li {
		margin: 0 0 15px;
		font-size: 17px;
	}

	#right-panel .menu_contact_wrap {
		margin: 40px 0 0;
	}

	#right-panel .headerMenu_wrap .contact_mail {
		padding: 0;
	}

	#right-panel .headerMenu_wrap .contact_mail a {
		width: 260px;
		padding: 30px 20px;
		font-size: 18px;
	}
}

@media only screen and (max-width: 767px) {
	#right-panel .headerMenu_wrap {
		max-width: 85%;
	}

	#right-panel .headerMenu_wrap .nav_logo {
		max-width: 90px;
		width: 50%;
		margin: 0 auto 20px 0;
	}

	#right-panel .headerMenu_wrap .nav_left {
		column-count: 1;
		column-gap: 0;
		padding: 20px 0 80px;
	}

	#right-panel .headerMenu_wrap .nav_left ul li {
		margin: 0 0 20px;
		font-size: 22px;
	}

	#right-panel .headerMenu_wrap .nav_left ul li li {
		margin: 0 0 12px;
		padding: 0 0 0 20px;
		font-size: 14px;
	}

	#right-panel .headerMenu_wrap .nav_left ul li li::before {
		width: 12px;
	}

	#right-panel .menu_contact_wrap {
		margin: 30px 0 0;
	}

	#right-panel .headerMenu_wrap .contact_mail {
		padding: 0;
	}

	#right-panel .headerMenu_wrap .contact_mail a {
		max-width: 320px;
		width: auto;
		padding: 25px 20px;
		font-size: 16px;
	}
}

@media screen and (-ms-high-contrast: none) and (max-width: 767px) {
	#right-panel .headerMenu_wrap {
		top: 0;
	}
}

.side-open #mainImg,
.side-open #full-wrapper,
.side-open #wrapper,
.side-open #breadcrumb,
.side-open #footer,
.side-open header#h1Header {
	filter: blur(30px);
	will-change: filter;
}

.side-open #header #header-layout {
	visibility: hidden;
	opacity: 0;
}

.side-open #right-panel {
	position: fixed;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	-ms-overflow-style: none;
	overflow-y: scroll;
	scrollbar-width: none;
	visibility: visible;
	opacity: 1;
}

.side-open #right-panel::-webkit-scrollbar {
	display: none;
}

.scroll-logo {
	display: block;
	padding-left: 0;
	margin: 0 auto;
	text-align: center;
}

@media screen and (max-width: 1023px) {
	nav div.panel {
		float: none;
		display: flex !important;
	}
}

#header .headerMenu_wrap ul a:hover,
#header .headerMenu_wrap ul a:active {
	color: #222;
}

/* ----------------------
footer
---------------------- */

/* -- reset -- */

#footer {
	padding: 0;
}

#footer ul {
	padding: 0;
	font-size: 100%;
}

#footer ul li {
	margin: 0;
	padding: 0;
}

#footer ul li::before {
	content: none;
}

#footer ul li:last-child::before {
	content: none;
}

#footer ul li li {
	margin: 0;
}

#footer ul li a {
	text-decoration: none !important;
	transition: opacity 0.3s;
}

#footer ul li a:hover {
	opacity: 0.7;
}

#footer ul li a,
#footer ul li li a {
	padding: 0;
}

/* -- reset終わり -- */

#footer .footer_inner {
	padding: 120px 5vw 80px;
}

#footer .footnav_top {
	max-width: 1266px;
	margin: 0 auto 80px;
}

#footer .footnav_top>ul {
	display: flex;
	justify-content: center;
}

#footer .footnav_top>ul>li {
	width: 20%;
	border-left: 1px solid #fff;
	padding: 15px 28px;
	font-size: 18px;
	text-align: center;
}

#footer .footnav_top>ul>li>a {
	display: flex;
	height: 2em;
	align-items: center;
	justify-content: center;
	overflow: visible;
}

#footer .footnav_top>ul>li>a:not([href]) {
	pointer-events: none;
}

#footer .footnav_top>ul>li li a[target="_blank"]::after {
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f35d";
	margin-left: 8px;
}

#footer .footnav_top>ul>li:last-child {
	border-right: 1px solid #fff;
}

#footer .sub-menu {
	margin-top: 30px;
}

#footer .sub-menu li {
	font-size: 14px;
}

#footer .sub-menu li+li {
	margin-top: 5px;
}

#footer .footnav {
	max-width: 1000px;
	margin: 0 auto;
}

#footer .footnav ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 0 auto;
}

#footer .footnav ul li {
	position: relative;
	margin: 0 10px;
	padding: 0;
}

#footer .footnav ul li a {
	display: block;
	padding: 5px;
	overflow: hidden;
	text-decoration: none;
}

#footer .footer_logo {
	max-width: 160px;
	margin: 0 auto 80px;
}

#copyright {
	position: relative;
	padding: 40px 5%;
	font-size: 12px;
	clear: none;
}

#copyright::before {
	content: "";
	display: block;
	position: absolute;
	top: -210px;
	left: calc(50% + 535px);
	background-image: url(/struct/wp-content/uploads/aflo01.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 223px;
	height: 249px;
}

.sponsor_banner {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	gap: 20px;
	padding: 40px 0;
}

.sponsor_banner .banner {
	width: 100%;
	margin: 0;
}

@media screen and (max-width: 1600px) {
	#footer .footnav {
		max-width: 800px;
	}

	#copyright::before {
		top: calc(-210px * 0.8);
		left: calc(50% + 435px);
		width: calc(223px * 0.8);
		height: calc(249px * 0.8);
	}
}

@media screen and (max-width: 1280px) {
	#footer .footnav_top>ul>li {
		padding: 15px;
		font-size: 16px;
	}

	#footer .sub-menu {
		margin-top: 25px;
	}

	#footer .footnav {
		max-width: 600px;
	}

	#copyright::before {
		top: calc(-210px * 0.7);
		left: calc(50% + 335px);
		width: calc(223px * 0.7);
		height: calc(249px * 0.7);
	}
}

@media only screen and (max-width: 1023px) {
	#footer .footer_inner {
		padding: 80px 5vw 60px;
	}

	#footer .footnav_top {
		margin: 0 auto 60px;
	}

	#footer .footnav_top>ul {
		justify-content: flex-start;
		flex-wrap: wrap;
		position: relative;
		border-left: 1px solid #fff;
		border-right: 1px solid #fff;
	}

	#footer .footnav_top>ul::before,
	#footer .footnav_top>ul::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		background-color: #fff;
		width: 1px;
	}

	#footer .footnav_top>ul::before {
		left: 33.3333%;
	}

	#footer .footnav_top>ul::after {
		left: 66.6667%;
	}

	#footer .footnav_top>ul>li {
		width: 33.3333%;
		border-left: none;
		padding: 15px 5%;
	}

	#footer .footnav_top>ul>li:nth-child(n + 4) {
		margin-top: 20px;
	}

	#footer .footnav_top>ul>li:last-child {
		border-right: none;
	}

	#footer .sub-menu {
		margin-top: 25px;
	}

	#footer .footnav {
		max-width: 480px;
	}

	#footer .footer_logo {
		margin: 0 auto 50px;
	}

	#copyright {
		padding: 25px 5vw;
		font-size: 12px;
	}

	#copyright::before {
		top: calc(-210px * 0.5);
		left: calc(50% + 250px);
		width: calc(223px * 0.5);
		height: calc(249px * 0.5);
	}
}

@media only screen and (max-width: 767px) {
	#footer .footer_inner {
		padding: 40px 5vw 100px;
	}

	#footer .footnav_top {
		margin: 0 auto 30px;
	}

	#footer .footnav_top>ul {
		justify-content: flex-start;
		flex-wrap: wrap;
		position: relative;
		border-left: none;
		border-right: none;
		margin: 0 -3vw;
	}

	#footer .footnav_top>ul::before,
	#footer .footnav_top>ul::after {
		content: "";
		display: block;
		position: absolute;
		top: 0;
		bottom: 0;
		background-color: #fff;
		width: 1px;
	}

	#footer .footnav_top>ul::before {
		left: 50%;
	}

	#footer .footnav_top>ul::after {
		content: none;
	}

	#footer .footnav_top>ul>li {
		width: 50%;
		border-left: none;
		padding: 10px 20px;
		font-size: 14px;
		text-align: left;
	}

	#footer .footnav_top>ul>li:nth-child(n + 3) {
		margin-top: 15px;
	}

	#footer .footnav_top>ul>li>a {
		height: auto;
		justify-content: flex-start;
	}

	#footer .footnav_top>ul>li:last-child {
		border-right: none;
	}

	#footer .sub-menu {
		margin-top: 15px;
	}

	#footer .sub-menu li {
		font-size: 12px;
	}

	#footer .footnav ul li {
		font-size: 13px;
	}

	#footer .footer_logo {
		max-width: 100px;
		margin: 0 auto 30px;
	}

	#copyright {
		padding: 12px 5vw;
		font-size: 10px;
	}

	#copyright::before {
		top: calc(-249px * 0.35 + 0.5px);
		left: 50%;
		width: calc(223px * 0.35);
		height: calc(249px * 0.35);
		transform: translateX(-50%);
	}

	.sponsor_banner {
		gap: 10px;
	}
}

/*バージョンアップCF7送信スピナーによるテキストずれ対応*/
.wpcf7-spinner {
	position: absolute !important;
	margin: 0 !important;
}

/*-----20250415-----*/
.top_recruit .top_recruit_inner {
	padding: 0;
	margin-bottom: 200px;
	position: relative;
	max-width: 1720px;

	@media only screen and (max-width: 767px) {
		margin-bottom: 100px;
	}
}

.top_recruit .top_recruit_inner .top_recruit_inner_image img {
	margin-top: -10%;
}

.top_recruit .top_recruit_inner .top_recruit_inner_image .sp_none {
	display: none;
}

.top_recruit::before {
	left: 50%;
	right: 0;
	top: 0;
	writing-mode: horizontal-tb;
	transform: translate(-50%, -100%);
	color: #ffffff88;
	width: 100%;
	text-align: center;
	font-size: clamp(64px, 16.56vw - -1.864px, 320px) !important;

	@media only screen and (max-width: 767px) {
		transform: translate(-50%, -60%);
	}
}

@media only screen and (max-width: 767px) {
	.top_recruit .top_recruit_inner .top_recruit_inner_image .pc_none {

		display: none;
	}

	.top_recruit .top_recruit_inner .top_recruit_inner_image .sp_none {
		display: block;
	}
}



.top_recruit_inner .btnarea {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 200px;
	height: 200px;
	z-index: 1;

	@media only screen and (max-width: 1023px) {
		width: 180px;
		height: 180px;
	}

	@media only screen and (max-width: 900px) {
		width: 140px;
		height: 140px;
	}
}

.top_recruit_inner .btnarea:before {
	content: "";
	background: rgb(238, 238, 238);
	width: 100%;
	height: 100%;
	position: absolute;
	border-radius: 50vh 0 0 0;
	-webkit-transform-origin: bottom right;
	-ms-transform-origin: bottom right;
	transform-origin: bottom right;
	-webkit-transition: .3s ease;
	-o-transition: .3s ease;
	-webkit-transition: 0.3s ease;
	-o-transition: 0.3s ease;
	transition: 0.3s ease;
	z-index: -1;
}

.designbtn:after {
	content: "";
	mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJpY29feXViaSIgZGF0YS1uYW1lPSJpY29feXViaSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjYyLjA4IDE2OS4wNCI+IDxkZWZzPiA8c3R5bGU+IC5jbHMtMSB7IGZpbGw6IG5vbmU7IHN0cm9rZTogIzAwMDsgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kOyBzdHJva2UtbGluZWpvaW46IHJvdW5kOyBzdHJva2Utd2lkdGg6IDguNzFweDsgfSA8L3N0eWxlPiA8L2RlZnM+IDxnIGlkPSJpY29feXViaV9nIiBkYXRhLW5hbWU9Imljb195dWJpX2ciPiA8Zz4gPGc+IDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTM2LjMsNzIuNzJMMTA1LjE4LDguMDZoMGM2LjU0LTUuMzQsMTYuMDUtNC44NiwyMi4wMiwxLjExaDBjNi4zMyw2LjMzLDYuNDMsMTYuNTUuMjMsMjMuMDFsLTE2Ljc4LDE3LjQ3Yy0uNjIuNjUtLjE2LDEuNzMuNzQsMS43M2g4Ni44M2M3LjgzLDAsMTQuMTMsNi40MSwxMy43NiwxNC4yMy0uMzQsNy4yLTYuMjgsMTIuOTQtMTMuNTcsMTIuOTRoLTc0LjAxLDMxLjE0YzguMywwLDE1LjI1LDYuNzksMTUuMDksMTUuMDktLjE1LDguMDQtNi43MiwxNC41MS0xNC44LDE0LjUxaC0zOC43MywyNy4xN2M4LjA2LDAsMTQuNTUsNi42LDE0LjE3LDE0LjY1LS4zNSw3LjQyLTYuNDcsMTMuMzMtMTMuOTgsMTMuMzNoLTQwLjM1LDI3LjNjNy45NiwwLDE0LjYyLDYuNTEsMTQuNDcsMTQuNDctLjE1LDcuNzEtNi40NCwxMy45Mi0xNC4xOSwxMy45MmgwYy0yMy41Mi4zOS00OC4wNi0uMDQtNDguMDYtLjA0bC00Ny4zMy0xMS40N3YtODAuMjlaIi8+IDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTS0yOC43OSw5NS4zN2g5OS43Yy4xMywwLC4yMy4xLjIzLjIzdjMxLjQ4YzAsLjEzLS4xLjIzLS4yMy4yM0gtMzAuMjZjLS4xMywwLS4yMy0uMS0uMjMtLjIzdi0zMC4wMWMwLS45NC43Ni0xLjcsMS43LTEuN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEzMS42NyA5MS4wMSkgcm90YXRlKDkwKSIvPiA8L2c+IDxsaW5lIGNsYXNzPSJjbHMtMSIgeDE9IjIzNC40OSIgeTE9IjY0Ljg1IiB4Mj0iMjU3LjczIiB5Mj0iNjQuODUiLz4gPGxpbmUgY2xhc3M9ImNscy0xIiB4MT0iMjI2LjciIHkxPSI0MyIgeDI9IjI0NC41IiB5Mj0iMjguMDciLz4gPGxpbmUgY2xhc3M9ImNscy0xIiB4MT0iMjA2LjY5IiB5MT0iMzEuMjgiIHgyPSIyMTAuNzMiIHkyPSI4LjQiLz4gPGxpbmUgY2xhc3M9ImNscy0xIiB4MT0iMjA2LjI2IiB5MT0iOTguMDYiIHgyPSIyMTAuMyIgeTI9IjEyMC45NCIvPiA8bGluZSBjbGFzcz0iY2xzLTEiIHgxPSIyMjYuNDIiIHkxPSI4Ni41OSIgeDI9IjI0NC4yMiIgeTI9IjEwMS41MiIvPiA8L2c+IDwvZz48L3N2Zz4=);
	-webkit-mask-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48c3ZnIGlkPSJpY29feXViaSIgZGF0YS1uYW1lPSJpY29feXViaSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMjYyLjA4IDE2OS4wNCI+IDxkZWZzPiA8c3R5bGU+IC5jbHMtMSB7IGZpbGw6IG5vbmU7IHN0cm9rZTogIzAwMDsgc3Ryb2tlLWxpbmVjYXA6IHJvdW5kOyBzdHJva2UtbGluZWpvaW46IHJvdW5kOyBzdHJva2Utd2lkdGg6IDguNzFweDsgfSA8L3N0eWxlPiA8L2RlZnM+IDxnIGlkPSJpY29feXViaV9nIiBkYXRhLW5hbWU9Imljb195dWJpX2ciPiA8Zz4gPGc+IDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTTM2LjMsNzIuNzJMMTA1LjE4LDguMDZoMGM2LjU0LTUuMzQsMTYuMDUtNC44NiwyMi4wMiwxLjExaDBjNi4zMyw2LjMzLDYuNDMsMTYuNTUuMjMsMjMuMDFsLTE2Ljc4LDE3LjQ3Yy0uNjIuNjUtLjE2LDEuNzMuNzQsMS43M2g4Ni44M2M3LjgzLDAsMTQuMTMsNi40MSwxMy43NiwxNC4yMy0uMzQsNy4yLTYuMjgsMTIuOTQtMTMuNTcsMTIuOTRoLTc0LjAxLDMxLjE0YzguMywwLDE1LjI1LDYuNzksMTUuMDksMTUuMDktLjE1LDguMDQtNi43MiwxNC41MS0xNC44LDE0LjUxaC0zOC43MywyNy4xN2M4LjA2LDAsMTQuNTUsNi42LDE0LjE3LDE0LjY1LS4zNSw3LjQyLTYuNDcsMTMuMzMtMTMuOTgsMTMuMzNoLTQwLjM1LDI3LjNjNy45NiwwLDE0LjYyLDYuNTEsMTQuNDcsMTQuNDctLjE1LDcuNzEtNi40NCwxMy45Mi0xNC4xOSwxMy45MmgwYy0yMy41Mi4zOS00OC4wNi0uMDQtNDguMDYtLjA0bC00Ny4zMy0xMS40N3YtODAuMjlaIi8+IDxwYXRoIGNsYXNzPSJjbHMtMSIgZD0iTS0yOC43OSw5NS4zN2g5OS43Yy4xMywwLC4yMy4xLjIzLjIzdjMxLjQ4YzAsLjEzLS4xLjIzLS4yMy4yM0gtMzAuMjZjLS4xMywwLS4yMy0uMS0uMjMtLjIzdi0zMC4wMWMwLS45NC43Ni0xLjcsMS43LTEuN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDEzMS42NyA5MS4wMSkgcm90YXRlKDkwKSIvPiA8L2c+IDxsaW5lIGNsYXNzPSJjbHMtMSIgeDE9IjIzNC40OSIgeTE9IjY0Ljg1IiB4Mj0iMjU3LjczIiB5Mj0iNjQuODUiLz4gPGxpbmUgY2xhc3M9ImNscy0xIiB4MT0iMjI2LjciIHkxPSI0MyIgeDI9IjI0NC41IiB5Mj0iMjguMDciLz4gPGxpbmUgY2xhc3M9ImNscy0xIiB4MT0iMjA2LjY5IiB5MT0iMzEuMjgiIHgyPSIyMTAuNzMiIHkyPSI4LjQiLz4gPGxpbmUgY2xhc3M9ImNscy0xIiB4MT0iMjA2LjI2IiB5MT0iOTguMDYiIHgyPSIyMTAuMyIgeTI9IjEyMC45NCIvPiA8bGluZSBjbGFzcz0iY2xzLTEiIHgxPSIyMjYuNDIiIHkxPSI4Ni41OSIgeDI9IjI0NC4yMiIgeTI9IjEwMS41MiIvPiA8L2c+IDwvZz48L3N2Zz4=);
	background-size: contain;
	width: 60px;
	height: 60px;
	display: block;
	-webkit-mask-size: contain;
	mask-size: contain;
	-webkit-mask-position: 50% 50%;
	mask-position: 50% 50%;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
	background-color: #0d0d0d;
	-webkit-transition: .3s ease;
	-o-transition: .3s ease;
	-webkit-transition: 0.3s ease;
	-o-transition: 0.3s ease;
	transition: 0.3s ease;

	@media only screen and (max-width: 767px) {
		width: 30px;
		height: 30px;
	}
}

.btnarea>.designbtn {
	position: absolute;
	padding-top: 35%;
	padding-left: 30%;
	right: 0;
	bottom: 0;
	z-index: 1;

	@media only screen and (max-width: 840px) {
		font-size: 14px;
	}
}

.designbtn {
	font-size: min(calc(2.4rem + (1vw - 1.92rem) * 0.6472), 2.4rem);
	font-family: 'Noto Sans JP', sans-serif;
	color: rgb(17, 17, 17);
	line-height: 1.25;
	text-align: center;
	z-index: 1;
	font-weight: 600;
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	gap: var(--rem12);
}

.top_recruit a:hover .btnarea:before,
.post .btnarea:hover:before {
	-webkit-transform: scale(1.2);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
	background: #0068b1;

	@media only screen and (max-width: 1240px) {
		-webkit-transform: scale(1.1);
		-ms-transform: scale(1.1);
		transform: scale(1.1);
	}
}

.top_recruit a:hover .btnarea>.designbtn,
.post .btnarea:hover>.designbtn {
	color: #fff;
}

.top_recruit a:hover .designbtn:after,
.post .btnarea:hover .designbtn:after {
	background-color: #fff;
}

.top_recruit a:hover img {
	opacity: 1;
}



.floating-banner {
	position: fixed;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: 90;
	background: #fff;

	@media only screen and (max-width: 767px) {
		display: none;
	}

	>a {
		writing-mode: vertical-rl;
		color: #fff;
		display: block;
		transition: ease-in-out .3s;

		p {
			width: 80px;
			height: 180px;
			display: flex;
			justify-content: center;
			align-items: center;
			font-size: 16px;
		}

		.fb-bule {
			background: rgba(0, 104, 177, 1);

		}

		.fb-orange {
			background: #ff9000;
		}

		i {
			padding-bottom: 0.8rem;
			font-size: 120%;
		}

		&:hover {
			opacity: .6;
		}
	}
}

@media print,
screen and (max-width: 767px) {
	.post .btnarea>.designbtn {
		position: static;
		padding: min(calc(40px + (1vw - 19.2px) * 1.2945), 40px) min(calc(50px + (1vw - 19.2px) * 1.2945), 50px) min(calc(40px + (1vw - 19.2px) * 1.2945), 40px) min(calc(40px + (1vw - 19.2px) * 1.2945), 40px);
		font-weight: 500;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		gap: 10px;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.post .btnarea {
		height: auto;
		width: 90%;
		position: relative;
		-webkit-transition: .3s ease;
		-o-transition: .3s ease;
		-webkit-transition: 0.3s ease;
		-o-transition: 0.3s ease;
		transition: 0.3s ease;
		position: absolute;
		left: 0;
		bottom: 0;
	}

	.post .btnarea:before {
		border-radius: 0 min(calc(60px + (1vw - 19.2px) * 1.9417), 60px) 0 0;
	}
}

.top_recruit_inner a {
	text-decoration: none !important;
}

@media only screen and (max-width: 1023px) {
	.post .designbtn:after {
		width: 40px;
		height: 30px;
	}
}

@media only screen and (max-width: 767px) {
	.post .designbtn {
		font-size: 13px;
		gap: 4px;
	}

	.post .designbtn:after {
		width: 30px;
		height: 20px;
	}

	.top_recruit_inner a:hover .btnarea {
		width: 100%;
	}

	.top_recruit_inner a:hover .btnarea:before,
	.top_recruit_inner a:hover:before {
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
		-webkit-transform-origin: left bottom;
		-ms-transform-origin: left bottom;
		transform-origin: left bottom;
		border-radius: 0;
	}
}