@charset "UTF-8";

@import url('https://fonts.googleapis.com/css?family=Montserrat:400,700');

body {
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", Arial, Helvetica, Verdana, sans-serif;
	font-size: 14px;
	-webkit-text-size-adjust: none;
	line-height: 1.5;
	color: #000;
	background: #FFF;
}
.montserrat01{ font-family:'Montserrat', sans-serif; font-weight: 400;}
.montserrat02{ font-family:'Montserrat', sans-serif; font-weight: 700;	}
* focus{
outline: none;
border-style: none;
}
a:focus{
outline: none;
border-style: none;
}
a{
-moz-outline-style: none;
border-style: none;
}
a { color: #000; text-decoration: none; outline:none;}
a:hover { text-decoration: none; opacity: 0.5;}

select::-ms-expand {
	display: none;
}
select:-moz-focusring {
  color:transparent;
  text-shadow:0 0 0 #444444;
}
select:-moz-focusring * {
  color:#444444;
  text-shadow:none;
}

input[type="submit"]::-moz-focus-inner,
input[type="reset"]::-moz-focus-inner,
input[type="button"]::-moz-focus-inner {
  border:0px;
}
input, button ,select{ outline: none; border: 0px; }
input::-moz-focus-inner, button::-moz-focus-inner, select::-moz-focus-inner { outline: none; border: 0px;}

.item .img{ width: 220px; height: 165px; }
.item .img img{ max-width: 220px; max-height: 165px;}
img{ vertical-align: top; border:0;}
.img{background:#eeeeee; display: flex; display: -webkit-flex; justify-content: center; align-items: center;}

.pc{ display: block !important; }
.sp{ display: none !important; }
.flexContainer{ display: flex; display: -webkit-flex; justify-content: space-between; flex-wrap:wrap; }

input[type="text"],
input[type="password"] {
	padding-left: 10px;
	border-radius: 4px;
    -webkit-border-radius: 4px; 
    -moz-border-radius: 4px; 
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
input[type="text"]:focus { outline: 0; border-color: #c22121;}

.logo{
	font-size: 26px;
	font-family:'Montserrat', sans-serif;
	font-weight: 700;
	line-height: 1;	
	letter-spacing: 5.4px;
}
.logo span{ color: #e43324;}
.btn a{
	display: block;
	color: #FFF;
	letter-spacing: 1.6px;
	border-radius: 4px;
    -webkit-border-radius: 4px; 
    -moz-border-radius: 4px; 
}
.btn a:hover{ text-decoration: none;}
.login a{ background: #0eb1df;}


/* loading
---------------------------------------------------------- */
#loading_wrap { 
	display: none;
	position: fixed;
	width: 100vw;
	height: 100vh;
	background: rgba(255,255,255,0.5);
	top: 0;
	left: 0;
	z-index: 9999;
}

#loading_wrap .spinner {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: 75px;
	text-align: center;
}

#loading_wrap .spinner > div {
	width: 18px;
	height: 18px;
	background-color: #222222;
	border-radius: 100%;
	display: inline-block;
	-webkit-animation: sk-bouncedelay 1.4s infinite ease-in-out both;
	animation: sk-bouncedelay 1.4s infinite ease-in-out both;
}

#loading_wrap .spinner .bounce1 {
	-webkit-animation-delay: -0.32s;
	animation-delay: -0.32s;
	margin-right: 10px;
}

#loading_wrap .spinner .bounce2 {
	-webkit-animation-delay: -0.16s;
	animation-delay: -0.16s;
	margin-right: 10px;
}

@-webkit-keyframes sk-bouncedelay {
	0%, 80%, 100% { -webkit-transform: scale(0) }
	40% { -webkit-transform: scale(1.0) }
}

@keyframes sk-bouncedelay {
	0%, 80%, 100% { 
		-webkit-transform: scale(0);
		transform: scale(0);
	} 40% { 
		-webkit-transform: scale(1.0);
		transform: scale(1.0);
	}
}

/* slick slider
---------------------------------------------------------- */
.slider {
  opacity: 0;
  transition: opacity .25s ease;
}
.slider.slick-initialized {
  opacity: 1;
}


/* button
---------------------------------------------------------- */
.common_btn {
	text-align: center;
}
.common_btn a,
.common_btn input {
	padding: 7px 40px;
	font-weight: bold;
    letter-spacing: 1.5px;
    color: #ffffff !important;
    background-color: #c22121;
    text-align: center;
    text-decoration: none !important;
    font-size: 14px;
    line-height: 40px;
    border-style: none;
    box-sizing: border-box;
    border-radius: 4px;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    box-shadow: 0 3px 0 #b40b0b;
}
.common_btn a:hover:hover,
.common_btn input:hover {
	opacity: 1; position: relative; box-shadow:none; top:4px;
}

/* !cashlessBnr
---------------------------------------------------------- */
#cashlessBnr { width: 100%; max-height: 50px; padding: 3px 0; background: #e61212; }
#cashlessBnr a{ display: block; text-align: center; }
#cashlessBnr a img { max-height: 50px; max-width: 100%; }


/* !saleBnr
---------------------------------------------------------- */
#saleBnr { width: 100%; min-width: 1280px; background: #c22121;}
#saleBnr a{ color: #FFF; display: block;}
#saleBnr a:hover{ text-decoration: none; }
#saleBnrIn{
	width: 590px;
	height: 50px;
	margin: 0 auto;
	align-items: center;
	letter-spacing: 1.3px;
}
#saleBnrIn .txtSale{
	font-size: 26px;
	height: 27px;
	line-height: 1;
	letter-spacing: 4.0px;
	color:#fff000;
	padding-right: 16px;
	border-right: 1px dotted #FFF; 
}

