/*　キャンプと飯と、時々クルマ。2025開催レポート Style sheet　　作成日：2025.11.19 */
@charset "UTF-8";

/*================================================
全体設定
================================================*/
main {
	background: url(../img/r004/camp-bg2-pc.jpg) no-repeat right bottom;
	background-size: cover;
	background-attachment: fixed;
}
.cgc {
	padding-bottom: 160px;
	background: rgba(255, 255, 255, 0.85) url(../img/r004/camp-bg-pc.png) no-repeat center bottom;
	background-size: contain;
}
.cara img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-user-drag: none;
	-moz-user-drag: none;
	-ms-user-drag: none;
}
.bg-video video {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
.bg-video {
	width: 100%;
	background-color: rgba(242, 174, 75, 1.0);
}
.bg-video-data {
	height: 640px;
	opacity: .25;
	overflow: hidden;
}
.bg-video-overlay {
	height: 100%;
	width: 100%;
	background-image: url("../img/r004/overlays/pattern-05.png");
	background-repeat: repeat;
	opacity: 0.3;
	transition: background 0.3s, border-radius 0.3s, opacity 0.3s;
	top: 0;
	left: 0;
	position: absolute;
}
.cgc-title-box {
	width: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.cgc-logo {
	width: 54%;
	max-width: 420px;
	margin: 0 auto;
}
.cgc-place {
	width: 40%;
	max-width: 320px;
	margin: 0 auto;
}
main .cgc-title-box h2 {
	font-size: 48px;
	font-weight: 800;
	text-align: center;
	color: rgba(255, 255, 255, 1.0);
}
.cara h3 {
	margin-bottom: 30px;
	font-size: 36px;
	font-weight: bold;
}

#cgc-read, #cgc-info, 
#cgc-content, #cgc-endroll {
	padding-top: 80px;
}
.cgc-read-txt {
	font-size: 20px;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
.cgc-rep-summary {
	width: 51%;
}
.cgc-rep-summary dl:not(:first-child) {
	margin-top: 15px;
}
.cgc-rep-summary dl dt {
	font-size: 1.35em;
	font-weight: 600;
	color: rgba(150, 99, 60, 1.0);
}
.cgc-rep-summary dl dd {
	font-size: 1.15em;
}
.cgc-rep-summary dl dd.txt-s {
	font-size: 14px;
}
.cgc-rep-summary table caption {
	font-weight: bold;
}
.cgc-rep-summary table {
	margin-top: 10px;
	border-top: 1px solid rgb(180, 180, 180);
}
.cgc-rep-summary table caption {
	font-size: 16px;
}
.cgc-rep-summary table th {
	width: 30%;
	padding: 2px;
	font-size: 15px;
	font-weight: normal;
	border-bottom: 1px solid rgb(180, 180, 180);
}
.cgc-rep-summary table td {
	padding: 2px;
	font-size: 15px;
	border-bottom: 1px solid rgb(180, 180, 180);
}
.cgc-rep-zenkei {
	width: 47%;
}

.cgc-rep-conte-wrap {
	margin-bottom: 80px;
}
#cgc-content h4 {
	margin: 15px 0;
	font-size: 1.5em;
	font-weight: 600;
	color: rgba(150, 99, 60, 1.0);
}
#cgc-content h5 {
	margin-top: 10px;
	font-size: 1.05em;
	letter-spacing: 0.02em;
}
.cgc-rep-photo {
	width: 20%;
	padding: 4px 2px 0;
}
.cgc-rep-photo figcaption {
	font-size: 9px;
	text-align: center;
	display: none;
}
.cgc-rep-box {
	width: 30%;
	margin-top: 30px;
}
.cgc-rep-box a {
	display: block;
}
.cgc-rep-box a:hover {
	opacity: 0.6;
}
.cgc-rep-box-ph {
	height: 240px;
	overflow: hidden;
	border-radius: 30px;
	display: flex;
	justify-content: center;
}
.cgc-rep-box-ph img {
	width: auto;
	height: 100%;
}
.cgc-rep-box-link {
	padding: 3px 3px 0;
	font-size: 0.9em;
	text-align: right;
	color: rgba(120, 129, 150, 1.0);
}
.cgc-rep-box-link::before {
	font-family: Material Icons Outlined;
	content: "\e5c8";
	font-size: 1.5em;
	font-weight: 100;
	padding: 0 5px 0 0;
	vertical-align: middle;
}
.cgc-rep-movie {
	width: 60%;
	max-width: 420px;
	margin: 0 auto;
}

