@charset "utf-8";
/*
Theme Name: nicori6
Theme URI: https://nicori.org/
Version: 6.0
*/


@font-face {font-family: 'HalisGR-SRegular';src: url('webfonts/39699D_14_0.eot');src: url('webfonts/39699D_14_0.eot?#iefix') format('embedded-opentype'),url('webfonts/39699D_14_0.woff2') format('woff2'),url('webfonts/39699D_14_0.woff') format('woff'),url('webfonts/39699D_14_0.ttf') format('truetype');}


/* common
---------------------------------------------------------------------------*/
body {
	background-color: #FBF8E9;
	color: #4E2F14;
	font-size: 14px;
	font-family: 'FOT-筑紫A丸ゴシック Std D', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
	line-height: 1;
	font-feature-settings: 'palt' 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
}

#wrap.tablet { -webkit-text-size-adjust: none !important; }
body.noscroll { overflow-y: scroll; position: fixed; width: 100%; }

::-moz-selection { background: #F4EEDD; color: #4E2F14; }
::selection { background: #F4EEDD; color: #4E2F14; }

p { font-size: 14px; line-height: 1.8; letter-spacing: 0.1em; margin-bottom: 10px; }
p:last-of-type { margin-bottom: 0 !important; }
address,i { font-style: normal; }
img { max-width: none; }
.clearfix:after { content: ''; display: block; clear:both; }

body#pc .pc_view { display: block !important; }
body#pc .pc_view.inline { display: inline-block !important; }
body#pc .sp_view { display: none !important; }
body#sp .sp_view { display: block !important; }
body#sp .pc_view { display: none !important; }
body#pc .block, body#sp .block { display: block !important; }

/* margin
------------------------------------*/
.mb0 { margin-bottom: 0 !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb45 { margin-bottom: 45px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb55 { margin-bottom: 55px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb65 { margin-bottom: 65px !important; }
.mb70 { margin-bottom: 70px !important; }
.mb75 { margin-bottom: 75px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb85 { margin-bottom: 85px !important; }
.mb90 { margin-bottom: 90px !important; }
.mb95 { margin-bottom: 95px !important; }
.mb100 { margin-bottom: 100px !important; }
.mb105 { margin-bottom: 105px !important; }
.mb110 { margin-bottom: 110px !important; }
.mb115 { margin-bottom: 115px !important; }
.mb120 { margin-bottom: 120px !important; }
.mb125 { margin-bottom: 125px !important; }
.mb130 { margin-bottom: 130px !important; }
.mb135 { margin-bottom: 135px !important; }
.mb140 { margin-bottom: 140px !important; }
.mb145 { margin-bottom: 145px !important; }
.mb150 { margin-bottom: 150px !important; }
.mb155 { margin-bottom: 155px !important; }
.mb160 { margin-bottom: 160px !important; }
.mb165 { margin-bottom: 165px !important; }
.mb170 { margin-bottom: 170px !important; }
.mb175 { margin-bottom: 175px !important; }
.mb180 { margin-bottom: 180px !important; }
.mb185 { margin-bottom: 185px !important; }
.mb190 { margin-bottom: 190px !important; }
.mb195 { margin-bottom: 195px !important; }
.mb200 { margin-bottom: 200px !important; }
.mb210 { margin-bottom: 200px !important; }
.mb220 { margin-bottom: 200px !important; }
.mb230 { margin-bottom: 200px !important; }
.mb240 { margin-bottom: 200px !important; }

.space {
	display: inline-block;
	padding-right: 0.7em;
}

/* #wrap
------------------------------------*/
#wrap {
	overflow: hidden;
	min-width: 1240px;
}

/* #loading
------------------------------------*/
#loading {
	display: none;
	opacity: 0;
	position: fixed;
	top: 50%;
	left: 50%;
	border: 2px solid #EA5704;
	border-top-color: transparent;
	border-radius: 50%;
	width: 24px;
	height: 24px;
	margin: -12px 0 0 -12px;
	z-index: 99999;
	animation: spin 0.5s infinite linear;
}

@keyframes spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

/* txt
-----------------------------------*/
.font-d { font-family: 'FOT-筑紫A丸ゴシック Std D', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif; }
.font-m { font-family: 'FOT-筑紫A丸ゴシック Std M', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif; }
.font-b,
.news-main h2,
.news-main strong { font-family: 'FOT-筑紫A丸ゴシック Std B', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif; }
.font-e { font-family: 'FOT-筑紫A丸ゴシック Std E', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'Hiragino Sans', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif; }
.font-serif { font-family: 'Josefin Slab', serif; font-weight: 600; }
.font-sans { font-family: AvenirLTPro-Medium, sans-serif; }
.font-sans-l { font-family: GillSansMTPro-Medium, sans-serif; }
.font-sans-i { font-family: GillSansMTPro-MediumItalic, sans-serif; }
.font-sans-hg { font-family: 'HalisGR-SRegular', sans-serif; }
.font-sans-num-l { font-family: 'HelveticaNowDisplay-Lt', sans-serif; }
.font-sans-num-r { font-family: 'HelveticaNowDisplay-Regular', sans-serif; }

p i.dash {
	display: inline-block;
	margin: 0 3px 0 6px;
	transform: scaleX(1.8);
}

/* link
------------------------------------*/
a { color: #4E2F14; text-decoration: none; transition: .15s ease-out; -webkit-transform: translateZ(0); }
a:hover { text-decoration: none; opacity: 0.5; }
p a { color: #EA5704; text-decoration: underline; }

/* .btn
------------------------------------*/
.btn a,
.btn span {
	display: inline-block;
	background: #EE8319;
	box-shadow: 0 5px 0 #D36C05;
	border-radius: 14px;
	color: #F5EEE0;
	padding: 13px 17px 14px 21px;
	font-size: 17px;
	text-align: center;
	letter-spacing: 0.12em;
	white-space: nowrap;
	transition: .1s ease-out;
	cursor: pointer;
}

.btn a:hover,
.btn span:hover {
	background-color: #EA5704;
	box-shadow: 0 2px 0 #D36C05;
	transform: translateY(3px);
	opacity: 1;
}

.btn.off a {
	pointer-events: none;
	opacity: 0.5;
}

.btn-s a,
.btn-s span {
	border-radius: 9px;
	padding: 10px 17px 11px 19px;
	font-size: 15px;
}

.btn-arrow-down a {
	position: relative;
	padding-left: 48px;
}

.btn-arrow-down a:before {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left: 19px;
	background: url(img/share/ico-arrow-down.svg) no-repeat;
	background-size: 15px 11px;
	width: 15px;
	height: 11px;
	margin-top: -4px;
}

.btn-set {
	text-align: center;
}

.btn-set.left {
	text-align: left;
}

.btn-set > div {
	display: inline-block;
	margin: 0 6px;
}

.btn-l {
	width: calc(100% + 24px);
	margin: -5px -12px 0;
}

.btn-l a {
	display: block;
	background: #FFFFFF;
	border: 1px solid #EE8319;
	box-shadow: 0 3px 0 0 #D36C05;
	border-radius: 28.5px;
	color: #EA5704;
	padding: 16px 20px 17px;
	font-size: 18px;
	letter-spacing: 0.12em;
	text-align: center;
	transition: .1s ease-out;
}

.btn-l a:hover {
	box-shadow: 0 1px 0 0 #D36C05;
	transform: translateY(2px);
	opacity: 1;
}

.btn-l.orange a {
	background-color: #EE8319;
	color: #FFFFFF;
	font-size: 20px;
}

.btn-l.orange a:hover {
	background-color: #EA5704;
}

.btn-l a i {
	display: inline-block;
	background: url(img/share/ico-arrow-btn2.svg) no-repeat;
	background-size: 100% auto;
	width: 18px;
	height: 18px;
	margin: 0 -16px 0 16px;
	transform: translateY(2px);
}

/* .btn-line
------------------------------------*/
.btn-line a {
	display: inline-block;
	box-sizing: border-box;
	background: url(img/share/ico-arrow-btn.svg) no-repeat left 0 top 2px;
	background-size: 15px auto;
	padding: 0 0 4px 24px;
	min-height: 17px;
	color: #EA5704;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.btn-line a span {
	border-bottom: 1px solid #EA5704;
}

/* .btn-wide
------------------------------------*/
.btn-wide {
	width: 100%;
}

.btn-wide a {
	display: block;
	box-sizing: border-box;
	border-radius: 9px;
	width: 100%;
	padding-top: 16px;
	padding-bottom: 17px;
	font-size: 20px;
}


/* header
---------------------------------------------------------------------------*/
header {
	position: relative;
	box-sizing: border-box;
	background-color: #FFFFFF;
	width: 100%;
	min-width: 1240px;
	height: 227px;
	margin: 0;
	padding: 52px 0 25px;
	transition: .2s linear;
}

body.news header,
body.media header,
body.contact header,
body.privacy header {
	margin-bottom: 75px;
}

.header-inner {
	position: relative;
	box-sizing: border-box;
	width: 970px;
	margin: 0 auto;
	padding-left: 190px;
}

header .logo {
	position: absolute;
	top: 2px;
	left: 10px;
	width: 123px;
}

header .logo img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
}

.header-top {
	position: relative;
	margin-bottom: 18px;
	padding-top: 12px;
}

.header-top .title-site {
	display: inline-block;
	margin-right: 20px;
}

.header-top .title-site strong {
	display: block;
}

.header-top .title-site strong i {
	display: inline-block;
	background: #FFFFFF;
	border: 1px solid #ACACAC;
	border-radius: 66px;
	margin-right: 3px;
	padding: 3px 9px 5px 9px;
	font-size: 12px;
	letter-spacing: 0.04em;
}

.header-top .title-site strong span {
	display: inline-block;
	border-bottom: 1px solid rgba(234,87,4,0.4);
	margin-left: 13px;
	padding-bottom: 4px;
	font-size: 13px;
	letter-spacing: 0.1em;
}


/* header .sns
------------------------------------*/
.header-top .sns {
	overflow: hidden;
	position: absolute;
	top: 0;
	right: 28px;
	cursor: pointer;
	transition: .15s ease-out;
}

.header-top .sns:hover {
	opacity: 0.5;
}

.header-top .sns li {
	float: left;
	margin-left: 5px;
}

.header-top .sns li a {
	display: block;
	border: 1px solid #ececec;
	border-radius: 50%;
	padding: 8px;
	background: #fff;
	pointer-events: none;
}

.header-top .sns li a img {
	width: 19px;
	height: 19px;
}

.header-top .sns li.line a {
	padding: 8px 6px 6px 7px;
}

.header-top .sns li.line a img {
	width: 22px;
	height: 21px;
}

.header-top .sns .footer {
	display: none;
}

.btn-donate-header {
	position: absolute;
	top: -1px;
	right: 170px;
}

.btn-donate-header a {
	display: inline-block;
	position: relative;
	border-radius: 7px;
	background: url(img/share/bg-noise-orange.jpg) repeat left top;
	padding: 12px 40px 13px 14px;
	color: #FFFFFF;
	font-size: 14px;
	letter-spacing: 0.08em;
}

.btn-donate-header a:hover {
	opacity: 0.7;
}

.btn-donate-header a:before {
	display: block;
	content: '';
	position: absolute;
	top: 9px;
	right: 11px;
	background: url(img/donate/ico-arrow-yellow-orange.svg) no-repeat left top / 100% auto;
	width: 20px;
	height: 20px;
}


/* header .snav
------------------------------------*/
.header-top .snav {
	position: absolute;
	top: 2px;
	right: 180px;
}

.header-top .snav li a {
	display: inline-block;
	position: relative;
	background: url(img/share/ico-arrow-btn.svg) no-repeat right 1px top 9px;
	background-size: 15px 15px;
	padding: 10px 22px 10px 10px;
	font-size: 13px;
	letter-spacing: 0.14em;
	white-space: nowrap;
}

.header-top .snav li a:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 5px;
	left: 10px;
	background-color: rgba(234,87,4,0.4);
	width: calc(100% - 34px);
	height: 1px;
}

.ico-attention {
	display: inline-block;
	position: absolute;
	top: 10px;
	left: -42px;
	color: #EA5704;
	letter-spacing: 0.1em;
}

.ico-attention span {
	display: inline-block;
	padding: 0 5px 0 calc(6px + 0.03em);
	-webkit-backface-visibility: hidden;
	-webkit-transform: perspective(0);
	-webkit-transform-style: preserve-3d;
	-webkit-perspective: 1000;
	-webkit-transform: translateZ(0);
	overflow: hidden;
}

.ico-attention i {
	display: block;
	position: absolute;
	top: 3px;
	background-color: #EA5704;
	width: 1px;
	height: 11px;
}

.ico-attention i.left { left: 0; transform: rotate(-25deg); }
.ico-attention i.right { right: 0; transform: rotate(25deg); }

/* header .gnav
------------------------------------*/
header .gnav {
	margin: 0 -20px;
	text-align: center;
	white-space: nowrap;
}

header .gnav > ul {
	display: -webkit-box;
	display: flex;
}

header .gnav > ul > li {
	position: relative;
}

header .gnav > ul > li:after {
	display: block;
	content: '';
	position: absolute;
	top: 30px;
	right: 0;
	background: url(img/share/line-dot-v.svg) repeat-y;
	width: 1px;
	height: 30px;
}

header .gnav > ul > li:last-of-type:after {
	display: none;
}

header .gnav > ul > li > a,
header .gnav > ul > li > span {
	display: block;
	padding: 20px 21px 30px;
}

header .gnav > ul > li > a em,
header .gnav > ul > li > span em {
	display: block;
	margin-bottom: 9px;
	color: #EA5704;
	font-size: 21px;
	letter-spacing: 0.05em;
}

header .gnav > ul > li > a em span,
header .gnav > ul > li > span em span {
	padding: 0 2px;
}

header .gnav > ul > li > a strong,
header .gnav > ul > li > span strong {
	font-size: 14px;
	letter-spacing: 0.12em;
}

header #gnav-contact > a strong {
	padding-left: 3px;
}

/* .mnav
------------------------------------*/
.btn-mnav {
	position: relative;
}

#wrap.tablet .btn-mnav .parent {
	pointer-events: none;
}

.mnav-wrap {
	display: block;
	visibility: hidden;
	position: absolute;
	left: 50%;
	transform: translateX(-50%) !important;
	transition: .1s ease-out;
	z-index: 100000;
	opacity: 0;
}

.mnav-inner {
	position: relative;
	box-sizing: border-box;
	background-color: #FFFFFF;
	border: 1px solid #F7C099;
	border-radius: 9px;
	box-shadow: 2px 6px 10px 0 rgba(0,0,0,0.10);
	padding: 6px 20px;
	z-index: 1;
}

#wrap.tablet .mnav-wrap {
	display: none;
	visibility: inherit;
	transition: inherit;
}

header .mnav-wrap { top: 85px; }
#wrap:not(.tablet) header .btn-mnav:hover .mnav-wrap {
	visibility: visible;
	opacity: 1;
	top: 95px;
}