#saleBnrIn .txtWrap{ display: flex; display: -webkit-flex; justify-content: space-between;flex-wrap:wrap; }
#saleBnrIn .txtDate{ font-size: 12px; font-weight: bold; line-height: 16px; padding-left: 10px; padding-right: 20px; }
#saleBnrIn .txtDate span{ color: #fff000; }
#saleBnrIn .txtMain{ font-size: 20px; font-weight: bold; }	
#saleBnrIn .btn{
	display: block;
	font-size: 12px;
	width: 64px;
	height: 28px;
	line-height: 26px;
	background: url(/images/common_2/icon_link_sale.png) right center / 14px 10px no-repeat;	
	padding-left: 13px;
	border: 1px solid #FFF;
	border-radius: 4px;
    -webkit-border-radius: 4px; 
    -moz-border-radius: 4px; 
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}





/* !adminBnr
---------------------------------------------------------- */
#adminBnr { width: 100%; min-width: 1280px; background: #f0f0f0; border-bottom: 1px solid #d97c7f; }
#adminBnr a { display: block; text-decoration: none; color: #333333; }
#adminBnr a:hover{ text-decoration: none; color: #333333; }
#adminBnrIn {
	width: 970px;
	height: 50px;
	margin: 0 auto;
	align-items: center;
	letter-spacing: 1.3px;
}
#adminBnr .adminCount0 { width: 650px !important; }
#adminBnr .adminCount1 { width: 850px !important; }
#adminBnr .adminCount2 { width: 890px !important; }
#adminBnrIn .iconBaloon {
	height: 22px;
	width: 163px;
	margin: 0 8px 0 0;
	padding: 11px 0 0 10px;
	background-image: url(/images/common_2/adminBnr_bnr_baloon.gif);
	background-position: left 2px;
	background-repeat: no-repeat;
	font-size: 10.5px;
	line-height: 1;
	letter-spacing: 1.0px;
}
#adminBnrIn .adminIcon {
	text-align: left;
	margin: 9px 0;
	height: 32px;
}
#adminBnrIn .adminCount1 { width: 40px; }
#adminBnrIn .adminCount2 { width: 80px; }
#adminBnrIn .adminCount3, #adminBnrIn .adminCount4 { width: 120px; }
#adminBnrIn .adminIcon li {
	display: inline-block;
	margin: 0 7px 0 0;
}
#adminBnrIn .adminIcon li img {
	width: 32px;
	height: 32px;
	border: 1px solid #dddddd;
	max-width: 32px;
	max-height: 32px;	
	border-radius: 32px;
	-webkit-border-radius: 32px;
	-moz-border-radius: 32px;
	vertical-align: baseline;
}

#adminBnrIn .contactTxt{
	padding: 0 15px;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	color:#c02428;
}
#adminBnrIn .contactIcon li {
	display: inline-block;
	margin: 0 7px 0 0;
}
#adminBnrIn .contactIcon li img {
	vertical-align: baseline;
}
#adminBnrIn .contactNo {
	width: 180px;
	line-height: 1.1;
	font-weight: bold;
	font-size: 16px;
}
#adminBnrIn .contactNo span {
	display: block;
	font-size: 10px;
	line-height: 1.3;
}
#adminBnrIn .detailBtn {
    width: 54px;
    height: 22px;
    background-color: #c22121;
    margin-right: 0px;
    background-image: url(/images/common_2/admin_bnr_btn_detail.png);
    background-position: right center;
    background-repeat: no-repeat;
    padding: 4px 0 0 13px;
    color: #ffffff;
	letter-spacing: 1.6px;
	font-size: 12px;
	border-radius: 4px;
    -webkit-border-radius: 4px; 
    -moz-border-radius: 4px; 
}


/* !adminBnrFooter
---------------------------------------------------------- */
#adminBnrFooter {
	position: fixed;
	right: 10px;
	bottom: 10px;
	width: 280px;
	z-index: 101;
}
.adminBnrFooter1 { height: 100px; }
.adminBnrFooter0 { height: 60px; }
#adminBnrFooter a { display: block;}
#adminBnrFooter a:hover{ text-decoration: none; }

