@charset "utf-8";
@import url("reset.css");

/********************************************************************************
	テンプレートモジュール
********************************************************************************/
/* //////////////////////////////
	ナビゲーションブロック
////////////////////////////// */
/* 共通
--------------------------- */
.nav {
}
.nav a {
	display: block;
	color: #000;
	text-decoration: none;
}

/* nav-1：縦並びボタン格納ブロック要素
--------------------------- */
.nav-1 {
	width: 100%;
	padding: 5px;
	background: #ddd;
	box-sizing: border-box;
}
.nav-1 p {
	width: 100%;
	box-sizing: border-box;
	text-align: left;
}

/* nav-2：横並びボタン格納ブロック要素
--------------------------- */
.nav-2 {
	display: table;
	width: 100%;
	padding: 5px;
	background: #ddd;
	box-sizing: border-box;
}

/* 下層用フッターナビ
--------------------------- */
#content-body #lower-contents-foot-nav ul {
	display: table;
	width: 100%;
	box-sizing: border-box;
	background: #fff;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	font-size: 12px;
	line-height: 1.0;
}
#content-body #lower-contents-foot-nav li {
	display: table-cell;
	vertical-align: middle;
	width: 50%;
	box-sizing: border-box;
}
#content-body #lower-contents-foot-nav li:nth-child(1) {
	text-align: left;
	border-right: solid 1px #ccc;
}
#content-body #lower-contents-foot-nav li:nth-child(2) {
	text-align: right;
}
#content-body #lower-contents-foot-nav li a {
	display: block;
	padding: 10px;
	text-decoration: none;
	background: #eee;
}
#content-body #lower-contents-foot-nav li:nth-child(1) a {
	padding-left: 15px;
	background: url(../img/icon_link_l_red_mini.png) no-repeat center left;
}
#content-body #lower-contents-foot-nav li:nth-child(2) a {
	padding-right: 15px;
	background: url(../img/icon_link_r_red_mini.png) no-repeat center right;
}

/* //////////////////////////////
	ボタン要素
////////////////////////////// */
/* btn-1：通常のボタン要素
--------------------------- */
.btn-1 {
	margin-bottom: 5px;
	box-sizing: border-box;
	background: -webkit-linear-gradient(top, #fff 0%, #ddd 88%);
	border: solid 1px #bbb;
	color: #333;
	font-size: 14px;
	line-height: 1.0;
}
.btn-1:last-child {
	margin-bottom: 0;
}
.btn-1 a {
	display: block;
	padding: 15px 10px;
	background: url(../img/icon_link_r_red.png) center right no-repeat;
	background-size: auto 40%;
}

/* btn-2：上向きのボタン要素
--------------------------- */
.btn-2 {
	width: 40%;
	margin: 0 auto 5px auto;
	box-sizing: border-box;
	background: -webkit-linear-gradient(top, #fff 0%, #ddd 88%);
	border: solid 1px #bbb;
	color: #333;
	font-size: 14px;
	line-height: 1.0;
}
.btn-2 a {
	display: block;
	padding: 15px 10px;
	background: url(../img/icon_link_t_red.png) center right no-repeat;
	background-size: auto 40%;
}

/* btn-cur：現在位置
--------------------------- */
.btn-cur {
	border: solid 1px #B30904;
}


/* //////////////////////////////
	general
////////////////////////////// */
html, body {
	width: 100%;
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, "メイリオ", sans-serif;
	font-size: 12px;
}
body{
	background-color: #fff;
	color: #000;
	line-height: 1.4;
	-webkit-touch-callout: none;
}
img {
	vertical-align: top;
	-ms-interpolation-mode: bicubic;
}
img.img-l {
	margin-right: 10px;
}
img.img-r {
	margin-left: 10px;
}
h1,h2,h3,h4,h5,h6 {
	clear: both;
	box-sizing: border-box;
	line-height: 1.0;
}
h1 {
	font-size: 116%;
}
h2 {
	font-size: 108%;
}
h3 {
	font-size: 100%;
}
h4 {
	font-size: 100%;
}
h5 {
	font-size: 100%;
}
h6 {
	font-size: 94%;
}
table {
	border-collapse: collapse;
	font-size: 70%;
	box-sizing: border-box;
}
tr:nth-child(odd){
	background: #fff;
}
tr:nth-child(even){
	background: #f8f8f8;
}
th,td {
	border: solid 1px #b6b6b6;
	box-sizing: border-box;
}
a {
	color: #333;
	text-decoration: underline;
}
hr {
	clear: both;
	border: solid 1px #ffffff;
	border-top-color: #ccc;
	color: #ffffff;
}
hr.dotted {
	clear: both;
	border: dotted 1px #ffffff;
	border-top-color: #ccc;
	color: #ffffff;
}
strong {
	font-weight: bold;
}
article {
	position: relative;
	margin: 0 auto;
	box-sizing: border-box;
}
section {
	margin-bottom: 20px;
	box-sizing: border-box;
}
section:last-child {
	margin-bottom: 0;
}
header {
	margin: 0 auto;
	box-sizing: border-box;
}
footer {
	margin: 0 auto;
	box-sizing: border-box;
}

/* page header
--------------------------- */
#page-header {

}

#page-header .inner {
	border-bottom: solid 2px #b40814;
}

