a.to_top{
	height:50px;
	line-height: 50px;
}
.contact{
	background: url("../../images/form/top_sp.jpg") no-repeat;
	background-size:  100% auto;
}
.contact h2{
	top:7%;
	height:230px;
	
}
.formtable1 th{
	width:100%;
	display: block;
	font-family: 'Shippori Mincho B1', serif;
	font-weight: normal;
	text-align: left;
	font-size:14px;
	position: relative;
	margin-top:20px;
}
.formtable1 th .visible_s{
	display: inline!important;
}
.formtable1 th spna.hisu{
	position: absolute;
	left-:-10px;
	top:-5px;
}
.formtable1 td{
	display: block;
	width:100%;
	box-sizing: border-box;
	margin:10px 0;
}
.formtable1 td div,div.err_pms{
	font-size:12px!important;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	color:#ff0000;
}
.formtable1 tr:nth-child(3),.formtable1 tr:nth-child(3) td,.formtable1 tr:nth-child(3) th{
	margin:0!important;
}
.formtable1 td span.chuui{
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	font-size:12px;
	display: block;
	margin:0 0 20px 0;
}
.formtable1 th span{
	font-size:10px!important;
}
.formtable1 td span.chuui2{
	display: block;
	margin-top:25px;
	margin-bottom:10px;
	font-size:13px;
}
.formtable1 th span.hisu2,span.hisu2{
	font-size:10px!important;
	padding-left:0!important;
}
.privacy {
	width:100%;
	margin:30px auto 10px auto;
	background: #EDEDED;
	padding:30px;

	height:250px;
	overflow-y: scroll;
}
.privacy p{
	font-size:13px!important;
	line-height:2!important;
}
.privacy h2{
	font-size:16px;
	letter-spacing: 4px;
	margin-bottom:20px;
	font-family: 'Shippori Mincho B1', serif;
}
.privacy h4{
	display: inline-block;
	border-bottom:1px solid #272E38;
	line-height: 1.5;
	margin:10px 0;
	font-size:14px;
}
.privacy h5{
	margin:5px 0;
	font-size:13px;
}
.pms_txt{
	font-size:15px;
	display: block;
	vertical-align: middle;
}
/*----------------------------- 
フォーム部品
----------------------------- */
::placeholder{
	color:#A0A0A0;
	font-family: 'a-otf-ryumin-pr6n',serif;
}
img.zip_img{
	vertical-align: middle;
	margin-left:20px;
}
p.red{
	font-size:14px;
	padding:10px 20px 10px 0;
	margin:30px 0 30px 0;
}
label.ra{
	font-size:14px;
	margin-right:20px;
	display: inline-block;
	position: relative;
	font-family: 'a-otf-ryumin-pr6n',serif;
	margin-bottom:10px;
}
label.la{
	font-size:14px;
	line-height: 28px;
	margin-right:20px;
	display: block;
	font-family: 'Shippori Mincho B1', serif!important;
	margin:10px 0;
}
label.ra span {
 	 display: inline-block;
}
label > input {
display:none; /* アップロードボタンのスタイルを無効にする */
}
label.file_upload {
	font-size:13px;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	color: #181F6C; /* ラベルテキストの色を指定する */
	border: solid 1px #BEBEBE;/* ラベルのボーダーを指定する */
	width:100px;
	height:30px;
	text-align: center;
	line-height: 30px;
	border-radius: 3px;
	display: block;
	float:left;
	margin:0 5px 30px 0;
}
p.no-select{
	width:120px!important;
	margin-top:20px;
	display: inline-block;
	float:left;
	font-size:13px!important;
	font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
}
select.is-empty{
  color: #757575;
}
select.is-empty:invalid {
  color: #75757;
}
select,
input[type="text"],
input[type="email"],
input[type="telephone"],
input[type="password"],
input[type="tel"]
{
    padding: 0.8em;
    outline: none;
    border: 1px solid #E7E6E1;
    font-size: 14px;
	width: 100%;
	box-sizing: border-box;
	height:50px;
}
input[type="tel"].zip{
	width:50px!important;
}
input[type="tel"].zip2{
	width:70px!important;
	margin-right:5px;
}
a.zip_kensaku{
	font-size:12px;
	color:#6D8EDD;
	text-decoration: underline;
	font-family: 'Shippori Mincho B1', serif!important;
	padding-right:30px;
	background: url("../../images/form/kensaku.png") no-repeat right center;
	background-size: 27px 27px;
}
select {
  -webkit-appearance: none;
  appearance: none; /* デフォルトの矢印を非表示 */
}
select::-ms-expand {
  display: none; /* デフォルトの矢印を非表示(IE用) */
}
select:invalid { color: #bbb; }
select option { color: black; }
select option:first-child { color: #A0A0A0 }
.select-wrap,.select-wrap2 {
    position: relative;
    width: 100%;
}
.select-wrap:after ,.select-wrap2:after{
  content: "";
    position: absolute;
    right: 20px;
    top: 25px;
    width: 10px;
    height: 10px;
    border-top: 1px solid #181F6C;
    border-left: 1px solid #181F6C;
    transform: translateY(-50%) rotate(
		-135deg
	);
  font-size: 20px;
  pointer-events: none;
}
.container::before {
  border-bottom: 4.5px solid red;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  content: "";
  position: absolute;
  right: 9px;
  top: 10px;
  width: 0;
}
textarea {
    padding: 0.8em;
    outline: none;
    border: 1px solid #E7E6E1;
    font-size: 16px;
	width: 100%;
	box-sizing: border-box;
	height:320px;
}
input[type="text"].mini{
	width: 100px!important;
}
input[type="telephone"]{
	width:150px;
}

select.err,
input[type="text"].err,
input[type="email"].err,
input[type="telephone"].err,
input[type="password"].err,
textarea.err {
    padding: 0.8em;
    outline: none;
    border: 1px solid #e34264;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    font-size: 14px;
}
input[type="telephone"].err{
	width:150px;
}
textarea.err {
	width: 100%;
}
select:focus,
input[type="text"]:focus,
textarea:focus {
    border: 2px solid #2456CC;
}
/* Base for label styling */
[type="checkbox"]:not(:checked),
[type="checkbox"]:checked {
  position: absolute;
  left: -9999px;
}
[type="checkbox"]:not(:checked) + label,
[type="checkbox"]:checked + label {
  position: relative;
  padding-left: 1.95em;
  cursor: pointer;
}

/* checkbox aspect */
[type="checkbox"]:not(:checked) + label:before,
[type="checkbox"]:checked + label:before {
  content: '';
  position: absolute;
  left: 0; top: 4px;
  width: 1em; height: 1em;
  border: 2px solid #ccc;
  background: #fff;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.1);
}
/* checked mark aspect */
[type="checkbox"]:not(:checked) + label:after,
[type="checkbox"]:checked + label:after {
  content: '\2713\0020';
  position: absolute;
  top: 7px; left: 2px;
  line-height: 1.0;
  color: #2456CC;
  transition: all .2s;
  font-family: 'Lucida Sans Unicode', 'Arial Unicode MS', Arial;
}
/* checked mark aspect changes */
[type="checkbox"]:not(:checked) + label:after {
  opacity: 0;
  transform: scale(0);
}
[type="checkbox"]:checked + label:after {
  opacity: 1;
  transform: scale(1);
}
/* disabled checkbox */
[type="checkbox"]:disabled:not(:checked) + label:before,
[type="checkbox"]:disabled:checked + label:before {
  box-shadow: none;
  border-color: #bbb;
  background-color: #ddd;
}
[type="checkbox"]:disabled:checked + label:after {
  color: #999;
}
[type="checkbox"]:disabled + label {
  color: #aaa;
}
/* accessibility */
[type="checkbox"]:checked:focus + label:before,
[type="checkbox"]:not(:checked):focus + label:before {
  border: 2px solid #2456CC;
}
[type="radio"]:not(:checked),
[type="radio"]:checked {
  position: absolute;
  left: -9999px;
}
p.waku{
	text-align: left!important;
}
input[type="radio"] {
  
}
label.ra input[type="radio"] + span {
  position: relative;
  padding: 0 30px 0 27px;
}

label.ra input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
label.ra input[type="radio"] + span::before {
   content: '';
  position: absolute;
  left: 0; top: 4px;
  width: 1em; height: 1em;
  border: 2px solid #ccc;
  background: #fff;
  box-shadow: inset 0 1px 3px rgba(0,0,0,.1);
}

label.ra input[type="radio"]:checked + span::before {
	content: '\2713\0020';
	position: absolute;
	top: 4px; left: 0;
	line-height: 1.2;
	color: #2456CC;
	transition: all .2s;
	font-family: 'Lucida Sans Unicode', 'Arial Unicode MS', Arial;
	border: 2px solid #2456CC;
}

/* hover style just for information */
label:hover:before {
  border: 2px solid #2456CC!important;
}
input.s_btn02 {
	margin:50px 0 0 0;
	display: block;
	box-shadow: 0px 0px 23px -8px #6d8edd;
	border-radius: 1px;
	border: 1px solid #D6E3FC;
	transition: all 1s ease;
	cursor: pointer;
	font-size:16px;
	width:100%;
	height: 50px;
	font-family: 'Shippori Mincho B1', serif;
	background: #fff;
	color:#181F6C;
	line-height: 50px;
}
input.s_btn02:hover{
	box-shadow: 0px 0px 36px -3px #6d8edd;
    border-color: transparent;
	background: #233B98;
	color:#fff;
}
input.s_btn01 {
	width:200px;
	margin:15px 0 0 0;
    border-radius: 0;   
    background: -moz-linear-gradient(top, #FFF 0%, #EEE);
    background: -webkit-gradient(linear, left top, left bottom, from(#FFF), to(#EEE));
    border: 2px solid #ccc;
    color: #999;
    padding: 10px 30px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
	cursor: pointer;
	font-weight: bold;
	font-size:16px;
}
input.s_btn01:hover {
	
    background: -moz-linear-gradient(top, #EFEFEF 0%, #EEE);
    background: -webkit-gradient(linear, left top, left bottom, from(#EFEFEF), to(#EEE));
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}

/*　ime-mode 設定　*/
input.ime1 { sime-mode: auto; }
input.ime2 { ime-mode: active; }
input.ime3 { ime-mode: disabled; }
textarea.ime4 { ime-mode: inactive; }
input.ime5 {ime-mode: inactive;}
/* pmsページ */
#pms{
	background: url("../../images/base/footer_bg.png");
	font-family: "a-otf-ryumin-pr6n", "Cormorant Garamond", sans-serif;
}
.row{
	margin:0 auto;
	width:86%;
}
.row h4 {
	display: inline-block;
	border-bottom:1px solid #272E38;
	line-height: 1.5;
	margin:40px 0 20px 0;
}
.row h5{
	margin:20px 0;
}