@charset "shift_jis";
/*	全ページ共通CSS
	
		■初期設定・初期化
		■ヘッダー設定
		■コンテンツ設定
		■フッター設定
----------------------------------------------------------------------------------------------------------------------------------*/







/*	初期設定・初期化
----------------------------------------------------------------------------------------------------------------------------------*/
*{
	margin:0;
	padding:0;
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, option, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	padding: 0;
	margin: 0;
}
ul { list-style: none; }
body {
	border-top: 5px solid #008cd0;
	line-height: 1.4em;
	font-size: 14px;
	font-family: ArialMT,"メイリオ","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3",sans-serif;
	background-color: #FFF;
	color: #000;
	-webkit-text-size-adjust: none;
}
a { color: #007dbb; text-decoration: underline; }
a img{ border: none; }
.fcl { 
	zoom: 100%;
}
.fcl:after {
	content: " "; 
	clear: both; 
	height: 0; 
	display: block; 
	visibility: hidden;
}
img {
	vertical-align:middle;
	margin:0;
	padding:0;
}







/*	ヘッダー設定
----------------------------------------------------------------------------------------------------------------------------------*/
header {
	border-top: 3px solid #00ab5b;
	padding: 0 0 10px;
}
header > .header_inner {
	position: relative;
	height: 43px;
}
header > .header_inner h1 {
	padding: 13px 0 0 10px;
}
header > .header_inner h1 > a {
	display: block;
	width: 102px;
	height: 15px;
	overflow: hidden;
	text-indent: -9999px;
	background: url(../IMG/parts_all.png) no-repeat left top;
	background-size: 437px 100px;
	-webkit-background-size: 437px 100px;
}
header > .header_inner > div.right {
	position: absolute;
	top:0;
	right: 0;
	width: 196px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
header > .header_inner > div.right > a.logout {
	position: absolute;
	top: 9px;
	right: 6px;
	display: block;
	font-size: 12px;
	line-height: 1em;
	padding: 7px 13px;
	background-color: #f3f3f3;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}
header > .header_inner > div.right #menu + a.logout { right: auto; left: 0; }
header > .header_inner > div.right > div#menu {
	position: absolute;
	top:0;
	right: 0;
	z-index: 10;
}
header > .header_inner > div.right > div#menu > div.btn_switch {
	position: absolute;
	top: 9px;
	right: 6px;
	z-index: 2;
	width: 90px;
	height: 38px;
	padding: 4px 0 0 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-shadow: 0 2px 3px -1px rgba(0,0,0,0.4) inset;
	-webkit-box-shadow: 0 2px 3px -1px rgba(0,0,0,0.4) inset;
	background-color: #FFF;
	border-top-left-radius: 5px;
	-webkit-border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	-webkit-border-top-right-radius: 5px;
}
header > .header_inner > div.right > div#menu > div.btn_switch.close > div {
	overflow: hidden;
	position: absolute;
	top:0;
	left:0;
	width: 90px;
	height: 44px;
}
header > .header_inner > div.right > div#menu > div.btn_switch.close > div > div {
	position: absolute;
	top: 4px;
	left: 4px;
	width: 82px;
	height: 50px;
	background-color: #FFF;
	box-shadow: 0 1px 2px 1px rgba(0,0,0,0.2);
	-webkit-box-shadow: 0 1px 2px 1px rgba(0,0,0,0.2);
	border-top-left-radius: 5px;
	-webkit-border-top-left-radius: 5px;
	border-top-right-radius: 5px;
	-webkit-border-top-right-radius: 5px;
}
header > .header_inner > div.right > div#menu > div.btn_switch > div > div > div {
	width: 82px;
	height: 29px;
}
header > .header_inner > div.right > div#menu > div.btn_switch.close > div > div > div {
	background: none;
	box-shadow: none;
	-webkit-box-shadow: none;
}
header > .header_inner > div.right > div#menu > div.btn_switch > div > div > div > a {
	width: 80px;
	height: 27px;
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W6",ArialMT,"メイリオ",sans-serif;
	font-weight: bold;
	font-size: 12px;
	color: #000;
}
header > .header_inner > div.right > div#menu > div.btn_switch.close > div > div > div > a {
	background: none;
	box-shadow: none;
	-webkit-box-shadow: none;
	color: #435695;
}
header > .header_inner > div.right > div#menu > div.btn_switch.close > div > div > div > a:before { background-position: 0 -25px ; }
header > .header_inner > div.right > div#menu > nav {
	display: none;
	position: absolute;
	top: 54px;
	right: 10px;
	padding: 0 0 30px;
}

