@charset "utf-8";

/* ////////////////////////////////////////////////////////////
	File Name	common.css
*/
/*============================================================
	RESET
*/
html,body { background:#FFFFFF; }
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,
pre,code,form,fieldset,legend,input,textarea,
p,blockquote,th,td,embed,button { margin:0; padding:0; }
table { border-collapse:collapse; border-spacing:0; }
fieldset,img { border:0; }
li { list-style:none; }
caption,th { text-align:left; }
q:before,q:after { content:''; }
abbr,acronym { border:0; font-variant:normal; }
sup { vertical-align:text-top; }
sub { vertical-align:text-bottom; }
legend { color:#000000; }
area { outline: 0; }
img { vertical-align: top; }
i { font-style: normal; }
h1,h2,h3,h4,h5,h6 { font-weight: normal; }

/*============================================================
	FONT FACE
*/
@font-face {
	font-family: "NotoSansCJKjp";
	font-style: normal;
	font-weight: normal;
	src: url('../fonts/NotoSansCJKjp-Light.otf') format('opentype');
}
@font-face {
	font-family: "NotoSansCJKjpBold";
	font-style: normal;
	font-weight: normal;
	src: url('../fonts/NotoSansCJKjp-Bold.otf') format('opentype');
}

/*============================================================
	CLEARFIX
*/
.cf:before, .cf:after, .row:before, .row:after { content: " "; display: table; }
.cf:after, .row:after { clear: both; }
.cf, .wrap { *zoom: 1; }

/*============================================================
	BODY
*/
html, body {
	width: 100%;
}
body {
	font-family: "NotoSansCJKjp", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	color: #000;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}
a {
	outline: none;
	text-decoration: none;
	color: #4aa3df;
	cursor: pointer;
}
a:hover {
	color: #2a82bd;
}
button {
	cursor: pointer;
}
img {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

/*============================================================
	セレクト
*/
.select {
	position: relative;
}
.select select {
	width: 100% !important;
	height: 100% !important;
	cursor: pointer;
}
.select span.customSelect {
	display: table !important;
	width: 100%;
	font-size: 16px;
}
.select span.customSelect .customSelectInner {
	display: table-cell !important;
	vertical-align: middle;
	padding: 0 60px 0 20px;
	width: 100% !important;
	height: 58px;
	line-height: 1.3;
	background: #ffffff url(../img/form_select.png) 100% 50% no-repeat;
	border: 1px solid #999999;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	font-size: 18px;
	color: #333333;
}

/*============================================================
	CONTAINER
*/
#container {
	width: 100%;
}

span.link-arrow-r,
span.link-arrow-l {
	position: relative;
}
span.link-arrow-r span {
	position: absolute;
	right: -1.7em;
}
span.link-arrow-l span {
	position: absolute;
	left: -1.7em;
}

/*============================================================
	ヘッダー
*/
.header {
	position: absolute;
	position: fixed;
	top: 0; left: 0;
	z-index: 10;
	width: 100%;
	background: transparent url(../img/bg_header.png) 0 0 repeat;
}
.header .in {
	margin: 0 auto;
	height: 60px;
	position: relative;
}
.header h1 {
	position: absolute;
	top: 14px; left: 20px;
}
.header h1 img {
	width: 96px;
}
.header ul.nav {
	display: table;
	position: absolute;
	top: 16px; left: 50%;
	margin-left: -300px;
}
.header ul.nav li {
	display: table-cell;
	padding: 0 20px;
	vertical-align: middle;
	text-align: center;
	font-size: 14px;
	line-height: 1.2;
}
.header ul.nav li:last-child {
	padding-right: 0;
}
.header ul.nav li a {
	display: table;
	padding: 5px;
	vertical-align: middle;
	text-decoration: none;
	color: #fff;
}
.header ul.nav li a:hover {
	opacity: 0.7;
}
.header ul.sns {
	position: absolute;
	top: 19px; right: 0;
}
.header ul.sns li {
	display: table-cell;
	padding: 0 5px;
	height: 21px;
	vertical-align: top;
	line-height: 1;
}
.header ul.sns li:last-child {
	padding-right: 0;
}
.header ul.sns .facebook {
	overflow: hidden;
	height: 21px;
}

.header .nav-opener {
	display: none;
	position: absolute;
	top: 0; right: 0;
	width: 60px; height: 60px;
	background: #000 url(../img/nav_opener.png) 0 0 no-repeat;
	background-size: cover;
	-webkit-background-size: cover;
}

/*============================================================
	ナビゲーション（SP）
*/
.nav-sp {
	display: none;
	position: fixed;
	z-index: 999;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: transparent url(../img/bg_header.png) 0 0 repeat;
}
.nav-sp .in {
	display: table;
	width: 100%; height: 100%;
}
.nav-sp .in ul {
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
.nav-sp .in ul li {
	padding: 30px 0;
	font-size: 32px;
	line-height: 1.5;
}
.nav-sp .in ul li a {
	color: #fff;
}
.nav-sp a.nav-close {
	display: block;
	position: absolute;
	top: 0; right: 0;
	width: 60px; height: 60px;
	background: transparent url(../img/nav_close.png) 0 0 no-repeat;
	background-size: cover;
	-webkit-background-size: cover;
}

/*============================================================
	フッター
*/
.footer {
	background: #000;
	color: #fff;
	text-align: center;
}
.footer p {
	padding: 20px 0;
	font-size: 14px;
	line-height: 1.3;
}

/*============================================================
	コンテンツ
*/
.content {
	overflow: hidden;
	position: relative;
}
.content .wrap {
	position: relative;
	z-index: 1;
	margin: 0 auto;
	padding: 0 15px;
	max-width: 1100px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.content .subhead {
	font-size: 24px;
	line-height: 1.2;
	text-align: center;
}

/*============================================================
	レイアウト
*/
.content .row-table {
	display: table;
	width: 100%;
}
.content .row-table .col {
	display: table-cell;
	vertical-align: middle;
}
.content .row .col {
	float: left;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.content .row .col3-1,
.content .row-table .col3-1 {
	width: 33.33%;
}
.content .row .col3-2,
.content .row-table .col3-2 {
	width: 66.66%;
}
.content .row .col2-1,
.content .row-table .col2-1 {
	width: 50%;
}

/*============================================================
	キービジュアル
*/
#kv {
	position: fixed;
	top: 0; left: 0;
	width: 100%; height: 700px;
	background: #fff url(../img/kv.jpg) 50% 70% no-repeat;
	background-size: cover;
	-webkit-background-size: cover;
}
@media screen and (max-width: 1180px) {
	#kv {
		background-position: 50% 100%;
		background-size: 1180px 820px;
		-webkit-background-size: 1180px 820px;
	}
}

/*============================================================
	メイン
*/
#main {
	position: relative;
	width: 100%; height: 700px;
}
#main .wrap {
	position: relative;
	margin: 0 auto;
	max-width: 1200px; height: 700px;
}
#main .heading {
	position: absolute;
	top: 200px; left: 6.6%;
	width: 330px;
}
#main .heading h2 {
	overflow: hidden;
	width: 330px; height: 246px;
	background: transparent url(../img/main_w.png) 0 0 no-repeat;
	text-indent: -999em;
}
#main .heading a {
	display: table;
	margin: 0 auto;
	width: 320px;
	font-size: 18px;
	line-height: 40px;
	color: #fff;
	border-radius: 20px;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	text-align: center;
}
#main .heading .facebook {
	margin-top: 30px;
}
#main .heading .facebook a {
	background: #3e58a6;
}
#main .heading .facebook a:hover {
	background: #4b65b2;
}
#main .heading .blog {
	margin-top: 20px;
}
#main .heading .blog a {
	background: #1c94ce;
}
#main .heading .blog a:hover {
	background: #37a6db;
}

