﻿@charset "utf-8";
/* CSS Document */

/*====================================================================

page.css

======================================================================*/


#page_title {
	margin-bottom: 3rem;
	padding: 2.4rem 0 2rem;
	background: url(../img/h2_bg.jpg) no-repeat 50% 0;
}
#page_title h2 {
	letter-spacing: 1px;
	font-size: 2.2rem;
}
#page_title h2 span {
	display: block;
	margin-top: 1rem;
	color: #1e195d;
	font-size: 1.2rem;
}


/*--------------------------------------------------------------------/
	contact
/--------------------------------------------------------------------*/
.contact_wrap section {
	margin-bottom: 3rem;
}

p.ttl {
	margin-bottom: .7rem;
	background: url(../img/bg_01.gif);
	font-size: 1.5rem;
	font-weight: 600 !important;
}
p.ttl .red {
	font-size: 2rem;
	font-weight: 800 !important;
}
p.ttl .fs_s { font-size: 70% !important;}

/*--------------------------------------------------------------------/
	tel
/--------------------------------------------------------------------*/
.tel_num p{
	color: #000;
	font-size: 3rem;
	font-family: Century Gothic, Verdana, Geneva, sans-serif;
	font-weight: 900 !important;
	line-height: 1;
}
.tel_num span.tt {
	padding-right: 10px;
	vertical-align: middle;
	font-family:"Noto Sans Japanese", sans-serif;
}
.tel_num span.tt img {
	display: inline;
	vertical-align: bottom;
}
.sub_box p {
	padding: 0px !important;
}
.tel_num p:before {
	 content: '\e806';
	 color: #422928;
  font-family: "fontello";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: inline-block;
  text-decoration: inherit;
  margin-right: 10px;
}

.tel_txt span{
	font-weight: 500;
	font-size: 1.6rem;
}


/*--------------------------------------------------------------------/
	contact
/--------------------------------------------------------------------*/
.contact_flow {
	margin-top: 2rem;
	width: 100%;
	margin-bottom: 2rem;
}
.contact_flow ol{
	counter-reset : count;
	letter-spacing : -.40em;
}
.contact_flow ol >*{
	display : inline-block;
	letter-spacing : normal;
}

.contact_flow li{
	margin : 0 1.5% 10px 0;
	width : 14.8%;
	font-family: 'YuGothic', 'Yu Gothic', '游ゴシック', '游ゴシック体', sans-serif;
}
	
.contact_flow li{
	padding : 10px 20px;
	background-color : #ccc;
	font-size : 14.88px;
	font-size : .93rem;
	position : relative;
	color : #000;
}
.contact_flow li.now{
	background: #1e195d;
	color : #fff;
}
.contact_flow li.before{
	background: #eee;
}

.contact_flow li:before{
	display: block;
	counter-increment : count;
	content : "Step"counter(count);
	font-weight : bold;
	position : relative;
	top : 1px;
	padding-right : 3px;
	padding-right : 4.8px;
	padding-right : .3rem;
	font-family: Century Gothic, Arial, Helvetica, sans-serif;
}


.contact_flow li:last-child{
	margin-right : 0;
}
.contact_flow li:last-child:after{
	border : none;
	width: 100%;
	table-layout: fixed;
}

/* table */
table.contact {
	margin: 0 auto 25px;
	width: 100%;
	box-sizing: border-box;
}
table.contact th,
table.contact td {
	text-align: left;
	vertical-align: top;
	line-height: 1.5;
	letter-spacing: 1px;
	font-weight: normal;
	font-size: .9rem;
}
table.contact th {
	background: #eee;
}
table.contact td {
	width: auto;
}

table.contact span {
	padding: 0 5px;
	font-size: 11px;
}
table.contact th span {
	background: #b80804;
	color: #ffffff;
}

table.contact .ttl {
	background: #d0e0f6;
	border-top: 5px solid #fff;
	border-bottom: 5px solid #fff;
	font-weight: 700;
}

.imeon{ ime-mode:active; }
.imeoff{ ime-mode:disabled; }

table.contact .size {
	width: 70%;
}
table.contact input.zip {
	width: 30%;
}
table.contact textarea {
    width: 80%;
    height: 10em;
}

