﻿@charset "utf-8";
/* -- -- --
 * ROOM8 Template V3.4
 * Last Up Date: 2020.3
 * Author: mick
-- -- -- -- -- -- -- -- */
* {
	margin: 0;
	padding: 0;
	word-break: normal;
	line-break: normal;
	word-wrap: break-word;
	overflow-wrap: break-word;
	box-sizing: border-box;
}

html {
	opacity: 0;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-size: 10px;
	>font-size: 62.5%;
}

html.wf-active, html.loading-delay {
	opacity: 1;
	-webkit-transition: .2s;
	-moz-transition: .2s;
	-o-transition: .2s;
	transition: .2s;
}

body {
	font-family: source-han-sans-japanese, sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #333;
}

.minc {
	font-family: source-han-serif-japanese, serif;
}

/*
Regular	"font-family: source-han-sans-japanese, sans-serif;
font-weight: 400;
font-style: normal;"
Bold	"font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style: normal;"

Regular	"font-family: source-han-serif-japanese, serif;
font-weight: 400;
font-style: normal;"
Bold	"font-family: source-han-serif-japanese, serif;
font-weight: 700;
font-style: normal;"
*/

html, body {
	height:100%;
}

body.fixed {
	position: fixed;
	top:0;
	left:0;
	width: 100%;
}

header,
article,
nav,
section,
footer {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

header,
article,
nav,
section,
footer,
div,
p {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

p {
	line-height: 1.6;
}

a {
	color: #333;
	border: none;
	outline: 0;
	background-color: transparent;
	text-decoration: none;
}

a:active,
a:hover {
	outline: 0;
}

b,
strong {
	font-weight: 700;
}

i {
	font-style: italic;
}

del {
	text-decoration: line-through;
}

h1,h2,h3,h4,h5,h6 {
	line-height: 1.4;
	font-size: 1.0em;
	font-weight: 700;
}

img {
	border: 0;
	vertical-align: bottom;
}

.mimg img {
	width:100%;
	height:auto;
}

pre {
	overflow: auto;
}

table {
	border-collapse: collapse;
	border-style: none;
	border-spacing: 0;
}

dt,
dd,
td,
th {
	line-height: 1.6;
}

ul,
ol {
	list-style: none;
}

li {
	line-height: 1.6;
}

.pc {
	display: none;
}

/* Extras
========================================================================== */
.r0 { margin-right:0!important; }
.b0 { margin-bottom: 0!important; }

.clear:after,
.block1:after,
.block2:after,
.inblock:after,
.contents:after {
    content: "";
    clear: both;
    display: block;
	visibility: hidden;
	overflow: hidden;
}

#dammy {
	display: block;
	overflow: hidden;
	background: url('../images/') no-repeat;
	padding: 40px 0 0;
	width: 216px;
	height: 0!important;
}

/*
========================================================================== */
#wrapper {
	font-size:1.6rem;
}

.block1 {
	padding:35px 15px;
}

.marea_block {
	background-image: url('../images/cover.png'), url('../images/kv_back.jpg');
	background-repeat: repeat, no-repeat;
	background-position: center top, center center;
	background-size: 64px 64px, cover;
}

header {
	height:60px;
}

header h1 {
	overflow: hidden;
	background: url('../images/logo.png') no-repeat center center;
	background-size: auto 30px;
	padding: 60px 0 0;
	height: 0!important;
}

header .support {
	display: none;
}

.marea_block .block1 {
	padding-top:80px;
	padding-bottom:80px;
	color:#FFF;
	text-align: center;
}

.marea_block .mlead {
	background: url('../images/kv_logo.png') no-repeat center top;
	background-size: 284px auto;
	margin:0 0 15px;
	padding:60px 0 0;
	line-height:1.4;
	color:#FFF;
	font-size:3.0rem;
	font-weight: bold;
}

.marea_block .mlead b {
	color:#ffcc00;
}

