@charset "UTF-8";
/* ================================================================

	base.css

================================================================ */

* {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

.sp {display: none!important;}
.sp_inline {display: none!important;}
.pc { display:block;}
.pc_inline { display:inline;}

@media only screen and (max-width: 736px) {
	img{
		max-width: 100%;
		height: auto;
	}
	.sp {
		display: block!important;
	}
	.sp_inline {
		display: inline!important;
	}
	.pc {
		display: none!important;
	}
	.pc_inline {
		display: none!important;
	}
}

html,
body {
	height: 100%;
}

/* wrapper
---------------------------------------------------------- */
#wrapper {
	margin: 0 auto;
	min-width: 1000px;
}
@media only screen and (max-width: 736px) {
	#wrapper {
		width: 100%;
		min-width: 100%;
		background-image: none;
	}
}



/* header
---------------------------------------------------------- */
#header {
	padding: 0;
	margin: 0 auto;
	background: url(../img/common/bg_common_01.png) repeat right top;
	position: relative;
	height: 177px;
	width: 100%;
	min-width: 1000px;
}
.header_block {
	width: 1000px;
	height: 70px;
	margin: 0 auto;
}
.header_block .lead {
	float: left;
	padding: 17px 0 0;
	color: #331b0e;
}
.header_block ul {
	margin: 0;
	padding: 0;
}
.header_block ul li {
	list-style-type: none;
	margin: 0;
	padding: 0;
}
@media only screen and (max-width: 736px) {
	#header {
		min-width: 100%;
		height: 100%;
		position: static;
	}
	.header_block {
		width: 100%;
		padding: 0;
		height: auto;
	}
	.header_block .lead {
		display: none;
	}

}


/* site_name
---------------------------------------------------------- */
#header .site_name {
	position: absolute;
	top: 0;
	left: 50%;
	margin: 0 0 0 -103px;
	z-index: 1000;
}
@media only screen and (max-width: 736px) {
	#header .site_name {
		width: 24.375%;
		left: 8px;
		margin: 0;
	}

}


/* info
---------------------------------------------------------- */
#header .info {
	float: right;
	text-align: right;
}
#header .info .tel {
	float: left;
	padding: 13px 21px 0 0;
}
#header .info .request {
	float: left;
	width: 180px;
}
#header .info .request a {
	text-align: center;
	/*background: url(../img/common/h_request.png) no-repeat left top;
	color: #005bac;*/
	display: block;
}
@media only screen and (max-width: 736px) {
	#header .info {
		width: 100%;
		margin: 0;
		padding: 3.5vw 18vw 3.5vw 0;
	}
	#header .info .tel {
		float: right;
		padding: 0;
		width: 46.8%;
	}
	#header .info .tel img {
		display: block;
		height: auto;
		width: 100%;
		float: right;
	}
	#header .info .request {
		display: none;
	}
}



/* gnav
---------------------------------------------------------- */
#gnav {
	clear: both;
	padding: 0;
	background: url(../img/common/bg_gnav.png) repeat-x left top;
}
#gnav ul {
	height: 76px;
	width: 1000px;
	margin: 0 auto;
	padding: 0;
}
#gnav li {
	float: left;
	margin: 0;
	padding: 0;
	position: relative;
}
#gnav li a {
	display: block;
}
#gnav li.gnav_03 {
	padding: 0 198px 0 0;
}
@media only screen and (max-width: 736px) {
	#gnav {
		display: none;
	}
}