#page-header .inner h1 {
	float: left;
	margin: 0 0 0 10px;
}

#page-header .inner h1 a {
	display: block;
}

/* ----- グローバルメニューを開閉するボタン ----- */
#page-header .inner #gmenu-btn {
	float: right;
	margin: 0 10px 0 0;
}

/* global menu
--------------------------- */
#gmenu {
	display: none;
	font-size: 1.08em; /* 13px */
}

#gmenu a,
#gmenu p {
	display: block;
	height: 44px;
	line-height: 44px;
	text-decoration: none;
}

/* 階層1 */
#gmenu .gmenu-level1 > li {
	background-color: #eeeeee;
	border-bottom: solid 1px #dbdbdb;
}

#gmenu .gmenu-level1 > li > a,
#gmenu .gmenu-level1 > li > p {
	background: transparent no-repeat center right;
	color: #b30914;
	font-weight: bold;
	text-indent: 20px;
}

#gmenu .gmenu-level1 > li > a {
	background-image: url(../img/icon_link_r_red.png);
	background-size: 22px;
}

#gmenu .gmenu-level1 > li > p {
	background-image: url(../img/icon_link_b_red.png);
	background-size: 30px;
}

#gmenu .gmenu-level1 > li > p.open {
	background-image: url(../img/icon_link_t_red.png);
}

#gmenu .gmenu-level1 > .current > a {
	background-image: none;
}

#gmenu .current {
	background: transparent url(../img/gmenu_current.png) no-repeat;
	background-position: 7px 18px;
	background-size: 8px 8px;
}

/* ----- PC表示 ----- */
#gmenu-company a:after {
	content: "";
	display: inline-block;
	width: 22px;
	height: 44px;
	margin: 0 0 0 10px;
	background: url(../img/footer_icon_pc.png) no-repeat left center;
	background-size: 22px 16px;
	vertical-align: bottom;
}


/* content
--------------------------- */
#content-body {
	padding-bottom:20px;
}
#content-body img {
	width: 100%;
}
#content-header {
	margin-bottom: 20px;
}
#content-header h1 {
	margin-bottom: 0;
}
#content-header #content-outline {
}

/* breadcrumb
--------------------------- */
#breadcrumb {
	padding: 10px;
	font-size: 10px;
}


/* section
--------------------------- */
#content-main {
	padding: 0 10px;
}

.section-body {
}
.section-body .section-header {
	margin-bottom: 20px;
}
/* パターン1
.section-body .section-header h2 {
	margin-bottom: 10px;
	padding: 10px;
	background: #b30914;
	font-size: 108%;
	font-weight: normal;
	color: #fff;
}
*/
/* パターン2 */
.section-body .section-header h2 {
	margin-bottom: 10px;
	padding: 10px;
	background: #fff;
	border-left: solid 5px #666;
	border-bottom: solid 1px #666;
	font-size: 108%;
	font-weight: bold;
	font-family: ".HiraKakuInterface-W6";
	color: #333;
}