/*============================================================
	コンセプト
*/
#concept {
	background: #a6a5a7;
	text-align: center;
}
#concept .wrap {
	margin: 0 auto;
	padding-top: 450px;
	padding-bottom: 100px;
}
#concept .wrap .subhead {
	font-size: 48px;
	line-height: 1.2;
	letter-spacing: 0.24em;
	text-indent: 0.12em;
}
#concept .wrap .text {
	margin-top: 20px;
	font-size: 18px;
	line-height: 1.6;
}
#concept .image {
	position: absolute;
	top: -170px; left: 50%;
	margin: 0 0 0 -450px;
}

/*============================================================
	メニュー・プラン
*/
#plan {
	padding: 40px 0 50px 0;
	background: #fff;
}
#plan .subhead {
	padding-bottom: 30px;
}
#plan .kana {
	letter-spacing: -2px;
}
#plan .menu {
	position: relative;
	margin: 0 auto;
	width: 1100px;
}
#plan .wrap .img-base {
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	text-align: center;
}
#plan .menu .slide {
	overflow: hidden;
	position: relative;
	width: 100%;
}
#plan .menu .block {
	position: absolute;
	top: 0; left: 100%;
	width: 100%;
}
#plan .menu .slide .block:first-child {
	left: 0;
}
#plan .menu .block .img {
	height: 160px;
	text-align: center;
}
#plan .menu .block h3 {
	font-size: 36px;
	line-height: 1.2;
	text-align: center;
}
#plan .menu .block h4 {
	margin-top: 30px;
	padding: 14px 0 16px 0;
	font-size: 22px;
	line-height: 30px;
	background: #999;
	color: #fff;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	text-align: center;
}
#plan .menu .block h4.small {
	font-size: 20px;
}
#plan .menu .block p {
	margin-top: 20px;
	padding: 0 5px;
	font-size: 18px;
	line-height: 1.5;
	text-align: left;
}
#plan .menu .block .col {
	padding: 0 20px;
}
#plan .menu .block .newcar {
	margin-top: 20px;
}
#plan .menu .block .newcar h4 {
	margin-top: 0;
	padding: 12px 0 14px 0;
	border: 2px solid #999;
	background: #fff;
	color: #666;
}
#plan .menu .block .newcar p {
	margin-top: 0;
}
#plan .menu .block .btn-frame {
	margin: 0 14px;
	margin-top: 30px;
}
#plan .menu .block .btn-frame a {
	display: block;
	font-size: 22px;
	line-height: 56px;
	border: 2px solid #999;
	background: #fff;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	text-align: center;
}
#plan .menu .block .btn-frame a:hover {
	background: #f8f8f8;
}
#plan .menu .block .note {
	font-size: 18px;
	text-align: center;
}

