@charset "shift_jis";
/*
-------------------------------------------------------------------
◎基本スタイルシート
製作者：株式会社アルゴ
更新日：2014年4月11日
-------------------------------------------------------------------
*/


/* 基本構造 /common/css/base.cssと揃える ------------------------*/
* {
	margin: 0px;
	padding: 0px;
}
body {
	font-family: "Lucida Grande", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ＭＳ Ｐゴシック", "Lucida Sans Unicode", Arial, Verdana, sans-serif;
	font-size: 12px;
	line-height:20px;
}
p, dt, dl {
	font-size: 12px;
	color: #3C3C3C;
}
img {
	border: none;
}
.clearfix:after {
	content:".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}
.clearfix {
	display: inline-block;
}
.clear {
	clear: both;
}
.f-left {
	float: left;
}
.f-right {
	float: right;
}
/* リンク */
a {
	color: #418CF2;
	text-decoration: none;
}
a:hover {
	color: #646464;
}
/* マージン設定 */
.mt5 {
	margin-top: 5px;
}
.mt10 {
	margin-top: 10px;
}
.mt15 {
	margin-top: 15px;
}
.mt20 {
	margin-top: 20px;
}
.mb5 {
	margin-bottom: 5px;
}
.mb10 {
	margin-bottom: 10px;
}
.mb15 {
	margin-bottom: 15px;
}
.mb20 {
	margin-bottom: 20px;
}
.mb30 {
	margin-bottom: 30px;
}
.mr10 {
	margin-right: 10px;
}
/* 余白設定 */
.pt5 {
	padding-top: 5px;
}
.pt10 {
	padding-top: 10px;
}
.pt15 {
	padding-top: 15px;
}
.pt20 {
	padding-top: 20px;
}
.pb5 {
	padding-bottom: 5px;
}
.pb10 {
	padding-bottom: 10px;
}
.pb15 {
	padding-bottom: 15px;
}
.pb20 {
	padding-bottom: 20px;
}
.pl10 {
	padding-left: 10px;
}
.pr10 {
	padding-right: 10px;
}


/* ヘッダーコンテンツ ------------------------------------------ */
#header {
	background: url(/f/contact/images/1405/bg_header.jpg) top repeat-x;
}
#header .header-inner {
	position:relative;
	width: 960px;
	height:95px;
	margin: 0 auto;
	padding:0;
}
.header-inner p.logo {
	position: absolute;
	margin: 0px;
	top: 10px;
	left: -7px;
	z-index: 98;
}
.header-inner p.logo a:hover img {
	filter: alpha(opacity=100);
	-moz-opacity:1.0;
	opacity:1.0;
}

.header-inner p.catchcopy {
	position: absolute;
	margin: 0px;
	top: 53px;
	left: 74px;
	z-index:99;
}


/* カテゴリーラベル ------------------------------------------ */
#category-container {
	height: 115px;
	border-bottom:1px solid #999;
}
#category-container .category-inner {
	width: 980px;
	height: 105px;
	margin: 0 auto;
}
#category-container .category-inner h2 {
	width:220px;
	height:50px;
	float:left;
	border-right:1px solid #999;
	margin:25px 0 0 47px;
	padding:10px 0 0 0;
}
#category-container .category-inner p {
	display:block;
	width:540px;
	float:left;
	margin:20px 0 0 20px;
	font-size:14px;
	line-height:23px;
}
#category-container .category-inner p span {
	display:block;
	font-size:12px;
	padding-top:5px
}


/* コンテンツ ------------------------------------------ */
#contents {
	background:url(/f/contact/images/1405/bg_form.png) 80px 0 repeat-x #f9faec;
	color:#414141;
}
#contents ol.list_step {
	list-style:none;
	padding:10px 0 0 0;
	margin:0 auto;
	width:580px;
	position:relative;
	overflow:hidden;
	zoom:1;
}
#contents ol.list_step li {
	float:left;
	padding:0 7px 0 0;
	margin:0;
}


/* メインコンテンツ ------------------------------------------ */
#main-container {
	width:860px;
	margin:40px auto 0 auto;
}
div#main-container h3 {
	font-size:16px;
	color:#4d4d4d;
	padding:0 0 10px 5px;
	margin:-5px 0 0 0;
	/margin:0;
}
div#main-container h3.sub {
	font-size:14px;
	color:#4d4d4d;
	padding:10px 0 10px 5px;
	margin:0;
}
div#main-container h3.contact {
	font-size:16px;
	color:#4d4d4d;
	padding:10px 0 10px 5px;
	margin:0;
}
table.formbox td span {
	color: #999;
	font-size:12px;
	font-weight:normal;
}
h3 strong {
	color: #777;
	font-size:12px;
	font-weight:normal;
}

