@charset "UTF-8";

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	}

/* 大枠 */
html,
body {
	height: 100%;
	-webkit-font-smoothing: antialiased;
	-webkit-text-size-adjust: none;
	}
body {
	font-size: 24px;
	line-height: 1.6;
	font-family:"游ゴシック", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	}
#wrapper {
	width: 100%;
	margin: 0 auto;
	position: relative;
	}
body > #wrapper {
	height: auto;
	}
.clearfix:after {
		visibility: hidden;
		display: block;
		content: " ";
		clear: both;
		height: 0;
		}

@media print {
	html,
	html body{overflow: visible !important;}
	}

/* アクセシビリティ */
.guidance {
	left:-999px;
	position:absolute;
	width:990px;
	}
img {max-width: 100%;height: auto;vertical-align: bottom;} /* レスポンシブ対応 */
img {
	vertical-align: bottom;
	box-shadow: #000 0 0 0; /* ロールオーバー対応 */
	}
img, x:-moz-any-link, x:default {
		box-shadow: #000 0 0 0; /* IE7対応 */
	}

/* リンク */
a:link		{color:#0066FF; text-decoration: none;}
a:visited {color:#0066FF; text-decoration: none;}
a:hover	 {color:#0066FF; text-decoration: underline;}
a:active	{color:#0066FF; text-decoration: underline;}

.mincho{
	/* font-family: "FOT-筑紫明朝 Pr6 L","TsukuMinPr6-L","ヒラギノ明朝 Pro W3","Hiragino Mincho Pro","TakaoEx明朝",TakaoExMincho,"MotoyaLCedar","Droid Sans Japanese","HGS明朝E","ipamin","ＭＳ Ｐ明朝",serif; */
	font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	position: relative;
	font-weight: normal;
	}
a[href^="tel:"] { cursor: default; }
/* CLEARFIX */
.container:after,
.row:after,
.col:after {content: "";display: table;clear: both;}

.container {width: 100%;max-width: 1000px;margin: 0 auto;position: relative;}

/* ▼▼▼ ヘッダー
=====================================*/
header{
	margin: 5px auto 0 auto;
	border-bottom: 5px solid #59B428;
	}
header p{text-align: center;}
/* ▼▼▼ メイン 「コンテンツとサイドを囲む要素」
=====================================*/
.container{
	max-width: 750px;
	width: 100%;
	margin: 20px auto 60px;
	}
.container a{
	color: #0066FF;
	text-decoration: underline;
	}
section,.contents{margin: 0 0 50px;}
section p,.contents p{margin: 0 0 25px;}
h1{margin: 0 0 50px;}
h1 .main_caption{
	display: block;
	margin-top: 10px;
	font-size: 14px;
}
h2{
	font-size: 28px;
	margin: 0 0 25px;
	}


/* 各ページタイトルカラー */
h2 span{
	border-left: 5px solid #bfbfbf;
	margin-right: 10px;
	}
	#country h2{color: #8957a1;}
	#kinsho h2{color: #e0230e;}
	#bunkasalon h2{color: #6a8530;}
	#pointup h2{color: #dd0d63;}
	#real_estate h2{color: #8957a1;}
	#narakotsu h2{color: #e0230e;}
	#hoken h2{color: #21b100;}
	#hoken h2.no2{color: #df0059;}
	#aporo h2{color: #dd0d63;}
	#the0123 h2{color: #009944;}
	#hudosan h2{color: #e0230e;}
	.contents ul.kome li.color {
		font-weight: bold;
		color: #e0230e;
	}
.br {
	display: none;
}

br.sp {
	display: block;
}
p{
	word-wrap: break-word;
	word-break: break-all;
}
.txt_blue{
	color: #00F;
}
span.txt_red,.txt_red{
	color: #F00!important;
}
span.txt_kome,.txt_kome{
	font-size: 80%!important;
}
.txt_bold{font-weight: bold;}
.txt_bold span.txt_kome{
	color: #000;
}
.txt_bold span.black{
	color: #000;
}
.txt_bold span.font_green{
	color: #018471;
}
.txt_bold span.font_pink{
	color: #c50081;
}

.kome li{
	text-indent: -1em;
	padding-left: 1em;
	}

.size{font-size: 28px;}
#day p{
	font-size: 28px;
	font-weight: bold;
	}
small{
	font-size: 20px;
	font-weight: normal;
	}
#shop h2 + p{
	padding: 0 0 25px;
	border-bottom: 1px solid #a0a0a0;
	font-weight: bold;
	font-size: 28px;
	}
	#shop > p.last{border-bottom: 0px none;}
.btn{overflow: hidden;}
.btn p{
width: 48%;
float: left;
}
.btn.btn_01 p{
	width: 48%;
	float: none;
	margin: 0 auto;
	}
	.btn p:not(:last-child) {
		margin-right: 2%;
		}
	.btn p:hover{opacity: 0.6;}
.btn_hotel{
	display: flex;
	align-items: center;
	align-content: center;
	justify-content: center;
	height: 60px;
	width: 360px;
	max-width: 100%;
	background: #003a56;
	margin: 10px 0;
	color: #fff!important;
	font-size: 16px;
	font-weight: 400;
	text-decoration: none!important;
}
.txt_bold span {
	color: #f00;
}
.txt_bold span.txt_black {
	color: #000;
}
.txt_bold span.txt_normal {
	font-weight: normal;
}
.contents ul.kome {
	margin-bottom:50px;
	word-break: break-all;
}
.contents ul.maru li{
	margin-bottom:35px;
	text-indent: -1em;
	padding-left: 1em;
	word-break: break-all;
	font-feature-settings: 'palt';
}
.contents ul.wb_list{
	word-break: break-all;
}

/* ポイントアップ */
#pointup p.kome{
	text-indent: -1em;
	padding-left: 1em;
	}
#pointup .contents .mb0{
	margin-bottom: 0px;
	}
	#store table th {
		font-weight: bold;
	}
	#store table, #store th, #store td {
		border-collapse: collapse;
		border: 1px solid #ccc;
		line-height: 1.5;
		text-align: center;
		font-size: 18px;
		vertical-align: middle;
	}

	#store table th {
		width: 350px;
		padding: 10px;
	}
	#store table td {
		padding: 10px;
		color: #000;
	 }
	 #store table td:nth-child(2)::after {
		 content: inherit;
		 content: inherit;
		 background: none;
		 border: none;
		 margin: 0;
	 }
	#store table td:last-child {
		text-align: center;
	}
	#store table th:last-child {
		color: #000;
	}
	#store table th.color_cell,
	#store table td.color_cell{
		background: #FFEEEE;
	}