.marea_block .mex {
	margin:0 0 20px;
	line-height:1.8;
	text-align: justify;
	font-size:1.4rem;
}

.btnblock .btnlead {
	margin:0 0 10px;
	line-height:1.2;
	font-weight: bold;
}

.btnblock .btnlead b {
	display: block;
	color:#ff0000;
	font-size:1.8rem;
}

.btnblock .btnlead strong {
	font-size:2.5rem;
}

.btnblock .btnbox {
	margin:0 auto 5px;
}

.btnblock .btnbox a {
	display: block;
	color:#FFF;
	height:80px;
	position: relative;
}

.btnblock .btnbox .btn {
	position: absolute;
	top:0;
	left:0;
	padding:10px 0 0;
	width:100%;
	height:80px;
	border:1px solid #9a741e;
	border-radius: 80px;
	-moz-border-radius: 80px;
	-webkit-border-radius: 80px;
	z-index: 1;
}

.btnblock .btnbox .btn strong {
	display: block;
	line-height:1.4;
	font-size:2.3rem;
}

.btnblock .btnbox .cover {
	position: absolute;
	top:50%;
	left:50%;
	content: '';
	background: rgb(226,202,75);
	background: linear-gradient(90deg, rgba(226,202,75,1) 0%, rgba(154,116,30,1) 100%);
	width:100%;
	height:100%;
	border-radius: 80px;
	-moz-border-radius: 80px;
	-webkit-border-radius: 80px;
	transform: translateX(-50%) translateY(-50%);
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	z-index: 0;
}

.btnblock .btnlink a {
	display: block;
	color:#FFF;
	font-size:1.4rem;
}

.block_area1 h2 {
	margin:0 0 10px;
	line-height:1.6;
	font-size:2.0rem;
}

.block_area1 h2 b {
	color:#c00;
}

.block_area1 .bannerarea {
	margin:0 auto 30px;
}

.block_area1 .banner {
	margin:0 0 15px;
}

.block_area1 .banner a {
	display: block;
}

.block_area1 .link {
	text-align: center;
}

.block_area1 .link a {
	color:#36c;
}

.block_area1 .link b {
	display: none;
}

.block_area1 .about_block h3 {
	overflow: hidden;
	background: url('../images/area1logo.png') no-repeat center top;
	background-size: auto 34px;
	margin:0 0 15px;
	padding: 35px 0 0;
	height: 0!important;
}

.block_area1 .about_block p {
	line-height:1.8;
}

.area_mtitle {
	margin:0 0 20px;
	text-align: center;
}

.area_mtitle p {
	margin:0 0 10px;
	font-size:3.5rem;
}

.area_mtitle b {
	display: inline-block;
	padding:0 0 10px 1px;
	line-height:1.1;
	letter-spacing: 1px;
	border-bottom:1px solid #b0afaf;
}

.area_mtitle b:first-letter {
	color:#b2931f;
}

.mex {
	margin:0 0 20px;
}

.mex p b {
	color:#cc0000;
}

.block_area2 {
	background: url('../images/sp_area2back.png') no-repeat right top;
	background-size: 320px 120px;
	background-color: #f5f0de;
}

.block_area2 .block1 {
	padding:35px 0;
}

.block_area2 .mex {
	margin:0 15px 20px;
}

.block_area2 .ex_block {
	margin:0 0 20px;
}

.block_area2 .ex_block:last-child {
	margin-bottom:0;
}

.block_area2 .ex_block .imagebox {
	margin:0 0 15px;
}

.block_area2 .ex_block .exbox {
	margin:0 15px;
	background-size: 109px 75px;
	background-position: right top;
	background-repeat: no-repeat;
}

.block_area2 .ex_block.exblock1 .exbox {
	background-image: url('../images/area2no1.svg');
	background-size: 106px 75px;
}

.block_area2 .ex_block.exblock2 .exbox {
	background-image: url('../images/area2no2.svg');
}