header > .header_inner > div.right > div#menu > nav > div {
	width: 290px;
	box-shadow: 0 3px 8px 3px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0 3px 8px 3px rgba(0,0,0,0.4);
	background-color: #FFF;
	
	border-top-left-radius: 5px;
	-webkit-border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
}
header > .header_inner > div.right > div#menu > nav h2 {
	background-color: #f0f0f0;
	font-size: 16px;
	color: #435695;
}
header > .header_inner > div.right > div#menu > nav h2:first-child {
	border-top-left-radius: 5px;
	-webkit-border-top-left-radius: 5px;
}
header > .header_inner > div.right > div#menu > nav ul + h2 {
	border-top: 1px solid #d2d2d2;
}
header > .header_inner > div.right > div#menu > nav h2 span {
	display: block;
	padding: 10px;
}
header > .header_inner > div.right > div#menu > nav a {
	text-decoration: none;
	color: #435695;
}
header > .header_inner > div.right > div#menu > nav h2 + *:before {
	content:" ";
	display: block;
	height: 3px;
	box-shadow:0 3px 3px -3px rgba(0,0,0,0.5) inset;
	-webkit-box-shadow:0 3px 3px -3px rgba(0,0,0,0.5) inset;
}
header > .header_inner > div.right > div#menu > nav ul li + li {
	border-top: 1px dotted #CCC;
}
header > .header_inner > div.right > div#menu > nav ul li a {
	display: block;
	padding: 10px;
}
header > .header_inner > div.right > div#menu > nav .icon.pc_type1 { padding-right: 65px; }
header > .header_inner > div.right > div#menu > nav .icon.pc_type1:before {
	width: 47px;
	height: 19px;
	margin: -10px 0 0;
	background-position: -30px -51px;
}
header > .header_inner > div.right > div#menu > nav ul li .icon.arrow.t5 { padding-right: 13px; }
header > .header_inner > div.right > div#menu > nav .menu_close {
	padding: 7px 0;
	text-align: center;
	background-color: #435695;
	border-bottom-left-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	-webkit-border-bottom-right-radius: 5px;
}
header > .header_inner > div.right > div#menu > nav .menu_close .button {
	width: 110px;
	height: 30px;
	margin: 0 auto;
}
header > .header_inner > div.right > div#menu > nav .menu_close .button a { position: relative; }
header > .header_inner > div.right > div#menu > nav .menu_close .button a:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 7px;
	width: 17px;
	height: 17px;
	margin: -9px 0 0;
	background-position: -20px -16px;
}

header > .header_inner > div.right > div#menu > nav .icon.blank {padding-right: 40px; }
header > .header_inner > div.right > div#menu > nav .icon.blank:before {
	right: 10px;
}


