/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

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

body {
    line-height:1;
}

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

h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
}

nav ul {
    list-style:none;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

a {
    margin:0;
    padding:0;
    vertical-align:baseline;
    background:transparent;
}

/* change colours to suit your needs */
ins {
    background-color:#ff9;
    color:#000;
    text-decoration:none;
}

/* change colours to suit your needs */
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;
}
ul, ol {
	list-style-position: outside;
}
li {
	margin-left: 2em;		/* <- 1.5em */
}
nav li {
	margin-left: 0;
	list-style-type: none;
}
/*-------------------------------------------------
共通
------------------------------------------------- */
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
*:before, *:after {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
html {
	-webkit-tap-highlight-color: transparent;
}
body {
	font-family:
		'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro',
		'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic',
		sans-serif;
	color: #000;
	background-color: #f9f9f9;
	-webkit-text-size-adjust: 100%;
}
.mincho {
	font-family:
		'Times New Roman',
		'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN',
		'游明朝', '游明朝体', 'YuMincho', 'Yu Mincho', 'HG明朝E',
		'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic',
		serif;
}
.touhaba {
	font-family: "Osaka－等幅", Osaka-mono, "ＭＳ ゴシック", "MS Gothic", monospace;
}
input, button, select, textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}
a {
	cursor: pointer;
	color: #0066ff;
	text-decoration: none;
	transition: .3s;
}
/*
a:visited { color: #9966ff;}
a:hover, a:focus, a:active {
*/
a:hover, a:active {
	color: #1abc9c;
	color: #ff6633;
	text-decoration: none;
}
img {
	border-style: none;
	vertical-align: middle;
	max-width: 100%;
	height: auto;
	}
a:hover img {
	background-color: white;
	opacity: 0.6; 
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )"; 
	}
	
.PosLeft {	float: left; }
.PosRight {	float: right; }
.PosCenter {	margin-left: auto; margin-right: auto; }
.ClearLeft {	clear: left; }
.ClearRight {	clear: right; }
.ClearBoth {	clear: both; }
.InnerLeft {	text-align: left; }
.InnerRight {	text-align: right; }
.InnerCenter {	text-align: center; }
.IsHidden {	display: none; }

.clearfix:before, .clearfix:after { content: " "; display: table;}
.clearfix:after { clear: both;}
.clearfix { zoom: 1;}

img.PosRight, figure.PosRight, table.PosRight, article.PosRight, aside.PosRight {
	margin-left: 10px;
	margin-bottom: 6px;
	}
img.PosLeft, figure.PosLeft, table.PosLeft, article.PosLeft, aside.PosLeft {
	margin-right: 10px;
	margin-bottom: 6px;
	}
