@charset "utf-8";

/* base
-------------------------------------------------------- */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	font-size: 100%;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure,
footer, header, main, menu, nav, section {
	display: block;
}
html {
	line-height: 1;
}
ul, ol {
	list-style-type: none;
}
table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
}
caption, th, td {
	text-align: left;
	font-weight: normal;
	vertical-align: middle;
}
q, blockquote {
	quotes: none;
}

q:before, q:after, blockquote:before, blockquote:after {
	content: "";
	content: none;
}
a img {
	border: none;
}
img {
	vertical-align: bottom;
	border: none;
	max-width: 100%;
	height: auto;
}
img[src*=".svg"] {
	width: 100%;
}
a {
	color: inherit;
	text-decoration: none;
}
*,
:before,
:after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
input,
button,
select,
textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font: inherit;
	border: none;
	border-radius: 0;
	outline: none;
}
textarea {
	resize: vertical;
}
input[type='checkbox'],
input[type='radio'] {
	display: none;
}
input[type='submit'],
input[type='button'],
label,
button,
select {
	cursor: pointer;
}
select::-ms-expand {
	display: none;
}

/* --------------------------------------------------------
	フォントと背景
-------------------------------------------------------- */
:root {
	--child-height: 0px;
}
html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}
body {
	font-family: YuGothic, "Yu Gothic", "游ゴシック体", "游ゴシック", "Hiragino Kaku Gothic ProN", "HiraKakuPro-W3", "メイリオ", Meiryo, Verdana, sans-serif;
	color: #000;
	font-size: 1.6em;
	font-weight: 500;
	background: #fff;
	letter-spacing: 0;
	line-height: 1.6;
}

/* フォント */
.ff_yakuHan { font-family: YakuHanMP, sans-serif; }
.ff_fot-tsukuaoldmin {
	font-family: fot-tsukuaoldmin-pr6n, sans-serif;
	font-weight: 300;
}
.ff_adelle-sans {
	font-family: adelle-sans, sans-serif;
	font-weight: 100;
}
.medium { font-weight: 500; }
.bold { font-weight: 700; }
.heavy { font-weight: 900; }
.tal { text-align: left; }
.tac { text-align: center; }
.tar { text-align: right; }

