@charset "utf-8";
/*
 top.css
*/
/* -----------------------------------------------
= fv
----------------------------------------------- */
.fv {
	position: relative;
	z-index: 2;
}
.fv .logo_tokyotokyo {
	position: absolute;
	top: 10px;
	right: 53px;
	z-index: 1;
	padding: 7px;
	background: #fff;
	border-radius: 5px;
}
.fv .logo_tokyotokyo img {
	width: 36px;
}
.fv .title {
	position: absolute;
	top: calc(270 / 750 * 100vw);
	left: calc(36 / 750 * 100vw);
	z-index: 1;
	color: #fff;
	font-family: bebas-neue-pro-semiexpanded, sans-serif;
	font-weight: 700;
}
.fv .title > span {
	display: block;
}
.fv .title > span.t1 {
	font-size: calc(64.54px / 2 * 1.2);
}
.fv .title > span.t2 {
	font-size: calc(124.23px / 2 * 1.2);
	line-height: .6;
}
.fv .title > span.t3 {
	font-size: calc(79.13px / 2 * 1.2);
}
@media print, screen and (min-width: 751px) {/* PC */
.fv {
	height: auto;
	margin-top: 40px;
}
.fv .logo_excitetokyo {
	position: absolute;
	top: 15px;
	left: 20px;
	z-index: 5;
}
.fv .logo_excitetokyo img {
	width: 113px;
}
.fv .logo_tokyotokyo {
	top: 15px;
	right: 20px;
	padding: 16px;
}
.fv .logo_tokyotokyo img {
	width: 72px;
}
.fv .title {
	top: 120px;
	left: 0;
	width: 100%;
}
.fv .title > span {
	max-width: 620px;
	margin: 0 auto;
}
.fv .title > span.t1 {
	font-size: 64.54px;
}
.fv .title > span.t2 {
	font-size: 124.23px;
}
.fv .title > span.t3 {
	font-size: 79.13px;
}
}/* @media */
/* -----------------------------------------------
= course_main
----------------------------------------------- */
.course_main {
	position: relative;
	background: #f3f5f6;
}
.course_main .img_slide img {
	width: 100%;
	height: min(480px, calc(480 / 750 * 100vw));
	object-fit: cover;
}
.course_main .img_slide .slick-dots {
	opacity: 0;
	pointer-events: none;
}
.course_main .set {
	position: absolute;
	top: min(260px, calc(260 / 750 * 100vw));
	left: 0;
	z-index: 1;
	width: 100%;
}
.course_main .set_in {
	position: relative;
}
.course_main .img_caption {
	display: none;
}
.course_main .bike {
	margin: 0 auto;
}
.course_main .map {
	position: absolute;
	top: calc(235 / 750 * 100vw);
	left: 0;
	z-index: -1;
	width: 100%;
	text-align: center;
}
.course_main .map img {
	width: min(389px, calc(389 / 750 * 100vw));
}
.course_main .mark {
	display: grid;
	place-content: center;
	position: absolute;
	top: calc(152 / 750 * 100vw);
	right: calc(20 / 750 * 100vw);
	width: calc(136 / 750 * 100vw);
	height: calc(136 / 750 * 100vw);
	background: url(../images/top/mark_bg.png) no-repeat 0 / 100% auto;
	font-size: calc(18 / 750 * 100vw);
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	line-height: 1.44;
	text-align: center;
}
@media print, screen and (max-width: 750px) {/* SP */
html.is-middle .course_main .mark {
	top: calc(149 / 750 * 100vw);
	right: calc(17 / 750 * 100vw);
	width: calc(136 / 750 * 100vw * 1.125);
	height: calc(136 / 750 * 100vw * 1.125);
	font-size: calc(18 / 750 * 100vw * 1.125);
}
html.is-large .course_main .mark {
	top: calc(140 / 750 * 100vw);
	right: calc(8 / 750 * 100vw);
	width: calc(136 / 750 * 100vw * 1.25);
	height: calc(136 / 750 * 100vw * 1.25);
	font-size: calc(18 / 750 * 100vw * 1.25);
}
}/* @media */
@media print, screen and (min-width: 751px) {/* PC */
.course_main .img_slide .slick-dots {
	opacity: 1;
	pointer-events: auto;
}
.course_main .img_slide .slick-dots li {
	width: 70px;
	height: 6px;
	background: #e6e3e3;
	border-radius: 3px;
	margin: 0 2px;
	cursor: pointer;
}
.course_main .img_slide .slick-dots li button {
	display: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	padding: 0;
	border: none;
	background-color: transparent;
}
.course_main .map {
	top: 265px;
}
.course_main .mark {
	top: 152px;
	right: 20px;
	width: 136px;
	height: 136px;
	background-size: 136px auto;
	font-size: 1.8rem;
}
html.is-middle .course_main .mark {
	top: 149px;
	right: 17px;
	width: 142px;
	height: 142px;
	background-size: 142px auto;
}
html.is-large .course_main .mark {
	top: 140px;
	right: 8px;
	width: 160px;
	height: 160px;
	background-size: 160px auto;
}
}/* @media */
@media print, screen and (min-width: 1300px) {/* widePC */
.course_main .img_caption {
	display: flex;
	align-items: center;
	position: absolute;
	top: 225px;
	right: 170px;
}
.course_main .img_caption img {
	margin-left: 20px;
}
}/* @media */
/* fv */
.fv .course_main .set {
	top: calc(560 / 750 * 100vw);
}
.fv .course_main .bike {
	width: min(430px, calc(430 / 750 * 100vw));
}
.fv .course_main .mark {
	color: #8fc9fb;
}
.fv .course_main .img_slide {
	padding-bottom: calc(200 / 750 * 100vw);
}
.fv .course_main .img_slide img {
	height: min(780px, calc(780 / 750 * 100vw));
}
.fv .course_main .img_slide .slick-dots li.slick-active {
	background: #6d8fe4;
}
@media print, screen and (min-width: 751px) {/* PC */
.fv .course_main .img_slide {
	padding-bottom: 220px;
}
.fv .course_main .img_slide img {
	height: 480px;
}
.fv .course_main .set {
	top: min(260px, calc(260 / 750 * 100vw));
}
}/* @media */
/* tokyo */
.course.tokyo .course_main .mark {
	color: #d596fd;
}
.course.tokyo .course_main .img_slide .slick-dots li.slick-active {
	background: #c061fc;
}
/* tama */
.course.tama .course_main .mark {
	color: #c8fd55;
}
.course.tama .course_main .img_slide .slick-dots li.slick-active {
	background: #a2e70e;
}
/* island */
.course.island .course_main .mark {
	color: #38fffd;
}
.course.island .course_main .img_slide .slick-dots li.slick-active {
	background: #1de9e7;
}
/* -----------------------------------------------
= subtitle
----------------------------------------------- */
.subtitle {
	position: relative;
	z-index: 1;
	margin: 0 10px 50px;
	text-align: center;
}
.subtitle .en {
	display: block;
	margin-bottom: 10px;
	font-size: 6rem;
	font-family: bebas-neue-pro-semiexpanded, sans-serif;
	font-weight: 700;
}
.subtitle .jp {
	display: block;
	font-size: 2.2rem;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	line-height: 1.45;
}
@media print, screen and (min-width: 751px) {/* PC */
.course .subtitle {
	margin-bottom: 90px;
}
}/* @media */
/* -----------------------------------------------
= intro
----------------------------------------------- */
.intro {
	padding: 60px 0 110px;
	background: #f3f5f6;
}
#anchor_course {
	padding-top: 60px;
}
.intro .movie {
	position: relative;
	z-index: 1;
	max-width: calc(580 / 750 * 100vw);
	margin: 0 auto 35px;
}
.intro .movie img {
	border-radius: 10px;
	transition: opacity .3s;
}
.intro .movie a:hover img {
	opacity: .7;
}
.intro .text {
	padding: 0 10px;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	text-align: center;
}
.intro .text01 {
	margin-bottom: 14px;
	font-size: 1.6rem;
	line-height: 2.4rem;
}
.intro .text02 {
	margin-bottom: 32px;
	font-size: 2.2rem;
	line-height: 3.2rem;
}
@media print, screen and (min-width: 751px) {/* PC */
.intro {
	padding: 75px 0 50px;
}
.intro .movie {
	max-width: 580px;
}
}/* @media */
/* -----------------------------------------------
= voice
----------------------------------------------- */
.voice {
	max-width: 1000px;
	margin: 0 auto;
	overflow: hidden;
}
.voice_slide {
	padding: 0 calc(40 / 750 * 100vw);
}
.voice_slide .slick-list {
	overflow: visible;
}
.voice_slide .slick-slide {
	margin: 0 min(15px, calc(15 / 750 * 100vw));
}
.voice_slide a {
	display: block;
	background: #fff;
	border-radius: 10px;
	text-align: center;
}
.voice_slide img {
	border-radius: 10px 10px 0 0;
}
.voice_slide .set {
	padding: min(20px, calc(20 / 750 * 100vw));
}
.voice_slide h3 {
	font-family: nitalago-ruika, sans-serif;
	font-size: 1.6rem;
	line-height: 2.4rem;
}
.voice_slide .icon {
	margin: 10px auto 0;
}
.voice_slide .icon.instagram {
	width: 30px;
	margin-top: 12px;
	margin-bottom: 13px;
}
.voice_slide .icon.youtube {
	width: 35px;
	margin-bottom: 10px;
}
.voice_slide .name {
	font-size: 1.4rem;
	line-height: 1.8rem;
	font-family: nitalago-ruika, sans-serif;
}
.voice_slide .more {
	position: relative;
	display: inline-block;
	margin-top: calc(15 / 750 * 100vw);
	padding: 0 20px;
	font-size: 2rem;
	font-family: bebas-neue-pro-semiexpanded, sans-serif;
	font-weight: 700;
	text-align: center;
}
.voice_slide .more::after {
	content: '';
	position: absolute;
	top: calc(50% - 7px);
	right: 0;
	width: 12px;
	height: 14px;
	background: #000;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	transition: right .3s;
}
.voice_slide a:hover .more::after {
	right: -2px;
}
.voice_slide .slick-arrow {
	top: min(195px, calc(195 / 750 * 100vw));
	z-index: 1;
	width: min(64px, calc(64 / 750 * 100vw));
	height: min(64px, calc(64 / 750 * 100vw));
	background: url(../images/top/voice_slide_arrow.png) no-repeat 50% / cover;
	transform: translate(0);
}
.voice_slide .slick-arrow::before {
	display: block;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 50%;
	opacity: 0;
	transition: opacity .3s;
}
.voice_slide .slick-arrow:hover::before {
	opacity: .3;
}
.voice_slide .slick-prev {
	left: auto;
	right: calc(50% + calc(290 / 750 * 100vw));
	transform: rotate(180deg);
}
.voice_slide .slick-next {
	right: auto;
	left: calc(50% + calc(290 / 750 * 100vw));
}
@media print, screen and (min-width: 751px) {/* PC */
.voice_slide {
	padding: 0 200px;
}
.voice_slide .slick-prev {
	right: calc(50% + 290px);
}
.voice_slide .slick-next {
	left: calc(50% + 290px);
}
}/* @media */
@media print, screen and (max-width: 1000px) and (min-width: 751px) {/* TABLET */
.voice_slide {
	padding: 0 calc(80 / 750 * 100vw);
}
}/* @media */
/* -----------------------------------------------
= map_list
----------------------------------------------- */
.map_list {
	padding: 0 10px;
	text-align: center;
}
.map_list ul {
	margin: 25px 0 0;
}
.map_list li {
	max-width: 308px;
	margin: 0 auto 20px;
}
.map_list li:nth-child(1) a {
	color: #d596fd;
}
.map_list li:nth-child(2) a {
	color: #c8fd55;
}
.map_list li:nth-child(3) a {
	color: #38fffd;
}
.map_list a {
	display: block;
	position: relative;
	padding: 5px 30px 5px 10px;
	background: #000;
	border-radius: 3em;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	font-size: 1.8rem;
	line-height: 1.3;
	transition: background .3s;
}
.map_list a:hover {
	background: #333;
}
.map_list a::after {
	content: '';
	position: absolute;
	top: calc(50% - 7px);
	right: 10px;
	width: 12px;
	height: 14px;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	transition: right .3s;
}
.map_list a:hover::after {
	right: 8px;
}
.map_list li:nth-child(1) a::after {
	background: #d596fd;
}
.map_list li:nth-child(2) a::after {
	background: #c8fd55;
}
.map_list li:nth-child(3) a::after {
	background: #38fffd;
}
@media print, screen and (min-width: 751px) {/* PC */
.map_list {
	position: relative;
	max-width: 440px;
	margin: 0 auto;
}
.map_list li {
	position: absolute;
	width: 190px;
	margin: 0;
}
.map_list li:nth-child(1) {
	top: 80px;
	right: 0;
}
.map_list li:nth-child(2) {
	top: 115px;
	left: 0;
}
.map_list li:nth-child(3) {
	top: 200px;
	right: 80px;
}
}/* @media */