#plan .menu .block .menu01,
#plan .menu .block .menu02,
#plan .menu .block .menu03 {
	padding: 0 80px;
}
#plan .menu .block .menu04 {
	padding: 0 90px;
}
#plan .menu .block .menu04 .col {
	padding: 0 10px;
}
#plan .menu .block .menu04 dl {
	margin-top: 10px;
	padding-bottom: 10px;
}
#plan .menu .block .menu04 dl dt {
	padding-top: 10px;
	float: right;
	width: 170px;
}
#plan .menu .block .menu04 dl dd {
	float: left;
	width: 240px;
}
#plan .menu .block .menu04 dl dd p {
	margin-top: 0;
}

#plan .prev,
#plan .next {
	display: block;
	overflow: hidden;
	position: absolute;
	z-index: 1;
	top: 48%;
	width: 40px; height: 60px;
	border: 0;
	background: transparent url(../img/menu_arrow.png) 0 0 no-repeat;
	text-indent: -999em;
}
#plan .prev {
	left: 0;
	background-position: 0px 0px;
}
#plan .next {
	right: 0;
	background-position: -40px 0px;
}
#plan .prev:hover,
#plan .next:hover {
	opacity: 0.7;
}

#plan ul.dots {
	display: table;
	margin: 0 auto;
	padding-top: 10px;
}
#plan ul.dots li {
	display: table-cell;
}
#plan ul.dots li a {
	display: block;
	overflow: hidden;
	width: 20px; height: 20px;
	border: 0;
	outline: 0;
	background: transparent url(../img/menu_dots.png) 0 0 no-repeat;
	background-size: 20px 40px;
	-webkit-background-size: 20px 40px;
	text-indent: -999em;
}
#plan ul.dots li a.active {
	background-position: 0 -20px;
}

/* オプションプラン */
#plan .option {
	margin: 0 auto;
	margin-top: 50px;
	width: 900px;
}
#plan .option .col {
	margin-top: 30px;
	padding: 0 20px;
}
#plan .option .col .img {
	text-align: center;
}
#plan .option .col h3 {
	margin-top: 20px;
	font-size: 18px;
	line-height: 48px;
	background: #fff;
	border: 1px solid #666;
	border-radius: 30px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	text-align: center;
}
#plan .option .col p {
	margin-top: 15px;
	font-size: 16px;
	line-height: 1.5;
}

/*============================================================
	プライス
*/
#price {
	padding: 40px 0 50px 0;
	background: #e7e7e7;
	text-align: center;
}
#price .wrap .subhead {
	height: 46px;
	font-size: 24px;
	line-height: 1.2;
}