/*	コンテンツ設定
----------------------------------------------------------------------------------------------------------------------------------*/
h1 {
	font-size: 17px;
	font-weight: bold;
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W6",ArialMT,"メイリオ",sans-serif;
	line-height: 1.2em;
}
h1 span.circle { display: block; padding: 0 10px 10px 0; }
b,
.bold {
	font-weight: bold;
	font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W6",ArialMT,"メイリオ",sans-serif;
}
.str_normal {
	font-weight: normal;
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3",ArialMT,"メイリオ",sans-serif;
}
.str_red { color: #e60012; }
.str_gray { color: #888; }
.font_big {
	font-size: 16px !important;
}
h2 {
	font-size: 17px;
	font-weight: normal;
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3",ArialMT,"メイリオ",sans-serif;
	line-height: 1em;
}
.section {
	padding: 25px 0 0;
}
header + .section {
	padding-top: 7px;
}
.section h2 {
	background-color: #f7f7f7;
}
.section h2 + *:not(h2) {
	border-top: 1px dotted #cccccc;
}
.section h2:before {
	content:" ";
	display: block;
	height: 3px;
	box-shadow:0 3px 3px -3px rgba(0,0,0,0.3) inset;
	-webkit-box-shadow:0 3px 3px -3px rgba(0,0,0,0.3) inset;
}
.section h2 span {
	display: block;
	padding: 9px 10px;
}


.parts,
.parts_bf:before,
.parts_af:after,
.icon:before,
.icon:after {
	background: url(../IMG/parts_all.png) no-repeat left top;
	background-size: 437px 100px;
	-webkit-background-size: 437px 100px;
}
.icon { position: relative; }
.icon:before,
.icon:after {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.icon.menu { padding-left: 23px; }
.icon.menu:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 10px;
	content:" ";
	width: 10px;
	height: 8px;
	margin: -4px 0 0;
	background-position: 0 -16px;
}
.icon.circle { padding-left: 31px; }
.icon.circle:before {
	display: block;
	position: absolute;
	top: 1px;
	left: 10px;
	content:" ";
	width: 16px;
	height: 16px;
}
.icon.circle.t1:before { background-position: -105px 0; }
.icon.circle.t2:before { background-position: -122px 0; }
.icon.circle.t3:before { background-position: -139px 0; }
.icon.pc_type1 { display:block; padding-right: 65px; }
.icon.pc_type1:before {
	display: block;
	position: absolute;
	top: 50%;
	right: 10px;
	content:" ";
	width: 45px;
	height: 17px;
	margin: -8px 0 0;
	background-position: -214px 0;
}
.icon.pc_type2:after {
	display: inline-block;
	content:" ";
	width: 45px;
	height: 17px;
	background-position: -214px 0;
	margin: 0 0 0 7px;
	vertical-align: text-top;
}
.icon.pc_type3 { display: block; padding-left: 43px; }
.icon.pc_type3:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 8px;
	content:" ";
	width: 30px;
	height: 17px;
	margin: -8px 0 0;
	background-position: -103px -32px;
}
.icon.pc_type4:after {
	display: block;
	position: absolute;
	top: 32%;
	left: 175px;
	content:" ";
	width: 45px;
	height: 17px;
	background-position: -214px 0;
}
.icon.pc_type5:after {
	display: inline-block;
	content:" ";
	width: 45px;
	height: 17px;
	background-position: -214px 0;
	margin: 0 0 0 2px;
	vertical-align: text-top;
}
.icon.select_arrow { display: inline-block; }
.icon.select_arrow:before {
	display: block;
	position: absolute;
	top: 50%;
	right: 7px;
	content:" ";
	width: 10px;
	height: 16px;
	margin: -8px 0 0;
	background-position: -38px -16px;
}
.icon.arrow { display: block; }
.icon.arrow.t1 { display: inline-block; }
.icon.arrow.t1.l { padding-left: 15px; }
.icon.arrow.t1:before {
	display: block;
	position: absolute;
	top: 50%;
	content:" ";
	width: 12px;
	height: 12px;
	margin: -6px 0 0;
}
.icon.arrow.t1.l:before { left: 0; }
.icon.arrow.t1.up:before { background-position: -156px -13px; }
.icon.arrow.t1.down:before { background-position: -156px 0; }
.icon.arrow.t2.l { padding-left: 18px; }
.icon.arrow.t2:before {
	display: block;
	position: absolute;
	top: 50%;
	content:" ";
	width: 15px;
	height: 15px;
	margin: -8px 0 0;
}
.icon.arrow.t2.l:before { left: 0; }
.icon.arrow.t2.left:before { background-position: -169px 0; }
.icon.arrow.t2.right:before { background-position: -169px -16px; }
.icon.arrow.t3.l { padding-left: 18px; }
.icon.arrow.t3:before {
	display: block;
	position: absolute;
	top: 50%;
	content:" ";
	width: 15px;
	height: 15px;
	margin: -8px 0 0;
}
.icon.arrow.t3.l:before { left: 0; }
.icon.arrow.t3.up:before { background-position: -185px 0; }
.icon.arrow.t3.down:before { background-position: -185px -16px; }
.icon.arrow.t4.l { padding-left: 15px; }
.icon.arrow.t4:before {
	display: block;
	position: absolute;
	top: 50%;
	content:" ";
	width: 12px;
	height: 12px;
	margin: -6px 0 0;
}
.icon.arrow.t4 { display: inline; }
.icon.arrow.t4.l:before { left: 0; }
.icon.arrow.t4.right:before { background-position: -201px 0; }
.icon.arrow.t5.r { padding-right: 13px; }
.icon.arrow.t5:before {
	display: block;
	position: absolute;
	top: 50%;
	content:" ";
	width: 8px;
	height: 12px;
	margin: -6px 0 0;
}
.icon.arrow.t5.r:before { right: 10px; }
.icon.arrow.t5.right:before { background-position: -11px -16px; }
.icon.arrow.t6.l { padding-left: 23px; }
.icon.arrow.t6:before {
	display: block;
	position: absolute;
	top: 50%;
	content:" ";
	width: 20px;
	height: 20px;
	margin: -10px 0 0;
}
.icon.arrow.t6.l:before { left: 0; }
.icon.arrow.t6.right:before { background-position: -134px -29px; }
.icon.arrow.t7.l { padding-left: 18px; font-size: 14px; }
.icon.arrow.t7:before {
	display: block;
	position: absolute;
	top: 50%;
	content:" ";
	width: 15px;
	height: 15px;
	margin: -7px 0 0;
}
.icon.arrow.t7 { display: inline; }
.icon.arrow.t7:before { background-position: -174px -33px; }
.icon.error { display: block; padding-left: 49px; }
.icon.error:before {
	display: block;
	position: absolute;
	top: 10px;
	left: 10px;
	content:" ";
	width: 29px;
	height: 29px;
	background-position: 0 -51px;
}
.icon.dotline_project {
	padding-top: 10px;
	border-top: 1px dotted #cccccc;
}
.icon.dotline_project:before {
	display: block;
	position: absolute;
	top: -2px;
	right: 22px;
	content:" ";
	width: 16px;
	height: 10px;
	background-position: -72px -16px;
}
.icon.line_spout:after { background-image: none; }
.icon.line_spout {
	padding: 10px 0;
}
.icon.line_spout:before {
	display: block;
	position: absolute;
	top: 10px;
	left: 50%;
	content:" ";
	width: 32px;
	height: 14px;
	margin: 0 0 0 -15px;
	background-position: -89px -17px;
}
.icon.box_spout {
	background-color: #FFF;
	border: 1px solid #CCC;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	margin: 10px 0 0;
	padding: 10px;
}
.icon.box_spout:before {
	display: block;
	position: absolute;
	top: -11px;
	left: 25px;
	content:" ";
	width: 26px;
	height: 11px;
	background-position: -121px -17px;
}
.icon.square_blue{ padding-left: 10px }
.icon.square_blue:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content:"";
	width: 5px;
	height: 15px;
	background-position: -245px -18px;
	background-color: #008cd0;
}
.icon.suica{ padding-left: 28px }
.icon.suica:before {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content:"";
	width: 22px;
	height: 16px;
	background-position: -49px -16px;
}
.icon.required{ padding-left: 42px }
.icon.required:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	content:"";
	width: 42px;
	height: 21px;
	margin: -11px 0 0;
	background-position: -202px -18px;
}

.icon.check { padding-left: 16px; }
.icon.check:before {
	display: block;
	position: absolute;
	top: 2px;
	left: 0;
	content:" ";
	width: 16px;
	height: 16px;
	background-position: -155px -32px;
}