/* フォーム table */
table.formbox {
	position:relative;
	width: 860px;
	border-radius: 10px !important;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	background: url(/f/contact/images/1405/bg_form.gif) repeat-y #FFF;
	box-shadow: 0px 0px 3px 3px #CCC;
	padding:7px 0 7px 0;
	margin:0 0 20px 0;
	zoom:1;
}
table.formbox th, table.formbox td {
	font-size:14px;
	margin:0;
}
table.formbox th.line, table.formbox td.line {
	border-bottom:1px dashed #D1D1D1;
}
table.formbox th {
	width: 190px;
	font-weight:normal;
	text-align:left;
	padding:10px 10px 10px 20px;
	vertical-align:top;
}
table.formbox th.txt-right {
	text-align: right;
}
table.formbox th sup, h3 span {
	color: #F00;
	font-size: 10px;
}
table.formbox td {
	padding:10px 20px 10px 20px;
}
table.formbox td span.errmsg {
	color:#FF0000;
	font-size: 10px;
}
table.formbox td input.errmsg, table.formbox td input.errmsg:focus {
	background-color: #ffeeee;
}
table.formbox td input, table.formbox td select {
	vertical-align:middle;
}
label {
	display: inline;
}
table.formbox td input {
	height: 22px;
	font-size: 12px;
	text-indent: 5px;
	line-height: 20px;
	border: 1px #9ACBF6 solid;
}
table.formbox td select {
	font-size: 12px;
	text-indent: 5px;
	border: 1px #9ACBF6 solid;
	padding: 4px 5px 4px 5px;
	width:120px
}
table.formbox td input.field {
	width: 250px;
	ime-mode: active;
}
/* エラーのとき、該当枠を赤くする */
.errmsg table.formbox td input.field:focus {
	background-color: #F4FCFF;
	border: 1px #9ACBF6 dotted;
}

table.formbox td input.tel {
	width: 70px;
	ime-mode: disabled;
}
table.formbox td input.email {
	width: 250px;
	ime-mode: disabled;
}

/* チェックボックスカスタム */
.checkbox, .radiobox {
	z-index: -1;
	position: absolute;
}
.CheckBoxLabelClass {
	background: url("/f/contact/images/1405/icon_checkbox.png") no-repeat 0 0;
	margin:0 10px 0 0;
	padding-left:20px;
	height:20px;
	text-decoration:none;
}
.radiolabel {
	background: url("/f/contact/images/1405/icon_radiobox.png") no-repeat 0 0;
	margin:0 10px 0 0;
	padding-left:20px;
	height:20px;
}
.LabelSelected, .RadioSelected {
	background-position: 0 -19px;
}
table.formbox td input.radiobox,table.formbox td input.checkbox {
	border: none
}

/* 郵便番号入力欄 */
table.formbox td input.zip {
	width: 50px;
	ime-mode: disabled;
}

/* 郵便番号を調べるボタン */
table.formbox .address {
	position:relative;
}
table.formbox .address div.ad {
	position:absolute;
	top:2px;
	left:290px;
}
/*table.formbox td.address div.ad,  x:-moz-any-link  { margin:206px 0 0 150px; } */

/* テキストエリアリサイズ /f/contact/resize/参照 */
.ui-resizable {
	position: relative;
}
.ui-resizable-handle {
	position: absolute;
	font-size: 0.1px;
	display: block;
}
.ui-resizable-disabled .ui-resizable-handle,
.ui-resizable-autohide .ui-resizable-handle {
	display: none;
}
.ui-resizable-se {
	cursor: se-resize;
	width: 12px;
	height: 12px;
	right: 1px;
	bottom: 1px;
}

/* お問い合わせ、ご意見欄 */
div.contact-box {
	position:relative;
	zoom:1;
	width: 730px;
	border-radius:10px !important;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	background: #FFF;
	box-shadow: 0px 0px 3px 3px #CCC;
	padding:20px 0 20px 130px;
	margin:0;
}
div.contact-box textarea {
	background:url(/f/contact/images/1405/icon_textarea_handle.png) bottom right no-repeat;
	width: 600px;
	max-width:700px;
	height: 150px;
	font-size: 14px;
	ime-mode: active;
	resize: vertical;
	overflow: auto;
	border:1px solid #9ACBF6;
}

