/* common */
html, body {
	width:100%;
	
}
body,th,td,input,select,textarea,button {font-size:20px;}

.header.sub .header_wrap .logo img.text {
	filter: brightness(0) invert(1);
}
.header.sub .header_wrap .menuBtn .menu-btn .mbtn.inactive {
	color:#fff;
}

.header.sub .header_right a.snsBtn {
	color:#0d4226;
	background-color:#ffbb38;
}
.wrap.open .header.sub .header_right a.snsBtn {
	background-color:#ffbb38;
}


.container,
section {
	position:relative;
	width:100%;
}
.goTop {
	position:absolute;
	bottom:4em;
	right:1em;
	border:4px solid #0d4226;
	border-radius:50%;
	z-index:10;
}
.goTop span {
	display:table;
	width:5em;
	font-size:1.1em;
	text-align:center;
	font-weight:500;
	line-height:5em;
}
section .section_wrap {
	position: relative;
	margin: 0 auto;
	padding: 0 0.3em;
	width:100%;
	max-width:60em;
}

.sub_visual {
	position: relative;
	padding-top: 6.5em;
	width: 100%;
	height: 100vh;
}
.sub_visual.marketing {
	background:url(../img/sub/bg_marketing01.jpg) no-repeat center;
	background-size:cover;
}

.sub_visual .sv_wrap {
	position:absolute;
	top:50%;
	left:50%;
	padding:0 0.3em;
	width:100%;
	
	transform:translate(-50%,-50%);
}
.sub_visual .sv_wrap span.slogan {
	display:block;
	font-size:4.75em;
	font-weight:700;
	text-align:center;
	letter-spacing:-0.05em;
	color:#fff;
}
.sub_visual .sv_wrap span.slogan span {
	color:#ffbb38;
}

.marketing {
	padding: 3em 0;
}
.marketing .section_wrap h2 {
	display: block;
	font-size: 2.75em;
}
.marketing .section_wrap h2 p.bbg {
	display: table;
	margin:0.5em 0;
	padding:0.25em 2em;
	font-weight: 500;
	font-size: 0.45em;
	color:#fff;
	background-color:#000;
	border-radius:5em;
}
.marketing .section_wrap h2 p {
	font-size:0.4em;
	font-weight:400;
}
.marketing .section_wrap .marketing_benefit {
	margin-top:4em;
}
.marketing .section_wrap .marketing_benefit ul {
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:0 auto;
	width:calc(100% - 5em);
}
.marketing .section_wrap .marketing_benefit ul li img {
	display:block;
	margin:0 auto 1.5em;
	width:9.35em;
}
.marketing .section_wrap .marketing_benefit ul li span,
.marketing .section_wrap .marketing_benefit ul li p {
	display:table;
	margin:0 auto;
	text-align:center;
}
.marketing .section_wrap .marketing_benefit ul li span {
	margin-bottom:0.75em;
	font-size:1.5em;
	font-weight:700;
	color:#0d4226;
}

.about_marketing {
	padding: 4em 0;
	background-color:#f8f8f8;
}
.about_marketing .am_top span,
.about_marketing .am_top p {
	display:block;
	text-align:center;
	letter-spacing:-0.05em;
}
.about_marketing .am_top span {
	font-size:2.5em;
}
.about_marketing .am_top p {
	margin-top:1em;
	font-size:1.5em;
}
.about_marketing .am_qa {
	margin-top:3em;
}
.about_marketing .am_qa ul li {
	display:flex;
	justify-content:flex-start;
	align-items:stretch;
}
.about_marketing .am_qa ul li .q_area {
	padding:2em 0;
	width:20em;
	border-top:2px solid #000;
}
.about_marketing .am_qa ul li .a_area {
	padding:2em 0;
	width:calc(100% - 20.5em);
	border-top:2px dashed #000;
}
.about_marketing .am_qa ul li .q_area span,
.about_marketing .am_qa ul li .q_area p {
	display:block;
	letter-spacing:-0.075em;
}
.about_marketing .am_qa ul li.q2 .q_area span,
.about_marketing .am_qa ul li.q2 .q_area p {
	text-align:right;
}
.about_marketing .am_qa ul li .q_area span {
	font-size:3em;
}
.about_marketing .am_qa ul li.q1 .q_area {
	margin-right:0.5em;
}
.about_marketing .am_qa ul li.q2 .q_area {
	margin-left:0.5em;
}
.about_marketing .am_qa ul li .q_area p {
	font-size:2.25em;
}
.about_marketing .am_qa ul li.q1 .q_area p b {
	color:#ffbb38;
}
.about_marketing .am_qa ul li.q2 .q_area p b {
	color:#0d4226;
}
.about_marketing .am_qa ul li .a_area > span {
	display:flex;
	justify-content:flex-start;
	align-items:center;
	font-size:3em;
	letter-spacing:-0.02em;
	line-height:1.2em;
}
.about_marketing .am_qa ul li .a_area > span small {
	margin:0.25em 0 0 1em;
	font-size:0.4em;
	line-height:1.2em;
}
.about_marketing .am_qa ul li .a_area .a_desc {
	display:block;
	margin-top:1em;
	padding:1.5em 2em;
	width:100%;
	border-radius:2em;
	box-shadow:0.2em 0.3em 0.5em rgba(0,0,0,.15);
}

