﻿@charset "utf-8";
/* -- -- --
 * ROOM8 Template V3.3
 * Last Up Date: 2019.9
 * Author: mick
-- -- -- -- -- -- -- -- */
* {
	margin: 0;
	padding: 0;
	word-break: normal;
	line-break: normal;
	word-wrap: break-word;
	overflow-wrap: break-word;
	box-sizing: border-box;
}

html {
	opacity: 0;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-size: 10px;
	>font-size: 62.5%;
}

html.wf-active, html.loading-delay {
	opacity: 1;
	-webkit-transition: .2s;
	-moz-transition: .2s;
	-o-transition: .2s;
	transition: .2s;
}

body {
	font-family: source-han-sans-japanese, sans-serif;
	font-weight: 400;
	font-style: normal;
	color: #3b3b3b;
}

/*
font-family: source-han-sans-japanese, sans-serif;
font-weight: 400;
font-style: normal;

font-family: source-han-sans-japanese, sans-serif;
font-weight: 700;
font-style: normal;

font-family: myriad-pro-condensed, sans-serif;
font-weight: 700;
font-style: normal;
*/

html, body {
	height:100%;
}

body.fixed {
	position: fixed;
	top:0;
	left:0;
	width: 100%;
}

header,
article,
nav,
section,
footer {
	display: block;
}

audio,
canvas,
progress,
video {
	display: inline-block;
	vertical-align: baseline;
}

header,
article,
nav,
section,
footer,
div,
p {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

p {
	line-height: 1.6;
}

a {
	color: #333;
	border: none;
	outline: 0;
	background-color: transparent;
	text-decoration: none;
}

a:active,
a:hover {
	outline: 0;
}

b,
strong {
	font-weight: 700;
}

i {
	font-style: italic;
}

del {
	text-decoration: line-through;
}

h1,h2,h3,h4,h5,h6 {
	line-height: 1.4;
	font-size: 1.0em;
	font-weight: 700;
}

img {
	border: 0;
	vertical-align: bottom;
}

.mimg img {
	width:100%;
	height:auto;
}

pre {
	overflow: auto;
}

table {
	border-collapse: collapse;
	border-style: none;
	border-spacing: 0;
}

dt,
dd,
td,
th {
	line-height: 1.5;
}

ul,
ol {
	list-style: none;
}

li {
	line-height: 1.5;
}

.pc {
	display: none;
}

/* Forms
========================================================================== */
button,
input,
optgroup,
select,
textarea {
	color: inherit;
	font: inherit;
	margin: 0;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

optgroup {
	font-weight: 700;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="url"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="week"],
input[type="number"],
input[type="search"],
input[type="tel"],
select,
textarea {
	display: inline-block;
	vertical-align: middle;
	border-radius: 0;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-appearance: none;
}

::-webkit-input-placeholder {
	color: #AAA;
}

::-moz-placeholder {
	color: #AAA;
}

:-ms-input-placeholder {
	color: #AAA;
}

::-placeholder {
	color: #AAA;
}

/* Extras
========================================================================== */
.r0 { margin-right:0!important; }
.b0 { margin-bottom: 0!important; }

.clear:after,
.block1:after,
.block2:after,
.inblock:after,
.contents:after {
    content: "";
    clear: both;
    display: block;
	visibility: hidden;
	overflow: hidden;
}

#dammy {
	display: block;
	overflow: hidden;
	background: url('../images/') no-repeat;
	padding: 40px 0 0;
	width: 216px;
	height: 0!important;
}

/*
=================================== */
#wrapper {
	font-size:1.6rem;
}

#info {
	margin: 0 0 50px 0;
	padding: 20px;
	width: 100%;
	border: 3px solid #e4103d;
	background-color:#FFFFE1;
}

#info p {
	margin: 0 0 20px 0;
}

#info p:last-child {
	margin: 0;
}

#info #title {
	font-size:2rem;
	font-weight:bold;
	text-align:center;
}



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

.block1,
.block2 {
	margin:0 auto;
	padding:40px 15px;
}