.section-body .section-header .section-outline {
}
.section-body p,
.section-body li {
	margin-bottom: 10px;
}
.section-body p:last-child,
.section-body li:last-child {
	margin-bottom: 0;
}
.section-body ul li {
	list-style-type: disc;
	margin-left: 30px;
}
.section-body ol li {
	list-style-type: decimal;
	margin-left: 30px;
}
.menu-img {
	background: #ddd;
}
.section-body ul.menu-img li {
	float: left;
	list-style: none;
	width: 50%;
	margin-left: 0;
	padding: 5px;
	box-sizing: border-box;
}
.section-body .section-detail {
}
.section-body .section-detail h2 {
	line-height: 1.2;
}
.section-body .section-detail h3,
.section-body .section-detail h4 {
	margin-bottom: 10px;
	line-height: 1.2;
}
/* パターン1
.section-body .section-detail h3 {
	padding: 10px;
	background-color: #ffd900;
	color: #333;
}
*/
/* パターン2 */
.section-body .section-detail h3 {
	padding: 10px;
	background-color: #ccc;
	border-left: solid 3px #999;
	color: #333;
}
/* 画像の場合 */
.section-body .section-detail h3.hx-img {
	padding: 0;
	background-color: none;
	border-left: none;
}

/* subsection
--------------------------- */
.subsection-body {
	margin-bottom: 20px;
}
.subsection-body:last-child {
	margin-bottom: 0;
}

/* カテゴリーインデックスのリンクブロック
--------------------------- */
/* 各カテゴリーインデックスのリンクボタンブロック：画像サイズは横並びの数によるため角index用のcssに記載 */
.section-body ul.lower-contents-nav {
	padding: 5px;
	box-sizing: border-box;
	background: #ccc;
}
.section-body ul.lower-contents-nav li {
	float: left;
	list-style: none;
	margin: 0;
	padding: 5px;
	box-sizing: border-box;
}


/* 第1・第2階層で使用するスタイル
--------------------------- */
.layer-2 #content-body {
	padding: 0;
	margin: 20px 0 0;
}

.layer-2 #content-header {
	margin: 0 10px 10px;
}

.layer-2 #content-header h1 {
	margin: 0;
	font-size: 1.08em; /* 13px */
}

.layer-2 section:last-child {
	margin: 0 0 20px;
}

/* ----- バナー配置領域 ----- */
.layer-2 #content-body .banner {
	margin: 0 10px 20px;
}

.layer-1 .bnr-container,
.layer-2 .bnr-container,
.layer-3 .bnr-container {
	margin: -5px;
}

.layer-1 .bnr-container li,
.layer-2 .bnr-container li,
.layer-3 .bnr-container li {
	float: left;
	margin: 0;
	padding: 5px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	list-style: none;
}

.layer-1 .bnr-container li a,
.layer-2 .bnr-container li a,
.layer-3 .bnr-container li a {
	display: block;
	border: solid 1px #d3d3d3;
}

/* ----- バナー 大 ----- */
.layer-1 .bnr-container .bnr-l,
.layer-2 .bnr-container .bnr-l,
.layer-3 .bnr-container .bnr-l {
	width: 100%;
}

/* ----- バナー 小 ----- */
.layer-1 .bnr-container .bnr-s,
.layer-2 .bnr-container .bnr-s,
.layer-3 .bnr-container .bnr-s {
	width: 50%;
}

/* page footer
--------------------------- */
#page-footer {}

/* ----- menu 大 ----- */
#page-footer #footer-menu-l {
	margin: 0 0 15px;
	font-size: 1.08em; /* 13px */
}

#page-footer #footer-menu-l li {
	height: 44px;
	background: #eeeeee url(../img/icon_link_r_red.png) no-repeat;
	background-position: right center;
	background-size: 22px;
	border-bottom: 1px solid #d9d9d9;
	font-weight: bold;
	line-height: 44px;
}

#page-footer #footer-menu-l li:first-child {
	border-top: 1px solid #d9d9d9;
}

#page-footer .contact-btn {
	margin: 0 10px 10px;
}

#page-footer #footer-menu-l li a {
	display: block;
	color: #b30914;
	text-decoration: none;
	text-indent: 10px;
}

