@charset "UTF-8";

html,body {
/**font-family: 'Noto Sans Japanese', sans-serif;**/
font-family: 'Lucida Sans', 'Lucida Sans Regular', 'Lucida Grande', 'Lucida Sans Unicode', Geneva, Verdana, sans-serif;
font-weight: 400;
position: relative;
-webkit-text-size-adjust: auto;
}
* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

/*----------------------------------------------------
	PC
----------------------------------------------------*/

@media screen and (min-width: 761px) {

.sp {
display: none;
}

/* ----- HEADER ----- */

header {
width: 100%;
margin: 0 auto;
position: relative;
border-bottom: 1px solid #e2e2dd;
position: relative;
z-index: 100;
}
header p {
width: 100%;
height: 36px;
padding: 3px 0 0 0;
color: #fff;
font-size: 18px;
text-align: center;
background: #FA1D2F;
/*font-family: 'Times New Roman', Times, serif;*/
}
header .inner {
width: 100%;
height: 90px;
position: relative;
}
header h1 {
width: 24%;
background: url(../images/common/logo.jpg) no-repeat center center;
background-size: 80px auto;
position: absolute;
top: 0;
left: 50%;
-webkit-transform: translateX(-50%);
-ms-transform: translateX(-50%);
transform: translateX(-50%);
}
header h1 a {
width: 100%;
height: 90px;
text-indent: -9999px;
display: block;
}
header nav {
position: relative;
}
header nav > ul > li {
width: 19%;
height: 90px;
font-size: 14px;
font-weight: 600;
line-height: 2.0;
float: left;
}
header nav > ul > li:nth-child(2) {
margin: 0 24% 0 0;
}
header nav > ul > li > a {
width: 100%;
height: 90px;
padding: 30px 0 0 0;
color: #000;
text-align: center;
text-decoration: none;
display: block;
}
header nav > ul > li > a > span {
color: #de2b2b;
font-size: 11px;
font-weight: 500;
display: block;
letter-spacing: 1px;
}
header nav > ul > li.current > a,
header nav > ul > li > a:hover {
border-bottom: 4px #FA1D2F solid;
}

header nav ul li .snav1 {
width: 19%;
background: #f6f6f3;
border-bottom: 1px solid #e2e2dd;
position: absolute;
top: 91px;
left: 0;
display: none;
}


header nav ul li .snav1 .snavInner {
width: 100%;
margin: 0 auto;
overflow: hidden;
}

header nav ul li .snav1 .snavInner .box {
/*width: 500px;*/
padding: 20px 20px 20px 0;
border-top: 1px solid #e2e2dd;
/*float: left;*/
overflow: hidden;
text-align: center;
}
/*
header nav ul li .snav1 .snavInner .box:nth-of-type(odd) {
border-right: 1px solid #e2e2dd;
}
header nav ul li .snav1 .snavInner .box:nth-of-type(2n) {
margin: 0 0 0 -1px;
padding: 20px 0 20px 20px;
border-left: 1px solid #e2e2dd;
}

header nav ul li .snav1 .snavInner .box:nth-of-type(2n+1) {
clear: both;
}
header nav ul li .snav1 .snavInner .box:nth-of-type(1),
header nav ul li .snav1 .snavInner .box:nth-of-type(2) {
border-top: none;
}
header nav ul li .snav1 .snavInner .box img {
width: 220px;
float: right;
}
header nav ul li .snav1 .snavInner .box h2 a {
margin: 0 0 5px 0;
padding: 3px 0 3px 0px;
color:#4682b4;
font-size: 16px;
text-decoration: none;
}

header nav ul li .snav1 .snavInner .box h2 a:hover {
	margin: 0 0 5px 0;
	padding: 3px 0 3px 0px;
	color:#4682b4;
	font-size: 16px;
	text-decoration: underline;
	}
header nav ul li .snav1 .snavInner .box:nth-of-type(1) h2 {
background: url(../images/common/ico_cat1_r.png) no-repeat left center;
background-size: 26px auto;
}
header nav ul li .snav1 .snavInner .box:nth-of-type(2) h2 {
background: url(../images/common/ico_cat2_r.png) no-repeat left center;
background-size: 26px auto;
}
header nav ul li .snav1 .snavInner .box:nth-of-type(3) h2 {
background: url(../images/common/ico_cat3_r.png) no-repeat left center;
background-size: 26px auto;
}
header nav ul li .snav1 .snavInner .box:nth-of-type(4) h2 {
background: url(../images/common/ico_cat4_r.png) no-repeat left center;
background-size: 26px auto;
}
header nav ul li .snav1 .snavInner .box:nth-of-type(5) h2 {
background: url(../images/common/ico_cat5_r.png) no-repeat left center;
background-size: 26px auto;
}
header nav ul li .snav1 .snavInner .box:nth-of-type(6) h2 {
background: url(../images/common/ico_cat6_r.png) no-repeat left center;
background-size: 26px auto;
}

header nav ul li .snav1 .snavInner .box ul li {
margin: 0 0 0 70px;
padding: 0 0 0 10px;
background: url(../images/common/ico_snav.png) no-repeat left center;
}*/


header nav ul li .snav1 .snavInner .box ul li a {
color: #000;
text-decoration: none;
}
header nav ul li .snav1 .snavInner .box ul li a:hover {
text-decoration: underline;
}



header nav ul li .snav2 {
width: 19%;
background: #f6f6f3;
border-bottom: 1px solid #e2e2dd;
position: absolute;
top: 91px;
left: 19%;
display: none;
}
header nav ul li .snav2 .snavInner .box ul  {
	
	padding: 20px 20px 20px 0px;

	}
header nav ul li .snav2 .snavInner .box ul li {
	margin: 0 0 0 9%;
	text-align: center;
	}

	header nav ul li .snav2 .snavInner .box ul li a {
		color: #000;
		text-decoration: none;
		}

		header nav ul li .snav2 .snavInner .box ul li a:hover {
		text-decoration: underline;
		}




/*header nav ul li .snav2 .snavInner .box ul li {
font-size: 12px;
display: inline-block;
margin: 0 0 0 9%;
text-align: center;
padding: 20px 20px 5px 0px;
}
header nav ul li .snav2 .snavInner .right ul li:after {
content: "｜";
}
header nav ul li .snav2 .snavInner .right ul li:last-child:after {
content: "";
}
header nav ul li .snav2 .snavInner .right ul li a {
color: #000;
text-decoration: none;
}
header nav ul li .snav2 .snavInner .right ul li a:hover {
text-decoration: underline;
}

@media screen and (max-width: 1040px) {
header nav ul li .snav1 .snavInner {
width: 760px;
}
header nav ul li .snav1 .snavInner .box img {
width: 140px;
}
header nav ul li .snav1 .snavInner .box {
width: 380px;
}
header nav ul li .snav2 .snavInner {
width: 760px;
}
header nav ul li .snav2 .snavInner .left img {
width: 420px;
}
header nav ul li .snav2 .snavInner .right {
width: 320px;
}
header nav ul li .snav2 .snavInner .right ul li {
font-size: 11px;


}*/





/* ----- SECTION ----- */

section {
width: 100%;
color: #000;
font-size: 14px;
background: #f6f6f3;
position: relative;
}

/* ----- PAGE TOP ----- */

.pagetop a {
padding: 15px;
color: #fff;
font-family: 'Oswald', sans-serif;
font-size: 16px;
text-align: center;
text-decoration: none;
letter-spacing: 2px;
display: block;
background: #F29A30;
}
.pagetop a span {
padding: 0 0 0 25px;
background: url(../images/common/ico_pagetop.png) no-repeat left center;
background-size: 16px auto;
}
.pagetop a:hover {
background: #FAC033;
}

/* ----- FOOTER ----- */

footer {
padding: 20px 0;
color: #333;
background: #fff;
}
footer a {
color: #333;
text-decoration: none;
}
footer a:hover {
text-decoration: underline;
}
footer h1 {
/**width: 120px;
height: 16px;**/
margin: 10px auto 30px;
font-size: medium;
}
footer h1 a {
/**width: 100%;
height: 16px;
text-indent: -9999px;
background: url(../images/common/logo_w.png) no-repeat center center;
background-size: 100% auto;**/
display: block;
}
footer h1 a:hover {
opacity: 0.7;
}
footer .inner {
width: 100%;
max-width: 1200px;
margin: 0 auto;
padding: 0 30px 30px 30px;
overflow: hidden;
}
footer .inner h2 {
margin: 0 0 10px 0;
padding: 5px 0;
text-align: center;

position: relative;
clear: both;
z-index: 2;
}
footer .inner h2 span {
padding: 0 20px;
background: #212121;
}
footer .inner h2:after {
content: "";
width: 100%;
height: 1px;
margin: 0 auto;
background: #444;
position: absolute;
top: 17px;
left: 0;
z-index: -1;
}
footer .inner h3 {
margin: 0 0 5px 0;
padding: 0 5px;
color: #888;
font-size: 14px;
}
footer .inner .act {
width: 33%;
float: left;
}
footer .inner .region {
width: 12.5%;
float: left;
}
footer .inner .fnav {
padding: 30px 0 0 0;
border-top: 1px solid #444;
overflow: hidden;
text-align: center;
}
footer .inner .fnav li {
margin: 0 25px;
font-size: 14px;
display: inline-block;
}
footer .inner ul {
padding: 0 5px;
}
footer .inner ul li {
padding: 0 0 0 10px;
font-size: 12px;
background: url(../images/common/ico_footer.png) no-repeat left 7px;
}
footer .inner ul.fnav li {
background: url(../images/common/ico_footer.png) no-repeat left 9px;
}
footer ul#fnav_sp {
display: none;
}
footer small {
padding: 15px;
color: #fff;
font-size: 12px;
text-align: center;
background: #FA1D2F;
display: block;
}

