@charset "utf-8";

/*************************************************
 * Description: 共通CSS
 * Package: site
 * Author: Japan Electronic Industrial Arts Co.Ltd.
 * Update: 2017/11/
 * Notes: 
*************************************************/
/*
	レイアウトフレーム構造
	
	[1].frame_outer
		[2]└#headertopcolumn
		[2]└#header_wrap
			[3]└header
		[2]└#container
			[3]└#topcolumn
			[3]└#middlecolumn
				[4]└#leftcolumn
				[4]└#three_main_column/#two_maincolumn_left/#two_maincolumn_right/#one_maincolumn
				[4]└#rightcolumn
			[3]└#bottomcolumn
		[2]└#footer_wrap
			[3]└footer
		[2]└#footerbottomcolumn
*/



/*************************************************
 *
 * レイアウトフレーム
 *
*************************************************/

/* ==============================================
 * メインフレーム
=============================================== */
.frame_outer {
	width: 100%;
	min-width: 320px;/*閲覧デバイス最小幅*/
}

#headertopcolumn {}
#header_wrap {
}
#header_wrap header {
}

#container {}
#container #topcolumn {/*max-width指定は各内包ブロックに委ねる*/}
#container #middlecolumn {}
#container #middlecolumn #leftcolumn {}
#container #middlecolumn #three_main_column {}
#container #middlecolumn #two_maincolumn_left {}
#container #middlecolumn #two_maincolumn_right {}
#container #middlecolumn #one_maincolumn {}
#container #middlecolumn #rightcolumn {}
#container #bottomcolumn {/*max-width指定は各内包ブロックに委ねる*/}

#footer_wrap {}
#footer_wrap footer {}
#footerbottomcolumn {}

/* 中央カラム共通 */
.main_column {}
/* 左右カラム共通 */
.side_column {}


/* ==============================================
 * .undercolumn（ページ要素）
=============================================== */
/* こちらは基本未定義。ページによって必要な場合のみ適宜そちらで定義する */
.undercolumn {}
.undercolumn .page_head {}
.undercolumn .page_body {}


/* ==============================================
 * section
=============================================== */
.main_column .section {
}
.main_column .section + .section {
}
.main_column .section_head {
}
.main_column .section_body {
}
.main_column .section_body + .section_body {
	/* section_bodyを上下連続配置したい場合、隣接するsection_bodyの上下余白が倍になってしまうので連続するsection_bodyの上余白を0にリセットしてバランスを取る。 */
	padding-top: 0;
}
.main_column .section_foot {
}