/* 文字色 */
.fc_rd { color: #e60012; }
.fc_bl { color: #0d9fd2; }
.fc_gy { color: #999; }
.fc_ju { color: #d79962; }

/* 文字サイズ */
.fz14 { font-size: 1.4rem; }
.fz18 { font-size: 1.8rem; }
@media screen and (max-width: 768px) {
.fz14_sp { font-size: 1.4rem; }
.fz12_sp { font-size: 1.2rem; }
.fz11_sp { font-size: 1.1rem; }
}

/* マーカー */
/* 背景 */

@media screen and (max-width: 768px) {
	body { font-size: 1.4em; }
}


/* --------------------------------------------------------
	リンク
-------------------------------------------------------- */
a {
	color: inherit;
	transition: .5s;
}
a:hover { opacity: 0.5; }
::-moz-selection {
	color: #fff;
	background: #34383b;
}
::selection {
	color: #fff;
	background: #34383b;
}
/* テキストリンク
-------------------------------------------------------- */
a.underline { text-decoration: underline; }
a.underline:hover {
	text-decoration: none;
	opacity: 1;
}

/* アンカーリンク
-------------------------------------------------------- */
.anchor {
	margin-top: -90px;
	padding-top: 90px;
}
@media screen and (max-width: 1024px) {
.anchor {
	margin-top: -200px;
	padding-top: 200px;
}
}
@media screen and (max-width: 768px) {
.anchor {
	margin-top: -68px;
	padding-top: 68px;
}
}



/* --------------------------------------------------------
	共通
-------------------------------------------------------- */
.inner {
	max-width: 1000px;
	width: 89.3333%;
	margin: auto;
}
.inner.mw980 { max-width: 980px; }
.inner.mw1400 { max-width: 1400px; }
@media screen and (max-width: 768px) {
.inner.is-wide { width: 100%; }
.inner.is-large { width: 97.3333%; }
}

/* iframe */
.iframe { position: relative; }
.iframe.youtube { padding-top: 56.25%; }
.iframe iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}


/* flex */
.flex {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.nowrap { flex-wrap: nowrap; }
.fd_c {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.fd_rr {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
}
.ai_fs {
	-webkit-box-align: start;
	align-items: flex-start;
}
.ai_fe {
	-webkit-box-align: end;
	align-items: flex-end;
}
.ai_c {
	-webkit-box-align: center;
	align-items: center;
}
.jc_fs {
	-webkit-box-pack: start;
	justify-content: flex-start;
}
.jc_fe {
	-webkit-box-pack: end;
	justify-content: flex-end;
}
.jc_c {
	-webkit-box-pack: center;
	justify-content: center;
}
.jc_sb {
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.jc_sa {
	justify-content: space-around;
}
.order1 {
	-ms-flex-order: 1;
	-webkit-order: 1;
	order: 1;
}
.order2 {
	-ms-flex-order: 2;
	-webkit-order: 2;
	order: 2;
}
.overflow_hidden {
	overflow: hidden;
}

/* --------------------------------------------------------
	アニメーション
-------------------------------------------------------- */
.trigger {
	opacity: 0;
}
/* 下から上へ */
.animation.animation01 {
	animation: fadeup .8s ease forwards;
}
/* 左から右へ */
.animation.animation02 {
	animation: faderight .8s ease forwards;
}
/* 右から左へ */
.animation.animation03 {
	animation: fadeleft .8s ease forwards;
}

@keyframes fadeup{
	from {
		opacity: 0;
		transform: translateY(2em);
	}
	
	to {
		opacity: 1;
		transform: translateY(0);
	}
}
@keyframes faderight{
	from {
		opacity: 0;
		transform: translateX(-2em);
	}
	
	to {
		opacity: 1;
		transform: translateX(0);
	}
}
@keyframes fadeleft{
	from {
		opacity: 0;
		transform: translateX(2em);
	}
	
	to {
		opacity: 1;
		transform: translateX(0);
	}
}


/* --------------------------------------------------------
	見出し
-------------------------------------------------------- */
.c-title01 {
	font-size: 2.6rem;
}
.c-title01__sub {
	margin: 10px 0 0;
}
@media screen and (max-width: 768px) {
.c-title01 {
	font-size: 1.8rem;
}
}


.c-en_title01 {
	color: #edefe6;
	font-size: 20rem;
	opacity: .9;
	line-height: 1;
}
.c-title02 .en {
	color: #f6f7f2;
	font-size: 15rem;
	line-height: .8;
	white-space: nowrap;
}
.c-title02 .ja {
	font-size: 2.6rem;
	margin: -12px 0 0;
}
@media screen and (max-width: 768px) {
.c-title02 .en {
	font-size: min(20vw, 7.5rem);
}
.c-title02 .ja {
	font-size: min(4.8vw, 1.8rem);
	margin:  min(.5333vw, 2px) 0 0;
}
}

.c-title03 { font-size: 3rem; }
.c-title04 { font-size: 2.6rem; }
.c-title05 {
	font-size: 2.4rem;
	background: #f6f7f2;
	padding: 8px 16px;
}
.c-title06 { font-size: 2.4rem; }
.c-title07 { font-size: 2rem; }
@media screen and (max-width: 768px) {
.c-title03,
.c-title06,
.c-title07 { font-size: 1.5rem; }
.c-title04 {
	font-size: min(4.8vw, 1.8rem);
}
.c-title05 {
	font-size: 1.7rem;
	padding: 8px 12px;
}
}


/* --------------------------------------------------------
	ボタン
-------------------------------------------------------- */
.c-btn01 {
	max-width: 400px;
	width: 100%;
	background: #fff;
	border: solid 1px #666;
	border-radius: 100px;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: min(5.3333vw, 20px) 10px;
	position: relative;
}
.c-btn01 .arrow {
	width: 30px;
	height: 30px;
	background: #9B2F32;
	background: linear-gradient(-45deg, rgba(155, 47, 50, 1) 0%, rgba(155, 47, 50, 1) 50%, rgba(237, 158, 42, 1) 50%, rgba(237, 158, 42, 1) 100%);
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	position: absolute;
	top: calc(50% - 15px);
	right: 18px;
}
.c-btn01 .arrow::before {
	content: "";
	width: 19px;
	height: 8px;
	background-image: url("../img/cmn/arrow_r_wh.svg");
	background-repeat: no-repeat;
	background-size: contain;
}
@media screen and (max-width: 768px) {
.c-btn01 .arrow {
	width: 25px;
	height: 25px;
	top: calc(50% - 12.5px);
	right: 10px;
}
.c-btn01 .arrow::before {
	width: 17px;
	height: 6px;
}
}


/* --------------------------------------------------------
	リスト
-------------------------------------------------------- */
.c-counter {
	counter-reset: number 0;
}
.c-counter > li {
	padding: 0 0 0 16px;
	position: relative;
}
.c-counter > li::before {
	counter-increment: number 1;
	content: counter(number) ".";
	position: absolute;
	top: 0;
	left: 0;
}

/* --------------------------------------------------------
	テーブル
-------------------------------------------------------- */
.c-tbl01 > div {
	display: -webkit-box;
	display: flex;
}
.c-tbl01 > div > dt,
.c-tbl01 > div > dd {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	padding: 16px 20px;
}
.c-tbl01 > div > dt {
	color: #616b40;
	width: 200px;
	border-bottom: solid 1px #616b40;
	margin: 0 10px 0 0;
}
.c-tbl01 > div > dd {
	width: calc(100% - 210px);
	border-bottom: solid 1px #ccc;
}
.c-tbl01.is-large > div > dt {
	width: 260px;
}
.c-tbl01.is-large > div > dd {
	width: calc(100% - 270px);
}

@media screen and (max-width: 768px) {
.c-tbl01 > div {
	font-size: min(3.4666vw, 1.3rem);
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	border-bottom: solid 1px #ccc;
	padding: 16px;
}
.c-tbl01 > div > dt,
.c-tbl01 > div > dd,
.c-tbl01.is-large > div > dt,
.c-tbl01.is-large > div > dd {
	width: 100%;
	padding: 0;
}
.c-tbl01 > div > dt,
.c-tbl01 > div > dd {
	border-bottom: none;
}
.c-tbl01 > div > dt {
	margin: 0 0 8px;
}
}

.c-tbl02 tr:nth-child(odd) {
	background: #f6f7f2;
}
.c-tbl02 th,
.c-tbl02 td {
	padding: 12px 16px;
}
.c-tbl02 th {
	font-size: 1.8rem;
	width: 140px;
	text-align: center;
}
@media screen and (max-width: 768px) {
.c-tbl02 th,
.c-tbl02 td {
	padding: min(2.6666vw, 10px) min(4.2666vw, 16px);
}
.c-tbl02 th {
	font-size: min(3.7333vw, 1.4rem);
	width: min(21.3333vw, 80px);
}
.c-tbl02 td {
	font-size: min(3.4666vw, 1.3rem);
	padding-left: 0;
}
}

.c-tbl03 th,
.c-tbl03 td {
	background: #fff;
	border: solid 1px #ccc;
	padding: 20px 30px;
}
.c-tbl03 th {
	width: 198px;
	background: #f6f7f2;
	text-align: center;
}
@media screen and (max-width: 768px) {
.c-tbl03 th,
.c-tbl03 td {
	font-size: 1.3rem;
	width: 100%;
	display: block;
	padding: 10px 12px;
}
.c-tbl03 th {
	text-align: left;
}
.c-tbl03 th,
.c-tbl03 tr:not(:last-child) td {
	border-bottom: none;
}
}

/* --------------------------------------------------------
	余白
-------------------------------------------------------- */
/* マージン
-------------------------------------------------------- */
/* 上方向 */
.u-mt6 { margin-top: 6px; }
.u-mt10 { margin-top: 10px; }
.u-mt12 { margin-top: 12px; }
.u-mt16 { margin-top: 16px; }
.u-mt20 { margin-top: 20px; }
.u-mt24 { margin-top: 24px; }
.u-mt100 { margin-top: 100px; }
@media screen and (max-width: 768px) {
	.u-mt12_sp { margin-top: 12px; }
	.u-mt64_sp { margin-top: 64px; }
}

/* 下方向 */
.u-mb6 { margin-bottom: 6px; }
.u-mb8 { margin-bottom: 8px; }
.u-mb12 { margin-bottom: 12px; }
.u-mb16 { margin-bottom: 16px; }
.u-mb20 { margin-bottom: 20px; }
.u-mb24 { margin-bottom: 24px; }
.u-mb32 { margin-bottom: 32px; }
.u-mb40 { margin-bottom: 40px; }
.u-mb48 { margin-bottom: 48px; }
.u-mb56 { margin-bottom: 56px; }
.u-mb88 { margin-bottom: 88px; }
@media screen and (max-width: 768px) {
	.u-mb6_sp { margin-bottom: 6px; }
	.u-mb8_sp { margin-bottom: 8px; }
	.u-mb14_sp { margin-bottom: 14px; }
	.u-mb16_sp { margin-bottom: 16px; }
	.u-mb40_sp { margin-bottom: 40px; }
	.u-mb48_sp { margin-bottom: 48px; }
}

/* パディング
-------------------------------------------------------- */
/* 上方向 */
.u-pt16 { padding-top: 16px; }
.u-pb16 { padding-bottom: 16px; }

/* 左方向 */
.u-pl20 {
	padding-left: 20px;
}
.u-pl28 {
	padding-left: 28px;
}
@media screen and (max-width: 768px) {
.u-pl0_sp {
	padding-left: 0;
}
.u-pl24_sp {
	padding-left: 24px;
}
}


/* --------------------------------------------------------
	PC SP切替
-------------------------------------------------------- */
.is-sp { display: none; }
@media screen and (max-width: 768px) {
	.is-pc { display: none; }
	.is-sp { display: block; }
}


/* --------------------------------------------------------
	プラグイン
-------------------------------------------------------- */
/* Cookie Notice & Compliance for GDPR/CCPA
-------------------------------------------------------- */
#cn-accept-cookie {
	color: #fff !important;
}
#cn-close-notice {
	opacity: 1;
}
#cn-close-notice:before,
#cn-close-notice:after {
	background: #000;
}
@media (max-width: 900px) {
#cn-accept-cookie {
	margin: 0 !important;
}
}

/* Simple CAPTCHA Alternative with Cloudflare Turnstile
-------------------------------------------------------- */
.cf7-cf-turnstile{
	width: fit-content;
	margin: 16px auto 0 !important;
}

/* --------------------------------------------------------
	ヘッダー
-------------------------------------------------------- */
header {
	width: 100%;
	height: 80px;
	display: -webkit-box;
	display: flex;
	padding: 0 1.75% 0 1.375%;
	position: fixed;
	top: 0;
	left: 0;
	transition: .5s;
	z-index: 100;
}
header::before {
	content: "";
	width: 100%;
	height: 100%;
	background: #fff;
	position: absolute;
	top: -80px;
	left: 0;
	transition: .5s;
	z-index: 0;
}
header .hdr_logo,
header .hdr_menu {
	position: relative;
	z-index: 1;
}
.hdr_logo {
	max-width: 160px;
	width: 100%;
}
.hdr_menu {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
	-webkit-box-pack: end;
	justify-content: flex-end;
	flex: 1 1 auto;
}
.hdr_nav {
	margin: 0 32px 0 0;
}
.hdr_nav ul {
	display: -webkit-box;
	display: flex;
}
.hdr_nav ul li:not(:last-child) {
	margin: 0 48px 0 0;
}
.hdr_links {
	display: -webkit-box;
	display: flex;
}
.hdr_links > li:not(:last-child) {
	margin: 0 16px 0 0;
}
.hdr_link {
	font-size: 0;
	max-width: 27px;
	width: 100%;
}
.hdr_link.hdr_link02 {
	max-width: 36px;
}
.hdr_link a {
	height: 100%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
}
.hamb {
	width: 40px;
	height: 40px;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	cursor: pointer;
}
.hamb_icon {
	width: 30px;
	height: 8px;
	position: relative;
}
.hamb_icon span {
	width: 100%;
	height: 1px;
	background: #8d8d8d;
	display: block;
	position: absolute;
	left: 0;
}
.hamb_icon span:nth-child(1) {
	top: 0;
}
.hamb_icon span:nth-child(2) {
	top: 100%;
}
.hamb_text {
	color: #8d8d8d;
	font-size: 1rem;
	line-height: 1;
	margin: 6px 0 0;
}
.hdr_menu .hamb {
	display: none;
	margin: 0 0 0 10px;
}
.drawer {
	max-width: 335px;
	width: 90%;
	height: 100svh;
	background: #333;
	overflow: auto;
	position: fixed;
	top: 0;
	right: -335px;
	transition: .5s;
	z-index: 10;
}
.drawer_head {
	height: 60px;
	border-bottom: solid 1px #fff;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: end;
	justify-content: flex-end;
	padding: 0 4px 0 0;
}
.drawer_head .hamb {
	padding: 10px 0 0;
}
.drawer_head .hamb_icon span {
	background: #fff;
}
.drawer_head .hamb_icon span:nth-child(1),
.drawer_head .hamb_icon span:nth-child(2) {
	top: 0;
}
.drawer_head .hamb_icon span:nth-child(1) {
	transform: rotate(45deg);
}
.drawer_head .hamb_icon span:nth-child(2) {
	transform: rotate(-45deg);
}
.drawer_head .hamb_text {
	color: #fff;
	margin: 10px 0 0;
}
.drawer_content {
	padding: 48px 6%;
}
.drawer_nav {
	color: #fff;
	font-size: 1.8rem;
}
.drawer_nav ul li:not(:last-child) {
	margin: 0 0 24px;
}
.drawer_links {
	margin: min(10.6666vw, 40px) 0 0;
}
.drawer_links > li:not(:last-child) {
	margin: 0 0 12px;
}
.drawer_links > li > a {
	height: 100%;
	border-radius: 20px;
	display: -webkit-box;
	display: flex;
	padding: 5px;
	padding-right: 10.1694%;
	position: relative;
}
.drawer_links > li > a::before {
	content: "";
	width: min(1.8666vw, 7px);
	height: min(3.2vw, 12px);
	background: url("../img/cmn/arrow_r_wh_bold.svg") no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - min(1.6vw, 6px));
	right: min(2.6666vw, 10px);
}
.drawer_links > li > a > div {
	width: 100%;
	background: #fff;
	border-radius: 15px;
	padding: 12px 0;
}
.drawer_link__logo {
	height: min(7.4666vw, 28px);
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
}
.drawer_link__text {
	font-size: min(2.6666vw, 1rem);
	line-height: 1.3;
	text-align: center;
	margin: min(1.6vw, 6px) 0 0;
}
.drawer_links > li.drawer_link01 > a {
	background: #9b2f32;
}
.drawer_links > li.drawer_link01 .drawer_link__logo img {
	max-width: min(41.3333vw, 155px);
}
.drawer_links > li.drawer_link02 > a {
	background: #7dbc6d;
}
.drawer_links > li.drawer_link02 .drawer_link__logo img {
	max-width: min(25.7333vw, 97px);
}
.drawer_links > li.drawer_link03 > a {
	background: #e1bc25;
}
.drawer_links > li.drawer_link03 .drawer_link__logo img {
	max-width: min(32.5333vw, 122px);
}
.drawer_bg {
	width: 100%;
	height: 100%;
	background: #333;
	opacity: .5;
	position: fixed;
	top: 0;
	left: 0;
	opacity: 0;
	visibility: hidden;
	transition: .5s;
	z-index: 2;
}
@media screen and (min-width: 1025px) {
header {
	mix-blend-mode: multiply;
}
.is-scroll header {
	mix-blend-mode: normal;
}
.is-scroll header::before {
	top: 0;
}
.hdr_logo {
	padding: 20px 0 0;
}
.hdr_menu {
	padding: 32px 0 0;
}
}
@media screen and (max-width: 1024px) {
header {
	height: 40px;
	-webkit-box-align: center;
	align-items: center;
}
header:not(.is-top) {
	mix-blend-mode: multiply;
}
header:not(.is-top)::before {
	top: -40px;
}
.is-scroll header:not(.is-top) {
	mix-blend-mode: normal;
}
.is-scroll header:not(.is-top)::before {
	top: 0;
}
header.is-top {
	position: -webkit-sticky;
	position: sticky;
}
header.is-top::before {
	top: 0;
}
.hdr_logo {
	max-width: 100px;
}
.hdr_menu {
	-webkit-box-align: center;
	align-items: center;
}
.hdr_nav {
	display: none;
}
.hdr_links > li:not(:last-child) {
	margin: 0 10px 0 0;
}
.hdr_link {
	max-width: 15px;
}
.hdr_link.hdr_link02 {
	max-width: 20px;
}
.hdr_menu .hamb {
	display: -webkit-box;
	display: flex;
}
.is-hamb_open {
	overflow: hidden;
}
.is-hamb_open header {
	mix-blend-mode: normal;
}
.is-hamb_open .drawer {
	right: 0;
}
.is-hamb_open .drawer_bg {
	visibility: inherit;
	opacity: .5;
}
}
@media screen and (max-width: 768px) {
.drawer_links > li > a {
	border-radius: 10px;
}
.drawer_links > li > a > div {
	border-radius: 5px;
}
}


/* --------------------------------------------------------
	フッター
-------------------------------------------------------- */
footer {
}
.ftr_main {
	background: #f6f7f2;
	padding: 62px 0 56px;
}
footer .inner {
	display: -webkit-box;
	display: flex;
}
.ftr_logo {
	max-width: min(22vw, 286px);
	width: 100%;
	mix-blend-mode: multiply;
}
.ftr_info {
	flex: 1 1 auto;
	margin: 0 3.3333% 0 8.3333%;
}
.ftr_links {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin: 15px 0 0;
}
.ftr_links > li:not(:last-child) {
	margin: 0 min(2.4615vw, 32px) 0 0;
}
.ftr_links > li a {
	display: inline-block;
	padding: 0 0 0 16px;
	position: relative;
}
.ftr_links > li a::before {
	content: "\03e";
	position: absolute;
	top: 0;
	left: 0;
}
.ftr_btn {
	max-width: min(30vw, 400px);
	width: 100%;
}
#copyright {
	text-align: center;
	padding: 10px;
}
@media screen and (max-width: 768px) {
footer {
}
.ftr_main {
	padding: 72px 0 24px;
}
footer .inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.ftr_logo {
	max-width: min(52vw, 195px);
}
.ftr_info {
	margin: 20px 0 40px;
}
.ftr_links {
	display: block;
	margin: 40px 0 0;
}
.ftr_links > li:not(:last-child) {
	margin: 0 0 15px;
}
.ftr_btn {
	max-width: inherit;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
#copyright {
	font-size: 1.1rem;
}
}

/* --------------------------------------------------------
	トップページ
-------------------------------------------------------- */
/* メインビジュアル
-------------------------------------------------------- */
.t-mv_btm { display: none; }
.t-mv_top,
.t-mv_content {
	position: relative;
}
.t-mv_top {
	padding: 0 0 0 6.25%;
}
.t-mv_content {
	padding: 200px 0;
	z-index: 1;
}
.t-mv_title__main > span,
.t-mv_title__sub > span {
	display: inline-block;
	background: #fff;
}
.t-mv_title__main {
	font-size: 2rem;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: start;
	align-items: flex-start;
}
.t-mv_title__main > span {
	padding: 8px 14px 8px 30px;
}
.t-mv_title__main > span.animation.animation02 {
	animation-delay: .4s;
}
.t-mv_title__main > span:not(:last-child) {
	margin: 0 0 10px;
}
.t-mv_title__sub {
	font-size: 4rem;
	margin: 10px 0 0;
}
.t-mv_title__sub.animation.animation02 {
	animation-delay: .8s;
}
.t-mv_title__sub > span {
	padding: 2px 30px;
}