/* sp_gnav_block
---------------------------------------------------------- */
#show_menu, #sp_nav, #menu_close {
	display: none;
}
@media only screen and (min-width: 736px) {
	#show_menu, #sp_nav, #menu_close {
		display: none !important;
	}
}
@media only screen and (max-width: 736px) {
	#sp_gnav_block {
		position: relative;
	}
	#show_menu {
		position: absolute;
		display: block;
		z-index: 85;
		text-align: center;
		width: 11.57%;
		height: auto;
		top: 3.5vw;
		right: 3.5vw;
		margin: 1px 0 0;
	}
	#show_menu img {
		width: 100%;
		height: auto;
		display: block;
		margin: 0 auto;
	}
	#sp_nav {
		display: none;
		position: absolute;
		top: 17vw;
		width: 100%;
		background: rgba(0, 0, 0, 0.7);
		z-index: 86;
	}
	#sp_nav .inner {
		background: url(../img/common/bg_common_01.png) repeat right top;
		padding: 0 0 25px;
	}
	#sp_nav h2 {
		background-color: #f67373;
		text-align: center;
		width: 100%;
		padding: 12px 0;
		font-size: 14px;
		font-weight: bold;
		color: #fff;
		margin: 0 auto;
	}
	#menu_close {
		position: absolute;
		display: none;
		z-index: 85;
		text-align: center;
		width: 11.57%;
		height: auto;
		top: 3.5vw;
		right: 3.5vw;
		margin: 1px 0 0;
	}
	#menu_close img {
		width: 100%;
		height: auto;
		display: block;
		margin: 0 auto;
	}
	#menu_close_btm {
		position: absolute;
		/*right: 8px;*/
		/*bottom: -51px;*/
		z-index: 10001;
		background-color: #f67373;
		text-align: center;
		width: 100%;
		padding: 13px 0 12px;
	}
	#menu_close_btm a {
		display: block;
	}
	#menu_close_btm span {
		width: 59px;
		height: 15px;
		display: block;
		margin: 0 auto;
		color: #fff;
		font-weight: bold;
		font-size: 12px;
	}
	#sp_nav .sp_nav_inner {
		clear: both;
		width: 100%;
		height: 100%;
		height: auto;
		margin: 0;
		padding: 0;
		z-index: 10000;
	}

	#sp_nav ul {
		float: none;
		width: 100%;
		border-top: 1px solid #ddd;
		margin: 0 0 25px;
	}
	#sp_nav ul li {
		margin: 0;
		padding: 0;
		text-align: left;
		font-size: 13px;
		font-weight: bold;
		line-height: 1;
		border-bottom: 1px solid #ddd;
	}
	#sp_nav ul li.sg07,
	#sp_nav ul li.sg08 {
		padding: 15px 0 0;
		border-bottom: none;
		text-align: center;
		width: 50%;
		float: left;
		font-weight: normal;
	}
	#sp_nav ul li a {
		color: #331b0e;
		line-height: 1;
		display: block;
		padding: 15px 15px 15px 37px;
		background-image: none;
	}
	#sp_nav ul li.sg01 a {
		background: url(../img/sp/common/icon_fnav_01.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#sp_nav ul li.sg02 a {
		background: url(../img/sp/common/icon_fnav_02.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#sp_nav ul li.sg03 a {
		background: url(../img/sp/common/icon_fnav_03.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#sp_nav ul li.sg04 a {
		background: url(../img/sp/common/icon_fnav_04.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#sp_nav ul li.sg05 a {
		background: url(../img/sp/common/icon_fnav_05.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#sp_nav ul li.sg06 a {
		background: url(../img/sp/common/icon_fnav_06.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#sp_nav ul li.sg07 a,
	#sp_nav ul li.sg08 a {
		border-left: 1px solid #331b0e;
		display: inline-block;
	}
	#sp_nav ul li.sg07 a {
		float: right;
		padding: 2px 0 0 10px;
	}
	#sp_nav ul li.sg08 a {
		border-right: 1px solid #331b0e;
		float: left;
		padding: 2px 10px 0;
		margin: 0 0 0 10px;
	}
	#sp_nav ul li span {
		display: block;
		background: url(../img/sp/common/arrow_fnav.png) no-repeat right center;
		background-size: 9px 15px;
	}
	#sp_nav ul li.sg07 a span,
	#sp_nav ul li.sg08 a span {
		background-image: none;
	}

	#sp_nav .info {
		width: 83.125%;
		float: none;
		margin: 0 auto 25px;
		padding: 0;
	}
	#sp_nav .info img{
		width: 100%;
		display: block;
	}
	#sp_nav .info .btn {
		margin: 13px 0 0;
	}

	p.txt_contact {
		padding-left: 15px;
		background: url(../img/sp/common/arrow_h_mail.png) left 2px no-repeat;
		background-size: 12px auto;
		margin-bottom: 5px;
		text-align: left;
	}
}


/* container
---------------------------------------------------------- */
#container {
    margin: 0 auto;
    position: relative;
    z-index: 10;
    padding:  0;
    top: -31px;
}
#contents {
	margin: 0 auto;
	background-color: #fff;
	position: relative;
    width: 1000px;
    font-size: 16px;
}
@media only screen and (max-width: 736px) {
	#container {
		margin: 0 0 6%;
		padding: 0;
		width: 100%;
		position: static;
	}
	#contents {
		width: 100%;
		font-size: 15px;
	}
}


/* ttl_block
---------------------------------------------------------- */
.ttl_block {
	background: url(../img/common/bg_h1.png) repeat right top;
	margin: 0 0 60px;
	padding: 50px 0 40px;
}
.ttl_block p,
.ttl_block h1 {
	text-align: center;
	margin: 0 auto;
}
.ttl_block p img,
.ttl_block h1 img {
	vertical-align: bottom;
}
@media only screen and (max-width: 736px){
	.ttl_block {
		padding: 20px 0;
		margin: 0 0 20px;
	}
	.ttl_block p,
	.ttl_block h1 {
		width: 93.75%;
	}
}



/* 見出し
---------------------------------------------------------- */
#contents h2 {
}