/* ==============================================
 * 各デバイス（Sphone, Tablet, PC）ごとのフレーム定義
=============================================== */
@media ( max-width: 767px ) {
	
	/* #middlecolumn
	----------------------------------------------- */
	#middlecolumn {
		padding-top: 0;
		padding-bottom: 0;
	}
	
	/* .section
	----------------------------------------------- */
	.main_column .section {
	}
	.main_column .section + .section {
		margin-top: 0;
	}
	.main_column .section_head {
		padding: 0;
	}
	.main_column .section_body {
		padding: 10px;
	}
	
	/* .side_column .section（※基本.main_columnと同一）
	----------------------------------------------- */
	.side_column .section {
	}
	.side_column .section + .section {
		margin-top: 0;
	}
	.side_column .section_head {
		padding: 0;
	}
	.side_column .section_body {
		padding: 10px;
	}
}
@media ( min-width: 768px ) and ( max-width: 979px ) {
	
	/* #middlecolumn
	----------------------------------------------- */
	#middlecolumn {
		padding-top: 20px;
		padding-bottom: 0;
	}
	/* 例外ページをオーバーライド 
	body.LC_Page_Index #middlecolumn,
	body.LC_Page_Products_List #middlecolumn,
	body.LC_Page_Products_Detail #middlecolumn {
		padding-top: 0;
	}
	*/
	
	/* .section
	----------------------------------------------- */
	.main_column .section {
	}
	.main_column .section + .section {
		margin-top: 20px;
	}
	.main_column .section_head {
		padding: 0;
	}
	.main_column .section_body {
		padding: 30px;
	}
	
	/* .side_column .section（※基本.main_columnと同一）
	----------------------------------------------- */
	.side_column .section {
	}
	.side_column .section + .section {
		margin-top: 20px;
	}
	.side_column .section_head {
		padding: 0;
	}
	.side_column .section_body {
		padding: 20px;
	}
}
@media ( min-width: 980px ) {
	
	/* #middlecolumn
	----------------------------------------------- */
	#middlecolumn {
		padding-top: 30px;
		padding-bottom: 80px;
		/**/
		border-bottom: solid 1px #ccc;
	}
	/* 例外ページをオーバーライド 
	body.LC_Page_Index #middlecolumn,
	body.LC_Page_Products_List #middlecolumn,
	body.LC_Page_Products_Detail #middlecolumn {
		padding-top: 0;
	}
	*/
	
	.undercolumn {
		padding-top: 20px;/*余白調整*/
	}
	body.LC_Page_Products_Detail .undercolumn {/*商品詳細ページ上余白なし*/
		padding-top: 0;
	}
	
	/* .section
	----------------------------------------------- */
	.main_column .section {
		/* コンテンツ最大幅を定義するがもしブラウザ幅いっぱいに背景を敷き詰めるようなデザインの部位がある場合は適宜オーバーライドして調整すること。 */
		max-width: 1280px;
		margin: 0 auto;
		/* widthの外に左右余白を取る */
		box-sizing: content-box;
		padding-left: 40px;
		padding-right: 40px;
	}
	body.LC_Page_Index .main_column .section {/*トップページ用*/
		max-width: 1920px;
	}
	body.LC_Page_Products_List .main_column .section {/*商品一覧用*/
		max-width: 1600px;
	}
	.main_column .section + .section {
		margin-top: 50px;
	}
	body.LC_Page_Index .main_column .section + .section {/*例外*/
		margin-top: 0;
	}
	.main_column .section_head {
		padding: 0;
	}
	.main_column .section_body {
		padding: 1em 0;
	}
	
	/* ページ.udercolumn直下配置のブロック */
	.undercolumn + .section {
		margin-top: 50px;
	}
	
	
	
	/* 2カラム構造（左サブ：右メイン）時
	----------------------------------------------- */
	/*
	#middleclear.two_column {
		max-width: 1280px;
		margin: 0 auto;
		box-sizing: content-box;
		padding-left: 30px;
		padding-right: 30px;
		padding-top: 30px;
		display: flex;
		justify-content: space-between;
	}
	#two_maincolumn_right {
		flex: 1 1 auto;
		order: 2;
		margin-left: 30px;
		width: calc(100% - (200px + 30px));/* ブラウザに挙動が不安定なので *--/
	}
	#leftcolumn {
		flex: 0 0 200px;
		order: 1;
	}
	#two_maincolumn_right .section {
		width: 100%;
		max-width: auto;
		padding-left: 0;
		padding-right: 0;
	}
	.side_column .section {
	}
	.side_column .section + .section {
		margin-top: 30px;
	}
	.side_column .section_head {
		padding: 0;
	}
	.side_column .section_body {
		padding: 0;
	}
	*/
}


/* ==============================================
 * section OOCSS
=============================================== */

/* sectionフィットOOCSS
-----------------------------------------------
 * section_body内のコンテンツが、内容が背景色を敷き詰めて画面いっぱいに広げたいコンテンツであったり、レスポンシブテーブル、動画、といった
 * 余白なく領域全体にフィットさせたいデザインの場合、.sectionに.section-fitを併設することで余白をリセット。
 * 余白リセットはスマホ時のみ（768px未満）で効くものとしている。タブレット・PCでは余白を残すべきコンテンツが多いのでそうしている。
 * もし動画などタブレット・PCもフィットさせたい場合はその都度padding定義をオーバーライドするか、下記の.section-fit-allを使う。
 */
@media ( max-width: 767px ) {
	.main_column .section-fit {
		padding: 0;
	}
}
.main_column .section-fit-all {
	/* 動画や商品プロモーションなどデバイスを問わず常にフィットさせたい場合 */
	padding: 0;
}

/* section内直下コンテンツの不要marginリセット
----------------------------------------------- 
 * .section_bodyにはデバイスごとに統一された余白を提供できるようにpaddingを定義しているが、包含されるコンテンツによってはその要素自体がmarginをもっているケースがある。
 * その際.section_bodyの最上部や最下部に余分な余白が発生してしまうのでそのmarginを強制的に除去しておく。
 * ※.section_bodyからみて孫要素がmarginを持っていて余白リセットが効かない場合は適宜そちらで余白制御をする。
 * ※.section_body直下にform要素がありその中の要素がmarginを持つ場合は当然余白リセットは効かないのでその倍も適宜調整。（※section-fitする場合は問題ない）
 * ※もしこの余白リセットをしたくない場合は適宜そちらで余白制御をする。
*/
.main_column .section_body > *:first-child {
	margin-top: 0 !important;
}
.main_column .section_body > *:last-child {
	margin-bottom: 0 !important;
}