.swiper.t-mv_list {
	width: 87.5%;
	height: 100%;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
}
.t-mv_list__img {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
}
.t-mv_list__img img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
}
.t-mv_links {
	max-width: 670px;
	width: 100%;
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	margin: 56px 0 0;
}
.t-mv_links > li {
	width: 32.8%;
}
.t-mv_links > li.animation.animation01 {
	animation-delay: 1.2s;
}
.t-mv_links > li > a {
	height: 100%;
	border-radius: 20px;
	display: -webkit-box;
	display: flex;
	padding: 5px;
	padding-right: 20.4545%;
	position: relative;
}
.t-mv_links > li > a::before {
	content: "";
	width: 9px;
	height: 13px;
	background: url("../img/cmn/arrow_r_wh_bold.svg") no-repeat;
	background-size: contain;
	position: absolute;
	top: calc(50% - 6.5px);
	right: 13px;
}
.t-mv_links > li > a > div {
	width: 100%;
	background: #fff;
	border-radius: 15px;
	padding: 12px 0;
}
.t-mv_link__logo {
	height: 28px;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
}
.t-mv_link__text {
	font-size: 1.3rem;
	line-height: 1.3;
	margin: 3px 0 0;
	padding: 0 0 0 16px;
}
.t-mv_links > li.t-mv_link01 > a {
	background: #9b2f32;
}
.t-mv_links > li.t-mv_link01 .t-mv_link__logo img {
	max-width: 128px;
}
.t-mv_links > li.t-mv_link02 > a {
	background: #7dbc6d;
}
.t-mv_links > li.t-mv_link02 .t-mv_link__logo img {
	max-width: 97px;
}
.t-mv_links > li.t-mv_link03 > a {
	background: #e1bc25;
}
.t-mv_links > li.t-mv_link03 .t-mv_link__logo img {
	max-width: 125px;
}
@media screen and (min-width: 1025px) {
.t-mv_title__main > span > span:nth-child(1) {
	margin: 0 12px 0 0;
}
}
@media screen and (max-width: 1024px) {
.t-mv_top,
.t-mv_content {
	padding: 0;
}
.t-mv_top .t-mv_title__sub,
.t-mv_top .t-mv_links { display: none; }
.swiper.t-mv_list {
	width: 100%;
	position: relative;
}
.t-mv_list__img {
	padding-bottom: 82.6666%;
}
.t-mv_content {
	position: absolute;
	bottom: 60px;
	left: 0;
	z-index: 1;
}
.t-mv_title__main {
	font-size: min(4.8vw, 1.8rem);
}
.t-mv_title__main > span {
	background: rgba(255, 255, 255, .9);
}
.t-mv_title__main > span:nth-child(1) {
	background: none;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: start;
	align-items: flex-start;
	padding: 0;
}
.t-mv_title__main > span:nth-child(1) span {
	background: rgba(255, 255, 255, .9);
}
.t-mv_title__main > span:nth-child(1) span,
.t-mv_title__main > span:nth-child(2) {
	padding: min(2.1333vw, 8px) min(1.3333vw, 5px) min(2.1333vw, 8px) min(2.6666vw, 10px);
}
.t-mv_title__main > span:not(:last-child),
.t-mv_title__main > span:nth-child(1) span:not(:last-child) {
	margin: 0 0 min(.5333vw, 2px);
}
.t-mv_title__sub {
	font-size: min(6.4vw, 2.4rem);
}
.t-mv_btm {
	display: block;
}
.t-mv_btm .t-mv_title.animation.animation01 {
	animation-delay: .8s;
}
.t-mv_title__sub {
	text-align: center;
	margin: 32px 0 24px;
}
.t-mv_title__sub > span {
	padding: 0;
}
.t-mv_links {
	margin: auto;
}
}
@media screen and (min-width: 769px) {
.t-mv_links > li {
	margin-right: .8%;
}
.t-mv_links > li:nth-child(3n) {
	margin-right: 0;
}
}
@media screen and (max-width: 768px) {
.t-mv_content {
	bottom: min(7.4666vw, 28px);
}
.t-mv_links > li {
	width: 100%;
}
.t-mv_links > li:nth-child(1).animation.animation01 {
	animation-delay: 1.2s;
}
.t-mv_links > li:nth-child(2).animation.animation01 {
	animation-delay: 1.4s;
}
.t-mv_links > li:nth-child(3).animation.animation01 {
	animation-delay: 1.6s;
}
.t-mv_links > li:not(:last-child) {
	margin: 0 0 min(2vw, 8px);
}
.t-mv_links > li > a {
	border-radius: 10px;
	padding: 5px;
	padding-right: 13.8%;
}
.t-mv_links > li > a::before {
	width: min(2vw, 7.5px);
	height: min(3.2vw, 12px);
	top: calc(50% - min(1.6vw, 6px));
	right: min(2.4vw, 18px);
}
.t-mv_links > li > a > div {
	border-radius: 5px;
	padding: min(3.2vw, 12px);
}
.t-mv_link__logo {
	height: min(7.4666vw, 28px);
}
.t-mv_link__text {
	font-size: min(3.2vw, 1.2rem);
	text-align: center;
	margin: min(1.6vw, 6px) 0 0;
	padding: 0;
}
.t-mv_links > li.t-mv_link01 .t-mv_link__logo img {
	max-width: min(41.3333vw, 155px);
}
.t-mv_links > li.t-mv_link02 .t-mv_link__logo img {
	max-width: min(25.8666vw, 97px);
}
.t-mv_links > li.t-mv_link03 .t-mv_link__logo img {
	max-width: min(33.3333vw, 125px);
}
}

/* お知らせ
-------------------------------------------------------- */
#t-news {
	margin: 116px 0;
	padding: 112px 0 0;
	position: relative;
}
#t-news .inner {
	display: -webkit-box;
	display: flex;
	position: relative;
	z-index: 1;
}
#t-news .c-en_title01 {
	font-size: min(12.5vw, 20rem);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}
#t-news .c-en_title01 > span {
	display: inline-block;
}
.t-news_img {
	max-width: min(84.6923vw, 1101px);
	opacity: .5;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
}
@media screen and (min-width: 769px) {
.t-news_head {
	width: 200px;
}
.t-news_content {
	flex: 1 1 auto;
	margin-right: calc(50% - 50vw);
}
#t-news .p-news_list {
	margin: -20px 0 0;
}
}
@media screen and (max-width: 768px) {
#t-news {
	margin: 0;
	padding: min(37.3333vw, 140px) 0 min(14.9333vw, 56px);
}
#t-news .c-en_title01 {
	position: static;
}
.t-news_img {
	max-width: inherit;
	width: 100%;
}
#t-news .c-en_title01 {
	font-size: min(26.6666vw, 10rem);
}
#t-news .inner {
	display: block;
}
}