#contents h3 {
	background: url(../img/common/bg_h3.png) no-repeat left bottom;
	color: #3c1c0b;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.2;
	margin: 0 0 25px;
	padding: 0 0 12px;
}

#contents h4 {
	background: url(../img/common/bg_h4.png) repeat-y left top;
	margin: 0 0 25px;
	padding: 3px 0 0px 15px;
	color: #3c1c0b;
	font-size: 20px;
	font-weight: bold;
}

#contents h5{
	color: #f77676;
	font-size: 16px;
}

@media only screen and (max-width: 736px) {
	#contents h2 {
		margin: 0 0 15px;
		padding:22px;
		font-size: 24px
	}
	#contents h3 {
		margin: 0 0 12px;
	}
}







/*お問い合わせフォーム
---------------------------------------------------------- */
.form_block {}
.form_box {
	margin: 0 auto;
}
@media only screen and (max-width: 736px) {
	.form_box {
		width: 100%;
		margin: 0 auto 20px;
		padding: 0 4%;
	}
}
.form_box .form_table {
	width: 100%;
	margin: 0 0 40px;
	padding: 12px 35px 10px;
}
.form_box .form_table table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border: none;
}
.form_box .form_table table th,
.form_box .form_table table td {
	text-align: left;
	font-size: 1.1rem;
	vertical-align: top;
	line-height: 1.2;
}
.form_box .form_table table tr th {
	width: 105px;
	padding: 25px 0;
	font-weight: normal;
}
.form_box .form_table table tr th .must {
	background-color: #fff100;
	font-size: 0.9rem;
	padding: 2px 5px;
	display: inline-block;
	vertical-align: top;
	margin: -1px 0 0 10px;
}
.form_box .form_table table tr td {
	padding: 15px 0 10px;
}
.form_box .form_table table tr td p {
		margin: 0 0 5px;
}
.form_box .form_table table tr td p.error {
		font-size: 0.9rem;
		color: #ff4e00;
		margin: 10px 0 5px;
}
.form_box .form_table table tr td input,
.form_box .form_table table tr td textarea {
	padding: 3px;
	border:2px solid #e3e3e3;
}
.form_box .form_table table tr td input:focus,
.form_box .form_table table tr td textarea:focus {
	outline: none;
}
.form_box .form_table table tr td textarea {
	width: 500px;
	height: 150px;
	padding: 3px;
}
@media only screen and (max-width: 736px) {
	.form_box .form_table {
		margin: 0 0 20px;
		padding: 0 10px 5px;
		border-top: 1px solid #cecece;
	}
	.form_box .form_table table  {
		/*border-top: 1px solid #eee;*/
		margin: 0;
	}
	.form_box .form_table table tr th {
		border-top:none;
		border-bottom:none;
		padding: 10px 0 0;
		width: 100%;
	}
	.form_box .form_table table tr th.tb_ttl {
		font-size: 116%;
		margin: 0;
	}
	.form_box .form_table table tr td {
		padding: 10px 0 5px;
	}
	.form_box .form_table table tr th,
	.form_box .form_table table tr td {
		display: block;
	}
	.form_box .form_table table tr td .time {
		margin: 10px 0 0;
	}

	.form_box .form_table table tr td input,
	.form_box .form_table table tr td textarea {
		padding: 2%;
	}
	.form_box .form_table table tr td input[type="text"] {
		width: 42%;
	}
	.form_box .form_table table tr td p.form_lon input[type="text"],
	.form_box .form_table table tr td.form_lon input[type="text"] {
		width: 100%;
	}
/*	.form_box .form_table table tr td .email input[type="text"] {
		width: 45%;
	}
	.form_box .form_table table tr td .relation input[type="text"],
	.form_box .form_table table tr td .name input[type="text"] {
		width: 30%;
	}
	.form_box .form_table table tr td .tel input[type="text"],
	.form_box .form_table table tr td .time input[type="text"],*/
	.form_box .form_table table tr td .zip input[type="text"] {
		width: 70%;
	}
	.form_box .form_table table tr td textarea {
		width: 100%;
		height: 150px;
	}
}


.btn_check {
	text-align: center;
	margin: 0 auto 40px;
}
.btn_check .back_btn,
.btn_check input {
	color: #fff;
	display: inline-block;
	margin: 0 5px;
	width: 260px;
	height: 54px;
	line-height: 54px;
	text-align: center;
	border: none;
	background: url(../img/common/btn_01.jpg) no-repeat center bottom;
	background-size: cover;
}
.btn_check .back_btn {
	background: url(../img/common/btn_02.jpg) no-repeat center bottom;
}
@media only screen and (max-width: 736px) {
	.btn_check .back_btn,
	.btn_check input {
		margin-bottom: 15px;
	}

}


