/* global */
@font-face {
font-family: sans-serif;
src: local(HiraginoSans-W3);
font-weight: normal;
}
@font-face {
font-family: sans-serif;
src: local(HiraginoSans-W6);
font-weight: bold;
}
/*↓2017.02.14追加*/
@font-face {
font-family: 'Hiragino Kaku Gothic Pro W3';
src: local(HiraginoSans-W3);
font-weight: normal;
}
@font-face {
font-family: 'Hiragino Kaku Gothic Pro W3';
src: local(HiraginoSans-W6);
font-weight: bold;
}
/*↑2017.02.14追加*/
@font-face {
font-family: 'ヒラギノ角ゴ Pro W3';
src: local(HiraginoSans-W3);
font-weight: normal;
}
@font-face {
font-family: 'ヒラギノ角ゴ Pro W3';
src: local(HiraginoSans-W6);
font-weight: bold;
}
@font-face {
font-family: 'ヒラギノ角ゴ ProN W3';
src: local(HiraginoSans-W3);
font-weight: normal;
}
@font-face {
font-family: 'ヒラギノ角ゴ ProN W3';
src: local(HiraginoSans-W6);
font-weight: bold;
}
@font-face {
font-family: 'ＭＳ Ｐゴシック';
src: local(HiraginoSans-W3);
font-weight: normal;
}
@font-face {
font-family: 'ＭＳ Ｐゴシック';
src: local(HiraginoSans-W6);
font-weight: bold;
}
@font-face {
font-family: 'MS P Gothic';
src: local(HiraginoSans-W3);
font-weight: normal;
}
@font-face {
font-family: 'MS P Gothic';
src: local(HiraginoSans-W6);
font-weight: bold;
}
@font-face {
font-family: 'MS PGothic';
src: local(HiraginoSans-W3);
font-weight: normal;
}
@font-face {
font-family: 'MS PGothic';
src: local(HiraginoSans-W6);
font-weight: bold;
}

*,
*:before,
*:after {
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
html,
body {
	height: 100%;
}
body {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",'メイリオ',Meiryo,Helvetica,Arial,Sans-Serif;
	font-size: 12px;
	line-height: 19px;
	background-color: #eeeeee;
	font-weight: normal;
}
h1, h2, h3, h4, h5, h6, figure, p, ul {
	margin: 0;
}
a,
a:hover,
a:focus {
	text-decoration: none;
}
img {
	max-width: 100%;
}
iframe,
img {
	vertical-align: top;
}

.list-unstyled {
	list-style: none;
	padding-left: 0;
}
.container {
	width: 852px;
	max-width: 100%;
	padding: 0 20px;
	margin: 0 auto;
	text-align: center;
}
.page-title {
	padding: 0 36px;
}
.page-title img {
	height: 458px;
	margin-top: 2px;
}
#main {
	padding-bottom: 146px;
}
.jumbotron {
	background-color: #ffffff;
	border-radius: 5px;
	text-align: center;
	padding: 7px 64px 12px;
}
.location-block {
	padding: 47px 11px 43px;
}
.location-block + .location-block {
	border-top: 1px solid #BFBFBF;
}

.location-block a {
	color: #000000;
	text-decoration: none;
}
.location-block a:hover {
	text-decoration: underline;
}

.location-title {
	font-size: 18px;
	line-height: 32px;
	margin-bottom: 6px;
}

.location-title .blue-part {
	color: #2796DC;
}

.time-list {
	padding: 0;
	margin: 0;
	list-style: none;
	font-size: 14px;
	line-height: 24.5px;
	margin-bottom: 8px;
}
.time-list li {
	display: inline-block;
	margin: 0 4px;
}
.notice-list {
	padding: 0;
	margin: 0;
	list-style: none;
	font-size: 12px;
	line-height: 24.5px;
	margin-bottom: 8px;
}
.notice-list li {
	display: inline-block;
	margin: 0 4px;
}

.location-address {
	font-style: normal;
	color: #000000;
}

.info-box {
	background-color: #F5F5F5;
	color: #5A5A5A;
	margin-top: 21px;
	margin-bottom: -2px;
	padding: 16px 24px 14px;
	text-align: left;
}
.button-box {
	background-color: #F5F5F5;
	color: #5A5A5A;
	margin: 20px auto;
	padding: 16px 40px;
	display: inline-block;
}

a .button-box {
	background-color: #00841e;
	color: #ffffff;
	margin: 20px auto;
	padding: 16px 40px;
	display: inline-block;
}
a:hover .button-box {
	background-color: #339d4b;
}
#footer {
	font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
	position: relative;
	text-align: center;
	padding: 21px 0;
}
.site-copyright {
	font-size: 10px;
    color: #777;
}
.site-copyright a img {
	margin-top: 2px;
    height: 11px;
    margin-right: 15px;
    display: inline-block;
    vertical-align: top;
    zoom: 1;
}
@media screen and (min-width: 768px) {
	.sp-only {
		display: none;
	}
	.social {
	    position: absolute;
	    right: 55px;
	    bottom: 24px;
	    text-align: right;
	}
	.social li + li {
		margin-top: 10px;
	}

}
@media screen and (max-width: 767px) {
	body {
		font-size: 22px;
		line-height: 34.5px;
	}
	.pc-only {
		display: none;
	}
	.container {
		padding: 0px 20px;
	}
	#main {
		padding-bottom: 175px;
	}
	.page-title {
		padding: 0 18px;
	}
	.page-title img {
		height: 700px;
		margin-top: 0;
		margin-bottom: 14px;
	}
	.jumbotron {
		padding: 0 13px;
	}
	.location-block {
		padding: 102px 0 113px
	}
	.location-title {
		font-size: 28px;
		line-height: 45.25px;
		margin-bottom: 11px;
	}
	.time-list {
		font-size: 22px;
		line-height: 38.5px;
		margin-bottom: 18px;
	}
	.notice-list {
		font-size: 22px;
		line-height: 38.5px;
		margin-bottom: 18px;
	}
	.info-box {
		margin-top: 36px;
		margin-bottom: -25px;
		padding: 16px 15px 22px;
	}
	.button-box ,
	a .button-box {
		margin: 10px auto 20px;
		padding: 12px 20px;
	}
	#footer {
		line-height: 1;
	}
	#footer .container {
		padding: 0 30px;
	}
	.social {
		margin-bottom: 12px;
	}
	.social li {
		display: inline-block;
		vertical-align: top;
		zoom: 1;
		line-height: 0;
	}
	.social li + li {
		margin-left: 10px;
	}
	.site-copyright {
		font-size: 18px;
		line-height: 1.75;
	}

	.site-copyright a img {
		margin-top: 2px;
		margin-right: 15px;
		display: inline-block;
		vertical-align: top;
		zoom: 1;
		height: 20px;
	}
}

