@charset "utf-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

/* ------------------------------------------------------------ common */
body { min-width: 1400px; font-family: 'Noto Sans Japanese', sans-serif; }
a 			{ color: #000;  }
a:link 		{ text-decoration: none; }
a:visited 	{ text-decoration: none; }
a:hover,
a:hover img,
input[type="submit"]:hover { color: #111; text-decoration: none; 
	filter:alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8; }
    
input[type="text"],
select,
textaera	{ border: 1px solid #b5b5b5; }

input[type="submit"] { -webkit-appearance: button; cursor: pointer; padding: 0; border: none; }

.inner 	{ width: 1100px; margin: 0 auto; }
.sp { display: none; }

h3.h3_common { text-align: center; background: url(../images/common/head_bg.jpg) no-repeat center center; padding: 38px 0; color: #fff; font-size: 45px; font-weight: 500; }

.white_box { background: #fff; }

/* ------------------------------------------------------------ fonts */

@font-face {
	font-family: 'AlternateGothicEF-NoTwo';
	src: url('../fonts/AlternateGothicEF-NoTwo.ttf');
}

/* ------------------------------------------------------------ buttons */

p.btn 	{ text-align: center; }
p.btn a,
p.btn input[type="submit"]	{ display: inline-block; *display: inline; *zoom: 1; color: #fff;  border-radius: 3px; -moz-border-radius: 3px; -webkit-border-radius: 3px; width: 260px; height: 48px; line-height: 48px; vertical-align: top; }
p.btn .red { background: #af0a0a; }
p.btn .grey { background: #9c9c9c; }

/* ------------------------------------------------------------ header */

header { padding: 20px 22px; box-sizing: border-box; max-width: 1600px; margin: auto; }
header .logo { float: left; padding: 15px 0 0; }
header .logo a { display: inline-block; }
header h1 { float: left; font-size: 13px; letter-spacing: 1px; padding: 15px 0 0 22px; }
header p.h_link { float: right }
header p.h_link a { color: #0f235b; display: block; padding: 0 35px; height: 54px; line-height: 54px; background: #ffde00; }

/* ------------------------------------------------------------ footer */

footer { padding: 70px 0 30px; text-align: center; }
footer address { font-size: 12px; padding: 50px 0 0; }

/* ------------------------------------------------------------ contact */

#contact { padding: 100px 0; background: #f2f2f8; }
#contact .req { color: #f0000e; }
#contact h4 { text-align: center; padding: 0 0 60px; }
#contact h4 span { display: block; font-size: 48px; font-weight: 700; letter-spacing: 2px;
	font-family: "游ゴシック体", "Yu Gothic", "YuGothic", "Hiragino Kaku Gothic Pro","Meiryo","メイリオ","Osaka","ＭＳ Ｐゴシック","MS P Gothic","Arial",sans-serif;
}
#contact p.switch { padding: 0 0 40px; }
#contact p.switch a { display: block; float: left; width: 50%; padding: 20px 0; text-align: center; color: #fff; }
#contact p.switch a.red { background: #af0a0a; }
#contact p.switch a.blue {background: #132c74; }
#contact .contact_inner { width: 850px; margin: auto; }
#contact .white_box { padding: 60px 80px 80px; }
#contact p.caution { font-size: 14px; text-align: center; border: 5px solid #e9e3da; padding: 25px 0; margin: 0 0 50px; }
#contact p.btn { padding: 20px 0 0; }
#contact table { width: 100%; font-size: 14px; text-align: left; }
#contact table td,
#contact table th { padding: 12px 0; vertical-align: top; text-align: left; }
#contact table td { width: 490px; }
#contact table td.date { font-weight: bold; }
#contact table td label { display: inline-block; line-height: 120%; padding: 0 30px 0 0; }
#contact table input[type="radio"] { vertical-align: middle; margin: 0 10px 0 0; }
#contact table select { padding: 5px 10px 5px 5px; border-radius: 5px; background: #f3f3f3; }
#contact table input[type="text"],
#contact table textarea { padding: 12px; border: none; background: #f3f3f3; width: 100%; box-sizing: border-box; resize: vertical;
	border-radius: 5px; 
	-moz-border-radius: 5px; 
	-webkit-border-radius: 5px;
}
#contact .agree { padding: 30px 0 0; }
#contact .agree .info { padding: 20px; border: 1px solid #000; height: 140px; overflow-y: scroll;
	border-radius: 5px; 
	-moz-border-radius: 5px; 
	-webkit-border-radius: 5px;
}
#contact .agree .info h6 { font-size: 16px; font-weight: bold; }
#contact .agree .info p { font-size: 14px; padding: 0 0 10px; }
#contact .agree p.check { text-align: center; padding: 20px 0 0; }
#contact .agree p.small { text-align: center; font-size: 12px; }
#contact #form2 { display: none; }
#contact .error h4 { padding: 20px 0; font-size: 32px; font-weight: bold; }
#contact .request h5 { margin: 0 0 20px; font-size: 22px; text-align: center; background: #132c74; padding: 20px 0; color: #fff; }
#contact .error p.btn { padding: 50px 0; }
#contact p.alert { text-align: center; padding: 0 0 30px; }
#contact p.alert span { display: block; color: #ff0000; }
#contact .thanks { text-align: center; } 
#contact .thanks h4 { font-size: 32px; font-weight: bold; padding: 0 0 40px; }
#contact .thanks .info { padding: 0 0 30px; }


/* ------------------------------------------------------------ mobile */
@media only screen and (max-width:640px){

.sp { display: block; }
.pc { display: none; }

.inner { width: 94%; margin: auto; }

body { min-width: inherit; }

h3.h3_common { background-size: cover; font-size: 18px; padding: 20px 3%; }

p.btn a, 
p.btn input[type="submit"] { display: block; width: 100%; margin: 0 auto 5px; max-width: 250px; font-size: 14px; height: 40px; line-height: 40px; }

p.links a { max-width: 260px; }

/* ------------------------------------------------------------ header */

header { padding: 0; }
header h1 { display: none; font-size: 10px; }
header .logo { padding: 15px 3%; }
header .logo img { width: 100px; height: auto; }
header p.h_link a { line-height: 150%; height: auto; text-align: center; padding: 5px 15px; font-size: 12px; }

/* ------------------------------------------------------------ footer */

footer { padding: 40px 0 10px; }
footer img { width: 220px; height: auto; }
footer address { padding: 20px 0 0; font-size: 11px; }

/* ------------------------------------------------------------ header */

#contact { padding: 50px 0 30px; }
#contact h4 { padding: 0 0 30px; font-size: 14px; }
#contact h4 span { font-size: 24px; line-height: 130%; }
#contact .contact_inner { width: 94%; }
#contact p.switch { padding: 0 0 20px; }
#contact p.switch a { font-size: 14px; padding: 10px 0; float: none; width: 100%; }
#contact .white_box { padding: 30px 6%; }
#contact p.caution { padding: 20px 3%; margin: 0 0 30px; }
#contact table { box-sizing: border-box; }
#contact table td, 
#contact table th { display: block; width: 100%; }
#contact table th { padding: 12px 0 0; }
#contact table td { padding: 8px 0 12px; }
#contact table select { padding: 2px 5px; margin: 0 0 5px; }
#contact table input[type="text"], 
#contact table textarea { padding: 8px 3%; }
#contact .agree p.check { font-size: 14px; }
#contact .agree .info { padding: 20px 6%; }
#contact p.alert span { font-size: 14px; }
#contact .error p.btn { padding: 30px 0; }
#contact .error h4 { font-size: 22px; }


}

