#adminBnrFooter .iconBaloon {
	height: 29px;
	width: 155px;
	margin: 0 0 0 80px;
	padding: 10px 0 0 0;
	background-image: url(/images/common_2/admin_footer_bnr_baloon.png);
	background-position: left top;
	background-repeat: no-repeat;
	font-size: 10px;
	line-height: 1;
	letter-spacing: normal;
	color: #333333;
	text-align: center;
}
#adminBnrFooter .iconBox {
	margin-top: -3px;
	width: 262px;
	height: 51px;
	padding: 23px 0 0 28px;
	background-image: url(/images/common_2/admin_footer_bnr_bg.png);
	background-position: left top;
	background-repeat: no-repeat;
}
#adminBnrFooter .iconBox ul {
	float: left;
	width: 90px;
}
#adminBnrFooter .iconBox ul li {
	float: left;
	margin: 3px 7px 0 0;
}
#adminBnrFooter .iconBox p {
	float: left;
	width: 150px;
	color: #c02428;
	font-size: 11px;
	line-height: 1.5;
}
#adminBnrFooter .iconAdmin {
	position: absolute;
	top: 26px;
	left: 240px;
}
#adminBnrFooter .iconAdmin img {
	width: 32px;
	height: 32px;
	border: 1px solid #dddddd;
	max-width: 32px;
	max-height: 32px;	
	border-radius: 32px;
	-webkit-border-radius: 32px;
	-moz-border-radius: 32px;
}

/* !adminInfo
---------------------------------------------------------- */
#adminInfo {
	position: fixed;
	right: 10px;
	width: 416px;
	z-index: 102;
}
.adminInfo1 { height: 500px; bottom: -500px; }
.adminInfo0 { height: 460px; bottom: -460px; }
#adminInfo .adminInfoTop {
	width: 396px;
	height: 25px;
	padding: 10px 10px 0 10px;
	background-image: url(/images/common_2/admin_info_bg_top.png);
	background-position: center top;
	background-repeat: no-repeat;
}
#adminInfo .adminInfoTop p {
	display: inline-block;
	width: 345px;
	font-size: 12px;
	line-height: 23px;
	padding: 0 0 0 17px;
	color: #ffffff;
	vertical-align: top;
}
#adminInfo .adminInfoTop a {
	display: inline-block;
	width: 26px;
	height: 25px;
}
#adminInfo .adminInfoMain {
	width: 396px;
	padding: 0 10px;
	background-image: url(/images/common_2/admin_info_bg.png);
	background-position: center top;
	background-repeat: repeat-y;
}
#adminInfo .quote {
	height: 40px;
	background-image: url(/images/common_2/admin_info_arrow_bottom.gif);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-color: #ffffff;
}
#adminInfo .quote p {
	height: 15px;
	padding: 8px 0;
	text-align: center;
	fonts-size: 13px;
	line-height: 1;
	font-weight: bold;
	color: #c02428;
	background: #ffe1e5;
}

#adminInfo .adminInfoScroll {
	height: 435px;
	overflow: scroll;
	background: #ffffff;
}
#adminInfo .adminDetail {
	clear: both;
	padding: 10px 0 0 30px;
}	
#adminInfo .adminDetail li {
	float: left;
	display: table;
	width: 165px;
	height: 41px;
	margin: 0 0 10px 0;
}
#adminInfo .adminDetail li:nth-child(odd){
	margin: 0 10px 10px 0;
}
#adminInfo .adminOne {
	display: table;
	width: 165px;
	margin: 10px 0 10px 150px;
}
#adminInfo .adminDetail li img,
#adminInfo .adminOne img {
	display: table-cell;
	width: 41px;
	height: 41px;
	border: 1px solid #dddddd;
	max-width: 41px;
	max-height: 41px;	
	border-radius: 41px;
	-webkit-border-radius: 41px;
	-moz-border-radius: 41px;
}	
#adminInfo .adminDetail li span,
#adminInfo .adminOne span {
	display: table-cell;
	width: 110px;
	background-image: url(/images/common_2/admin_info_icon_online.gif);
	background-position: left 4px;
	background-repeat: no-repeat;
	vertical-align: middle;
	color: #555555;
	font-size: 12px;
}
#adminInfo .txt_tel_1 {
	clear: both;
	padding: 12px 0 3px 0;
	color: #c02428;
	font-weight: bold;
	text-align: center;
	font-size: 11px;
}
#adminInfo .txt_tel_2 {
	text-align: center;
}
#adminInfo .txt_tel_2 span {
	margin-right: 10px;
	color: #c02428;
	font-weight: bold;
	font-size: 14px;
}	
#adminInfo .txt_tel_2 a {
	color: #c02428;
	font-weight: bold;
	font-size: 28px;
	letter-spacing: 2px;
}
#adminInfo dl.overSeas {
	margin: 0px 37px 25px 37px;
	padding-top: 5px;
	font-size: 12px;
	font-weight: bold;
	border-top: 1px solid #e8e8e8;
	color: #333333;
}
#adminInfo dl.overSeas dt {
	float: left;
	width: 62px;
}
#adminInfo dl.overSeas dd {
	margin-left: 72px;
}
#adminInfo .txt_tel_3 {
	margin: 0 0 18px 0;
	color: #6a6969;
	text-align: center;
	font-size: 12px;
}			
#adminInfo .txt_tel_4 {
	margin: 0 0 10px 0;
	color: #6a6969;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
}			
#adminInfo dl .contactIcon {
	margin: 0 30px 30px 30px;	
}
#adminInfo .txt_tel_5 {
	margin: 0 0 20px 0;
	color: #6a6969;
	text-align: center;
	font-size: 12px;
}
#adminInfo .txt_tel_5 a {
	color: #c02428;
}