/* 事業内容
-------------------------------------------------------- */
#t-about {
	position: relative;
}
#t-about .inner {
	display: -webkit-box;
	display: flex;
}
.t-about_img01 {
	width: 53.3125%;
	margin-bottom: max(-43.375vw, -694px);
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
	position: relative;
	z-index: 4;
}
.t-about_img01 img {
	max-width: min(53.125vw, 850px);
}
.t-about_img02 { display: none; }
.t-about_content {
	max-width: 1400px;
	width: 87.5%;
	background: #f6f7f2;
	margin: auto;
	padding: 32px 0 80px;
	position: relative;
	z-index: 3;
}
.t-about_content .inner {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
}
.t-about_content .inner > div {
	width: 50%;
}
.t-about_content .c-en_title01 {
	font-size: min(12.5vw, 20rem);
	position: relative;
	right: max(-5.625vw, -90px);
}
.t-about_content .c-en_title01 span {
	display: inline-block;
}
.t-about_text {
	color: #666;
	line-height: 2.344375;
	margin: 24px 0 0;
}
.t-about_text p:not(:last-child) {
	margin: 0 0 24px;
}
.t-about_content .btn_wrap {
	margin: 40px 0 0;
}
.t-about_deco {
	max-width: min(56vw, 728px);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 3;
}
@media screen and (max-width: 1024px) {
.t-about_img01 {
	width: 100%;
	display: block;
	margin-bottom: -150px;
}
.t-about_img02 {
	max-width: min(39.453125vw, 404px);
	display: block;
	position: absolute;
	right: max(-5.664vw, -58px);
	bottom: max(-11.5234vw, -118px);
	z-index: 0;
}
.t-about_img01 img,
.t-about_content {
	max-width: inherit;
	width: 100%;
}
.t-about_content {
	padding: 145px 0 min(7.8125vw, 80px);
}
.t-about_content .inner,
.t-about_content .inner > div {
	width: 100%;
}
.t-about_content .inner {
	position: relative;
	z-index: 1;
}
.t-about_content .c-en_title01 {
	font-size: min(19.53125vw, 20rem);
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: end;
	justify-content: flex-end;
	position: static;
}
.t-about_content .sp_inner {
	width: 89.3333%;
	margin: auto;
}
.t-about_content .btn_wrap {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
.t-about_deco { display: none; }
}
@media screen and (max-width: 768px) {
.t-about_img02 {
	max-width: min(53.8666vw, 202px);
	right: max(-7.7333vw, -29px);
	bottom: max(-36vw, -60px);
}
.t-about_content {
	padding: 145px 0 min(20vw, 75px);
}
.t-about_content .c-en_title01 {
	font-size: min(26.6666vw, 10rem);
}
.t-about_text {
	font-size: 1.3rem;
	line-height: 1.75;
	margin: 16px 0 0;
}
.t-about_text p:not(:last-child) {
	margin: 0 0 16px;
}
.t-about_content .btn_wrap {
	margin: min(14.9333vw, 56px) 0 0;
}
.t-about_content .btn_wrap .c-btn01 {
	background: rgba(255, 255, 255, .9);
}
}


/* 事業内容
-------------------------------------------------------- */
#t-service {
	position: relative;
	z-index: 1;
}
.t-service_top {
	padding: 70px 0 160px;
	position: relative;
	z-index: 0;
}
.t-service_top .inner {
	position: relative;
	z-index: 2;
}
.t-service_top__text {
	color: #666;
	max-width: min(50.3846vw, 655px);
	line-height: 2.3437;
	margin: 20px 0 0;
}
.t-service_top__img {
	max-width: min(48.6923vw, 633px);
	position: absolute;
	right: 5.3125%;
	bottom: max(-8.7692vw, -114px);
	z-index: 1;
}
.t-service_top__deco {
	max-width: min(56vw, 728px);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
#t-service .btn_wrap {
	margin: 40px 0 0;
}
.t-service_btm {
	position: relative;
	z-index: 1;
}
.t-service_list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.t-service_list > li {
	width: 32.8125%;
}
.t-service_list > li > a {
	color: #fff;
	min-height: min(33.4615vw, 435px);
	background: #808373;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	position: relative;
}
.t-service_list > li > a::before {
	content: "";
	width: 100%;
	height: 100%;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	mix-blend-mode: multiply;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.t-service_list > li > a > div {
	position: relative;
	z-index: 1;
}
.t-service_list__logo {
	font-size: 0;
	margin: 0 0 min(1.23vw, 16px);
}
.t-service_list__title {
	font-size: min(2.7692vw, 3.6rem);
}
.t-service_list__text {
	font-size: min(1.3846vw, 1.8rem);
	margin: min(.6153vw, 8px) 0 0;
}
.t-service_list > li.t-service01 > a::before {
	background-image: url("../img/top/service01.jpg");
}
.t-service_list > li.t-service01 .t-service_list__logo {
	max-width: min(4.846vw, 63px);
}
.t-service_list > li.t-service02 > a::before {
	background-image: url("../img/top/service02.jpg");
}
.t-service_list > li.t-service02 .t-service_list__logo {
	max-width: min(6.5384vw, 85px);
}
.t-service_list > li.t-service03 > a::before {
	background-image: url("../img/top/service03.jpg");
}
.t-service_list > li.t-service03 .t-service_list__logo {
	max-width: min(5.7692vw, 75px);
}
.t-service_btm .btn_wrap { display: none; }
@media screen and (min-width: 1025px) {
.t-service_list > li {
	margin-right: .78125%;
}
.t-service_list > li:nth-child(3n) {
	margin-right: 0;
}
.t-service_list .t-service01 {
	margin-top: 80px;
}
.t-service_list .t-service02 {
	margin-top: 40px;
}
}
@media screen and (max-width: 1024px) {
.t-service_top {
	padding: min(19.2vw, 72px) 0;
}
.t-service_top__text {
	max-width: inherit;
}
.t-service_top__img,
.t-service_top .btn_wrap {
	display: none;
}
.t-service_top__deco {
	max-width: inherit;
	width: 100%;
	height: 100%;
}
.t-service_top__deco img {
	width: auto;
	height: 100%;
}
.t-service_list > li {
	width: 100%;
}
.t-service_list > li:not(:last-child) {
	margin-bottom: 10px;
}
.t-service_list > li > a {
	min-height: min(43.9453vw, 450px);
	-webkit-box-pack: start;
	justify-content: flex-start;
	padding: 0 0 0 12.5%;
}
.t-service_list__logo {
	margin: 0 0 8px;
}
.t-service_list__title {
	font-size: 3.6rem;
}
.t-service_list__text {
	font-size: 1.8rem;
	margin: 8px 0 0;
}
.t-service_list > li.t-service01 > a::before {
	background-image: url("../img/top/service01_sp.jpg");
}
.t-service_list > li.t-service01 .t-service_list__logo {
	max-width: 63px;
}
.t-service_list > li.t-service02 > a::before {
	background-image: url("../img/top/service02_sp.jpg");
}
.t-service_list > li.t-service02 .t-service_list__logo {
	max-width: 85px;
}
.t-service_list > li.t-service03 > a::before {
	background-image: url("../img/top/service03_sp.jpg");
}
.t-service_list > li.t-service03 .t-service_list__logo {
	max-width: 75px;
}
.t-service_btm .btn_wrap {
	display: block;
}
.t-service_btm .btn_wrap .inner {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
}
@media screen and (max-width: 768px) {
.t-service_top__text {
	font-size: 1.3rem;
	line-height: 1.75;
}
.t-service_list > li:not(:last-child) {
	margin-bottom: 5px;
}
.t-service_list > li > a {
	min-height: min(60vw, 225px);
}
.t-service_list__title {
	font-size: min(5.6vw, 2.1rem);
}
.t-service_list__text {
	font-size: min(3.7333vw, 1.4rem);
}
.t-service_list > li.t-service01 .t-service_list__logo {
	max-width: min(8.4vw, 32px);
}
.t-service_list > li.t-service02 .t-service_list__logo {
	max-width: min(11.333vw, 43px);
}
.t-service_list > li.t-service03 .t-service_list__logo {
	max-width: min(10vw, 38px);
}
}


/* SDGs
-------------------------------------------------------- */
#t-sdgs {
	padding: 100px 0 50px;
	position: relative;
	z-index: 0;
}
.t-sdgs_content {
	padding: 64px 0 40px;
	position: relative;
	z-index: 3;
}
.t-sdgs_content::before {
	content: "";
	width: 32.5%;
	height: 100%;
	background: #f6f7f2;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.t-sdgs_content .inner {
	position: relative;
	z-index: 1;
}
.t-sdgs_head {
	margin: 0 0 64px;
}
.t-sdgs_logo {
	max-width: 402px;
	width: 100%;
	margin: 0 0 24px;
}
.t-sdgs_text {
	font-size: 1.9rem;
	line-height: 1.9;
	margin: 4px 0 0;
}
.t-sdgs_list,
.t-sdgs_list__right ul {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.t-sdgs_list__left,
.t-sdgs_list__right ul li {
	display: -webkit-box;
	display: flex;
}
.t-sdgs_list__left {
	width: 44%;
	margin: 0 5% 0 0;
}
.t-sdgs_list__right {
	width: 51%;
}
.t-sdgs_list__right ul {
	height: 100%;
	align-content: space-between;
}
.t-sdgs_list__right ul li {
	width: 48%;
	margin-right: 4%;
}
.t-sdgs_list__right ul li:nth-child(2n) {
	margin-right: 0;
}
.t-sdgs_list__img {
	flex: 1 1 auto;
}
.t-sdgs_list__img > div {
	overflow: hidden;
	padding-top: 100%;
	position: relative;
}
.t-sdgs_list__img > div img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	object-fit: cover;
}
.t-sdgs_list__title {
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
	line-height: 1.5;
	letter-spacing: 0;
}
.t-sdgs_list__left .t-sdgs_list__title {
	margin: 0 0 0 8px;
}
.t-sdgs_list__right .t-sdgs_list__title {
	min-width: 52px;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
}
#t-sdgs .btn_wrap {
	margin: 48px 0 0;
}
.t-sdgs_img,
.t-sdgs_deco {
	width: 100%;
	position: absolute;
	top: max(-5.25vw, -84px);
	right: 0;
}
.t-sdgs_img {
	max-width: min(31.3125vw, 501px);
	top: max(-12.625vw, -202px);
	z-index: 1;
}
.t-sdgs_deco {
	max-width: min(55.3125vw, 885px);
	z-index: 0;
}
@media screen and (min-width: 1025px) {
.t-sdgs_list__title {
	font-size: min(1.4545rem, 1.6rem);
}
}
@media screen and (max-width: 1024px) {
#t-sdgs {
	margin-bottom: max(-26.6666vw, -100px);
	padding: 50px 0 0;
}
.t-sdgs_content {
	padding: min(19.2vw, 72px) 0 min(44.8vw, 168px);
}
.t-sdgs_content::before {
	width: 69.3333%;
}
.t-sdgs_head {
	margin: 0 0 48px;
}
.t-sdgs_list__left,
.t-sdgs_list__right {
	width: 100%;
}
.t-sdgs_list__left {
	width: 82%;
	margin: 0 0 min(10.6666vw, 40px);
}
.t-sdgs_list__left .t-sdgs_list__img > div {
	padding-top: 72.7272%;
}
.t-sdgs_list__right ul li {
	margin-top: 24px;
}
.t-sdgs_list__right ul li:nth-child(-n + 2) {
	margin-top: 0;
}
.t-sdgs_img,
.t-sdgs_deco {
	top: max(-10.6445vw, -109px);
}
.t-sdgs_img {
	max-width: min(48.9257vw, 501px);
	top: max(-19.7265vw, -202px);
}
.t-sdgs_deco {
	max-width: min(86.4257vw, 885px);
}
}
@media screen and (max-width: 768px) {
.t-sdgs_logo {
	max-width: min(53.6vw, 201px);
	margin: 0 0 min(10.6666vw, 40px);
}
.t-sdgs_text {
	font-size: 1.3rem;
	line-height: 1.8;
	margin: 16px 0 0;
}
.t-sdgs_list__title {
	font-size: min(3.2vw, 1.2rem);
}
.t-sdgs_img,
.t-sdgs_deco {
	display: none;
}
}
@media screen and (max-width: 480px) {
.t-sdgs_list__right ul li {
	margin-top: min(4.2666vw, 16px);
}
}


/* ギフト商品ラインナップ
-------------------------------------------------------- */
#t-gift {
	padding: min(16.4285vw, 230px) 0 min(10vw, 140px);
	position: relative;
}
.t-gift_content {
	max-width: 522px;
	width: 100%;
	background: rgba(255, 255, 255, .9);
	border-radius: 10px;
	padding: 80px 2% 70px;
	position: relative;
	z-index: 1;
}
.t-gift_content > div {
	max-width: 400px;
	width: 100%;
	margin: auto;
}
.t-gift_content .btn_wrap {
	margin: min(8.5333vw, 32px) 0 0;
}
.t-gift_img,
.t-gift_bg {
	position: absolute;
}
.t-gift_img {
	max-width: min(34.9285vw, 489px);
	width: 100%;
	top: max(-12.2857vw, -172px);
	right: 0;
	z-index: 1;
}
.t-gift_bg {
	width: min(58.26666vw, 219px);
	top: 0;
	right: 0;
	z-index: 0;
}
@keyframes infinity-scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-100%);
	}
}
.t-gift_scroll,
.t-gift_scroll ul {
	display: -webkit-box;
	display: flex;
}
.t-gift_scroll ul {
	animation: infinity-scroll 150s infinite linear 0.5s both;
}
@media screen and (min-width: 769px) {
.t-gift_scroll {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.t-gift_scroll ul li img {
	max-width: inherit;
	width: auto;
	height: 100%;
}
}
@media screen and (max-width: 768px) {
	#t-gift { padding: 0; }
	.t-gift_content,
	.t-gift_content > div,
	.t-gift_content .c-btn01 {
		max-width: inherit;
	}
	.t-gift_content {
		background: none;
		padding: min(68.5333vw, 257px) 5.33335% min(28.5333vw, 107px);
	}
	.t-gift_img {
		max-width: min(69.2vw, 260px);
		top: max(-3.7333vw, -14px);
		right: inherit;
		left: 0;
	}
	.t-gift_scroll ul li {
		width: min(533.3333vw, 2000px);
	}
}


/* --------------------------------------------------------
	お知らせ
-------------------------------------------------------- */
/* 一覧
-------------------------------------------------------- */
.p-news_list > li {
	border-bottom: solid 1px #bfbfbf;
}
.p-news_list > li > a {
	display: -webkit-box;
	display: flex;
	padding: 20px 10px;
}
.p-news_list .p-news_date {
	margin: 0 70px 0 0;
}
.p-news_list .p-news_title {
	color: #828282;
}
.p-news_list .p-news_title::before {
	content: "\2192";
}
#p-news .p-news_list {
	margin: 24px 0 0;
}
@media screen and (max-width: 768px) {
.p-news_list > li > a {
	display: block;
	padding: 16px 0;
}
.p-news_list .p-news_title {
	margin: 4px 0 0;
}
#p-news .p-news_list {
	margin: 12px 0 0;
}
}
.c-pager {
	margin: 32px 0 0;
}
.wp-pagenavi {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
.wp-pagenavi span,
.wp-pagenavi a {
	color: #616b40;
	font-size: 2rem;
	width: 35px;
	height: 35px;
	border-color: #fff;
	border-radius: 50%;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
}
.wp-pagenavi span,
.wp-pagenavi span.current,
.wp-pagenavi a:hover {
	background: #f6f7f2;
	border-color: #f6f7f2;
	opacity: 1;
}
.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
	border: none;
	display: block;
	overflow: hidden;
	text-align: center;
	text-indent: -999999999999px;
	position: relative;
}
.wp-pagenavi .previouspostslink::after,
.wp-pagenavi .nextpostslink::after {
	content: "";
	width: 19px;
	height: 8px;
	background: url("../img/cmn/arrow_r_mi.svg") no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
	top: calc(50% - 4px);
	left: calc(50% - 9.5px);
}
.wp-pagenavi .previouspostslink::after {
	transform: scale(-1, 1);
}
.wp-pagenavi .previouspostslink:hover,
.wp-pagenavi .nextpostslink:hover {
	background: none;
}
@media screen and (max-width: 768px) {
.c-pager {
	margin: 20px 0 0;
}
.wp-pagenavi span,
.wp-pagenavi a {
	font-size: 1.5rem;
}
}


/* 詳細
-------------------------------------------------------- */
.article_news {
	margin: 32px 0 0;
}
.article_news .article_head {
	border-bottom: solid 1px #bfbfbf;
	margin: 0 0 40px;
	padding: 0 0 20px;
}
.article_news .p-news_date {
	margin: 0 0 18px;
}
.article_news .p-news_title {
	font-size: 3rem;
}
.article_news .article_content {
	font-size: 1.8rem;
	border-bottom: solid 1px #bfbfbf;
	padding: 0 0 64px;
}
@media screen and (max-width: 768px) {
	.article_news {
		margin: 10px 0 0;
	}
	.article_news .article_head {
		margin: 0 0 20px;
		padding: 0 5.8666% 10px;
	}
	.article_news .p-news_date {
		font-size: 1.3rem;
		margin: 0 0 10px;
	}
	.article_news .p-news_title {
		font-size: 2rem;
	}
	.article_news .article_content {
		font-size: 1.4rem;
		padding: 0 5.8666% 24px;
	}
}