.icon.blank { display:block; padding-right: 65px; }
.icon.blank:before {
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	content:" ";
	width: 11px;
	height: 12px;
	margin: -6px 0 0;
	background-position: 0px -85px;
}




.button {
	position: relative;
	display: table;
	width: 100%;
	border-collapse: separate;
	padding: 1px;
	text-decoration: none;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.button a {
	width: 100%;
	vertical-align: middle;
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W6",ArialMT,"メイリオ",sans-serif;
	text-decoration: none;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.button.t1 {
	box-shadow: 2px 2px 2px -1px rgba(0,0,0,0.1);
	-webkit-box-shadow: 2px 2px 2px -1px rgba(0,0,0,0.1);
	background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#c5c5c5));
}
.button.t1 a {
	display: table-cell;
	box-shadow: 0 -5px 5px -5px rgba(190,190,190,0.5) inset;
	-webkit-box-shadow: 0 -5px 5px -5px rgba(190,190,190,0.5) inset;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.35,#ffffff), to(#f2f2f2));
}
.button.t2 {
	padding: 2px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	background: -webkit-gradient(linear, left top, left bottom, from(#007dba), to(#006494));
}
.button.t2 a {
	display: table-cell;
	font-weight: bold;
	text-align: center;
	font-size: 20px;
	line-height: 1em;
	color: #30436e;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.35,#ffffff), to(#ededed));
	box-shadow: 0 -8px 5px -4px rgba(190,190,190,0.5) inset;
	-webkit-box-shadow: 0 -8px 5px -4px rgba(190,190,190,0.5) inset;
}
.button.t3 {
	box-shadow: 2px 2px 2px -1px rgba(0,0,0,0.1);
	-webkit-box-shadow: 2px 2px 2px -1px rgba(0,0,0,0.1);
	background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#c5c5c5));
}
.button.t3 a {
	display: table-cell;
	font-weight: bold;
	font-size: 12px;
	line-height: 1em;
	color: #435695;
	box-shadow: 0 -5px 7px -5px rgba(190,190,190,1) inset;
	-webkit-box-shadow: 0 -5px 7px -5px rgba(190,190,190,1) inset;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.35,#ffffff), to(#f2f2f2));
}

select {
	padding: 5px 5px 5px 8px;
	font-size: 14px;
	line-height: 1em;
	border: 1px solid #cccccc;
	box-sizing:border-box;
	-webkit-box-sizing:border-box;
}

.radio  {
	position: relative;
	display: inline-block;
}
.radio_2  {
	position: relative;
	display: inline-block;
}
.radio input[type="radio"] {
	width: 102px;
	height: 35px;
	position: absolute;
	top: 0;
	left: -2px;
	opacity: 0;
}
.radio_2 input[type="radio"] {
	width: 122px;
	height: 50px;
	position: absolute;
	top: 0;
	left: -2px;
	opacity: 0;
}
.radio input[type="radio"] + span,
.radio_2 input[type="radio"] + span {
	display: block;
	padding: 1px;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	box-shadow: 2px 2px 2px -1px rgba(0,0,0,0.1);
	-webkit-box-shadow: 2px 2px 2px -1px rgba(0,0,0,0.1);
	background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#c5c5c5));
}
.radio input[type="radio"] + span > span {
	display: block;
	width: 100px;
	height: 33px;
	color: #435695;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	line-height: 33px;
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W6",ArialMT,"メイリオ",sans-serif;
	box-shadow: 0 -5px 5px -5px rgba(190,190,190,0.5) inset;
	-webkit-box-shadow: 0 -5px 5px -5px rgba(190,190,190,0.5) inset;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.35,#ffffff), to(#f2f2f2));
	border-radius: 4px;
	-webkit-border-radius: 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.radio_2 input[type="radio"] + span > span {
	display: block;
	width: 120px;
	height: 48px;
	padding-top: 5px;
	color: #435695;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	line-height: 20px;
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W6",ArialMT,"メイリオ",sans-serif;
	box-shadow: 0 -5px 5px -5px rgba(190,190,190,0.5) inset;
	-webkit-box-shadow: 0 -5px 5px -5px rgba(190,190,190,0.5) inset;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.35,#ffffff), to(#f2f2f2));
	border-radius: 4px;
	-webkit-border-radius: 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.form_required .radio input[type="radio"] + span > span,
.form_required .radio_2 input[type="radio"] + span > span {
	background: -webkit-gradient(linear, left top, left bottom, from(#fffded), color-stop(0.35,#fffded), to(#f2f0e1));
}
.form_error .radio input[type="radio"] + span > span,
.form_error .radio_2 input[type="radio"] + span > span {
	background: -webkit-gradient(linear, left top, left bottom, from(#ffeded), color-stop(0.35,#ffeded), to(#f2e1e1));
}
.radio input[type="radio"]:checked + span,
.radio_2 input[type="radio"]:checked + span {
	background: -webkit-gradient(linear, left top, left bottom, from(#01753e), to(#00ab5b));
}
.radio input[type="radio"]:checked + span > span,
.radio_2 input[type="radio"]:checked + span > span {
	color: #FFF;
	background: #00ab5b;
}


input[type="text"],
input[type="number"],
input[type="tel"],
input[type="email"],
input[type="password"]{
	font-size: 12px;
	line-height: 1em;
	padding: 5px 8px;
	border: 1px solid #cccccc;
	box-shadow: 1px 1px 1px 0 rgba(227,227,227,0.75) inset;
	-webkit-box-shadow: 1px 1px 1px 0 rgba(227,227,227,0.75) inset;
	appearance: none;
	-webkit-appearance: none;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
input[type="text"].width_full,
input[type="number"].width_full,
input[type="tel"].width_full,
input[type="email"],
input[type="password"].width_full { width: 100%; }
.form_required select,
.form_required input[type="text"],
.form_required input[type="number"],
.form_required input[type="tel"],
.form_required input[type="email"],
.form_required input[type="password"] { background-color: #fffded; }
.form_required select.error,
.form_required input[type="text"].error,
.form_required input[type="number"].error,
.form_required input[type="tel"].error,
.form_required input[type="email"].error,
.form_required input[type="password"].error { background-color: #ffeded; }
.form_error select,
.form_error input[type="text"],
.form_error input[type="number"],
.form_error input[type="tel"],
.form_error input[type="email"],
.form_error input[type="password"] { background-color: #ffeded; }

.form_required input.indispensable,
.form_required select.indispensable {
	background: #fffeee;
}

.form_required input.bad,
.form_required select.bad {
	background: #eaeaea;
}

.frm_button {
	display: inline-block;
	padding: 1px;
	text-decoration: none;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.frm_button input[type="submit"],
.frm_button input[type="button"],
.frm_button button[type="submit"] {
	display: block;
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W6",ArialMT,"メイリオ",sans-serif;
	appearance: none;
	-webkit-appearance: none;
	border: none;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	color: #435695;
	font-weight: bold;
}
.frm_button.t1 {
	box-shadow: 2px 2px 2px -1px rgba(0,0,0,0.1);
	-webkit-box-shadow: 2px 2px 2px -1px rgba(0,0,0,0.1);
	background: -webkit-gradient(linear, left top, left bottom, from(#f2f2f2), to(#c5c5c5));
}
.frm_button.t1 input[type="submit"],
.frm_button.t1 input[type="button"] {
	font-size: 14px;
	line-height: 1em;
	padding: 5px 15px;
	box-shadow: 0 -5px 5px -5px rgba(190,190,190,0.5) inset;
	-webkit-box-shadow: 0 -5px 5px -5px rgba(190,190,190,0.5) inset;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.35,#ffffff), to(#f2f2f2));
}
.form_required .frm_button.t1 input[type="submit"],
.form_required .frm_button.t1 input[type="button"] {
	background: -webkit-gradient(linear, left top, left bottom, from(#fffded), color-stop(0.35,#fffded), to(#f2f0e1));
}
.form_error .frm_button.t1 input[type="submit"],
.form_error .frm_button.t1 input[type="button"] {
	background: -webkit-gradient(linear, left top, left bottom, from(#ffeded), color-stop(0.35,#ffeded), to(#f2e1e1));
}
.frm_button.t2,
.frm_button.t3 {
	position: relative;
	padding: 10px;
	background: -webkit-gradient(linear, left top, left bottom, from(#0095d4), to(#0083cc));
}
.frm_button.t2 > div,
.frm_button.t3 > div {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	position: relative;
	padding: 1px;
	background: -webkit-gradient(linear, left top, left bottom, from(#e6e6e6), to(#acacac));
}
.frm_button.t2 input[type="submit"],
.frm_button.t2 input[type="button"],
.frm_button.t2 button[type="submit"] {
	width: 190px;
	height: 45px;
	font-size: 16px;
	line-height: 1em;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.35,#ffffff), to(#ededed));
	box-shadow: 0 -8px 5px -4px rgba(190,190,190,0.5) inset;
	-webkit-box-shadow: 0 -8px 5px -4px rgba(190,190,190,0.5) inset;
}
.frm_button.t2.arrow:before {
	display: block;
	position: absolute;
	top: 50%;
	left: 20px;
	content:" ";
	width: 20px;
	height: 20px;
	margin: -10px 0 0;
	background-position: -134px -29px;
	z-index: 1;
}
.frm_button.t3 input[type="submit"],
.frm_button.t3 input[type="button"] {
	width: 220px;
	height: 45px;
	font-size: 16px;
	line-height: 1em;
	text-align: left;
	padding-left: 15px;
	background: -webkit-gradient(linear, left top, left bottom, from(#ffffff), color-stop(0.35,#ffffff), to(#ededed));
	box-shadow: 0 -8px 5px -4px rgba(190,190,190,0.5) inset;
	-webkit-box-shadow: 0 -8px 5px -4px rgba(190,190,190,0.5) inset;
}
.frm_button.t3.icon.pc_type4:after {
	display: block;
	position: absolute;
	top: 55%;
	left: 173px;
	content:" ";
	width: 45px;
	height: 17px;
	margin: -10px 0 0;
	background-position: -214px 0;
}

.checkbox_wrap {
	display: table;
	width: 100%;
	padding: 10px 10px 10px 57px;
	background-color: #33a3d9;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	color: #FFF;
}
.checkbox_wrap.icon.required { padding-left: 57px; }
.checkbox_wrap.icon.required:before { left: 10px; }
.checkbox_wrap span{
	display: table-cell;
	vertical-align: middle;
}
.checkbox_wrap span + span { padding-left: 5px; }

.glow_line.be:before,
.glow_line.af:after {
	content:" ";
	display: block;
	height: 4px;
	box-shadow:0 4px 4px -4px rgba(0,0,0,0.5) inset;
	-webkit-box-shadow:0 4px 4px -4px rgba(0,0,0,0.5) inset;
}
.glow_line.be.t2:before,
.glow_line.af.t2:after {
	height: 3px;
	box-shadow:0 3px 3px -3px rgba(0,0,0,0.3) inset;
	-webkit-box-shadow:0 3px 3px -3px rgba(0,0,0,0.3) inset;
}

.post_btn_wrap {
	padding: 20px 10px;
	font-size: 12px;
	line-height: 1.2em;
}
.post_btn_wrap .btn_a {
	text-align: center;
}
.post_btn_wrap .btn_a + .btn_b { padding-top: 15px; }
.post_btn_wrap .btn_b {
	display: table;
	width: 100%;
	table-layout: fixed;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.post_btn_wrap .btn_b > div {
	display: table-cell;
	width: 50px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}
.post_btn_wrap .btn_b a {
	display: inline-block;
}
.post_btn_wrap .btn_b > div:first-child { text-align: left; }
.post_btn_wrap .btn_b > div:last-child { text-align: right; }
.post_btn_wrap.btn_off .frm_button.t2 { background: #efefef; }
.post_btn_wrap.btn_off .frm_button.t2 input[type="submit"] { color: #888; }

.error_message {
	font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W6",ArialMT,"メイリオ",sans-serif;
	font-size: 14px;
	line-height: 1.4em;
	color: #000;
	font-weight: bold;
	min-height: 49px;
	padding: 10px;
	margin: 10px;
	background-color: #ffeded;
	border: 1px solid #e01e0a;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

table {
	width: 100%;
	table-layout: fixed;
	border-collapse: collapse;
	border-spacing: 0;
	border: 1px solid #cccccc;
}
table th {
	padding: 8px 5px;
	font-weight: normal;
	background-color: #fffeee;
	border-top: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
}
table td {
	padding: 8px 5px;
	border-top: 1px solid #cccccc;
	border-left: 1px solid #cccccc;
	text-align: left;
}
table td[colspan="4"]:not([class]) {
	padding: 0;
	border-top:none;
}
table td[colspan="4"] > div {
	padding: 10px;
}
table td[colspan="4"].note {
	border-top: 2px solid #cccccc;
	background-color: #eeeeee;
}
table td[colspan="4"].null {
	height: 30px;
}
table td[rowspan] { border-top: none; }
table .bg_red { background-color:#ffeded; }
table .bg_gray { background-color:#fafafa; }
table .bg_yellow { background-color:#fffeee; }

.toggle_close {
	padding: 15px 0;
	text-align: center;
}

.pd10 { padding:10px; }
.pd10b { padding-bottom:10px; }

.page_top {
	border-top: 1px solid #cccccc;
	padding: 10px 10px 8px;
	line-height: 1em;
	text-align: right;
}
.page_top > a {
	display: inline-block;
	width: 102px;
	height: 15px;
	background-color: #FF0000;
	background: url(../IMG/parts_all.png) no-repeat 0 -34px;
	background-size: 437px 100px;
	-webkit-background-size: 437px 100px;
	text-align: left;
	text-indent: -9999px;
	overflow: hidden;
}

#step ol {
	display: table;
	width: 100%;
	table-layout: fixed;
	padding: 0 7px;
}
#step ol li {
	display: table-cell;
	vertical-align: middle;
	padding: 0 3px;
}
#step ol li > span {
	position: relative;
	display: block;
	height: 25px;
	padding: 5px 0 0 5px;
	background-color: #008cd0;
	border-radius: 4px;
	-webkit-border-radius: 4px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
}

#step ol li.finish > span { background-color:#008cd0; }
#step ol li.active > span { background-color:#00ab5b; }
#step ol li.off > span { background-color: #e8e8e8; }

#step ol li > span > span {
	display: block;
	width: 56px;
	height: 15px;
	text-indent: -9999px;
	overflow: hidden;
}
#step ol li:nth-of-type(1).finish > span > span { background-position: 0 0 ; }
#step ol li:nth-of-type(1).active > span > span { background-position: 0 -16px ; }
#step ol li:nth-of-type(1).off > span > span { background-position: 0 -32px ; }
#step ol li:nth-of-type(2).finish > span > span { background-position: -57px 0 ; }
#step ol li:nth-of-type(2).active > span > span { background-position: -57px -16px ; }
#step ol li:nth-of-type(2).off > span > span { background-position: -57px -32px ; }
#step ol li:nth-of-type(3).finish > span > span { background-position: -114px 0 ; }
#step ol li:nth-of-type(3).active > span > span { background-position: -114px -16px ; }
#step ol li:nth-of-type(3).off > span > span { background-position: -114px -32px ; }
#step ol li:nth-of-type(4).finish > span > span { background-position: -171px 0 ; }
#step ol li:nth-of-type(4).active > span > span { background-position: -171px -16px ; }
#step ol li:nth-of-type(4).off > span > span { background-position: -171px -32px ; }
#step ol li:nth-of-type(4).finish > span > span { background-position: -171px 0 ; }
#step ol li:nth-of-type(4).active > span > span { background-position: -171px -16px ; }
#step ol li:nth-of-type(4).off > span > span { background-position: -171px -32px ; }
#step ol li > span:after {
	content: "";
	position: absolute;
	top: 50%;
	right: -3px;
	display: block;
	width: 3px;
	height: 10px;
	margin: -5px 0 0;
}
#step ol li.finish > span:after { background-position: -236px 0 ; }
#step ol li.active > span:after { background-position: -232px 0 ; }
#step ol li.off > span:after { background-position: -228px 0 ; }
#step ol li:nth-of-type(4) > span:after { display: none; }

/*	フッター設定
----------------------------------------------------------------------------------------------------------------------------------*/
footer {
	/* border-top: 1px solid #cccccc; */
	padding: 15px 0 30px;
	text-align: center;
	color: #aaaaaa;
	font-size: 9px;
	line-height: 1em;
}
footer a.viewcard{
	display: inline-block;
	margin: 5px 0 0;
	width: 177px;
	height: 37px;
	overflow: hidden;
	text-indent: -9999px;
	background-position: -260px 0;
}
footer a.viewcard + div.pcsite { margin-top: 20px; }
footer div.pcsite {
	width: 160px;
	margin: 0 auto;
}
footer div.pcsite a {
	width: 158px;
	height: 28px;
	text-align: left;
}
footer a.viewcard + p,
footer div.pcsite + p {
	padding: 15px 0 0;
}

/*	[汎用クラスの定義]
----------------------------------------------------------------------------------------------------------------------------------*/

/* 汎用特殊マージン (上下) */
/* ------------------------------------------------------ */
.sp-v0 {
	margin-top: 0px !important;
	margin-bottom: 0px !important;
}
.sp-v5 {
	margin-top: 5px !important;
	margin-bottom: 5px !important;
}
.sp-v10 {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}
.sp-v15 {
	margin-top: 15px !important;
	margin-bottom: 15px !important;
}
.sp-v20 {
	margin-top: 20px !important;
	margin-bottom: 20px !important;
}
.sp-v25 {
	margin-top: 25px !important;
	margin-bottom: 25px !important;
}
.sp-v30 {
	margin-top: 30px !important;
	margin-bottom: 30px !important;
}

/* 汎用特殊マージン (上) */
/* ------------------------------------------------------ */
.sp-t0 {
	margin-top: 0px !important;
}
.sp-t2 {
	margin-top: 2px !important;
}
.sp-t5 {
	margin-top: 5px !important;
}
.sp-t10 {
	margin-top: 10px !important;
}
.sp-t15 {
	margin-top: 15px !important;
}
.sp-t20 {
	margin-top: 20px !important;
}
.sp-t25 {
	margin-top: 25px !important;
}
.sp-t30 {
	margin-top: 30px !important;
}

/* 汎用特殊マージン (下) */
/* ------------------------------------------------------ */
.sp-b0 {
	margin-bottom: 0px !important;
}
.sp-b2 {
	margin-bottom: 2px !important;
}
.sp-b5 {
	margin-bottom: 5px !important;
}
.sp-b10 {
	margin-bottom: 10px !important;
}
.sp-b15 {
	margin-bottom: 15px !important;
}
.sp-b20 {
	margin-bottom: 20px !important;
}
.sp-b25 {
	margin-bottom: 25px !important;
}
.sp-b30 {
	margin-bottom: 30px !important;
}
.sp-b35 {
	margin-bottom: 35px !important;
}
.sp-b40 {
	margin-bottom: 40px !important;
}
.sp-b45 {
	margin-bottom: 45px !important;
}
.sp-b50 {
	margin-bottom: 50px !important;
}
.sp-b55 {
	margin-bottom: 55px !important;
}

/* 汎用特殊マージン (左右) */
/* ------------------------------------------------------ */
.sp-h0 {
	margin-left: 0px !important;
	margin-right: 0px !important;
}
.sp-h5 {
	margin-left: 5px !important;
	margin-right: 5px !important;
}
.sp-h10 {
	margin-left: 10px !important;
	margin-right: 10px !important;
}
.sp-h15 {
	margin-left: 15px !important;
	margin-right: 15px !important;
}
.sp-h20 {
	margin-left: 20px !important;
	margin-right: 20px !important;
}
.sp-h25 {
	margin-left: 25px !important;
	margin-right: 25px !important;
}
.sp-h30 {
	margin-left: 30px !important;
	margin-right: 30px !important;
}

/* 汎用特殊マージン (左) */
/* ------------------------------------------------------ */
.sp-l0 {
	margin-left: 0px !important;
}
.sp-l5 {
	margin-left: 5px !important;
}
.sp-l10 {
	margin-left: 10px !important;
}
.sp-l15 {
	margin-left: 15px !important;
}
.sp-l20 {
	margin-left: 20px !important;
}
.sp-l25 {
	margin-left: 25px !important;
}
.sp-l30 {
	margin-left: 30px !important;
}
.sp-l35 {
	margin-left: 35px !important;
}
.sp-l40 {
	margin-left: 40px !important;
}
.sp-l45 {
	margin-left: 45px !important;
}
.sp-l50 {
	margin-left: 50px !important;
}

/* 汎用特殊マージン (右) */
/* ------------------------------------------------------ */
.sp-r0 {
	margin-right: 0px !important;
}
.sp-r2 {
	margin-right: 2px !important;
}
.sp-r5 {
	margin-right: 5px !important;
}
.sp-r10 {
	margin-right: 10px !important;
}
.sp-r15 {
	margin-right: 15px !important;
}
.sp-r20 {
	margin-right: 20px !important;
}
.sp-r25 {
	margin-right: 25px !important;
}
.sp-r30 {
	margin-right: 30px !important;
}
.sp-r35 {
	margin-right: 35px !important;
}
.sp-r40 {
	margin-right: 40px !important;
}
.sp-r45 {
	margin-right: 45px !important;
}
.sp-r50 {
	margin-right: 50px !important;
}

/* 汎用特殊パディング (上下) */
/* ------------------------------------------------------ */
.m-v0 {
	padding-top: 0px !important;
	padding-bottom: 0px !important;
}
.m-v5 {
	padding-top: 5px !important;
	padding-bottom: 5px !important;
}
.m-v10 {
	padding-top: 10px !important;
	padding-bottom: 10px !important;
}
.m-v15 {
	padding-top: 15px !important;
	padding-bottom: 15px !important;
}
.m-v20 {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}
.m-v25 {
	padding-top: 25px !important;
	padding-bottom: 25px !important;
}
.m-v30 {
	padding-top: 30px !important;
	padding-bottom: 30px !important;
}

/* 汎用特殊パディング (上) */
/* ------------------------------------------------------ */
.m-t0 {
	padding-top: 0px !important;
}
.m-t1 {
	padding-top: 1px !important;
}
.m-t2 {
	padding-top: 2px !important;
}
.m-t5 {
	padding-top: 5px !important;
}
.m-t10 {
	padding-top: 10px !important;
}
.m-t15 {
	padding-top: 15px !important;
}
.m-t20 {
	padding-top: 20px !important;
}
.m-t25 {
	padding-top: 25px !important;
}
.m-t30 {
	padding-top: 30px !important;
}

/* 汎用特殊パディング (下) */
/* ------------------------------------------------------ */
.m-b0 {
	padding-bottom: 0px !important;
}
.m-b5 {
	padding-bottom: 5px !important;
}
.m-b10 {
	padding-bottom: 10px !important;
}
.m-b15 {
	padding-bottom: 15px !important;
}
.m-b20 {
	padding-bottom: 20px !important;
}
.m-b25 {
	padding-bottom: 25px !important;
}
.m-b30 {
	padding-bottom: 30px !important;
}

/* 汎用特殊パディング (左右) */
/* ------------------------------------------------------ */
.m-h0 {
	padding-left: 0px !important;
	padding-right: 0px !important;
}
.m-h5 {
	padding-left: 5px !important;
	padding-right: 5px !important;
}
.m-h10 {
	padding-left: 10px !important;
	padding-right: 10px !important;
}
.m-h15 {
	padding-left: 15px !important;
	padding-right: 15px !important;
}
.m-h20 {
	padding-left: 20px !important;
	padding-right: 20px !important;
}
.m-h25 {
	padding-left: 25px !important;
	padding-right: 25px !important;
}
.m-h30 {
	padding-left: 30px !important;
	padding-right: 30px !important;
}

/* 汎用特殊パディング (左) */
/* ------------------------------------------------------ */
.m-l0 {
	padding-left: 0px !important;
}
.m-l5 {
	padding-left: 5px !important;
}
.m-l10 {
	padding-left: 10px !important;
}
.m-l15 {
	padding-left: 15px !important;
}
.m-l20 {
	padding-left: 20px !important;
}
.m-l25 {
	padding-left: 25px !important;
}
.m-l30 {
	padding-left: 30px !important;
}

/* 汎用特殊パディング (右) */
/* ------------------------------------------------------ */
.m-r0 {
	padding-right: 0px !important;
}
.m-r5 {
	padding-right: 5px !important;
}
.m-r10 {
	padding-right: 10px !important;
}
.m-r15 {
	padding-right: 15px !important;
}
.m-r20 {
	padding-right: 20px !important;
}
.m-r25 {
	padding-right: 25px !important;
}
.m-r30 {
	padding-right: 30px !important;
}

/* 横方向の整列 */
/* ------------------------------------------------------ */
.arrange-c {
	text-align: center;
}
.arrange-l {
	text-align: left;
}
.arrange-r {
	text-align: right;
}

/* 縦方向の整列 */
/* ------------------------------------------------------ */
.varrange-t {
	vertical-align: top !important;
}
.varrange-m {
	vertical-align: middle !important;
}
.varrange-b {
	vertical-align: bottom !important;
}

/* 行中挿入 */
/* ------------------------------------------------------ */
.inline {
	vertical-align: middle;
}

/* 汎用フォントサイズ */
/* ------------------------------------------------------ */
.xs {
	font-size: 10px !important;
}
.s {
	font-size: 12px !important;
}
/* ---------------------------------------------------------------------
	Noscript
------------------------------------------------------------------------ */
div.noscriptBox {
	margin: 10px auto;
	border:1px solid #CCCCCC;
	background-color: #FFFFFF;
}
div.noscriptBox p {
	color: #333333;
	text-align:left;
	padding: 10px 10px 10px 10px;
}
