@charset "utf-8";


/*
	ぷらり！伊達の五感旅。
	「名峰・霊山のゴリラ岩」用CSS
	/3animals/gorira.html

	create	20260114-
*/

/* ---------------------------------------------------------
	約560px未満の画面向けスタイル mobile first
--------------------------------------------------------- */



/* header
---------------------------------------- */



/* main
---------------------------------------- */
/* ----- .animalsSection ----- */
main .animalsSection {
	margin: 0;
	padding: 50px 15px;
}
main .animalsSection:first-of-type {
	padding: 50px 0;
}
main .animalsSection:nth-child(odd) {
	background-color: #fff;
}
main .animalsSection h2 {
	width: 200px;
	margin: 0 auto 20px;
}
main .animalsSection h2 img {
	width: 100%;
}

/* ----- .animalsBlock ----- */
main .animalsSection .animalsBox {
}
main .animalsSection .animalsBox ul {
	list-style: none;
}
main .animalsSection .animalsBox ul li {
	width: 100%;
	margin-bottom: 10px;
}
main .animalsSection .animalsBox ul li a {
	width: 100%;
	height: 300px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-color: rgba(0, 0, 0, 0.2);
	background-blend-mode: soft-light;
	border: 3px solid #000;
	position: relative;
	display: block;
}
main .animalsSection .animalsBox ul li a span img {
	width: 100%;
}
main .animalsSection .animalsBox ul li.tori a {
	background-image: url(../img/top_datedori.jpg);
}
main .animalsSection .animalsBox ul li.tori a span {
	width: 216px;
	position: absolute;
	bottom: 30px;
	right: calc(50% - 108px);
}
main .animalsSection .animalsBox ul li.gori a {
	background-image: url(../img/top_gorira.jpg);
}
main .animalsSection .animalsBox ul li.gori a span:first-of-type {
	width: 132px;
	position: absolute;
	top: 38px;
	right: calc(50% - 66px);
}
main .animalsSection .animalsBox ul li.gori a span:last-of-type {
	width: 134px;
	position: absolute;
	bottom: 30px;
	right: calc(50% - 67px);
}
main .animalsSection .animalsBox ul li.ino a {
	background-image: url(../img/top_ino.jpg);
}
main .animalsSection .animalsBox ul li.ino a span:first-of-type {
	width: 150px;
	position: absolute;
	bottom: 100px;
	right: calc(50% - 75px);
}
main .animalsSection .animalsBox ul li.ino a span:last-of-type {
	width: 210px;
	position: absolute;
	bottom: 30px;
	right: calc(50% - 105px);
}
main .animalsSection .animalsBox ul li.course a {
	background-image: url(../img/top_model.jpg);
}
main .animalsSection .animalsBox ul li.course a span {
	width: 180px;
	position: absolute;
	bottom: 30px;
	right: calc(50% - 90px);
}

/* ----- .animalsDetail ----- */
main .animalsSection .animalsDetail {
}
main .animalsSection .animalsDetail h1 {
	width: 265px;
	margin: 0 auto 15px;
}
main .animalsSection .animalsDetail h1 img {
	width: 100%;
}
main .animalsSection .animalsDetail h1 span {
	width: 138px;
	margin: 0 auto 15px;
	display: block;
}
main .animalsSection .animalsDetail figure {
	width: 100%;
	margin: 0 0 20px;
}
main .animalsSection .animalsDetail figure img {
	width: 100%;
	margin-bottom: 10px;
	border: 3px solid #000;
}
main .animalsSection .animalsDetail figure figcaption {
	font-size: 1.4rem;
	text-align: center;
}
main .animalsSection .animalsDetail .itemText {
	margin: 0 15px 20px;
}
main .animalsSection .animalsDetail .itemText p {
	font-size: 1.6rem;
	line-height: 1.8;
	text-align: left;
}
main .animalsSection .animalsDetail .itemPhotoText {
	margin: 0 15px 20px;
}
main .animalsSection .animalsDetail .itemPhotoText h3 {
	font-size: 2rem;
	margin-bottom: 15px;
	text-align: left;
}
main .animalsSection .animalsDetail .itemPhotoText p {
	font-size: 1.6rem;
	line-height: 1.8;
	text-align: left;
}
main .animalsSection .animalsDetail .itemCourse {
	margin: 50px 15px;
}
main .animalsSection .animalsDetail .itemCourse .photo a {
	width: 234px;
	height: 234px;
	margin: 0 auto 10px;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	background-color: rgba(0, 0, 0, 0.2);
	background-blend-mode: soft-light;
	border: 3px solid #000;
	display: block;
	position: relative;
}
main .animalsSection .animalsDetail .itemCourse .caption {
	font-size: 1.6rem;
	font-weight: bold;
}
main .animalsSection .animalsDetail .itemCourse .photo a span.tori {
	width: 88px;
	position: absolute;
	bottom: -22px;
	right: -11px;
}
main .animalsSection .animalsDetail .itemCourse .photo a span.gori {
	width: 100px;
	position: absolute;
	top: -22px;
	left: -22px;
}
main .animalsSection .animalsDetail .itemCourse .photo a span.ino {
	width: 100px;
	position: absolute;
	top: -22px;
	left: -22px;
}
main .animalsSection .animalsDetail .itemCourse .photo a span.manzoku {
	width: 88px;
	position: absolute;
	bottom: -22px;
	left: -11px;
}
main .animalsSection .animalsDetail .itemCourse .photo .course {
	font-size: 1.4rem;
	text-align: left;
	margin: 0;
	padding: 0 0 5px;
	display: block;
}