footer .mnav-wrap { bottom: 70px; }
#wrap:not(.tablet) footer .btn-mnav:hover .mnav-wrap {
	visibility: visible;
	opacity: 1;
	bottom: 78px;
}

.mnav-wrap li {
	border-bottom: 1px solid #F7C099;
}

.mnav-wrap li:last-of-type {
	border-bottom: none;
}

.mnav-wrap li a {
	display: block;
	background: url(img/share/ico-arrow-btn.svg) no-repeat left 2px top 18px / 15px 15px;
	padding: 13px 0 13px 26px;
	font-size: 15px;
	text-align: left;
	line-height: 1.6;
	letter-spacing: 0.08em;
}

.mnav-wrap li a:hover {
	color: #EA5704;
	opacity: 1;
}

.mnav-wrap .illust {
	position: absolute;
	z-index: -1;
	opacity: 0;
}

#wrap.tablet .mnav-wrap .illust {
	display: none;
}

.mnav-wrap .illust img {
	width: 100%;
	height: auto;
}

.mnav-wrap .illust1 { top: 0; left: -35px; width: 95px; transform: scaleX(-1); animation: mnav-illust1 .15s ease-out forwards; }
.mnav-wrap .illust1 img { transform: scaleX(-1); }

.mnav-wrap .illust2 { top: 75px; right: -12px; width: 35px; animation: mnav-illust2 .15s ease-out forwards; }
.mnav-wrap .illust3 { bottom: 60px; left: -40px; width: 240px; animation: mnav-illust5 .15s ease-out forwards; }

.mnav-wrap .illust4 { bottom: 5px; right: -20px; width: 95px; transform: scaleX(-1); animation: mnav-illust4 .15s ease-out forwards; }
.mnav-wrap .illust4 img { transform: scaleX(-1); }

.mnav-wrap .illust1.active { animation: mnav-illust1-on .1s ease-out forwards; }
.mnav-wrap .illust2.active { animation: mnav-illust2-on .1s ease-out forwards; }
.mnav-wrap .illust3.active { animation: mnav-illust3-on .1s ease-out forwards; }
.mnav-wrap .illust4.active { animation: mnav-illust4-on .1s ease-out forwards; }


@keyframes mnav-illust1 {
	0% { left: -50px; opacity: 1; transform: scale(1); }
	1% { left: -50px; opacity: 1; transform: scale(1); }
	100% { left: -30px; opacity: 0; transform: scale(0.7); }
}
@keyframes mnav-illust1-on {
	0% { left: -30px; opacity: 0; transform: scale(0.7); }
	99% { left: -50px; opacity: 1; transform: scale(1); }
	100% { left: -50px; opacity: 1; transform: scale(1); }
}

@keyframes mnav-illust2 {
	0% { right: -32px; opacity: 1; z-index: 2; transform: scale(1); }
	1% { right: -32px; opacity: 1; z-index: -1; transform: scale(1); }
	100% { right: -12px; opacity: 0; z-index: -1; transform: scale(0.7); }
}
@keyframes mnav-illust2-on {
	0% { right: -12px; opacity: 0; z-index: -1; transform: scale(0.7); }
	99% { right: -32px; opacity: 1; z-index: -1; transform: scale(1); }
	100% { right: -32px; opacity: 1; z-index: 2; transform: scale(1); }
}

@keyframes mnav-illust3 {
	0% { left: -70px; opacity: 1; transform: scale(1); }
	1% { left: -70px; opacity: 1; transform: scale(1); }
	100% { left: -50px; opacity: 0; transform: scale(0.7); }
}
@keyframes mnav-illust3-on {
	0% { left: -50px; opacity: 0; transform: scale(0.7); }
	99% { left: -70px; opacity: 1; transform: scale(1); }
	100% { left: -70px; opacity: 1; transform: scale(1); }
}

@keyframes mnav-illust4 {
	0% { right: -40px; opacity: 1; transform: scale(1); }
	1% { right: -40px; opacity: 1; transform: scale(1); }
	100% { right: -20px; opacity: 0; transform: scale(0.7); }
}
@keyframes mnav-illust4-on {
	0% { right: -20px; opacity: 0; transform: scale(0.7); }
	99% { right: -40px; opacity: 1; transform: scale(1); }
	100% { right: -40px; opacity: 1; transform: scale(1); }
}


/* .header-tree
------------------------------------*/
.header-tree {
	position: absolute;
	top: 0;
	z-index: 1000;
}

.header-tree img {
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
}

header .tree-left {
	left: 0;
	width: 12.3%;
	max-width: 160px;
}

header .tree-right {
	right: 0;
	width: 12.6%;
	max-width: 160px;
}

header:after {
	display: block;
	content: '';
	position: absolute;
	bottom: -40px;
	left: 0;
	background-image: url(img/share/slide-arc-top.png);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 100% 40px;
	width: 100%;
	height: 40px;
	z-index: 999;
}


/* media query
-----------------------------------*/
@media (min-width: 1500px) {
	.header-inner {
		width: 1080px;
		padding-left: 200px;
	}
	header .logo {
		width: 130px;
		left: 10px;
	}
	.header-top .snav {
		right: 166px;
	}
	.header-top .sns {
		right: 16px;
	}
	header .gnav {
		margin: 0 -30px;
	}
	header .gnav > ul > li > a,
	header .gnav > ul > li > span {
		padding-right: 27px;
		padding-left: 27px;
	}
	header .gnav > ul > li > a em,
	header .gnav > ul > li > span em {
		margin-bottom: 8px;
		font-size: 23px;
	}
	header .gnav > ul > li > a strong,
	header .gnav > ul > li > span strong {
		font-size: 15px;
	}
}

@media (max-width: 1340px) {
	.header-inner {
		width: 950px;
	}
	header .gnav > ul > li > a,
	header .gnav > ul > li > span {
		padding-right: 19px;
		padding-left: 19px;
	}
	header .tree-left {
		left: -15px;
	}
	header .tree-right {
		right: -10px;
	}
}


/* footer
---------------------------------------------------------------------------*/
footer {
	position: relative;
	width: 100%;
	min-width: 1240px;
	margin: 0;
	padding: 465px 0 0;
	color: #F9F4E9;
}

.footer-inner {
	position: relative;
	background: url(img/share/bg-ground.jpg) left top;
	background-size: 288px 288px;
	width: 100%;
	min-height: 288px;
}

.footer-inner .inner {
	position: relative;
	box-sizing: border-box;
	width: 100%;
	max-width: 1280px;
	margin: 0 auto;
	padding: 70px 45px 35px 220px;
}

.footer-inner .inner:before {
	display: block;
	content: '';
	position: absolute;
	top: -322px;
	left: -227px;
	background: url(img/share/illust-footer-tree@2x.png) no-repeat;
	background-size: 439px 344px;
	width: 439px;
	height: 344px;
	z-index: -1;
}


/* .pagetop
------------------------------------*/
.pagetop {
	width: 165px;
	height: 198px;
	z-index: 1001;
}

.pagetop-top {
	position: fixed;
	bottom: -200px;
	right: 300px;
}

.pagetop-btm {
	position: absolute;
	top: -315px;
	right: 58px;
}

.pagetop a {
	display: block;
	width: 100%;
	height: 100%;
}

.pagetop > div,
.pagetop a > div {
	position: absolute;
}

.pagetop .bird {
	top: 0;
	left: 0;
}

.pagetop .bird1 {
	bottom: 0;
	left: 39px;
	z-index: 2;
}

.pagetop .bird2 {
	bottom: 15px;
	left: 41px;
	z-index: 3;
}

.pagetop .bird3 {
	bottom: 29px;
	left: 60px;
	z-index: 1;
}

.pagetop .txt1 {
	top: 140px;
	left: 12px;
	z-index: 4;
	opacity: 0;
}

.pagetop .txt1 img {
	display: block;
	transform: rotate(-45deg);
}

.pagetop .txt2 {
	top: 144px;
	right: 24px;
	z-index: 4;
	opacity: 0;
}