#adminInfo .before_tel {
	margin: 0 30px 10px 30px;	              
}   
#adminInfo .ttl_before_tel {
	margin: 0 0 15px 0;
	padding: 0 0 10px 0;
	color: #c02428;
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	border-bottom: 1px solid #c02428;
}
#adminInfo .before_tel dl {
	font-size: 12px;	
}
#adminInfo .before_tel dl dt {
	margin: 0 0 5px 0;
	background: #ffe1e5;
	padding: 3px;
	color: #333333;              
}
#adminInfo .before_tel dl a {
	color: #006ce6;
	text-decoration: underline;
}
#adminInfo .before_tel dl a:hover {
	text-decoration: none;
}  
#adminInfo .before_tel dl dd {
	margin: 0 0 15px 0;
	color: #6a6969;
}                      
#adminInfo .before_tel .beforeIn dl dt {
	margin: 0 0 5px 0;
	padding: 0;
	background: none;
	color: #c02428;
	font-weight: bold;            
}                  
#adminInfo .before_tel .beforeIn dl dd {
	margin: 0 0 15px 0;
	color: #6a6969;
}
#adminInfo .before_tel .before_tel_link {
	margin: 0 0 20px 0;
}
#adminInfo .before_tel .before_tel_link li a {
	display: block;
	width: 150px;
	padding: 8px 0;
	background: #c02428;
	color: #ffffff;
	font-size: 12px;
	font-weight: bold;
	text-align: center;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
}


		
/* !header - SP
---------------------------------------------------------- */
#headerSp{ display: none; }
#headerBoxSp{ display: none; }
		
/* !header
---------------------------------------------------------- */
#header { width: 100%; min-width: 1280px; height: 90px; }
#headerIn {
	margin: 0 auto;
	padding-top: 18px;
	max-width: 1230px;
	text-align: left;
}
#logoWrap,#logoWrapLogin{ width: 507px; }	
#headerLogo{ margin-top: 17px; }
#headerTxt{
	margin-top: 17px;
	font-size: 10.5px;
	line-height: 16px;
	letter-spacing: 1.0px;
	color:#666666;
}	
#logoWrapLogin #memberTxt{
	font-size: 10.5px;
	line-height: 16px;
	letter-spacing: 1.0px;
	color:#666666;
	margin-top: 4px;	
}
#logoWrapLogin #memberTxt span{color: #c22121;}
#logoWrapLogin #headerTxt{ margin-top: 0; }	

#headerUtility { width: 661px; height: 54px;}
#headerSearch input[type="text"] {
	width: 250px;
	height: 26px;
	line-height: 26px;
	border: 1px solid #dadada;
	padding-left: 31px;	
	vertical-align: top;
	background-color: #f0f0f0;
	background-image: url(/images/common_2/icon_hd_search.png);
	background-size: 23px 14px;
	background-repeat: no-repeat;
	background-position: left center;	
}
#headerSearch input[type="submit"]{
	width: 78px;
	height: 26px;
	color: #fff;
	font-size: 12px;
	background: #c22121;
	cursor: pointer;
	border-radius: 4px;
	border: 0;
	margin-left: 2px;
}	

#headerLinks { margin-top: 9px; position: relative;}
#headerLinks .menuList li.menu { display: inline-block; font-size: 12px; font-weight: bold; height: 15px; padding: 0 16px 10px 10px; letter-spacing: initial;}
#headerLinks .menuList li.menu a{ background-repeat: no-repeat; background-position: left top; padding-left: 20px; }
/*#headerLinks .menuList li.menu:nth-child(-n+2){ border-right: 1px dotted #898989; }*/
#headerLinks .menuList li.menu:nth-child(-n+2){ background: url(/images/common_2/hd_line.png) right top no-repeat; }
#headerLinks .menuList li.menu:first-child { padding-left: 0;}
#headerLinks .menuList li.qa a{ background-image: url(/images/common_2/icon_hd_qa.png); background-size: 13px 13px; }
#headerLinks .menuList li.favorite a{ background-image: url(/images/common_2/icon_hd_favorite.png); background-size: 13px 12px;}
#headerLinks .menuList li.history a{ background-image: url(/images/common_2/icon_hd_history.png); background-size: 14px 14px;}

#headerLinks .menuList li:hover + .dropMenu{opacity: 1; visibility: visible;}
#headerLinks .dropMenu:hover{opacity: 1; visibility: visible;}