/* ----- OVERLAY ----- */

.overlay {
width: 100%;
height: calc(100% - 127px);
background: url(../images/top/bg_event.png) repeat left top;
position: absolute;
top: 127px;
left: 0;
z-index: 5;
display: none;
}
}

/*----------------------------------------------------
	SP
----------------------------------------------------*/

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

.pc {
display: none;
}
#container {
width: 760px;
overflow: hidden;
position: relative;
}
#containerInner {
position: relative;
}

/* ----- HEADER ----- */

header {
width: 100%;
height: 94px;
margin: 0 auto;
border-top: 4px solid #FA1D2F;
position: relative;
z-index: 1;
}
header .inner {
width: 100%;
height: 90px;
position: relative;
}
header h1 a {
width: 500px;
height: 80px;
background: url(../images/common/logo-sp.png) no-repeat center center;
background-size: 500px auto;
text-indent: -9999px;
display: block;
position: absolute;
top: 10px;
left: 10px;
}
header p.menu {
width: 90px;
height: 90px;
position: absolute;
top: 0;
right: 0;
}
header p.menu img {
width: 100%;
}

/* ----- MENU ----- */

#menu {
width: 670px;
height: 100%;
position: absolute;
top: 0;
left: 760px;
background: #fff;
}
#menu nav ul li a {
padding: 24px 40px;
color: #333;
font-size: 28px;
text-decoration: none;
border-bottom: 1px solid #d7d7d7;
background: url(../images/common/ico_btn_r.png) no-repeat 620px center;
display: block;
}
#menu ul.spsnav {
margin: 40px 0;
}
#menu ul.spsnav li {
margin: 0 0 15px 0;
}
#menu ul.spsnav li a {
padding: 10px 40px 10px 60px;
color: #fff;
font-size: 28px;
text-decoration: none;
background: url(../images/common/ico_btn_tr_sp.png) no-repeat 40px center;
display: block;
}
#menu ul.splanguage {
border-top: 1px solid #3e3e3e;
border-bottom: 1px solid #3e3e3e;
overflow: hidden;
}
#menu ul.splanguage li {
width: 50%;
float: left;
}
#menu ul.splanguage li:first-child {
border-right: 1px solid #3e3e3e;
}
#menu ul.splanguage li a {
padding: 24px 40px;
color: #fff;
font-size: 28px;
text-align: center;
text-decoration: none;
display: block;
}