/* お問い合わせ、ご意見欄 */
div.confirm-box {
	position:relative;
	zoom:1;
	width: 800px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	background: #FFF;
	box-shadow: 0px 0px 3px 3px #CCC;
	padding:10px 25px 10px 25px;
	margin:0 0 20px 0;
	background:#FFF;
	font-size:14px;
	line-height:28px;
}

/* Thanks画面 */
div.thanks-box {
	position:relative;
	zoom:1;
	width: 800px;
	border-radius:10px;
	-webkit-border-radius:10px;
	-moz-border-radius:10px;
	background: #FFF;
	box-shadow: 0px 0px 3px 3px #CCC;
	padding:50px 25px 50px 25px;
	margin:30px 0 30px 0;
	background:#FFF;
	font-size:18px;
	line-height:40px;
	text-align:center !important;
}
div.btn {
	margin:20px 0 20px 0;
	position:relative;
	overflow:hidden;
	zoom:1;
}
div.submit {
	width:860px;
	margin:30px auto;
	position: relative;
}
div.submit input {
	width: 220px;
	height: 50px;
	margin-left:320px;
}
div.btn .edit {
	float:left;
	width:185px;
}
div.btn .send {
	float:left;
	margin: 0 0 0 140px;
	width:220px;
}
div.close {
	text-align:center;
	padding:0 0 50px 0
}

/* フォーム下 */
p.sslimg {
	margin-left:auto;
	padding:10px 0 0 0;
	width:860px;
	text-align:right;
}
p.ssltxt {
	margin-left:auto;
	padding:0 0 20px 0;
	width:860px;
	text-align:right;
	font-size: 12px;
	color:#777;
}
div.contents_btm {
	background: url(/f/contact/images/1405/bg_contents_btm.png) top repeat-x #fff;
	padding:20px 0 20px 0;
	position:relative;
	overflow:hidden;
	zoom:1;
}
div.contents_btm h3 {
	border-bottom:1px solid #999;
	padding:30px 0 5px 0;
}
div.contents_btm h3 span {
	display:block;
	width:900px;
	margin: 0 auto;
	color:#646464;
	font-size:16px;
	font-weight:bolder;
}
div.contents_btm p {
	width:900px;
	margin: 0 auto;
	color:#646464;
	font-size:12px;
	padding:10px 0 0 0;
}
div.contents_btm ul {
	width:900px;
	margin: 0 auto;
	list-style: none;
	position:relative;
	overflow:hidden;
	zoom:1;
}
div.contents_btm ul li {
	float: left;
	width: 150px;
	color: #646464;
	font-size:12px;
	line-height:22px;
}
div.contents_btm .privacy {
	width:900px;
	margin: 0 auto;
}
div.contents_btm .privacy img {
	margin: -60px 0 0 0;
	float:right;
}
div.contents_btm p.pagetop {
	clear: both;
	padding-top: 20px;
	text-align: right;
}
#header a:hover img, .contents_btm a:hover img {
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
}


/* フッターコンテンツ ---------------------------------------- */

#footer {
	background:url(/f/contact/images/1405/bg_footer.png) top repeat-x #FFF;
	position:relative;
	overflow:hidden;
	zoom:1;
}
#footer-inner {
	width:900px;
	margin:0 auto;
	padding:20px 0 20px 0;
}
#footer-inner img.logo {
	float: left;
}
#footer-inner p.copyright {
	float: left;
	height: 24px;
	margin: 12px 0px 14px;
	padding: 0px 10px 0px 15px;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 9px;
	line-height: 1.5em;
	border-right: 1px solid #969696;
}
#footer-inner p.footernavi {
	margin: 7px 0px 0px 10px;
	_margin: 18px 0px 0px 10px;
	padding: 10px 0px 0px 0;
}
#footer p.footernavi a {
	padding: 0px 0px 0px 15px;
	background: url(/common/images/icon_arrow_off.gif) no-repeat 9px center;
}
#footer p.footernavi a:hover {
	background: url(/common/images/icon_arrow_on.gif) no-repeat 9px center;
}
