@charset "UTF-8";


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:10.5pt;
    line-height:1.8em;
    vertical-align:baseline;
    background:transparent;
    color:#333;
    font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    /* font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif; */
}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
	display:block;
}

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;
}

ins {
    background-color:#eee;
    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;
}



/* change border colour to suit your needs */
hr {
    display:block;
    height:1px;
    border:0;
    border-top:1px solid #cccccc;
    margin:1em 0;
    padding:0;
}

input, select {
    vertical-align:middle;
    margin-top:0;
}



/* ____________________ タグ
*/


body {
    line-height:1;
	margin:0;
	padding:0;
	background:#fff;
	-webkit-text-size-adjust: 100%;
}

img {
	border:none;
	vertical-align:bottom;
}

a {
	color : #00f;
}

a:hover {
	color:#000;
	text-decoration:none;
}

a:hover img {
	opacity:0.5;
	-moz-opacity:0.5;
	-webkit-opacity:0.5;
	-ms-filter: "alpha( opacity=50 )";
	filter: alpha( opacity=50 );
}

small {
	font-size:90%;
}

sup {
	font-size:6pt;
	vertical-align:top;
}

.bold {
	font-weight:bold;
}


/* ____________________ 汎用クラス
*/

.pc { display:block; }
.wd { display:block; }
.mb { display:none; }
.tb { display:none; }
.sp { display:none; }

.pc-tablecell { display:table-cell; }
.wd-tablecell { display:table-cell; }
.mb-tablecell { display:none; }
.tb-tablecell { display:none; }
.sp-tablecell { display:none; }

.pc-inline { display:inline; }
.wd-inline { display:inline; }
.mb-inline { display:none; }
.tb-inline { display:none; }
.sp-inline { display:none; }

.pc-inlineblock { display:inline-block; }
.wd-inlineblock { display:inline-block; }
.mb-inlineblock { display:none; }
.tb-inlineblock { display:none; }
.sp-inlineblock { display:none; }

.float-l { float:left; }
.float-r { float:right; }
.float-l-pc { float:left; }
.float-r-pc { float:right; }


.fs8,.fs9,.fs10,.fs11,.fs12,.fs13,.fs14,.fs15,.fs16 { line-height:1.5em; }

.fs8 { font-size:8pt; }
.fs9 { font-size:9pt; }
.fs10 { font-size:10pt; }
.fs11 { font-size:11pt; }
.fs12 { font-size:12pt; }
.fs13 { font-size:13pt; }
.fs14 { font-size:14pt; }
.fs15 { font-size:15pt; }
.fs16 { font-size:16pt; }

.mincho {
    font-family: "ヒラギノ明朝 ProN W6", "HiraMinProN-W6", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", "MS 明朝", serif;
}