#headerLinks .dropMenu{
	width: 320px;
	height: 300px;
	opacity: 0;
	visibility: hidden;
	transition: .4s;
	position: absolute;
	top: 27px;
	z-index: 999;
	margin: 0;
	box-sizing: border-box;
	padding: 25px 30px;
	background: #FFF;
	box-shadow: 1px 1px 4px rgba(0,0,0,0.2), -1px -1px 4px rgba(0,0,0,0.2);
	border-radius: 4px;
    -webkit-border-radius: 4px; 
    -moz-border-radius: 4px; 	
}
#headerLinks .dropMenu.favoriteContent{ left: 33px;}
#headerLinks .dropMenu.historyContent{ left: 148px;}
#headerLinks .dropMenu .tit{font-size: 14px; font-weight: bold; color: #999999; margin-bottom: 22px;}
#headerLinks .dropMenu .linkList{font-size: 12px; font-weight: bold;}
#headerLinks .dropMenu .linkList a{background: url(/images/common_2/icon_link.png) right 2px / 6px 10px no-repeat; padding-right: 23px;}

#headerLinks .dropMenu li a{display: flex; display: -webkit-flex; justify-content: space-between; margin-bottom:12px;}

#headerLinks .dropMenu li .img{width: 40px; height: 40px;}
#headerLinks .dropMenu li .img img{width: 100%; height: auto; max-width: 40px; max-height: 40px;}
#headerLinks .dropMenu li .txt{width: 204px; font-size:10px; line-height: 14px; color: #666666;}

#headerLinks .noRegistration {text-align: center; height: 240px;}
#headerLinks .noRegistration .tit{margin-bottom: 17px;}
#headerLinks .noRegistration .txt{font-size: 12px; line-height: 19px; margin-top: 20px;}

#headerBtn li a{
	height: 54px;
	line-height: 54px;
	background-repeat: no-repeat;
	background-position: left center;	
}
#headerBtn .cart a{
	width: 66px;
	background-color: #c22121;
	margin-right: 20px;
	background-image: url(/images/common_2/icon_hd_cart.png);
	background-size: 40px 20px;
	padding-left: 48px;
}
#headerBtn .login a{
	width: 114px;
	background-image: url(/images/common_2/icon_hd_login.png);
	background-size: 167px 16px;
	padding-left: 54px;	
}
#headerBtn .close a{
	width: 108px;
	background-color: #666666;
	background-image: url(/images/common_2/icon_hd_close.png);
	background-size: 27px 7px;
	background-position: right center;	
	padding-left: 60px;	
}
#headerBtn li a span.txtClose{ display: none;}

#headerBtnLogout .cart a{
	width: 81px;
	height: 54px;
	margin-right: 20px;
	padding-left: 65px;
	line-height: 54px;
	
	background-color: #c22121;
	background-image: url(/images/common_2/icon_hd_cart2.png);
	background-size: 55px 20px;
	background-repeat: no-repeat;
	background-position: left center;
}

#headerBtnLogout .mypage a{
	width: 90px;
	height: 28px;
	padding-left: 46px;
	line-height: 28px;
	font-size: 12px;
	
	background-color: #0eb1df;
	background-image: url(/images/common_2/icon_hd_mypage.png);
	background-size: 37px 14px;
	background-repeat: no-repeat;
	background-position: left center;
}
#headerBtnLogout .logout{ text-align: right; font-size: 12px; color: #222222;  margin-top: 10px; letter-spacing: 1.2px;}
#headerBtnLogout .logout a{
	background-image: url(/images/common_2/icon_hd_logout.png);
	background-size: 13px 9px;
	background-repeat: no-repeat;
	background-position: right center;	
	padding-right: 17px;
}


/*loginクリック後のメニュー*/
#headerBox{
	width: 100%;
	min-width: 1280px;
	background: #e4e4e4;
	display: none;
}
#headerBoxIn{
	width: 960px;
	margin: 0 auto;
	padding: 22px 0;
	height: 76px;
}
#headerBoxIn .regist{
	padding-right: 30px;
	border-right: 1px dotted #B7B7B7;	
}
#headerBoxIn .regist a{
	width: 278px;
	height: 76px;
	line-height: 76px;
	background: #c22121;
	font-size: 16px;
	font-weight: 700;
	text-align: center;
}
#inputWrap{ width: 200px; margin-top: 2px; }
#inputWrap input[type="text"],
#inputWrap input[type="password"] {
	width: 200px;
	height: 34px;
	line-height: 34px;
	border: 1px solid #dadada;
	background: #fff;			
	vertical-align: top;
}
#loginWrap{ margin-top: 2px; }
#loginWrap .login a{
	width: 108px;
	height: 44px;
	line-height: 44px;
	background-image: url(/images/common_2/icon_hd_login2.png);
	background-size: 51px 16px;
	background-repeat: no-repeat;
	background-position: left center;	
	padding-left: 62px;	
	margin-bottom: 10px;
}
#loginWrap input[type="checkbox"]{ display: none; height: 100%; }
#loginWrap label {
	position: relative;
	display: inline-block;
	padding: 3px 3px 3px 28px;
	cursor: pointer;
	font-size: 12px;
	color: #666666;
}
#loginWrap label::before {
	position: absolute;
	content: '';
	top: 50%;
	left: 0;
	width: 16px;
	height: 16px;
	margin-top: -10px;
	background: #fff;
	border: 1px solid #dadada;
}
#loginWrap input[type="checkbox"]:checked + label::after {
  position: absolute;
  top: 50%;
  left: 7px;
  display: block;
  margin-top: -7px;
  width: 3px;
  height: 8px;
  border-right: 2px solid #c22121;
  border-bottom: 2px solid #c22121;
  content: '';
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

