@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap');


html {
	/* firefox　スクロールバー対策 */
}

body{
}
/*	link
------------------------------------------------ */
.enjoyRJ a{
	-webkit-transition: 0.3s ease-in-out;
	-moz-tranPerformersition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	overflow: hidden;
  -webkit-font-smoothing: antialiased;
}

.enjoyRJ a:link {
	text-decoration: none;
	outline: none;
}
.enjoyRJ a:visited {
}
.enjoyRJ a:hover {
	opacity: 0.5;
	filter: alpha(opacity=50);
}




.enjoyRJ{
	color: #333;
	  font-family: 'Noto Sans JP', "メイリオ", "Meiryo", sans-serif;
	font-size: 62.5%;
	font-size: 1.6em;
	line-height: 1.6;
	*font-size:small;
	*font:x-small;
	font-weight: 400;
	margin: 0px;
	padding: 0px;
	letter-spacing: 0.02em;
	animation: fadeIn 2s ease 0s 1 normal;
	-webkit-animation: fadeIn 2s ease 0s 1 normal;
}
.enjoyRJ img {
	max-width: 100%;
}
.enjoyRJ div{
	box-sizing: border-box;
}
.enjoyRJ img,
.enjoyRJ iframe{
	vertical-align: bottom;
	border-style: none;
}
.enjoyRJ .clearfix::after {
	content: "";
	display: block;
	clear: both;
}



.enjoyRJ h1, .enjoyRJ h2, .enjoyRJ h3, .enjoyRJ h4{
  font-family: "Noto Serif JP", serif;
}

.wrapper{
	background:#fff;
	background-image: url(images/bg-img.jpg);
	background-size: 100% 100%;
	padding: 0 0 0 180px;
	  overflow-x: hidden;
	position: relative;
	  
	
} 
.wrap-cnt{
	width:1000px;
	min-width: 1000px;
	margin: auto;
	position: relative;
} 
#header {
	width:1000px;
	margin: auto;
	padding: 4em 0 10rem 8rem;
}
#header h1{
	font-size: 6rem;
	font-weight: 500;
	color: #42698c;
    background: -webkit-linear-gradient(-45deg, #42698c, #03324c);
   -webkit-background-clip: text;
   -webkit-text-fill-color: transparent;
}
.title-area{
	position: fixed;
	top:0px;
	left: calc(50vw - 455px);
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
}
@media screen and (max-width: 1100px){
	//.title-area{top:123px}
}
@media screen and (max-width: 750px){
	//.title-area{top:102px}
}
/* Edge(Chromium) */
_:lang(x)+_:-internal-autofill-previewed::-ms-clear, .title-area{
		left: calc(50vw - 464px);
    }
/* Edge(Chromium) */
_:lang(x)+_:-internal-autofill-previewed::-ms-reveal, .title-area{
		left: calc(50vw - 464px);
    }