.cgc-endroll-txt {
	font-size: 20px;
	line-height: 1.8;
	letter-spacing: 0.05em;
}
.cgc-map {
	width: 70%;;
	max-width: 700px;
	margin: 40px auto 0;
	padding-bottom: 200px;
}
.g-map {
	margin-top: 15px;
	text-align: center;
}
.g-map a, 
.g-map a:visited {
	padding: 0.25em 0.8em;
	color: rgba(150, 99, 60, 1.0);
	border: 2px solid rgba(198, 156, 109, 1.0);
	border-radius: 16px;
}
.g-map a:hover {
	color: rgba(150, 99, 60, 0.7);
	border: 2px solid rgba(198, 156, 109, 0.4);
}
.cgc-bg-beige {
	padding: 20px 30px;
	background-color: rgba(240, 237, 219, 1.0);
}

/*______________________
  ** Singleページ設定 **
------------------------*/ 
.cgc-report-header {
	align-items: center;
}
.cgc-report-header-logo {
	width: 26%;
}
.cgc-report-header-place {
	width: 70%;
}
.cgc-report-header-place img {
	max-width: 250px;
}
main .cgc-report-header h2 {
	font-size: 48px;
	font-weight: 800;
	color: rgba(255, 255, 255, 1.0);
}
.w740 {
	width: 100%;
	max-width: 780px;
	margin: 0 auto;
	padding-left: 20px;
	padding-right: 20px;
}
.cgc-report-single {
	padding-top: 120px;
	padding-bottom: 120px;
}
.cara .cgc-report-single h3 {
	font-size: 29px;
	font-weight: normal;
}
.cgc-reportbox-main img {
	border-radius: 30px;
}
.cgc-reportbox-honv {
	margin: 50px 0;
}
.cgc-reportbox-honv p {
	padding: 0 80px 0 40px;
	font-size: 19px;
	line-height: 2.2;
	letter-spacing: 0.08em;
	border-left: 2px solid rgb(22, 22, 22);
}
.cgc-reportbox-sub-ph {
	width: 50%;
	padding: 5px;
}
.cgc-reportbox-sub-ph img {
	border-radius: 30px;
}
.sin-navi {
	padding-left: 2%;
	padding-right: 2%;
	padding-bottom: 80px;
}
.sin-navi-btn {
	width: 39%;
}
.cgc-back {
	width: 20%;
}
#sin-navi-btn-next {
	text-align: right;
}
#sin-navi-btn-prev.sin-navi-btn a:before {
	font-family: "Material Icons Outlined";
	content: "\e2ea";
	padding-right: 5px;
	position: absolute;
	top: 50%;
	left: 2px;
	transform: translateY(-50%);
}
#sin-navi-btn-next.sin-navi-btn a:after {
	font-family: "Material Icons Outlined";
	content: "\e5e1";
	padding-left: 5px;
	position: absolute;
	top: 50%;
	right: 2px;
	transform: translateY(-50%);
}
.sin-navi-btn a, 
.sin-navi-btn a:visited {
	padding: 0.8em 1.35em;
	font-size: 15px;
	line-height: 1.35;
	color: rgba(90, 165, 75, 1.0);
	background-color: rgba(255, 255, 255, 1.0);
	border: 3px solid rgba(120, 186, 105, 1.0);
	border-radius: 8px;
	box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
	transition: 0.2s;
	position: relative;
}
.sin-navi-btn a:hover {
	color: rgba(120, 186, 105, 1.0);
	background-color: rgba(235, 249, 228, 1.0);
	box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.5);
}
.sin-navi .cgc-back a::before {
	font-family: "Material Icons Outlined";
	content: "\e15a";
	font-size: 1.2em;
	padding: 0 5px 0 0;
	vertical-align: middle;
}
.sin-navi .cgc-back a, 
.sin-navi .cgc-back a:visited {
	padding: 0.8em 1.0em;
	font-size: 15px;
	line-height: 1.35;
	color: rgba(90, 90, 90, 1.0);
	background-color: rgba(255, 255, 255, 1.0);
	border: 3px solid rgba(150, 150, 150, 1.0);
	border-radius: 8px;
	box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
	transition: 0.2s;
}
.sin-navi .cgc-back a:hover {
	background-color: rgba(180, 180, 180, 1.0);
	box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.5);
}
.cgc-reportbox-collabo {
	margin-top: 30px;
}
.cgc-reportbox-collabo dl dt {
	font-size: 1.25em;
	color: brown;
}