/* ==============================================
 * ブロック
=============================================== */
.block_outer {}
.block_inner {}
/* ブロック用定義も結局はその本体を.section_head, .section_bodyとし汎用的な.sectionと同じ扱いにしたのでブロック用のCSS定義は基本は不要なはず。 */

/* ==============================================
 * メインカラムブロック
===============================================
 * メインカラムのブロックフレームは上記のsectionに定義を束ねるのでここで定義することはないはず。例外な定義が必要な場合は適宜、ブロックCSSで調整。 */

/* ==============================================
 * サイドカラムブロック
===============================================
 * サイドカラムのブロックフレームは上記のsectionに定義を束ねるのでここで定義することはないはず。例外な定義が必要な場合は適宜、ブロックCSSで調整。 */





/*************************************************
 *
 * SPサイド折りたたみ
 *
*************************************************/
@media ( max-width: 979px ) {
	/* ==============================================
	 * SPコンテンツエリア
	=============================================== */
	.sp_side_enabled #sp_content {
		background-color: #fff;
		z-index: 1;
	}
	.sp_side_enabled #sp_content {
		-webkit-transition: -webkit-transform 350ms ease;
		transition: transform 350ms ease;
	}
	.sp_side_enabled #sp_content.side-opened {
		-webkit-transform: translate3d(80%,0,0);
		transform: translate3d(80%,0,0);
		box-shadow: -5px 0 5px rgba(0,0,0,.15);
		position: fixed;
		top:0;
	}
	/* shadow */
	.sp_side_enabled #sp_content:after {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 998;
		background-color: transparent;
		visibility: hidden;
		transition: background-color 350ms;
	}
	.sp_side_enabled #sp_content.side-opened:after {
		visibility: visible;
		background-color: rgba(0,0,0,0.3);
	}
	/* ==============================================
	 * SPサイドエリア
	=============================================== */
	#sp_side {
		position: absolute;
		top: 0;
		left: 0;
		width: 80%;
		min-height: 100%;
		overflow: hidden;
		z-index: -1;
		visibility: hidden;
	}
	#sp_side.side-closed {
		visibility: hidden;
	}
	#sp_side.side-opened {
		visibility: visible;
	}
	/* ==============================================
	 * SPサイドcloseエリア
	=============================================== */
	#side_dismiss {
		position: fixed;
		top: 0;
		left: 80%;
		visibility: hidden;
		width: 100%;
		min-height: 100%;
		z-index: 999;
	}
	#side_dismiss.side-opened {
		visibility: visible;
	}
}



/*************************************************
 *
 * ヘッダー
 *
*************************************************/
#header_wrap {
	background-color: #fff;
}

/* ==============================================
 * ヘッダーエリアフレーム
=============================================== */
header {
	max-width: 1280px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
header #header_box1 {
	flex: 1 0 auto;
	height: 100%;
}
header #header_box2 {
	flex: 1 0 auto;
	height: 100%;
}

/* ==============================================
 * #header_box1
=============================================== */
#header_box1 {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
#header_box1 #side_switch {
	flex: 0 0 auto;
}
#header_box1 .header_logo {
	flex: 0 0 auto;
}
#header_box1 .header_logo2 {
	flex: 0 0 auto;
}
#header_box1 .shop_info {
	flex: 0 0 auto;
}

/* サイドスイッチ
----------------------------------------------- */
#side_switch {
	display: none;
	box-sizing: border-box;
}
.sp_side_enabled #side_switch {
	display: block;
}
#side_switch .btn_menu {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url(../img/menu.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	text-indent: -9999px;
}

/* ヘッダーロゴ
----------------------------------------------- */
#header_box1 .header_logo {
}
#header_box1 .header_logo a {
	display: block;
	background-image: url(../img/rogo.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: left center;
	text-indent: -9999px;
}
#header_box1 .header_logo2 {
}
#header_box1 .header_logo2 a {
	display: block;
	background-image: url(../img/login.png);
	background-size: 100%;
	background-repeat: no-repeat;
	background-position: left center;
	text-indent: -9999px;
}

/* .shop_info
----------------------------------------------- */
#header_box1 .shop_info {
	color: #5F585E;
	font-size: 12px;
}