.pagetop-btm .bird2 { animation: bird2 2s linear infinite; }
.pagetop-btm .bird3 { animation: bird3 2s linear infinite; }
.pagetop-btm .txt1 { animation: txt1 2s ease-out infinite; }
.pagetop-btm .txt2 { animation: txt2 2s ease-out infinite; }

@keyframes bird3 {
	0% { margin-left: 0; }
	2% { margin-left: 4px; }
	4% { margin-left: 0; }
	100% { margin-left: 0; }
}

@keyframes bird2 {
	0% { margin-left: 0; }
	8% { margin-left: 0; }
	10% { margin-left: 4px; }
	12% { margin-left: 0; }
	100% { margin-left: 0; }
}

@keyframes txt2 {
	0% { margin-right: 6px; margin-top: 4px; opacity: 0; }
	1% { margin-right: 3px; margin-top: 0; opacity: 1; }
	2% { margin-right: 0; margin-top: -2px; opacity: 1; }
	20% { margin-right: -3px; margin-top: -4px; opacity: 0; }
	100% { margin-right: -3px; margin-top: -4px; opacity: 0; }
}

@keyframes txt1 {
	0% { margin-right: 6px; margin-top: 4px; opacity: 0; }
	10% { margin-right: 6px; margin-top: 4px; opacity: 0; }
	11% { margin-right: 3px; margin-top: 0; opacity: 1; }
	22% { margin-right: 0; margin-top: -2px; opacity: 1; }
	34% { margin-right: -3px; margin-top: -4px; opacity: 0; }
	100% { margin-right: -3px; margin-top: -4px; opacity: 0; }
}


/* .footer-illust
------------------------------------*/
.footer-illust {
	position: absolute;
	top: -235px;
	left: 180px;
}

.footer-inner .mole {
	position: absolute;
	top: 84px;
	left: 747px;
	transform-origin: left top;
	transform: scale(0.9);
}

.footer-inner .copyright {
	position: absolute;
	top: 72px;
	left: 54px;
	color: #E3D1B7;
	font-size: 13px;
	letter-spacing: 0.12em;
}

.footer-inner .logo {
	position: absolute;
	bottom: 45px;
	left: 48px;
}

.footer-inner .title-site {
	margin-bottom: 18px;
}

.footer-inner .title-site strong {
	display: inline-block;
	border-bottom: 1px solid rgba(249,244,233,0.4);
	padding-bottom: 5px;
	font-size: 13px;
	letter-spacing: 0.07em;
}

.footer-inner address {
	margin-bottom: 10px;
	font-size: 15px;
	line-height: 1.9;
	letter-spacing: 0.08em;
}

.footer-inner address span {
	font-size: 11px;
	padding-left: 2px;
}

.footer-link {
	margin-bottom: 22px;
}

.footer-link a {
	display: inline-block;
	box-sizing: border-box;
	background: url(img/share/ico-arrow-btn2.svg) no-repeat left top;
	min-height: 18px;
	margin-right: 14px;
	padding: 0 0 5px 26px;
	color: #EBD9BE;
	font-size: 14px;
	letter-spacing: 0.12em;
}

.footer-link a:last-of-type {
	margin-right: 0;
}

.footer-link a span {
	border-bottom: 1px solid #EBD9BE;
}

.footer-inner .tel {
	position: absolute;
	bottom: 40px;
	right: 45px;
}

.footer-inner .tel p {
	margin-left: 36px;
	color: #D5B483;
	letter-spacing: 0.1em;
}

.footer-inner .tel-num {
	margin-top: 10px;
}

.footer-inner .tel-num em {
	display: inline-block;
	margin-right: 7px;
	font-size: 15px;
	letter-spacing: 0.12em;
}

.footer-inner .tel-num strong {
	display: inline-block;
	font-size: 28px;
	letter-spacing: 0.1em;
}

.footer-inner address a,
.footer-inner .tel-num,
.footer-inner .tel-num strong a {
	color: #F9F4E9;
}

/* footer .gnav
------------------------------------*/
footer .gnav {
	margin: 0 -12px;
	white-space: nowrap;
}

footer .gnav > ul {
	display: -webkit-box;
	display: flex;
}

footer .gnav > ul > li > a,
footer .gnav > ul > li > span {
	display: block;
	margin-top: -10px;
	padding: 22px 12px 12px;
}

footer .gnav > ul > li > a em,
footer .gnav > ul > li > span em {
	display: block;
	margin-bottom: 8px;
	color: #EBD9BE;
	font-size: 21px;
	letter-spacing: 0.07em;
}

footer .gnav > ul > li > a strong,
footer .gnav > ul > li > span strong {
	color: #D5B483;
	font-size: 14px;
	letter-spacing: 0.1em;
}

footer .gnav > ul > li > a strong.let,
footer .gnav > ul > li > span strong.let {
	letter-spacing: 0.25em;
}


/* .footer-sns
------------------------------------*/
.footer-sns {
	position: absolute;
	bottom: 130px;
	right: 60px;
	width: 200px;
	height: 140px;
	cursor: pointer;
}

.footer-sns .sns-txt {
	position: absolute;
	top: 5px;
	right: 5px;
}

.footer-sns .sns-txt2 {
	position: absolute;
	top: 35px;
	left: 5px;
	transform-origin: right bottom;
	opacity: 0;
}

.footer-sns .sns li {
	position: absolute;
	top: 48px;
	left: 72px;
	opacity: 0;
}

.footer-sns .sns li:first-of-type {
	opacity: 1;
}

.footer-sns .sns li img {
	width: 56px;
	height: auto;
	-webkit-backface-visibility: hidden;
}

.footer-sns .mole2 {
	position: absolute;
	bottom: 0;
	left: 10px;
	width: 76px;
	height: 60px;
}

.footer-sns .mole2-1 {
	position: absolute;
	top: 0;
	left: 16px;
	transform-origin: left bottom;
	z-index: 1;
}

.footer-sns .mole2-2 {
	position: absolute;
	bottom: 0;
	left: 0;
	transform-origin: center bottom;
	z-index: 2;
}

.footer-sns .mole2-3 {
	position: absolute;
	bottom: 7px;
	left: 16px;
	transform-origin: left bottom;
	z-index: 1;
	opacity: 0;
}

.footer-sns .mole2-2.active {
	animation: mole2-2 .1s linear infinite;
}

@keyframes mole2-2 {
	0% { margin-bottom: 0; transform: scaleY(1); }
	50% { margin-bottom: 1px; transform: scaleY(1.05); }
	100% { margin-bottom: 0; transform: scaleY(1); }
}

.line-bird {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 0;
	transition: .1s ease-in;
	opacity: 0;
}

.footer-sns .line a > img {
	position: relative;
	z-index: 2;
	transition: .15s ease-out;
}

.footer-sns .line .on {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.footer-sns .line a:hover { opacity: 1; }
.footer-sns .line a:hover > img:not(.on) { opacity: 0.5; }

.footer-sns .line:hover .line-bird {
	top: -8px;
	right: -8px;
	opacity: 1;
}

.footer-sns .line:hover .line-bird {
	animation: line-bird .14s linear infinite;
}

@keyframes line-bird {
	0% { top: -8px; right: -8px; }
	50% { top: -5px; right: -5px; }
	100% { top: -8px; right: -8px; }
}

/* media query
-----------------------------------*/
@media (max-width: 1280px) {
	.footer-inner .logo {
		left: 44px;
	}
	.footer-inner .inner {
		padding-left: 225px;
	}
	.footer-sns,
	.footer-inner .tel {
		right: 35px;
	}
	.footer-inner .mole {
		left: 737px;
	}
}


/* contents
---------------------------------------------------------------------------*/
#mainContents {
	width: 100%;
	min-width: 1240px;
	margin: 0 auto;
	padding: 0;
	text-align: left;
	opacity: 0;
}

.marker {
	position: relative;
	z-index: 1;
}

.marker:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 1px;
	left: -8%;
	background-color: #FFE9AA;
	width: 114%;
	height: 4px;
	transform: skewY(-30deg) rotate(30deg);
	z-index: -1;
}


/* illist
---------------------------------------------------------------------------*/

/* .woodpecker
------------------------------------*/
.woodpecker {
	width: 33px;
	height: 62px;
}

.woodpecker img {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	transform-origin: right center;
}

.woodpecker .img1 {
	opacity: 0;
}

.woodpecker { animation: woodpecker 4s linear infinite; }
.woodpecker .img1 { animation: woodpecker1 4s linear infinite; }
.woodpecker .img2 { animation: woodpecker2 4s linear infinite; }

@keyframes woodpecker {
	0% { transform: rotateZ(0deg); }
	2% { transform: rotateZ(5deg); }
	4% { transform: rotateZ(0deg); }
	6% { transform: rotateZ(5deg); }
	8% { transform: rotateZ(0deg); }
	10% { transform: rotateZ(5deg); }
	12% { transform: rotateZ(0deg); }
	14% { transform: rotateZ(5deg); }
	16% { transform: rotateZ(0deg); }
	18% { transform: rotateZ(5deg); }
	20% { transform: rotateZ(0deg); }
	22% { transform: rotateZ(5deg); }
	24% { transform: rotateZ(0deg); }
	26% { transform: rotateZ(5deg); }
	28% { transform: rotateZ(0deg); }
	30% { transform: rotateZ(5deg); }
	32% { transform: rotateZ(0deg); }
	34% { transform: rotateZ(5deg); }
	36% { transform: rotateZ(0deg); }
	38% { transform: rotateZ(5deg); }
	40% { transform: rotateZ(0deg); }
	100% { transform: rotateZ(0deg); }
}

@keyframes woodpecker1 {
	0% { opacity: 0; }
	2% { opacity: 1; }
	4% { opacity: 0; }
	6% { opacity: 1; }
	8% { opacity: 0; }
	10% { opacity: 1; }
	12% { opacity: 0; }
	14% { opacity: 1; }
	16% { opacity: 0; }
	18% { opacity: 1; }
	20% { opacity: 0; }
	22% { opacity: 1; }
	24% { opacity: 0; }
	26% { opacity: 1; }
	28% { opacity: 0; }
	30% { opacity: 1; }
	32% { opacity: 0; }
	34% { opacity: 1; }
	36% { opacity: 0; }
	38% { opacity: 1; }
	40% { opacity: 0; }
	100% { opacity: 0; }
}

@keyframes woodpecker2 {
	0% { opacity: 1; }
	2% { opacity: 0; }
	4% { opacity: 1; }
	6% { opacity: 0; }
	8% { opacity: 1; }
	10% { opacity: 0; }
	12% { opacity: 1; }
	14% { opacity: 0; }
	16% { opacity: 1; }
	18% { opacity: 0; }
	20% { opacity: 1; }
	22% { opacity: 0; }
	24% { opacity: 1; }
	26% { opacity: 0; }
	28% { opacity: 1; }
	30% { opacity: 0; }
	32% { opacity: 1; }
	34% { opacity: 0; }
	36% { opacity: 1; }
	38% { opacity: 0; }
	40% { opacity: 1; }
	100% { opacity: 1; }
}


/* .chameleon
------------------------------------*/
.chameleon {
	width: 72px;
	height: 75px;
}

.chameleon img {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	transform-origin: center center;
}

.chameleon .img1 {
	z-index: 1;
}

.chameleon .img2 {
	opacity: 0;
	z-index: 2;
}

.chameleon .img3 {
	top: 4px;
	right: 68px;
	transform-origin: right bottom;
	z-index: 0;
	opacity: 0;
}


/* slider
---------------------------------------------------------------------------*/

/* .slider-main
------------------------------------*/
.img-main {
	overflow: hidden;
	position: relative;
	width: 100%;
	max-height: 780px;
	margin-bottom: 20px;
	z-index: 0;
}