/* ----- PC表示 ----- */
#page-footer #footer-menu-l li .footer-menu-pc {
	display: inline-block;
	width: 22px;
	height: 44px;
	margin: 0 0 0 10px;
	background: url(../img/footer_icon_pc.png) no-repeat left center;
	background-size: 22px 16px;
	vertical-align: bottom;
}

/* ----- sns ----- */
#page-footer #footer-sns-btns {
	margin: 0 0 10px;
	text-align: center;
}

#page-footer #footer-sns-btns li {
	display: inline-block;
	height: 20px;
	margin: 5px;
	overflow: hidden;
	vertical-align: top;
}

#page-footer #footer-sns-btns .twitter,
#page-footer #footer-sns-btns .facebook {
	width: 105px
}

#page-footer #footer-sns-btns .gplus {
	width: 32px
}

/* ----- menu 小 ----- */
#page-footer #footer-menu-s {
	margin: 0 10px 20px;
}

#page-footer #footer-menu-s li {
	font-size: .75em;    /* 9px */
}

#page-footer #footer-menu-s li + li {
	margin: 15px 0 0;
}

#page-footer #footer-menu-s li a {
	display: inline-block;
	min-height: 13px;
	background: url(../img/icon_link_r_gray.png) no-repeat;
	background-position: left center;
	background-size: 16px 13px;
	color: #808080;
	text-decoration: none;
	text-indent: 20px;
}

/* ----- iOS safariでの表示崩れ対策 ----- */
#page-footer #footer-menu-s li a:after {
	content: '';
	margin-right: 1px;
	float: right;
}

/* ----- お酒は20歳から ----- */
#footer-notice {
	margin: 0 10px 15px;
	font-size: .92em;    /* 11px */
	line-height: 1.3;
	text-align: center;
}

/* ----- コピーライト ----- */
#copyright {
	margin: 0 0 15px;
	padding: 7px 0;
	border-top: 1px solid #d9d9d9;
	border-bottom: 1px solid #d9d9d9;
	text-align: center;
}

/* ----- 製品・サービスのお問い合わせ ----- */
.contact-btn {
 padding: 1px;
 border: 2px solid #FFCC99;
 border-radius: 2px;
 }

.contact-btn a {
 display: block;
 text-indent: -9999px;
 background: #F5D4AE;
 border-radius: 2px;
 position: relative;
 height: 100%;
 }

.contact-btn a > div{
 height:57px;
 background:url(/sp/inquiry/img/common/txt_contact_btn.png) no-repeat center center, url(/sp/inquiry/img/common/bg_contact_btn_01.png) no-repeat left top, url(/sp/inquiry/img/common/bg_contact_btn_02.png) no-repeat right top;
 background-size: 169px 28px, 54px 57px, 73px 57px;}

.contact-btn .contact-btn-inner {
	display: table;
	width: 100%;
	height: 55px;
}

.contact-btn .contact-btn-inner div {
	display: table-cell;
	text-decoration: none;
	vertical-align: middle;
}

.contact-btn p {
	display: inline-block;
	margin: 0;
	background: url(../img/contact_btn_icon.png) no-repeat left center;
	background-size: 47px 20px;
	text-align: left;
	text-indent: 52px;
}

/* utility
--------------------------- */
.clearall { clear: both; }
.clearfix:after {
	content: url(../img/pixel.gif);
	display: block;
	clear: both;
	height: 0;
}
.no-disp { display: none; }
.sub { vertical-align: super; }
.wrapper {
	display: table;
	width: 100%;
	box-sizing: border-box;
}
.link-txt {
	text-align: right;
}
.link-txt a {
	padding: 10px 0 10px 34px;
	background: url(../img/icon_link_r_sq_red.png) no-repeat 10px 10px;
	background-size: 17px 14px;
	text-decoration: none;
}

/* 赤の■ */
.ico-sq-red {
	color: #ce362e;
}
/* 緑の■ */
.ico-sq-green {
	color: #006934;
}

/* PR */
#pr {
	position: relative;
}
#pr .ico-pr {
	position: absolute;
	top: 10px;
	left: 20px;
	padding: 0 5px;
	border: solid 1px #000;