@media ( max-width: 767px ) {
	#header_wrap {
		border-top: solid 3px #B09D7C;
		border-bottom: solid 1px #ccc;
	}
	header {
		height: 45px;
	}
	#side_switch {
		/* サイドスイッチサイズ */
		width: 45px;
		height: 45px;
		padding: 5px;
	}
	#header_box1 .header_logo a {
		/* ロゴサイズ */
		width: 95px;
		height: 45px;
	}
	#header_box1 .header_logo2 a {
		/* ロゴサイズ */
		width: 95px;
		height: 45px;
	}
	#header_box1 .shop_info {
		display: none;
	}
	
	/*ヘッダ＆グローバルメニュー固定*/
	#header_wrap {
		position: fixed;
		width: 100%;
		z-index: 99;
	}
	#middlecolumn {
		padding-top: 48px;
	}
}
@media ( min-width: 768px ) and ( max-width: 979px ) {
	#header_wrap {
		border-top: solid 5px #B09D7C;
		border-bottom: solid 1px #ccc;
	}
	header {
		height: 50px;
	}
	#side_switch {
		/* サイドスイッチサイズ */
		width: 50px;
		height: 50px;
		padding: 5px;
	}
	#header_box1 .header_logo a {
		/* ロゴサイズ */
		width: 105px;
		height: 50px;
	}
	#header_box1 .header_logo2 a {
		/* ロゴサイズ */
		width: 105px;
		height: 50px;
	}
	#header_box1 .shop_info {
		margin-left: 10px;
	}
	#header_box1 .shop_info br {
		display: none;
	}
	
	/*ヘッダ＆グローバルメニュー固定*/
	#header_wrap {
		position: fixed;
		width: 100%;
		z-index: 99;
	}
	#middlecolumn {
		padding-top: 55px;
	}
}
@media ( min-width: 980px ) {
	#header_wrap {
		border-top: solid 15px #B09D7C;
	}
	header {
		height: 130px;
		padding: 0 20px;
	}
	#header_box1 .header_logo a {
		/* ロゴサイズ */
		width: 220px;
		height: 50px;
	}
	#header_box1 .header_logo2 a {
		/* ロゴサイズ */
		width: 220px;
		height: 50px;
	}
	#header_box1 .shop_info {
		margin-left: 20px;
	}
	
	/*ヘッダ＆グローバルメニュー固定*/
	#header_wrap,
	header,
	#topcolumn,
	#middlecolumn {
		transition: 0.5s;
	}
	#header_wrap {
		position: fixed;
		width: 100%;
		z-index: 99;
	}
	#topcolumn {
		position: fixed;
		top: 145px;
		width: 100%;
		z-index: 99;
	}
	#middlecolumn {
		padding-top: 205px;
	}
	/* scrolled */
	body.scrolled #header_wrap {
		border-top-width: 0px;
	}
	body.scrolled header {
		height: 50px;
	}
	body.scrolled #topcolumn {
		top: 50px;
	}
	body.scrolled #middlecolumn {
		padding-top: 110px;
	}
	
	/*sp side*/
	#side_switch {
		display: none;
	}
	#sp_side {
		display: none;
	}
}


/* ==============================================
 * #header_box2（ヘッダーユーティリティ）
=============================================== */
#header_box2 {
}