.block_area2 .ex_block.exblock3 .exbox {
	background-image: url('../images/area2no3.svg');
}

.block_area2 .ex_block.exblock4 .exbox {
	background-image: url('../images/area2no4.svg');
	background-size: 111px 75px;
}

.block_area2 .ex_block.exblock5 .exbox {
	background-image: url('../images/area2no5.svg');
}

.block_area2 .ex_block .exbox .ribbon {
	margin:0 0 15px;
}

.block_area2 .ex_block .exbox .ribbon b {
	display: block;
	background: url('../images/area2ribbon.png') no-repeat left center;
	background-size: 130px 26px;
	padding:0 10px;
	width:130px;
	color:#FFF;
	line-height:26px;
	letter-spacing: 0.3px;
}

.block_area2 .ex_block .exbox h3 {
	margin:0 0 10px;
	line-height:1.3;
	font-size:2.5rem;
}

.block_area2 .ex_block .exbox .ex {
	line-height:1.8;
	text-align: justify;
}

.block_area3 .block1 {
	padding:35px 0;
}

.block_area3 .mex {
	margin:0 15px 20px;
}

.type_block {
	overflow-x: scroll;
	position: relative;
	-webkit-overflow-scrolling: touch;
	padding:0 0 0 15px;
}

.type_block table {
	width:600px;
	font-size:1.4rem;
	border-top:1px solid #c6c5c5;
	border-left:1px solid #c6c5c5;
}

.type_block th {
	padding:10px;
	text-align: center;
	vertical-align: top;
	border-right:1px solid #c6c5c5;
	border-bottom:1px solid #c6c5c5;
}

.type_block .th1 {
	text-align: left;
	background-color: #e7e8e7;
}

.type_block .th2 {
	width:220px;
	color:#FFF;
	background-color: #000;
}

.type_block .th3 {
	width:220px;
	color:#FFF;
	background-color: #b2931f;
}

.type_block td {
	padding:10px;
	text-align: center;
	border-right:1px solid #c6c5c5;
	border-bottom:1px solid #c6c5c5;
    width: 150px;
}

.type_block td strong {
	color:#d51820;
}

.type_block td.f20 {
	font-size: 1.8rem;
}

.type_block .colored td {
	background-color: #fff1f1;
}

.type_block .label {
	text-align: left;
	font-weight: bold;
	background-color: #e7e8e7;
}

.type_block .colored .label {
	background-color: #e7e8e7;
}

.block_area4 {
	background-color: #f6f5f5;
}

.block_area4 .ex_block {
	margin:0 0 20px;
}

.block_area4 .ex_block .imagebox {
	margin:0 auto 20px;
	max-width:400px;
}

.block_area4 .ex_block h3 {
	margin:0 0 10px;
	line-height:1.4;
	text-align: center;
	font-size:2.5rem;
}

.block_area4 .ex_block h3 b {
	display: block;
	color:#b2931f;
}

.block_area4 .ex_block .ex p {
	margin:0 0 15px;
	line-height:1.8;
}

.block_area4 .ex_block .ex p:last-child {
	margin-bottom:0;
}

.point_block .pointbox {
	margin:0 auto 20px;
	width:240px;
}

.point_block .pointbox:last-child {
	margin-bottom:0;
}

.point_block .pointbox h4 {
	background-position: center top;
	background-repeat: no-repeat;
	background-size: 67px 67px;
	margin:0 0 10px;
	padding:80px 0 0;
	text-align: center;
	font-size:2.0rem;
}

.point_block .pointbox.point1 h4 {
	background-image: url('../images/area4icon1.svg');
	background-position: center 5px;
	background-size: 78px 56px;
}

.point_block .pointbox.point2 h4 {
	background-image: url('../images/area4icon2.svg');
}

.point_block .pointbox.point3 h4 {
	background-image: url('../images/area4icon3.svg');
	background-size: 67px 65px;
}

.point_block .pointbox.point4 h4 {
	background-image: url('../images/area4icon4.svg');
}