.bg_gradation {
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr = '#7e0f14', endColorstr = '#000');
-ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr = '#7e0f14', endColorstr = '#000')";
background-image: -moz-linear-gradient(top, #7e0f14, #000);
background-image: -ms-linear-gradient(top, #7e0f14, #000);
background-image: -o-linear-gradient(top, #7e0f14, #000);
background-image: -webkit-linear-gradient(top, #7e0f14, #000);
background-image: linear-gradient(top, #7e0f14, #000);
}
.bg_white {
	background-color: white;
}
.bg_black {
	background-color: black;
}
.bg_gray {
	background-color: #f3f3f3;
}
.bg_red {
	background-color: #7e0f14;
}
.bg_blue {
	background-color: #15162c;
}
.bg_green {
	background-color: #e0ffe0;
}
.warning {
	color: red;
}
.nonPadding {
	padding: 0;
}

/* ----------------------------------
 特殊な加工をほどこした要素
 --------------------------------- */
cite { font-style: normal;}
cite:before { content: "《"; }
cite:after { content: "》"; }
strong {
	font-style: normal;
	font-weight: bold;
	color: #000;
	}
em {
	font-style: oblique;
	}
iframe {
	width: 100%;
	border: 0;
	}
address {
	font-style: normal;
}
/* ----------------------------------
 特殊な加工をほどこした要素
 --------------------------------- */
blockquote {
	border-top: 1px solid #333;  
	border-bottom: 1px solid #333;
	padding: 1.2em 0 1.2em 3em;
	position: relative;
	z-index: 1;
	}
blockquote:before {
	content: "\f10d";
	font-size: 200%;
	line-height: 1em;
	font-family: 'FontAwesome';
	color: #e8e8e8;
	color: #666;
	position:absolute;
	left: 0;
	top: 0;
	z-index: -1;
}
blockquote:after {
	content: "\f10e";
	font-size: 200%;
	line-height: 0em;
	font-family: 'FontAwesome';
	color: #e8e8e8;
	color: #666;
	position: absolute;
	right: 0;
	bottom: 20px;
	z-index: -1;
}

q { font-style: normal;}
q:before {
	content: " “";
	font-family: "ＭＳ Ｐゴシック",Osaka,sans-serif;
	font-size: 144%;
	line-height: 1.0em;
	position: relative;
	top: 5px;
	}
q:after {
	content: "” ";
	font-family: "ＭＳ Ｐゴシック",Osaka,sans-serif;
	font-size: 144%;
	line-height: 1.0em;
	position: relative;
	top: 5px;
	}

/* ----------------
要素間の区切りスペース
---------------- */
article p, article ul, article dl, article ol, article table, article iframe {
	margin-top: 1.2em;
	}
article blockquote, article pre, article code {
	margin-top: 1.2em;
	}
article *:first-child { margin-top: 0;}
article p:first-of-type, div p:first-of-type, td p:first-of-type, blockquote p:first-of-type { margin-top: 0;}
article>h2 + p:first-of-type, article>h3 + p:first-of-type,
aside>h2 + p:first-of-type, aside>h3 + p:first-of-type,
div>h2 + p:first-of-type, div>h3 + p:first-of-type { margin-top: 1.2em;}

table.PosLeft + p:first-of-type, table.PosLeftSP + p:first-of-type,
p.PosLeft + p:first-of-type, p.PosLeftSP + p:first-of-type { margin-top: 1.2em;}

table.bottom_space { margin-bottom: 1.2em;}

dl dt {
	padding-top: 1em;
	}
dl dt:first-of-type,
li dl dt:first-of-type,
dd dl dt:first-of-type { padding-top: 0;}
dl dd {
	padding-left: 2.0em;
	}
h2, h3 {
	margin-top: 30px;
}
div h2:first-child, div h3:first-child,
article h2:first-child, article h3:first-child,
aside h2:first-child, aside h3:first-child,
blockquote h2:first-child, blockquote h3:first-child { margin-top: 0;}

.Description {
	border-style: solid;
	border-color: #ddd #ddd #ddd #1BA1E2;	/* 色注意! */
	border-width: 1px 1px 1px 5px;
	border-radius: 2px;
	padding: 0.6em 20px;
	margin-top: 0.6em;
	margin-bottom: 0.4em;
	}
	
/* ----------------
ボタン
---------------- */
input[type="radio"] ,
input[type="checkbox"] {
	-webkit-transform: scale(1.5);
	transform: scale(1.5);
}

input[type="submit"],
button,
.myButton {
	display: inline-block;
	float: left;
	padding: 4px 10px;
	text-align: center;
	border: 2px solid #666;
	border-radius: 4px;
	color: #333;
	background-color: #fff;
	transition: .3s;
	margin-top: 0;
	cursor: pointer;
}
button.nonFloat,
.myButton.nonFloat {
	float: none;
}
input[type="submit"]+input[type="submit"],
input[type="submit"]+button,
button+input[type="submit"],
button+button {
	margin-left: 10px;
}
input[type="submit"]:hover,
button:hover,
.myButton:hover {
	color: white;
	background-color: gray;
	border-color: gray;
}
button.nonAction,
button.nonAction:hover {
	border-width: 1px;
	color: #999;
	background-color: #fff;
	border-color: #999;
}

a figure img {
	transition: .3s;
}
a figure figcaption {
	transition: .3s;
	display: inline-block;
	position: relative;
}
a figure figcaption::after {
	position: absolute;
	bottom: .4em;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background-color: #ff6633;
	opacity: 0;
	transition: .3s;
}
a:hover figure figcaption::after {
	bottom: 0;
	opacity: 1;
}

/* ----------------
テーブル
---------------- */
table {
	border-spacing: 0;
	border-top: solid 1px #d8d8d8;
}
th {
	padding: 10px 14px;
	color: #000000;
	background-color: #f0f0f0;
	font-weight: normal;
	text-align: left;
	vertical-align: top;
}
thead th {
	padding: 16px 14px;
}
td {
	padding: 10px 14px;
	color: #666;
	background-color: white;
	border-bottom: solid 1px #d8d8d8;
	vertical-align: top;
}
th+th,th+td,td+td {
	border-left: solid 1px #fff;
}
.nonBorder,
.nonBorder td,
.nonBorder th {
	background-color: transparent;
	border-width: 0;
	color: black;
}
.nonBorder th {
	text-align: right;
	vertical-align: top;
}

/* -----------------
 ナビゲーション
 ----------------- */
nav ul {
}
nav li {
	display: inline-block;
	list-style: outside none none;
}
.breads li {
	margin-right: 1.0em;
}
.breads li+li:before {
	content: '>　';
}

/* ----------------
メディアクエリーの境界は、1200, 900, 600 の５段階
0=BigScreen 1=Large 2=Medium 3=Small
---------------- */
@media screen and (max-width:600px) {
	.hdn_Small { display: none; }
}
@media screen and (min-width:600px) {
	.shw_Small { display: none; }
}
@media screen and (max-width:900px) {
	.hdn_Medium { display: none; }
}
@media screen and (min-width:900px) {
	.shw_Medium { display: none; }
}
@media screen and (max-width:1270px) {
	.hdn_Large { display: none; }
}
@media screen and (min-width:1270px) {
	.shw_Large { display: none; }
}

.container {
	clear: both;
	width: 1140px;
	margin: 0 auto;
	overflow: hidden;
}
.container:after {
	clear: both;
}
/*
@media screen and (max-width:1200px) {
	.container {
		width: 100%;
		padding: 0 20px;
	}
} */
@media screen and (max-width:1450px) {
	.container { width: 75%; }
}
@media screen and (max-width:1100px) {
	.container { width: 90%; }
}
@media screen and (max-width:900px) {
	.container {
		width: 100%;
		padding: 0 20px;
	}
}
@media screen and (max-width:600px) {
	.container { padding: 0 10px;}
}
@media screen and (max-width:360px) {	/* ←本来、この定義は不要だが、table 崩壊の回避目的 */
	.container { padding: 0 0;}
}

.row {
	margin-left: -25px;
	margin-right: -25px;
}
.row_NS {
	margin-left: 0;
	margin-right: 0;
}
.row_MN {
	margin-left: -10px;
	margin-right: -10px;
}
.row_NS:before, .row_NS:after, .row_MN:before, .row_MN:after, .row:before, .row:after {
	content: " ";
	display: table;
}
.row_NS:after, .row_MN:after, .row:after {
	clear: both;
}

/* --------------------------
.col-42 : .col-21 ではあふれる可能性がある場合に使用
.col-21s, .col-31s, .col-32s, .col-41s : かなり小さくなってもかまわない場合に使用
.col-41s : 連続した .row .row_NS で囲むこと => 途中で 33.33% になる 
-------------------------- */
.col-11, .col-43s,
.col-21, .col-31, .col-32, .col-41, .col-42, .col-43,
.col-21s, .col-31s, .col-32s, .col-41s, .col-51 {
	float: left;
	position: relative;
	min-height: 1px;
	padding-left: 25px;
	padding-right: 25px;
}
.row_NS .col-11, .row_NS .col-43s,
.row_NS .col-21, .row_NS .col-31, .row_NS .col-32, .row_NS .col-41, .row_NS .col-42, .row_NS .col-43,
.row_NS .col-21s, .row_NS .col-31s, .row_NS .col-32s, .row_NS .col-41s, .col-51 {
	padding-left: 0;
	padding-right: 0;
}
.row_MN .col-11, .row_MN .col-43s,
.row_MN .col-21, .row_MN .col-31, .row_MN .col-32, .row_MN .col-41, .row_MN .col-42, .row_MN .col-43,
.row_MN .col-21s, .row_MN .col-31s, .row_MN .col-32s, .row_MN .col-41s, .col-51 {
	padding-left: 10px;
	padding-right: 10px;
}

.col-11 { width: 100%;}
.col-43, .col-43s { width: 75%;}
.col-21, .col-21s, .col-42 { width: 50%;}
.col-31, .col-31s { width: 33.33333%;}
.col-32, .col-32s { width: 66.66666%;}
.col-41, .col-41s { width: 25%;}
.col-51 { width: 20%;}

@media screen and (max-width:1200px) {
	.col-51 { width: 25%;}
}
@media screen and (max-width:900px) {
	.col-31, .col-32, .col-42 { width: 100%;}
	.col-41 { width: 50%;}
	.col-43 { width: 100%;}
	.col-43s { width: 66.66%;}
	.col-41s { width: 33.33%;}
	.col-51 { width: 33.33%;}
}
@media screen and (max-width:600px) {
	.col-21 { width: 100%;}
	.col-41 { width: 100%;}
	.col-43s { width: 100%;}
	.col-41s { width: 50%;}
	.col-51 { width: 50%;}
}
@media screen and (max-width:360px) {	/* ←本来、この定義は不要だが、table 崩壊の回避目的 */
	.col-21s, .col-31s, .col-32s, .col-51 { width: 100%;}
}

.PosLeftSP {
	float: left;
	margin-right: 10px;
	margin-bottom: 6px;
}
.PosRightSP {
	float: right;
	margin-left: 10px;
	margin-bottom: 6px;
}
@media screen and (max-width:600px) {
	.PosLeftSP, .PosRightSP {
		float: none;
		text-align: center; 
		margin-left: 0;
		margin-right: 0;
	}
}

/* ----------------------

---------------------- */
html {
	font-size: 12px;
	font-size: 100%;
}
body {
	background-color: white;
	line-height: 1.75;
	font-size: 12px;
	font-size: 1.0rem;
}
h1, h2, h3 {
	line-height: 1.2;
}
h1 {
	font-size: 24px; font-size: 2.0rem; font-weight: normal;
}
h2 {
	font-size: 19px; font-size: 1.6rem; font-weight: normal;
}
h3 {
	font-size: 15px; font-size: 1.2rem; font-weight: normal;
}
@media screen and (max-width:600px) {
	html { font-size: 90%;}
	body { line-height: 1.4;}
}
@media screen and (max-width:360px) {	/* ←本来、この定義は不要だが、table 崩壊の回避目的 */
	html { font-size: 80%;}
}
@media screen and (max-width:600px) {
	li { margin-left: 1em; }
}

#GoTop {
	display: none;
	position: fixed;
	right: 20px;
	bottom: 10px;
	width: 60px;
	height: 60px;
	line-height: 60px;
	font-size: 200%;
	font-weight: bold;
	text-align: center;
	color: #ffffff;
	background-color: #999;
	background-color: rgba(0,0,0,0.5);
	border-radius: 4px;
	transition: .3s;
	}
#GoTop:hover {
	color: #ff6633;
	background-color: #fff;
	}

@font-face {
    font-family: 'myicon';
    src:    url('fonts/myicon.eot?qc07xb');
    src:    url('fonts/myicon.eot?qc07xb#iefix') format('embedded-opentype'),
        url('fonts/myicon.ttf?qc07xb') format('truetype'),
        url('fonts/myicon.woff?qc07xb') format('woff'),
        url('fonts/myicon.svg?qc07xb#myicon') format('svg');
    font-weight: normal;
    font-style: normal;
}

[class^="myicon-"], [class*=" myicon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'myicon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;

    /* Better Font Rendering =========== */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
.myicon-pott:before, .myicon-c01:before {content: "\e900";}
.myicon-food:before, .myicon-c02:before {content: "\e901";}
.myicon-toku:before, .myicon-c03:before {content: "\e902";}
.myicon-play:before, .myicon-c04:before {content: "\e903";}
.myicon-stay:before, .myicon-c05:before {content: "\e904";}
.myicon-shop:before, .myicon-c06:before {content: "\e905";}
.myicon-evnt:before, .myicon-c07:before {content: "\e906";}