.c-single_pager {
	color: #616b40;
	font-size: 1.8rem;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: justify;
	justify-content: space-between;
	margin: 18px 0 0;
}
.c-single_pager a {
	display: inline-block;
	position: relative;
}
.c-single_pager a.prev {
	padding: 0 0 0 32px;
}
.c-single_pager a.next {
	padding: 0 32px 0 0;
}
.c-single_pager a.prev::before,
.c-single_pager a.next::after {
	content: "";
	width: 19px;
	height: 8px;
	background: url("../img/cmn/arrow_r_mi.svg") no-repeat;
	background-size: contain;
	display: block;
	position: absolute;
	top: calc(50% - 4px);
}
.c-single_pager a.prev::before {
	left: 0;
	transform: scale(-1, 1);
}
.c-single_pager a.next::after {
	right: 0;
}
.c-single_pager a.is-not_link {
	opacity: 0;
	visibility: hidden;
}
@media screen and (max-width: 768px) {
.c-single_pager {
	font-size: 1.4rem;
	margin: 10px 0 0;
	padding: 0 5.8666%;
}
.c-single_pager a.prev {
	padding: 0 0 0 20px;
}
.c-single_pager a.next {
	padding: 0 20px 0 0;
}
.c-single_pager a.prev::before,
.c-single_pager a.next::after {
	width: 15px;
	height: 5px;
	top: calc(50% - 2.5px);
}
}


/* --------------------------------------------------------
	ページ系
-------------------------------------------------------- */
.p-layout {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-layout__head {
	width: 300px;
	background: #f6f7f2;
	padding: 150px 0 150px 56px;
}
.page_title .ja,
.p-layout__head nav {
	position: relative;
	z-index: 1;
}
.page_title .ja {
	font-size: 3.6rem;
}
.page_title .en {
	color: #fff;
	font-size: 15rem;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	line-height: .6;
	opacity: .5;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}
.page_nav {
	overflow: hidden;
	padding: 72px 0 0;
}
.page_nav::before {
	content: "";
	width: 1px;
	height: calc(100% - 13px);
	background: #616b40;
	position: absolute;
	top: 0;
	left: 0;
}
.page_nav ul li a {
	color: #c1c1c1;
}
.page_nav ul li a:hover,
.page_nav ul li a.is-current {
	color: #616b40;
	opacity: 1;
}
.page_nav > ul {
	counter-reset: number 0;
	position: relative;
}
.page_nav > ul > li > a {
	display: inline-block;
	padding: 0 0 0 80px;
	position: relative;
}
.page_nav > ul > li > a::before {
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero) ".";
	position: absolute;
	top: 0;
	left: 40px;
	margin: 0 16px 0 0;
}
.page_nav > ul > li > a::after {
	content: "";
	width: 20px;
	height: 1px;
	background: #616b40;
	position: absolute;
	top: 12px;
	left: 0;
}
.page_nav > ul > li:not(:last-child) {
	padding-bottom: 20px;
}
.page_nav__child {
	margin: 16px 0 0;
	padding: 0 0 0 78px;
}
.page_nav__child > li:not(:last-child) {
	margin: 0 0 16px;
}
.page_nav__child > li > a {
	display: inline-block;
	padding: 0 0 0 16px;
	position: relative;
}
.page_nav__child > li > a::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}
.p-layout__main {
	width: calc(100% - 300px);
	overflow: hidden;
	padding: 96px 0 206px;
	position: relative;
}
.p-layout__main__content {
	position: relative;
	z-index: 1;
}
.p-layout__main__deco {
	max-width: min(43.5625vw, 697px);
	width: 100%;
	position: fixed;
	top: 96px;
	right: 0;
	z-index: -1;
}
.section_img {
	height: min(22.9285vw, 321px);
	overflow: hidden;
	margin: 0 0 4px;
	position: relative;
}
.section_img img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	object-fit: cover;
}

.page_link ul > li > a {
	color: #b3b3b3;
	font-size: 1.8rem;
	display: inline-block;
	padding: 0 0 0 20px;
	position: relative;
}
.page_link ul > li > a:hover {
	color: #616b40;
	opacity: 1;
}
.page_link ul > li > a::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}
.page_link.is-grid ul {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.page_link.is-grid ul > li:not(:last-child) {
	margin: 0 24px 0 0;
}
.page_link.is-line ul li:not(:last-child) {
	margin: 0 0 4px;
}
@media screen and (min-width: 1025px) {
.p-layout__head {
	height: 100vh;
	position: -webkit-sticky;
	position: sticky;
	top: 0;
}
}
@media screen and (max-width: 1024px) {
	.p-layout__head,
	.p-layout__main {
		width: 100%;
	}
	.p-layout__head {
		padding: 44px 0 16px;
	}
	.p-layout__head .sp_inner {
		width: 89.3333%;
		margin: auto;
	}
	.page_title .en,
	.page_nav { display: none; }
	.p-layout__main {
		padding: 3px 0 56px;
	}
	.p-layout__main__deco {
		max-width: min(68vw, 697px);
		top: min(35.6vw, 132px);
	}
	.section_img {
		height: min(31.3476vw, 321px);
	}
}
@media screen and (max-width: 768px) {
	.page_title .ja {
		font-size: min(4.8vw, 1.8rem);
	}
	.section_img {
		height: auto;
		margin: 0 0 24px;
		padding-top: 66.6666%;
	}
	.page_link ul > li > a {
		font-size: min(3.7333vw, 1.4rem);
		padding: 0 0 0 min(4.2666vw, 16px);
	}
	.page_link.is-grid ul > li:not(:last-child) {
		margin: 0 min(5.3333vw, 20px) 0 0;
	}
}

.breadcrumb ul,
.breadcrumb ul li {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.breadcrumb ul li:not(:last-child)::after {
	content: "\03e";
	margin: 0 8px;
}
.breadcrumb ul li a {
	color: #616b40;
	text-decoration: underline;
}
.breadcrumb ul li a:hover {
	opacity: 1;
	text-decoration: none;
}
.p-layout__head .breadcrumb { display: none; }
.p-layout__main .breadcrumb {
	margin: 0 0 80px;
}
@media screen and (max-width: 1024px) {
.p-layout__head .breadcrumb { display: block; }
.p-layout__main .breadcrumb { display: none; }
}
@media screen and (max-width: 768px) {
	.breadcrumb {
		font-size: min(2.6666vw, 1rem);
	}
	.breadcrumb ul li:not(:last-child)::after {
		margin: 0 4px;
	}
}


/* --------------------------------------------------------
	会社案内
-------------------------------------------------------- */
#p-company .p-layout__main__deco {
	max-width: min(100vw, 1600px);
	top: 50%;
	transform: translateY(-50%);
}

/* 会社概要
-------------------------------------------------------- */
#philosophy {
	padding: 0 0 min(8.4375vw, 135px);
}
#philosophy .section_content {
	overflow: hidden;
	margin-top: max(-2.75vw, -44px);
	padding: min(10.0625vw, 161px) 0 min(3.125vw, 50px);
	position: relative;
}
#philosophy .section_content .inner {
	max-width: min(62.5vw, 1000px);
	width: 100%;
	position: relative;
	z-index: 1;
}
.philosophy_img {
	max-width: min(50vw, 800px);
	width: 100%;
	position: absolute;
	top: 0;
	right: 0;
}
.p-philosophy_list > li {
	display: -webkit-box;
	display: flex;
	position: relative;
}
.p-philosophy_list > li::after {
	content: "";
	width: 100%;
	height: 2px;
	background: #b0b59f;
	position: absolute;
	top: min(3.875vw, 62px);
	left: 0;
}
.p-philosophy_list > li:not(:last-child) {
	margin: 0 0 min(4.5vw, 72px);
}
.p-philosophy_list__head {
	color: #b0b59f;
	width: min(14.125vw, 226px);
}
.p-philosophy_list__head__title .en,
.p-philosophy_list__content__title {
	margin: 0 0 min(1vw, 16px);
}
.p-philosophy_list__head__title .en {
	font-size: min(3.75vw, 6rem);
	line-height: 1;
	position: relative;
}
.p-philosophy_list__head__title .ja {
	font-size: min(1.5vw, 2.4rem);
	padding: 0 0 0 min(1.5vw, 24px);
}
.p-philosophy_list__content {
	width: calc(100% - min(14.125vw, 226px));
}
.p-philosophy_list__content__title {
	font-size: min(1.5vw, 2.4rem);
	min-height: min(3.875vw, 62px);
	padding: min(1vw, 16px) 0 0;
}
.p-philosophy_list__content__title > span {
	display: inline-block;
	position: relative;
}
.p-philosophy_list__content__title > span span {
	font-size: min(.875vw, 1.4rem);
	position: absolute;
	top: min(1vw, -16px);
	left: 0;
}
.p-philosophy_list__content__text {
	font-size: min(1.125vw, 1.8rem);
	line-height: 2.3;
}
@media screen and (max-width: 1024px) {
#philosophy {
	padding: 0 0 min(13.1835vw, 135px);
}
#philosophy .section_content {
	margin-top: max(-4.2968vw, -44px);
	padding: min(15.7226vw, 161px) 0 min(4.88828vw, 50px);
}
#philosophy .section_content .inner {
	max-width: min(97.6562vw, 1000px);
}
.philosophy_img {
	max-width: min(78.125vw, 800px);
}
.p-philosophy_list > li::after {
	top: min(6vw, 62px);
}
.p-philosophy_list > li:not(:last-child) {
	margin: 0 0 min(7vw, 72px);
}
.p-philosophy_list__head {
	width: min(22vw, 226px);
}
.p-philosophy_list__head__title .en,
.p-philosophy_list__content__title {
	margin: 0 0 min(1.5625vw, 16px);
}
.p-philosophy_list__head__title .en {
	font-size: min(5.8593vw, 6rem);
}
.p-philosophy_list__head__title .ja {
	font-size: min(2.3437vw, 2.4rem);
	padding: 0 0 0 min(2.3437vw, 24px);
}
.p-philosophy_list__content {
	width: calc(100% - min(22vw, 226px));
}
.p-philosophy_list__content__title {
	font-size: min(2.3437vw, 2.4rem);
	min-height: min(6vw, 62px);
	padding: min(1.5625vw, 16px) 0 0;
}
.p-philosophy_list__content__title > span span {
	font-size: min(1.3671vw, 1.4rem);
	top: min(1.5625vw, -16px);
}
.p-philosophy_list__content__text {
	font-size: min(1.75vw, 1.8rem);
}
}
@media screen and (max-width: 768px) {
#philosophy {
	padding: 0 0 min(12.4vw, 46px);
}
#philosophy .section_content {
	margin-top: 5.8666vw;
	padding: 5.3333vw 0 9.6vw;
}
#philosophy .section_content .inner {
	max-width: 92vw;
}
.philosophy_img {
	max-width: 96vw;
}
.p-philosophy_list > li {
	display: block;
}
.p-philosophy_list > li::after {
	content: none;
}
.p-philosophy_list > li:nth-child(1) {
	margin: 0 0 15vw;
}
.p-philosophy_list > li:nth-child(2) {
	margin: 0 0 34vw;
}
.p-philosophy_list__head,
.p-philosophy_list__content {
	width: auto;
}
.p-philosophy_list__head {
	margin: 0 0 4.2666vw;
}
.p-philosophy_list__head__title {
	border-bottom: solid 1px #b0b59f;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: end;
	align-items: flex-end;
}
.p-philosophy_list__head__title .en {
	font-size: 8vw;
	margin: 0;
}
.p-philosophy_list__head__title .ja {
	font-size: 4.5333vw;
	padding: 0 0 0 3.2vw;
}
.p-philosophy_list__content__title {
	font-size: 4.5333vw;
	min-height: none;
	padding: 1vw 0 0;
}
.p-philosophy_list__content__title > span {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.p-philosophy_list__content__title > span span {
	font-size: 4.5333vw;
	margin: 0 0 -1.0666vw;
	position: static;
}
.p-philosophy_list__content__text {
	font-size: 3.7333vw;
	line-height: 2;
}
}