.point_block .pointbox p {
	text-align: justify;
}

.stepbox {
	background: url('../images/icon_step2.svg') no-repeat center bottom;
	background-size: 24px 21px;
	margin:0 auto 20px;
	padding:0 0 35px;
	width:220px;
}

.stepbox.step4 {
	background: none;
	margin-bottom:0;
	padding:0;
}

.stepbox h3 {
	background-position: center top;
	background-repeat: no-repeat;
	margin:0 0 10px;
	padding:85px 0 0;
	text-align: center;
	font-size:2.0rem;
}

.stepbox.step1 h3 {
	background-image: url('../images/area5icon1.svg');
	background-size: 60px 64px;
}

.stepbox.step2 h3 {
	background-image: url('../images/area5icon2.svg');
	background-size: 87px 61px;
}

.stepbox.step3 h3 {
	background-image: url('../images/area5icon3.svg');
	background-size: 64px 57px;
}

.stepbox.step4 h3 {
	background-image: url('../images/area5icon4.svg');
	background-size: 80px 56px;
}

.stepbox.step4 p {
	text-align: justify;
}

.support_block {
	background: url('../images/info_back.jpg') no-repeat center center;
	background-size: cover;
	color:#FFF;
	text-align: center;
}

.bottom_block {
	background-color: #333;
}

.bottom_block .block1 {
	padding-top:25px;
	padding-bottom:30px;
}

.flinks {
	margin:0 0 30px;
	border-top:1px solid #666;
}

.flinks li {
	line-height:50px;
	border-bottom:1px solid #666;
}

.flinks li a {
	display: block;
	background: url('../images/icon_arrow.svg') no-repeat right 15px center;
	background-size: 10px 16px;
	padding:0 15px;
	color:#FFF;
}

.caution {
	margin:0 0 30px;
	padding:15px 20px;
	color:#CCC;
	border:1px solid #666;
}

.caution h3 {
	margin:0 0 10px;
	font-weight: 400;
}

.caution .ex1 {
	margin:0 0 20px;
	font-size:1.4rem;
}

.caution .ex2 {
	font-size:1.4rem;
}

.share_wrap {
	display: flex;
	justify-content: center;
}

.snsbox {
	margin:0 2px;
}

.snsbox.tw,
.snsbox.line {
	padding:4px 0 0;
}

.pagetop {
	display: none;
	position: fixed;
	right:15px;
	bottom:15px;
	width: 35px;
	overflow: hidden;
	border-radius: 35px;
	-moz-border-radius: 35px;
	-webkit-border-radius: 35px;
}

.pagetop a {
	display: block;
	overflow: hidden;
	background: url('../images/pagetop.svg') no-repeat center center;
	background-size: 16px 8px;
	background-color:rgba(0, 0, 0, 0.2);
	padding: 35px 0 0;
	height: 0!important;
}

footer .block1 {
	padding-top:20px;
	padding-bottom:15px;
}

footer .flogo {
	overflow: hidden;
	background: url('../images/flogo.png') no-repeat center top;
	background-size: auto 26px;
	margin:0 0 10px;
	padding: 26px 0 0;
	height: 0!important;
}

footer .copyright {
	text-align: center;
}