.img-main:after {
	display: block;
	content: '';
	position: absolute;
	left: 0;
	background-repeat: no-repeat;
	width: 100%;
	z-index: 999;
}

.img-main:after {
	bottom: 0;
	background-image: url(img/share/slide-arc-btm.png);
	background-position: center top;
	background-size: 100% 56px;
	height: 56px;
}

.slider-main,
.slider-main .slick-list,
.slider-main .slick-track {
	width: 100% !important;
	height: 100% !important;
	max-height: 780px;
}

.slider-main .slick-track {
	padding-bottom: 60%;
}

.slider-main .inner {
	overflow: hidden;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	max-height: 780px;
}

.slick-slider {
	z-index: 998;
}


/* .slick-dots
------------------------------------*/
.slider-main .slick-dots {
	position: absolute;
	bottom: 40px;
	left: 20px;
	z-index: 998;
}

.slider-main .slick-dots li {
	position: relative;
	width: 30px;
	height: 30px;
}

.slider-main .slick-dots li:first-of-type:last-of-type {
	display: none;
}

.slider-main .slick-dots button {
	position: relative;
	width: 30px;
	height: 30px;
	text-indent: -9999px;
	transition: .15s linear;
}

.slider-main .slick-dots button:after {
	display: block;
	content: '';
	position: absolute;
	top: 11px;
	left: 11px;
	background: #FFFFFF;
	border-radius: 50%;
	width: 8px;
	height: 8px;
}

.slider-main .slick-dots button:hover:after,
.slider-main .slick-dots .slick-active button:after {
	background: #ED7829;
}


/* .img-scroll
------------------------------------*/
.img-scroll-wrap {
	overflow: hidden;
	width: 100%;
	height: 626px;
}

.img-scroll-wrap .simply-scroll-container {
	position: relative;
}

.img-scroll-wrap .simply-scroll-clip {
	position: relative;
	overflow: hidden;
}

