@charset "utf-8";
@import url('https://fonts.googleapis.com/css?family=Josefin+Sans');
/* ===============================================
	▼リセットCSS
=============================================== */
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {margin:0;padding:0;border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;}
html {overflow-y: scroll;line-height: 1; -webkit-text-size-adjust:100%; -ms-text-size-adjust:100%;}
body {line-height:1;font-family: sans-serif; -webkit-font-smoothing: antialiased;}
article,aside,details,figcaption,figure, footer,header,hgroup,menu,nav,section { display:block;}
ol, ul {list-style: none;}
blockquote, q {quotes:none;}
blockquote:before, blockquote:after,q:before, q:after {content:'';content:none;}
a {margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
a:focus {outline:none;}
ins {background-color:#ff9;color:#000;text-decoration:none;}
mark {background-color:#ff9;color:#000; font-style:italic;font-weight:bold;}
del {text-decoration: line-through;}
abbr[title], dfn[title] {border-bottom:1px dotted;cursor:help;}
table {border-collapse:collapse;border-spacing:0;}
hr {display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}
input, select {vertical-align:middle;}
img {vertical-align: top;font-size:0;line-height: 0;-ms-interpolation-mode: bicubic;interpolation-mode: bicubic;}

/* ===============================================
	▼共通（基本情報）
=============================================== */
body{
	color: #231815;
	font-family: YuGothic, "Yu Gothic", 游ゴシック体, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "MS ゴシック", "MS Gothic", sans-serif;
	font-size: 100%;
	line-height: 1.6;
	letter-spacing: 0.02em;
	text-align: center;
}
html >/**/body{
	font-size: 100%;
}
* + html body{
	font-family: YuGothic, "Yu Gothic", 游ゴシック体, "游ゴシック", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "MS ゴシック", "MS Gothic", sans-serif;
}
html{
	width: 100%;
	height: 100%;
}
body{
	width: 100%;
	min-width: 1100px;
	height: 100%;
}

.en {
	font-family: "Josefin Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "MS PGothic", "ＭＳ Ｐゴシック", sans-serif;
	letter-spacing: .1rem;
}

/* リンクスタイル */
a {
	color: #3366cc;
	text-decoration: underline;
}
a,
input,
select,
textarea,
button,
*:before,
*:after {
	-webkit-transition: all 300ms ease;
	        transition: all 300ms ease;
			-ms-transition: none;
	-webkit-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
			-ms-transform: none;
}
a:focus,
input:focus,
select:focus,
textarea:focus,
button:focus {
  outline: none;
}
a:hover {
	color: #55aaea;
	text-decoration: underline;
}

/* ===============================================
	▼共通（余白）
=============================================== */
/* 上余白 */
.tsp5 { padding-top: 5px; }
.tsp10 { padding-top: 10px; }
.tsp15 { padding-top: 15px; }
.tsp20 { padding-top: 20px; }
.tsp25 { padding-top: 25px; }
.tsp30 { padding-top: 30px; }
.tsp35 { padding-top: 35px; }
.tsp40 { padding-top: 40px; }
.tsp45 { padding-top: 45px; }
.tsp50 { padding-top: 50px; }

/* 左余白 */
.lsp5 { padding-left: 5px; }
.lsp10 { padding-left: 10px; }
.lsp15 { padding-left: 15px; }
.lsp20 { padding-left: 20px; }
.lsp25 { padding-left: 25px; }
.lsp30 { padding-left: 30px; }
.lsp35 { padding-left: 35px; }
.lsp40 { padding-left: 40px; }
.lsp45 { padding-left: 45px; }
.lsp50 { padding-left: 50px; }

/* 右余白 */
.rsp5 { padding-right: 5px; }
.rsp10 { padding-right: 10px; }
.rsp15 { padding-right: 15px; }
.rsp20 { padding-right: 20px; }
.rsp25 { padding-right: 25px; }
.rsp30 { padding-right: 30px; }
.rsp35 { padding-right: 35px; }
.rsp40 { padding-right: 40px; }
.rsp45 { padding-right: 45px; }
.rsp50 { padding-right: 50px; }

/* 下余白 */
.bsp5 { padding-bottom: 5px; }
.bsp10 { padding-bottom: 10px; }
.bsp15 { padding-bottom: 15px; }
.bsp20 { padding-bottom: 20px; }
.bsp25 { padding-bottom: 25px; }
.bsp30 { padding-bottom: 30px; }
.bsp35 { padding-bottom: 35px; }
.bsp40 { padding-bottom: 40px; }
.bsp45 { padding-bottom: 45px; }
.bsp50 { padding-bottom: 50px; }

.bsm5 { margin-bottom: 5px; }
.bsm10 { margin-bottom: 10px; }
.bsm15 { margin-bottom: 15px; }
.bsm20 { margin-bottom: 20px; }
.bsm25 { margin-bottom: 25px; }
.bsm30 { margin-bottom: 30px; }
.bsm35 { margin-bottom: 35px; }
.bsm40 { margin-bottom: 40px; }
.bsm45 { margin-bottom: 45px; }
.bsm50 { margin-bottom: 50px; }

/* 全体余白 */
.pad5 { padding: 5px; }
.pad10 { padding: 10px; }
.pad15 { padding: 15px; }
.pad20 { padding: 20px; }
.pad25 { padding: 25px; }
.pad30 { padding: 30px; }

/* 余白なし */
.noPad { padding: 0; }

/* ===============================================
	▼共通（横幅）
=============================================== */
.w10{ width: 10%; margin: 0 auto; }
.w20{ width: 20%; margin: 0 auto; }
.w25{ width: 25%; margin: 0 auto; }
.w30{ width: 30%; margin: 0 auto; }
.w40{ width: 40%; margin: 0 auto; }
.w50{ width: 50%; margin: 0 auto; }
.w60{ width: 60%; margin: 0 auto; }
.w70{ width: 70%; margin: 0 auto; }
.w80{ width: 80%; margin: 0 auto; }
.w90 { width: 90%; margin: 0 auto; }
.w100 { width: 100%; margin: 0 auto; }
.w10L{ width: 10%; }
.w20L{ width: 20%; }
.w25L{ width: 25%; }
.w30L{ width: 30%; }
.w40L{ width: 40%; }
.w50L{ width: 50%; }
.w60L{ width: 60%; }
.w70L{ width: 70%; }
.w80L{ width: 80%; }
.w90L { width: 90%; }
.w10R{ width: 10%; margin-left: 0; margin-right: auto;}
.w20R{ width: 20%; margin-left: 0; margin-right: auto;}
.w25R{ width: 25%; margin-left: 0; margin-right: auto;}
.w30R{ width: 30%; margin-left: 0; margin-right: auto;}
.w40R{ width: 40%; margin-left: 0; margin-right: auto;}
.w50R{ width: 50%; margin-left: 0; margin-right: auto;}
.w60R{ width: 60%; margin-left: 0; margin-right: auto;}
.w70R{ width: 70%; margin-left: 0; margin-right: auto;}
.w80R{ width: 80%; margin-left: 0; margin-right: auto;}
.w90R { width: 90%; margin-left: 0; margin-right: auto;}

/* ===============================================
	▼共通（文字スタイル）
=============================================== */
/* 文字サイズ */
.font70 { font-size: 70%; }
.font80 { font-size: 80%; }
.font90 { font-size: 90%; }
.font100 { font-size: 100%; }
.font110 { font-size: 110%; }
.font120 { font-size: 120%; }
.font130 { font-size: 130%; }
.font140 { font-size: 140%; }
.font150 { font-size: 150%; }
.font160 { font-size: 160%; }
.font170 { font-size: 170%; }
.font180 { font-size: 180%; }
.font190 { font-size: 190%; }
.font200 { font-size: 200%; }

/* 太さ・色 */
.green { color: #709839; }
.bold { font-weight: bold; }
.blue { color: #0068b8; }
.red { color: #dd0000; }
.org { color: #ff6600; }
.small { font-size: 10px; font-weight: normal; }
.error { font-size: 10px; color: #dd0000; font-weight: bold; }
.aster { color: #dd0000; font-weight: normal; }



/* 文字高さ */
.line2 { line-height: 2; }

/* 位置 */
.alignC { text-align: center; }
.alignL { text-align: left; }
.alignR { text-align: right; }

/* インデント */
.indent01 { text-indent: -1em; padding-left: 1em; }
.indent15 { text-indent: -1.5em; padding-left: 1.5em; }
.indent02 { text-indent: -2em; padding-left: 2em; }

/* ===============================================
	▼共通（リンク）
=============================================== */
/* マウスオーバー（モダンブラウザ用ハック済み） */
body:nth-of-type(1) a img.over{
	-webkit-transition: all 300ms ease;
	        transition: all 300ms ease;
	-webkit-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
	filter:alpha(opacity=100);
	-moz-opacity: 1.0;
	opacity: 1.0;
}
body:nth-of-type(1) a:hover img.over{
	filter:alpha(opacity=60);
	-moz-opacity: 0.6;
	opacity: 0.6;
}

/* ===============================================
	▼共通（背景色）
=============================================== */
.bgcG {background-color: #b2ffb2; }
.bgcO { background-color: #ffd8b2; }
.bgcY { background-color: #ffffb2; }

/* ===============================================
	▼共通（フロート）
=============================================== */
/* フロート解除 */
.clearfix:after{
	content: "";
	display: block;
	clear: both;
	height: 0;
	line-height: 0;
	font-size: 0;
	visibility: hidden;
}
.clearfix{
	zoom:1;
}
* html .clearfix{
	height: 0px;
	/*\*//*/
	height: auto;
	overflow: hidden;
	/**/
}
.clear { clear: both; line-height: 0; font-size: 0; }

/* ===============================================
	▼共通（フォーム）
=============================================== */
select {
	border: solid 1px #ccc;
	padding: 5px;
}
input[type='text'],
input[type=email],
input[type=tel],
input[type='password'],
textarea {
	-webkit-box-shadow:0 0 2px 2px rgba(200,200,200,0.1) inset;
	-moz-box-shadow:0 0 2px 2px rgba(200,200,200,0.1) inset;
	box-shadow:0 0 2px 2px rgba(200,200,200,0.1) inset;
	vertical-align: middle;
	border: solid 1px #ccc;
	padding: 5px;
	box-sizing: border-box;
}
/* テキストフォームスタイル */
input.text10 { width: 10px; }
input.text20 { width: 20px; }
input.text30 { width: 30px; }
input.text40 { width: 40px; }
input.text50 { width: 50px; }
input.text60 { width: 60px; }
input.text70 { width: 70px; }
input.text80 { width: 80px; }
input.text90 { width: 90px; }
input.text100 { width: 100px; }
input.text150 { width: 150px; }
input.text200 { width: 200px; }
input.text250 { width: 250px; }
input.text300 { width: 300px; }
input.text350 { width: 350px; }
input.text400 { width: 400px; }

/* ファイルフォームスタイル */
input.file{
	*width: 250px;
	padding: 2px;
}

/* テキストエリアスタイル */
textarea.textarea60{
	width: 95%;
	height: 60px;
	border: 1px solid #ccc;
	padding: 2px;
}
textarea.textarea100{
	width: 96%;
	height: 100px;
	border: 1px solid #ccc;
	padding: 2px;
}