.kv_block {
	background-image: url('../images/dot_cover.png'), url('../images/kv_mimage.jpg');
	background-repeat: repeat, no-repeat;
	background-size: 2px 2px, cover;
	background-position: center top, center center;
}

.kv_block .block1 {
	padding:80px 15px;
}

.kv_block h1 {
	margin:0 auto;
	max-width:350px;
}

.mtitlebox {
	margin:0 0 20px;
	padding:0 0 15px;
	text-align: center;
	position: relative;
}

.mtitlebox::after {
	position: absolute;
	left:50%;
	bottom:0;
	content: '';
	margin:0 0 0 -40px;
	width:80px;
	height:3px;
	background-color: #e3193c;
}

.mtitlebox p {
	margin:0 0 5px;
	line-height:40px;
	color:#000;
	font-family: myriad-pro-condensed, sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size:4.0rem;
}

.mtitlebox h2 {
	color:#e4103d;
}

.mex {
	margin:0 0 20px;
}

.top_area1 {
	background: url('../images/sp_area1back.jpg') no-repeat right top;
	background-size: 320px 225px;
}

.top_area1 .mex {
	font-size:2.0rem;
	font-weight: 700;
}

.area1block1 {
	margin:0 0 25px;
}

.area1block1 li {
	margin:0 0 10px;
	width:50%;
	float:left;
}

.area1block1 li.spcheck {
	margin-bottom:0;
}

.area1block1 li b {
	display: block;
	margin:0 5px 0 0;
}

.area1block1 li:nth-child(even) b {
	margin:0 0 0 5px;
}

.area1block2 .pcimagebox {
	display: none;
}

.area1block2 .ex {
	margin:0 0 20px;
}

.area1block2 .ex p {
	margin:0 0 20px;
}

.area1block2 .ex p:last-child {
	margin:0;
}

