/* SPNAV */
.sp .navigation {position: fixed; top: 0; left: 0; width: 100%; z-index: 9998; transition:all .3s;-webkit-transform:translate(0,-100%);transform:translate(0,-100%);}
.nav_opened .sp .navigation{-webkit-transform:translate(0,0);transform:translate(0,0); box-shadow: 0 0 10px rgba(27, 108, 136, 0.5);}
.sp .navigation li a{padding:0 10px; line-height: 40px; height: 40px; display: block; background: #a40f1b; color: #fff; border-bottom: 1px solid #E30F21; font-size: 13px;}
.sp .navigation li a img {padding-right: 5px; vertical-align: -3px;}
.open{display: table; position: fixed; z-index: 9999; right: 0; top: 0; height: 40px; width: 40px; background: #E30F21; }
.open div.open_body{vertical-align: middle;display: table-cell;}
.open div.open_body div{width: 15px; margin: 0 auto; transition:all .3s; }
.open span{display: block; height: 2px; width: 15px; background: #fff; transition:all .3s; }
.nav_opened .open div.open_body div{-webkit-transform: rotate(360deg); transform: rotate(360deg); }
.nav_opened .open span{margin: 0}
.nav_opened .open span.second{opacity: 0; }
.nav_opened .open span.first{-webkit-transform: rotate(45deg) translate(1px,1px); transform: rotate(45deg) translate(1px,1px); }
.nav_opened .open span.third{-webkit-transform: rotate(-45deg) translate(2px,-2px); transform: rotate(-45deg) translate(2px,-2px); }
.open span:first-child{margin: 0;}
.open span{margin-top: 3px;}


/*======= PAD =======*/
@media only screen and (max-width: 980px){
	.sp{display:block;}
	.pc{display:none;}
	.fixed{width: 100%; min-height: 520px; background-attachment: initial;}
	.subtitle,
	.box {padding: 10% 5%; width: 90%; overflow: hidden; }

	.subtitle h1 div{background: url(../img2/round_h2-2x.jpg); background-size: 95px;}
	.header h1 img {width: 60%; left: 50%; top: 22%; margin: 0 0 0 -30%; }
	.header h3 img {width: 310px; right: 20px; top: 70px; }
	.section_1 *{font-size: 17px;}
	.section_1 span{font-size: 18px; }
	.section_4 a {border-bottom: 1px dotted #B0AFAA;}
	section.special .special-inner { width: 90%; }
	section.special .special-inner img { width: 100%; }
	section.special .poa { width: 60%; }
	.menu_box { padding: 20px; width: 90%; margin: 20px auto; }
	.special .l h2 { padding-bottom: 15px; }
	.special .l p { min-height: auto; }
}

@media only screen and (max-width: 980px) and (min-width: 481px){
	.header {height: 880px; }
	.stats { height: 120px; width: 150px; margin-left: 0; text-align: center; }
	.stats_dinner { left:150px; }
	.stats ul li.stats_2{font-size: 38px; }
	.stats ul li.stats_2 span {font-size: 32px; }
	.stats ul li.stats_3{ letter-spacing: 0;}
	.section_3_header {height: 520px; }
	.section_1 p {width: 65%; }
	.section_1 img {width: 30%;}
	.section_2 .lr > div {width: 48%; padding: 20px; box-sizing: border-box; min-height: 200px; }
	.section_4 .l {width: 70%; }
	.section_4 .r {width: 25%; }
}

/*======= SP =======*/
@media only screen and (max-width: 480px){
	table tr{display: block; }
	.table table th,
	.table table td{width: 100%; display: list-item; border: none; list-style: none; box-sizing: border-box; border: 1px dotted #B0AFAA; }
	.table table th {border-bottom:none;}
	.table table td{margin-bottom: 1.5em;}

	.link-hanabi a { padding: 30px; box-sizing: border-box; }
	.link-hanabi a span { text-align: left; }
	.special ul li { padding: 0; }
	.special .l { width: 100%; float: none; }
	.special .r { width: 100%; float: none; }
	.special .subbox { min-height: 40px; }
	.special .l h2 { margin: 0; }
	.special .mb { margin-bottom: 35px; }
	.section_3 .subbox { margin: 20px 0 40px; }
	.btn { padding-bottom: 40px; }

	.fixed {min-height: 220px;}
	.section_3_header {height: 220px; }
	.header {height: 750px; }
	.header h1 img {width: 80%; left: 50%; top: 19%; margin: 0 0 0 -40%; }
	.header h2 img {width: 140px; right: 10px; bottom: 120px; }
	.header h3 img {width: 70%; right: 15%; top: 55%; }
	.stats { height: 100px; width: 125px; margin-left: 0; text-align: center; }
	.stats_dinner { left:125px; }
	.stats ul li.stats_1{font-size: 10px;}
	.stats ul li.stats_2{font-size: 30px;}
	.stats ul li.stats_2 span {font-size: 24px; }
	.stats ul li.stats_3{ letter-spacing: 0;}
	.section_1 {padding: 0; margin-top: 0; position: relative;}
	.section_1 *{line-height: 1.7;}
	.section_1 p {width: 100%; }
	.section_1 img {width: 60%; padding: 10px 0 0;}
	.section_2 .lr > div {width: 100%; padding: 20px; box-sizing: border-box; min-height: auto; margin-bottom: 20px; }
	.section_3_header img {width: 80%; margin: 0 auto; }
	.section_4 table th {width: 90px; }
	.section_4 table th, .section_4 table td {font-size: 11px; vertical-align: top; }
	.section_4 .r { width: 40%; padding: 40px 30% 0; float: none;}
	.section_5 .r .r { width: 40%; padding: 0 30%; float: none;}
	.box h3 { font-size: 18px; }
	
	.list_type_half ul { float: none; width: 100%; }
}