#loginWrap2 #helpLink{ margin-top: 12px;}
#loginWrap2 #helpLink li{ font-size: 12px; font-weight: bold; padding-bottom: 2px; letter-spacing: 1.3px;}
#loginWrap2 #helpLink li a{
	background: url(/images/common_2/icon_helpLink.png) left center / 6px 7px no-repeat;	
	padding-left: 15px;
}

#loginWrap2 #socialLogin { }
#loginWrap2 #socialLogin p { margin-bottom: 5px; font-size: 12px; color: #666666; }
#loginWrap2 #socialLogin ul { display: flex; display: -webkit-flex; justify-content: left; } 
#loginWrap2 #socialLogin ul li { margin-right: 15px; }

/* !gNavi
---------------------------------------------------------- */
#gNaviWrap{
	width: 100%;
	min-width: 1280px;
	height: 60px;
	background: #222222;
	z-index: 100;
	position: relative;
}
#gNavi{ width: 940px; margin: 0 auto; position: relative; }
#gNavi ul{ margin-right: 100px;}
#gNavi ul li{ font-size: 14px; letter-spacing: 2.0px; line-height: 60px;}
#gNavi ul li a{ color: #FFF;}
#gNavi ul li a:hover{ color: #c22121; text-decoration: none;}
#gNavi #btnBenefits{ position: absolute; top: 0; right: 0;}


/* !breadcrumb
---------------------------------------------------------- */
.breadcrumb{ height: 35px; background-color:#f6f6f6;}
.breadcrumb ul{width:980px; margin: 0 auto; letter-spacing: -.40em;}
.breadcrumb li{
	display: inline-block;
	font-size: 12px;
	color: #7c7c7c;
	line-height: 35px;
	padding-right: 8px;
	letter-spacing: normal;
}
.breadcrumb li a{color: #7c7c7c;}
.breadcrumb li:last-child{ font-weight: bold;}

/* !telephone
---------------------------------------------------------- */
#telephone{width: 778px; margin: 0 auto; border: 4px solid #c22121; box-sizing: border-box;}
#telephoneIn{width: 700px; margin: 0 auto; text-align: center; letter-spacing: 1.0px;}

#telephoneIn a{color: #c22121; text-decoration: underline;}
#telephoneIn h1{font-size: 24px; font-weight: bold; margin-top:27px; line-height: 40px;}
#telephoneIn h1 img { margin-right: 20px; }
#telephoneIn .icon{margin-top:20px; }

#telephoneIn .titWrap {font-size: 12px; color: #c22121; margin-top:18px; }
#telephoneIn .titWrap .txt{font-weight: bold;}
#telephoneIn .titWrap .number{  line-height: 1; margin: 5px 0 10px; }
#telephoneIn .titWrap .number span { font-size:15px; margin-right: 10px; }
#telephoneIn .titWrap .number a{ font-size:30px; letter-spacing: 3.0px; text-decoration: none;}
#telephoneIn .titWrap .hour{color: #555555;}
#telephoneIn .titWrap dl.overSeas {
	width: 325px;
	margin: 10px auto 25px auto;
	padding-top: 8px;
	font-size: 12px;
	font-weight: bold;
	line-height: 1.8;
	border-top: 1px solid #e8e8e8;
	color: #333333;
}
#telephoneIn .titWrap dl.overSeas dt {
	float: left;
	width: 62px;
}
#telephoneIn .titWrap dl.overSeas dd {
	margin-left: 72px;
}

#telephoneIn .callList {margin-top: 30px;}
#telephoneIn .callList h2{font-size: 18px; margin-bottom: 12px;}
#telephoneIn .callList ul{width: 550px; margin: 0 auto; margin-bottom: 15px;}
#telephoneIn .callList ul li{font-size: 12px; font-weight: bold; text-align: left;}
#telephoneIn .callList ul li .img{margin-bottom: 7px;}
#telephoneIn .callList .attention{font-size: 10px;}