@media screen and (min-width: 768px) {

	/*
	=================================== */
	p {
		line-height: 1.6;
	}

	li {
		line-height: 1.6;
	}

	.sp {
		display: none;
	}

	.pc {
		display: inherit;
	}

	/*
	=================================== */
	#wrapper {
		min-width:1160px;
	}

	.block1 {
		margin:0 auto;
		padding:80px 20px;
		width:1160px;
	}

	.marea_block {
		background-size: 128px 128px, cover;
		height:800px;
	}

	header {
		margin:0 auto;
		padding:0 30px;
		width:1160px;
		height:100px;
	}

	header h1 {
		background-size: 340px 41px;
		padding: 100px 0 0;
		width:340px;
		float:left;
	}

	header .support {
		display: block;
		padding-top:27px;
		width:200px;
		float:right;
	}

	header .support a {
		display: block;
		line-height:45px;
		color:#FFF;
		text-align: center;
		font-size:1.4rem;
		border:1px solid #999;
		border-radius: 45px;
		-moz-border-radius: 45px;
		-webkit-border-radius: 45px;
	}

	header .support a b {
		display: inline-block;
		background: url('../images/icon_mail.svg') no-repeat left center;
		background-size: 22px 16px;
		padding:0 0 0 30px;
	}

	.marea_block .block1 {
		padding-top:100px;
		padding-bottom:0;
	}

	.marea_block .mlead {
		background-size: 685px 100px;
		margin:0 0 30px;
		padding:135px 0 0;
		line-height:1.8;
		font-size:4.0rem;
	}

	.marea_block .mex {
		margin:0 0 50px;
		text-align: center;
		font-size:1.6rem;
	}

	.btnblock .btnlead {
		display: flex;
		justify-content: center;
		align-items: baseline;
		line-height:1.6;
	}

	.btnblock .btnlead b {
		font-size:2.0rem;
	}

	.btnblock .btnlead strong {
		font-size:3.0rem;
	}

	.btnblock .btnbox {
		width:500px;
	}

	.btnblock .btnbox a {
		height:100px;
	}

	.btnblock .btnbox .btn {
		padding:14px 0 0;
		height:100px;
		border-radius: 100px;
		-moz-border-radius: 100px;
		-webkit-border-radius: 100px;
	}

	.btnblock .btnbox .btn strong {
		font-size:3.0rem;
	}

	.btnblock .btnbox .cover {
		border-radius: 100px;
		-moz-border-radius: 100px;
		-webkit-border-radius: 100px;
	}

	.btnblock .btnbox a:hover .cover {
		width:0;
		height:0;
	}

	.block_area1 h2 {
		margin:0 0 20px;
		text-align: center;
		font-size:2.8rem;
	}

	.block_area1 h2 b {
		display: block;
	}

	.block_area1 .bannerarea {
		margin:0 auto 70px;
		width:860px;
	}

	.block_area1 .banner {
		margin:0 0 25px;
	}

	.block_area1 .link b {
		display: inline;
		font-weight: 400;
	}

	.block_area1 .about_block {
		margin:0 auto;
		width:860px;
	}

	.block_area1 .about_block h3 {
		background-size: 425px 52px;
		margin:0 0 20px;
		padding: 52px 0 0;
	}

	.block_area1 .about_block p {
		text-align: justify;
	}

	.area_mtitle {
		margin:0 0 40px;
	}

	.area_mtitle p {
		font-size:5.0rem;
	}

	.mex {
		margin:0 0 40px;
	}

	.mex p {
		line-height:1.8;
		text-align: center;
	}

	.block_area2 {
		background: url('../images/area2back.png') no-repeat center top;
		background-size: 2000px 265px;
		background-color: #f5f0de;
		overflow: hidden;
	}

	.block_area2 .block1 {
		padding:80px 20px;
	}

	.block_area2 .mex {
		margin:0 0 40px;
	}

	.block_area2 .ex_block {
		display: flex;
		justify-content: space-between;
		align-items: center;
		margin:0 0 40px;
	}

	.block_area2 .ex_block:nth-child(even) {
		flex-direction: row-reverse;
	}

	.block_area2 .ex_block .imagebox {
		margin:0;
		width:530px;
		height:370px;
		position: relative;
	}

	.block_area2 .ex_block .imagebox b {
		position: absolute;
		top:0;
		right:0;
		display: block;
		width:620px;
	}

	.block_area2 .ex_block:nth-child(even) .imagebox b {
		right:auto;
		left:0;
	}

	.block_area2 .ex_block .exbox {
		margin:0;
		width:530px;
	}

	.block_area2 .ex_block .exbox h3 {
		margin:0 0 15px;
		line-height:1.2;
		font-size:3.5rem;
		letter-spacing: 1px;
	}

	.block_area3 .block1 {
		padding:80px 20px;
	}

	.block_area3 .mex {
		margin:0 0 40px;
	}

	.type_block {
		overflow-x: visible;
		margin:0 auto;
		padding:0;
		width:1000px;
	}

	.type_block table {
		width:100%;
		font-size:1.6rem;
	}

	.type_block th {
		padding:15px;
	}

	.type_block .th2 {
		width:400px;
	}

	.type_block .th3 {
		width:400px;
	}

	.type_block td {
		padding:15px;
	}

	.type_block td.f20 {
		font-size: 2.0rem;
	}

	.block_area4 .ex_block {
		margin:0 0 50px;
	}

	.block_area4 .ex_block .imagebox {
		margin:0 0 45px;
		max-width:100%;
	}

	.block_area4 .ex_block h3 {
		margin:0 0 20px;
		font-size:3.5rem;
	}

	.block_area4 .ex_block h3 b {
		display: inline-block;
	}

	.point_block {
		display: flex;
		justify-content: space-between;
	}

	.point_block .pointbox {
		margin:0;
	}

	.step_block {
		display: flex;
		align-items: stretch;
		margin:0 auto;
		width:1000px;
	}

	.stepbox {
		background: url('../images/icon_step.svg') no-repeat right center;
		background-size: 21px 26px;
		margin:0 10px 0 0;
		padding:0 30px 0 0;
		width:250px;
	}

	.stepbox.step4 {
		margin:0;
		width:220px;
	}

	.stepbox h3 {
		background-position: center 10px;
	}

	.stepbox.step1 h3 {
		background-position: center top;
	}

	.stepbox.step2 h3 {
		background-position: center 5px;
	}

	.stepbox.step4 p {
		text-align: justify;
	}

	.support_block {
		display: flex;
		align-items: center;
		height:270px;
	}

	.bottom_block .block1 {
		padding-top:25px;
		padding-bottom:30px;
	}

	.flinks {
		margin:0 0 25px;
		text-align: center;
		border-top: none;
	}

	.flinks li {
		display: inline-block;
		padding:0 20px 0 0;
		line-height:16px;
		color:#FFF;
		border-bottom: none;
		position: relative;
	}

	.flinks li:after {
		position: absolute;
		top:0;
		right:7px;
		content: '';
		width:1px;
		height:17px;
		background-color: #FFF;
	}

	.flinks li:last-child {
		padding:0;
	}

	.flinks li:last-child:after {
		display: none;
	}

	.flinks li a {
		display: inline-block;
		background: none;
		padding:0;
	}

	.caution {
		padding:20px 15px;
	}

	.caution .ex1 {
		margin:0 0 10px;
	}

	.share_block {
		display: flex;
		justify-content: center;
	}

	.pagetop {
		right:50px;
		bottom:50px;
		width:50px;
	}

	.pagetop a {
		padding: 50px 0 0;
		background-size: 22px 11px;
	}

	footer .block1 {
		padding-top:35px;
		padding-bottom:35px;
	}

	footer .flogo {
		background-size: 386px 41px;
		margin:0 0 20px;
		padding: 41px 0 0;
	}
}

@media screen and (min-width: 769px) {

	/*
	=================================== */
	.op a:hover {
		opacity: 0.7;
		filter: alpha(opacity=70);
		-ms-filter: "alpha(opacity=70)";
		-moz-opacity: 0.7;
		-khtml-opacity: 0.7;
		zoom: 1;
	}

	.fade a {
		-webkit-transition: opacity 0.3s ease-in-out;
		-moz-transition: opacity 0.3s ease-in-out;
		-o-transition: opacity 0.3s ease-in-out;
		transition: opacity 0.3s ease-in-out;
	}

	.fade2 a {
		-webkit-transition: 0.3s;
		-moz-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s;
	}
}