/*pager
---------------------------------------------------------- */
.pagination {
	margin: 0 auto 80px;
}
.pagination{
	text-align: center;
	font-size: 116%;
}
.pagination a {
	display: inline-block;
	text-align: center;
	margin: 0 auto;
	color: #888;
	text-decoration: none;
	line-height: 20px;
	padding: 3px;
}
.pagination span.prev,
.pagination span.next {
	width: 40px;
	font-size: 1.2rem;
}
.pagination span.prev {
	margin: 0 10px 0 0;
}
.pagination span.next {
	margin: 0 0 0 10px;
}
.pagination span.prev a,
.pagination span.next a {
	width: 40px;
	height: 40px;
	line-height: 40px;
	background-color: #005bab;
	font-size: 18px;
	white-space: nowrap;
	color: #fff;
	font-weight: normal;
	padding: 2px 0 0;
}
.pagination a:link,
.pagination a:visited {
}
.pagination span:hover a {
	border-bottom: 1px solid #74b1e7;
}
.pagination span {
	display:inline-block;
	margin: 0 auto;
	width: 30px;
	height: 40px;
	line-height: 40px;
	vertical-align: middle;
	text-align: center;
	color: #888;
	font-family: 'Montserrat', sans-serif;
}
.pagination span:hover {
	cursor: pointer;
}
.pagination .current {
	color: #005bab;
	width: 40px;
	height: 40px;
	line-height: 40px;
	margin-top: 1px;
	font-weight: bold;
}
.pagination .disabled {
	display: none;
}
@media only screen and (max-width: 736px) {
	.pagination {
		width: 100%;
		margin:0 0 25px;
		font-size: 108%;
	}
	.pagination a {
		height: 20px;
	}
	.pagination span {
		width: 20px!important;
		height: 25px;
		line-height: 25px;
	}
	.pagination span.prev {
		margin: 0 3px 0 0;
	}
	.pagination span.next {
		margin: 0 0 0 3px;
	}
	.pagination span.prev a,
	.pagination span.next a {
		width: 20px!important;
		height: 25px;
		line-height: 25px;
		margin-top: 1px;
	}
	.pagination .current {
		width: 20px;
		height: 25px;
		line-height: 25px;
		margin-top: 3px;
	}
}



/* footer
---------------------------------------------------------- */
#footer {
	background-color: #333;
}
.footer_block {
	background: url(../img/common/bg_common_01.png) repeat right top;
}
.footer_box {
	width: 1000px;
	margin: 0 auto;
	padding: 0 0 15px;
	position: relative;
}
@media only screen and (max-width: 736px) {
	#footer {
		padding: 0;
	}
	.footer_block {
	}
	.footer_box {
		width: 100%;
		padding: 0 0 25px;
	}
}

.f_logo {
	padding: 0 62px 0 0;
	position: absolute;
	top: 31px;
	left: 0;
}
.f_logo img {
	vertical-align: bottom
}
@media only screen and (max-width: 736px) {
	.f_logo {
		position: static;
		width: 50.9375%;
		margin: 0 auto 15px;
		padding: 0 16px 0 0;
		text-align: center;
	}
}

#fnav {
	position: absolute;
	top: 30px;
	left: 270px;
}
#fnav ul {
	float: left;
	width: 200px;
	margin: 10px 0 0;
	padding: 0;
}
#fnav ul li {
	margin: 0 0 15px;
	padding: 0;
	list-style-type: none;
	font-size: 16px;
}
#fnav ul li a {
	color: #331b0e;
	background: url(../img/common/bg_list_01.png) no-repeat left 6px;
	padding: 0 0 0 15px;
}
@media only screen and (max-width: 736px) {
	#fnav {
		position: static;
	}
	#fnav ul {
		float: none;
		width: 100%;
		border-top: 1px solid #ddd;
		margin: 0 0 25px;
	}
	#fnav ul:nth-of-type(1) {
		margin: 0;
	}
	#fnav ul:nth-of-type(2) {
		border-top: 0;
	}
	#fnav ul li {
		margin: 0;
		padding: 0;
		text-align: left;
		font-size: 13px;
		font-weight: bold;
		line-height: 1;
		border-bottom: 1px solid #ddd;
	}
	#fnav ul li.f07,
	#fnav ul li.f08 {
		padding: 15px 0 0;
		border-bottom: none;
		text-align: center;
		width: 50%;
		float: left;
		font-weight: normal;
	}
	#fnav ul li a {
		line-height: 1;
		display: block;
		padding: 15px 15px 15px 37px;
		background-image: none;
	}
	#fnav ul li.f01 a {
		background: url(../img/sp/common/icon_fnav_01.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#fnav ul li.f02 a {
		background: url(../img/sp/common/icon_fnav_02.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#fnav ul li.f03 a {
		background: url(../img/sp/common/icon_fnav_03.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#fnav ul li.f04 a {
		background: url(../img/sp/common/icon_fnav_04.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#fnav ul li.f05 a {
		background: url(../img/sp/common/icon_fnav_05.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#fnav ul li.f06 a {
		background: url(../img/sp/common/icon_fnav_06.png) no-repeat 10px 12px;
		background-size: 19px 16px;
	}
	#fnav ul li.f07 a,
	#fnav ul li.f08 a {
		border-left: 1px solid #331b0e;
		display: inline-block;
	}
	#fnav ul li.f07 a {
		float: right;
		padding: 2px 0 0 10px;
	}
	#fnav ul li.f08 a {
		border-right: 1px solid #331b0e;
		float: left;
		padding: 2px 10px 0;
		margin: 0 0 0 10px;
	}
	#fnav ul li span {
		display: block;
		background: url(../img/sp/common/arrow_fnav.png) no-repeat right center;
		background-size: 9px 15px;
	}
	#fnav ul li.f07 a span,
	#fnav ul li.f08 a span {
		background-image: none;
	}

}

