@charset "utf-8";

#bg {
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	position: fixed;
	z-index: -100;
	background: url(../img/bg-sakura.png) no-repeat right bottom, url(../img/bg.png) repeat-x bottom;
}

#header {
	width: 100%;
	position: fixed;
	z-index: 50;
	background: #e73b5f;
	border-bottom: 1px #fff solid;
}

#header_box {
	width: 980px;
	height: 4.5em;
	margin: auto;
	display: -webkit-flex;
	display: flex;
	-webkit-align-items: center;
	align-items: center;
}

#header_box a:link,
a:visited,
a:active {
	color: #fff;
	text-decoration: none;
	word-wrap: break-word;
	outline: none;
}

#header_box a:hover {
	color: #ccc;
	text-decoration: none;
}


#logo {
	padding-top: 5px;
}

#menu .menu-btn {
	display: none;
}

#menu ul {
	width: 750px;
	padding: 20px 0;
	text-align: right;
}

#menu ul li {
	display: inline;
	margin-left: 10px;
	padding-left: 15px;
	border-left: 1px solid #fff;
}

#menu ul li:first-child {
	margin-left: 0;
	padding-left: 0;
	border-left: 0;
}

#topimg_bg {
	width: 100%;
	height: 95.5vh;
	background: #e73b5f;
}

#topimg {
	position: relative;
	width: 980px;
	height: 95.5vh;
	margin: 4em auto 0;
	color: #fff;
	background: #e73b5f url(../img/top-sakura.png) no-repeat right bottom;
}

#topimg .top01 {
	position: absolute;
	top: 8em;
	left: 0;
}

#topimg .top02 {
	position: absolute;
	bottom: 0;
	right: 4em;
}

.topcopy02 {
	text-align: center;
}

#pagewrap {
	width: 800px;
	margin: 0 auto;
}

section {
	clear: both;
	overflow: hidden;
	_zoom: 1;
}

.left01 {
	float: left;
}

.left01_img {
	float: left;
	padding-right: 20px;
	padding-bottom: 12px;
}

.right01 {
	float: right;
}

.right01_img {
	float: right;
	padding-bottom: 12px;
	padding-left: 20px;
}

.next {
	clear: both;
	padding-top: 2em;
}

/* content
---------------------------------------------*/
.content {
	margin: 0 0 30px;
}

.content p {
	padding-bottom: 1em;
	padding-top: 0.2em;
}

.bar {
	text-align: center;
	padding: 4em 0;
}

.bar02 {
	font-weight: bold;
	line-height: 1;
	padding: 15px 20px;
	color: #fff;
	background-color: #e73b5f;
	text-align: left;
}

.textbox01 {
	background-color: #fff;
	padding: 20px;
	margin-bottom: 1em;
	text-align: left;
}

.frame01 {
	background-color: #fff;
	padding: 20px;
	margin-bottom: 4em;
	text-align: left;
	border: 1px #e73b5f solid;
	border-radius: 10px;
}

.box-l {
	float: left;
	width: 480px;
}

.box-r {
	float: right;
	width: 310px;
	padding-top: 40px;
}

p.copy {
	font-weight: bold;
	line-height: 1.9;
	margin: .5em 0 1em;
}

.storage-map {
	position: relative;
	height: 1100px;
	background: url(../img/storage-map.png) no-repeat right top;
}

.storage-map .info {
	position: absolute;
	top: 0;
	left: 0;
}

.storage-map .illust {
	position: absolute;
	bottom: 0;
	left: 0;
}

.business2-sagaku {
	position: relative;
	height: 841px;
	background: url(../img/business2-02.png) no-repeat center top;
	margin-top: 1em;
}

.business2-sagaku .fukidashi {
	position: absolute;
	top: 320px;
	left: 0;
}

.business2-sagaku .illust {
	position: absolute;
	bottom: 0;
	right: 0;
}

#tobecontinued_bg {
	width: 100%;
	height: 95.5vh;
	background: #e73b5f;
}

#tobecontinued {
	position: relative;
	width: 980px;
	height: 95.5vh;
	margin: 4em auto 0;
	color: #fff;
	background: #e73b5f url(../img/top-sakura.png) no-repeat right bottom;
}

#tobecontinued .txtimg {
	position: absolute;
	bottom: 18em;
	left: 0;
}

#tobecontinued .illust {
	position: absolute;
	bottom: 0;
	right: 0;
}

/* column
---------------------------------------------*/
.c2box {
	clear: both;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	margin-bottom: -2%;
}

.c2box>li {
	flex: 1 0 370px;
	margin-bottom: 2%;
	margin-right: 2%;
	overflow: hidden;
	_zoom: 1;
}