.gothic {
    font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.clearfix:before,
.clearfix:after {
    content: " ";
    display: table;
}

.clearfix:after {
    clear: both;
}

.clearfix {
    *zoom: 1;
}

.clear,
.f_clear,
.clear-pc,
.clear-wd,
.clear-mb,
.clear-tb,
.clear-sp {
	display:block;
	clear:both;
	height:0;
	overflow:hidden;
	width:100%;
	background:none;
    visibility: hidden;
}

br.clear { clear:both; }

.clear-pc { clear:both; display:block; }
.clear-wd { clear:both; display:block; }
.clear-mb { clear:none; display:none; }
.clear-tb { clear:none; display:none; }
.clear-sp { clear:none; display:none; }

.align-l { text-align:left; }
.align-r { text-align:right; }
.align-c { text-align:center; }
table.vertical-b td { vertical-align:bottom; }

img.vertical-t { vertical-align:top; }
img.vertical-m { vertical-align:middle; }
img.vertical-b { vertical-align:bottom; }

.noborder {
	border:none !important;
}

.border-solid  {
	border-bottom:solid 1px #757575;
}

.border-solid-gray  {
	border:solid 4px #ddd;
}

.border-dashed  {
	border-bottom:dashed 1px #757575;
}

.border-dotted  {
	border-bottom:dotted 1px #757575;
}

.att {
	color:#f00;
}

.color-red { color:#c30e18; }
.color-white { color:#fff; }
.color-e00012 { color:#e00012; }
.color-ffd200 {  color:#ffd200; }
.color-55281a { color:#55281a; }


.mt10{ margin-top:10px; }
.mt20{ margin-top:20px; }
.mt30{ margin-top:30px; }
.pt5{ padding-top:5px; }
.pt10{ padding-top:10px; }
.pt20{ padding-top:20px; }
.pt30{ padding-top:30px; }


.opacity50 {
	opacity : 0.5;
	-moz-opacity : 0.5;
	-webkit-opacity : 0.5;
	-ms-filter: "alpha( opacity=50 )";
	filter: alpha( opacity=50 );
}

.smooth {
	overflow: hidden;
}

.smooth .smooth_bg {
	/*background-size:100%;
	background-position:center center;
	transition: all 0.1s ease 0s;*/
	-webkit-transform:scale(1);
	transform:scale(1);
	-webkit-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}

.smooth:hover .smooth_bg {
	-webkit-transform:scale(1.1);
	transform:scale(1.1);
}

.spimg {
	overflow-x: auto;
}

.spimg span {
	display: none;
	margin:1em;
}

@media screen and (max-width:640px) {
	.spimg span {
		display: block;
	}
}

/* ___________ 汎用フォーム
*/

input[type="button"] {
	cursor:pointer;
}
input[type="button"]:hover {
	-moz-opacity:0.8;
	-webkit-opacity:0.8;
	opacity:0.8;
}

input[type="text"],
textarea {
	padding:5px;
	-webkit-box-shadow: inset 0 1px 4px #ccc;
	-moz-box-shadow: inset 0 1px 4px #ccc;
	box-shadow: inset 0 1px 4px #ccc;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-radius:4px;
	border:solid 1px #ccc;
	background:#fff;
}

select {
	padding:5px;
	-webkit-box-shadow: inset 0 1px 4px #ccc;
	-moz-box-shadow: inset 0 1px 4px #ccc;
	box-shadow: inset 0 1px 4px #ccc;
	-webkit-border-radius:4px;
	-moz-border-radius:4px;
	border-radius:4px;
	border:solid 1px #ccc;
	background:#fff;
}



/* =======================================================
  ________________________________________ Tablet
*/

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

	/* ____________________ 汎用クラス
	*/
	.pc { display:none; }
    .wd { display:block; }
	.mb { display:block; }
	.tb { display:block; }
	.sp { display:none; }

	.pc-tablecell { display:none; }
    .wd-tablecell { display:table-cell; }
	.mb-tablecell { display:table-cell; }
	.tb-tablecell { display:table-cell; }
	.sp-tablecell { display:none; }

	.pc-inline { display:none; }
    .wd-inline { display:inline; }
	.mb-inline { display:inline; }
	.tb-inline { display:inline; }
	.sp-inline { display:none; }

    .pc-inlineblock { display:none; }
    .wd-inlineblock { display:inline-block; }
    .mb-inlineblock { display:inline-block; }
    .tb-inlineblock { display:inline-block; }
    .sp-inlineblock { display:none; }

	.clear-pc { clear:none; display:none; }
    .clear-wd { clear:both; display:block; }
	.clear-mb { clear:both; display:block; }
	.clear-tb { clear:both; display:block; }
	.clear-sp { clear:none; display:none; }


	.float-l-pc,
	.float-r-pc {
		float:none;
	}

    .mb-maxwidth100 { max-width:100%; }
    .tb-maxwidth100 { max-width:100%; }

}



/* =======================================================
  ________________________________________ Mobile
*/

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

	/* ____________________ 汎用クラス
	*/
	.pc { display:none; }
    .wd { display:none; }
	.mb { display:block; }
	.tb { display:none; }
	.sp { display:block; }

	.pc-tablecell { display:none; }
    .wd-tablecell { display:none; }
	.mb-tablecell { display:table-cell; }
	.tb-tablecell { display:none; }
	.sp-tablecell { display:table-cell; }

	.pc-inline { display:none; }
    .wd-inline { display:none; }
	.mb-inline { display:inline; }
	.tb-inline { display:none; }
	.sp-inline { display:inline; }

    .pc-inlineblock { display:none; }
    .wd-inlineblock { display:none; }
    .mb-inlineblock { display:inline-block; }
    .tb-inlineblock { display:none; }
    .sp-inlineblock { display:inline-block; }

	.clear-pc { clear:none; display:none; }
    .clear-wd { clear:none; display:none; }
	.clear-mb { clear:both; display:block; }
	.clear-tb { clear:none; display:none; }
	.clear-sp { clear:both; display:block; }


	.float-l-pc,
	.float-r-pc {
		float:none;
	}

    .mb-maxwidth100 { max-width:100%; }
    .sp-maxwidth100 { max-width:100%; }

}