.img-scroll-wrap .simply-scroll-list {
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.img-scroll-wrap .simply-scroll-list li {
	float: left;
	overflow: hidden;
	width: 470px;
	height: 310px;
	margin: 0 3px 6px;
	padding: 0;
}

.img-scroll-wrap .simply-scroll-list li img {
	display: block;
}


/* nav
---------------------------------------------------------------------------*/

/* .pnav
------------------------------------*/
.pnav {
	text-align: center;
}

.pnav li {
	display: inline-block;
	margin: 0 4px;
}


/* list
---------------------------------------------------------------------------*/

/* .list-dot
------------------------------------*/
.list-dot li,
.sec-job .detail-inner dd li {
	position: relative;
	margin: 0 0 6px 3px;
	padding-left: 14px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.list-dot li:last-of-type,
.sec-job .detail-inner dd li:last-of-type {
	margin-bottom: 0;
}

.list-dot li:before,
.sec-job .detail-inner dd li:before {
	display: block;
	content: '・';
	position: absolute;
	top: 0;
	left: 0;
}

/* .list-attention
------------------------------------*/
.list-attention li {
	position: relative;
	margin: 0 0 6px 3px;
	padding-left: 15px;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.list-attention li:last-of-type {
	margin-bottom: 0;
}

.list-attention li:before {
	display: block;
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
}

/* .list-bar
------------------------------------*/
.list-bar {
	overflow: hidden;
}

.list-bar li {
	position: relative;
	float: left;
	box-sizing: border-box;
	background-color: #FFFFFF;
	border-radius: 22px;
	width: 49%;
	margin: 1% 2% 0 0;
	padding: 15px 16px 17px 22px;
/* 	color: #403B33; */
	color: #EA5704;
	font-size: 14px;
	text-align: center;
	letter-spacing: 0.12em;
	white-space: nowrap;
}

.list-bar li:nth-child(even) {
	margin-right: 0;
}

.list-bar li:nth-of-type(1),
.list-bar li:nth-of-type(2) {
	margin-top: 0;
}

.list-bar li:before,
.list-bar li:after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	background-color: #CBBA96;
	border-radius: 50%;
	width: 7px;
	height: 7px;
	transform: translateY(-50%);
}

.list-bar li:before { left: 15px; }
.list-bar li:after { right: 15px; }

.list-bar.odd li {
	float: none;
	width: 100%;
	margin: 2% 0 0;
	letter-spacing: 0.15em;
}


/* dl
---------------------------------------------------------------------------*/

/* dl-common
------------------------------------*/
.dl-common > div {
	display: -webkit-box;
	display: flex;
	border-top: 1px solid #EBE8DA;
	padding: 15px 25px;
	line-height: 1.6;
}

.dl-common > div:first-of-type:last-of-type {
	border-top: none;
	padding-top: 0;
	padding-bottom: 0;
}

.dl-common > div.border-btm {
	border-bottom: 1px solid #EBE8DA !important;
}

.dl-common > div.pd {
	padding-top: 25px;
	padding-bottom: 30px;
}

.dl-common > div.pd:last-of-type {
	padding-bottom: 0;
}

.dl-common > div > dt {
	width: 170px;
	min-width: 170px;
	color: #EA5704;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.dl-common > div > dd.pt {
	padding-top: 3px;
}

.dl-common > div > dd p {
	margin-bottom: 8px;
/* 	line-height: 1.7; */
}

.dl-common > div > dd .attention {
	display: block;
	margin-top: 3px;
	padding-bottom: 3px;
	font-size: 12px;
	letter-spacing: 0.04em;
}

.dl-common > div > dd .attention.inline {
	display: inline-block;
}

/* dl-s
------------------------------------*/
.dl-s > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 20px;
	line-height: 1.6;
}

/*
.dl-s > div.mt {
	margin-top: 20px;
}
*/

.dl-s > div.mb {
	margin-bottom: 8px;
}

.dl-s > div:last-of-type {
	margin-bottom: 0;
}

.dl-s > div.pd {
	padding-top: 25px;
	padding-bottom: 30px;
}

.dl-s > div > dt {
	width: 80px;
	min-width: 80px;
	color: #EA5704;
	font-size: 14px;
	letter-spacing: 0.15em;
}

.dl-s > div > dd p {
	margin-bottom: 8px;
	line-height: 1.7;
}

/* dl-s-mono
------------------------------------*/
.dl-s-mono > div {
	display: -webkit-box;
	display: flex;
	margin-bottom: 8px;
	line-height: 1.6;
}

.dl-s-mono > div.pd {
	padding-top: 25px;
	padding-bottom: 30px;
}

.dl-s-mono > div > dt {
	width: 80px;
	min-width: 80px;
	color: #86693F;
	font-size: 14px;
	letter-spacing: 0.15em;
}

.dl-s-mono > div > dd p {
	margin-bottom: 8px;
	line-height: 1.7;
}

.dl-s-mono > div > dd p span {
	display: block;
	font-size: 12px;
	letter-spacing: 0.06em;
}

/* .dl-num
------------------------------------*/
.dl-num {
	margin: 32px 0;
}

.dl-num:first-child {
	margin-top: 0;
}

.dl-num:last-child {
	margin-bottom: 0;
}

.dl-num > div {
	margin-bottom: 15px;
	padding-left: 45px;
	font-size: 15px;
	letter-spacing: 0.15em;
}

.dl-num > div:last-of-type {
	margin-bottom: 0;
}

.dl-num dt {
	position: relative;
	margin-bottom: 2px;
	color: #EA5704;
}

.dl-num dt i {
	display: block;
	position: absolute;
	top: 1px;
	left: -45px;
}

.dl-num dt i:after {
	display: block;
	content: '';
	position: absolute;
	top: 12px;
	left: 16px;
	background-color: #EA5704;
	width: 11px;
	height: 1px;
	opacity: 0.4;
}


/* title
---------------------------------------------------------------------------*/

/* .title-page
------------------------------------*/
.title-page {
	margin-bottom: 40px;
	text-align: center;
	white-space: nowrap;
}

.title-page .h1 {
	margin-bottom: 18px;
}

.title-page .h1 em {
	position: relative;
	display: inline-block;
	margin-bottom: 20px;
	color: #EE8319;
	font-size: 15px;
	letter-spacing: 0.15em;
}

.title-page .h1 em:after {
	display: block;
	content: '';
	position: absolute;
	bottom: -6px;
	left: 0;
	background-color: #F5B871;
	width: calc(100% - 2px);
	height: 1px;
	opacity: 0.6;
}

.title-page .h1 strong {
	display: block;
	color: #EA5704;
	font-size: 30px;
	line-height: 1.6;
	letter-spacing: 0.15em;
}

.title-page .h2 {
	color: #EE8319;
	font-size: 14px;
	letter-spacing: 0.14em;
}


/* .title-page-en
------------------------------------*/
.title-page-en {
	margin-bottom: 55px;
	text-align: center;
	white-space: nowrap;
}

.title-page-en h1 > a {
	display: inline-block;
}

.title-page-en h1 em {
	display: block;
	margin-bottom: 18px;
	color: #EA5704;
	font-size: 39px;
	letter-spacing: 0.03em;
}

.title-page-en h1 strong {
	display: block;
	color: #EE8319;
	font-size: 15px;
	letter-spacing: 0.18em;
}


/* .title
------------------------------------*/
.title {
	color: #EA5704;
	line-height: 1.6;
}

.title em {
	display: block;
	margin-bottom: 6px;
	color: #EE8319;
	font-size: 13px;
	letter-spacing: 0.15em;
}

.title strong {
	display: block;
	margin-left: -1px;
	color: #EA5704;
	font-size: 22px;
	letter-spacing: 0.13em;
}

.title.size-l strong {
	font-size: 25px;
}


/* table
---------------------------------------------------------------------------*/

/* .table-common
------------------------------------*/
.table-common {
	width: 100%;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

.table-common tr {
	border-bottom: 1px solid #E6E6E6;
}

.table-common tr:first-of-type {
	border-top: 1px solid #E6E6E6;
}

.table-common th {
	background-color: #FFF3E7;
	width: 125px;
	padding: 7px 15px 8px;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.1em;
}

.table-common td {
	padding: 9px 15px 10px;
}


/* box
---------------------------------------------------------------------------*/

/* .flex
------------------------------------*/
.flex {
	display: -webkit-box;
	display: flex;
}

.flex-center {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
}


/* .box-border-top
------------------------------------*/
.box-border-top {
	position: relative;
	box-sizing: border-box;
	background-color: #FFFFFF;
	border-radius: 17px;
	padding: 56px 50px 50px;
}

.box-border-top:before {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 20px;
	background-color: #FFD16A;
	border-radius: 3px;
	width: calc(100% - 40px);
	height: 6px;
}

.box-border-top.size-s {
	border-radius: 6px;
	padding: 34px 34px 30px;
}

.box-border-top.size-s:before {
	left: 13px;
	width: calc(100% - 26px);
	height: 5px;
}


/* .box-brown
------------------------------------*/
.box-brown {
	box-sizing: border-box;
	background-color: #F4EEDD;
	border-radius: 17px;
	padding: 25px;
}


/* .sec-center
---------------------------------------------------------------------------*/
.sec-center {
	text-align: center;
}

.sec-center h2 {
	margin-bottom: 20px;
	color: #EA5704;
	line-height: 1.6;
}

.sec-center h2 em {
	display: block;
	margin-bottom: 7px;
	color: #EE8319;
	font-size: 15px;
	letter-spacing: 0.18em;
}

.sec-center.size-s h2 em {
	margin-bottom: 10px;
}

.sec-center h2 strong {
	display: block;
	color: #EA5704;
	font-size: 25px;
	letter-spacing: 0.18em;
}

.sec-center.size-l h2 strong {
	font-size: 28px;
	letter-spacing: 0.12em;
}

.sec-center.size-s h2 strong {
	font-size: 23px;
}

.sec-center p {
	margin-bottom: 12px;
	line-height: 2;
	letter-spacing: 0.12em;
	font-size: 15px;
}

.sec-center.size-l p {
	font-size: 16px;
}


/* .service-list
---------------------------------------------------------------------------*/
.service-list {
	position: relative;
	width: 1178px;
	margin: -140px auto 0;
	padding-top: 140px;
}

.service-list .cloud1,
.service-list .cloud2,
.service-list .cloud3 {
	position: absolute;
	z-index: 1;
}

.service-list .cloud1 { top: 80px; left: 110px; }
.service-list .cloud2 { top: 110px; right: 80px; }
.service-list .cloud3 { top: 300px; left: -10px; }

.service-list .cloud1:after {
	display: block;
	content: '';
	position: absolute;
	bottom: -39px;
	left: 0;
	background-color: #FBF8E9;
	width: 100%;
	height: 40px;
}

.service-list .giraffe1 {
	position: absolute;
	top: 8px;
	left: 150px;
	transform-origin: left bottom;
	z-index: 0;
}

.service-list .giraffe1-txt {
	position: absolute;
	top: 65px;
	left: 290px;
	z-index: 2;
	opacity: 0;
}

.service-list .giraffe2 {
	position: absolute;
	top: 55px;
	right: 115px;
	transform-origin: right bottom;
	z-index: 0;
}

.service-list .giraffe2 img {
	display: block;
	transform: scaleX(-1);
}

.service-list .boar {
	position: absolute;
	bottom: -95px;
	right: 10px;
	z-index: 2;
}

.service-list h2 {
	margin-bottom: 25px;
	text-align: center;
}

.service-list h2 strong {
	display: block;
	margin-bottom: 5px;
	color: #EA5704;
	font-size: 40px;
	letter-spacing: 0.05em;
}

.service-list h2 em {
	display: block;
	color: #EE8319;
	font-size: 16px;
	letter-spacing: 0.2em;
}

.service-list h2 + p {
	text-align: center;
	letter-spacing: 0.18em;
	font-size: 16px;
}


/* .service-main
------------------------------------*/
.service-list .service-main {
	position: relative;
	width: 1085px;
	margin: 115px auto 65px;
}

.service-list .chicken,
.service-list .monkey,
.service-list .raccoon {
	position: absolute;
	z-index: 2;
}

.service-list .chicken { top: -90px; left: 30px; }
.service-list .monkey { bottom: 70px; left: -40px; z-index: 0; }
.service-list .raccoon { top: -90px; right: 40px; }

.service-list .raccoon img {
	width: 61px;
	height: auto;
}

.service-list .inner-wrap {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.service-list .service-main .inner {
	position: relative;
	box-sizing: border-box;
	background-color: #FFFFFF;
	border-radius: 10px;
	width: 256px;
	padding: 26px 23px 90px;
}

.service-list .service-main .inner .roof {
	display: block;
	position: absolute;
	top: -50px;
	left: -7px;
	background: url(img/share/roof@2x.png) no-repeat;
	background-size: 266px 57px;
	width: 318px;
	height: 62px;
	transform-origin: center bottom;
	z-index: 1;
}

.service-list .service-main figure {
	margin-bottom: 65px;
}

.service-list .service-main figure a,
.service-list .service-sub figure a {
	display: block;
}

.service-list .service-main figure img,
.service-list .service-sub figure img {
	border-radius: 4px;
}

.service-list .service-main h3 {
	position: relative;
	margin-bottom: 26px;
	text-align: center;
}

.service-list .service-main h3 strong {
	display: block;
	position: absolute;
	top: -30px;
	left: 0;
	width: 100%;
	color: #EA5704;
	font-size: 19px;
	line-height: 1.5;
	letter-spacing: 0.18em;
}

.service-list .service-main h3 strong.line2 {
	top: -48px;
	font-size: 16px;
	line-height: 1.45;
	letter-spacing: 0.12em;
}

.service-list .service-main h3 strong.size-s {
	top: -50px;
	font-size: 16px;
	letter-spacing: 0.12em;
}

.service-list .service-main .btn4 + h3 strong {
	top: -35px;
}

.service-list .service-main h3 strong.size-s span {
	font-size: 12px;
}

.service-list .service-main h3 em,
.service-list .service-sub h3 em {
	display: inline-block;
	color: #EE8319;
	font-size: 11px;
	letter-spacing: 0.12em;
	white-space: nowrap;
}

.service-list .service-main .btn4 + h3 em {
	transform: translateY(-6px);
}

.service-list .service-main h4,
.service-list .service-sub h4 {
	margin-bottom: 14px;
	color: #EA5704;
	font-size: 16px;
	letter-spacing: 0.1em;
}

.service-list .service-main h4 {
	text-align: center;
}

.service-list .service-main p {
	padding: 0 2px;
	font-size: 14px;
	text-align: justify;
	line-height: 1.7;
	letter-spacing: 0.02em;
}

.service-list .service-main .btn {
	position: absolute;
	bottom: 28px;
	left: 50%;
	width: calc(100% - 24px);
	transform: translateX(-50%);
}

.service-list .service-main .btn a {
	display: block;
	padding-top: 12px;
	padding-bottom: 13px;
}

.service-list .service-main .btn.let a {
	letter-spacing: 0.08em;
}

.service-list .service-main .illust {
	position: absolute;
	bottom: -67px;
	left: 100px;
	z-index: 2;
	transform-origin: center bottom;
}

/* .service-sub
------------------------------------*/
.service-list .service-sub {
	position: relative;
	display: flex;
	justify-content: space-between;
	width: 1085px;
	margin: 0 auto;
}

.service-list .service-sub .inner {
	padding: 42px 28px 32px;
}

.service-list .service-sub .service-sub1 {
	width: 354px;
	min-width: 354px;
}

.service-list .service-sub .service-sub2 {
	display: flex;
	flex-wrap: wrap;
	width: 721px;
	min-width: 721px;
	padding-right: 41px;
	padding-left: 41px;
}

.service-list .box-border-top:before {
	left: 12px;
	background-color: #E6610B;
	width: calc(100% - 24px);
}

.service-list .service-sub h3 {
	width: 100%;
	margin-bottom: 30px;
}

.service-list .service-sub h3 strong {
	display: block;
	margin-bottom: 10px;
	color: #EA5704;
	font-size: 18px;
	letter-spacing: 0.12em;
}

.service-list .service-sub .btn,
.service-list .service-sub .btn a {
	display: block;
}

.service-list .service-sub1 h3 {
	text-align: center;
}

.service-list .service-sub1 figure {
	margin-bottom: 25px;
	text-align: center;
}

.service-list .service-sub1 h4 {
	margin-bottom: 22px;
	font-size: 17px;
	text-align: center;
}

.service-list .service-sub1 p {
	line-height: 1.85;
	letter-spacing: 0.02em;
	text-align: justify;
}

.service-list .service-sub1 .btn {
	margin-top: 28px;
}

.service-list .service-sub2 figure {
	width: 141px;
	min-width: 141px;
}

.service-list .service-sub2 .txt {
	box-sizing: border-box;
	width: calc(100% - 141px);
	padding: 0 0 0 40px;
}

.service-list .service-sub2 .inner-s {
	position: relative;
	margin-bottom: 22px;
}

.service-list .service-sub2 h5 {
	margin-bottom: 12px;
	font-size: 12px;
	letter-spacing: 0.08em;
}

.service-list .service-sub2 h5 a {
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.2em;
}

.service-list .service-sub2 h4 {
	margin-bottom: 16px;
	font-size: 18px;
	letter-spacing: 0.06em;
}

.service-list .service-sub2 h4 a {
	display: inline-block;
	position: relative;
	padding: 0 26px 0 0;
	color: #EA5704;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.1em;
}

.service-list .service-sub2 h4 a:after {
	display: block;
	content: '';
	position: absolute;
	top: 1px;
	right: 0;
	background: url(img/share/btn-arrow-orange.svg) no-repeat left top / 100% auto;
	width: 18px;
	height: 18px;
}

.service-list .service-sub2 p {
	line-height: 1.75;
	letter-spacing: 0.04em;
	text-align: justify;
}

.service-list .service-sub2 h6 {
	display: inline-block;
	border: 1px solid #AEA08B;
	border-radius: 4px;
	position: absolute;
	top: 24px;
	right: 0;
	padding: 2px 3px 4px 5px;
	font-size: 13px;
	letter-spacing: 0.06em;
	white-space: nowrap;
}

.service-list .service-sub2 .btn {
	margin-top: 20px;
}


/* .service-info
---------------------------------------------------------------------------*/
.service-info {
	width: 940px;
	margin: 0 auto;
}

.info-inner {
	background: url(img/share/line-dot.svg) no-repeat left bottom / 905px 7px;
	margin-bottom: 35px;
	padding-bottom: 45px;
}

.info-inner:last-of-type {
	background: none;
	margin-bottom: 0;
	padding-bottom: 0;
}


/* .info-title
------------------------------------*/
.info-title {
	margin-bottom: 35px;
	padding: 20px 0 0 20px;
}

/*
.info-title.side {
	position: relative;
	padding-left: 235px;
}
*/

.info-title h2 {
	margin-bottom: 20px;
	color: #EA5704;
	font-size: 22px;
	letter-spacing: 0.12em;
}

/*
.info-title.side h2 {
	position: absolute;
	top: 21px;
	left: 10px;
	font-size: 19px;
	line-height: 1.4;
}
*/

.info-title.side h2 {
	letter-spacing: 0.08em;
}

.info-title.side h2 span {
	padding-left: 4px;
	font-size: 16px;
}

.info-title h2 span.attention {
	padding-left: 13px;
	color: #4E2F14;
	font-size: 13px;
	letter-spacing: 0.07em;
}

.info-title p {
	font-size: 15px;
	letter-spacing: 0.08em;
}


/* .info-title-center
------------------------------------*/
.info-title-center {
	margin-bottom: 50px;
	text-align: center;
}

.info-title-center h2 {
	margin-bottom: 25px;
	color: #EE8319;
	font-size: 17px;
	letter-spacing: 0.18em;
}

.info-title-center h3 {
	color: #EA5704;
	font-size: 20px;
	line-height: 1.7;
	letter-spacing: 0.15em;
}


/* .info-detail
------------------------------------*/
.info-detail dd h4 {
	clear: both;
	margin-bottom: 10px;
	padding-top: 24px;
	color: #EA5704;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.info-detail dd h4.pts {
	padding-top: 10px;
}

.info-detail dd h4:first-of-type {
	padding-top: 0;
}

.info-detail dd ul {
	margin-bottom: 12px;
}

.info-detail dd ul.side {
	float: left;
	margin-right: 10px;
}

.info-detail dd ul.last {
	margin-right: 0;
}

.info-detail dd ul + p {
/* 	margin-left: 15px; */
	margin-top: 7px;
}

.info-detail dd li {
	display: inline-block;
	margin-right: 10px;
/* 	margin-bottom: 3px; */
	padding-left: 14px;
	letter-spacing: 0.08em;
}

.info-detail dd .side li {
	display: block;
}

.info-detail dd li a {
	color: #EA5704;
	text-decoration: underline;
}

.info-detail dd p.attention {
	margin-top: 12px;
}

.info-detail dd p + p.attention {
	margin-top: -2px;
}

.info-detail .tel {
	margin-top: 4px;
	color: #EA5704;
	font-size: 19px;
	letter-spacing: 0.03em;
}

.info-detail .tel strong {
	padding-left: 1px;
	font-size: 23px;
}

.info-detail .btn {
	margin-bottom: 5px;
}

.info-detail .btn.mt {
	margin-top: 15px;
}

.info-detail .btn.mtl {
	margin-top: 25px;
}

.info-detail .btn-s {
	line-height: 1;
}


/* .outline
---------------------------------------------------------------------------*/
.outline {
	padding-top: 65px;
}

.outline .info-detail dd li {
	display: block;
	margin-bottom: 10px;
	letter-spacing: 0.1em;
}

.outline .info-detail dd .mb li {
	margin-bottom: 5px;
}

.outline .dl-common > div {
	padding-top: 25px;
	padding-bottom: 25px;
}

.outline .dl-common > div > dt {
	width: 220px;
	min-width: 220px;
	font-size: 17px;
}


/* .news-list
---------------------------------------------------------------------------*/
.news-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: 1036px;
	margin: 0 auto;
}

.news-list article {
	position: relative;
	width: 226px;
	margin: 0 44px 65px 0;
}

.news-list article:nth-of-type(4n) {
	margin-right: 0;
}

.news-list article a {
	display: block;
}

.news-list figure {
	overflow: hidden;
	position: relative;
	border-radius: 6px;
	width: 100%;
	margin-bottom: 18px;
	padding-bottom: 75.4%;
}

.news-list figure img {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	min-width: 100%;
	max-width: 100%;
	height: auto;
	transform: translateY(-50%);
}

.news-list time {
	display: block;
	position: absolute;
	top: 0;
	left: -19px;
	color: #EE8319;
	font-size: 11px;
	letter-spacing: 0.06em;
	font-feature-settings: 'palt' 0;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	white-space: nowrap;
}

.news-list .category {
	margin-bottom: 5px;
}

.news-list .category li {
	display: inline-block;
	background: #EE8319;
	border-radius: 5px;
	margin: 0 0 4px;
	padding: 3px 5px 4px 7px;
	color: #FBF8E9;
	font-size: 12px;
	letter-spacing: 0.08em;
	white-space: nowrap;
}

.news-list .category li:last-of-type {
	margin-right: 0;
}

.news-list h2 {
	margin-bottom: 7px;
	color: #EA5704;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.news-list p {
	font-size: 13px;
	text-align: justify;
	line-height: 1.7;
	letter-spacing: 0.02em;
	word-break: break-all;
}


/* .wp-pagenavi
---------------------------------------------------------------------------*/
.wp-pagenavi {
	margin-top: 0;
	text-align: center;
	font-size: 16px;
}

.wp-pagenavi a,
.wp-pagenavi .extend {
	display: inline-block;
	margin: 0 3px;
	padding: 10px;
}

.wp-pagenavi .current {
	position: relative;
	display: inline-block;
	margin: 0 3px;
	padding: 10px;
	color: #FFFFFF;
}

.wp-pagenavi .current:after {
	display: block;
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	background-color: #EA5704;
	border-radius: 50%;
	width: 26px;
	height: 26px;
	margin-top: 1px;
	transform: translate(-50%,-50%);
	z-index: -1;
}

.wp-pagenavi a.first,
.wp-pagenavi a.last,
.wp-pagenavi a.previouspostslink,
.wp-pagenavi a.nextpostslink {
	letter-spacing: 0.1em;
}


/* error
---------------------------------------------------------------------------*/
#errorContents {
	padding: 80px 0 0;
}


/* modal
---------------------------------------------------------------------------*/
.modal-bg {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	background-color: #FFF4E3;
	width: 100%;
	height: 100vh;
	z-index: 100001;
	cursor: pointer;
	opacity: 0.88;
	opacity: 0;
}

.modal-close-wrap {
	display: none;
	position: fixed;
	top: 80px;
	right: 50px;
	transform: scale(1.7);
	z-index: 100002;
	cursor: pointer;
	transition: .2s ease-out;
}

.modal-close-wrap:hover {
	opacity: 0.8;
}

.modal-close {
	transform-origin: right bottom;
	opacity: 0;
}

.modal-close img {
	width: 100%;
	height: auto;
}

.modal-close .head {
	display: block;
	position: absolute;
	top: -30px;
	right: -13px;
	width: 48px;
	transform-origin: center top;
	transform: rotate(14deg);
	z-index: 2;
}

.modal-close .neck {
	display: block;
	position: absolute;
	top: -8px;
	right: 14px;
	width: 84px;
	transform-origin: right bottom;
	transform: scaleX(-1);
	z-index: 0;
}

.modal-nav-close {
	position: relative;
	box-sizing: border-box;
	background-color: #EA5704;
	border-radius: 50%;
	width: 42px;
	height: 42px;
	z-index: 1;
}

.modal-nav-close div,
.modal-nav-close span {
	display: inline-block;
	box-sizing: border-box;
}

.modal-nav-close div {
	position: relative;
	width: 23px;
	height: 14px;
	margin: 15px 0 0 10px;
}

.modal-nav-close span {
	position: absolute;
	left: 0;
	background-color: #FFFFFF;
	border-radius: 4px;
	width: 100%;
	height: 2px;
}

.modal-nav-close span:nth-of-type(1) { top: 0; }
.modal-nav-close span:nth-of-type(2) { bottom: 0; }
.modal-nav-close span:nth-of-type(1) { transform: translateY(6px) rotate(-45deg); }
.modal-nav-close span:nth-of-type(2) { transform: translateY(-6px) rotate(45deg); }


/* .modal-wrap
------------------------------------*/
.modal-wrap {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	box-sizing: border-box;
	background-color: #FFFFFF;
	width: 100%;
	height: 100vh;
	max-height: calc(100vh - 190px);
	padding: 20px 10px;
	z-index: 100002;
	opacity: 0;
}

.modal-header {
	position: relative;
	transform: translateY(-10px);
}

.modal-header:before {
	display: block;
	content: '';
	position: absolute;
	top: -19px;
	left: 50%;
	background: url(img/share/illust-wood.svg) no-repeat;
	background-size: 932px 19px;
	width: 932px;
	height: 19px;
	transform: translateX(-50%);
	z-index: 2;
}

.modal-footer:before {
	display: block;
	content: '';
	position: absolute;
	bottom: -10px;
	left: 50%;
	background: url(img/share/illust-wood.svg) no-repeat;
	background-size: 932px 19px;
	width: 932px;
	height: 19px;
	transform: translateX(-50%);
	z-index: 2;
}

.modal-wrap .inner {
	position: relative;
	overflow-x: auto;
	overflow-y: scroll;
	box-sizing: border-box;
	height: 100%;
	padding: 50px 45px 60px 45px;
}

.modal-wrap .inner::-webkit-scrollbar {
	width: 3px;
}

.modal-wrap .inner::-webkit-scrollbar-track {
	border-radius: 3px;
	background: #FFFFFF;
}

.modal-wrap .inner::-webkit-scrollbar-thumb {
	border-radius: 3px;
	background: #FFD16A;
}

.modal-wrap .inner-s {
	position: relative;
}

.modal-wrap .raccoon {
	display: block;
	position: absolute;
	top: -76px;
	left: -26px;
	z-index: 2;
}

.modal-wrap .chameleon {
	position: absolute;
	top: -51px;
	right: -34px;
	z-index: 2;
}

/*
.modal-wrap .squirrel {
	position: absolute;
	bottom: -99px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
}

.modal-wrap .squirrel img {
	display: inline-block;
	margin: 0 10px;
	width: 104px;
	height: auto;
	transform-origin: center bottom;
}
*/


/* .sec-news
---------------------------------------------------------------------------*/
.sec-news {
	width: 1036px;
	margin: 0 auto;
}

.sec-news > h2 {
	margin-bottom: 40px;
	text-align: center;
}

.sec-news > h2 a {
	display: inline-block;
}

.sec-news > h2 em {
	display: block;
	margin-bottom: 12px;
	color: #EA5704;
	font-size: 32px;
	letter-spacing: 0.12em;
}

.sec-news > h2 strong {
	display: block;
	margin-left: -4px;
/* 	color: #221716; */
	color: #EE8319;
	font-size: 18px;
	letter-spacing: 0.22em;
}

.sec-news > h2 + p {
	font-size: 15px;
	text-align: center;
	letter-spacing: 0.12em;
}

.sec-news .news-list {
	position: relative;
	margin-top: 50px;
}

.news-list article:after {
	display: block;
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-color: #FBF8E9;
	width: 100%;
	padding-bottom: 75.5%;
	z-index: -1;
}

.sec-news .news-list article:nth-of-type(1):before {
	display: block;
	content: '';
	position: absolute;
	top: 100px;
	left: -31px;
	background: url(img/share/illust-monkey.svg) no-repeat;
	background-size: 100% auto;
	width: 36px;
	height: 67px;
	z-index: -2;
}

.sec-news .news-list article:nth-of-type(7):before {
	display: block;
	content: '';
	position: absolute;
	top: 113px;
	left: -25px;
	background: url(img/share/illust-monkey-left.svg) no-repeat;
	background-size: 28px 54px;
	width: 28px;
	height: 54px;
	z-index: 2;
}

.sec-news .news-list article:nth-of-type(4):before {
	display: block;
	content: '';
	position: absolute;
	top: 126px;
	right: -36px;
	background: url(img/share/illust-monkey4@2x.png) no-repeat;
	background-size: 70px 40px;
	width: 70px;
	height: 40px;
	z-index: -2;
}


/* .related-news
---------------------------------------------------------------------------*/
.related-news {
	width: 1036px;
	margin: 100px auto 60px;
}

.related-news:last-child {
	margin-top: 120px;
	margin-bottom: 0;
}

.related-news + .service-list {
	margin-top: 0;
}

.related-news > h2 {
	margin-bottom: 25px;
	color: #EA5704;
	font-size: 18px;
	letter-spacing: 0.12em;
}

.related-news > h2 i {
	padding-right: 4px;
}


/* .slide-illust
---------------------------------------------------------------------------*/
.slide-illust.rabbit > div {
	position: relative;
	float: left;
	width: 50px;
	height: 114px;
	margin: 0 10px;
}

.slide-illust.rabbit > div span {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	transform-origin: center bottom;
}

.slide-illust.rabbit .img2 {
	opacity: 0;
}


/* .bnr-recruit
---------------------------------------------------------------------------*/
.bnr-recruit {
	position: relative;
	background-color: #FFFFFF;
	border-radius: 26px;
	width: 1080px;
	margin: 160px auto 0;
}

.bnr-recruit a {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	justify-content: space-between;
}

.bnr-recruit a:hover {
	opacity: 0.7;
}

.bnr-recruit .slider-img {
	overflow: hidden;
	border-radius: 26px 0 0 26px;
	width: 485px;
	min-width: 485px;
}

.bnr-recruit .txt {
	box-sizing: border-box;
	width: 100%;
	padding: 8px 0 0 44px;
}

.bnr-recruit .txt .title {
	position: absolute;
	top: -22px;
	right: 48px;
	width: 134px;
	height: auto;
}

.bnr-recruit .txt .title-logo {
	top: 27px;
	right: 33px;
	width: 105px;
	height: auto;
}

.bnr-recruit .txt h2 {
	margin-bottom: 21px;
	line-height: 1.7;
}

.bnr-recruit .txt h2 span {
	display: inline-block;
	position: relative;
	margin-bottom: 4px;
	padding-bottom: 0;
	color: #EA5704;
	font-size: 22px;
	letter-spacing: 0.16em;
}

.bnr-recruit .txt h2 span:after {
	display: block;
	content: '';
	position: absolute;
	bottom: 0;
	left: 1px;
	background: url(img/share/line-dot-orange.svg) repeat-x left bottom;
	width: calc(100% - 4px);
	height: 3px;
}

.bnr-recruit .txt p {
	margin-bottom: 7px;
	font-size: 15px;
	line-height: 1.9;
	letter-spacing: 0.07em;
}

.bnr-recruit .pic1 {
	display: block;
	position: absolute;
	bottom: -31px;
	left: -22px;
	width: 112px;
	height: auto;
	z-index: 999;
}

.bnr-recruit .pic2 {
	display: block;
	position: absolute;
	bottom: 57px;
	right: -25px;
	width: 156px;
	height: auto;
}

.bnr-recruit.bnr-donate .pic2 {
	bottom: 8px;
}

.bnr-recruit .pic3 {
	display: block;
	position: absolute;
	bottom: -27px;
	right: 21px;
	width: 205px;
	height: auto;
}


/* .story-list
---------------------------------------------------------------------------*/
.story-list {
	display: -webkit-box;
	display: flex;
	flex-wrap: wrap;
	width: 1024px;
	margin: 0 auto;
}

.story-list li {
	width: 480px;
	margin: 80px 64px 0 0;
}

.story-list li:nth-of-type(1),
.story-list li:nth-of-type(2) {
	margin-top: 0;
}

.story-list li:nth-child(even) {
	margin-right: 0 !important;
}

.story-list a {
	display: block;
}

.story-list a:hover {
	opacity: 0.7;
}

.story-list figure {
	margin-bottom: 30px;
}

.story-list figure img {
	border-radius: 16px;
}

.story-list h2,
.story-pickup h2 {
	margin: 0 0 10px 2px;
	line-height: 1.2;
}

.story-list h2 em,
.story-pickup h2 em {
	display: inline-block;
	padding-right: 10px;
	color: #EA5704;
	font-size: 12px;
	letter-spacing: 0.2em;
	transform: translateY(1px);
}

.story-list h2 em i,
.story-pickup h2 em i {
	font-size: 28px;
}

.story-list h2 strong,
.story-pickup h2 strong {
	color: #EE8319;
	font-size: 20px;
	letter-spacing: 0.15em;
}

.story-list p,
.story-pickup p {
	margin-left: 2px;
	font-size: 15px;
	text-align: justify;
	letter-spacing: 0.08em;
}

.story-list .link {
	margin-top: 19px;
	color: #EE8319;
	font-size: 17px;
	letter-spacing: 0.12em;
}

.story-list .link a {
	display: inline-block;
	color: #EE8319;
}


/* .grecaptcha-badge
---------------------------------------------------------------------------*/
.grecaptcha-badge {
	pointer-events: none;
	z-index: -999;
	opacity: 0;
}

body.contact .grecaptcha-badge {
	pointer-events: auto;
	z-index: 0;
	opacity: 1;
}

@media (max-width: 1380px) {
	body.contact .footer-inner .inner {
		padding-left: 220px;
	}
	body.contact .footer-inner .mole {
		left: 690px;
	}
	body.contact .footer-sns,
	body.contact .footer-inner .tel {
		right: 90px !important;
	}
	body.contact .footer-inner .tel-num strong {
		letter-spacing: 0.05em;
	}
	body.contact .footer-inner .tel p {
		letter-spacing: 0.04em;
	}
}

.hidden-fields-container {
	border: none !important;
	margin: 0 !important;
	padding: 0 !important;
}


/* .post
---------------------------------------------------------------------------*/
.post-area {
	box-sizing: border-box;
	width: 900px;
	margin: 0 auto 160px;
	padding: 76px 70px 70px;
}

/* .post-main
------------------------------------*/
.post-main {
	margin-bottom: 75px;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: 0.1em;
}

.post-main:last-of-type {
	margin-bottom: 0;
}

.post-main h2 {
	margin: 60px 0 20px;
	padding: 0 10px;
	color: #EA5704;
	font-size: 20px;
	line-height: 1.6;
	letter-spacing: 0.18em;
}

.post-main p {
	margin-bottom: 20px;
	padding: 0 10px;
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.1em;
	word-break: break-all;
}

#mediaContents .post-main p {
	margin-bottom: 15px;
	font-size: 15px;
	line-height: 1.9;
}