.c2box>li:nth-child(2n) {
	margin-right: 0;
}

.c2box::after {
	display: table;
	clear: both;
	content: '';
}

.c3box {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	clear: both;
}

.c3box li {
	flex: 1 0 200px;
	margin: 1em;
	padding: 2em;
	border: 1px #006a49 solid;
	line-height: 1;
}

.c4box {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	clear: both;
	margin-bottom: -2%;
}

.c4box li {
	flex: 1 0 175px;
	margin-bottom: 2%;
	margin-right: 2%;
	overflow: hidden;
	_zoom: 1;
}

.c4box::after {
	display: table;
	clear: both;
	content: '';
}

.c4box>li:nth-child(4n) {
	margin-right: 0;
}

.c4last>li:last-of-type {
	flex-basis: 360px;
	margin-right: 0;
}

/* teble layout */

.table01 {
	width: 100%;
	margin: 0;
	background-color: #fff;
}

.table01 th {
	width: 20%;
	padding-left: 2em;
	text-align: left;
	font-weight: bold;
}

.table01 td {
	width: 80%;
	padding: 1em;
}

.table01 tr:nth-child(odd) {
	background: #f2f2f2;
}


.Tbox {
	width: 100%;
	text-align: left;
}

.Tbox th {
	padding: 10px;
	vertical-align: middle;
	text-align: left;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	color: #333333;
	font-weight: bold;
	border-bottom-color: #CCCCCC;
}

.Tbox td {
	padding: 10px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCCCCC;
}


/* form
---------------------------------------------*/
.form_tb dl {
	margin: 0 0 15px;
}

.form_tb dt {
	float: left;
	width: 10em;
	padding: 10px 0;
	text-indent: 1em;
	line-height: 150%;
}

.form_tb dd {
	padding: 10px 0 10px 7em;
	line-height: 150%;
	border-bottom: 1px #e8e8e8 solid;
}

.form_tb dd:last-child {
	border-bottom: none;
}

.form p {
	font-size: 100%;
	padding-top: 10px;
	padding-bottom: 3px;
	clear: both;
}

.form_w01 {
	width: 45%;
	font-size: 90%;
	padding: 5px;
}

.form_w02 {
	width: 20%;
	font-size: 90%;
	padding: 5px;
}

.form_w95 {
	width: 95%;
	font-size: 90%;
	padding: 5px;
}

input:focus,
input:hover {
	background-color: #FFFFF1;
}

textarea {
	width: 90%;
	font-size: 100%;
	padding: 5px;
}

input[type="submit"] {
	width: 40%;
	font-size: 15px;
	font-weight: bold;
	margin: 0;
	padding: 10px;
	background: rgb(3, 143, 26);
	background: -moz-linear-gradient(top, rgb(12, 160, 37) 1%, rgba(3, 143, 26, 1) 100%);
	background: -webkit-linear-gradient(top, rgba(12, 160, 37) 1%, rgba(3, 143, 26, 1) 100%);
	background: linear-gradient(to bottom, rgba(12, 160, 37) 1%, rgba(3, 143, 26, 1) 100%);
	border: 1px #fff solid;
	border: 1px #fff solid;
	color: #FFF;
	-webkit-appearance: none;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	-webkit-box-shadow: 0 2px 2px #CCC;
	text-shadow: 1px 2px 3px #000;
	cursor: pointer;
}

.form_submit_btn {
	padding: 10px 0px;
	margin: 0px auto;
	text-align: center;
}

/* FOOTER
---------------------------------------------*/
#footer {
	clear: both;
	margin: 0px auto;
	background: #e73b5f;
	height: 50px;
	text-align: center;
	border-top: 1px #fff solid;
	color: #fff;
}

#footer p {
	text-align: center;
	padding: 15px;
	font-size: 85%;
}

.thanks {
	text-align: center;
	color: #fff;
	padding: 5px;
	font-size: 120%;
	line-height: 1.8em;
	text-shadow: 0px -1px 0px rgba(000, 000, 000, 1), 0px 1px 0px rgba(255, 255, 255, 1);
}