/*************************************************
 *
 * フッター
 *
*************************************************/
#footer_wrap {
	background-color: #B09D7C;
	color: #fff;
	font-size: 13px;
}
#footer_wrap a {
	color: inherit;
}
#footer_wrap footer {
}
#footer_wrap footer .wrap {
	max-width: 1380px;
	margin: 0 auto;
}
#footer_wrap footer .wrap .box1 {
}
#footer_wrap footer .wrap .box2 {
}
#footer_wrap footer .box1 .logo {
	font-family: "Century Gothic Bold";
	font-size: 20px;
	white-space: nowrap;
}
#footer_wrap footer .box1 ul {
}
#footer_wrap footer .box1 li {
}
@media ( max-width: 767px ) {
	#footer_wrap footer .wrap {
		padding: 10px;
		text-align: center;
	}
	#footer_wrap footer .box1 .logo {
	}
	#footer_wrap footer .box1 ul {
		margin: 10px 0;
	}
	#footer_wrap footer .box1 li {
	}
	#footer_wrap footer .box1 li + li {
		margin-top: 10px;
	}
	#footer_wrap footer .box1 li a {
		display: block;
		padding: 10px;
		background-color: #DAD2BE;
		color: #333;
		border: solid 1px hsla(0, 0%, 100%, 0.3);
		border-radius: 4px;
	}
	#footer_wrap footer .copyright {
	}
}
@media ( min-width: 768px ) and ( max-width: 1279px ) {
	#footer_wrap footer .wrap {
		padding: 20px 40px;
		text-align: center;
	}
	#footer_wrap footer .box1 .logo {
	}
	#footer_wrap footer .box1 ul {
		margin: 10px 0;
	}
	#footer_wrap footer .box1 li {
		display: inline-block;
	}
	#footer_wrap footer .box1 li + li {
		margin-left: 1em;
	}
	#footer_wrap footer .copyright {
	}
}
@media ( min-width: 1280px ) {
	#footer_wrap footer .wrap {
		padding: 0 40px;
		overflow: hidden;
	}
	#footer_wrap footer .wrap .box1,
	#footer_wrap footer .wrap .box2 {
		width: 49%;
		display: flex;
		align-items: center;
		height: 50px;
	}
	#footer_wrap footer .wrap .box1 {
		float: left;
		justify-content: flex-start;
	}
	#footer_wrap footer .wrap .box2 {
		float: right;
		justify-content: flex-end;
	}
	#footer_wrap footer .box1 ul {
		margin-left: 10px;
	}
	#footer_wrap footer .box1 li {
		display: inline-block;
		margin-left: 1em;
	}
}