/* 会社概要
-------------------------------------------------------- */
#message {
	padding: 0 0 138px;
}
#message .section_content {
	margin: 24px 0 0;
}
.message_img {
	text-align: center;
	margin: 0 0 40px;
}
.message_text {
	line-height: 2.25;
}
.message_name {
	font-size: 2.4rem;
	text-align: right;
	margin: 20px 0 0;
}
@media screen and (max-width: 768px) {
#message {
	padding: 0 0 88px;
}
#message .section_content {
	margin: 32px 0 0;
}
#message .sp_inner {
	padding: 0 5.3333%;
}
.message_img {
	margin: 0 0 24px;
}
.message_text {
	font-size: 1.3rem;
	line-height: 2;
}
.message_name {
	font-size: 1.7rem;
}
}

/* 会社概要
-------------------------------------------------------- */
#information {
	padding: 0 0 200px;
}
#information .section_content {
	margin: 12px 0 0;
}
.section-information.is-information01 {
	position: relative;
}
.section-information.is-information01 .inner {
	position: relative;
	z-index: 1;
}
.section-information.is-information01 .information_img {
	max-width: 550px;
	width: 34.375%;
	opacity: .3;
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
}
@media screen and (max-width: 768px) {
#information {
	padding: 0 0 80px;
}
#information .section_content {
	margin: 8px 0 0;
}
.section-information.is-information01 .information_img { display: none; }
}
.section-information.is-information02 {
	margin: 158px 0 0;
}
.section-information.is-information02 .inner {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.section-information.is-information02 .inner > div { width: 48%; }
.p-history_list > div {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	position: relative;
}
.p-history_list > div::before,
.p-history_list > div::after {
	content: "";
	position: absolute;
	top: 15px;
}
.p-history_list > div::before {
	width: 10px;
	height: 10px;
	background: #616b40;
	border-radius: 50%;
	left: 80px;
}
.p-history_list > div::after {
	width: 1px;
	height: 100%;
	background: #616b40;
	left: 84.5px;
}
.p-history_list > div:not(:last-child) {
	padding: 0 0 12px;
}
.p-history_list > div:last-child::after {
	content: none;
}
.p-history_list > div > dt {
	color: #616b40;
	font-size: 2.6rem;
	width: 53px;
}
.p-history_list > div > dd {
	width: calc(100% - 53px);
	padding: 6px 0 0 64px;
}
@media screen and (max-width: 1024px) {
.section-information.is-information02 .inner > div { width: 100%; }
.section-information.is-information02 .inner > div:not(:last-child) {
	margin: 0 0 72px;
}
}
@media screen and (max-width: 768px) {
.section-information.is-information02 {
	margin: 56px 0 0;
}
.section-information.is-information02 .inner > div:not(:last-child) {
	margin: 0 0 56px;
}
.p-history_list {
	padding: 0 0 0 min(4vw, 15px);
}
.p-history_list > div:not(:last-child) {
	padding: 0 0 min(3.2vw, 12px);
}
.p-history_list > div::before,
.p-history_list > div::after {
	top: min(4vw, 15px);
}
.p-history_list > div::before {
	width: min(1.8666vw, 7px);
	height: min(1.8666vw, 7px);
	left: min(19.2vw, 72px);
}
.p-history_list > div::after {
	left: min(20vw, 75px);
}
.p-history_list > div > dt {
	font-size: min(6.4vw, 2.4rem);
	width: min(12.8vw, 48px);
}
.p-history_list > div > dd {
	font-size: min(3.4666vw, 1.3rem);
	width: calc(100% - min(12.8vw, 48px));
	padding: min(1.6vw, 6px) 0 0 min(13vw, 49px);
}
}

/* アクセス
-------------------------------------------------------- */
#access .section_content {
	margin: 40px 0 0;
}
.access_map {
	overflow: hidden;
	padding-top: 57%;
	position: relative;
}
.access_map iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.section-access.is-access01 address {
	margin: 32px 0 0;
	padding: 0 13px;
}
.section-access.is-access02 { margin: 72px 0 0; }
@media screen and (max-width: 768px) {
#access .section_content {
	margin: 24px 0 0;
}
.access_map {
	padding-top: 73.3142%;
}
.section-access.is-access01 address {
	font-size: 1.3rem;
	margin: 16px 0 0;
	padding: 0;
}
.section-access.is-access02 { margin: 48px 0 0; }
}


/* --------------------------------------------------------
	採用情報
-------------------------------------------------------- */
/* 採用メッセージ
-------------------------------------------------------- */
#p-recruit.is-recruiting .page_nav::before {
	height: calc(100% - 29px - var(--child-height, 0px));
}

#recruit .section_content {
	padding: 32px 0 0;
}
#recruit .section_content .inner {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
}
.recruit_img {
	width: 55%;
	margin: -125px 0 0 2.5%;
}
.recruit_content {
	width: 42.5%;
}
.recruit_title {
	font-size: 3rem;
}
.recruit_text {
	font-size: 1.8rem;
	margin: 10px 0 0;
}
@media screen and (max-width: 768px) {
#recruit .section_content {
	padding: 16px 0 0;
}
.recruit_img,
.recruit_content {
	width: 100%;
}
.recruit_img {
	text-align: center;
	margin: 0 0 20px;
}
.recruit_title {
	font-size: 2rem;
}
.recruit_text {
	font-size: 1.4rem;
	margin: 8px 0 0;
}
}


/* 募集要項
-------------------------------------------------------- */
#works {
	margin: 96px 0 0;
}
#works .section_content {
	padding: 16px 0 0;
}
#works .page_link {
	margin: 0 0 30px;
}
.p-works_list > li:not(:last-child) {
	margin-bottom: 100px;
}
.p-works_list .btn_wrap {
	margin: 20px 0 0;
}
@media screen and (max-width: 768px) {
#works {
	margin: 64px 0 0;
}
.p-works_list > li:not(:last-child) {
	margin-bottom: 80px;
}
}


/* 準備中
-------------------------------------------------------- */
.not_recruit {
	margin: 56px 0 0;
}
.not_recruit__title {
	font-size: 3.6rem;
}
.not_recruit__text {
	font-size: 2rem;
	margin: 16px 0 0;
}
.not_recruit .btn_wrap {
	margin: 72px 0 0;
}
@media screen and (max-width: 768px) {
.not_recruit {
	margin: 32px 0 0;
}
.not_recruit__title {
	font-size: 1.8rem;
}
.not_recruit__text {
	font-size: 1.3rem;
	margin: 10px 0 0;
}
.not_recruit .btn_wrap {
	margin: 32px 0 0;
}
}


/* --------------------------------------------------------
	事業紹介
-------------------------------------------------------- */
/* 事業内容
-------------------------------------------------------- */
#service {
	padding: 0 0 56px;
}
#service .section_content {
	margin: 60px 0 0;
	position: relative;
}
.section-service.is-service01 {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: start;
	align-items: flex-start;
}
.section-service.is-service01 .service_content {
	width: 48%;
	position: relative;
	z-index: 1;
}
.section-service.is-service01 .service_img {
	width: 42.5vw;
	position: absolute;
	top: -178px;
	right: 0;
	z-index: 0;
}
.section-service.is-service01 .service_img img {
	max-width: 700px;
	width: 100%;
}
.section-service.is-service02 {
	margin: 64px 0 0;
}

.p-gift_list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-gift_list > li {
	width: 32%;
}
.p-gift_list__img {
	margin: 0 0 8px;
}
.p-gift_list__title {
	font-size: 2.2rem;
}
.p-gift_list__text {
	line-height: 2.25;
	margin: 6px 0 0;
}
@media screen and (min-width: 769px) {
.p-gift_list > li {
	margin-right: 2%;
}
.p-gift_list > li:nth-child(3n) {
	margin-right: 0;
}
}
@media screen and (max-width: 1024px) {
.section-service.is-service01 .service_img {
	width: 55vw;
}
}
@media screen and (max-width: 768px) {
#service .c-title03 {
	font-size: 2rem;
}
#service .c-title06 {
	font-size: 1.7rem;
}
#service .section_content {
	margin: 24px 0 0;
}
.section-service.is-service01 {
	flex-wrap: wrap;
}
.section-service.is-service01 .service_content,
.section-service.is-service01 .service_img {
	width: 100%;
	position: static;
}
.section-service.is-service02 {
	margin: 16px 0 0;
}
.p-gift_list > li {
	width: 100%;
}
.p-gift_list > li:not(:last-child) {
	margin: 0 0 24px;
}
.p-gift_list__img {
	margin: 0 0 16px;
}
.p-gift_list__title {
	font-size: 1.6rem;
}
.p-gift_list__text {
	line-height: 1.75;
}
}


/* 新規事業
-------------------------------------------------------- */
#business {
	padding: 0 0 150px;
}
#business .page_link {
	margin: 6px 0 64px;
	padding: 0 0 0 28px;
}
@media screen and (max-width: 768px) {
#business .page_link {
	margin: 10px 0 32px;
	padding: 0 0 0 min(3.2vw, 12px);
}
}

.p-business_list > li {
	border-left: solid 2px #616b40;
	border-bottom: solid 2px #616b40;
	padding: 0 0 100px 34px;
	position: relative;
}
.p-business_list .drawer_links {
	max-width: 370px;
	width: 100%;
	position: absolute;
	right: 0;
	bottom: -40px;
}
.p-business_list > li:not(:last-child) {
	margin-bottom: 130px;
}
.p-business_list__logo {
	font-size: 0;
	max-width: 320px;
	width: 100%;
	margin: 0 0 16px;
}
.p-business_list__flexBox > li {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-business_list__flexBox > li:not(:last-child) {
	margin: 0 0 24px;
}
.p-business_list__flexBox .p-business_flexBox__img {
	width: 34%;
	margin: 0 6% 0 0;
}
.p-business_list__flexBox .p-business_flexBox__content {
	width: 60%;
}
.p-business_list__flexBox.is-reverse > li {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
}
.p-business_list__flexBox.is-reverse .p-business_flexBox__img {
	margin: 0 0 0 6%;
}
.p-business_list > li#business01 {
	border-left-color: #9b2f32;
	border-bottom-color: #9b2f32;
}
.p-business_list > li#business01 .is-brand_color {
	color: #9b2f32;
}
.p-business_list > li#business02 {
	border-left-color: #7dbc6d;
	border-bottom-color: #7dbc6d;
}
.p-business_list > li#business02 .is-brand_color {
	color: #7dbc6d;
}
.p-business_list > li#business02 .p-business_list__logo {
	max-width: 216px;
}
.p-business_list > li#business03 {
	border-left-color: #e1bc25;
	border-bottom-color: #e1bc25;
}
.p-business_list > li#business03 .is-brand_color {
	color: #af9116;
}
@media screen and (max-width: 768px) {
#business {
	padding: 0 0 min(30.9333vw, 116px);
}
.p-business_list > li {
	font-size: 1.3rem;
	border-left: solid 2px #616b40;
	border-bottom: solid 2px #616b40;
	padding: 0 0 min(19.2vw, 72px) min(4.8vw, 18px);
}
.p-business_list > li:not(:last-child) {
	margin-bottom: min(24vw, 90px);
}
.p-business_list .drawer_links {
	max-width: min(85.3333vw, 320px);
	bottom: max(-10.6666vw, -40px);
}
.p-business_list .c-title06 {
	font-size: 1.7rem;
}
.p-business_list__logo {
	max-width: min(42.6666vw, 160px);
	margin: 0 0 8px;
}
.p-business_list__flexBox > li:not(:last-child) {
	margin: 0 0 40px;
}
.p-business_list__flexBox .p-business_flexBox__img,
.p-business_list__flexBox .p-business_flexBox__content {
	width: 100%;
}
.p-business_list__flexBox .p-business_flexBox__img,
.p-business_list__flexBox.is-reverse .p-business_flexBox__img {
	text-align: center;
	margin: 0 0 20px;
}
.p-business_list > li#business02 .p-business_list__logo {
	max-width: min(28.8vw, 108px);
}
}