.about_marketing .am_qa ul li.q1 .a_area .a_desc {
	background-color:#ffbb38;
}
.about_marketing .am_qa ul li.q2 .a_area .a_desc {
	background-color:#0d4226;
}

.about_marketing .am_qa ul li .a_area .a_desc p {
	font-weight:300;
	letter-spacing:-0.02em;
}
.about_marketing .am_qa ul li.q2 .a_area .a_desc p {
	color:#fff;
}

.modu {
	padding: 4em 0;
}
.modu .modu_list li {
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom:3em;
}
.modu .modu_list li:last-child {
	margin-bottom:0;
}

.modu .modu_list li .desc_area {
	width:24.4em;
}
.modu .modu_list li .desc_area span,
.modu .modu_list li .desc_area p {
	display:block;
}
.modu .modu_list li .desc_area span {
	margin:0.75em 0;
	font-size:2em;
	letter-spacing:-0.1em;
}
.modu .modu_list li .desc_area p {
	line-height:1.75em;
	letter-spacing:-0.1em;
}
.modu .modu_list li .desc_area p b {
	color:#0d4226;
}
.modu .modu_list li .img_area {
	width:calc(100% - 24.4em);
}

.supporters {
	margin-bottom:13em;
	padding: 4em 0;
	background-color:#2e7feb;
}
.supporters .text_area {
	position:relative;
}
.supporters .text_area .spt_top {
	display:block;
	margin:0 auto;
	text-align:center;
	line-height:1.75em;
	font-weight:300;
	letter-spacing:-0.075em;
	color:#fff;
	width:100%;
	max-width:52.4em;
}
.supporters .text_area .spt_mid {
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:4em auto;
	width:100%;
	max-width:52.4em;
}
.supporters .text_area .spt_mid span,
.supporters .text_area .spt_mid p {
	display:block;
	color:#fff;
}
.supporters .text_area .spt_mid span {
	font-size:5em;
	font-weight:600;
	line-height:1em;
	letter-spacing:-0.05em;
	width:auto;
}
.supporters .text_area .spt_mid span small {
	display:block;
	margin-bottom:0.5em;
	font-size:0.4em;
	font-weight:500;
	letter-spacing:-0.075em;
	line-height:1.2em;
}
.supporters .text_area .spt_mid span br {
	 font-size:0.4em;
}
.supporters .text_area .spt_mid p {
	width:auto;
	font-weight:300;
	letter-spacing:-0.05em;
}
.supporters .section_wrap > img {
	margin:0 auto -13em;
	width:100%;
	max-width:52.4em;
}

.request {
	padding:4em 0;
	background:url(../img/sub/bg_request.jpg) no-repeat;
	background-size:cover;
}
.request span,
.request p,
.request a {
	display:table;
	color:#fff;
}
.request span {
	font-size:2em;
}
.request p {
	margin-bottom:1.5em;
	font-size:0.8em;
}
.request a {
	font-weight:600;
	text-decoration:underline;
}

section.works {
	padding:3em 0;
	border-bottom:1px solid #dcdcdc;
	transition:all .5s ease-in-out;
}