#telephoneIn .before{text-align: left; margin-top: 35px;}
#telephoneIn .before h2{color: #c22121; font-size: 18px; border-bottom: 2px solid #c22121; text-align: center; padding-bottom: 15px;}
#telephoneIn .before dl a, #telephoneIn .before ul a { color: #006ce6; text-decoration: underline; }
#telephoneIn .before dl a:hover,  #telephoneIn .before ul a:hover { text-decoration: none; }
#telephoneIn .before dt{color: #c22121; font-size: 14px; font-weight: bold; margin: 20px 0 7px;}
#telephoneIn .before dt span{margin-left:10px; font-size: 12px; font-weight: normal; }
#telephoneIn .before dd{font-size: 12px; line-height: 22px; }
#telephoneIn .before dd.beforeIn dt{font-size: 13px; color: #555555; margin: 10px 0 2px;}
#telephoneIn .before ul{font-size: 12px; margin: 20px 0 37px; justify-content:flex-start;}
#telephoneIn .before ul li{margin-right: 20px;}
#telephoneIn .bnr{margin-bottom: 30px;}
#telephoneIn .before dd.codeImg img { margin: 3px 0; border: 2px solid #cccccc; }

/* !ご予約特典
---------------------------------------------------------- */
#benefits{ width: 960px; margin: 0 auto 80px; }
#benefitsContent{
	overflow: hidden;
	width: 100%;
	border: 6px solid #c22121;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#benefitsContent ul{ float: left; width:740px; margin: 10px 0 10px 10px;}
#benefitsContent ul li{ background: #fff2f2; }
#benefitsContent ul li:nth-child(-n+3){ margin-bottom: 10px; }
#benefitsContent .txtWrap{
	float: right;
	width: 160px;
	margin-right: 20px;
	font-weight: bold;
	margin-top: 65px;
}
#benefitsContent .txtWrap .txtMerit{
	font-size: 14px;
	line-height: 22px;
	color: #c22121;
	margin-left: 10px;
}
#benefitsContent .txtWrap .tit{
	margin: 3px 0 10px 9px;
	font-size: 28px;
	letter-spacing: 1.0px;
}
#benefitsContent .txtWrap .btn a{
	width: 160px;
	height: 40px;
	line-height: 41px;
	letter-spacing: 1.5px;
	background-color: #c22121;
	text-align: center;
	background-image: url(/images/mail_magazine/icon_link_benefits.png);
	background-position:right center;
	background-size:18px 10px;
	background-repeat: no-repeat;	
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}


/* !sns
---------------------------------------------------------- */
#sns{ width: 960px; margin: 0 auto 100px; }
#telBoxSp{ display: none;}
#telBox{ width: 480px; position: relative; }
#telBox .txtTel{
	position: absolute;
	top:60px;
	left: 100px;
	width: 300px;
	font-weight: bold;
	text-align: center;
	z-index: 10;
}
#telBox .txtTel .tit{ font-size: 24px; letter-spacing: 3.0px; }
#telBox .txtTel .tel{ font-size: 28px; letter-spacing: 4.0px;}
#telBox .txtTel .price{
	font-size: 12px;
	line-height: 23px;
	letter-spacing: 1.0px;
	margin-top:2px;
}
#telBox .txtTel .price span{ font-size: 16px; color:#c22121;}
#telBox .txtLine{
	position: absolute;
	top:205px;
	left: 120px;
	z-index: 10;
	font-size: 12px;
	letter-spacing: 1.0px;
	line-height: 21px;
}
#telBox .txtDetail{
	position: absolute;
	top:200px;
	left: 385px;
	z-index: 10;
	text-align: right;
	color: #FFF;
}
#telBox .bg{ position: absolute; top:0; left:0; z-index: 1;}
#snsBnr{ width: 440px; margin-top: 25px;}


#telBoxTmp {
	margin-top: 20px;
	padding: 15px; 
	width: 430px;
	border: 10px solid #cccccc;
}
#telBoxTmp dl dt {
	font-size: 16px;
	font-weight: bold;
	margin-bottom: 5px;
}
#telBoxTmp dl dd .openTime {
	margin: 10px 0 5px 0;
}
#telBoxTmp dd a {
	color: #006ce6;
	text-decoration: underline;
}
#telBoxTmp dd a:hover {
	text-decoration: none;
}


/* !img
----------------------------------------------------------
.item .img{background: #eeeeee; text-align: center;}
*/

/* !エリア一覧
---------------------------------------------------------- */
#listArea{
	width: 100%;
	min-width: 1280px;
	height: 1200px;
	background-image: url(/images/top_2/area_bg.jpg);
	background-size: 100% auto;
	background-repeat: no-repeat;
	background-color: #031541;
}
#listArea  ul.first{padding-top:250px;}
#listArea  ul{ width: 920px; margin: 0 auto; padding-top:25px; }
#listArea  ul li{
	display: inline-block;
	margin-right: 10px;
	color: #FFF;
	font-size: 12px;
	line-height: 22px;
}
#listArea  ul li h2 {
    height: 22px;
    line-height: 22px;
    text-align: left;
    font-size: 12px;
    font-weight: normal;
    border-bottom: none;
    letter-spacing: 0 !important;
    margin-bottom: 0px !important;
}
#listArea  ul li a{ color: #FFF; }
#listArea  ul li.continent{display: block;}
#listArea  ul li.continent,#listArea  ul li.continent a{ font-size: 14px; font-weight: bold; color: #fff000;}
#listArea  ul li.mainArea,#listArea  ul li.mainArea a{ font-size: 14px; font-weight: bold;}
#listArea .more{ display: none !important;}