input,
textarea,
select { margin: 3px 0; padding: 3px; font-size: 1rem; border: 1px solid #ccc;}

strong#error {color:#fb190e;}

.sub_btn {
	padding: 8px 30px 7px 32px;
	background: #1e195d;
	border: none;
	color: #fff;
	letter-spacing: 1px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.2rem;
	cursor: pointer;
}
.back_btn {
	padding: 8px 46px 7px 50px;
	background: #ccc;
	border: none;
	color: #777;
	letter-spacing: 1px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 1.2rem;
	cursor: pointer;
}
.sub_btn,
.back_btn {
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all  0.2s ease;
}
.sub_btn:hover,
.back_btn:hover {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}


input::-webkit-input-placeholder{
	font-size : 12px;
	color : #ccc;
}

input:-moz-placeholder{
	font-size : 12px;
	color : #ccc;
}

/*--------------------------------------------------------------------/
	privacy
/--------------------------------------------------------------------*/
.privacy {
	margin-bottom: 2rem;
	padding: 25px 20px;
	border: 1px solid #ddd;
	overflow-y: auto;
	height: 150px;
}
.privacy h4 {
	margin-bottom: 15px;
	font-size: 18px;
}
.privacy h5 {
	margin-bottom: 10px;
	margin-top: 7px;
}
.privacy p {
	padding: 0 0 15px !important;
}

/*====================================================================/
	 smp & tablet Layout
/====================================================================*/

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

#page_title {
	padding: 1.7rem 0;
}
#page_title h2 {
	font-size: 1.4rem;
}
#page_title h2 span {
	margin-top: 10px;
	font-size: .9rem;
}

.contact_wrap section {
	margin-left: 3%;
	margin-right: 3%;
}

p.ttl {
	padding: 1.5rem;
}

.tel_num,
.sub_box p {
	text-align: center !important;
}

.contact_flow ol >*{
	display : inline-block;
	letter-spacing : normal;
}

.contact_flow li{
	margin : 0 0 15px 0;
	width : 100%;
	text-align: center;
	box-sizing: border-box;
}

.contact_flow li:before{
	display: inline;
	position : relative;
}

.contact_flow li:after{
	content : "";
	display : block;
	width : 0;
	height : 0;
	border : 10px solid transparent;
	border-top-color:#ccc;
 	border-bottom-width:0;
	position : absolute;
	bottom : -10px;
	left : 50%;
}
.contact_flow li.now:after{
	border-top-color : #1e195d;
}
.contact_flow li.before:after{
	border-top-color : #eee;
}

table.contact th,
table.contact td {
	padding: 10px 10px;
	display: block;
}

.privacy {
	margin-bottom: 20px;
	padding: 25px 20px;
	border: 1px solid #ddd;
	height: 120px;
	overflow-y: scroll;
}

}

@media print, screen and (min-width: 768px) {

.tel_txt {
}
.tel_num {
}

p.ttl {
	text-align: center;
	padding: 1.5rem 0;
}

.tel_num,
.sub_box p {
	text-align: left !important;
}

table.contact {
	border-top: 1px dotted #aaa;
}
table.contact th,
table.contact td {
	display: table-cell;
	padding: 15px 15px;
	border-bottom: 1px dotted #aaa;
}
table.contact th {
	width: 220px;
}
table.contact td ul li {
	display: inline;
	padding-right: 20px;
}

}

/*====================================================================/
	 PC Layout
/====================================================================*/

@media print, screen and (min-width: 1030px) {

.contact_flow li {
	line-height: 1.3;
}
.contact_flow li:after{
	content : "";
	display : block;
	width : 0;
	height : 0;
	border : 10px solid transparent;
	border-left-color : #ccc;
	position : absolute;
	top : 18px;
	right : -20px;
}
.contact_flow li.now:after{
	border-left-color : #1e195d;
}

.contact_flow li.before:after{
	border-left-color : #eee;
}

}

@media screen and (max-width: 580px) {
.tel_txt span {
	font-size: 1.2rem;
}
.tel_num p {
	font-size: 2.2rem;
}

table.contact .size,
table.contact input.zip,
table.contact textarea {
    width: 98%;
}

}


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

p.ttl {
	font-size: 1.2rem;
}
p.ttl .red {
	font-size: 1.5rem;
}

.tel_num p {
	font-size: 1.8rem;
}
.tel_num span.tt img{
	width: 40px;
}

}