/* アイコン */
#price .steps {
	height: 60px;
}
#price .steps ul {
	display: table;
	margin: 0 auto;
}
#price .steps ul li {
	display: table-cell;
	padding-right: 40px;
	background: transparent url(../img/price_steps_arrow.png) 100% 50% no-repeat;
}
#price .steps ul li:last-child {
	padding-right: 0;
	background: none;
}
#price .steps ul li span {
	display: block;
	width: 40px; height: 40px;
	background: transparent url(../img/price_steps.png) 0 0 no-repeat;
	background-size: 80px 240px;
	-webkit-background-size: 80px 240px;
}
#price .steps ul li.icon1 span { background-position: 0px 0px; }
#price .steps ul li.icon2 span { background-position: 0px -40px; }
#price .steps ul li.icon3 span { background-position: 0px -80px; }
#price .steps ul li.icon4 span { background-position: 0px -120px; }
#price .steps ul li.icon5 span { background-position: 0px -160px; }
#price .steps ul li.icon6 span { background-position: 0px -200px; }
#price .steps ul li.icon1 span.current { background-position: -40px 0px; }
#price .steps ul li.icon2 span.current { background-position: -40px -40px; }
#price .steps ul li.icon3 span.current { background-position: -40px -80px; }
#price .steps ul li.icon4 span.current { background-position: -40px -120px; }
#price .steps ul li.icon5 span.current { background-position: -40px -160px; }
#price .steps ul li.icon6 span.current { background-position: -40px -200px; }

/* 選択 */
#price .step-wrap {
	overflow: hidden;
	position: relative;
	width: 100%; height: 470px;
}
#price .bg-l,
#price .bg-r {
	position: absolute;
	z-index: 9;
	top: 0;
	width: 50px; height: 100%;
}
#price .bg-l {
	left: 0;
	background: transparent url(../img/price_bg_l.png) 0 0 repeat-y;
}
#price .bg-r {
	right: 0;
	background: transparent url(../img/price_bg_r.png) 0 0 repeat-y;
}
#price .step {
	position: absolute;
	top: 0; left: 100%;
	width: 100%;
}
#price .step h3 {
	height: 60px;
	font-size: 30px;
	line-height: 1.2;
}
#price .step .text {
	padding-bottom: 24px;
	font-size: 18px;
	line-height: 1.2;
}
#price .step .text br.none {
	display: none;
}
#price .step .price {
	font-size: 24px;
	line-height: 1.2;
}
#price .step1 {
	left: 0;
}
#price .step1 .form {
	margin-top: 80px;
	height: 160px;
}
#price .step2 .form-select {
	margin-top: 50px;
	height: 110px;
}
#price .step2 .price {
	height: 80px;
}
#price .step3 .form-select {
	margin-top: 50px;
	height: 110px;
}
#price .step3 .price {
	height: 80px;
}
#price .step4 .form-select1 {
	height: 90px;
}
#price .step4 .form-select2 {
	height: 90px;
}
#price .step4 .price {
	height: 60px;
}
#price .step5 .form {
	height: 180px;
}
#price .step5 .price {
	height: 60px;
}
#price .step6 .text {
	margin-top: 40px;
	padding-bottom: 40px;
	line-height: 2;
}
#price .step6 .price {
	height: 100px;
	font-family: "NotoSansCJKjpBold", 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	font-size: 48px;
	line-height: 1.2;
	-moz-text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.2);
	-webkit-text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.2);
	-ms-text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.2);
	text-shadow: 3px 3px 0px rgba(0, 0, 0, 0.2);
}
/* セレクト */
#price .step .select {
	margin: 0 auto;
	max-width: 560px;
	text-align: left;
}
#price .step .select-base {
	display: none;
}
/* オプション */
#price .table {
	display: table;
	margin: 0 auto;
	text-align: left;
}
#price .table .table-row {
	display: table-row;
}
#price .table .table-row div {
	display: table-cell;
	padding: 12px 20px;
	font-size: 18px;
	line-height: 1.2;
	vertical-align: middle;
}
#price .table .table-row .caption {
	font-size: 24px;
	line-height: 1.2;
}
#price .table .table-row .radio {
	display: block;
	padding: 0;
	cursor: pointer;
}
#price .table .table-row .radio span {
	display: inline-block;
	margin-right: 8px;
    width: 26px; height: 26px;
	background: transparent url(../img/form_parts.png) 0 0 no-repeat;
	background-size: 26px 52px;
	-webkit-background-size: 26px 52px;
	vertical-align: -6px;
}
#price .table .table-row .radio-checked span {
	background-position: 0 -26px;
}
/* ボタン */
#price .btn-prev {
	margin-top: 20px;
}
#price .btn {
	margin: 0 auto;
	max-width: 350px;
}
#price .btn a {
	display: table;
	width: 100%;
	background: #4aa3df;
	font-size: 24px;
	line-height: 60px;
	color: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}
#price .btn a:hover {
	background: #61b6f0;
}
/* 注釈 */
#price .wrap .note {
	font-size: 14px;
	line-height: 1.2;
}