/*========================================================
==========================================================
タブレット用（ブレイクポイント1024px）設定
==========================================================
=========================================================*/
@media screen and (max-width:1024px) {

	.bg-video {
		height: 80vh;
	}
	#cgc-2407-report-single .bg-video {
		height: auto;
	}
	.bg-video .bg-video-inner {
		overflow: hidden;
	}
	.bg-video video {
		height: 80vh;
		width: auto;
		position: absolute;
		top: 0;
		left: 50%;
		transform: translateX(-50%);
	}
	.bg-video-data {
		height: 80vh;
	}
	.bg-video-data img {
		width: auto;
		height: 100%;
	}
	.cgc-logo {
		width: 70%;
		max-width: 280px;
	}
	.cgc-place {
		width: 70%;
	}
	main .cgc-title-box h2 {
		font-size: 40px;
	}

}

/*========================================================
==========================================================
スマホ用（ブレイクポイント767px）設定
==========================================================
=========================================================*/
@media screen and (max-width:767px) {

	main h2 {
		padding-bottom: 20px;
	}
	/*
	main, .cgc {
		background: none;
	}
	*/
	.cara h3 {
		font-size: 28px;
	}
	#cgc-read {
		padding-top: 50px;
	}
	.cgc-rep-box {
		width: 48%;
		margin-top: 40px;
	}
	.cgc-rep-box:first-child, 
	.cgc-rep-box:nth-child(2) {
		margin-top: 15px;
	}
	.cgc-rep-box-ph {
		height: auto;
		border-radius: 24px;
	}
	.cgc-rep-box-ph img {
		width: 100%;
		height: auto;
	}
	#cgc-content h5 {
		margin-top: 7px;
		font-size: 12px;
		letter-spacing: 0.01em;
	}
	.cgc-rep-box-link {
		padding: 0;
		font-size: 10px;
	}
	.cgc-read-txt, 
	.cgc-endroll-txt {
		font-size: 18px;
		line-height: 1.65;
		letter-spacing: -0.01em;
	}
	.cgc-rep-summary, 
	.cgc-rep-zenkei {
		width: 100%;
	}
	.cgc-rep-zenkei {
		margin-top: 15px;
	}
	.cgc-rep-movie {
		width: 80%;
		margin-top: 20px;
	}
	.cgc-map {
		width: 90%;
		padding-bottom: 0;
	}

	.bg-video, 
	.bg-video video, 
	.bg-video-data {
		height: 60vh;
	}
	#cgc-2407-report-single .bg-video, 
	#cgc-2407-report-single .bg-video video, 
	#cgc-2407-report-single .bg-video-data {
		height: auto;
	}

	/*______________________
	  ** Singleページ設定 **
	------------------------*/
	.cgc-report-header-logo {
		width: 100%;
		text-align: center;
	}
	.cgc-report-header-logo img {
		max-width: 260px;
	}
	.cgc-report-header-place {
		width: 100%;
		text-align: center;
	}
	.cgc-report-header-place img {
		max-width: 250px;
	}
	main .cgc-report-header h2 {
		font-size: 36px;
		font-weight: 800;
	}
	.cgc-report-single {
		padding-top: 80px;
		padding-bottom: 20px;
	}
	.cara .cgc-report-single h3 {
		font-size: 26px;
	}
	.cgc-reportbox-main img {
		border-radius: 20px;
	}
	.cgc-reportbox-honv {
		margin: 50px 0;
	}
	.cgc-reportbox-honv p {
		padding: 0 20px;
		font-size: 17px;
		line-height: 1.85;
		letter-spacing: 0.05em;
	}
	.cgc-reportbox-sub-ph img {
		border-radius: 15px;
	}
	.sin-navi {
		padding-left: 20px;
		padding-right: 20px;
		padding-top: 60px;
		padding-bottom: 0;
	}

}


/*========================================================
==========================================================
スマホ用（ブレイクポイント640px）設定
==========================================================
=========================================================*/
@media screen and (max-width:640px) {

	#kendama-movie.cgc-reportbox-sub-ph {
		width: 100%;
	}
	.sin-navi-btn {
		width: 48.5%;
		margin-bottom: 15px;
	}
	.sin-navi-btn a {
		display: block;
	}
	.cgc-back {
		width: 100%;
	}
	#sin-navi-btn-prev {
		order: 1;
	}
	#sin-navi-btn-next {
		order: 2;
	}
	#sin-navi-btn-back {
		order: 3;
	}

}


/*========================================================
==========================================================
スマホ用（ブレイクポイント470px）設定
==========================================================
=========================================================*/
@media screen and (max-width:470px) {

	.cgc-rep-box-ph {
		height: 140px;
	}
	.cgc-rep-box-ph img {
		width: auto;
		height: 100%;
	}
	.sin-navi-btn, 
	.cgc-back {
		width: 85%;
		margin: 0 auto 15px;
	}
	.cgc-rep-summary table th {
		width: 36%;
	}

}