/* -----------------------------------------------
= cource
----------------------------------------------- */
.course {
	padding-bottom: 100px;
	background: #f3f5f6;
}
.course .subtitle {
	margin-top: calc(290 / 750 * 100vw);
}
.course.tokyo .course_main .bike {
	width: min(243px, calc(243 / 750 * 100vw));
	padding-right: calc(370 / 750 * 100vw);
}
.course.tama .course_main .bike {
	width: min(232px, calc(232 / 750 * 100vw));
	padding-right: calc(360 / 750 * 100vw);
}
.course.island .course_main .bike {
	width: min(234px, calc(234 / 750 * 100vw));
	padding-right: calc(360 / 750 * 100vw);
}
@media print, screen and (min-width: 751px) {/* PC */
.course .subtitle {
	margin-top: 165px;
}
.course.tokyo .course_main .bike {
	width: min(810px, 98%);
	padding-right: 0;
}
.course.tama .course_main .bike {
	width: min(796px, 98%);
	padding-right: 0;
}
.course.island .course_main .bike {
	width: min(810px, 98%);
	padding-right: 0;
}
}/* @media */
/* -----------------------------------------------
= course_detail
----------------------------------------------- */
.course_detail {
	display: grid;
	grid-template-columns: repeat(2, min(270px, calc(320 / 750 * 100vw)));
	place-content: start center;
	gap: min(40px, calc(40 / 750 * 100vw));
}
.course_detail .item {
	background: #fff;
	border-radius: 10px;
}
.course_detail a {
	display: block;
	transition: opacity .3s;
}
.course_detail a:hover {
	opacity: .8;
}
.course_detail .img a {
	position: relative;
}
.course_detail .img a::after {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: min(50px, calc(64 / 750 * 100vw));
	height: min(50px, calc(64 / 750 * 100vw));
	transform: translate(-50%,-50%);
}
.course.tokyo .course_detail .img a::after {
	background: url(../images/shared/tokyo_slide_arrow.png) no-repeat 50% / 100% auto;
}
.course.tama .course_detail .img a::after {
	background: url(../images/shared/tama_slide_arrow.png) no-repeat 50% / 100% auto;
}
.course.island .course_detail .img a::after {
	background: url(../images/shared/island_slide_arrow.png) no-repeat 50% / 100% auto;
}
.course_detail .img img {
	width: 100%;
	border-radius: 10px 10px 0 0;
}
.course_detail .item > a {
	overflow: hidden;
	padding-bottom: min(20px, calc(20 / 750 * 100vw));
}
.course_detail .item .map {
	padding: 0 min(20px, calc(20 / 750 * 100vw));
}
.course_detail .item .map img {
	width: 100%;
}
.course_detail .title {
	margin: 13px 0;
	padding: 0 min(20px, calc(20 / 750 * 100vw));
	font-size: 1.6rem;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	line-height: 2.4rem;
	text-align: center;
}
.course_detail .data {
	display: flex;
	margin: 18px 0 10px;
	padding: 0 min(20px, calc(20 / 750 * 100vw));
	text-align: center;
}
.course_detail .data p {
	width: 100%;
	font-size: 1.6rem;
	font-family: bebas-neue-pro-semiexpanded, sans-serif;
	font-weight: 700;
	line-height: 2rem;
}
.course_detail .data p span {
	display: block;
	font-size: 2.2rem;
}
.course_detail .data p img {
	display: block;
	margin: 3px auto 0;
}
.course_detail .text {
	margin-bottom: 15px;
	padding: 0 min(20px, calc(20 / 750 * 100vw));
	font-size: 1.4rem;
	line-height: 2.3rem;
}
.course_detail .logo {
	float: left;
	margin-left: min(20px, calc(20 / 750 * 100vw));
	padding: 3px 5px 5px 0;
}
.course_detail .logo img {
	width: auto;
	height: min(14px, calc(24 / 750 * 100vw));
}
.course_detail .more {
	display: inline-block;
	position: relative;
	float: right;
	margin-right: min(20px, calc(20 / 750 * 100vw));
	padding-right: 20px;
	font-size: 2rem;
	font-family: bebas-neue-pro-semiexpanded, sans-serif;
	font-weight: 700;
}
.course_detail .more::after {
	content: '';
	position: absolute;
	top: calc(50% - 7px);
	right: 0;
	width: 12px;
	height: 14px;
	background: #000;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	transition: right .3s;
}
.course_detail a:hover .more::after {
	right: -2px;
}
@media print, screen and (min-width: 930px) {/* PC */
.course_detail {
	grid-template-columns: repeat(3, 270px);
}
.course.tama .course_detail {
	grid-template-columns: repeat(2, 270px);
}
}/* @media */