/*============================================================
	会社概要
*/
#company {
	padding: 40px 0 60px 0;
	background: #fff;
	text-align: center;
}
#company .subhead {
	font-size: 24px;
	line-height: 1.2;
}
#company .map {
	margin-top: 40px;
	width: 100%; height: 300px;
	background: #eee;
}
#company .map iframe {
	width: 100%; height: 100%;
}
#company .map-link {
	display: none;
	margin-top: 10px;
}
#company .wrap {
	margin-top: 40px;
	max-width: 900px;
}
#company .wrap .row .col {
	margin-top: 32px;
	width: 50%;
}
#company .wrap .row .col h4 {
	padding: 16px 0;
	font-size: 24px;
	line-height: 1.2;
}
#company .wrap .row .col p {
	font-size: 18px;
	line-height: 2;
}
#company .wrap .row .col p span a {
	color: #000;
}
#company .wrap .row .info img {
	width: 230px;
}
#company .contact {
	margin-top: 10px;
}
#company .widget {
	margin: 0 auto;
	width: 400px; height: 330px;
}

/*============================================================
	メディアクエリ
*/
@media screen and (max-width: 1170px) {

	#plan .menu {
		width: 1020px;
	}
	#plan .menu .block .menu01,
	#plan .menu .block .menu02,
	#plan .menu .block .menu03 {
		padding: 0 40px;
	}
	#plan .menu .block .menu04 {
		padding: 0 50px;
	}
}

@media screen and (max-width: 1024px) {

	/*--------------------------------------------------
		メニュー・プラン
	*/
	#plan .kana {
		letter-spacing: 0;
	}
	#plan .menu {
		width: 860px;
	}
	#plan .menu .block .menu01,
	#plan .menu .block .menu02,
	#plan .menu .block .menu03,
	#plan .menu .block .menu04 {
		padding: 0 30px;
	}
	#plan .menu .block .col {
		float: none;
		padding: 0;
		width: 100%;
	}
	#plan .menu .block .note {
		font-size: 14px;
		text-align: center;
	}
	#plan .menu .block .btn-frame,
	#plan .menu .block .menu01 h4,
	#plan .menu .block .menu02 h4,
	#plan .menu .block .menu03 h4,
	#plan .menu .block .menu04 h4,
	#plan .menu .block .newcar h4 {
		margin: 0;
		margin-top: 30px;
		font-size: 20px;
	}
	#plan .menu .block .btn-frame a {
		font-size: 20px;
	}
	#plan .menu .block p,
	#plan .menu .block .newcar p {
		margin-top: 15px;
	}
	#plan .menu .block .row-table,
	#plan .menu .block .row-table .col {
		display: block;
	}
	#plan .menu .block .menu04 h3 {
		margin: 26px 0 10px 0;
	}
	#plan .menu .block .menu04 dl {
		display: table;
	}
	#plan .menu .block .menu04 dl dt {
		float: none;
		display: table-cell;
		vertical-align: middle;
		padding-top: 0;
		width: 190px; height: 80px;
	}
	#plan .menu .block .menu04 dl dd {
		float: none;
		display: table-cell;
		vertical-align: middle;
		width: auto;
	}
	#plan .menu .block .menu04 h4 {
		margin-top: 10px;
		padding: 8px 0 10px 0;
		line-height: 30px;
		border-radius: 24px;
		-webkit-border-radius: 24px;
		-moz-border-radius: 24px;
	}
	#plan .prev,
	#plan .next {
		top: 50px;
	}
	/* オプションプラン */
	#plan .option {
		padding: 0 30px;
		width: 860px;
	}
	#plan .subhead {
		padding-bottom: 0;
	}
	#plan .option .col {
		float: none;
		display: table;
		margin-top: 40px;
		padding: 0 0 10px 0;
		width: 100%;
	}
	#plan .option .col .img {
		display: table-cell;
		vertical-align: middle;
		width: 230px;
		text-align: left;
	}
	#plan .option .col .text {
		display: table-cell;
		vertical-align: top;
	}
	#plan .option .col h3 {
		margin-top: 0;
	}
}

@media screen and (max-width: 970px) {
	/* ヘッダー */
	.header ul.nav {
		top: 16px; left: 0;
		margin-left: 130px;
	}
	.header ul.nav li {
		padding: 0 10px;
	}
}