/* 中止時の注意書き */
.attention{
	color: #FF0000;
	font-weight: bold;
}

/* 保険サービス */
div.bnr{
	margin: 0 0 20px;
	overflow: hidden;
	}
figure{
	float: left;
	text-align: center;
	margin-bottom: 20px;
	}
	figure a:hover{opacity: 0.6;}
	figure img{
		max-width: 178px;
		margin-right: 2px;
		}
figcaption{font-size: 13px;}
.lecturer_wrap{
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
}


/* アポロシネマ */
table {
	width: 100%;
	margin-bottom: 1em;
}
table th {
	font-size: 120%;
	font-weight: normal;
}
table td {
	border-bottom: 2px solid #000;
	line-height: 1.8;
}
table th:first-child,table td:first-child {
	width: 45%;
}
table th:last-child {
	color: #fe4040;
	font-weight: bold;
}
table td:last-child{
	color: #fe4040;
	font-size: 130%;
	text-align: right;
	padding-right: 10px;
}
table td:nth-child(2)::after {
	content: "";
	display: inline-block;
	width: 0;
	height: 0;
	border: .6em solid transparent;
	border-left: 1.2em solid #fe4040;
	margin-left: 2em;
}
table.txt_bold.first_table{
	margin-bottom: 3em
}
table.txt_bold td span {
	color: #000;
	font-size: 80%;
}
section table + p {
	text-align: left;
	margin-bottom: 2.5em;
}
figure .clear {
	clear: both;
}
/* ウェスティンホテル */
#hotel .contents{
	margin-bottom: 70px;
}
#hotel .flex_b{
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-flow: row;
	margin-bottom: 15px;
}
#hotel .flex_txt{
	flex: 0 0 67%;
}
#hotel .flex_txt h2{
	border-left: 5px solid #bfbfbf;
	padding-left: 5px;
}
#hotel .flex_txt p{
	margin-bottom: 0;
}
#hotel .flex_img{
	flex: 0 0 30%;
}
#hotel .flex_img img{
	width: 100%;
}
/* キャッシュレス応援キャンペーン */
#campaign table td {
	border-bottom: 0;
}
#campaign table th:first-child,#campaign table td:first-child{
	width: 7%;
	text-align: center;
}
#campaign table th,
#campaign table td:nth-child(2),#campaign table td:nth-child(3){
	text-align: center;
}
#campaign table th:last-child {
	color: #000;
	font-weight: normal;
}
#campaign table td:last-child{
	color: #000;
	text-align: right;
}
#campaign table td:nth-child(2)::after {display: none;}
/* ▼▼▼ フッター
=====================================*/
footer {
	font-size: 14px;
	}