/* -----------------------------------------------
= apri
----------------------------------------------- */
.apri {
	padding: 0 10px 100px;
}
.apri .img.type01 {
	margin-top: calc(-56 / 750 * 100vw);
	margin-right: calc(10 / 750 * 100vw);
	margin-left: calc(190 / 750 * 100vw);
	text-align: center;
}
.apri .apri_logo {
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 60px 0 50px;
}
.apri .apri_logo span {
	display: block;
	margin: 0 min(33px, calc(33 / 750 * 100vw));
}
.apri .apri_logo img {
	width: auto;
	height: 32px;
}
.apri .title {
	margin-bottom: 40px;
	font-size: 2.2rem;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	line-height: 3.2rem;
	text-align: center;
}
.apri .text {
	max-width: 600px;
	margin: 0 auto 40px;
	padding: 0 10px;
	font-size: 1.6rem;
	line-height: 2.4rem;
}
.apri .em {
	color: #ff0101;
}
.apri .btn {
	max-width: 520px;
	margin: 0 auto 45px;
}
.apri .btn a {
	display: block;
	position: relative;
	padding: 2.5rem 5rem 2.5rem 2rem;
	color: #8fc9fb;
	background: #000;
	border-radius: 3em;
	font-size: 2.4rem;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	line-height: 2.8rem;
	text-align: center;
}
.apri .btn a::after {
	content: '';
	position: absolute;
	top: calc(50% - 9.5px);
	right: 25px;
	width: 17px;
	height: 19px;
	background: #8fc9fb;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	transition: right .3s;
}
.apri .btn a:hover::after {
	right: 20px;
}
.apri .img_loop {
	display: flex;
	margin: 0 -10px;
	overflow: hidden;
}
.apri .img_loop .set {
	display: flex;
}
.apri .img_loop .set:first-child {
	animation: infinityScroll01 100s -50s infinite linear;
}
.apri .img_loop .set:last-child {
	animation: infinityScroll02 100s infinite linear;
}
.apri .img_loop span {
	display: block;
	width: 400px;
	margin: 0 10px;
}
.apri .img_loop img {
	border-radius: 10px;
}
@keyframes infinityScroll01 {
	from {
		transform: translateX(2100px);
	}
	to {
		transform: translateX(-2100px);
	}
}
@keyframes infinityScroll02 {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-4200px);
	}
}
.apri .img.type02 {
	position: relative;
	max-width: 608px;
	margin: 0 auto;
	text-align: center;
}
.apri .img.type02 img {
	position: relative;
	z-index: 1;
}
.apri .img.type02 .mark {
	display: grid;
	place-content: center;
	position: absolute;
	top: calc(-25px / 750 * 100vw);
	top: -25px;
	right: 0;
	width: calc(250 / 750 * 100vw);
	height: calc(250 / 750 * 100vw);
	color: #8fc9fb;
	background: url(../images/top/mark_bg.png) no-repeat 0 / 100% auto;
	font-size: calc(22 / 750 * 100vw);
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	line-height: 1.44;
}
@media print, screen and (max-width: 750px) {/* SP */
html.is-middle .apri .img.type02 .mark {
	top: -31px;
	width: calc(250 / 750 * 100vw * 1.125);
	height: calc(250 / 750 * 100vw * 1.125);
	font-size: calc(22 / 750 * 100vw * 1.125);
}
html.is-large .apri .img.type02 .mark {
	top: -43px;
	width: calc(250 / 750 * 100vw * 1.25);
	height: calc(250 / 750 * 100vw * 1.25);
	font-size: calc(22 / 750 * 100vw * 1.25);
}
.apri .img.type02 .mark .asterisk {
	font-size: calc(10 / 750 * 100vw);
}
html.is-middle .apri .img.type02 .mark .asterisk {
	font-size: calc(10 / 750 * 100vw * 1.125);
}
html.is-large .apri .img.type02 .mark .asterisk {
	font-size: calc(10 / 750 * 100vw * 1.25);
}
}/* @media */
@media print, screen and (min-width: 751px) {/* PC */
.apri .img.type01 {
	margin-top: -56px;
	margin-right: 0;
	margin-left: 100px;
}
.apri .text {
	font-size: 1.4rem;
}
.apri .img.type02 .mark {
	top: -25px;
	right: -6px;
	width: 194px;
	height: 194px;
	background-size: 194px auto;
	font-size: 1.8rem;
}
html.is-middle .apri .img.type02 .mark {
	top: -31px;
	right: -6px;
	width: 206px;
	height: 206px;
	background-size: 206px auto;
}
html.is-large .apri .img.type02 .mark {
	top: -43px;
	right: -18px;
	width: 230px;
	height: 230px;
	background-size: 230px auto;
}
.apri .img.type02 .mark .asterisk {
	font-size: 1rem;
}
}/* @media */
/* -----------------------------------------------
= howto(modal)
----------------------------------------------- */
.howto .rental_title {
	position: relative;
	padding: 12px 55px 12px 20px;
	background: #8ccdfc;
	border-radius: 10px;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	font-size: 1.6rem;
	line-height: 1.3;
}
.howto .rental_title::after {
	content: '';
	position: absolute;
	top: calc(50% - 13px);
	right: 20px;
	width: 42px;
	height: 26px;
}
.howto .rental_title.bike::after {
	background: url(../images/top/course_rental01.png) no-repeat 50% / 100% auto;
}
.howto .rental_title.car::after {
	background: url(../images/top/course_rental02.png) no-repeat 50% / 100% auto;
}
.howto .step {
	padding-bottom: 50px;
}
.howto .step + .step {
	position: relative;
}
.howto .step + .step::before {
	content: '';
	position: absolute;
	top: -56px;
	left: 50%;
	width: 57px;
	height: 27px;
	background: #000;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
	transform: translateX(-50%);
}
.howto dl,
.howto p {
	margin-bottom: 25px;
	font-size: 1.4rem;
	line-height: 2.3rem;
}
.howto .about {
	margin-bottom: 25px;
}
.howto .about dt {
	margin-top: 25px;
	font-weight: bold;
}
.howto .step_num {
	color: #8ccdfc;
	background: #000;
	border-radius: 3em;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 2.6rem;
	text-align: center;
}
.howto .trial {
	text-align: center;
}
.howto .trial dt {
	margin-bottom: 10px;
	font-size: 1.4rem;
	line-height: 2.6rem;
}
.howto .trial dd ul {
	display: flex;
	justify-content: center;
	margin: 20px 0 45px;
}
.howto .trial dd li {
	margin: 0 10px;
}
.howto .item {
	margin-bottom: 30px;
}
.howto .item p {
	flex: 1;
}
.howto .item .img {
	width: 27rem;
}
.howto .img {
	text-align: center;
}
.howto .box {
	margin: 30px 0;
	padding: min(40px, calc(40 / 750 * 100vw)) min(50px, calc(50 / 750 * 100vw)) min(10px, calc(10 / 750 * 100vw));
	background: #f3f5f6;
	border-radius: 10px;
}
.howto .box p a {
	color: #3ea8f4;
}
.howto .box p a:hover {
	text-decoration: underline;
}
.howto .card_wrap {
	margin: 0 -10px 30px;
}
.howto .card {
	margin: 0 10px 20px;
}
.howto .card a {
	display: block;
	background: #fff;
	border-radius: 10px;
	text-align: center;
}
.howto .card img {
	width: 100%;
	border-radius: 10px 10px 0 0;
}
.howto .card .set {
	padding: min(20px, calc(20 / 750 * 100vw));
}
.howto .card h3 {
	font-family: nitalago-ruika, sans-serif;
	font-size: 1.6rem;
	line-height: 2.4rem;
}
.howto .card .icon {
	width: 35px;
	margin: 10px auto;
}
.howto .card .logo img {
	width: auto;
	height: 18px;
}
.howto .card .more {
	position: relative;
	display: inline-block;
	padding: 0 20px;
	font-size: 2rem;
	font-family: bebas-neue-pro-semiexpanded, sans-serif;
	font-weight: 700;
	text-align: center;
}
.howto .card .more::after {
	content: '';
	position: absolute;
	top: calc(50% - 7px);
	right: 0;
	width: 12px;
	height: 14px;
	background: #000;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	transition: right .3s;
}
.howto .card a:hover .more::after {
	right: -2px;
}
.howto .img.last {
	width: min(353px, calc(353 / 750 * 100vw));
	margin: 0 auto;
	padding-left: min(100px, calc(100 / 750 * 100vw));
}
@media print, screen and (min-width: 751px) {/* PC */
.howto .item {
	display: flex;
}
.howto .card_wrap {
	display: flex;
}
.howto .card {
	width: 100%;
	margin: 0 10px;
}
}/* @media */