/* ギフト
-------------------------------------------------------- */
#giftService {
	padding: 0 0 172px;
}
#giftService .section_content {
	margin: 18px 0 0;
}
.p-giftService_list > li:not(:last-child) {
	margin: 0 0 100px;
}
.p-giftService_list__img {
	margin: 0 0 30px;
}
.p-giftService_list__text {
	line-height: 2.25;
}
.giftService_note {
	background: #f6f7f2;
	line-height: 2.25;
	margin: 32px 0 0;
	padding: 10px 24px;
}
@media screen and (max-width: 768px) {
#giftService {
	padding: 0 0 56px;
}
#giftService .section_content {
	margin: 10px 0 0;
}
.p-giftService_list > li:not(:last-child) {
	margin: 0 0 72px;
}
.p-giftService_list__img {
	margin: 0 0 16px;
}
.p-giftService_list__text {
	font-size: 1.3rem;
	line-height: 1.8;
}
.giftService_note {
	font-size: 1.3rem;
	line-height: 1.8;
	padding: 16px 14px;
}
}


/* 仏事ギフト
-------------------------------------------------------- */
#memorialGift .section_content {
	margin: 32px 0 0;
}
#memorialGift .section_content .inner {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.memorialGift_img {
	width: 54%;
	margin: 0 4.8% 0 0;
}
.memorialGift_content {
	width: 41.2%;
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
}
.memorialGift_text {
	line-height: 2.25;
	margin: 0 0 24px;
}
.memorialGift_content .btn_wrap {
	margin-top: auto;
}
@media screen and (max-width: 768px) {
.memorialGift_img,
.memorialGift_content {
	width: 100%;
}
.memorialGift_img {
	text-align: center;
	margin: 0 0 20px;
}
.memorialGift_text {
	font-size: 1.3rem;
	line-height: 1.8;
	margin: 0 0 32px;
}
.memorialGift_content .btn_wrap {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
}


/* --------------------------------------------------------
	SDGs
-------------------------------------------------------- */
#p-sdgs .p-layout__main {
	overflow: hidden;
}
.sdgs_head {
	position: relative;
}
.sdgs_head .deco {
	max-width: min(51.4285vw, 720px);
	width: 100%;
	opacity: .05;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
}
.sdgs_head__content {
	text-align: center;
	padding: min(12.4285vw, 174px) 0 min(6.8571vw, 96px);
}
.sdgs_head__logo {
	max-width: min(28.7142vw, 402px);
	width: 100%;
	margin-inline: auto;
	margin-bottom: min(2.2857vw, 32px);
}
.sdgs_head__title {
	font-size: min(2.1428vw, 3rem);
}
.sdgs_head__text {
	font-size: min(1.2857vw, 1.8rem);
	margin: min(1.1428vw, 16px) 0 0;
}
@media screen and (max-width: 1024px) {
.sdgs_head .deco {
	max-width: min(70.3125vw, 720px);
}
.sdgs_head__content {
	padding: min(16.9921vw, 174px) 0 min(9.375vw, 96px);
}
.sdgs_head__logo {
	max-width: min(39.2578vw, 402px);
	margin-bottom: min(3.125vw, 32px);
}
.sdgs_head__title {
	font-size: min(2.9296vw, 3rem);
}
.sdgs_head__text {
	font-size: min(1.7578vw, 1.8rem);
	margin: min(1.5625vw, 16px) 0 0;
}
}
@media screen and (max-width: 768px) {
.sdgs_head .deco {
	max-width: min(96vw, 720px);
}
.sdgs_head__content {
	padding: min(20.5333vw, 144px) 0 min(14.4vw, 108px);
}
.sdgs_head__logo {
	max-width: min(53.6vw, 402px);
	margin-bottom: min(4.4vw, 32px);
}
.sdgs_head__title {
	font-size: min(4vw, 3rem);
}
.sdgs_head__text {
	font-size: min(2.4vw, 1.8rem);
	margin: min(1.5625vw, 32px) 0 0;
}
}

.p-sdgs_list {
	position: relative;
}
.p-sdgs_list::before,
.p-sdgs_list::after {
	content: "";
	width: 100%;
	background: url("../img/sdgs/deco02.png") no-repeat;
	background-size: contain;
	padding-top: 10.878243512%;
	position: absolute;
	left: 0;
	z-index: 1;
}
.p-sdgs_list::before {
	top: 0;
}
.p-sdgs_list::after {
	bottom: 0;
	transform: scale(1, -1);
}
.p-sdgs_list > li {
	position: relative;
	z-index: 0;
}
.p-sdgs_list > li:nth-child(odd) {
	background: #f6f7f2;
}
.p-sdgs_list__num {
	font-size: 15rem;
	line-height: 1;
	opacity: .5;
	position: absolute;
	top: min(4vw, 56px);
	left: min(2.285vw, 32px);
	z-index: 1;
}
#sdgs01 .p-sdgs_list__num {
	color: #e01583;
}
#sdgs02 .p-sdgs_list__num {
	color: #2c9b48;
}
#sdgs03 .p-sdgs_list__num {
	color: #fdb713;
}
#sdgs04 .p-sdgs_list__num {
	color: #193667;
}
#sdgs05 .p-sdgs_list__num {
	color: #8f1737;
}
.p-sdgs_list__in {
	padding: 110px 5.3333% 48px;
}
.p-sdgs_list__in > div {
	max-width: 750px;
	width: 100%;
	margin: auto;
}
.p-sdgs_list__img {
	margin: 0 0 24px;
	padding-top: 48%;
	position: relative;
	z-index: 0;
}
.p-sdgs_list__img picture img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	object-fit: cover;
	z-index: 0;
}
.p-sdgs_list__logo {
	max-width: 180px;
	height: 120px;
	background: #fff;
	border-radius: 20px 0 0 0;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 1;
}
.p-sdgs_list__logo img {
	width: 81.6666%;
}
.p-sdgs_list__icons {
	display: -webkit-box;
	display: flex;
	position: absolute;
	top: -22px;
	right: 5px;
	z-index: 1;
}
.p-sdgs_list__icons .p-sdgs_list__icon:not(:last-child) {
	margin: 0 5px 0 0;
}
.p-sdgs_list__icon {
	max-width: 64px;
}
.p-sdgs_list__content,
.p-sdgs_list__title,
.p-sdgs_list__text,
.p-sdgs_list__btm {
	position: relative;
}
.p-sdgs_list__title,
.p-sdgs_list__text,
.p-sdgs_list__btm {
	z-index: 1;
}
.p-sdgs_list__title {
	font-size: 2.6rem;
}
.p-sdgs_list__text {
	margin: 8px 0 0;
}
.p-sdgs_list > li:nth-child(odd) .p-sdgs_list__title,
.p-sdgs_list > li:nth-child(odd) .p-sdgs_list__text {
	text-shadow: 
		#f6f7f2 2px 0px 2px, #f6f7f2 -2px 0px 2px,
		#f6f7f2 0px -2px 2px, #f6f7f2 -2px 0px 2px,
		#f6f7f2 2px 2px 2px, #f6f7f2 -2px 2px 2px,
		#f6f7f2 2px -2px 2px, #f6f7f2 -2px -2px 2px,
		#f6f7f2 1px 2px 2px, #f6f7f2 -1px 2px 2px,
		#f6f7f2 1px -2px 2px, #f6f7f2 -1px -2px 2px,
		#f6f7f2 2px 1px 2px, #f6f7f2 -2px 1px 2px,
		#f6f7f2 2px -1px 2px, #f6f7f2 -2px -1px 2px,
		#f6f7f2 1px 1px 2px, #f6f7f2 -1px 1px 2px,
		#f6f7f2 1px -1px 2px, #f6f7f2 -1px -1px 2px;
}
.p-sdgs_list > li:nth-child(even) .p-sdgs_list__title,
.p-sdgs_list > li:nth-child(even) .p-sdgs_list__text,
.p-sdgs_list__note {
	text-shadow: 
		#fff 2px 0px 2px, #fff -2px 0px 2px,
		#fff 0px -2px 2px, #fff -2px 0px 2px,
		#fff 2px 2px 2px, #fff -2px 2px 2px,
		#fff 2px -2px 2px, #fff -2px -2px 2px,
		#fff 1px 2px 2px, #fff -1px 2px 2px,
		#fff 1px -2px 2px, #fff -1px -2px 2px,
		#fff 2px 1px 2px, #fff -2px 1px 2px,
		#fff 2px -1px 2px, #fff -2px -1px 2px,
		#fff 1px 1px 2px, #fff -1px 1px 2px,
		#fff 1px -1px 2px, #fff -1px -1px 2px;
}
.p-sdgs_list__content .btn_wrap,
.p-sdgs_list__btm {
	margin: 30px 0 0;
}
.p-sdgs_list__btm {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	flex-direction: row-reverse;
	-webkit-box-pack: justify;
	justify-content: space-between;
}
.p-sdgs_list__btm .btn_wrap {
	max-width: 400px;
	width: 100%;
	margin: 0;
}
.p-sdgs_list__note {
	color: #999;
}
.p-sdgs_list__illust {
	position: absolute;
	z-index: 0;
}
#sdgs01 .p-sdgs_list__illust {
	max-width: min(14vw, 196px);
	top: max(-4.5714vw, -64px);
	right:  max(-3.5vw, -83px);
}
#sdgs02 .p-sdgs_list__content {
	position: static;
}
#sdgs02 .p-sdgs_list__illust {
	max-width: min(9vw, 158px);
	bottom: min(6.6428vw, 93px);
	left: max(-1.9285vw, -55px);
}
#sdgs03 .p-sdgs_list__illust {
	max-width: min(13.7857vw, 193px);
	top: 0;
	right: max(-9vw, -180px);
}
#sdgs04 .p-sdgs_list__illust {
	max-width: min(11.5714vw, 162px);
	bottom: 0;
	left: max(-5.5vw, -104px);
}
#sdgs05 .p-sdgs_list__illust {
	max-width: min(8.6428vw, 121px);
	top: max(-1.8571vw, -26px);
	right: max(-7vw, -135px);
}
@media screen and (max-width: 1024px) {
#sdgs01 .p-sdgs_list__illust {
	max-width: min(19.14vw, 196px);
	top: max(-6.25vw, -64px);
	right: max(-8.1vw, -83px);
}
#sdgs02 .p-sdgs_list__illust {
	max-width: min(15.4296vw, 158px);
	bottom: min(9vw, 93px);
	left: max(-3.371vw, -55px);
}
#sdgs03 .p-sdgs_list__illust {
	max-width: min(18.8476vw, 193px);
	right: max(-12.578vw, -180px);
}
#sdgs04 .p-sdgs_list__illust {
	max-width: min(15.82vw, 162px);
	left: max(-8vw, -104px);
}
#sdgs05 .p-sdgs_list__illust {
	max-width: min(11.8164vw, 121px);
	top: max(-2.539vw, -26px);
	right: max(-9.5vw, -135px);
}
}
@media screen and (max-width: 768px) {
.p-sdgs_list__num {
	font-size: min(20vw, 7.5rem);
	top: min(14.4vw, 54px);
	left: min(4.5333vw, 17px);
}
.p-sdgs_list__in {
	padding: min(20.6666vw, 77px) 5.3333% min(13.3333vw, 50px);
}
.p-sdgs_list__in > div:not(.p-sdgs_list__num) {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
}
.p-sdgs_list__img {
	width: 85.3333%;
	padding-top: 55.9999%;
}
.p-sdgs_list__logo {
	max-width: min(24vw, 90px);
	height: min(16vw, 60px);
	border-radius: 10px 0 0 0;
}
.p-sdgs_list__logo img {
	width: 81.6666%;
}
.p-sdgs_list__icons {
	top: max(-4.2666vw, -16px);
}
.p-sdgs_list__icon {
	max-width: min(8.5333vw, 32px);
}
.p-sdgs_list__title {
	font-size: 1.8rem;
}
.p-sdgs_list__text {
	font-size: 1.3rem;
}
.p-sdgs_list__content .btn_wrap,
.p-sdgs_list__btm {
	margin: min(4vw, 15px) 0 0;
}
.p-sdgs_list__content .btn_wrap {
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
.p-sdgs_list__btm {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
}
.p-sdgs_list__btm .btn_wrap {
	margin: 0;
}
.p-sdgs_list__note {
	font-size: 1.3rem;
	margin: 2px 0 0;
}
.p-sdgs_list__illust {
	margin-left: auto;
	margin-right: 0;
	position: static;
}
#sdgs01 .p-sdgs_list__illust {
	max-width: min(26.1333vw, 98px);
}
#sdgs02 .p-sdgs_list__illust {
	max-width: min(21.0666vw, 79px);
}
#sdgs03 .p-sdgs_list__illust {
	max-width: min(25.7333vw, 97px);
}
#sdgs04 .p-sdgs_list__illust {
	max-width: min(21.6vw, 81px);
}
#sdgs05 .p-sdgs_list__illust {
	max-width: min(16.1333vw, 61px);
}
}