#footer .info {
	width: 290px;
	float: right;
	margin: 20px 0 30px;
}
#footer .info .box {
}
#footer .info .box img {
	vertical-align: bottom;
}
#footer .info .box .btn {
	margin: 10px 0 0;
}
#footer .info .box .btn a {
	display: block;
}
@media only screen and (max-width: 736px) {
	#footer .info {
		width: 83.125%;
		float: none;
		margin: 0 auto;
		padding: 0;
	}
	#footer .info a img{
		width: 100%;
	}
}

.copyright {
	text-align: center;
	font-family: 'Montserrat', sans-serif;
	font-weight: 400;
	font-size: 0.9rem;
	color: #fff;
	padding: 25px 0;
	margin: 0 auto;
}
@media only screen and (max-width: 736px) {
	.copyright {
		font-size: 10px;
		padding: 12px 0;
	}
}


/*ページトップ
---------------------------------------------------------- */
.pagetop {
	display: none;
	position: relative;
	height: 60px;
	width: 100%;
}
.pagetop a {
	position: fixed;
	bottom: 30px;
	display: block;
	width: 60px;
	height:60px;
	right: 30px;
	z-index: 1000;
}
.pagetop img {
	vertical-align: bottom;
	display: block;
}
@media only screen and (max-width: 736px) {
	.pagetop {
		display: block;
		height: auto;
		margin: 0 0 15px;
	}
	.pagetop a {
		position: static!important;
		text-align: center;
		width: 45px;
		height:45px;
		margin: 0 auto 10px;
	}
	.pagetop span {
		display: block;
		margin: 0 auto;
		font-size: 12px;
		font-weight: bold;
		color: #f78181;
		text-align: center;
	}
}

/*よくある質問
---------------------------------------------------------- */
#contents .bge-contents .faq_area h3 {
	border-bottom: dotted 1px #555 !important;
	padding: 6px 20px 15px 40px !important;
	margin-bottom: 20px !important;
	font-size: 20px !important;
	background: url(/img/faq/icn_q.png) left top no-repeat !important;
	background-size: 28px auto !important;
}

@media only screen and (max-width: 736px) {
		#contents .bge-contents .faq_area h3 {
			padding: 1px 20px 15px 25px !important;
			font-size: 17px !important;
			margin-bottom: 15px !important;
			background: url(/img/faq/icn_q.png) left top no-repeat !important;
			background-size: 20px auto !important;
	}
}


/*低価格の理由
---------------------------------------------------------- */
.bge-contents .reason_list ul {
	padding: 0 !important;
	margin: 0 !important;
	border-top: 1px solid #E0E0E0 !important;
}

.bge-contents .reason_list ul li {
	border-bottom: 1px solid #E0E0E0 !important;
	padding: 0 0 25px !important;
	margin: 25px 0 0 !important;
	list-style: none !important;
	background: none !important;
}

.bge-contents .reason_list ul li h3 {
	background: none !important;
	padding: 0 !important;
	margin: 0 0 20px !important;
}


.bge-contents .plan_box {
	margin: 0 0 30px;
}

.bge-contents .plan_box a {
	text-decoration: none;
	color: #333;
	display: block;
}

.bge-contents .plan_box h3 {
	padding: 0 !important;
	margin: 0 0 20px !important;
	background: none !important;
}

.bge-contents .plan_box .box {
	background: url(../img/top/bg_plan.png) repeat right top;
	float: left;
	width: 200px;
	border: 3px solid #e1e1e1;
	margin: 0;
	position: relative;
	z-index: 10;
}
.bge-contents .plan_box .box img {
	vertical-align: bottom;
}
.bge-contents .plan_box .box.p01 {
	border-radius: 5px 0 0 5px;
	border-right: 1px solid #e1e1e1;
}
.bge-contents .plan_box .box.p02 {
	border-left: none;
	border-right: 1px solid #e1e1e1;
}
.bge-contents .plan_box .box.p03 {
	border-left: none;
	border-right: 1px solid #e1e1e1;
}
.bge-contents .plan_box .box.p04 {
	border-left: none;
	border-right: 1px solid #e1e1e1;
}
.bge-contents .plan_box .box.p05 {
	border-left: none;
	border-radius: 0 5px 5px 0;
}

