@charset "utf-8";
body,div,dl,dt,dd,ul,ol,li,p,h1,h2,h3,h4,h5,h6,th,td,pre,code,blockquote,form,fieldset,legend,input,textarea,figcaption,figure{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,th,var{font-style:normal;font-weight:normal}li{list-style:none}caption,th{text-align:left}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}q:before,q:after{content:''}abbr,acronym{border:0;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit}input,textarea,select{*font-size:100%}legend{color:#FFF}hr{display:none}img{vertical-align:bottom}select,input,button,textarea{font-size:100%}table{font-size:inherit;font:100%;border-collapse:collapse;border-spacing:0}pre,code,kbd,samp,tt{font-family:monospace;*font-size:100%;line-height:100%}.hd{display:block;width:0;height:0;overflow:hidden}.cf:before,.cf:after{content:"";display:table}.cf:after{clear:both}.cf{*zoom:1}article,aside,details,figcaption,figure,footer,header,hgroup,hr,menu,nav,section,main{display:block}*{margin:0;padding:0;box-sizing:border-box;max-height:999999px;outline:none;}*:focus{outline:none;}button{background-color:transparent;border:none;cursor:pointer;outline:none;padding:0;}
#loading {
	position:fixed;
	z-index:25000;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:#FFF;
}
body{
	-webkit-text-size-adjust:100%;
	background-color:#fff;
	color:#000;
	font-family:'Mitr', sans-serif;
	font-size:16px;
	font-weight:normal;
	line-height:1.8;
	word-wrap:break-word;
}
a{ color:#222; }
a:hover{ text-decoration:none; }
.ah { transition:opacity .3s ease; }
.ah:hover { opacity:.7; }
::selection{
	background:#6ccfee;
	color:#fff;
}
::-moz-selection{
	background:#6ccfee;
	color:#fff;
}
@media screen and (max-width:768px){
	html{
		font-size:62.5%;
	}
	body{
		font-size:10px;
		font-size:1rem;
		min-width:320px;
	}
	.pc{ display:none; }
	.ah:hover { opacity:1; }
}
@media screen and (min-width:769px){
	.sp{ display:none; }
}
@keyframes diagonal-bg {
	0% {
		background-position: 0 0;
	}
	100% {
		background-position: 16px 16px
	}
}
@keyframes rotateY {
	0% {
		transform:rotateY(0deg);
	}
	100% {
		transform:rotateY(180deg);
	}
}
@keyframes bounce {
 0% {
	transform:translateY(0px);
	}
	 100% {
	transform:translateY(-7px);
	}
}
#fullWrap {
	min-width:1200px;
	width:100%;
	display:block;
	position:relative;
}
@media screen and (max-width:768px){
	#fullWrap {
		min-width:320px;
	}
}
.header {
	width:100%;
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	z-index:9999;
	pointer-events:none;
}
.header__inner {
	height:100vh;
	min-height:620px;
	position:sticky;
	left:0;
	top:0;
	width:100%;
}
.header__inner--block {
	width:200px;
	position:absolute;
	left:0;
	top:0;
	bottom:0;
	pointer-events:auto;
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	align-items:center;
	background:#FFF;
	z-index:120;
}
.header__inner h1 {
	width:82px;
	height:285px;
	padding-right:15px;
	order:1;
}
.header__inner h1 a {
	display:block;
	height:285px;
	background:url(/Img/svg/logopc.svg) no-repeat center center / contain;
	image-rendering:-webkit-optimize-contrast;
}
.header__gnavBtn {
	width:100%;
	height:110px;
	position:relative;
}
.header__gnavBtn a {
	display:flex;
	height:98px;
	justify-content:center;
	align-items:center;
	text-decoration:none;
	position:relative;
}
.header__gnavBtn a:before {
	content:'';
	position:absolute;
	right:-13px;
	top:50%;
	width:26px;
	height:26px;
	margin-top:-13px;
	background:url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/c_arrow_r-line-b.svg) no-repeat center center / contain;
	transform:translateX(-26px) scale(0.5);
	transition:all 0.6s ease;
	opacity:1;
}
.header__gnavBtn a.hover:before {
	transform:translateX(0);
	opacity:1;
}
.header__gnavBtn a span {
	display:flex;
	justify-content:center;
	align-items:center;
	height:32px;
	color:#81cddb;
	font-size:12px;
	font-weight:800;
	border-top:2px solid #81cddb;
	border-bottom:2px solid #81cddb;
	position:relative;
	transform:rotate(0.05deg);
	transition:all 0.3s ease;
}
.header__gnavBtn a.hover span {
	color:#f18e43;
	border-color:#f18e43;
	transform:scale(1.1) rotate(0.05deg);
}
.header__shares {
	height:110px;
	position:relative;
	order:2;
}
.shareLists {
	width:100%;
	display:flex;
	justify-content:center;
	height:34px;
	margin-bottom:25px;
}
.shareList {
	width:34px;
	margin:0 6px;
}
.shareList a {
	display:block;
	height:34px;
	border-radius:50%;
	overflow:hidden;
	transition:all 0.3s ease;
}
.shareList a:hover {
	transform:scale(1.2);
}
.shareList__twitter {
	background:#4aa1eb url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/sns_tw_w.svg) no-repeat center center / 16px auto;
}
.shareList__facebook {
	background:#3578ea url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/sns_fb_w.svg) no-repeat center center / 16px auto;
}
.shareList__line {
	background:#53b535 url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/sns_line_w.svg) no-repeat center center / 16px auto;
}
.copyright {
	font-size:10px;
	text-align:center;
	line-height:1;
	color:#666;
	transform:rotate(0.05deg);
	font-weight:500;
}
@media screen and (max-width:768px){
	.header {
		position:fixed;
		right:0;
		bottom:auto;
		z-index:22000;
		top:-1px;
	}
	.header__inner {
		height:16vw;
		min-height:16vw;
		position:relative;
		left:auto;
		top:auto;
	}
	.header__inner--block {
		width:100%;
		position:relative;
		left:auto;
		top:auto;
		bottom:auto;
		display:flex;
		flex-direction:row;
		height:16vw;
	}
	.header__inner h1 {
		width:29.8666vw;
		height:7.2vw;
		padding-right:0;
		position:absolute;
		left:50%;
		top:50%;
		transform:translate(-50%,-50%);
	}
	.header__inner h1 a {
		display:block;
		height:7.2vw;
		background:url(https://cdn.glitch.global/4eb3d87d-bb98-4dbb-a91f-8d0d29a5dbc8/%E0%B9%84%E0%B8%A1%E0%B9%88%E0%B8%A1%E0%B8%B5%E0%B8%8A%E0%B8%B7%E0%B9%88%E0%B8%AD%2032_20231024134841.png?v=1700841137360) no-repeat center center / contain;
	}
	.header__gnavBtn {
		width:auto;
		height:7.2vw;
		position:relative;
	}
	.header__gnavBtn a {
		height:7.2vw;
		padding:2.6666vw;
	}
	.header__gnavBtn a span {
		height:6.5333vw;
		font-size:0.9rem;
		position:relative;
	}
	.header__gnavBtn a:before {
		content:'';
		position:absolute;
		right:auto;
		top:auto;
		left:50%;
		bottom:-0.8vw;
		width:2.5vw;
		height:2.5vw;
		margin-top:0;
		margin-left:-1.25vw;
		background:url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/c_arrow_b-line-b.svg) no-repeat center center / contain;
		transform:none;
		transition:none;
		opacity:1;
		z-index:5;
	}
	.header__gnavBtn a.hover:before {
		transform:translateX(0);
		opacity:1;
	}
	.header__gnavBtn a.hover span {
		color:#81cddb;
		border-color:#81cddb;
		transform:none;
	}
	.header__shares {
		display:none;
	}
	.header__gnavBtn a.on span {
		color:#f18e43;
		border-color:#f18e43;
		transform:none;
	}
	.header__gnavBtn a.on:before {
		background:url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/c_arrow_b-line-or.svg) no-repeat center center / contain;
	}
}
.main {
	display:flex;
	justify-content:space-between;
	padding:20px 20px 20px 220px;
	flex-wrap:wrap;
	overflow:hidden;
}
@media screen and (max-width:768px){
	.main {
		display:flex;
		justify-content:space-between;
		padding:16vw 2.6666vw 2.6666vw;
		flex-wrap:wrap;
		overflow:hidden;
	}
}
.portalNav {
	transform:translateX(-100%);
	pointer-events:auto;
	position:absolute;
	left:200px;
	top:0;
	height:96px;
	width:calc(100% - 200px);
		background:rgb(129,205,219);
	background:-moz-linear-gradient(left,  rgba(129,205,219,1) 0%, rgba(129,205,219,1) 50%, rgba(241,142,67,1) 50%, rgba(241,142,67,1) 100%);
	background:-webkit-linear-gradient(left,  rgba(129,205,219,1) 0%,rgba(129,205,219,1) 50%,rgba(241,142,67,1) 50%,rgba(241,142,67,1) 100%);
	background:linear-gradient(to right,  rgba(129,205,219,1) 0%,rgba(129,205,219,1) 50%,rgba(241,142,67,1) 50%,rgba(241,142,67,1) 100%);
	filter:progid:DXImageTransform.Microsoft.gradient( startColorstr='#87e0fd', endColorstr='#f18e43',GradientType=1 );
	display:flex;
	justify-content:center;
	transition:all 0.4s ease;
}
.portalNav.hover {
	transform:translateX(0);
}
.portalNav__inner {
	display:flex;
	justify-content:center;
}
.portalNav__global {
	background:#81cddb;
	display:flex;
	padding-right:48px;
}
.portalNav__global > li > a {
	display:flex;
	height:96px;
	padding:0 20px;
	align-items:center;
	text-decoration:none;
	color:#FFF;
	font-weight:800;
	font-size:14px;
	transform:rotate(0.05deg);
}
.portalNav__sns {
	background:#f18e43;
	display:flex;
	padding-left:48px;
	position:relative;
}
.portalNav__sns:before {
	content:'';
	position:absolute;
	left:-13px;
	top:50%;
	width:26px;
	height:26px;
	margin-top:-13px;
	background:url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/c_arrow_r-line-or.svg) no-repeat center center / contain;
}
.portalNav__sns > li > a {
	display:flex;
	height:96px;
	padding:0 12px;
	align-items:center;
	text-decoration:none;
	color:#FFF;
	font-weight:800;
	font-size:14px;
	transform:rotate(0.05deg);
	position:relative;
}
.portalNav__global > li > a.active:before {
	content:'';
	width:0;
	height:0;
	border-style:solid;
	border-width:0 7px 12.1px 7px;
	border-color:transparent transparent #ffffff transparent;
	position:absolute;
	left:50%;
	top:50%;
	margin-left:-7px;
	margin-top:10px;
	animation:rotateY 1s ease-in-out infinite;
}
.portalNav__global > li > a.active span {
	transform:translateY(-5px);
}
.portalNav__global > li > a:not(.active):hover span,
.portalNav__sns > li > a:not(.active):hover span,
.portalNav__global--anime:hover a span {
	animation:bounce .5s ease alternate infinite;
}
.portalNav__sns > li > a span svg {
	height:20px;
	vertical-align: sub;
	margin-left:7px;
}
.portalNav__global--works {
	position:absolute;
	left:0;
	right:0;
	padding:20px;
	background:#FFF;
	z-index:-1;
	transition:all 0.5s;
	opacity:0;
	pointer-events:none;
	overflow:hidden;
}
.portalNav__global--anime:hover .portalNav__global--works {
	opacity:1;
	pointer-events:auto;
}
.worksLists {
	width:100%;
	display:flex;
	justify-content:space-between;
}
.worksList {
	width:calc((100% - 60px) / 5);
	transition:all 0.3s ease;
	overflow:hidden;
	display: flex;
	flex-direction: column;
}
.worksList:hover {
	transform:scale(1.05) rotate(3deg);
	z-index:5000;
}
.worksList a {
	display:block;
	width:100%;
	padding-top:140%;
	position:relative;
	border-radius:10px;
	overflow: hidden;
}
.worksList__visual {
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	position:absolute;
	left:0;
	top:0;
}
.vLogo {
	width:55%;
	padding-top:20px;
	margin:0 auto;
	flex:1;
	display:flex;
	justify-content: center;
	align-items: center;
}
.vLogo img {
	width:100%;
	height:auto;
}
@media screen and (max-width:768px){
	.portalNav {
		transform:translateX(0);
		pointer-events:auto;
		position:fixed;
		left:0;
		top:calc(16vw - 2px);
		height:0;
		width:100%;
		background:#FFF;
		display:block;
		transition:all 0.4s ease;
		overflow:auto;
	}
	.portalNav.on {
		height:100%;
	}
	.portalNav__inner {
		display:block;
	}
	.portalNav__global {
		flex-wrap:wrap;
		justify-content:space-between;
		padding:2.6666vw 2.6666vw 0;
		background: #FFF;
	}
	.portalNav__global > li {
		width:calc(50% - 1.3333vw);
		overflow:hidden;
		margin-bottom:2.6666vw;
	}
	.portalNav__global > li > a {
		height:13.3333vw;
		padding:0;
		color:#fff;
		background:#81cddb;
		font-size:1.5rem;
		justify-content:center;
		border-radius:1.3333vw;
	}
	.portalNav__global > li:first-child {
		width:100%;
	}
	.portalNav__global > li:first-child a {
		position:relative;
	}
	.portalNav__global > li:first-child a:before {
		content:'';
		position:absolute;
		width:3.4666vw;
		height:3.4666vw;
		left:50%;
		bottom:-1.7333vw;
		background:url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/c_arrow_b-line-b.svg) no-repeat center center / contain;
		margin-left:-1.7333vw;
	}
	.portalNav__sns {
		flex-wrap:wrap;
		padding:2.6666vw 2.6666vw 16vw;
		justify-content:space-between;
	}
	.portalNav__sns:before {
		display:none;
	}
	.portalNav__sns > li {
		width:calc(50% - 1.3333vw);
		overflow:hidden;
		margin-bottom:2.6666vw;
	}
	.portalNav__sns > li > a {
		border-radius:1.3333vw;
		height:13.3333vw;
		padding:0;
		color:#f18e43;
		background:#FFF;
		font-size:1.5rem;
		justify-content:center;
	}
	.portalNav__global > li > a.active:before {
		display:none;
	}
	.portalNav__global > li > a.active span {
		transform:translateY(0);
	}
	.portalNav__global > li > a:not(.active):hover span,
	.portalNav__sns > li > a:not(.active):hover span,
	.portalNav__global--anime:hover a span {
		animation:none;
	}
	.portalNav__global--works {
		position:relative;
		left:auto;
		right:auto;
		padding:2.6666vw 0 0;
		background:transparent;
		z-index:1;
		transition:none;
		opacity:1;
		pointer-events:auto;
		margin-bottom:-2.6666vw;
	}
	.worksLists {
		flex-wrap:wrap;
	}
	.worksList {
		width:calc(50% - 1.3333vw);
		border-radius:1.3333vw;
		overflow:hidden;
		margin-bottom:2.6666vw;
	}
	.worksList:hover {
		transform:none;
	}
	.worksList a {
		border-radius: 1.3333vw;
	}
	.vLogo {
		width:55%;
		padding-top:2.6666vw;
		padding-bottom:1.3333vw;
		align-items: flex-start;
	}
	.portalNav__sns > li > a span {
		display: flex;
		align-items: center;
	}
	.portalNav__sns > li > a span svg {
		height:4vw;
		margin-left:1vw;
		width:auto;
	}
	.portalNav__sns > li > a span svg .st0,
	.portalNav__sns > li > a span svg .cls-1 {
		fill:#f18e43 !important;
	}
}
.modal {
	position:fixed;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:rgba(255,255,255,1);
	z-index:25000;
	display:none;
}
.modalin {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	min-width:1200px;
	min-height:620px;
}
.modalin__box {
	position:absolute;
	left:50px;
	top:50px;
	right:50px;
	bottom:50px;
	border-radius:10px;
	overflow:hidden;
}
.modalin__inclose {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
}
.modalin__box iframe {
	width:100%;
	height:100%;
}
.modalin__close {
	position:absolute;
	right:10px;
	top:10px;
	width:70px;
	height:70px;
	background:#FFF;
	border-radius:10px;
	z-index:50;
	overflow:hidden;
	transition:all 0.3s ease;
}
.modalin__close a {
	display:block;
	height:70px;
	position:relative;
	background:#81cddb;
	transition:all 0.3s ease;
}
.modalin__close:hover {
	transform:scale(1.05) rotate(3deg);
	z-index:5000;
}
.modalin__close:hover a {
	background:#f18e43;
}
.modalin__close a:before,
.modalin__close a:after {
	content:'';
	width:50px;
	height:4px;
	background:#FFFF;
	position:absolute;
	left:10px;
	top:33px;
}
.modalin__close a:before {
	transform:rotate(45deg);
}
.modalin__close a:after {
	transform:rotate(-45deg);
}
@media screen and (max-width:768px){
	.modalin {
		min-width:100%;
		min-height:100%;
	}
	.modalin__box {
		top:50%;
		bottom:auto;
		padding-top:56.25%;
		transform:translateY(-50%);
		left:0;
		right:0;
		border-radius:1.3333vw;
		overflow:hidden;
	}
	.modalin__box iframe {
		position:absolute;
		left:0;
		top:0;
	}
	.modalin__close {
		position:absolute;
		right:1.3333vw;
		top:1.3333vw;
		width:10vw;
		height:10vw;
		border-radius:1.3333vw;
	}
	.modalin__close a {
		height:10vw;
	}
	.modalin__close a:before,
	.modalin__close a:after {
		width:6vw;
		height:2px;
		background:#FFFF;
		position:absolute;
		left:2vw;
		top:50%;
		margin-top:-1px;
	}
}
.ovLogo {
	position:absolute;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background:rgba(0,0,0,.6);
	display:flex;
	justify-content:center;
	align-items:center;
	opacity:0;
	transition:all 0.3s ease;
	animation:none !important;
}
.ovLogo strong {
	width:65%;
	padding-top:65%;
	background-position:center center;
	background-repeat:no-repeat;
	background-size:contain;
	image-rendering:-webkit-optimize-contrast;
	animation:bounce .5s ease alternate infinite;
}
.onLogo:hover .ovLogo {
	opacity:1;
}
#sub .main {
	padding:0 0 0 200px;
}
@media screen and (max-width:768px) {
	#sub .main {
		padding:21vw 0 0;
	}
}
.categories {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	margin-bottom:60px;
}
.categories li {
	width:130px;
	height:28px;
	margin:0 5px 10px;
}
.categories li a {
	display:block;
	text-align:center;
	text-decoration:none;
	height:28px;
	line-height:28px;
	font-weight:500;
	background:#000;
	color:#FFF;
	transform:rotate(0.05deg);
	border-radius:3px;
	transition:all 0.3s ease;
}
@media screen and (max-width:768px){
	.categories {
		position:relative;
		width:90vw;
		margin:0 auto 8vw;
		padding-left:22.5vw;
		justify-content:flex-start;
	}
	.categories li {
		width:22.5vw;
		height:6vw;
		padding:0.3vw 0.6vw;
		margin:0;
	}
	.categories li a {
		height:100%;
		display:flex;
		justify-content:center;
		align-items:center;
		font-size:1.1rem;
	}
	.categories li:first-child {
		position:absolute;
		left:0;
		top:0;
		height:auto;
		bottom:0;
	}
}
.wp-pagenavi {
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	margin:0 auto 80px;
}
.wp-pagenavi a,
.wp-pagenavi span {
	text-decoration:none;
	display:block;
	width:130px;
	height:28px;
	margin:0 5px 10px;
	text-align:center;
	color:#FFF;
	line-height:28px;
	font-size:14px;
	background:#000;
	border-radius:4px;
	transition:all 0.3s ease;
	font-weight:500;
}
.wp-pagenavi a.none {
	background:#DDD;
	text-indent:-9897px;
	pointer-events:none;
}
@media screen and (max-width:768px){
	.wp-pagenavi {
		margin:0 auto 5vw;
	}
	.wp-pagenavi a,
	.wp-pagenavi span {
		width:15.2vw;
		height:4.5vw;
		margin:0 0.5vw 1vw;
		line-height:4.5vw;
		font-size:1rem;
		border-radius:4px;
	}
}
.footer {
	display:none;
}
@media screen and (max-width:768px){
	.footer {
		display:block;
		padding:10vw 0 15vw;
		position:relative;
	}
	.shareLists {
		width:42vw;
		display:flex;
		justify-content:space-between;
		height:11.2vw;
		margin:0 auto 8vw;
	}
	.shareList {
		width:11.2vw;
		margin:0;
	}
	.shareList a {
		height:11.2vw;
	}
	.shareList__twitter {
	background:#4aa1eb url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/sns_tw_w.svg) no-repeat center center / 5.6vw auto;
	}
	.shareList__facebook {
		background:#3578ea url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/sns_fb_w.svg) no-repeat center center / 5.6vw auto;
	}
	.shareList__line {
		background:#53b535 url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/sns_line_w.svg) no-repeat center center / 5.6vw auto;
	}
	.copyright {
		font-size:0.8rem;
	}
	.backtoTop {
		position:absolute;
		right:2.6666vw;
		top:10vw;
		width:11.2vw;
		height:11.2vw;
	}
	.backtoTop a {
		display:block;
		height:11.2vw;
		background:url(https://yurucamp.jp/camping/content/themes/ycp-v2/assets/img/common/c_arrow_t-b.svg) no-repeat center center / contain;
	}
}