/* -----------------------------------------------
= info
----------------------------------------------- */
.info {
	padding: 60px 0 100px;
	background: #f2f2f3;
}
.info .title {
	margin-bottom: 30px;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	text-align: center;
}
.info .title .t1 {
	display: block;
	margin-bottom: 20px;
	font-size: 1.6rem;
}
.info .title .t2 {
	display: block;
	font-size: 2.2rem;
}
.info .title_link {
	margin: 70px 0 30px;
	font-size: 1.6rem;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	line-height: 2.4rem;
	text-align: center;
}
.info_slide_wrap {
	max-width: 900px;
	margin: 0 auto;
	padding: 0 calc(40 / 750 * 100vw);
	overflow: hidden;
}
.info_slide .slick-list {
	overflow: visible;
}
.info_slide .slick-slide {
	margin: 0 min(15px, calc(15 / 750 * 100vw));
}
.info_slide .item a {
	display: block;
	background: #fff;
	border-radius: 10px;
	transition: opacity .3s;
}
.info_slide .item a:hover {
	opacity: .8;
}
.info_slide img {
	width: 100%;
	border-radius: 10px 10px 0 0;
}
.info_slide .set {
	padding: min(20px, calc(20 / 750 * 100vw));
	overflow: hidden;
}
.info_slide .subtitle {
	margin-bottom: min(40px, calc(40 / 750 * 100vw));
	font-family: nitalago-ruika, sans-serif;
	font-size: 1.6rem;
	line-height: 2.4rem;
}
.info_slide p {
	font-size: 1.4rem;
	line-height: 2.3rem;
}
.info_slide .logo {
	float: left;
	padding: 0 0 5px;
}
.info_slide .logo img {
	border-radius: 0;
}
.info_slide .more {
	position: relative;
	padding-right: 20px;
	float: right;
	font-size: 2rem;
	font-family: bebas-neue-pro-semiexpanded, sans-serif;
	font-weight: 700;
	text-align: right;
}
.info_slide .more::after {
	content: '';
	position: absolute;
	top: 3px;
	right: 0;
	width: 12px;
	height: 14px;
	background: #000;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	transition: right .3s;
}
.info_slide a:hover .more::after {
	right: -2px;
}
.info_slide .slick-arrow {
	top: calc(124 / 750 * 100vw);
	z-index: 1;
	width: calc(64 / 750 * 100vw);
	height: calc(64 / 750 * 100vw);
	background: url(../images/top/info_slide_arrow.png) no-repeat 50% / cover;
	transform: translate(0);
}
.info_slide .slick-arrow::before {
	display: block;
	content: '';
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #fff;
	border-radius: 50%;
	opacity: 0;
	transition: opacity .3s;
}
.info_slide .slick-arrow:hover::before {
	opacity: .3;
}
.info_slide .slick-prev {
	left: calc(20 / 750 * 100vw);
	transform: rotate(180deg);
}
.info_slide .slick-next {
	right: calc(20 / 750 * 100vw);
}
/* -----------------------------------------------
= spot_content
----------------------------------------------- */
.spot_content img {
	border-radius: 10px;
}
.spot_content .caption {
	margin: 5px 0 0;
	font-size: 10px;
	line-height: 1.3;
	text-align: right;
}
.spot_content .caption a {
	text-decoration: underline;
}
.spot_content .caption a:hover {
	text-decoration: none;
}
.spot_content .spot_title {
	margin: 35px 0 0;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	font-size: 1.6rem;
	line-height: 2.4rem;
	text-align: center;
}
.spot_content .spot_text {
	margin: 28px 0 0;
	font-size: 1.4rem;
	line-height: 2.3rem;
}
.spot_content dl.spot_text {
	margin: 30px 0 0;
}
.spot_content .spot_text.last,
.spot_content .spot_link.last {
	margin-bottom: 60px;
}
.spot_content .spot_text dt {
	margin-bottom: 5px;
}
.spot_content .spot_text dd .spot_link {
	margin: 30px 0 0;
}
.spot_content .spot_text span {
	font-weight: 700;
}
.spot_content .spot_link {
	margin: 35px 0 0;
	font-size: 1.4rem;
	line-height: 2.3rem;
}
.spot_content .spot_link.nomargin {
	margin-top: 0;
}
.spot_content .spot_link a {
	color: #3ea8f4;
}
.spot_content .spot_link a:hover {
	text-decoration: underline;
}
.spot_content .spot_img {
	position: absolute;
	right: 70px;
	bottom: 0;
}
.spot_content .spot_link + .rental_title {
	margin: 35px 0 0;
}
.spot_content .rental_title {
	position: relative;
	padding: 12px 55px 12px 20px;
	background: #8ccdfc;
	border-radius: 10px;
	font-family: nitalago-ruika, sans-serif;
	font-weight: 100;
	font-size: 1.6rem;
	line-height: 1.3;
}
.spot_content .rental_title::after {
	content: '';
	position: absolute;
	top: calc(50% - 13px);
	right: 20px;
	width: 42px;
	height: 26px;
}
.spot_content .rental_title.bike::after {
	background: url(../images/top/course_rental01.png) no-repeat 50% / 100% auto;
}
.spot_content .rental_title.car::after {
	background: url(../images/top/course_rental02.png) no-repeat 50% / 100% auto;
}
.spot_content .rental_subtitle {
	margin-top: 28px;
	padding: 6px 0;
	color: #8ccdfc;
	background: #000;
	border-radius: 3em;
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}
.spot_content .spot_link + .rental_subtitle {
	margin-top: 45px;
}
@media print, screen and (min-width: 751px) {/* PC */
.spot_content dl.spot_text {
	display: flex;
}
.spot_content dl.spot_text dt {
	width: 7em;
	margin: 0 1em 0 0;
}
.spot_content dl.spot_text dd {
	flex: 1;
}
}/* @media */