section.works h2 {
	position:relative;
	font-size:2.75em;
	z-index:2;
}
section.works .tabs {
	margin-top:2em;
}
section.works .tabs-nav {
	display:flex;
	justify-content:flex-start;
	align-items:center;
	margin-bottom:2.5em;
}
section.works .tabs-nav li {
	display:table;
	padding-bottom:0.25em;
	margin-right:2em;
	border-bottom:2px solid transparent;
}
section.works .tabs-nav li.tab-active {
	border-color:#0d4226;
}
section.works .works_list ul {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:flex-start;
	margin:0 auto;
	width:100%;
	max-width:60em;
}
section.works .works_list ul li {
	margin:0 1.5em 1.5em 0;
	width:calc((100% - 1.5em) / 2);
}
section.works .works_list ul li:nth-child(2n) {
	margin-right:0;
}
section.works .works_list ul li .list_area {
	position:relative;
	display:block;
	margin-bottom:1.5em;
}
section.works .works_list ul li .list_area .hover_info {
	position:absolute;
	display:flex;
	flex-direction:column;
	justify-content:center;
	align-items:center;
	top:0;
	left:0;
	width:100%;
	height:100%;
	opacity:0;
	background-color:rgba(13,66,38,.75);
	transition:all ease-in-out .3s;
}
section.works .works_list ul li .list_area:hover .hover_info {
	opacity:1;
}
section.works .works_list ul li .list_area .hover_info span,
section.works .works_list ul li .list_area .hover_info p {
	position: relative;
	display:block;
	width:100%;
	text-align:center;
	color:#fff;
}
section.works .works_list ul li .list_area .hover_info span {
	margin-bottom:0.5em;
	padding-top:0.5em;
	font-size:2.5em;
	font-weight:600;
}
section.works .works_list ul li .list_area .hover_info p {
	font-weight:300;
}
section.works .works_list ul li .list_area .hover_info span:before {
	position:absolute;
	content:'';
	top:0;
	left:50%;
	width:0.35em;
	height:0.35em;
	border:4px solid #ffbb38;
	border-radius:5em;
	transform:translateX(-50%);
}
section.works .works_list ul li .list_area:last-child {
	margin:0;
}
section.works .works_list .moreBtn {
	display:table;
	margin:2em auto;
	cursor:pointer;
}
section.works .works_list .moreBtn b {
	display:table;
	margin:0 auto;
	font-size:4em;
	font-weight:300;
	line-height:1em;
}
section.works .works_list .moreBtn span {
	display:table;
	margin:0 auto;
	font-size:0.75em;
}


@media screen and (max-width:1024px) {
	body,th,td,input,select,textarea,button {font-size:20px;}

	.sub_visual .sv_wrap span.slogan {
		font-size:3.5em;
	}
	.marketing .section_wrap h2 > span {
		display:table;
		margin:0 auto;
	}
	.marketing .section_wrap h2 p.bbg {
		margin:.5em auto;
	}
	.marketing .section_wrap h2 p {
		text-align:center;
	}

	.about_marketing .am_top span {
		font-size:2em;
	}
	.about_marketing .am_top p {
		font-size:1.25em;
	}

	.about_marketing .am_qa ul li {
		flex-wrap:wrap;
	}
	.about_marketing .am_qa ul li .q_area,
	.about_marketing .am_qa ul li .a_area {
		width:100%;
	}
	.about_marketing .am_qa ul li .q_area p br {
		display:none;
	}
	.about_marketing .am_qa ul li.q2 {
		flex-direction:column-reverse;
	}
	.about_marketing .am_qa ul li.q2 .q_area span,
	.about_marketing .am_qa ul li.q2 .q_area p {
		text-align:left;
	}
	.modu .modu_list li {
		flex-direction:column;
	}
	.modu .modu_list li:first-child {
		flex-direction:column-reverse;
	}
	.modu .modu_list li .desc_area,
	.modu .modu_list li .img_area {
		width:100%;
	}
	.modu .modu_list li .img_area img,
	.modu .modu_list li .desc_area img {
		display:table;
		margin:0 auto;
	}
	.modu .modu_list li .desc_area span,
	.modu .modu_list li .desc_area p {
		text-align:center;
	}
	.modu .modu_list li .desc_area {
		margin-top:2em;
	}

	.supporters .text_area .spt_mid {
		flex-wrap:wrap;
		flex-direction:column;
	}
	.supporters .text_area .spt_mid p {
		margin-top:2em;
		text-align:center;
	}
}


@media screen and (max-width:768px) {
	body,th,td,input,select,textarea,button {font-size:18px;}

	.sub_visual .sv_wrap span.slogan {
		font-size:2.75em;
	}

	.marketing .section_wrap .marketing_benefit ul {
		flex-direction:column;
		justify-content:center;
	}
	.marketing .section_wrap .marketing_benefit ul li {
		margin-bottom:2em;
	}
	.marketing .section_wrap .marketing_benefit ul li:last-child {
		margin:0;
	}

	.about_marketing .am_top span {
		font-size:1.5em;
	}
	.about_marketing .am_top p {
		font-size:1em;
	}

	.supporters .text_area .spt_mid span {
		font-size:3em;
	}

	.request span,
	.request p,
	.request a {
		margin:0 auto;
		text-align:center;
	}

	section.works .works_list ul li {
		margin:0 0 1.5em;
		width:100%;
	}
	section.works .works_list ul li .list_area img {
		width:100%;
	}
	.goTop {
		border-width:2px;
	}
	.goTop span {
		width:4em;
		font-size:.75em;
		line-height:4em;
	}
}


@media screen and (max-width:425px) {
	body,th,td,input,select,textarea,button {font-size:16px;}
}