/* ----- SECTION ----- */

section {
width: 100%;
color: #000;
font-size: 14px;
background: #f6f6f3;
position: relative;
}

/* ----- PAGE TOP ----- */

.pagetop a {
padding: 20px;
color: #fff;
font-family: 'Oswald', sans-serif;
font-size: 24px;
text-align: center;
text-decoration: none;
letter-spacing: 2px;
display: block;
background: #FA1D2F;
}
.pagetop a span {
padding: 0 0 0 35px;
background: url(../images/common/ico_pagetop.png) no-repeat left center;
}

/* ----- FOOTER ----- */

footer {
}
footer ul#fnav_sp {
background: #fff;
}
footer ul#fnav_sp li a {
padding: 20px;
color: #333;
font-size: 30px;
text-decoration: none;
border-top: 2px solid #d7d7d7;
background: url(../images/common/ico_btn_w_sp.png) no-repeat 720px center;
display: block;
}
footer small {
padding: 15px;
color: #fff;
font-size: 20px;
text-align: center;
border-top: 2px solid #3e3e3e;
background: ##FA1D2F;
display: block;
position: relative;
}
}

/*----------------------------------------------------
	FLOATING BANNER
----------------------------------------------------*/

.floating-banner {
    position: fixed; /* 追従 */
    z-index: 99999; /* 他の要素の下に隠れないように */
    bottom: 20px; /* バナーの上下の位置 */
    right: 20px; /* バナーの左右の位置 */
}

.floating-banner:hover {
    opacity: .8; /* ホバーで少し透過 */
}


/*----------------------------------------------------
	UTILITY
----------------------------------------------------*/

section {
overflow: hidden;
}
section a {
text-decoration: none;
}
section a:hover {
/*text-decoration: underline;*/
}

/* ----- LOCATION ICON ----- */

.icon.pin1 { background: #97be1a url(../images/common/ico_pin.png) no-repeat 7px center; }
.icon.pin2 { background: #de187a url(../images/common/ico_pin.png) no-repeat 7px center; }
.icon.pin3 { background: #1b98d6 url(../images/common/ico_pin.png) no-repeat 7px center; }
.icon.pin4 { background: #f19c18 url(../images/common/ico_pin.png) no-repeat 7px center; }
.icon.pin5 { background: #df1014 url(../images/common/ico_pin.png) no-repeat 7px center; }
.icon.pin6 { background: #22913b url(../images/common/ico_pin.png) no-repeat 7px center; }
.icon.pin7 { background: #961176 url(../images/common/ico_pin.png) no-repeat 7px center; }
.icon.pin8 { background: #0e6caa url(../images/common/ico_pin.png) no-repeat 7px center; }