.post-main p:last-child { margin-bottom: 0; }
.post-main a { text-decoration: underline; }

.post-main strong {
	font-family: 'FOT-筑紫A丸ゴシック Std B', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
}

.post-main em { font-style: italic; }
.post-main del { text-decoration: line-through; }

.post-main img {
	display: block;
	border-radius: 8px;
	max-width: calc(100% + 20px);
	height: auto;
	margin: 25px -10px;
}

.post-main img:first-child {
	margin-top: 75px;
}

.post-main > *:first-child img:first-child {
	margin-top: 0;
}

.post-main img:last-of-type {
	margin-bottom: 40px;
}

.post-main .wp-caption {
	max-width: 100%;
	margin-bottom: 25px;
}

.post-main .wp-caption-text {
	margin-top: -5px;
}

.post-main ul,
.post-main ol {
	margin: 30px 10px;
	line-height: 1.6;
}

.post-main ul li {
	list-style: disc;
	margin: 0 0 6px 25px;
}

.post-main ol li {
	list-style: decimal;
	margin: 0 0 6px 25px;
}

.post-main ul li:last-of-type,
.post-main ol li:last-of-type {
	margin-bottom: 0;
}

.post-main blockquote {
	background: #F8F3E9;
	border-radius: 6px;
	margin: 40px 0;
	padding: 24px 24px;
}