/* -----------------------------------------------
= modal
----------------------------------------------- */
.modal-open {
	overflow: hidden;
}
.modal {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 500;
	width: 100%;
	height: 100%;
	min-height: 100vh;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}
.modal-backdrop {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 490;
	width: 100vw;
	height: 100%;
	min-height: 100vh;
	background-color: #000;
	opacity: 0.8;
}
.modal.type01 .modal_content {
	position: relative;
	padding: 120px 30px;
}
.modal.type01 .modal_btn_close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 26px;
}
.modal.type02 .modal_content {
	position: relative;
	margin: 50px 20px;
	padding: 60px 30px;
	background: #fff;
	border-radius: 10px;
}
.modal.type02 .modal_btn_close {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 20px;
}
.modal .embed iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}
@media print, screen and (max-width: 820px) and (min-width: 700px) {/* TABLET */
.modal.type02 .modal_content {
	margin: 50px 20px;
	padding: 70px 80px;
}
}/* @media */
@media print, screen and (min-width: 751px) {/* PC */
.modal.type01 .modal_content {
	max-width: 860px;
	margin: 0 auto;
	padding: 100px 20px;
}
.modal.type01 .modal_btn_close {
	top: 40px;
	right: 60px;
	width: 37px;
}
}/* @media */
@media print, screen and (min-width: 800px) {/* PC */
.modal.type02 .modal_content {
	max-width: 580px;
	margin: 50px auto;
	padding: 70px 80px;
}
.modal.type02 .modal_btn_close {
	top: 20px;
	right: 20px;
	width: 20px;
}
}/* @media */