@media screen and (max-width: 900px) {
	/* ヘッダー */
	.header ul.nav {
		top: 16px; left: 0;
		margin-left: 126px;
	}
	.header ul.nav li {
		padding: 0 4px;
	}
	/*--------------------------------------------------
		コンセプト
	*/
	#concept .wrap {
		width: 640px;
	}
	#concept .wrap .text {
		text-align: left;
	}
	#concept .wrap .text br {
		display: none;
	}
	/*--------------------------------------------------
		メニュー・プラン
	*/
	#plan .menu,
	#plan .option {
		width: 740px;
	}
	#plan .option {
		padding: 0 40px;
	}
	/*--------------------------------------------------
		プライス
	*/
	#price .wrap {
		padding: 0;
	}
	#price .bg-l,
	#price .bg-r {
		display: none;
	}
	#price .step .text br.none {
		display: block;
	}
	/* 選択 */
	#price .step-wrap {
		height: 530px;
	}
	/* オプション */
	#price .table,
	#price .table .table-row,
	#price .table .table-row div {
		display: block;
	}
	#price .table {
		width: 440px;
	}
	#price .table .table-row div {
		float: left;
		padding: 10px 0 0 0;
	}
	#price .table .table-row .caption {
		float: none;
		padding: 12px 0 0 0;
		font-size: 20px;
		line-height: 1.2;
	}
	#price .table .table-row .radio {
		padding: 0 20px;
	}
	#price .step5 .text {
		padding-bottom: 10px;
	}
	#price .step5 .form {
		height: 240px;
	}

	/*--------------------------------------------------
		会社概要
	*/
	#company .wrap .row {
		margin: 0 auto;
		width: 700px;
	}
	#company .wrap .row .col,
	#company .widget {
		width: 380px;
	}
	#company .wrap .row .info {
		width: 320px;
	}
}

@media screen and (max-width: 768px) {
	/*--------------------------------------------------
		ヘッダー
	*/
	.header .in {
		height: 60px;
	}
	.header ul.nav,
	.header ul.sns {
		display: none;
	}
	.header .nav-opener {
		display: block;
	}
	/*--------------------------------------------------
		ナビゲーション（SP）
	*/
	.nav-sp {
		display: block;
		display: none;
	}
	/*--------------------------------------------------
		キービジュアル
	*/
	#kv {
		position: absolute;
		height: 660px;
		background-size: 1100px auto;
		background-position: 50% 100%;
	}
	/*--------------------------------------------------
		メイン
	*/
	#main {
		height: 660px;
	}
	#main .heading {
		left: 20px;
		height: 660px;
	}
	/*--------------------------------------------------
		コンセプト
	*/
	#concept .wrap {
		width: 100%;
	}
	#concept .wrap .text {
		padding: 0 30px;
	}
	/*--------------------------------------------------
		メニュー・プラン
	*/
	#plan .menu,
	#plan .option {
		padding: 0;
		width: 100%;
	}
	#plan .option,
	#plan .menu .block .menu01,
	#plan .menu .block .menu02,
	#plan .menu .block .menu03,
	#plan .menu .block .menu04 {
		padding: 0 40px;
	}
	#plan .menu .block .note {
		text-align: left;
	}
	/*--------------------------------------------------
		プライス
	*/
	/* セレクト */
	#price .step .select {
		max-width: 560px;
	}
	/*--------------------------------------------------
		会社概要
	*/
	#company .wrap .row {
		width: 100%;
	}
	#company .wrap .row .col {
		float: none;
		margin-left: auto;
		margin-right: auto;
		width: 100%;
		max-width: 500px;
	}
	#company .widget {
		width: 100%;
	}
}