.post-main blockquote p {
	line-height: 1.7;
	letter-spacing: 0.1em;
}

.post-main .youtube{
  position:relative;
  width:100%;
  padding-top:56.25%;
}
.post-main .youtube iframe{
  position:absolute;
  top:0;
  right:0;
  width:100%;
  height:100%;
}

.post-main iframe {
	width: 100%;
	height: calc(740px * 0.5625) !important;
	margin: 35px 0 35px;
}

.post-main iframe:last-child {
	margin-bottom: 0;
}

/* .sec-table
------------------------------------*/
.sec-table {
	margin-top: 90px;
}

.sec-table h3 {
	margin: 0 0 12px 10px;
	color: #EA5704;
	font-size: 17px;
	line-height: 1.8;
	letter-spacing: 0.08em;
}

.post-table {
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 40px;
	font-size: 16px;
	line-height: 1.6;
}

.post-table tr {
	border-bottom: 1px solid #EBE8DA;
}

.post-table tr:first-of-type {
	border-top: 1px solid #EBE8DA;
}

.post-table th {
	position: relative;
	box-sizing: border-box;
	width: 20%;
	padding: 13px 20px 13px 10px;
	color: #EA5704;
	text-align: left;
	vertical-align: top;
	letter-spacing: 0.08em;
}

.post-table td {
	box-sizing: border-box;
	width: 80%;
	padding: 13px 5px 13px 0;
	letter-spacing: 0.1em;
}

/* .post-link
------------------------------------*/
.post-link {
	overflow: hidden;
	margin-top: 30px;
}

.post-link li {
	float: left;
	margin: 0 12px 12px 0;
}


/* .news-list
---------------------------------------------------------------------------*/
/*
#newsContents .box-border-top {
	width: 940px;
	margin: 0 auto;
}

.news-list {
	border-bottom: 1px solid #EBE8DA;
}

.news-list article {
	border-top: 1px solid #EBE8DA;
}
*/

/* .news-title
------------------------------------*/
/*
.news-title {
	position: relative;
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	padding: 18px 55px 18px 20px;
	cursor: pointer;
	text-align: left;
}

#newsContents.single .news-title {
	cursor: default;
	pointer-events: none;
}

.news-title .category {
	width: 155px;
	min-width: 155px;
	color: #EE8319;
}

.news-title .category ul {
	margin-bottom: 5px;
}

.news-title .category li {
	margin-bottom: 6px;
	font-size: 13px;
	letter-spacing: 0.08em;
}

.news-title .category time {
	font-size: 10px;
	letter-spacing: 0.08em;
}

.news-title h2 {
	color: #EA5704;
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}

.news-title i,
.media-title i {
	display: block;
	position: absolute;
	top: calc(50% - 5px);
	right: 20px;
	background: url(img/share/ico-arow-dot2.svg) no-repeat;
	width: 15px;
	height: 11px;
	transition: .15s ease-out;
}

.news-title.active i,
.media-title.active i {
	transform: rotate(180deg);
}

#newsContents.single .news-title i,
#mediaContents.single .news-title i {
	display: none;
}
*/


/* .post-main
------------------------------------*/
.news-list .post-area {
	display: none;
	width: 100%;
	margin: 0;
	padding: 0;
}

#newsContents.single .post-area {
	display: block;
}

.news-list .post-area .inner {
	padding: 15px 0 50px 165px;
}

.news-list .post-main {
	margin-bottom: 0;
}

.news-list .post-area img {
	border-radius: 0;
}

.news-list .sec-table {
	margin-top: 45px;
}

.news-list .post-table {
	margin-bottom: 35px;
}

.news-list .post-link {
	margin-left: 10px;
}


/* .modal-sns
---------------------------------------------------------------------------*/
.modal-sns {
	position: fixed;
	top: 0;
	left: 0;
	background-color: rgba(47,32,23,0.8);
	width: 100%;
	height: 100%;
	z-index: 10000;
	display: none;
	opacity: 0;
}

.modal-sns-close {
	position: absolute;
	top: 25px;
	right: 25px;
	z-index: 2;
	cursor: pointer;
}

.modal-sns-close img {
	display: block;
	padding: 20px;
	transition: .15s ease-out;
}

.modal-sns-close:hover img {
	opacity: 0.5;
}

.modal-sns-inner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 0;
}

.modal-sns-inner .inner {
	position: relative;
	box-sizing: border-box;
	background-color: #FFFFFF;
	border-radius: 27px;
	width: 790px;
	height: 710px;
	padding: 95px 65px 0;
	text-align: center;
}

.modal-sns-inner .box-border-top:before {
	height: 9px;
}

.modal-sns-inner .tree2 {
	position: absolute;
	top: -84px;
	left: -88px;
	transform-origin: left top;
	z-index: 1;
	opacity: 0;
}

.modal-sns-inner .tree3 {
	position: absolute;
	top: -99px;
	right: -106px;
	transform-origin: right top;
	z-index: 1;
	opacity: 0;
}

.modal-sns-inner h2 {
	margin-bottom: 18px;
	color: #EA5704;
	font-size: 40px;
	letter-spacing: 0.06em;
}

.modal-sns-inner p {
	font-size: 15px;
	line-height: 2;
	letter-spacing: 0.12em;
}

.modal-sns-inner dl {
	border-top: 1px solid #EBE8DA;
	margin-top: 50px;
}

.modal-sns-inner dl > div {
	display: -webkit-box;
	display: flex;
	-webkit-box-align: center;
	align-items: center;
	justify-content: space-between;
	border-bottom: 1px solid #EBE8DA;
	padding: 14px 16px;
}

.modal-sns-inner dl > div:last-of-type {
	margin-bottom: 0;
}

.modal-sns-inner dt {
	color: #EA5704;
	font-size: 16px;
	letter-spacing: 0.18em;
	text-align: left;
	white-space: nowrap;
}

.modal-sns-inner dd {
	width: 300px;
	min-width: 300px;
}

.modal-sns-inner dd ul {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
}