.area1block2 .ex p b {
	background:linear-gradient(transparent 60%, #fffd66 60%);
}

.area1block2 .spimagebox {
	margin:0 auto;
	max-width:450px;
}

.top_area2 {
	background: url('../images/block_back1.jpg') repeat center top;
	background-size: 45px 45px;
}

.top_area2 .mlead {
	margin:0 auto 30px;
	max-width:580px;
}

.top_area2 .route {
	margin:0 0 30px;
	padding:15px 20px;
	background-color: #FFF;
	border-radius: 6px;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	box-shadow:0 0 5px 2px #CCC;
}

.top_area2 .route p {
	margin:0 auto;
	max-width:350px;
}

.top_area2 .timetable .ttbox {
	margin:0 0 20px;
}

.top_area2 .timetable .ttbox.day2 {
	margin-bottom:0;
}

.top_area2 .timetable .ttbox table {
	width:100%;
	border-top:1px solid #cbcbcb;
	border-left:1px solid #cbcbcb;
	background-color: #FFF;
}

.top_area2 .timetable .ttbox th {
	display: block;
	padding:5px 10px;
	text-align: left;
	vertical-align: top;
	background-color: #d8ecfc;
	border-right:1px solid #cbcbcb;
	border-bottom:1px solid #cbcbcb;
}

.top_area2 .timetable .ttbox.day2 th {
	background-color: #ffe8f1;
}

.top_area2 .timetable .ttbox th.label {
	padding:10px;
	color:#FFF;
	font-size:1.8rem;
	text-align: center;
	background-color: #1a8ddb;
}

.top_area2 .timetable .ttbox.day2 th.label {
	background-color: #f0669d;
}

.top_area2 .timetable .ttbox td {
	display: block;
	padding:7px 10px;
	border-right:1px solid #cbcbcb;
	border-bottom:1px solid #cbcbcb;
}

.top_area2 .timetable .ttbox td .line1 {
	margin:0 0 2px;
	color:#198ddb;
	line-height:1.6;
	font-size:1.4rem;
	font-weight: 700;
}

.top_area2 .timetable .ttbox.day2 td .line1 {
	color: #f0669d;
}

.top_area2 .timetable .ttbox td .line2 {
	line-height:1.4;
	font-weight: 700;
}

.spot_block {
	margin:0 0 30px;
}

.spot_block.day2 {
	margin-bottom:0;
}

.spot_block h3 {
	margin:0 0 30px;
	text-align: center;
}

.spot_block h3 b {
	display: inline-block;
	width:250px;
	height:50px;
	line-height:48px;
	color:#FFF;
	font-size:2.0rem;
	text-align: center;
	background-color: #188cdb;
	border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
	position: relative;
}

.spot_block.day2 h3 b {
	background-color: #ef669c;
}

.spot_block h3 b:after {
	position: absolute;
	left:50%;
	top:50px;
	content: '';
	margin:0 0 0 -7px;
	border-top:15px solid #188cdb;
	border-left:7px solid transparent;
	border-right:7px solid transparent;
	border-bottom:15px solid transparent;
}

.spot_block.day2 h3 b:after {
	border-top:15px solid #ef669c;
}

.spotbox {
	margin:0 0 20px;
	background-color: #dfecf6;
}

.spotbox:last-child {
	margin-bottom:0;
}

.spot_block.day2 .spotbox {
	background-color: #f8e7ed;
}

.spotbox .spot_data {
	padding:15px;
}

.spotbox .spot_data .time {
	margin:0 0 5px;
	color:#198ddb;
	font-size:1.4rem;
	font-weight: 700;
}

.spot_block.day2 .spot_data .time {
	color: #f0669d;
}

.spotbox .spot_data h4 {
	margin:0 0 10px;
	font-size:2.0rem;
}

.top_area4 {
	background: url('../images/block_back2.jpg') repeat center top;
	background-size: 45px 45px;
	color:#FFF;
}

.top_area4 .mtitlebox p {
	color:#FFF;
}

.classiccar_block {
	margin:0 0 35px;
}

.classiccar_block:last-child {
	margin-bottom:0;
}

.cblock_mtitle {
	margin:0 0 15px;
	text-align: center;
}

.cblock_mtitle .year {
	margin: 0 0 5px;
	line-height:1.4;
}

.cblock_mtitle .cname {
	margin: 0 0 5px;
	color:#e4103d;
	line-height:30px;
	font-family: myriad-pro-condensed, sans-serif;
	font-weight: 700;
	font-style: normal;
	font-size:3.0rem;
}

.cblock_mtitle .lead {
	font-size:2.0rem;
	font-weight: 700;
	line-height:1.4;
}

.cblock_ex .pcimage_block {
	display: none;
}

.cblock_ex .ex {
	margin:0 0 20px;
}

.cblock_ex .ex p {
	margin:0 0 20px;
}

.cblock_ex .ex p:last-child {
	margin-bottom:0;
}

.cblock_ex .spimage_block .imagebox {
	margin:0 0 20px;
}

.cblock_ex .imagebox:last-child {
	margin-bottom:0;
}

.area5block {
	margin:0 0 25px;
	font-size:1.4rem;
	border-top:1px solid #ccc;
}

.area5block table {
	width:100%;
}

.area5block th {
	display: block;
	padding:10px;
	line-height: 1.6;
	text-align: left;
	vertical-align: top;
	background-color: #f5f5f5;
}

.area5block td {
	display: block;
	padding:10px;
	line-height: 1.6;
	border-bottom:1px solid #ccc;
}

.area5block td li {
	margin:0 0 5px;
	padding:0 0 0 25px;
	position: relative;
}

.area5block td li:last-child {
	margin:0;
}

.area5block td li b {
	position: absolute;
	top:0;
	left:0;
	font-weight: 400;
}

.top_area5 .ex {
	margin:0 0 20px;
}

.top_area5 .btn_block p {
	margin:0 auto 10px;
	width:250px;
}

.top_area5 .btn_block p:last-child {
	margin-bottom:0;
}

.top_area5 .btn_block p a {
	display: block;
	height:50px;
	line-height:48px;
	color:#FFF;
	font-weight: 700;
	text-align: center;
	background-color: #e4193d;
	border-radius: 50px;
	-moz-border-radius: 50px;
	-webkit-border-radius: 50px;
}

.pagetop {
	display: none;
	position: fixed;
	right:15px;
	bottom:15px;
	width: 35px;
	overflow: hidden;
	border-radius: 35px;
	-moz-border-radius: 35px;
	-webkit-border-radius: 35px;
}

.pagetop a {
	display: block;
	overflow: hidden;
	background: url('../images/pagetop.svg') no-repeat center center;
	background-size: 16px 8px;
	background-color:rgba(0, 0, 0, 0.2);
	padding: 35px 0 0;
	height: 0!important;
}

.flinks {
	margin:0 0 20px;
	padding:20px 15px;
	background-color: #e8e8e8;
}

.flinks ul {
	border:1px solid #ccc;
}

.flinks li {
	border-bottom:1px solid #ccc;
	background-color: #FFF;
}

.flinks li:last-child {
	border-bottom:none;
}

.flinks li a {
	display: block;
	background: url('../images/flink_icon.svg') no-repeat right 15px center;
	background-size: 10px 15px;
	padding:12px 15px;
}

.sns {
	display: flex;
	justify-content: center;
	margin:0 15px 20px;
}

.snsbox {
	margin:0 2px;
}

.snsbox.tw,
.snsbox.line {
	padding:2px 0 0;
}

.copyright {
	padding:0 15px 20px;
	text-align: center;
}

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

	/*
	=================================== */
	p {
		line-height: 1.8;
	}

	li {
		line-height: 1.6;
	}

	.sp {
		display: none;
	}

	.pc {
		display: block;
	}

	/*
	=================================== */
	#wrapper {
		min-width:1200px;
	}

	.block1,
	.block2 {
		padding:70px 50px;
		width:1200px;
	}

	.block2 {
		padding:70px 100px;
	}

	.kv_block {
		background-image: url('../images/dot_cover.png'), url('../images/kv_mimage.jpg');
		background-repeat: repeat, no-repeat;
		background-size: 2px 2px, cover;
		background-position: center top, center center;
	}

	.kv_block .block1 {
		padding:90px 50px 0;
		height:800px;
	}

	.kv_block h1 {
		width:700px;
		max-width:700px;
	}

	.mtitlebox {
		margin:0 0 50px;
		padding:0 0 20px;
	}

	.mtitlebox p {
		margin:0 0 5px;
		line-height:60px;
		font-size:6.0rem;
	}

	.mex {
		margin:0 0 45px;
		text-align: center;
	}

	.top_area1 {
		background: url('../images/area1back.jpg') no-repeat center 30px;
		background-size: 1360px 397px;
	}

	.top_area1 .mex {
		margin:0 0 50px;
		font-size:2.5rem;
	}

	.area1block1 {
		margin:0 0 30px;
	}

	.area1block1 li {
		margin:0 20px 20px 0;
		width:320px;
	}

	.area1block1 li:nth-child(3n) {
		margin-right:0;
	}

	.area1block1 li.pccheck {
		margin-bottom:0;
	}

	.area1block2 .pcimagebox {
		display: block;
		margin:0 0 20px 40px;
		width:300px;
		float:right;
	}

	.area1block2 .ex {
		margin:0;
	}

	.area1block2 .spimagebox {
		display: none;
	}

	.top_area2 {
		background-size: 90px 90px;
	}

	.top_area2 .mlead {
		margin:0 0 50px;
		max-width:100%;
	}

	.top_area2 .mlead b {
		display: block;
		overflow: hidden;
		background: url('../images/area2lead.png?2024') no-repeat center top;
		background-size: 845px auto;
		padding: 90px 0 0;
		height: 0!important;
	}

	.top_area2 .route {
		margin:0 0 50px;
		padding:50px 0 0;
		height:530px;
		border-radius: 10px;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
	}

	.top_area2 .route p {
		width:665px;
		max-width:665px;
	}

	.top_area2 .timetable .ttbox {
		margin:0;
		width:490px;
		float:left;
	}

	.top_area2 .timetable .ttbox.day2 {
		float:right;
	}

	.top_area2 .timetable .ttbox th {
		display: table-cell;
		padding:10px;
	}

	.top_area2 .timetable .ttbox td {
		display: table-cell;
		padding:10px;
	}

	.spot_block {
		margin:0 0 70px;
	}

	.spot_block h3 {
		margin:0 0 45px;
	}

	.spot_block h3 b {
		width:280px;
		font-size:2.2rem;
	}

	.spotbox {
		margin:0 0 30px;
	}

	.spotbox .imagebox {
		width:450px;
		float:left;
	}

	.spotbox .spot_data {
		padding:25px 20px 0 30px;
		width:650px;
		float:right;
	}

	.spotbox .spot_data .time {
		font-size:1.6rem;
	}

	.spotbox .spot_data h4 {
		font-size:2.5rem;
	}

	.top_area4 {
		background-size: 90px 90px;
	}

	.classiccar_block {
		margin:0 0 50px;
	}

	.cblock_mtitle {
		margin:0 0 40px;
	}

	.cblock_mtitle .cname {
		line-height:45px;
		font-size:4.5rem;
	}

	.cblock_mtitle .lead {
		font-size:2.5rem;
	}

	.cblock_ex .pcimage_block {
		display: block;
		margin:0 0 20px 50px;
		width:450px;
		float:right;
	}

	.cblock_ex .pcimage_block .imagebox {
		margin:0 0 35px;
	}

	.cblock_ex .ex {
		margin:0;
	}

	.cblock_ex .ex p {
		margin:0 0 15px;
	}

	.cblock_ex .ex p:last-child {
		margin-bottom:0;
	}

	.cblock_ex .spimage_block {
		display: none;
	}

	.cblock_ex .imagebox:last-child {
		margin-bottom:0;
	}

	.area5block {
		margin:0 auto 45px;
		width:900px;
		font-size:1.6rem;
	}

	.area5block th {
		display: table-cell;
		padding:15px;
		width:200px;
		line-height: 1.8;
		border-bottom:1px solid #ccc;
	}

	.area5block td {
		display: table-cell;
		padding:15px;
		line-height: 1.8;
	}

	.top_area5 .ex {
		margin:0 0 40px;
		text-align: center;
	}

	.top_area5 .btn_block {
		text-align: center;
	}

	.top_area5 .btn_block p {
		display: inline-block;
		margin:0 20px;
		width:250px;
	}

	.pagetop {
		right:50px;
		bottom:50px;
		width:50px;
	}

	.pagetop a {
		padding: 50px 0 0;
		background-size: 22px 11px;
	}

	.flinks {
		margin:0 0 50px;
		padding:0;
	}

	.flinks ul {
		text-align: center;
		border:none;
	}

	.flinks li {
		display: inline-block;
		margin:0 15px;
		line-height:55px;
		border-bottom:none;
		background-color: transparent;
	}

	.flinks li a {
		display: inline-block;
		background: none;
		padding:0;
	}

	.sns {
		margin:0 0 30px;
	}

	.snsbox.tw,
	.snsbox.line {
		padding:4px 0 0;
	}

	.copyright {
		padding:0 0 50px;
	}
}

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

	/*
	=================================== */
	.op a:hover {
		opacity: 0.7;
		filter: alpha(opacity=70);
		-ms-filter: "alpha(opacity=70)";
		-moz-opacity: 0.7;
		-khtml-opacity: 0.7;
		zoom: 1;
	}

	.fade a {
		-webkit-transition: opacity 0.3s ease-in-out;
		-moz-transition: opacity 0.3s ease-in-out;
		-o-transition: opacity 0.3s ease-in-out;
		transition: opacity 0.3s ease-in-out;
	}

	.fade2 a {
		-webkit-transition: 0.3s;
		-moz-transition: 0.3s;
		-o-transition: 0.3s;
		transition: 0.3s;
	}
}