.bge-contents .plan_box .box .txt {
	margin: 0 10px 10px;
	font-size: 14px;
}
.bge-contents .plan_box .box .fee {
	text-align: center;
	margin: 0 auto 10px;
}

.bge-contents .plan_box .box .photo {
	text-align: center;
	margin: 0 auto 10px;
}

.bge-contents .plan_box .box .photo img {
	width: 160px;
}

.bge-contents .plan_box .box .order_btn {
	text-align: center;
	margin: 0 auto 20px;
}

.bge-contents .other_plan {
	text-align: center;
	margin: 0 auto 70px;
}

@media only screen and (max-width: 736px) {
	.bge-contents .plan_box .box {
		float: none;
		width: 100%!important;
		background: url(../img/top/bg_plan.png) repeat right top!important;
		border: none!important;
		border: 3px solid #e1e1e1!important;
		border-radius: 5px!important;
		margin: 0 0 25px!important;
	}
	.bge-contents .plan_box .box.p04 {
		background-color: transparent;
	}
	.bge-contents .plan_box .box.p05 {
		padding: 0;
	}
	.bge-contents .plan_box .box img {
		width: 100%;
	}
	.bge-contents .plan_box .box .txt {
		font-size: 16px;
		width: 90%;
		margin: 0 auto 10px;
	}
	.bge-contents .plan_box .box .fee {
		width: 100%;
	}
	.bge-contents .plan_box .box .photo {
		width: 90%;
		margin: 0 auto 12px;
	}
	.bge-contents .plan_box .box .photo img {
		width: 100%;
	}
	.bge-contents .plan_box .box .order_btn {
		width: 90%;
	}
	.bge-contents .plan_box .box.p04 .order_btn {
		margin: 0 auto 20px;
	}
	.bge-contents .other_plan {
		margin: 0 auto 25px;
	}

	.bge-contents .reason_list ul li h3 {
		margin: 0 0 5px !important;
	}

}




/*プラン
---------------------------------------------------------- */
.plan_index img {
	display: block !important;
	width: 100% !important;
}

.plan_area {
	width: 100%;
	margin-bottom: 20px;
	border-radius: 5px;
	border: 5px solid #E3E3E3;
}

.plan_area .plan_box {
	width: 198px;
	display: table-cell;
	vertical-align: top;
	border-right: 1px solid #E3E3E3;
}

.plan_area .plan_box_last {
	width: 199px;
	display: table-cell;
}




.plan_area h4 {
	display:-webkit-box !important;
	display:-ms-flexbox !important;
	display: flex !important;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: calc(3.5em + 20px);
	padding: 15px 0 !important;
	margin: 0 !important;
	text-align: center !important;
	color: #FFF !important;
	font-size: 1.3rem !important;
}


.plan_area .plan_box.current .detail, .plan_area .plan_box_last.current .detail {
	background: #fff1dc !important;
}