.modal-sns-inner dd li {
	width: 25%;
	text-align: center;
}

/* .sec-donate-support
---------------------------------------------------------------------------*/
.sec-donate-support {
	position: relative;
	padding-top: 85px;
}

.sec-donate-support > img {
	position: absolute;
	top: -100px;
	left: 50%;
	transform: translateX(-50%);
}

.sec-donate-support .sec-title {
	margin-bottom: 60px;
	text-align: center;
}

.sec-donate-support .sec-title h2 {
	margin-bottom: 22px;
	color: #EA5704;
	font-size: 32px;
	line-height: 1.6;
	letter-spacing: 0.18em;
}

.sec-donate-support .sec-title h3 {
	margin: -8px 0 30px;
	font-size: 19px;
	letter-spacing: 0.15em;
}

.sec-donate-support .sec-title p {
	letter-spacing: 0.12em;
	font-size: 15px;
	line-height: 2;
}

/* .sec-npo
------------------------------------*/
.sec-donate-support .sec-npo {
	display: -webkit-box;
	display: flex;
	justify-content: space-between;
	width: 900px;
	margin: 0 auto 70px;
}

.sec-donate-support .sec-npo figure {
	width: 224px;
	min-width: 224px;
}

.sec-donate-support .sec-npo figure img {
	display: block;
}

.sec-donate-support .sec-npo figure img:not(:last-of-type) {
	width: 100%;
	margin-bottom: 19px;
}

.sec-donate-support .sec-npo .txt {
	padding: 22px 0 0 44px;
	text-align: left;
}

.sec-donate-support .sec-npo h3,
.sec-donate-support .sec-npo h4 {
	color: #EA5704;
}

.sec-donate-support .sec-npo h3 {
	margin-bottom: 26px;
	font-size: 22px;
	letter-spacing: 0.12em;
}

.sec-donate-support .sec-npo h3 span {
	border-bottom: 3px solid #EA5704;
}

.sec-donate-support .sec-npo h3 em {
	font-size: 16px;
}

.sec-donate-support .sec-npo h4 {
	margin: 50px 0 22px;
	font-size: 20px;
	letter-spacing: 0.12em;
}

.sec-donate-support .sec-npo p {
	font-size: 17px;
	letter-spacing: 0.04em;
	white-space: nowrap;
}

.sec-donate-support .sec-npo li {
	position: relative;
	margin-bottom: 20px;
	padding: 0 0 0 40px;
	font-size: 17px;
	line-height: 1.75;
	letter-spacing: 0.04em;
}

.sec-donate-support .sec-npo li:last-of-type {
	margin-bottom: 0;
}

.sec-donate-support .sec-npo li i {
	display: block;
	position: absolute;
	top: 4px;
	left: 0;
	box-sizing: border-box;
	background-color: #EA5704;
	border-radius: 50%;
	width: 23px;
	height: 23px;
	text-align: center;
}

.sec-donate-support .sec-npo li i b {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	margin: -1px 0 0 1px;
	font-size: 14px;
	color: #FFFFFF;
}


/* .dl-common .step
---------------------------------------------------------------------------*/
.dl-common .step {
	border-bottom: 1px solid #EBE8DA;
	margin-bottom: 24px;
	padding: 0 0 26px 38px;
}

.dl-common .step.border-top {
	border-top: 1px solid #EBE8DA;
	padding-top: 27px;
}

.dl-common .step.border-none {
	border-bottom: none;
	padding-bottom: 0;
}

.dl-common .step.mt {
	margin-top: 30px;
}

.dl-common .step h3 {
	position: relative;
	margin-bottom: 6px;
	color: #EA5704;
	font-size: 16px;
	letter-spacing: 0.12em;
}

.dl-common .step h3:last-child {
	margin-bottom: 0;
}

.dl-common .step h3 i {
	display: block;
	position: absolute;
	top: 0;
	left: -38px;
	box-sizing: border-box;
	background-color: #EA5704;
	border-radius: 50%;
	width: 26px;
	height: 26px;
}

.dl-common .step h3 i span {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	margin-left: 0.5px;
	color: #FFFFFF;
	font-size: 16px;
	letter-spacing: 0;
}

.dl-common .step .btn-set {
	margin: 15px 0 0 -3px;
	text-align: left;
}

.dl-common .step .btn-set > div {
	margin: 0 2px;
}


/* .btn-modal-donate
---------------------------------------------------------------------------*/
.btn-modal-donate,
.btn-modal-donate * {
	box-sizing: border-box;
}

.btn-modal-donate {
	display: inline-block;
	background: #EA5514;
	border-radius: 2px;
	cursor: pointer;
}

.btn-modal-donate:not(:has(a)),
.btn-modal-donate a {
	position: relative;
	padding: 26px 44px 30px 34px;
	color: #FBF8E9;
}

.btn-modal-donate a {
	display: block;
	opacity: 1 !important;
}

.btn-modal-donate em {
	display: block;
	margin-bottom: 19px;
	font-size: 17px;
	line-height: 1.75;
	letter-spacing: 0.13em;
}

.btn-modal-donate strong {
	display: inline-block;
	border-bottom: 2px solid #FFFFFF;
	padding-bottom: 4px;
	font-size: 21px;
	letter-spacing: 0.12em;
}

.btn-modal-donate strong span {
	padding-right: 1px;
	font-size: 15px;
}

.btn-modal-donate i {
	display: inline-block;
	margin: -20px 0 0 7px;
}

.btn-modal-donate i img {
	display: block;
	transform: translateY(10px);
}

/* .btn-modal-donate.size-l
------------------------------------*/
.btn-modal-donate.size-l {
	display: block;
	width: 760px;
	margin: 0 auto;
}

.btn-modal-donate.size-l:not(:has(a)),
.btn-modal-donate.size-l a {
	padding-top: 22px;
	padding-bottom: 27px;
}

.btn-modal-donate.size-l em {
	margin-bottom: 16px;
	margin-left: 1px;
	line-height: 1.85;
	letter-spacing: 0.15em;
}

.btn-modal-donate.size-l strong {
	padding-bottom: 5px;
	font-size: 26px;
}

.btn-modal-donate.size-l strong span {
	font-size: 19px;
}

.btn-modal-donate.size-l .mark {
	position: absolute;
	top: 26px;
	right: 34px;
	width: 188px;
}

.btn-modal-donate.size-l .mark .pic {
	position: relative;
}

.btn-modal-donate.size-l .mark .pic2 {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}

.btn-modal-donate.size-l .mark .txt {
	display: block;
	position: absolute;
	top: 99px;
	right: 0;
}

/* .btn-modal-donate-fix
------------------------------------*/
.btn-modal-donate-fix {
	display: none;
	position: fixed;
	bottom: 35px;
	left: 50%;
	transform: translateX(-50%) !important;
	z-index: 100;
	opacity: 0;
	transition: .15s ease-out;
}

.btn-modal-donate-fix.hidden {
	pointer-events: none;
	opacity: 0 !important;
	transition: .15s ease-out !important;
}

.btn-modal-donate-fix .btn-close {
	position: absolute;
	top: -15px;
	right: -13px;
	z-index: 2;
	transition: .4s cubic-bezier(0.165, 0.84, 0.44, 1); /* easeOutQuart */
}

.btn-modal-donate-fix .btn-close:hover {
	transform: rotate(180deg);
}

.btn-modal-donate-fix .btn-close img {
	border-radius: 50%;
}

.btn-modal-donate-fix .btn-modal-donate.size-l {
	width: 670px;
}

.btn-modal-donate-fix .btn-modal-donate.size-l a {
	padding-top: 24px;
	padding-bottom: 29px;
}

.btn-modal-donate-fix .btn-modal-donate.size-l em {
	margin-bottom: 14px;
  font-size: 15px;
}

.btn-modal-donate-fix .btn-modal-donate.size-l strong {
	font-size: 23px;
	letter-spacing: 0.11em;
}

.btn-modal-donate-fix .btn-modal-donate.size-l strong span {
  font-size: 17px;
}

.btn-modal-donate-fix .btn-modal-donate.size-l i {
	margin-left: 3px;
	transform: translateY(0px);
}

.btn-modal-donate-fix .btn-modal-donate.size-l i img {
	display: block;
	width: 34px;
	transform: translateY(10px);
}

.btn-modal-donate-fix .btn-modal-donate.size-l .mark {
	top: 16px;
	right: 28px;
	width: 166px;
}

.btn-modal-donate-fix .btn-modal-donate.size-l .mark .pic img {
	width: 154px;
}

.btn-modal-donate-fix .btn-modal-donate.size-l .mark .txt {
	top: 78px;
	width: 79px;
}

/* animation
------------------------------------*/
.btn-modal-donate:not(.size-l):hover {
	animation: btn-modal-donate-txt .8s cubic-bezier(0.215, 0.61, 0.355, 1) forwards; /* easeOutCubic */
}

.btn-modal-donate-wrap.active .btn-modal-donate.size-l,
.btn-modal-donate.size-l:hover,
.btn-modal-donate.size-l:hover + .btn-close img {
	animation: btn-modal-donate-txt .8s cubic-bezier(0.215, 0.61, 0.355, 1) .1s forwards; /* easeOutCubic */
}

.btn-modal-donate-wrap.active .btn-modal-donate.size-l:hover em,
.btn-modal-donate-wrap.active .btn-modal-donate.size-l:hover strong,
.btn-modal-donate-wrap.active .btn-modal-donate.size-l:hover i,
.btn-modal-donate.size-l:hover em,
.btn-modal-donate.size-l:hover strong,
.btn-modal-donate.size-l:hover i {
	animation: btn-modal-donate-txt .8s cubic-bezier(0.215, 0.61, 0.355, 1) .05s forwards; /* easeOutCubic */
}

@keyframes btn-modal-donate-txt {
  0% { transform: translateY(0px); }
  20% { transform: translateY(-4px); }
  40% { transform: translateY(2px); }
  70% { transform: translateY(-1px); }
  100% { transform: translateY(0px); }
}

.btn-modal-donate-wrap.active .btn-modal-donate.size-l .mark .pic,
.btn-modal-donate.size-l .mark .pic {
	animation: btn-modal-donate-pic-out .65s cubic-bezier(0.165, 0.84, 0.44, 1) forwards; /* easeOutQuart */
}
.btn-modal-donate-wrap.active .btn-modal-donate.size-l .mark .pic,
.btn-modal-donate.size-l:hover .mark .pic {
	animation: btn-modal-donate-pic .65s cubic-bezier(0.165, 0.84, 0.44, 1) forwards; /* easeOutQuart */
}

@keyframes btn-modal-donate-pic {
  0% { transform: rotate(0deg) translateY(0px); }
  20% { transform: rotate(-15deg) translateY(6px); }
  60% { transform: rotate(-9deg) translateY(6px); }
  100% { transform: rotate(-11deg) translateY(6px); }
}
@keyframes btn-modal-donate-pic-out {
  0% { transform: rotate(-11deg) translateY(4px); }
  20% { transform: rotate(2deg) translateY(0px); }
  60% { transform: rotate(-1deg) translateY(0px); }
  100% { transform: rotate(0deg) translateY(0px); }
}

.btn-modal-donate.size-l .mark .pic2 {
	transition: .25s cubic-bezier(0.215, 0.61, 0.355, 1); /* easeOutCubic */
}

.btn-modal-donate-wrap.active .btn-modal-donate.size-l .mark .pic2,
.btn-modal-donate.size-l:hover .mark .pic2 {
	left: -3.5%;
	transition: .25s cubic-bezier(0.215, 0.61, 0.355, 1); /* easeOutCubic */
}