/*******************************************************************
max-width: 
*******************************************************************/
@media screen and (max-width: 768px) {
	.font01 {
		font-size: 110%;
		font-weight: bold;
	}

	.font02 {
		font-size: 110%;
		font-weight: bold;
		text-align: center;
	}

	.font03 {
		font-size: 150%;
		font-weight: bold;
		padding-bottom: 10px;
	}

	.brsp {
		display: none;
	}

	#menu {
		display: block;
		position: fixed;
		top: 3.5em;
		right: 0
	}

	#menu .menu-btn {
		display: block;
		position: fixed;
		top: .2em;
		right: .2em;
	}

	#menu ul {
		display: none;
		width: 100%;
		background-color: #e73b5f;
		padding: 10px 10px;
		text-align: left;
	}

	#menu ul li {
		display: block;
		margin-left: 10px;
		padding-left: 10px;
		border-left: 0;
	}

	#menu ul li:first-child {
		margin-left: 10px;
		padding-left: 10px;
		border-left: 0;
	}

	#menu ul li a {
		display: block;
		border-bottom: 1px solid #fff;
		padding: 1em 1em;
		color: #fff;
	}

	#menu ul li:last-child a {
		border-bottom: none;
	}

	#bg {
		background: url(../img/bg-sakura.png) no-repeat right bottom, url(../img/bg.png) repeat-x bottom;
	}

	#header {
		width: 100%;
		position: fixed;
		z-index: 50;
	}

	#header_box {
		width: 95%;
		height: 3.5em;
		margin: auto;
		display: -webkit-flex;
		display: flex;
		-webkit-align-items: center;
		align-items: center;
	}

	#logo {
		padding-top: 10px;
	}

	#topimg {
		position: relative;
		width: 100%;
		height: 95.5vh;
		margin: 3.5em auto 0;
		color: #fff;
		background: #e73b5f url(../img/top-sakura.png) no-repeat right bottom;
	}

	#topimg .top01 {
		position: absolute;
		top: 2em;
		left: 1em;
	}

	#topimg .top01 img {
		width: 450px;
	}

	#topimg .top02 {
		position: absolute;
		bottom: 0;
		right: 1em;
	}

	#topimg .top02 img {
		width: 300px;
	}


	#pagewrap {
		width: 100%;
		margin: 0 auto;
	}

	section {
		clear: both;
		overflow: hidden;
		_zoom: 1;
	}

	.left01 {
		float: none;
	}

	.left01_img {
		float: none;
		padding-right: 0px;
		padding-bottom: 12px;
	}

	.right01 {
		float: none;
	}

	.right01_img {
		float: none;
		padding-bottom: 12px;
		padding-left: 0px;
	}

	.next {
		clear: both;
		padding-top: 1em;
	}

	/* content
---------------------------------------------*/
	.content {
		margin: 0 auto;
		width: 95%;
	}

	.content p {
		padding-bottom: 1em;
		padding-top: 0.2em;
	}

	.bar {
		text-align: center;
		padding: 4em 0;
	}

	.bar02 {
		font-weight: bold;
		line-height: 1;
		padding: 15px 20px;
		color: #fff;
		background-color: #e73b5f;
		text-align: left;
	}

	.textbox01 {
		background-color: #fff;
		padding: 20px;
		margin-bottom: 1em;
		text-align: left;
	}

	.frame01 {
		background-color: #fff;
		padding: 20px;
		margin-bottom: 1em;
		text-align: left;
		border: 1px #e73b5f solid;
		border-radius: 10px;
	}

	.box-l {
		float: none;
		width: 100%;
	}

	.box-r {
		float: none;
		width: 100%;
		padding-top: 0;
		text-align: right;
	}

	p.copy {
		font-weight: bold;
		line-height: 1.9;
		margin: .5em 0 1em;
	}

	.storage-map {
		position: relative;
		height: 1350px;
		background: url(../img/storage-map_sp.png) no-repeat center 400px;
		background-size: 350px;
	}

	.storage-map .info {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		text-align: center;
	}

	.storage-map .illust {
		position: absolute;
		bottom: 0;
		left: 0;
	}

	.business2-sagaku {
		position: relative;
		height: 1080px;
		background: url(../img/business2-02_sp.png) no-repeat center top;
		background-size: 350px;
		margin-top: 1em;
	}

	.business2-sagaku .fukidashi {
		position: absolute;
		top: 600px;
		left: 0;
	}

	.business2-sagaku .illust {
		position: absolute;
		bottom: 0;
		right: 0;
	}

	#tobecontinued_bg {
		width: 100%;
		height: 95.5vh;
		background: #e73b5f;
	}

	#tobecontinued {
		position: relative;
		width: 100%;
		height: 95.5vh;
		margin: 4em auto 0;
		color: #fff;
		background: #e73b5f url(../img/top-sakura.png) no-repeat right bottom;
	}

	#tobecontinued .txtimg {
		position: absolute;
		bottom: 22em;
		left: 2em;
	}

	#tobecontinued .illust {
		position: absolute;
		bottom: 0;
		right: 2em;
	}

	/* column
---------------------------------------------*/

	.c2box>li {
		flex: 1 0 300px;
		margin-bottom: 2%;
		margin-right: 0;
		overflow: hidden;
		_zoom: 1;
	}

	.c2box>li:nth-child(1n) {
		margin-right: 0;
	}

	.c3box>li {
		flex: 1 0 150px;
		margin: 0 .5em .5em 0;
		padding: .7em;
	}

	.c4box li {
		flex: 1 0 140px;
		margin-bottom: 2%;
		margin-right: 2%;
		overflow: hidden;
		_zoom: 1;
	}

	.c4box::after {
		display: table;
		clear: both;
		content: '';
	}

	.c4box>li:nth-child(2n) {
		margin-right: 0;
	}

	.c4last>li:last-of-type {
		flex-basis: 300px;
		margin-right: 0;
	}

	/* teble layout */

	.table01 {
		width: 100%;
		margin: 0;
		background-color: #fff;
	}

	.table01 th {
		width: 100%;
		display: block;
		padding: 1em 0 0 1em;
		text-align: left;
		font-weight: bold;
	}

	.table01 td {
		width: 100%;
		display: block;
		padding: 1em;
	}

	.table01 tr:nth-child(odd) {
		background: #f2f2f2;
	}


	.Tbox {
		width: 100%;
		text-align: left;
	}

	.Tbox th {
		padding: 10px;
		vertical-align: middle;
		text-align: left;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		color: #333333;
		font-weight: bold;
		border-bottom-color: #CCCCCC;
	}

	.Tbox td {
		padding: 10px;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #CCCCCC;
	}



	/* column
---------------------------------------------*/
	.c2box>li {
		margin-bottom: 8%;
	}

	.c2box>li:nth-child(1n) {
		margin-right: 0;
	}

	.c3box>li {
		flex: 1 0 150px;
		margin: 0 .5em .5em 0;
		padding: .7em;
	}


	.Tbox th {
		display: block;
		padding: 10px;
		vertical-align: middle;
		text-align: left;
		border-bottom: none;
		color: #333333;
		font-weight: bold;
	}

	.Tbox td {
		display: block;
		padding: 0 10px 10px;
		border-bottom-width: 1px;
		border-bottom-style: solid;
		border-bottom-color: #CCCCCC;
	}

	/* form
---------------------------------------------*/
	.form_tb dl {
		margin: 0;
	}

	.form_tb dt {
		float: none;
		width: 100%;
		padding: 15px 0 0px 0;
		text-indent: 0em;
		line-height: 100%;
	}

	.form_tb dd {
		padding: 3px 0 5px 0;
		line-height: 100%;
		border-bottom: 1px #ccc solid;
	}

	.form_tb dd:last-child {
		border-bottom: none;
	}

	.formbtn {
		padding-top: 130px;
		padding-bottom: 45px;
		clear: both;
	}

	.form p {
		font-size: 100%;
		font-weight: bold;
		padding-top: 10px;
		padding-bottom: 3px;
		clear: both;
	}

	.form_w01 {
		width: 95%;
		font-size: 100%;
	}

	.form_w02 {
		width: 50%;
		font-size: 100%;
	}

	.form_w95 {
		width: 95%;
		font-size: 120%;
		padding: 5px;
	}

	input:focus,
	input:hover {
		background-color: #FFFFF1;
	}

	textarea {
		width: 95%;
		font-size: 120%;
		padding: 5px;
	}

	input[type="submit"] {
		width: 100%;
		font-size: 15px;
		font-weight: bold;
		margin: 0;
		padding: 10px;
		background: #004513;
		background: -webkit-gradient(linear, left top, left bottom, color-stop(1.00, #004513), color-stop(0.00, #078303));
		background: -webkit-linear-gradient(#078303, #004513);
		background: -moz-linear-gradient(#078303, #004513);
		background: -ms-linear-gradient(#078303, #004513);
		background: linear-gradient(#078303, #004513);
		border: 1px #fff solid;
		color: #FFF;
		-webkit-appearance: none;
		-webkit-border-radius: 10px;
		-moz-border-radius: 10px;
		border-radius: 10px;
		-webkit-box-shadow: 0 2px 2px #CCC;
		text-shadow: 1px 2px 3px #C45C00;
		cursor: pointer;
	}

	.c3_form {
		width: 25%;
		font-size: 120%;
		padding: 5px;
	}

	/* FOOTER
---------------------------------------------*/
	#footer {
		clear: both;
		margin: 0px auto;
		background: #e73b5f;
		height: 50px;
		text-align: center;
		border-top: 1px #fff solid;
		color: #fff;
	}

	#footer p {
		text-align: center;
		padding: 15px;
		font-size: 85%;
	}

}