/* --------------------------------------------------------
	仏事ギフト
-------------------------------------------------------- */
/* 仏事ギフト
-------------------------------------------------------- */
#gift .section_content {
	margin: 48px 0 0;
}
.section-gift .gift_title {
	margin: 0 0 16px;
}
.section-gift .gift_title__main {
	font-size: 3rem;
}
.section-gift .gift_title__sub {
	font-size: 2rem;
	margin: 3px 0 0;
}
.section-gift .gift_text {
	font-size: 1.8rem;
}
.section-gift.is-gift01 {
	padding: 0 0 100px;
}
.section-gift.is-gift01 .gift_img {
	display: -webkit-box;
	display: flex;
	margin: 0 0 32px;
}
.section-gift.is-gift01 .gift_img > div > div {
	overflow: hidden;
	position: relative;
}
.section-gift.is-gift01 .gift_img > div > div img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	object-fit: cover;
}
.section-gift.is-gift01 .gift_img > div:nth-child(1) {
	width: 66%;
	margin: 0 2% 0 0;
}
.section-gift.is-gift01 .gift_img > div:nth-child(1) > div {
	padding-top: 66.6666%;
}
.section-gift.is-gift01 .gift_img > div:nth-child(2) {
	width: 32%;
}
.section-gift.is-gift01 .gift_img > div:nth-child(2) > div {
	padding-top: 137.5%;
}
.section-gift.is-gift02 {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.section-gift.is-gift02 .gift_img {
	width: 41.3%;
	margin: 0 8.4% 0 0;
}
.section-gift.is-gift02 .gift_content {
	width: 50.3%;
}
@media screen and (max-width: 768px) {
#gift .section_content {
	margin: 40px 0 0;
}
.section-gift .gift_title__main {
	font-size: 2rem;
}
.section-gift .gift_title__sub {
	font-size: 1.5rem;
	margin: 3px 0 0;
}
.section-gift .gift_text {
	font-size: 1.3rem;
}
.section-gift.is-gift01 {
	padding: 0 0 48px;
}
.section-gift.is-gift01 .gift_img,
.section-gift.is-gift02 .gift_img {
	margin: 0 0 24px;
}
.section-gift.is-gift01 .gift_img > div:nth-child(1) {
	width: 66.6666%;
	margin: 0 1.449275363% 0 0;
}
.section-gift.is-gift01 .gift_img > div:nth-child(1) > div {
	padding-top: 95.6521%;
}
.section-gift.is-gift01 .gift_img > div:nth-child(2) {
	width: 31.884057971%;
}
.section-gift.is-gift01 .gift_img > div:nth-child(2) > div {
	padding-top: 200%;
}
.section-gift.is-gift02 {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
}
.section-gift.is-gift02 .gift_img {
	width: min(69vw, 259px);
}
.section-gift.is-gift02 .gift_content {
	width: 100%;
}
}


/* 商品ラインナップ
-------------------------------------------------------- */
#lineup {
	padding: 146px 0 0;
}
#lineup .section_content {
	margin: 8px 0 0;
}
.lineup_text {
	margin: 0 0 40px;
	padding: 0 0 0 32px;
}
.p-lineup_list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
}
.p-lineup_list > li {
	width: 32%;
	margin-top: 40px;
	margin-right: 2%;
}
.p-lineup_list__img {
	background: url(../img/gift/lineup.png) no-repeat;
	background-size: cover;
	overflow: hidden;
	padding-top: 72.5%;
	position: relative;
}
.p-lineup_list__img img {
	width: 80%;
	height: 80%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	object-fit: contain;
}
@media screen and (min-width: 769px) {
.p-lineup_list > li:nth-child(-n + 3) {
	margin-top: 0;
}
.p-lineup_list > li:nth-child(3n) {
	margin-right: 0;
}
}
@media screen and (max-width: 768px) {
#lineup {
	padding: 56px 0 0;
}
.lineup_text {
	margin: 0 0 24px;
	padding: 0;
}
.p-lineup_list > li {
	width: 48%;
	margin-top: 20px;
	margin-right: 4%;
}
.p-lineup_list > li:nth-child(-n + 2) {
	margin-top: 0;
}
.p-lineup_list > li:nth-child(2n) {
	margin-right: 0;
}
}


/* --------------------------------------------------------
	お問い合わせ
-------------------------------------------------------- */
.contact_text {
	padding: 8px 40px 40px;
}
.contact_form {
	font-size: 1.8rem;
}
.contact_form__tbl {
	border-top: solid 1px #999;
	border-bottom: solid 1px #999;
	padding: 40px;
}
.contact_form__tbl > div:not(:last-child) {
	margin-bottom: 40px;
}
.contact_form__tbl > div > dt {
	margin: 0 0 2px;
}
.contact_form input[type="text"],
.contact_form input[type="email"],
.contact_form input[type="tel"],
.contact_form select,
.contact_form textarea {
	width: 100%;
	background: #fff;
	border: solid 1px #bfbfbf;
	border-radius: 10px;
	display: block;
	padding: 12px 16px;
}
.contact_form textarea {
	height: 243px;
}
.wpcf7-radio {
	display: block;
	margin: 10px 0 0;
}
.wpcf7-radio .wpcf7-list-item {
	display: block;
	margin-top: 10px;
}
.wpcf7-radio .wpcf7-list-item.first {
	margin-top: 0;
}
.wpcf7-radio .wpcf7-list-item-label {
	display: inline-block;
	padding: 0 0 0 36px;
	position: relative;
}
.wpcf7-radio .wpcf7-list-item-label::before,
.wpcf7-radio .wpcf7-list-item-label::after {
	content: "";
	border-radius: 50%;
	position: absolute;
}
.wpcf7-radio .wpcf7-list-item-label::before {
	width: 24px;
	height: 24px;
	background: #fff;
	border: solid 1px #bfbfbf;
	top: 2px;
	left: 0;
}
.wpcf7-radio .wpcf7-list-item-label::after {
	width: 16px;
	height: 16px;
	background: #616b40;
	opacity: 0;
	top: 6px;
	left: 4px;
}
.wpcf7-acceptance .wpcf7-list-item-label {
	display: inline-block;
	padding: 0 0 0 30px;
	position: relative;
}
.wpcf7-acceptance .wpcf7-list-item-label::before,
.wpcf7-acceptance .wpcf7-list-item-label::after {
	content: "";
	position: absolute;
	top: 5px;
	left: 0;
	transition: .5s;
}
.wpcf7-acceptance .wpcf7-list-item-label::before {
	width: 20px;
	height: 20px;
	border: solid 2px #000;
}
.wpcf7-acceptance .wpcf7-list-item-label::after {
	width: 6px;
	height: 18px;
	border: solid #486a00;
	border-width: 0 2px 2px 0;
	opacity: 0;
	left: 7px;
	z-index: 10;
	transform: rotate(45deg);
}
.wpcf7-radio input[type="radio"]:checked + .wpcf7-list-item-label::after,
.wpcf7-acceptance input[type="checkbox"]:checked + .wpcf7-list-item-label::after {
	opacity: 1;
}
.form_privacy {
	font-size: 1.6rem;
	max-height: 247px;
	background: #f9f9f6;
	border: solid 1px #9c9998;
	border-radius: 10px;
	overflow: auto;
	margin: 0 0 16px;
	padding: 16px;
}
.form_privacy_list > div:not(:last-child) {
	margin: 0 0 24px;
}
.form_privacy_list dd:not(:first-of-type) {
	margin: 10px 0 0;
}

.contact_form .submit_wrap {
	margin: 24px 0 0;
}
.contact_form .submit_wrap > p {
	display: -webkit-box;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-align: center;
	align-items: center;
	-webkit-box-pack: center;
	justify-content: center;
}
.contact_form .submit_wrap input {
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	max-width: 500px;
	width: 100%;
	background: #486a00;
	border-radius: 100px;
	display: -webkit-box;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
	padding: 16px;
}
.contact_form .submit_wrap input:disabled {
	background: #ccc;
}
.wpcf7-spinner { display: none; }
@media screen and (max-width: 768px) {
.contact_text {
	padding: 12px 5.3333% 24px;
}
.contact_form {
	font-size: 1.4rem;
}
.contact_form__tbl {
	padding: 24px 5.3333%;
}
.contact_form__tbl > div:not(:last-child) {
	margin-bottom: 24px;
}
.contact_form__tbl > div > dd {
	font-size: 1.3rem;
}
.contact_form textarea {
	height: 180px;
}
.wpcf7-radio .wpcf7-list-item-label {
	padding: 0 0 0 26px;
}
.wpcf7-radio .wpcf7-list-item-label::before {
	width: 18px;
	height: 18px;
}
.wpcf7-radio .wpcf7-list-item-label::after {
	width: 12px;
	height: 12px;
	top: 5px;
	left: 3px;
}
.wpcf7-acceptance .wpcf7-list-item-label {
	font-size: 1.4rem;
	padding: 0 0 0 16px;
}
.wpcf7-acceptance .wpcf7-list-item-label::before,
.wpcf7-acceptance .wpcf7-list-item-label::after {
	top: 7px;
}
.wpcf7-acceptance .wpcf7-list-item-label::before {
	width: 10px;
	height: 10px;
	border-width: 1px;
}
.wpcf7-acceptance .wpcf7-list-item-label::after {
	width: 4px;
	height: 8px;
	top: 7px;
	left: 3px;
}
.form_privacy {
	font-size: 1.2rem;
	max-height: 200px;
}
.form_privacy_list > div:not(:last-child) {
	margin: 0 0 16px;
}
.form_privacy_list dd:not(:first-of-type) {
	margin: 8px 0 0;
}

.contact_form .submit_wrap {
	padding: 0 3.2%;
}
.contact_form .submit_wrap input {
	font-size: 1.5rem;
}
}

/* 送信完了
-------------------------------------------------------- */
.contact_thanks {
	margin: 56px 0 0;
}
.contact_thanks__title {
	font-size: 3.6rem;
}
.contact_thanks__text {
	font-size: 2rem;
	margin: 16px 0 0;
}
.contact_thanks .btn_wrap {
	margin: 72px 0 0;
}
@media screen and (max-width: 768px) {
.contact_thanks {
	margin: 32px 0 0;
}
.contact_thanks__title {
	font-size: 1.8rem;
}
.contact_thanks__text {
	font-size: 1.3rem;
	margin: 10px 0 0;
}
.contact_thanks .btn_wrap {
	margin: 32px 0 0;
}
}