/* footer
---------------------------------------- */



@media screen and (min-width: 375px){
	/*	約375px以上の画面向けスタイル second tablet */

}



@media screen and (min-width: 560px){
	/*	約560px以上の画面向けスタイル second tablet */

	/* header
	---------------------------------------- */

	/* main
	---------------------------------------- */
	/* ----- .animalsSection ----- */
	main .animalsSection .animalsBox ul {
		display: flex;
		justify-content: center;
		gap: 10px;
	}
	main .animalsSection .animalsBox ul li {
		width: calc((100% - 20px) / 3);
		max-width: 320px;
	}
	main .animalsSection .animalsBox ul li a {
		height: 360px;
	}
	main .animalsSection .animalsBox ul li.tori a span {
		width: 180px;
		right: calc(50% - 90px);
	}
	main .animalsSection .animalsBox ul li.gori a span:first-of-type {
		width: 120px;
		right: calc(50% - 60px);
	}
	main .animalsSection .animalsBox ul li.gori a span:last-of-type {
		width: 120px;
		right: calc(50% - 60px);
	}
	main .animalsSection .animalsBox ul li.ino a span:first-of-type {
		width: 120px;
		bottom: 120px;
		right: calc(50% - 60px);
	}
	main .animalsSection .animalsBox ul li.ino a span:last-of-type {
		width: 180px;
		right: calc(50% - 90px);
	}
	main .animalsSection .animalsBox ul li.course a span {
		width: 180px;
		right: calc(50% - 90px);
	}

	/* ----- .animalsDetail ----- */
	main .animalsSection .animalsDetail figure figcaption {
		font-size: 1.6rem;
	}
	main .animalsSection .animalsDetail .itemText {
		margin-bottom: 30px;
	}
	main .animalsSection .animalsDetail .itemText p {
		font-size: 1.8rem;
	}
	main .animalsSection .animalsDetail .itemPhotoText {
		margin-bottom: 30px;
		display: flex;
		justify-content: space-between;
		gap: 30px;
	}
	main .animalsSection .animalsDetail .itemPhotoText figure,
	main .animalsSection .animalsDetail .itemPhotoText .textBox {
		width: calc(50% - 15px);
	}
	main .animalsSection .animalsDetail .itemPhotoText .photoRight {
		order: 2;
	}
	main .animalsSection .animalsDetail .itemPhotoText h3 {
		font-size: 2.4rem;
	}
	main .animalsSection .animalsDetail .itemPhotoText p {
		font-size: 1.8rem;
	}
	main .animalsSection .animalsDetail .itemPhotoText p {
		font-size: 1.8rem;
	}

	/* footer
	---------------------------------------- */

}



@media screen and (min-width: 740px){
	/*	約740px以上の画面向けスタイル second tablet */

	/* header
	---------------------------------------- */



	/* main
	---------------------------------------- */



	/* footer
	---------------------------------------- */

}



@media screen and (min-width: 980px){
	/*	約980px以上の画面向けスタイル pc style */

	/* header
	---------------------------------------- */



	/* main
	---------------------------------------- */
	main .animalsSection {
		padding: 80px calc(50% - 480px);
	}
	main .animalsSection .animalsDetail h1 {
		width: 960px;
		margin: 0 auto 15px;
		display: flex;
		justify-content: space-between;
	}
	main .animalsSection .animalsDetail h1 img {
		width: 100%;
		max-width: 444px;
	}
	main .animalsSection .animalsDetail h1 span {
		width: 171px;
		margin: 0;
		display: block;
		order: 2;
	}
	main .animalsSection .animalsDetail .itemCourse .itemCourseBox {
		margin-bottom: 15px;
		display: flex;
		justify-content: center;
		gap: 20px;
	}
	main .animalsSection .animalsDetail figure img {
		border: 4px solid #000;
	}
	main .animalsSection .animalsDetail .itemCourse .photo a {
		border: 4px solid #000;
	}
	main .animalsSection .animalsBox ul li a {
		height: 425px;
	}


	/* footer
	---------------------------------------- */

}



@media screen and (min-width: 1200px){
	/*	約1200px以上の画面向けスタイル pc style */

	/* header
	---------------------------------------- */

	/* main
	---------------------------------------- */
	/* ----- .animalsSection ----- */
	main .animalsSection,
	main .animalsSection:first-of-type {
		padding: 80px calc(50% - 512px);
	}

}



@media screen and (min-width: 1366px){
	/*	約1200px以上の画面向けスタイル pc style */

	/* header
	---------------------------------------- */

	/* main
	---------------------------------------- */
	/* ----- .animalsSection ----- */
	main .animalsSection,
	main .animalsSection:first-of-type {
		padding: 80px calc(50% - 600px);
	}


	/* footer
	---------------------------------------- */

}