@media screen and (max-width: 620px) {
	/*--------------------------------------------------
		ヘッダー
	*/
	.header .in {
		height: 50px;
	}
	.header h1 {
		top: 10px; left: 10px;
	}
	.header .nav-opener {
		width: 50px; height: 50px;
	}
	/*--------------------------------------------------
		フッター
	*/
	.footer p {
		padding: 15px 0;
		font-size: 11px;
		line-height: 1.3;
	}
	/*--------------------------------------------------
		ナビゲーション（SP）
	*/
	.nav-sp .in ul li {
		padding: 15px 0;
		font-size: 20px;
		line-height: 1.5;
	}
	.nav-sp a.nav-close {
		width: 50px; height: 50px;
	}
	/*--------------------------------------------------
		キービジュアル
	*/
	#kv {
		height: 450px;
		background-size: 620px auto;
		background-position: 80% 80px;
	}
	/*--------------------------------------------------
		コンテンツ
	*/
	.content .wrap {
		padding: 0 15px;
	}
	/*--------------------------------------------------
		メイン
	*/
	#main {
		height: 450px;
	}
	#main .heading {
		top: 70px; left: 0;
		width: 100%;
	}
	#main .heading h2 {
		margin: 0 auto;
		width: 165px; height: 123px;
		background: transparent url(../img/main_b.png) 0 0 no-repeat;
		background-size: cover;
		-webkit-background-size: cover;
	}
	#main .heading a {
		width: 240px;
		font-size: 14px;
		line-height: 30px;
	}
	#main .heading .facebook {
		margin-top: 170px;
	}
	#main .heading .blog {
		margin-top: 10px;
	}
	/*--------------------------------------------------
		コンセプト
	*/
	#concept .wrap {
		padding-top: 210px;
		padding-bottom: 30px;
	}
	#concept .wrap .subhead {
		font-size: 32px;
		line-height: 1.2;
		letter-spacing: 4px;
		text-indent: 2px;
	}
	#concept .wrap .text {
		margin-top: 10px;
		padding: 0;
		font-size: 14px;
		line-height: 1.6;
	}
	#concept .image {
		position: absolute;
		top: -100px; left: 50%;
		margin: 0 0 0 -225px;
	}
	#concept .image img {
		width: 450px; height: 450px;
	}

	/*--------------------------------------------------
		メニュー・プラン
	*/
	#plan {
		padding: 20px 0 50px 0;
	}
	#plan .option,
	#plan .menu .block .menu01,
	#plan .menu .block .menu02,
	#plan .menu .block .menu03,
	#plan .menu .block .menu04 {
		padding: 0 15px;
	}
	#plan .subhead {
		padding-bottom: 10px;
	}
	#plan .wrap .img-base img,
	#plan .menu .block .img,
	#plan .menu .block .img img {
		height: 100px;
	}
	#plan .menu .block h3 {
		font-size: 18px;
		line-height: 1.2;
	}
	#plan .menu .block .btn-frame a,
	#plan .menu .block .menu01 h4,
	#plan .menu .block .menu02 h4,
	#plan .menu .block .menu03 h4,
	#plan .menu .block .menu04 h4,
	#plan .menu .block .newcar h4 {
		margin-top: 20px;
		padding: 6px 0 8px 0;
		font-size: 15px;
		line-height: 20px;
		border-radius: 30px;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
	}
	#plan .menu .block .newcar h4 {
		border: 1px solid #999;
	}
	#plan .menu .block .btn-frame a {
		border: 1px solid #999;
	}
	#plan .menu .block p {
		margin-top: 10px;
		padding: 0 5px;
		font-size: 14px;
		line-height: 1.5;
		text-align: left;
	}
	#plan .menu .block .menu04 h3 {
		margin: 20px 0 15px 0;
	}
	#plan .menu .block .menu04 h4 {
		margin-top: 0px;
	}
	#plan .menu .block .menu04 dl {
		margin-top: 5px;
		padding-bottom: 10px;
	}
	#plan .menu .block .menu04 dl dt,
	#plan .menu .block .menu04 dl dt img {
		width: 80px; height: 40px;
	}
	#plan .menu .block .menu04 dl dd p {
		margin-top: 0;
		font-size: 12px;
		line-height: 1.5;
	}
	#plan .menu .block .note {
		font-size: 11px;
	}
	#plan .prev,
	#plan .next {
		top: 30px;
		width: 20px; height: 30px;
		background-size: 40px 30px;
		-webkit-background-size: 40px 30px;
	}
	#plan .prev {
		left: 5px;
	}
	#plan .next {
		right: 5px;
		background-position: -20px 0px;
	}
	/* オプションプラン */
	#plan .subhead {
		padding-bottom: 0;
	}
	#plan .option {
		margin-top: 20px;
	}
	#plan .option .col {
		display: block;
		margin-top: 5px;
		padding: 0 0 5px 0;
	}
	#plan .option .col .img {
		display: block;
		width: 100%;
		text-align: center;
	}
	#plan .option .col .img img {
		width: 150px;
	}
	#plan .option .col .text {
		display: block;
	}
	#plan .option .col h3 {
		margin-top: 10px;
		padding: 6px 0 8px 0;
		font-size: 15px;
		line-height: 20px;
		border-radius: 30px;
		-webkit-border-radius: 30px;
		-moz-border-radius: 30px;
	}
	#plan .option .col p {
		margin-top: 10px;
		font-size: 14px;
		line-height: 1.5;
	}
	/*--------------------------------------------------
		プライス
	*/
	#price {
		padding: 20px 0 20px 0;
	}
	/* セレクト */
	.select span.customSelect {
		font-size: 14px;
	}
	.select span.customSelect .customSelectInner {
		padding: 0 50px 0 10px;
		height: 48px;
		font-size: 14px;
		background-size: 24px 8px;
	}
	/* アイコン */
	#price .steps {
		height: 40px;
	}
	#price .steps ul li {
		padding-right: 20px;
		background-size: 20px 20px;
		-webkit-background-size: 20px 20px;
	}
	#price .steps ul li span {
		width: 30px; height: 30px;
		background-size: 60px 180px;
		-webkit-background-size: 60px 180px;
	}
	#price .steps ul li.icon1 span { background-position: 0px 0px; }
	#price .steps ul li.icon2 span { background-position: 0px -30px; }
	#price .steps ul li.icon3 span { background-position: 0px -60px; }
	#price .steps ul li.icon4 span { background-position: 0px -90px; }
	#price .steps ul li.icon5 span { background-position: 0px -120px; }
	#price .steps ul li.icon6 span { background-position: 0px -150px; }
	#price .steps ul li.icon1 span.current { background-position: -30px 0px; }
	#price .steps ul li.icon2 span.current { background-position: -30px -30px; }
	#price .steps ul li.icon3 span.current { background-position: -30px -60px; }
	#price .steps ul li.icon4 span.current { background-position: -30px -90px; }
	#price .steps ul li.icon5 span.current { background-position: -30px -120px; }
	#price .steps ul li.icon6 span.current { background-position: -30px -150px; }
	/* 選択 */
	#price .step-wrap {
		height: 360px;
	}
	#price .step h3 {
		height: 26px;
		font-size: 18px;
		line-height: 1.2;
	}
	#price .step .text {
		padding-bottom: 15px;
		font-size: 13px;
		line-height: 1.5;
	}
	#price .step .text br {
		display: block;
	}
	#price .step .price {
		font-size: 20px;
		line-height: 1.2;
	}
	#price .step1 .form {
		margin-top: 0px;
		height: 70px;
	}
	#price .step2 .form-select {
		margin-top: 0px;
		height: 70px;
	}
	#price .step2 .price {
		height: 35px;
	}
	#price .step3 .form-select {
		margin-top: 0px;
		height: 70px;
	}
	#price .step3 .price {
		height: 35px;
	}
	#price .step4 .form-select1 {
		height: 60px;
	}
	#price .step4 .form-select2 {
		height: 70px;
	}
	#price .step4 .price {
		height: 35px;
	}
	#price .step5 .text {
		padding-bottom: 5px;
	}
	#price .step5 .form {
		padding-bottom: 10px;
		height: auto;
	}
	#price .step5 .price {
		height: 35px;
	}
	#price .step6 .text {
		margin-top: 10px;
		padding-bottom: 20px;
		font-size: 13px;
		line-height: 1.8;
	}
	#price .step6 .price {
		padding-bottom: 30px;
		height: auto;
		font-size: 32px;
		line-height: 1.2;
	}
	/* セレクト */
	#price .step .select {
		max-width: 300px;
	}
	/* オプション */
	#price .table {
		width: 300px;
	}
	#price .table .table-row div {
		padding: 6px 0 0 0;
		font-size: 12px;
		line-height: 1.2;
	}
	#price .table .table-row .caption {
		padding: 6px 0 0 0;
		font-size: 14px;
		line-height: 1.2;
	}
	#price .table .table-row .radio {
		padding: 0 10px;
	}
	#price .table .table-row .radio span {
		margin-right: 4px;
		vertical-align: -9px;
	}
	/* ボタン */
	#price .btn-prev {
		margin-top: 10px;
		font-size: 14px;
	}
	#price .btn {
		width: 220px;
	}
	#price .btn a {
		font-size: 18px;
		line-height: 40px;
	}
	/* 注釈 */
	#price .wrap .note {
		padding: 0 15px;
		font-size: 11px;
		line-height: 1.5;
		text-align: left;
	}
	/*--------------------------------------------------
		会社概要
	*/
	#company {
		padding: 20px 0 20px 0;
	}
	#company .map {
		margin-top: 20px;
		width: 100%; height: 300px;
	}
	#company .map-link {
		display: block;
	}
	#company .wrap {
		margin-top: 30px;
	}
	#company .wrap h3 {
		font-size: 16px;
		line-height: 1.2;
	}
	#company .wrap .row .info {
		margin-top: 10px;
	}
	#company .wrap .row .col h4 {
		padding: 16px 0;
		font-size: 22px;
		line-height: 1.2;
	}
	#company .wrap .row .col p {
		font-size: 16px;
		line-height: 2;
	}
	#company .widget {
		height: 300px;
	}
}