/* telContainer popup
---------------------------------------------------------- */
#telContainer .callList {
	margin: 0 auto 10px auto;
	width: 510px;
}

#telContainer .callList ul {
	margin: 0 0 5px 0;
}

#telContainer .callList ul li {
	float: left;
	width: 160px;
	text-align: center;
}

#telContainer .callList ul li p {
	font-weight: bold;
	margin: 2px 0 0 0;
}

#telContainer .callList .callNote {
	font-size: 93%;
	color: #666666;
	text-align: center;
}

#telContainer .callList .callNote a {
	color: #666666;
}

#telContainer .beforeArea {
	clear: both;
	border: 1px solid #cccccc;
	width: 770px;
	padding: 15px 15px 0 15px;
	margin: 0 auto 10px auto;
}

#telContainer .beforeArea .beforeAreaContentsL {
	float: left;
	width: 375px;
}

#telContainer .beforeArea .beforeAreaContentsR {
	float: right;
	width: 375px;
}

#telContainer .beforeArea .contentTtl {
	background: #fff2f2;
	padding: 3px 0 3px 10px;
	margin: 0 0 3px 0;
	font-weight: bold;
	color: #ff0000;
}

#telContainer .beforeArea .beforeAreaContentsL dd,
#telContainer .beforeArea .beforeAreaContentsR dd {
	font-size: 93%;
	color: #666666;
	margin: 0 0 10px 0;
}

#telContainer .beforeArea .tourCode {
	border: 1px solid #cccccc;	
}

#telContainer .beforeArea .tourCodeCaption {
	font-size: 85%;
	color: #666666;
	margin: 5px 0 0 200px;
}

#telContainer .beforeArea .ckeckBtnTitle {
	text-align: center;
	font-size: 108%;
	font-weight: bold;
	margin: 0 0 10px 0;
}

#telContainer .beforeArea ul.ckeckBtn {
	width: 180px;
	margin: 0 auto 0 auto;
}

#telContainer .beforeArea ul.ckeckBtn li {
	width: 80px;
	float: left;
	padding-right: 20px;
}

#telContainer .beforeArea ul.ckeckBtn li.last {
	padding: 0;
}

#telContainer dl.mailFlow {
	width: 520px;
	margin: 0 auto;
}

#telContainer dl.mailFlow dt{
	font-size: 108%;
	float: left;
	padding: 8px 20px 0 0;
	font-weight: bold;
}

#telContainer dl.mailFlow dd {
	float: left;
	padding: 8px 0 0 0;
}

#telContainer dl.mailFlow dd.mail{
	float: right;
	padding: 0px;
}

/*--------------------------------------------------------------------------------
	tinybox
--------------------------------------------------------------------------------*/
#tinybox {position:absolute; display:none; padding:10px; background:#fff url(images/preload.gif) no-repeat 50% 50%; border:10px solid #e3e3e3; z-index:2000}
#tinymask {position:absolute; display:none; top:0; left:0; height:100%; width:100%; background:#000; z-index:1500}
#tinycontent {background:#fff}

/* !footer
---------------------------------------------------------- */
#footer{ text-align: center; margin: 40px 0 50px; position: relative;}
#footer ul{ width: 1100px; margin: 0 auto; font-size: 12px; letter-spacing: 1.0px;}
#footer ul .line{ display: block; color: #c7c7c7;}
#footer #footerLogo{ font-size: 20px; margin-top: 40px; letter-spacing: 4.0px;}
#footer #copyright{ margin-top: 35px; font-size: 10px; color: #666666; letter-spacing: 1.5px;} 
#footer #topBtn{width: 60px; position: absolute; right: 30px; bottom: 80px; }
#footer #topBtn img{width: 100%; height: auto;}


/* タブレット対応 */
@media screen and (max-width:1280px) {
	
	#saleBnr { min-width: 1000px; }
	
	#adminBnr { min-width: 1000px; }
	#adminBnrIn { max-width: 940px; }
	
	#header { min-width: 1000px; }
	#headerIn { max-width: 960px; }
	
	#logoWrap,#logoWrapLogin { 
		position: relative;
		width: 270px; 
	}
	#logoWrap #headerLogo { 
		position: absolute;
		top: 30px;
		margin-top: 0;
	}	
	#logoWrapLogin #headerLogo { 
		position: absolute;
		top: 25px;
		margin-top: 0;
	}	
	#logoWrap div,
	#logoWrapLogin div { 
		position: absolute;
		top: -5px;
		margin-top: 0px;
	}	
	#logoWrap div #headerTxt,
	#logoWrapLogin div #headerTxt {
		display: none;
	}	
	#logoWrap #headerTxt { 
		position: absolute;
		top: -5px;
		margin-top: 0px;
	}
	
	#headerBox { min-width: 1000px; }
	#headerBoxIn { max-width: 960px; }
	
	#gNaviWrap { min-width: 1000px; }
	#gNaviWrapIn { max-width: 960px; }
	
	#listArea { min-width: 1000px; }
}