.plan_area .green h4 {
	background: rgb(134,200,68) !important;
	background: -moz-linear-gradient(top,  rgb(134,200,68) 0%, rgb(85,178,0) 100%) !important;
	background: -webkit-linear-gradient(top,  rgb(134,200,68) 0%,rgb(85,178,0) 100%) !important;
	background: linear-gradient(to bottom,  rgb(134,200,68) 0%,rgb(85,178,0) 100%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#86c844', endColorstr='#55b200',GradientType=0 ) !important;
}

.plan_area .red h4 {
	background: rgb(246,114,114) !important;
	background: -moz-linear-gradient(top,  rgb(246,114,114) 0%, rgb(245,100,100) 100%) !important;
	background: -webkit-linear-gradient(top,  rgb(246,114,114) 0%,rgb(245,100,100) 100%) !important;
	background: linear-gradient(to bottom,  rgb(246,114,114) 0%,rgb(245,100,100) 100%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f67272', endColorstr='#f56464',GradientType=0 ) !important;

}

.plan_area .detail {
	background: url(../img/plan/bg_dot.gif) left top !important;
	padding: 10px 10px 5px !important;
}

.plan_area .detail p {
	font-size: 14px;
}

.plan_area .detail p.price {
	text-align: center !important;
	margin-top: 20px !important;
}


.plan_area .equipment01,
.plan_area .equipment02,
.plan_area .equipment03,
.plan_area .equipment04,
.plan_area .equipment05 {
	display: none;
	border-top: 5px solid #E3E3E3 !important;
}

.plan_area ul {
	padding: 0 !important;
	margin: 0 !important;
}

.plan_area ul li {
	text-align: center !important;
	font-size: 1.0rem !important;
	padding: 15px 0 !important;
	list-style: none !important;
}

.plan_area ul li:nth-child(even){
	background: #fff1dc !important;
}

.open_btn {
	border-radius: 5px !important;
	width: 100% !important;
	text-align: center !important;
	color: #FFF !important;
	font-weight: bold !important;
	font-size: 1.6rem !important;
	margin-bottom: 60px;
	background: rgb(254,153,153) !important;
	background: -moz-linear-gradient(top,  rgb(254,153,153) 0%, rgb(254,153,153) 50%, rgb(254,127,127) 51%, rgb(254,127,127) 100%) !important;
	background: -webkit-linear-gradient(top,  rgb(254,153,153) 0%,rgb(254,153,153) 50%,rgb(254,127,127) 51%,rgb(254,127,127) 100%) !important;
	background: linear-gradient(to bottom,  rgb(254,153,153) 0%,rgb(254,153,153) 50%,rgb(254,127,127) 51%,rgb(254,127,127) 100%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fe9999', endColorstr='#fe7f7f',GradientType=0 ) !important;
}

.open_btn a,
.open_btn span {
	display: block !important;
	padding: 20px 0 !important;
	background: url(../img/plan/icn_open.png) 98% center no-repeat !important;
	color: #FFF;
}

.active span {
	background: url(../img/plan/icn_close.png) 98% center no-repeat !important;
}

.sp_open_btn {
	display: none;
}

@media only screen and (max-width: 736px) {
	.plan_area {
		width: 100%;
		border-radius: 5px;
		border: none;
		margin-bottom: 30px;
	}

	.plan_area .plan_box,
	.plan_area .plan_box_last {
			width: 100%;
			display: block;
			border: 3px solid #E3E3E3;
			margin-bottom: 25px;
			border-radius: 5px;
	}

	.plan_area .plan_box:not(.current), .plan_area .plan_box_last:not(.current) {
		display: none !important;
	}

	.plan_area .plan_box.current .detail, .plan_area .plan_box_last.current .detail {
		background: #fff !important;
	}

	.plan_area h4 {
		display: block !important;
		height: auto;
		padding: 10px 0 !important;
	}

	.plan_area .detail {
		padding: 15px !important;
	}


	.plan_area .equipment01,
	.plan_area .equipment02,
	.plan_area .equipment03,
	.plan_area .equipment04,
	.plan_area .equipment05 {
		border-top: 3px solid #E3E3E3 !important;
	}

	.plan_area ul li {
		font-size: 100% !important;
		padding: 10px 0 !important;
		border-top: 1px solid #E3E3E3;
	}

	.plan_area ul li:nth-child(even){
		background: #fff !important;
	}

	.sp_open_btn {
		margin: 15px auto 5px;
		display: block;
		text-align: center;
		width: 90%;
		border-radius: 5px;
		color: #FFF;
		font-weight: bold;
		font-size: 1.2rem;
	}


	.plan_area .green .sp_open_btn {
		background: #8FCC52;
	}


	.plan_area .green .sp_open_btn span {
		display: block;
		padding: 15px 0;
		background: url(../img/sp/plan/green_icn_open.png) 95% center no-repeat;
		background-size: 20px auto;
	}

	.plan_area .green .active span {
		background: url(../img/sp/plan/green_icn_close.png) 95% center no-repeat !important;
		background-size: 20px auto !important;
	}


	.plan_area .red .sp_open_btn {
		background: #f67373;
	}


	.plan_area .red .sp_open_btn span {
		display: block;
		padding: 15px 0;
		background: url(../img/sp/plan/red_icn_open.png) 95% center no-repeat;
		background-size: 20px auto;
	}

	.plan_area .red .active span {
		background: url(../img/sp/plan/red_icn_close.png) 95% center no-repeat !important;
		background-size: 20px auto !important;
	}

	.open_btn {
		display: none;
	}


}


.bge-contents p.flow {
	text-align: center !important;
	margin: 10px auto !important;
}

.flow_area table {
	width: 100% !important;
}

.flow_area table th {
	width: 200px !important;
	border-radius: 5px 0 0 5px !important;
	border-top: 2px solid #E0E0E0 !important;
	border-left: 2px solid #E0E0E0 !important;
	border-bottom: 2px solid #E0E0E0 !important;
	text-align: center !important;
	color: #FFF !important;
	padding: 20px 0 !important;
	vertical-align: middle !important;
	font-size: 1.2rem;
}

.flow_area table td {
	border-radius: 0 5px 5px 0 !important;
	border-top: 2px solid #E0E0E0 !important;
	border-right: 2px solid #E0E0E0 !important;
	border-bottom: 2px solid #E0E0E0 !important;
}



.flow_area table td {
	padding: 20px !important;
	margin: 0 !important;
}

.flow_area table td span.point_red {
	font-size: 1.6rem !important;
	font-weight: bold !important;
	color: #E53939 !important;
}

.flow_area table td span.annotation {
	color: #E53939 !important;
}


.flow_area th.odd {
	background: rgb(246,114,114) !important;
	background: -moz-linear-gradient(top,  rgb(246,114,114) 0%, rgb(245,100,100) 100%) !important;
	background: -webkit-linear-gradient(top,  rgb(246,114,114) 0%,rgb(245,100,100) 100%) !important;
	background: linear-gradient(to bottom,  rgb(246,114,114) 0%,rgb(245,100,100) 100%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f67272', endColorstr='#f56464',GradientType=0 ) !important;
}

.flow_area th.even {
	background: rgb(254,153,153) !important;
	background: -moz-linear-gradient(top,  rgb(254,153,153) 0%, rgb(254,142,142) 100%) !important;
	background: -webkit-linear-gradient(top,  rgb(254,153,153) 0%,rgb(254,142,142) 100%) !important;
	background: linear-gradient(to bottom,  rgb(254,153,153) 0%,rgb(254,142,142) 100%) !important;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fe9999', endColorstr='#fe8e8e',GradientType=0 ) !important;
}

@media only screen and (max-width: 736px) {
	.flow_area table td {
		border-radius: 0 0 5px 5px !important;
		border-bottom: 2px solid #E0E0E0 !important;
		border-left: 2px solid #E0E0E0 !important;
		border-right: 2px solid #E0E0E0 !important;
		border-top: none !important;
		width: 100% !important;
		display: block !important;
		padding: 10px !important;
	}

	.flow_area table th {
		border-radius: 5px 5px 0 0 !important;
		border-top: 2px solid #E0E0E0 !important;
		border-left: 2px solid #E0E0E0 !important;
		border-right: 2px solid #E0E0E0 !important;
		border-bottom: none !important;
		width: 100% !important;
		display: block !important;
		padding: 10px 0 !important;
	}
}


/*エラーページ
---------------------------------------------------------- */
#errorPage {
	margin: 80px 0;
	text-align: center;
	font-size: 124%;
	line-height: 1.8;
  background: #f3f3f3;
  padding: 60px 0;
}
@media only screen and (max-width: 736px) {
	#errorPage {
		margin: 40px 0;
		font-size: 100%;
	  padding: 40px 10px;
	}
}


/*プラン　ローカルナビ
---------------------------------------------------------- */

.bge-contents .plan_lnav ul li {
	float: left;
	width: 320px;
	margin: 0 20px 20px 0 !important;
	background: #ffffff !important; /* Old browsers */
	background: -moz-linear-gradient(top, #ffffff 0%, #f0f0f0 100%) !important; /* FF3.6-15 */
	background: -webkit-linear-gradient(top, #ffffff 0%,#f0f0f0 100%) !important; /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom, #ffffff 0%,#f0f0f0 100%) !important; /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f0f0f0',GradientType=0 ); /* IE6-9 */
	border: 1px #dbdbdb solid;
	border-radius: 3px;
	font-weight: bold;
}

.bge-contents .plan_lnav ul li:nth-child(3n) {
	margin-right: 0 !important;
}

.bge-contents .plan_lnav ul li a {
	position: relative;
	display: block;
	color: #f77676;
	padding: 22px 15px 20px !important;
}

.bge-contents .plan_lnav ul li a span {
	color: #4a4a4a;
	font-size: 80%;
}

.bge-contents .plan_lnav ul li a:after {
	content: url("../img/plan/arw_pink.png");
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -10px;
}

.bge-contents .plan_lnav ul li:nth-of-type(1) a, .bge-contents .plan_lnav ul li:nth-of-type(2) a, .bge-contents .plan_lnav ul li:nth-of-type(3) a {
	color: #5bb503;
}

.bge-contents .plan_lnav ul li:nth-of-type(1) a:after, .bge-contents .plan_lnav ul li:nth-of-type(2) a:after, .bge-contents .plan_lnav ul li:nth-of-type(3) a:after {
	content: url("../img/plan/arw_green.png");
}

@media only screen and (max-width: 736px) {
	.bge-contents .plan_lnav ul li {
		width: 100%;
		float: none;
		margin: 0 0 10px !important;
		padding: 0 !important;
		font-size: 16px;
	}
	.bge-contents .plan_lnav ul li:last-child {
		margin: 0 !important;
	}
	.bge-contents .plan_lnav ul li a {
		padding: 22px 10px 20px !important;
	}
	.bge-contents .plan_lnav ul li a:after {
		right: 10px;
	}
}