footer .footer_inner{
	border-top: 5px solid #59B428;
	}
footer .footer_inner p{text-align: center;}
footer .footer_inner p:first-child{margin: 10px auto 2px auto;}
.copyright{font-size: 12px;}

/* ▼▼▼ 480px〜768px
=====================================*/
@media screen and (max-width: 768px) {
body {
	font-size: 14px;
	}
	br.sp {
		display: none;
	}
/* ▼▼▼ ヘッダー
=====================================*/
/* ▼▼▼ メイン 「コンテンツとサイドを囲む要素」
=====================================*/
#header_inner,
#main,#contents,#side,
footer,#footer_inner {
	float: none;
	width: 100%;
	}
.container{
	padding: 0 20px;
	margin: 10px auto 30px;
	}
section,.contents{margin: 0 0 30px;}
section p,.contents p{margin: 0 0 15px;}
h1{margin: 0 0 30px;}
h2{
	font-size: 22px;
	margin: 0 0 15px;
	}
	h2 span{
		border-left: 5px solid #bfbfbf;
		margin-right: 5px;
		}
		#country h2{color: #8957a1;}
		#kinsho h2{color: #e0230e;}
		#bunkasalon h2{color: #6a8530;}
		#pointup h2{color: #dd0d63;}

.br {
	display: block;
}
.txt_bold{font-weight: bold;}
.txt_bold span.txt_kome{
	color: #000;
}
.kome li{
	text-indent: -1em;
	padding-left: 1em;
	}
.size{font-size: 16px;}
#day p{
	font-size: 16px;
	font-weight: bold;
	}
small{
	font-size: 12px;
	}
#shop h2 + p{
	padding: 0 0 15px;
	font-size: 14px;
	}
.btn{overflow: hidden;}

#store table, #store th, #store td {
	font-size: 14px;
}
#store table th {
	width: auto;
}
.contents ul.kome,
.contents ul.maru li {
	margin-bottom:20px;
}
/* 保険サービス */
div.bnr{
	margin: 0 0 20px;
	overflow: hidden;
	}
figure{
	float: none;
	overflow: hidden;
	margin: 0 0 10px;
	}
	figure img{
		float: left;
		margin-bottom: 3px;
		width: 48%;
		}
		figure.clear img {
			width: auto;
		}


	/* ウェスティンホテル */
	#hotel .flex_b{
		display: -webkit-flex;
		display: -ms-flex;
		display: flex;
		justify-content: center;
		flex-flow: wrap-reverse;
		margin-bottom: 0;
	}
	#hotel .flex_txt{
		flex: 0 0 100%;
	}
	#hotel .flex_img{
		flex: 0 0 100%;
		margin-bottom: 10px;
	}

/* ▼▼▼ フッター
=====================================*/
footer .footer_inner{padding: 5px 20px 10px;}

}

@media screen and (max-width: 400px) {
	/* アポロシネマ */
	table td:nth-child(2)::after {
	border: .4em solid transparent;
	border-left: .8em solid #fe4040;
	margin-left: .8em;
	}

}