@media screen and (max-width: 1160px) {
	.title-area{	
		left: 125px;
	}
	/* Edge(Chromium) */
	_:lang(x)+_:-internal-autofill-previewed::-ms-clear, .title-area{
		left: 125px;
    }
	/* Edge(Chromium) */
	_:lang(x)+_:-internal-autofill-previewed::-ms-reveal, .title-area{
		left: 125px;
    }
}
.obi-title{
	background: linear-gradient(to bottom, #8ed2df, #4982a7);
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
	font-weight: 500;
	position: relative;
	height: 360px;
	padding: .5rem;
	display:block;
}
.obi-title:before{
	content: "";
	display: block;
	border-left: solid 1px #fff;
	width:1px;
	height: 16px;
	position: absolute;
	top:80px;
	left:50%;
}
.obi-title:after{
	content: "";
	display: block;
	border-left: solid 1px #fff;
	width:1px;
	height: 16px;
	position: absolute;
	bottom:80px;
	left:50%;
}
.eng-title{
	font-size: 6rem;
	font-style: italic;
	font-weight: 400;
	color: #62a0bc;
	position: absolute;
	height: 1000px;
	line-height: 1;
}
.eng-title span{
	display: block;
	font-size: 60%;
	line-height: 2;
}
/*以下フェードイン表示の指定*/
.fadein {
    opacity: 0;
    animation: fadein 1s ease-out forwards;
}
@keyframes fadein {
    0% {  margin-top: 100px;}
    100% {  opacity: 1;}
}
 
/*以下遅延の指定*/
.delay01 {animation-delay: 0.4s;}
.delay02 {animation-delay: 1s;}


.cnt-box{
	padding: 4rem 4rem 4rem 4rem;
	background-color: rgba(255,255,255,0.8);
	position: relative;
	margin-bottom: 8rem;
	min-height: 900px;
	width: 960px;
}
.cnt-box.kairi{
	border-left: solid 3px #ca5338;
	color:#ca5338;
	background: linear-gradient(225deg, #f6c6bb, rgba(255, 255, 255, 0.6) 20%);
}
.cnt-box.shukura{
	border-left: solid 3px #1b4770;
	color:#1b4770;
	background: linear-gradient(225deg, #cee8fe, rgba(255, 255, 255, 0.6) 20%);
}
.cnt-box.slbanetsu{
	border-left: solid 3px #00564f;
	color:#00564f;
	background: linear-gradient(225deg, #d8f9f2, rgba(255, 255, 255, 0.6) 20%);
}
.cnt-box .train-logo{
	width: 100px;
	display: inline-block;
	float: left;
	margin-right: 10px;
}
.cnt-box .htext{
	font-family: 'Noto Sans JP',"メイリオ", "Meiryo", "verdana", sans-serif;
	font-size:3.6rem;
	font-weight: bold;
	line-height: 1.4;
	margin-bottom: 10rem;
	color: #333;
}
.cnt-box .htext::before {
	content: attr(title);
	display: block;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	margin-top: 1rem;
}
.cnt-box .pic-area{
	position: absolute;
	top:50px;
	left: 65%;
	width: 550px;
}
.cnt-box .pic-area .pic01{
	margin-bottom: 6rem;
}
.cnt-box .pic-area .pic02{
	margin-left: 6rem;
}
.cnt-box .copy01{
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	position: absolute;
	top:230px;
	left:50px;
	font-size: 3.4rem;
}

.cnt-box .text01{
	margin-left: 110px;
	margin-bottom: 3rem;
	width: 420px;
	font-size: 1.8rem;
	line-height: 1.8;
    text-align: justify;
    text-justify: inter-ideograph;
    -webkit-font-feature-settings: "palt";
    font-feature-settings: "palt";
}
.cnt-box .text01.black{
	color:#333;
	margin-left: 200px;
	width: 330px;
}
.cnt-box .point{
	float: left;
	width: 80px;
	margin: 0rem 2rem 4rem -100px;
}
.cnt-box .point-pic-area{
	margin-left: 100px;
	display: flex;
	justify-content: space-between;
	width:440px;
}
.cnt-box .point-pic-area .point-pic{
	width:49%;
}
.cnt-box .btn-area{
	text-align: center;
	margin-top: 60px;
	margin-left: 100px;
	width: 440px;
}
.cnt-box .btn-area .btn a{
	display:inline-block;
	position: relative;
	color:#fff;
	font-size:1.6rem;
	width: 100%;
	border-radius: 3rem;
	padding:1rem 3rem 1rem 3rem;
	box-shadow: 3px 3px 5px #aaa;
	margin-bottom: 2rem;
}
.cnt-box .btn-area .kairi01 a{
	background-color: #ff6f4d;
}
.cnt-box .btn-area .kairi02 a{
	background-color: #cb5338;
}
.cnt-box .btn-area .shukura01 a{
	background-color: #2e77bb;
}
.cnt-box .btn-area .shukura02 a{
	background-color: #21578a;
}
.cnt-box .btn-area .slbanetsu01 a{
	background-color: #3dbfb4;
}
.cnt-box .btn-area .slbanetsu02 a{
	background-color: #0e6e66;
}
.cnt-box .btn-area a::after{
	position: absolute;
	content: "";
	bottom: 1.8rem;
	margin: auto;
	right:  20px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all .3s;
	transition: all .3s;
}
.cnt-box .btn-area a:hover::after{
	right: 15px;
}

.cnt-footer{
	padding: 6rem 4rem;
	background-image: url(images/illust01z.png);
	background-position: right top 330px;
	background-repeat: no-repeat;
}

.footer-title{
	margin-bottom: 4rem;
	margin-left: 15rem;
	position: relative;
}
.footer-title .fukidashi01{
	position: absolute;
	top:-30px;
	left:-160px;
	width: 140px;
}
.cnt-footer .footer-title h3{
	font-size: 5.8rem;
	font-weight: 400;
	color: #ff7172;
  background: -webkit-linear-gradient(-45deg, #ff7172, #836464);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
	padding-bottom: 1rem;
}
.cnt-footer .footer-title h3 span{
	border-bottom: solid 2px #8ed3e0;
	padding-bottom: 1rem;
}
.cnt-footer .text01{
    font-size: 1.8rem;
	padding: 0rem 30rem 4rem 15rem;
	line-height: 1.8;
}
.cnt-footer .text01b{
	color: #ff7172;
    font-size: 2.8rem;
	padding: 0rem 0rem 4rem 0rem;
	text-align:center;
	line-height: 1.8;
}
.cnt-footer .list-area{
	margin: 6rem 2rem;
}
.cnt-footer .list-area .step1{
	margin-bottom: 4rem;
}
.cnt-footer .list-area .step2{
	margin-left: 4rem;
	margin-bottom: 4rem;
}
.cnt-footer .list-area .step3{
	margin-left: 8rem;
	margin-bottom: 8rem;
}

.cnt-footer .list-area .step{
	float: left;
	margin-right: 3rem;
}
.cnt-footer .list-area .text{
	font-size: 2rem;
}
.cnt-footer .list-area .text{
	padding-top: 3rem;
}
.pink{
	color:#ff7172;
}
.cap{
	font-size: 80%;
	display: block;
	margin: 1rem 0;
}
.cnt-footer .btn{
	text-align: center;
}

.cnt-footer .btn a{
	display:inline-block;
	position: relative;
	background-color: #ff7172;
	color:#fff;
	font-size:1.6rem;
	width: 500px;
	border-radius: 3rem;
	padding:1rem 3rem 1rem 3rem;
	box-shadow: 3px 3px 5px #aaa;
	margin-bottom: 2rem;
}
.cnt-footer .btn a::after{
	position: absolute;
	content: "";
	bottom: 1.8rem;
	margin: auto;
	right:  20px;
	width: 10px;
	height: 10px;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	-webkit-transition: all .3s;
	transition: all .3s;
}
.cnt-footer .btn a:hover::after{
	right: 15px;
}
.copyright{
	color:#fff;
	background-color: #333;
	text-align: center;
	font-size: 1.2rem;
	padding: 2rem;
		position:relative;
		z-index:10;
}


/*	202301追加----------------- */
.cnt-box.y-layout .htext{
	margin-bottom: 4rem;
}
.cnt-box.y-layout .copy01y{
	font-size: 2.4rem;
	margin: 0 0 2rem 11rem;
}
.cnt-box.y-layout .text01{
	margin: 0 0 6rem 1rem;
	width: 500px;
}
.cnt-box .travelplan{
	width:80%;
	margin:auto;
}
.cnt-box .travelplan .plan-title{
	text-align: center;
}
.cnt-box.y-layout .flex-2nd{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.box-text{
	width: 50%;
	margin-bottom: 4rem;
}
.box-pic{
	width: 45%;
	margin-bottom: 4rem;
}
.cnt-box.y-layout .text02{
	color: #333;
	margin-left: 1rem;
	margin-bottom: 3rem;
	width: 400px;
	font-size: 1.8rem;
	line-height: 1.8;
}
.cnt-box.y-layout .text02 .point-n{
	display: block;
	font-weight: 700;
	color:#1b4770;
	border-bottom: dashed 1px #1b4770;
	margin-bottom: 1rem;
}
.cnt-box.y-layout.cnt-box.kairi .text02 .point-n{
	color:#ca5338;
	border-bottom: dashed 1px #ca5338;
}
.cnt-box.y-layout.cnt-box.slbanetsu .text02 .point-n{
	color:#00564f;
	border-bottom: dashed 1px #00564f;
}
.cnt-box.y-layout .btn-area{
	display: flex;
	justify-content: space-between;
	text-align: center;
	margin: 0px;
	padding:2rem 1rem;
	width: 100%;
}
.cnt-box.y-layout .btn-area .btn{
	width: 32%;
}
.cnt-box.slbanetsu.y-layout .btn-area .btn{
	width: 45%;
}
.cnt-box.y-layout .btn-area .btn a{
	display:inline-block;
	position: relative;
	color:#fff;
	font-size:1.4rem;
	width: 100%;
	border-radius: 3rem;
	padding:1rem 3rem 1rem 3rem;
	box-shadow: 3px 3px 5px #aaa;
	margin-bottom: 2rem;
}
.cnt-box.y-layout .btn-area a::after{
	position: absolute;
	content: "";
	bottom: calc(50% - 7px);
	margin: auto;
}
























.pc{display: initial;}
.sp{display:none;}
/*	sp
---------------------------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 37.4em) {

	.sp {display: initial;}
	.pc{display:none;}
	body {
		min-width: 100%;
		width: 100%;
		font-size: 1.3em;
	}	


	.wrapper{
		background:#fff;
		background-image: url(images/bg-img.jpg);
		background-size: 400% 100%;
		padding: 0 0 0 24px;
	} 
	.wrap-cnt{
		width:100%;
		min-width: auto;
	} 
	#header {
		width:100%;
		margin: auto;
		padding: 4em 0 10rem 3rem;
	}
	#header h1{
		font-size: 3rem;
	}
	.title-area{
		position: fixed;
		top:0;
		left: 0px;
	}
	.obi-title{
		position:absolute;
		left:0;
		font-size: 1.2rem;
		height: 200px;
		padding: 0;
		display: inline-block;
		line-height:2;
		margin-bottom: 0;
		vertical-align: bottom;
	}
	.obi-title:before{
		content: "";
		display: block;
		border-left: solid 1px #fff;
		width:1px;
		height: 10px;
		position: absolute;
		top:20px;
		left:1.2rem;
	}
	.obi-title:after{
		content: "";
		width:1px;
		height: 10px;
		position: absolute;
		bottom:20px;
		left:1.2rem;
	}
	.eng-title{
		font-size: 2.2rem;
		position: static;
		height: 1000px;
		display: inline;
		vertical-align: baseline;
		position:absolute;
		left:4px;
		padding-top:200px;
	}
	.eng-title span{
		display: inline;
		font-size: 60%;
		line-height: 1.2;
		vertical-align: bottom;
	}

	.cnt-box{
		padding: 4rem 2.5rem 4rem 2.5rem;
		margin-bottom: 8rem;
		min-height: auto;
		width: 100%;
	}
	.cnt-box.kairi{
	}
	.cnt-box.shukura{
	}
	.cnt-box.slbanetsu{
	}
	.cnt-box .train-logo{
		width: 80px;
		display: inline-block;
		float: left;
		margin-right: 10px;
	}
	.cnt-box .htext{
		font-size:2.6rem;
		font-weight: bold;
		margin-bottom: 6rem;
		color: #333;
	}
	.cnt-box .htext::before {
		content: attr(title);
		font-size: 1.2rem;
		margin-top: 1rem;
	}
	.cnt-box .pic-area{
		position: static;
		width: 110%;
		padding-left: 30px;
	}
	.cnt-box .pic-area .pic01{
		margin-bottom: 0rem;
		width: 80%;
	}
	.cnt-box .pic-area .pic02{
		margin-left: 20%;
		margin-bottom: 6rem;
		margin-top: -1rem;
		width: 80%;
	}
	.cnt-box .copy01{
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		writing-mode: vertical-rl;
		position: absolute;
		top:160px;
		left:10px;
		font-size: 2.4rem;
	}
	.cnt-box .text01{
		margin-left: 0;
		margin-bottom: 3rem;
		width: 100%;
		font-size: 1.5rem;
	}
	.cnt-box .text01.black{
		margin-left: 60px;
		width: calc(100% - 60px);
		font-size:1.4rem;
	}
	.cnt-box .point{
		float: left;
		width: 45px;
		margin: 0rem 2rem 2rem -60px;
	}
	.cnt-box .point-pic-area{
		margin-left: 0;
		display: flex;
		width:110%;
	}
	.cnt-box .point-pic-area .point-pic{
		width:49%;
	}
	.cnt-box .btn-area{
		text-align: center;
		margin-top: 60px;
		margin-left: 0;
		width: 100%;
	}
	.cnt-box .btn-area .btn a{
		color:#fff;
		font-size:1.3rem;
		width: 100%;
		border-radius: 3rem;
		padding:1rem 2rem 1rem 2rem;
	}
	.cnt-box .btn-area .kairi01 a{
	}
	.cnt-box .btn-area .kairi02 a{
	}
	.cnt-box .btn-area .shukura01 a{
	}
	.cnt-box .btn-area .shukura02 a{
	}
	.cnt-box .btn-area .slbanetsu01 a{
	}
	.cnt-box .btn-area a::after{
		position: absolute;
		content: "";
		bottom: 1.5rem;
		right:  16px;
		width: 8px;
		height: 8px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
	.cnt-box .btn-area a:hover::after{
		right: 12px;
	}

	.cnt-footer{
		padding: 8rem 2rem;
		background-image: url(images/illust01z.png);
		background-position: right top 0;
		background-repeat: no-repeat;
		background-size: 30%;
	}

	.footer-title{
		margin: 0;
	}
	
	.footer-title .fukidashi01{
		position: absolute;
		top:-60px;
		left: 0px;
		width: 60px;
	}
	.cnt-footer .footer-title h3{
		font-size: 2.4rem;
		padding-bottom: 2rem;
	}
	.cnt-footer .footer-title h3 span{
		border-bottom: solid 2px #8ed3e0;
		padding-bottom: .4rem;
		line-height: 2;
	}
	.cnt-footer .text01{
		padding: 3rem 0rem;
		font-size: 1.5rem;
	}
	.cnt-footer .text01b{
		padding: 3rem 0rem;
		font-size: 2rem;
	}
	.cnt-footer .list-area{
		margin: 2rem 0rem;
	}
	.cnt-footer .list-area .step1{
		margin-bottom: 4rem;
	}
	.cnt-footer .list-area .step2{
		margin-left: 0;
		margin-bottom: 4rem;
	}
	.cnt-footer .list-area .step3{
		margin-left: 0;
		margin-bottom: 8rem;
	}
	.cnt-footer .list-area .step{
		float: left;
		margin-right: 1rem;
		width: 50px;
	}
	.cnt-footer .list-area .text{
		font-size: 1.6rem;
		margin-left: 70px;
	}
	.cnt-footer .list-area .text{
		padding-top: 0;
	}
	.pink{
		color:#ff7172;
	}
	.cap{
		font-size: 80%;
		display: block;
		margin: 1rem 0;
	}
	.cnt-footer .btn{
		text-align: center;
	}

	.cnt-footer .btn a{
		display:inline-block;
		position: relative;
		background-color: #ff7172;
		color:#fff;
		width: 90%;
		border-radius: 3rem;
		padding:1rem 3rem 1rem 3rem;
		box-shadow: 3px 3px 5px #aaa;
		margin-bottom: 2rem;
	}
	.cnt-footer .btn a::after{
		position: absolute;
		content: "";
		bottom: calc(50% - 7px);
		right:  16px;
		width: 8px;
		height: 8px;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
	}
	.cnt-footer .btn a:hover::after{
		right: 15px;
	}
	.copyright{
		color:#fff;
		background-color: #333;
		text-align: center;
		font-size: 1rem;

	}




/*	202301追加----------------- */
.cnt-box.y-layout .htext{
	margin-bottom: 4rem;
}
.cnt-box.y-layout .copy01y{
	font-size: 2rem;
	margin: 2rem 0 4rem 0;
	text-align:center;
}
.cnt-box.y-layout .text01{
	margin: 0 0 6rem 0;
	width: 100%;
}
.cnt-box .travelplan .plan-title{
	font-size: 1.5rem;
}
.cnt-box .travelplan{
	width:100%;
}
.cnt-box.y-layout .flex-2nd{
	flex-wrap:wrap;
	justify-content: space-between;
	margin-bottom: 5rem;
}
.box-text{
	width: 100%;
}
.box-pic{
	width: 100%;
}
.cnt-box.y-layout .text02{
	margin-left: 0;
	margin-bottom: 3rem;
	width: 100%;
	font-size: 1.4rem;
}
.cnt-box.y-layout .text02 .point-n{
	display: block;
	border-bottom: dashed 1px #1b4770;
	margin-bottom: 1rem;
}
.cnt-box.y-layout .btn-area{
	flex-wrap:wrap;
	justify-content: space-between;
	text-align: center;
	margin: 0px;
	padding:2rem;
	width: 100%;
}
.cnt-box.y-layout .btn-area .btn{
	width: 100%;
}
.cnt-box.slbanetsu.y-layout .btn-area .btn{
	width: 100%;
}
.cnt-box.y-layout .btn-area .btn a{
	display:inline-block;
	position: relative;
	color:#fff;
	font-size:1.6rem;
	width: 100%;
	border-radius: 3rem;
	padding:1rem 3rem 1rem 3rem;
	box-shadow: 3px 3px 5px #aaa;
	margin-bottom: 2rem;
}
.cnt-box.y-layout .btn-area a::after{
	position: absolute;
	content: "";
	bottom: calc(50% - 7px);
	margin: auto;
}












}