@media screen and (max-width: 749px) {
	.social {
		margin-bottom: 6px;
	}

	.social li + li {
		margin-left: 5px;
	}
	.site-copyright {
		font-size: 9px;
	}

	.site-copyright a img {
		margin-top: 1px;
		margin-right: 7.5px;
		height: 10px;
	}
}
@media screen and (max-width: 639px) {
	body {
		font-size: 11px;
		line-height: 17.25px;
	}
	.container {
		padding: 0px 10px;
	}
	#main {
		padding-bottom: 87.5px;
	}
	.page-title {
		padding: 0 9px;
	}
	.page-title img {
		height: 403.5px;
		margin-bottom: 7px;
	}
	.jumbotron {
		padding: 0 6.5px;
	}
	.location-block {
		padding: 51px 0 56.5px
	}
	.location-title {
		font-size: 14px;
		line-height: 22.63px;
		margin-bottom: 5.5px;
	}
	.time-list {
		font-size: 11px;
		line-height: 19.25px;
		margin-bottom: 9px;
	}
	.notice-list {
		font-size: 11px;
		line-height: 19.25px;
		margin-bottom: 9px;
	}
	.info-box {
		margin-top: 18px;
		margin-bottom: -12.5px;
		padding: 12px 16px 11px;
	}
}


/*tour 2018 fanclub modal*/
.topmodal.topmodal-tour2018fan {
	background-color: rgba(0, 0, 0, 0.4);
	right: auto;
	bottom: auto;
	width: 100%;
	height: 100%;
}
.topmodal-tour2018fan .topmodal_body {
	text-align: justify;
}
.topmodal-tour2018fan .topmodal_inner {
	padding: 60px 0;
}
.tour_content {
	max-width: 100%;
	width: 690px;
	max-height: 100%;
	margin: 0 auto;
	background-color: #ffffff;
	border-radius: 10px;
	font-size: 12px;
	line-height: 19px;
	position: relative;
	padding: 62px 44px 58px 88px;
}
.tour_content a,
.tour_content span.blue {
	color: #2795DB;
}
.tour_maintext {
	padding-right: 44px;
	overflow: auto;
}
.tour_maintext::-webkit-scrollbar {
	width: 5px;
}
.tour_maintext::-webkit-scrollbar-thumb {
    background: #E6E6E6;
    border-radius: 15px;
}
.tour_maintext header {
	margin-bottom: 38px;
}
.tour_maintext main p + p {
	margin-top: 19px;
}
.tour_maintext footer {
	text-align: left;
	margin-top: 41px;
}
.tour_x {
	position: absolute;
	top: 40px;
	right: 36px;
	cursor: pointer;
}
.tour_x img {
	width: 18px;
}

@media (max-width: 767px) {
	.topmodal-tour2018fan {
		padding: 60px 0;
	}
	.topmodal-tour2018fan .topmodal_inner {
		padding: 0;
	}
	.topmodal-tour2018fan .topmodal_body {
		height: 100%;
		display: table-row;
	}
	.tour_content {
		width: 100%;
		/*max-height: calc(100vh - 120px);*/
		height: 100%;
		font-size: 22px;
		line-height: 34.5px;
		padding: 123px 49px 76px 106px;
		display: table;
	}
	.tour_maintext {
		padding-right: 46px;
		overflow: auto;
		height: 100%;
	}
	.tour_maintext header {
		margin-bottom: 69px;
	}
	.tour_maintext main p + p {
		margin-top: 37px;
	}
	.tour_maintext footer {
		margin-top: 60px;
	}
	.tour_x img {
		width: 40px;
	}
	.tour_x {
		top: 54px;
		right: 33px;
	}
}

@media (max-width: 639px) {
	.topmodal-tour2018fan {
		padding: 30px 0;
	}


	.tour_content {
		width: 100%;
		/*max-height: 100%;*/
		font-size: 11px;
		line-height: 17.25px;
		padding: 61.5px 24.5px 38px 53px;
	}
	.tour_maintext {

		padding-right: 23px;
		overflow: auto;
	}
	.tour_maintext header {
		margin-bottom: 34.5px;
	}
	.tour_maintext main p + p {
		margin-top: 18.5px;
	}
	.tour_maintext footer {
		margin-top: 30px;
	}
	.tour_x img {
		width: 20px;
	}
	.tour_x {
		top: 27px;
		right: 16.5px;
	}
}
/*--tour 2018 fanclub modal*/