/*************************************************
 *
 * テキスト
 *
*************************************************/
body {
	color: #333;
	font-size: 13px;
	line-height: 1.5;
	/*
	font-family: Helvetica, Arial, Roboto, 'Hiragino Kaku Gothic ProN', "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", Meiryo, sans-serif;
	font-family: Helvetica, Arial, Roboto, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
	*/
	font-family: Arial, Roboto, 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

/* リンクテキスト
----------------------------------------------- */
a:link {
	color: #39c;
	text-decoration: none;
	outline: none;
}
a:visited {
	color: #39c;
	text-decoration: none;
}
a:hover,
a:active {
	text-decoration: underline;
}

/* 他テキスト
----------------------------------------------- */
/* 注意 */
.attention {
	color: #c00;/*赤文字*/
}
.attention2 {
	color: #235282;/*エラーの印象を促す赤文字以外を使いたい場面*/
}
/* 強調1 */
.st {
	font-weight: bold;
}
/* 強調2 */
.big {
	font-size: 15px;
}
/* 小文字 */
.mini {
	font-size: 12px;
}
/* ポイント */
.point {
	color: #c00;
	font-weight: normal;
}
/* 会員氏名 */
.user_name {
	font-weight: bold;
}

/* フォント
----------------------------------------------- */
.eisuu {/*英数字用*/
	font-family: 'Arial';
}
.mincho {/*明朝系*/
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;	/*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;ローカル確認用*/
}
.en {
	font-family: "Georgia";
}



/*************************************************
 *
 * フォーム部品
 *
*************************************************/
input,
select,
textarea {
	/* EFOインフォ（ecp_form_valid.js）ハイライト表示時に要素の大きさが変化しないようにあらかじめ */
	padding: 0.3em;
    outline: none;
    border: 1px solid #DDD;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 16px;
}

/* フォーカス時 */
input:focus,
select:focus,
textarea:focus {
	border-color: #69c !important;
	box-shadow: 0 0 4px rgba(102,153,204,0.3) !important;
	background-color: #fff !important;
}
input[type="radio"]:focus,
input[type="checkbox"]:focus {
}

/* .ecp_checkbox */
label.ecp_checkbox {
	position: relative;
	padding-left: 28px;/* !important;*/
	line-height: 2;
}
label.ecp_checkbox input[type="checkbox"] {
	display: none !important;
}
label.ecp_checkbox input[type="checkbox"] + .cb_icon {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 28px;
}
label.ecp_checkbox input[type="checkbox"] + .cb_icon:before {
	font-family: "Ionicons";
	content: "\f372";
	color: #666;
	transition: .3s;
}
label.ecp_checkbox input[type="checkbox"]:checked + .cb_icon:before {
	content: "\f373";
	color: #D5AF57;/*#0082bf;*/
}
label.ecp_checkbox:hover input[type="checkbox"] + .cb_icon:before {
	content: "\f373";
}
/* アイコンtype_b */
label.ecp_checkbox input[type="checkbox"] + .cb_icon.type_b:before {
	content: "\f372";
}
label.ecp_checkbox input[type="checkbox"]:checked + .cb_icon.type_b:before {
	content: "\f374";
	color: #D5AF57;/*#0082bf;*/
}
label.ecp_checkbox:hover input[type="checkbox"] + .cb_icon.type_b:before {
	content: "\f374";
}
label.ecp_checkbox input[type="checkbox"] + .cb_icon.type_b:after {
	/* 背景色が敷かれている中でアイコンが透過だと見えづらいのでアイコンの形にそって白い背景を合成しておく */
	content: "";
	width: 20px;
	height: 20px;
	display: block;
	background-color: #fff;
	border-radius: 2px;
	position: absolute;
	left: 1px;
	top: 50%;
	transform: translateY(-50%);
	z-index: -1;
}

/* .ecp_radio */
label.ecp_radio {
	position: relative;
	padding-left: 25px;/* !important;*/
	line-height: 2;
}
label.ecp_radio input[type="radio"] {
	display: none !important;
}
label.ecp_radio input[type="radio"] + .rb_icon {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	font-size: 23px;
}
label.ecp_radio input[type="radio"] + .rb_icon:before {
	font-family: "Ionicons";
	content: "\f3a6";
	color: #999;
	transition: .3s;
}
label.ecp_radio input[type="radio"]:checked + .rb_icon:before {
	content: "\f3a7";
	color: #D5AF57;/*#0082bf;*/
}
label.ecp_radio:hover input[type="radio"] + .rb_icon:before {
	content: "\f3a7";
}
/* .joint_cell内のecp_radio */
.joint_cell label.ecp_radio {
	padding-left: 0;
	display: inline-block;
	width: 23px;
	height: 23px;
	line-height: 1;
}
.joint_cell label.ecp_radio .rb_icon {
	position: static;
	transform: trasnlateY(0);
}

/* ==============================================
 * form_basic
=============================================== */
.form_basic input,
.form_basic select,
.form_basic textarea {
	font-size: 15px;
	border-radius: 4px;
	padding: 5px;
}
.form_basic label {
	font-size: 15px;
}
.form_basic textarea {
	width: 100%;
	min-width: 200px;
	max-width: 500px;
	height: 6em;
}
/* radio,checkbox 
input[type="radio"],
input[type="checkbox"] {
	margin: 5px 0;
	vertical-align: middle;
}
input + label {
}
label {
	margin-left: 5px;
	margin-right: 15px;
}
label input {
	position: relative;
	left: -5px;
}
*/


/* 必須要素ハイライト表示（ecp_form_valid.js用）
----------------------------------------------- */
.ecp_form_valid input,
.ecp_form_valid select,
.ecp_form_valid textarea {
	transition: 0.3s;
}
.ecp_form_valid input.highlight,
.ecp_form_valid select.highlight,
.ecp_form_valid textarea.highlight {
	background-color: #fffffc;
	border-color: #f3a000;
	box-shadow: 0 0 4px #fca;
}
.ecp_form_valid input[type="radio"].highlight,
.ecp_form_valid input[type="checkbox"].highlight {
	outline: solid 1px #f3a000 !important;
	box-shadow: 0 0 4px 2px #fca;
}

/* 送信ボタン */
input[type="submit"] {
	border-radius: 0;   
    background: -moz-linear-gradient(top, #FFF 0%, #EEE);
    background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
    border: 1px solid #DDD;
    color: #111;
    padding: 10px 30px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
}
input[type="image"] {
	border-radius: 0;   
    background: -moz-linear-gradient(top, #FFF 0%, #EEE);
    background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
    border: 0px solid #DDD;
    color: #111;
    padding: 0;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
}

/* プレースホルダー文字色 */
::-moz-placeholder {
	color: #444;
}
::-webkit-input-placeholder {
	color: #aaa;
}
:-ms-input-placeholder {
	color: #aaa;
}

/*
@media ( max-width: 767px ) {
	input,
	select,
	textarea,
	label {
		font-size: 15px;
	}
	input,
	select,
	textarea {
		border-radius: 4px;
		padding: 5px;
	}
}
*/


/*************************************************
 *
 * その他
 *
*************************************************/
.inline {
	display: inline-block;
	vertical-align: middle;
	margin-right: 10px;
}






/*************************************************
 *
 * xxx
 *
*************************************************/

/* ==============================================
 * xxx
=============================================== */

/* xxx
----------------------------------------------- */

/*
@media ( max-width: 767px ) {
}
@media ( min-width: 768px ) and ( max-width: 979px ) {
}
@media ( min-width: 980px ) {
}
*/
