@charset "utf-8";
/*PCSP共通設定*/
@import url('https://fonts.googleapis.com/css?family=Sawarabi+Mincho&display=swap');
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP');
#wrapper {
	font-family: 'Noto Sans JP', sans-serif;
}
section:nth-of-type(odd) {
	background-color: /*#FFF*/#FCF5EE;
}
section:nth-of-type(even) {
	background-color: /*#FCF5EE*/#FFF;
}
img {
	image-rendering: -webkit-optimize-contrast;
}
a:hover img {
	opacity: 0.8;
	filter: progid:DXImageTransform.Microsoft.Alpha(Enabled=1, Style=0, Opacity=80);
}
.textLeft {
	text-align: left;
	font-size: 123.1%;
}
.textCenter {
	text-align: center;
	font-size: 123.1%;
}
.textRight {
	text-align: right;
	font-size: 123.1%;
}
.red {
	color: #FF0000;
}
/*759px以下*/
@media screen and (max-width: 759.9px) {
	#wrapper {
		line-height: 1.4;
	}
	.spnone {
		display: none !important;
	}
	/* CSS */
	#dirPathBlock, #anchorLinkBlock {
		font-size: 10px;
		margin: 1% 1% 0 1%;
	}
	#dirPathBlock p, #anchorLinkBlock a {
		font-size: 12px;
	}
	.spnone {
		display: none !important;
	}
	.inner {
		width: 94%;
		margin: 0 auto;
		padding: 3%;
	}
	.titlePc {
		display: none !important;
	}
	.titleSp {
		width: 100% !important;
		text-align: center;
	}
	.titleSp img {
		width: 100%;
		vertical-align: bottom;
	}
	*, *:before, *:after {
		box-sizing: border-box;
	}
	h1 {
		font-size: 12px;
		margin: 0 1%;
	}
	h2 {
		padding: 0.5rem 1rem;
		color: #fff;
		background-image: -webkit-linear-gradient(left, #CF4E26 0%, #C3360A 100%);
		background-image: linear-gradient(to right, #CF4E26 0%, #C3360A 100%);
		text-align: center;
		font-size: 153.9%;
		font-weight: bold;
	}
	h3 {
		position: relative;
		padding: 1rem 0 0.5rem;
		margin-bottom: 10px;
		text-align: center;
		font-size: 153.9%;
		font-weight: bold;
	}
	h3:before {
		position: absolute;
		bottom: -1px;
		left: calc(50% - 30px);
		width: 60px;
		height: 4px;
		content: '';
		border-radius: 3px;
		background: #D5372B;
	}
	h4 {
		text-align: center;
		font-size: 153.9%;
		font-weight: bold;
		margin: 5% 0 3%;
		line-height: 1.6;
	}
	h4 span {
		background: linear-gradient(transparent 60%, #ffff66 0%);
	}
	a:hover img {
		opacity: 0.8;
		filter: progid:DXImageTransform.Microsoft.Alpha(Enabled=1, Style=0, Opacity=80);
	}
	#anchorLinkBlock p.pageBackBlock {
		font-size: 11px !important;
		padding: 1%;
	}
	p.text {
		font-size: 123.1%;
		font-weight: bold;
		text-align: center;
		margin: 5% 0 2% 0;
	}
	p.text2 {
		font-size: 108%;
		text-align: center;
		margin: 2% 0;
	}
	.attention {
		width: 96%;
		margin: 2% 2% 5% 2%;
		border: 2px #F00 solid;
		padding: 2%;
		background: #FFF;
		font-size: 123.1%
	}
	.attention img {
		font-size: 120%;
		width: 100%;
		height: auto;
		padding: 0;
		margin-right: 1%;
		vertical-align: middle;
	}
	.attention .op img {
		max-width: 36px;
		height: auto;
		padding: 0;
		margin-right: 1%;
		vertical-align: middle;
	}
	.attention strong {
		font-size: 120%;
		line-height: 1.5;
		text-align: center;
		font-weight: bold;
	}
	.attention .text01 {
		font-size: 110%;
		font-weight: bold;
		text-align: center;
	}
	.attention ul {
		line-height: 1.4;
		margin-top: 2%;
	}
	.attention ul li {
		line-height: 1.4;
		padding-bottom: 8px;
		text-indent: -1em;
		margin-left: 1em;
		text-align: left;
	}
	.attention ul li:before {
		content: '◆';
	}
	.attention ul li.kome, .attention ul li.komered {
		line-height: 1.4;
		padding-bottom: 8px;
		text-indent: -1em;
		margin-left: 1em;
	}
	.attention ul li.kome:before {
		content: '※';
	}
	.attention ul li.komered:before {
		content: '※';
		color: #FF0000;
	}
	.borderBox {
		font-size: 123.1%;
		width: 96%;
		margin: 2% 2% 5% 2%;
		border: 2px #003366 solid;
		padding: 2%;
		background: #FFF;
	}
	.borderBox strong {
		font-size: 120%;
		line-height: 1.5;
		text-align: center;
		font-weight: bold;
	}
	.unit {
		width: 94%;
		margin: 0 3% 3%;
		font-size: 123.1%;
		text-align: center;
		background: #FFF;
		padding: 4% 2%;
		margin-top: 5%;
		border: 2px solid #EEE;
		box-shadow: 0px 0px 10px 0px rgba(10, 10, 10, 0.1), 0px 1px 0px 0px rgba(0, 0, 0, 0.02);
	}
	.unit .catch {
		font-size: 130%;
		font-weight: bold;
	}
	.unit ul {
		margin: 5% 0;
	}
	.unit ul li {
		list-style: none;
		margin-top: 10px;
		padding-bottom: 10px;
		border-bottom: 1px solid;
		border-image: linear-gradient(to right, #FFFFFF 0%, #cccccc 50%, #FFFFFF 100%);
		border-image-slice: 1;
	}
	.unit ul li strong {
		font-size: 130%;
		font-weight: bold;
	}
	.unit ul li:nth-child(1) strong {
		color: #f6ad3c;
	}
	.unit ul li:nth-child(2) strong {
		color: #8fc31f;
	}
	.unit ul li:nth-child(3) strong {
		color: #955e29;
	}
	.unit ul li:nth-child(4) strong {
		color: #0099bd;
	}
	.unit ul li:nth-child(5) strong {
		color: #e35449;
	}
	.textLeft {
		font-size: 123.1%;
		text-align: left;
	}
	.textRight {
		font-size: 123.1%;
		text-align: right;
	}
	.model img {
		width: 100%;
		height: auto;
		margin-top: 1%;
	}
	/* =========================================================
◆navigation
========================================================= */
	.topNavi {
		width: 100% !important;
		background: #003366;
		text-align: center;
	}
	.topNavi ul {
		display: flex;
		flex-wrap: wrap;
	}
	.topNavi ul li {
		font-size: 123.1%;
		font-weight: bold;
		width: 50%;
		padding: 2% 0;
		border-left: 1px dashed rgba(255, 255, 255, 0.5);
		border-bottom: 1px dashed rgba(255, 255, 255, 0.5);
		box-sizing: border-box;
	}
	.topNavi ul li:nth-child(n+5) { /*3番目以降*/
		border-bottom: none;
	}
	.topNavi ul li:nth-child(odd) { /*奇数*/
		border-left: none;
	}
	/*.topNavi ul li:nth-child(5) {
	width: 99%;
}*/
	.topNavi ul li a {
		color: #fff;
	}
	.topNavi ul li span {
		font-size: 80%;
		font-weight: normal;
		line-height: 1.5;
	}
	/* =========================================================
◆新着情報
========================================================= */
	.whatsnew {
		margin: 0;
		padding: 0;
		overflow-y: scroll;
		height: 150px;
	}
	.whatsnew dl {
		width: 100%;
		font-size: 123.1%;
		padding: 2% 0;
		border-bottom: 1px solid #ccc;
	}
	.whatsnew dt {
		padding-bottom: 1%;
	}
	.whatsnew dl:last-child {
		border: none;
	}
	/* =========================================================
◆slide
========================================================= */
	.slide-wrap {
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
		display: flex;
		margin: 0 auto;
		width: 100%;
		overflow-x: scroll;
	}
	.slide-box {
		margin-right: 3%;
		flex: 0 0 280px;
		text-align: center;
	}
	.slide-box img {
		width: 100%;
	}
	.slide-box p {
		text-align: left;
		font-size: 123.1%;
		padding-top: 2%;
	}
	.slide-box p span {
		font-weight: bold;
	}
	.slide-box p span img {
		max-width: 36px;
		height: auto;
		padding: 0;
		margin-right: 1%;
		vertical-align: middle;
	}
	.slide-box p.point {
		background: #FFFFD9;
		padding: 2%;
		margin-top: 1%;
	}
	.slide-box p.point strong {
		font-weight: bold;
	}
	.slide-box p.point span {
		color: #F00;
	}
	.slide-box p.detail {
		line-height: 1.5;
		font-size: 123.1%;
	}
	.slide-box .detail dl {
		font-size: 123.1%;
		line-height: 1.5;
		padding: 2% 0;
		display: flex;
		border-bottom: 1px dotted #333;
		text-align: left;
	}
	.slide-box .detail dl span {
		font-size: 80%;
	}
	.slide-box .detail dt {
		width: 88px;
		font-weight: bold;
	}
	.slide-box .detail dd {
		width: calc(100% - 88px);
	}
	.slide-box .detail dl:last-child {
		border-bottom: none;
	}
	.slide-box p.heed {
		font-size: 123.1%;
		background: #FFF;
		margin: 3% 0;
	}
	.slide-box2 {
		margin-right: 3%;
		flex: 0 0 80%;
		text-align: center;
	}
	.slide-box2 img {
		width: 100%;
	}
	.slide-box2 p {
		text-align: left;
		font-size: 123.1%;
		padding-top: 2%;
	}
	.slide-box2 p span {
		font-weight: bold;
	}
	.slide-box2 p span img {
		max-width: 36px;
		height: auto;
		padding: 0;
		margin-right: 1%;
		vertical-align: middle;
	}
	.slide-box2 p.point {
		background: #FFFFD9;
		padding: 2%;
		margin-top: 1%;
	}
	.slide-box2 p.point2 {
		background: #FFF;
		padding: 2%;
		margin-top: 1%;
	}
	.slide-box2 p.point span {
		color: #F00;
	}
	.slide-box2 p.detail {
		line-height: 1.5;
		font-size: 123.1%;
	}
	.slide-box2 .detail dl {
		font-size: 123.1%;
		line-height: 1.5;
		padding: 2% 0;
		border-bottom: 1px dotted #333;
		text-align: left;
	}
	.slide-box2 .detail dl span {
		font-size: 80%;
	}
	.slide-box2 .detail dt {
		clear: left;
		float: left;
		width: 30%;
		font-weight: bold;
	}
	.slide-box2 .detail dd {
		margin-left: 30%;
	}
	.slide-box2 .detail dl:last-child {
		border-bottom: none;
	}
	.slide-box2 p.heed {
		font-size: 123.1%;
		background: #FFF;
		margin: 3% 0;
	}
	/* =========================================================
◆list横並び
========================================================= */
	.itemList2 {
		width: 100%;
		padding: 2% 0;
		display: inline-block;
		flex-wrap: wrap;
	}
	.itemList2 div {
		text-align: center;
		width: 90%;
		margin: 0 auto;
		padding: 1%;
	}
	.itemList2 div img {
		width: 100%;
		margin: 10px auto;
	}
	.itemList2 div dt {
		width: 90%;
		font-size: 123.1%;
		text-align: center;
	}
	.itemList2 div dt p {
		display: inline-block;
		text-align: left;
	}
	.itemList3 > div {
		float: left;
		width: 100%;
		padding: 2% 0;
	}
	.itemList3 > div .Btn {
		overflow: hidden;
		width: 94%;
		margin: 0 3%;
		border-radius: 4px;
		font-size: 123.1%;
		font-weight: bold;
		display: block;
		position: relative;
		text-align: center;
		color: #333;
		text-decoration: none;
	}
	.itemList3 > div .Btn a {
		display: block;
		position: relative;
		text-align: center;
		background: #F60;
		color: #fff;
		text-decoration: none;
		padding: 5%;
	}
	.itemList3 > div .Btn a:hover {
		background: #F30; /* マウスオーバーカラー */
	}
	.itemList3 > div .Btn a:before { /*白いひし型 */
		display: block;
		content: "";
		position: absolute;
		transform: rotate(45deg);
		top: 50%;
		left: 15px;
		width: 16px;
		height: 16px;
		margin-top: -8px;
		background: #fff;
	}
	.itemList3 > div .Btn a:after { /*バックグラウンドと同じ色のひし型をずらして「before要素」を隠す */
		display: block;
		content: "";
		position: absolute;
		transform: rotate(45deg);
		top: 50%;
		left: 10px;
		width: 16px;
		height: 16px;
		margin-top: -8px;
		background: #F60;
	}
	.itemList3 > div .Btn a:hover:after { /*「after要素」のマウスオーバー（カラーを合わせる） */
		background: #F30;
	}
	.itemList3 > div .Btn_gray {
		overflow: hidden;
		width: 94%;
		margin: 0 3%;
		border-radius: 4px;
		font-size: 123.1%;
		font-weight: bold;
		display: block;
		position: relative;
		text-align: center;
		color: #fff;
		text-decoration: none;
		background: #666;
		padding: 5% 0;
	}
	.itemList3 > div .Btn_gray:before { /*白いひし型 */
		display: block;
		content: "";
		position: absolute;
		transform: rotate(45deg);
		top: 50%;
		left: 15px;
		width: 16px;
		height: 16px;
		margin-top: -8px;
		background: #fff;
	}
	.itemList3 > div .Btn_gray:after { /*バックグラウンドと同じ色のひし型をずらして「before要素」を隠す */
		display: block;
		content: "";
		position: absolute;
		transform: rotate(45deg);
		top: 50%;
		left: 10px;
		width: 16px;
		height: 16px;
		margin-top: -8px;
		background: #666;
	}
	.itemList4 {
		width: 100%;
		padding: 2% 0;
		display: flex;
		flex-wrap: wrap;
	}
	.itemList4 > div {
		float: left;
		width: 50%;
		padding: 1%;
		margin-top: 2%;
	}
	.itemList4 > div img {
		width: 100%;
	}
	.itemList4 > div dt {
		font-size: 123.1%;
		text-align: center;
	}
	.itemList4 > div dt.kagawa {
		background: #009900;
		color: #FFFFFF;
		padding: 2% 0;
	}
	.itemList4 > div dt.tokushima {
		background: #0066cc;
		color: #FFFFFF;
		padding: 2% 0;
	}
	.itemList4 > div dt.ehime {
		background: #ff9900;
		color: #FFFFFF;
		padding: 2% 0;
	}
	.itemList4 > div dt.kochi {
		background: #f00303;
		color: #FFFFFF;
		padding: 2% 0;
	}
	.itemList4 > div dd {
		font-size: 123.1%;
		text-align: left;
		padding: 2% 4% 4%;
		background: #FFF;
	}
	/* =========================================================
◆観光列車
========================================================= */
	.aboutBox, .aboutBox02 {
		padding-bottom: 5%;
	}
	.aboutBox .photo {
		text-align: center;
		width: 100% !important;
		margin: 0 auto;
		padding-bottom: 2%;
	}
	.aboutBox .photo img {
		width: 100%;
	}
	.aboutBox02 .photo {
		text-align: center;
		width: 80% !important;
		margin: 0 auto;
		padding-bottom: 2%;
	}
	.aboutBox .detail, .aboutBox02 .detail {
		font-size: 123.1%;
	}
	.aboutBox .detail .Btn02 {
		color: #fff;
		width: 100%;
		margin: 8% 0 2%;
		text-align: center;
	}
	.aboutBox .detail .Btn02 a {
		color: #fff;
		padding: 5% 20%;
		background: #F60;
		border-radius: 5px;
	}
	.trainOption {
		width: 100%;
		font-size: 123.1%;
		text-align: center;
		border: solid 2px #0f3568;
		background-color: #FFF;
		padding: 4%;
	}
	.trainOption strong {
		font-size: 120%;
		font-weight: bold;
		line-height: 1.4;
		text-align: center;
	}
	/*.trainOption .box{
     width: 100%;
     background-color: #DFF5F5;
     margin: 10px auto;
	 padding: 10px;
}*/
	.trainOption img {
		width: 100%;
		margin-top: 3%;
	}
	.trainOption .text {
		text-align: left;
		line-height: 1.4;
		margin-top: 3%;
	}
	/* =========================================================
◆slider
========================================================= */
	.slider {
		margin-top: 5%;
	}
	.slider img {
		max-width: 100%;
		width: 100%;
		height: auto;
		padding: 0 1%;
	}
	.slider div p {
		font-size: 123.1%;
		padding: 1%;
		text-align: left;
	}
	.slider div p img {
		float: left;
		max-width: 22px;
		height: auto;
		padding: 0;
		margin-right: 1%;
	}
	.slider div p .lead {
		font-size: 110%;
	}
	.slide-arrow {
		position: absolute;
		top: 50%;
		margin-top: -15px;
	}
	.prev-arrow {
		left: -40px;
		width: 0;
		height: 0;
		border-left: 0 solid transparent;
		border-right: 15px solid #113463;
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.next-arrow {
		right: -40px;
		width: 0;
		height: 0;
		border-right: 0 solid transparent;
		border-left: 15px solid #113463;
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.slick-slide {
		opacity: 0.5;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.slick-active {
		opacity: 0.5;
	}
	.slick-center {
		opacity: 1 !important;
	}
	.slide_selector {
		z-index: 1 !important;
		position: relative;
		overflow: hidden;
	}
	/* =========================================================
◆テーブル
========================================================= */
	.oplist {
		white-space: nowrap; /* セル内にあるテキストの折り返しを禁止 */
		display: block;
		overflow-y: scroll;
		/*height: calc(100vh/2);*/
	}
	table {
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
		font-size: 123.1%;
		line-height: 1.2;
		border: solid 1px #000;
		margin-top: 2%;
		background-color: #FFF;
	}
	table th, table td {
		padding: 10px 5px;
		text-align: center;
		vertical-align: middle;
		border: solid 1px #000;
	}
	table thead th {
		background-color: #0099ff;
		color: #FFF;
		vertical-align: middle;
		position: sticky;
		top: 0;
		z-index: 1;
	}
	table th span, table td span {
		font-size: 80%;
	}
	table tr:nth-child(odd) {
		background-color: #eee;
	}
	ul.guideList {
		font-size: 123.1%;
		line-height: 1.4;
		margin: 1% 0 8%;
	}
	ul.guideList li {
		line-height: 1.4;
		padding-bottom: 2px;
		text-indent: -1em;
		margin-left: 1em;
	}
	ul.guideList li:before {
		content: '◆';
	}
	ul.guideList li.kome {
		line-height: 1.4;
		padding-bottom: 2px;
		text-indent: -1em;
		margin-left: 1em;
	}
	ul.guideList li.kome:before {
		content: '※';
	}
	ul.guideList li.kome01 {
		line-height: 1.4;
		padding-bottom: 2px;
		text-indent: -3em;
		margin-left: 3em;
	}
	ul.guideList li.kome01:before {
		content: '※１）';
	}
	ul.guideList li.kome02 {
		line-height: 1.4;
		padding-bottom: 2px;
		text-indent: -3em;
		margin-left: 3em;
	}
	ul.guideList li.kome02:before {
		content: '※２）';
	}
	ul.guideList li.kome03 {
		line-height: 1.4;
		padding-bottom: 2px;
		text-indent: -3em;
		margin-left: 3em;
	}
	ul.guideList li.kome03:before {
		content: '※３）';
	}
	/* =========================================================
◆アコーディオン
========================================================= */
	.cp_box *, .cp_box *:before, .cp_box *:after {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.cp_box {
		width: auto;
		margin: 1em auto;
	}
	.cp_box label {
		position: relative;
		display: block;
		width: 100%;
		padding: 3%;
		cursor: pointer;
		transition: all 0.3s;
		text-align: center;
		color: #FFF;
		background: #4F009E;
		border-radius: 4px;
		font-size: 123.1%;
		font-weight: bold;
	}
	.cp_box label span {
		font-size: 70%;
	}
	.cp_box label:hover {
		transition: all 0.3s;
		color: #ffffff;
		background: #380071;
	}
	.cp_box label::after {
		font-family: 'FontAwesome';
		content: ' \f067';
		color: #FFF;
	}
	.cp_box label:hover::after {
		color: #FFF;
	}
	.cp_box input:checked ~ label::after {
		font-family: 'FontAwesome';
		content: ' \f068';
		color: #FFF;
	}
	.cp_box input:checked ~ label:hover::after {
		color: #FFF;
	}
	.cp_box input {
		display: none;
	}
	.cp_box .cp_container {
		overflow: hidden;
		height: 0;
		margin-top: -1px;
		interpolate-size: allow-keywords;
		transition: 0.5s allow-discrete;
	}
	/* 続きを読むを押すと表示されるテキストの高さ */
	.cp_box input:checked ~ div.cp_container {
		height: auto;
	}
	.cp_boxOP *, .cp_boxOP *:before, .cp_boxOP *:after {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.cp_boxOP {
		width: auto;
		margin: 0 auto;
	}
	.cp_boxOP label {
		position: relative;
		display: block;
		width: 100%;
		padding: 3%;
		cursor: pointer;
		transition: all 0.3s;
		text-align: center;
		color: #FFF;
		background: #4F009E;
		border-radius: 4px;
		font-size: 108%;
		font-weight: bold;
	}
	.cp_boxOP label span {
		font-size: 70%;
	}
	.cp_boxOP label:hover {
		transition: all 0.3s;
		color: #ffffff;
		background: #380071;
	}
	.cp_boxOP label::after {
		font-family: 'FontAwesome';
		content: ' \f067';
		color: #FFF;
	}
	.cp_boxOP label:hover::after {
		color: #FFF;
	}
	.cp_boxOP input:checked ~ label::after {
		font-family: 'FontAwesome';
		content: ' \f068';
		color: #FFF;
	}
	.cp_boxOP input:checked ~ label:hover::after {
		color: #FFF;
	}
	.cp_boxOP input {
		display: none;
	}
	.cp_boxOP .cp_container {
		overflow: hidden;
		height: 0;
		margin-top: -1px;
		interpolate-size: allow-keywords;
		transition: 0.5s allow-discrete;
	}
	/* 続きを読むを押すと表示されるテキストの高さ */
	.cp_boxOP input:checked ~ div.cp_container {
		height: auto;
	}
	.cp_boxOP .detail {
		margin: 1em auto;
	}
	/* =========================================================
◆ボタン
========================================================= */
	.Btn {
		color: #fff;
		width: 94%;
		margin: 3% 3% 5%;
		text-align: center;
		background: #F60;
		border-radius: 5px;
		padding: 6% 3%;
		position: relative; /* 追記 */
		font-size: 123.1%;
		font-weight: bold;
	}
	.Btn a {
		color: #fff;
	}
	.Btn span {
		font-size: 80%;
		font-weight: normal;
	}
	.Btn::after {
		content: "＞";
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	.Btn_blue {
		color: #fff;
		width: 94%;
		margin: 3% 3% 5%;
		text-align: center;
		background: #2b4a83;
		border-radius: 5px;
		padding: 6% 3%;
		position: relative; /* 追記 */
		font-size: 123.1%;
		font-weight: bold;
	}
	.Btn_blue a {
		color: #fff;
	}
	.Btn_blue span {
		font-size: 80%;
		font-weight: normal;
	}
	.Btn_blue::after {
		content: "＞";
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	.Btn_purple {
		color: #fff;
		width: 94%;
		margin: 3% 3% 5%;
		text-align: center;
		background: #4F009E;
		border-radius: 5px;
		padding: 3%;
		position: relative; /* 追記 */
		font-size: 123.1%;
		font-weight: bold;
	}
	.Btn_purple a {
		color: #fff;
	}
	.Btn_purple span {
		font-size: 80%;
		font-weight: normal;
	}
	.Btn_purple::after {
		content: "＞";
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	.Btn_gray {
		color: #fff;
		width: 94%;
		margin: 3% 3% 5%;
		text-align: center;
		background: #666;
		border-radius: 5px;
		padding: 6% 3%;
		position: relative; /* 追記 */
		font-size: 123.1%;
		font-weight: bold;
	}
	.Btn_gray::after {
		content: "＞";
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	/* =========================================================
◆レンタカー
========================================================= */
	#rentalcar img {
		width: 1000px;
	}
	#rentalcar figure {
		width: 100%;
		margin: 20px auto;
		overflow-x: scroll;
	}
}
/*760px以上*/
@media screen and (min-width: 760px), print {
	/* CSS */
	#wrapper {
		line-height: 1.231;
	}
	#dirPathBlock, h1, .iframe_end-content_gadget, #anchorLinkBlock {
		width: 100%;
		max-width: 970px;
		min-width: 760px;
		margin: auto;
	}
	.pcnone {
		display: none !important;
	}
	/*panlist&back*/
	#dirPathBlock, #anchorLinkBlock {
		width: 100%;
		margin: 10px auto;
		display: block;
		font-size: 12px;
	}
	#dirPathBlock p, #anchorLinkBlock a {
		font-size: 12px;
	}
	.inner {
		max-width: 950px;
		margin: 0 auto;
		padding: 20px 10px;
	}
	.titlePc {
		width: 100% !important;
		text-align: center;
		background: url(../images/bg_title2025.jpg) repeat center 0;
		position: relative;
		height: 500px;
	}
	.titlePc img {
		max-width: 950px;
		width: 100%;
		height: 500px;
		object-fit: cover;
	}
	.titleSp {
		display: none !important;
	}
	h1 {
		font-size: 14px;
		width: auto;
		max-width: 970px;
		margin: 0 auto 5px;
	}
	h2 {
		padding: 1rem 2rem;
		color: #fff;
		background-image: -webkit-linear-gradient(left, #CF4E26 0%, #C3360A 100%);
		background-image: -o-linear-gradient(left, #CF4E26 0%, #C3360A 100%);
		background-image: linear-gradient(to right, #CF4E26 0%, #C3360A 100%);
		text-align: center;
		font-size: 220%;
		font-weight: bold;
	}
	h3 {
		position: relative;
		padding: 1.5rem 0 0.5rem;
		margin-bottom: 10px;
		text-align: center;
		font-size: 220%;
		font-weight: bold;
	}
	h3:before {
		position: absolute;
		bottom: -5px;
		left: calc(50% - 30px);
		width: 60px;
		height: 5px;
		content: '';
		border-radius: 3px;
		background: #D5372B;
	}
	h4 {
		text-align: center;
		font-size: 167%;
		font-weight: bold;
		line-height: 1.6;
	}
	h4 span {
		background: linear-gradient(transparent 60%, #ffff66 0%);
	}
	a:hover img {
		opacity: 0.8;
		filter: progid:DXImageTransform.Microsoft.Alpha(Enabled=1, Style=0, Opacity=80);
	}
	p.text {
		font-size: 153.9%;
		line-height: 1.5;
		font-weight: bold;
		text-align: center;
		margin: 30px 0 5px 0;
	}
	p.text2 {
		font-size: 123.1%;
		line-height: 1.5;
		text-align: center;
		margin: 5px 0;
	}
	.attention {
		width: 100%;
		font-size: 123.1%;
		line-height: 1.5;
		margin: 10px 0 30px;
		padding: 20px;
		border: 2px #F00 solid;
		text-align: left;
		background: #FFF;
	}
	.attention img {
		width: 100%;
		height: auto;
		display: inline-block;
		vertical-align: middle;
		margin-right: 3px;
	}
	.attention .op img {
		width: 40px;
		height: auto;
		display: inline-block;
		vertical-align: middle;
		margin-right: 3px;
	}
	.attention strong {
		font-size: 150%;
		font-weight: bold;
		line-height: 1.5;
		text-align: center;
	}
	.attention .text01 {
		font-size: 153.9%;
		font-weight: bold;
		text-align: center;
	}
	.attention ul {
		padding: 0;
		line-height: 1.5;
	}
	.attention ul li {
		list-style: none;
		line-height: 1.5;
		text-indent: -1em;
		margin-left: 1em;
		text-align: left;
	}
	.attention ul li:before {
		content: '◆';
	}
	.attention ul li.kome, .attention ul.komered {
		list-style: none;
		line-height: 1.5;
		text-indent: -1em;
		margin-left: 1em;
	}
	.attention ul li.kome:before {
		content: '※';
	}
	.attention ul li.komered:before {
		content: '※';
		color: #FF0000;
	}
	.borderBox {
		font-size: 123.1%;
		line-height: 1.5;
		margin-bottom: 30px;
		padding: 20px;
		border: 2px #003366 solid;
		text-align: left;
		background: #FFF;
	}
	.borderBox strong {
		font-size: 150%;
		font-weight: bold;
		line-height: 1.5;
		text-align: center;
	}
	.unit {
		max-width: 950px;
		margin: 20px auto;
		font-size: 123.1%;
		text-align: center;
		background: #FFF;
		padding: 30px 20px;
		line-height: 1.5;
		border: 3px solid #EEE;
		box-shadow: 0px 0px 10px 0px rgba(10, 10, 10, 0.1), 0px 1px 0px 0px rgba(0, 0, 0, 0.02);
	}
	.unit .catch {
		font-size: 180%;
		font-weight: bold;
	}
	.unit ul li {
		list-style: none;
		font-size: 120%;
		margin-top: 10px;
		padding-bottom: 10px;
		border-bottom: 1px solid;
		border-image: linear-gradient(to right, #FFFFFF 0%, #cccccc 50%, #FFFFFF 100%);
		border-image-slice: 1;
	}
	.unit ul li strong {
		font-size: 130%;
		font-weight: bold;
	}
	.unit ul li:nth-child(1) strong {
		color: #f6ad3c;
	}
	.unit ul li:nth-child(2) strong {
		color: #8fc31f;
	}
	.unit ul li:nth-child(3) strong {
		color: #955e29;
	}
	.unit ul li:nth-child(4) strong {
		color: #0099bd;
	}
	.unit ul li:nth-child(5) strong {
		color: #e35449;
	}
	.textLeft {
		font-size: 123.1%;
		text-align: left;
	}
	.model img {
		width: 950px;
		height: auto;
		margin-top: 20px;
	}
	/* =========================================================
◆navigation
========================================================= */
	.topNavi {
		width: 100% !important;
		background: #003366;
		text-align: center;
	}
	.topNavi ul {
		max-width: 1000px;
		margin: 0 auto;
		padding: 10px 0;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
	.topNavi ul li {
		list-style: none;
		vertical-align: middle;
		border-left: 1px dashed rgba(255, 255, 255, 0.5);
		font-size: 153.9%;
		font-weight: bold;
		margin: 0;
		padding: 10px;
		text-align: center;
		/*width: 20%;*/
		width: 16.666666%;
	}
	.topNavi ul li:nth-child(4), .topNavi ul li:last-child { /*4番目と最後*/
		border-right: 1px dashed rgba(255, 255, 255, 0.5);
	}
	.topNavi ul li a {
		color: #fff;
	}
	.topNavi ul li span {
		font-size: 80%;
		font-weight: normal;
		line-height: 1.5;
	}
	/* =========================================================
◆新着情報
========================================================= */
	.whatsnew {
		margin: 0;
		padding: 0;
		overflow-y: scroll;
		height: 150px;
	}
	.whatsnew dl {
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		font-size: 123.1%;
		padding: 2% 0;
		border-bottom: 1px solid #ccc;
	}
	.whatsnew dt {
		width: 150px;
		padding-bottom: 1%;
	}
	.whatsnew dd {
		width: 700px;
		padding-bottom: 1%;
	}
	.whatsnew dl:last-child {
		border: none;
	}
	/*◆slider*/
	.slider img {
		max-width: 100%;
		width: 100%;
		height: auto;
		padding: 0 1%;
	}
	.slider div p {
		font-size: 123.1%;
		padding: 2% 1%;
		text-align: left;
	}
	.slide-arrow {
		position: absolute;
		top: 50%;
		margin-top: -15px;
	}
	.prev-arrow {
		left: -40px;
		width: 0;
		height: 0;
		border-left: 0 solid transparent;
		border-right: 15px solid #113463;
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.next-arrow {
		right: -40px;
		width: 0;
		height: 0;
		border-right: 0 solid transparent;
		border-left: 15px solid #113463;
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.slick-slide {
		opacity: 0.5;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.slick-active {
		opacity: 0.5;
	}
	.slick-center {
		opacity: 1 !important;
	}
	.slide_selector {
		z-index: 1 !important;
		position: relative;
		overflow: hidden;
	}
	/* =========================================================
◆slide
========================================================= */
	.slide-wrap {
		width: 100%;
		margin: 0;
		padding: 0;
		display: flex;
		flex-wrap: wrap;
		margin-top: 20px;
	}
	.slide-box {
		width: 33.33333%;
		padding: 10px;
	}
	.slide-box:nth-child(4n) {
		margin-right: 0;
	}
	.slide-box:nth-child(-n+4) {
		margin-top: 0;
	}
	.slide-box img {
		display: block;
		height: auto;
		width: 100%;
	}
	.slide-box p {
		font-size: 123.1%;
		margin-top: 10px;
	}
	.slide-box p span {
		font-weight: bold;
	}
	.slide-box p span img {
		width: 40px;
		height: auto;
		display: inline-block;
		vertical-align: middle;
		margin-right: 3px;
	}
	.slide-box p.point {
		background: #FFFFD9;
		padding: 10px;
		margin-top: 10px;
		line-height: 1.4;
	}
	.slide-box p.point strong {
		font-weight: bold;
	}
	.slide-box p.point span {
		color: #F00;
	}
	.slide-box .detail dl {
		font-size: 123.1%;
		line-height: 1.4;
		display: flex;
		padding: 6px 0;
		border-bottom: 1px dotted #333;
	}
	.slide-box .detail dl span {
		font-size: 80%;
	}
	.slide-box .detail dt {
		width: 88px;
		font-weight: bold;
	}
	.slide-box .detail dd {
		width: calc(100% - 88px);
	}
	.slide-box .detail dl:last-child {
		border-bottom: none;
	}
	.slide-box p.heed {
		font-size: 123.1%;
		background: #FFF;
		margin: 5px 0;
	}
	.slide-box2 {
		width: 33.33333%;
		padding: 10px;
	}
	.slide-box2:nth-child(4n) {
		margin-right: 0;
	}
	.slide-box2:nth-child(-n+4) {
		margin-top: 0;
	}
	.slide-box2 img {
		display: block;
		height: auto;
		width: 100%;
	}
	.slide-box2 p {
		font-size: 100%;
		margin-top: 10px;
	}
	.slide-box2 p span {
		font-weight: bold;
	}
	.slide-box2 p span img {
		width: 40px;
		height: auto;
		display: inline-block;
		vertical-align: middle;
		margin-right: 3px;
	}
	.slide-box2 p.point {
		background: #FFFFD9;
		padding: 10px;
		margin-top: 10px;
		line-height: 1.4;
	}
	.slide-box2 p.point span {
		color: #F00;
	}
	.slide-box2 .detail dl {
		font-size: 123.1%;
		line-height: 1.4;
		margin: 0;
		padding: 6px 0;
		border-bottom: 1px dotted #333;
	}
	.slide-box2 .detail dl span {
		font-size: 80%;
	}
	.slide-box2 .detail dt {
		clear: left;
		float: left;
		width: 30%;
		font-weight: bold;
	}
	.slide-box2 .detail dd {
		margin-left: 30%;
	}
	.slide-box2 .detail dl:last-child {
		border-bottom: none;
	}
	.slide-box2 p.heed {
		font-size: 123.1%;
		background: #FFF;
		margin: 5px 0;
	}
	/* =========================================================
◆list横並び
========================================================= */
	*, *:before, *:after {
		box-sizing: border-box;
	}
	.itemList2 {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}
	.itemList2 div {
		text-align: center;
		width: 50%;
		padding: 10px;
	}
	.itemList2 div img {
		width: 80%;
	}
	.itemList2 div dt {
		text-align: center;
		margin: 5px auto;
		width: 80%;
		font-size: 138.5%;
	}
	.itemList2 div dt p {
		display: inline-block;
		text-align: left;
	}
	.itemList3 {
		float: left;
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}
	.itemList3 > div {
		width: 33.33333%;
		padding: 10px;
	}
	.itemList3 > div .Btn {
		overflow: hidden;
		width: 100%;
		height: 80px;
		margin: 0 auto;
		border-radius: 4px;
		font-size: 153.9%;
		font-weight: bold;
		margin-bottom: 30px;
	}
	.itemList3 > div .Btn a {
		display: block;
		position: relative;
		text-align: center;
		background: #F60;
		color: #fff;
		line-height: 80px;
		text-decoration: none;
	}
	.itemList3 > div .Btn a:hover {
		background: #F30; /* マウスオーバーカラー */
	}
	.itemList3 > div .Btn a:before { /*白いひし型 */
		display: block;
		content: "";
		position: absolute;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 50%;
		left: 15px;
		width: 16px;
		height: 16px;
		margin-top: -8px;
		background: #fff;
	}
	.itemList3 > div .Btn a:after { /*バックグラウンドと同じ色のひし型をずらして「before要素」を隠す */
		display: block;
		content: "";
		position: absolute;
		transform: rotate(45deg);
		top: 50%;
		left: 10px;
		width: 16px;
		height: 16px;
		margin-top: -8px;
		background: #F60;
	}
	.itemList3 > div .Btn a:hover:after { /*「after要素」のマウスオーバー（カラーを合わせる） */
		background: #F30;
	}
	.itemList3 > div .Btn_gray {
		overflow: hidden;
		width: 100%;
		height: 80px;
		margin: 0 auto;
		border-radius: 4px;
		font-size: 153.9%;
		font-weight: bold;
		display: block;
		position: relative;
		text-align: center;
		background: #666;
		color: #FFF;
		line-height: 80px;
		text-decoration: none;
	}
	.itemList3 > div .Btn_gray:before { /*白いひし型 */
		display: block;
		content: "";
		position: absolute;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		top: 50%;
		left: 15px;
		width: 16px;
		height: 16px;
		margin-top: -8px;
		background: #fff;
	}
	.itemList3 > div .Btn_gray:after { /*バックグラウンドと同じ色のひし型をずらして「before要素」を隠す */
		display: block;
		content: "";
		position: absolute;
		transform: rotate(45deg);
		top: 50%;
		left: 10px;
		width: 16px;
		height: 16px;
		margin-top: -8px;
		background: #666;
	}
	.itemList4 {
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}
	.itemList4 > div {
		width: 25%;
		padding: 10px;
	}
	.itemList4 > div img {
		width: 100%;
	}
	.itemList4 > div dt {
		font-size: 123.1%;
		text-align: center;
	}
	.itemList4 > div dt.kagawa {
		background: #009900;
		color: #FFFFFF;
		padding: 10px 0;
	}
	.itemList4 > div dt.tokushima {
		background: #0066cc;
		color: #FFFFFF;
		padding: 10px 0;
	}
	.itemList4 > div dt.ehime {
		background: #ff9900;
		color: #FFFFFF;
		padding: 10px 0;
	}
	.itemList4 > div dt.kochi {
		background: #f00303;
		color: #FFFFFF;
		padding: 10px 0;
	}
	.itemList4 > div dd {
		margin: 0; /* これがないとずれる */
		font-size: 123.1%;
		line-height: 1.5;
		text-align: left;
		padding: 5px 8px 8px;
		background: #FFFFFF;
	}
	/* =========================================================
◆観光列車
========================================================= */
	.aboutBox, .aboutBox02 {
		margin: 20px 0;
	}
	.aboutBox .photo, .aboutBox02 .photo {
		float: left;
		margin-right: 10px;
	}
	.aboutBox .photo img {
		width: 500px;
		height: auto;
	}
	.aboutBox02 .photo img {
		width: 300px;
		height: auto;
	}
	.aboutBox .detail, .aboutBox02 .detail {
		width: 100%;
		font-size: 123.1%;
		line-height: 1.5;
	}
	.aboutBox02 .detail img {
		margin-top: 30px;
	}
	.aboutBox .detail .Btn02 {
		color: #fff;
		width: 100%;
		margin: 20px auto 5px;
		position: relative;
		box-sizing: border-box;
		font-size: 123.1%;
		font-weight: bold;
	}
	.aboutBox .detail .Btn02 a {
		color: #fff;
		padding: 10px 50px;
		background: #F60;
		border-radius: 5px;
	}
	.trainOption {
		width: 100%;
		font-size: 123.1%;
		text-align: center;
		border: solid 2px #0f3568;
		background-color: #FFF;
		margin: 20px auto;
		padding: 20px;
	}
	.trainOption strong {
		font-size: 120%;
		font-weight: bold;
		line-height: 1.5;
		text-align: center;
	}
	/*.trainOption .box {
     width: 100%;
     background-color: #DFF5F5;
     margin: 10px auto;
	 padding: 10px;
}*/
	.trainOption img {
		width: 100%;
		margin-top: 10px;
	}
	.trainOption .text {
		text-align: left;
		line-height: 1.4;
		margin-top: 10px;
	}
	/* =========================================================
◆slider
========================================================= */
	.slider {
		margin-top: 20px;
	}
	.slider img {
		max-width: 100%;
		width: 100%;
		height: auto;
		padding: 0 10px;
	}
	.slider div p {
		font-size: 123.1%;
		padding: 5px 10px 10px;
		text-align: left;
		line-height: 1.5;
	}
	.slider div p img {
		float: left;
		max-width: 32px;
		height: auto;
		padding: 0;
		margin-right: 4px;
	}
	.slider div p .lead {
		font-size: 140%;
	}
	.slide-arrow {
		position: absolute;
		top: 60%;
		margin-top: -120px; /*矢印の高さ*/
		cursor: pointer;
	}
	.prev-arrow {
		left: -40px;
		width: 0;
		height: 0;
		border-left: 0 solid transparent;
		border-right: 15px solid #113463;
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.next-arrow {
		right: -40px;
		width: 0;
		height: 0;
		border-right: 0 solid transparent;
		border-left: 15px solid #113463;
		border-top: 10px solid transparent;
		border-bottom: 10px solid transparent;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.slick-slide {
		opacity: 0.5;
		background: rgba(255, 255, 255, 0); /*背景白を透過*/
	}
	.slick-active {
		opacity: 0.5;
	}
	.slick-center {
		opacity: 1 !important;
	}
	.slide_selector {
		z-index: 1 !important;
		position: relative;
		overflow: hidden;
	}
	/* =========================================================
◆テーブル
========================================================= */
	.oplist {
		white-space: nowrap; /* セル内にあるテキストの折り返しを禁止 */
		display: block;
		/*overflow-y: scroll;
  height: calc(100vh/2);*/
	}
	table {
		width: 100%;
		border-collapse: collapse;
		border-spacing: 0;
		font-size: 123.1%;
		border: solid 1px #000;
		margin-bottom: -10px;
		margin-top: 5px;
		background-color: #FFF;
	}
	table th, table td {
		padding: 10px 0;
		text-align: center;
		border: solid 1px #000;
	}
	table thead th {
		background-color: #0099ff;
		color: #FFF;
		vertical-align: middle;
		/*position: sticky;
  top: 0;
  z-index: 1;*/
	}
	table th span, table td span {
		font-size: 80%;
	}
	table tr:nth-child(odd) {
		background-color: #eee
	}
	ul.guideList {
		padding: 0;
		font-size: 123.1%;
		line-height: 1.4;
		margin-bottom: 10px;
	}
	ul.guideList li {
		list-style: none;
		line-height: 1.4;
		padding-bottom: 8px;
		text-indent: -1em;
		margin-left: 1em;
	}
	ul.guideList li:before {
		content: '◆';
	}
	ul.guideList li.kome {
		list-style: none;
		line-height: 1.4;
		padding-bottom: 8px;
		text-indent: -1em;
		margin-left: 1em;
	}
	ul.guideList li.kome:before {
		content: '※';
	}
	ul.guideList li.kome01 {
		list-style: none;
		line-height: 1.4;
		padding-bottom: 2px;
		text-indent: -3em;
		margin-left: 3em;
	}
	ul.guideList li.kome01:before {
		content: '※１）';
	}
	ul.guideList li.kome02 {
		list-style: none;
		line-height: 1.4;
		padding-bottom: 2px;
		text-indent: -3em;
		margin-left: 3em;
	}
	ul.guideList li.kome02:before {
		content: '※２）';
	}
	ul.guideList li.kome03 {
		list-style: none;
		line-height: 1.4;
		padding-bottom: 2px;
		text-indent: -3em;
		margin-left: 3em;
	}
	ul.guideList li.kome03:before {
		content: '※３）';
	}
	/* =========================================================
◆アコーディオン
========================================================= */
	.cp_box *, .cp_box *:before, .cp_box *:after {
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.cp_box {
		width: auto;
		margin: 0.5em auto 2em;
	}
	.cp_box label {
		position: relative;
		display: block;
		width: 100%;
		padding: 10px;
		cursor: pointer;
		transition: all 0.3s;
		text-align: center;
		color: #FFF;
		background: #4F009E;
		border-radius: 0.2em;
		font-size: 123.1%;
	}
	.cp_box label span {
		font-size: 70%;
	}
	.cp_box label:hover {
		transition: all 0.3s;
		color: #ffffff;
		background: #380071;
	}
	.cp_box label::after {
		font-family: 'FontAwesome';
		content: ' \f067';
		color: #FFF;
	}
	.cp_box label:hover::after {
		color: #FFF;
	}
	.cp_box input:checked ~ label::after {
		font-family: 'FontAwesome';
		content: ' \f068';
		color: #FFF;
	}
	.cp_box input:checked ~ label:hover::after {
		color: #FFF;
	}
	.cp_box input {
		display: none;
	}
	.cp_box .cp_container {
		overflow: hidden;
		height: 0;
		margin-top: -1px;
		interpolate-size: allow-keywords;
		transition: 0.5s allow-discrete;
	}
	/* 続きを読むを押すと表示されるテキストの高さ */
	.cp_box input:checked ~ div.cp_container {
		height: auto;
	}
	.cp_boxOP {
		width: auto;
		margin: 0.5em auto;
	}
	.cp_boxOP label {
		position: relative;
		display: block;
		width: 100%;
		padding: 10px;
		cursor: pointer;
		transition: all 0.3s;
		text-align: center;
		color: #FFF;
		background: #4F009E;
		border-radius: 0.2em;
		font-size: 123.1%;
	}
	.cp_boxOP label span {
		font-size: 70%;
	}
	.cp_boxOP label:hover {
		transition: all 0.3s;
		color: #ffffff;
		background: #380071;
	}
	.cp_boxOP label::after {
		font-family: 'FontAwesome';
		content: ' \f067';
		color: #FFF;
	}
	.cp_boxOP label:hover::after {
		color: #FFF;
	}
	.cp_boxOP input:checked ~ label::after {
		font-family: 'FontAwesome';
		content: ' \f068';
		color: #FFF;
	}
	.cp_boxOP input:checked ~ label:hover::after {
		color: #FFF;
	}
	.cp_boxOP input {
		display: none;
	}
	.cp_boxOP .cp_container {
		overflow: hidden;
		height: 0;
		margin-top: -1px;
		interpolate-size: allow-keywords;
		transition: 0.5s allow-discrete;
	}
	/* 続きを読むを押すと表示されるテキストの高さ */
	.cp_boxOP input:checked ~ div.cp_container {
		height: auto;
	}
	.cp_boxOP .detail {
		margin-top: 10px;
	}
	/* =========================================================
◆ボタン
========================================================= */
	.Btn {
		color: #fff;
		width: 70%;
		margin: 10px auto 20px;
		text-align: center;
		background: #F60;
		border-radius: 5px;
		padding: 20px 30px;
		position: relative; /* 追記 */
		font-size: 153.9%;
		font-weight: bold;
	}
	.Btn a {
		color: #fff;
	}
	.Btn span {
		font-size: 75%;
		font-weight: normal;
	}
	.Btn::after {
		content: "＞";
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	.Btn_blue {
		color: #fff;
		width: 80%;
		margin: 10px auto;
		text-align: center;
		background: #2b4a83;
		border-radius: 5px;
		padding: 20px 30px;
		position: relative; /* 追記 */
		font-size: 153.9%;
		font-weight: bold;
	}
	.Btn_blue a {
		color: #fff;
	}
	.Btn_blue span {
		font-size: 75%;
		font-weight: normal;
	}
	.Btn_blue::after {
		content: "＞";
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	.Btn_purple {
		color: #fff;
		width: 80%;
		margin: 10px auto;
		text-align: center;
		background: #4F009E;
		border-radius: 5px;
		padding: 15px 30px;
		position: relative;
		font-size: 140.9%;
		font-weight: bold;
	}
	.Btn_purple a {
		color: #fff;
	}
	.Btn_purple span {
		font-size: 80%;
		font-weight: normal;
	}
	.Btn_purple::after {
		content: "＞";
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	.Btn_gray {
		color: #fff;
		width: 80%;
		margin: 10px auto 0;
		text-align: center;
		background: #666;
		border-radius: 5px;
		padding: 20px 30px;
		position: relative; /* 追記 */
		font-size: 153.9%;
		font-weight: bold;
	}
	.Btn_gray::after {
		content: "＞";
		position: absolute;
		top: 50%;
		left: 10px;
		transform: translateY(-50%);
	}
	/* =========================================================
◆おすすめプラン
========================================================= */
	.Recommend {
		margin-top: 40px;
	}
	.note {
		font-size: 123.1%;
		line-height: 1.4;
		width: 950px;
		margin: 10px 0;
		padding: 10px;
		text-align: left;
		background: #FFEAE2;
		border-radius: 5px;
	}
	/* =========================================================
◆レンタカー
========================================================= */
	#rentalcar img {
		width: 100%;
	}
	#rentalcar figure {
		margin: 20px auto;
	}
}
