@charset "utf-8";

body {
	margin: 0;
}

/*ページ内共通設定ここから*/
#main #camillefournet_page,
#main #camillefournet_page * {
	--main-color: #bfc8c5;
	--sub01-color: #333;
	--sub02-color: #f8f9fa;
	--sub03-color: #555;
	--accent01-color: #00314c;
	--accent03-color: #a68b5b;
;
	--accent02-color: #d2d2d2;
	--bg-color: #f2fffb;

	color: var(--sub01-color);
}

#main #camillefournet_page {
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
}

#main {
	margin: 0;
}

#main * {
	box-sizing: border-box;
}

#main h2,
#main h3,
#main h4,
#main p,
#main ul,
#main ol,
#main li {
	margin: 0;
	padding: 0;
	line-height: normal;
	color: var(--text-color);
}

#main #camillefournet_page strong {
	font-weight: bold;
	color: var(--accent01-color);
}

#main a {
	text-decoration: none;
	transition: .4s all;
}

#main ul,
#main ol {
	list-style: none;
}

#main figure {
	margin: 0;
	padding: 0;
}

#main img {
	display: block;
	width: 100%;
	height: auto;
	line-height: 1;
}

#main h2 {
	font-weight: bold;
	text-shadow: unset;
	background: transparent;
	border: none;
	color: var(--main-color);
	text-align: center;
}

#main h3 {
	border: none;
}

#main .visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

#main .content_inner {
	position: relative;
	width: 100%;
	max-width: 1540px;
	margin: 0 auto;
	padding: 0 50px;
	box-sizing: border-box;
	text-align: center;
}

.pc_none {
	display: none;
}

#main #camillefournet_page .mb-200 {
	margin-bottom: 200px;
}

#main #camillefournet_page .mb-100 {
	margin-bottom: 100px;
}

#main #camillefournet_page .mb-80 {
	margin-bottom: 80px;
}

#main #camillefournet_page .mb-60 {
	margin-bottom: 60px;
}

#main #camillefournet_page .mb-20 {
	margin-bottom: 20px;
}

#main #camillefournet_page .mb-10 {
	margin-bottom: 10px;
}

#main #camillefournet_page figure {
	position: relative;
}

#main #camillefournet_page .visually-hidden {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

#main #scroll_anchor {
	height: 1px;
	width: 100%;
	pointer-events: none;
	background: transparent;
}

@media screen and (min-width:1025px) {
	#main a:hover {
		opacity: 1;
	}
}

@media screen and (max-width:1024px) {
	#main .content_inner {
		padding: 0 15px;
	}

	#main #camillefournet_page .mb-200 {
		margin-bottom: 150px;
	}

	#main #camillefournet_page .mb-100 {
		margin-bottom: 50px;
	}

	#main #camillefournet_page .mb-60{
		margin-bottom: 30px;
	}
}

@media screen and (max-width:767px) {
	.sp_none {
		display: none;
	}

	.pc_none {
		display: block;
	}

	#main #camillefournet_page .mb-200{
		margin-bottom: 80px;
	}

	#main #camillefournet_page .mb-100{
		margin-bottom: 40px;
	}

	#main #camillefournet_page .mb-60{
		margin-bottom: 20px;
	}
}

/*ページ内共通設定ここまで*/
#main #camillefournet_page{
	margin-top: 50px;
}

#main #camillefournet_page h2{
	font-size: 55px;
  font-weight: 500;
  color: var(--sub01-color);
	text-align: left;
}

#main #camillefournet_page .main_cnt{
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 100px;
}

#main #camillefournet_page .main_cnt figure,
#main #camillefournet_page .main_cnt p{
	width: calc(50% - 50px);
}

#main #camillefournet_page .main_cnt p,
#main #camillefournet_page .select_cnt .content_inner > p{
	font-size: 17px;
	color: var(--sub03-color);
	line-height: 2;
	text-align: left;
	letter-spacing: .15em;
}

#main #camillefournet_page .logo_img{
	position: absolute;
	top: 0;
	right: 50px;
	width: 35%;
}

#main #camillefournet_page .select_cnt{
	background: var(--bg-color);
}

#main #camillefournet_page .select_cnt{
	padding: 150px 0;
}

#main #camillefournet_page .select_cnt ul{
	display: flex;
	align-items: start;
	justify-content: center;
	gap: 50px;
}

#main #camillefournet_page .select_cnt ul li{
	width: calc(calc(100% - 150px) / 4);
	overflow: hidden;
}

#main #camillefournet_page .select_cnt ul li figure{
	position: relative;
	margin-bottom: 20px;
}

#main #camillefournet_page .select_cnt ul li:first-of-type figure{
	background: url("../img/034003HCB_2.jpg") center center / contain no-repeat;
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(2) figure{
	background: url("../img/004001HCB_2.jpg") center center / contain no-repeat;
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(3) figure{
	background: url("../img/002001H_2.jpg") center center / contain no-repeat;
}

#main #camillefournet_page .select_cnt ul li:last-of-type figure{
	background: url("../img/318001H_2.jpg") center center / contain no-repeat;
}

#main #camillefournet_page .select_cnt ul li figure::after{
	position: absolute;
	bottom: 20px;
	/* top: 50%;
	transform: translateY(-50%); */
	left: 20px;
	padding-right: 15px;
	font-size: 20px;
	color: var(--sub01-color);
	z-index: 10;
	font-weight: bold;
	box-sizing: border-box;
	border-bottom: 1px solid #fff;
	border-right: 6px solid var(--accent01-color);
	transition: .5s all;
}

#main #camillefournet_page .select_cnt ul li a:hover figure::after{
	border-right-color: var(--accent03-color);
}

#main #camillefournet_page .select_cnt ul li:first-of-type figure::after{
	content: "アリゲーター";
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(2) figure::after{
	content: "カイマン";
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(3) figure::after{
	content: "リザード";
}

#main #camillefournet_page .select_cnt ul li:last-of-type figure::after{
	content: "牛革";
}

#main #camillefournet_page .select_cnt ul li figure img{
	transition: .5s all;
	opacity: 1;
}

#main #camillefournet_page .select_cnt ul li a:hover figure img{
	opacity: 0;
}

#main #camillefournet_page .select_cnt ul li p{
	text-align: left;
	font-size: 14px;
	line-height: 1.8;
	letter-spacing: .1em;
	color: var(--sub03-color);
}

#main #camillefournet_page .select_cnt .cnt_btn{
	width: 100%;
	max-width: 450px;
	margin: 0 0 0 auto;
}

#main #camillefournet_page .select_cnt .cnt_btn.btn02{
	margin-top: 40px;
}

#main #camillefournet_page .select_cnt .cnt_btn a{
	display: block;
	padding: 20px;
	background: var(--accent01-color);
	text-align: center;
}

#main #camillefournet_page .select_cnt .cnt_btn a span{
	font-size: 18px;
	color: #fff;
	font-weight: bold;
	transition: .5s all;
}

#main #camillefournet_page .select_cnt .cnt_btn a:hover span{
	letter-spacing: .18em;
}

@media screen and (max-width:1250px) and (min-width:1025px) {
	#main #camillefournet_page h2{
		font-size: min(calc(1vw * calc(45 / 10.25)), 55px);
	}	

	#main #camillefournet_page .main_cnt p, #main #camillefournet_page .select_cnt .content_inner > p{
		font-size: min(calc(1vw * calc(18 / 10.25)), 23px);
	}

	#main #camillefournet_page .select_cnt ul li figure::after{
		font-size: min(calc(1vw * calc(20 / 10.25)), 28px);
	}

	#main #camillefournet_page .select_cnt ul li p{
		font-size: min(calc(1vw * calc(14 / 10.25)), 16px);
	}
}

@media screen and (max-width:1024px) {
	#main #camillefournet_page .logo_img{
		right: 15px;
	}

	#main #camillefournet_page h2{
		font-size: min(calc(1vw * calc(35 / 7.68)), 45px);
	}	

	#main #camillefournet_page .main_cnt{
		gap: 50px;
	}

	#main #camillefournet_page .main_cnt figure, #main #camillefournet_page .main_cnt p{
		width: calc(calc(100% - 25px) / 2);
	}

	#main #camillefournet_page .main_cnt p, #main #camillefournet_page .select_cnt .content_inner > p{
		font-size: 18px;
	}

	#main #camillefournet_page .select_cnt{
		padding: 100px 0;
	}

	#main #camillefournet_page .select_cnt ul{
		gap: 25px;
	}

	#main #camillefournet_page .select_cnt ul li{
		width: calc(calc(100% - 75px) / 4);
	}

	#main #camillefournet_page .select_cnt ul li figure::after{
		bottom: 10px;
		left: 10px;
		font-size: min(calc(1vw * calc(18 / 7.68)), 20px);
	}

	#main #camillefournet_page .select_cnt ul li p{
		font-size: 14px;
	}
}

@media screen and (max-width:767px) {
	#main #camillefournet_page .main_cnt{
		flex-direction: column;
		gap: 20px;
	}

	#main #camillefournet_page .main_cnt figure, #main #camillefournet_page .main_cnt p{
		width: 100%;
	}

	#main #camillefournet_page .main_cnt p, #main #camillefournet_page .select_cnt .content_inner > p{
		font-size: min(calc(1vw * calc(16 / 3.75)), 18px);
	}

	#main #camillefournet_page h2{
		padding-top: 40px;
		font-size: min(calc(1vw * calc(22 / 3.75)), 35px);
	}

	#main #camillefournet_page .select_cnt{
		padding: 80px 0;
	}

	#main #camillefournet_page .select_cnt h2{
		padding-top: 0;
	}

	#main #camillefournet_page .select_cnt ul{
		flex-wrap: wrap;
	}

	#main #camillefournet_page .select_cnt ul li{
		width: calc(calc(100% - 25px) / 2);
	}

	#main #camillefournet_page .select_cnt ul li figure::after{
		top: 50%;
    transform: translateY(-50%);
		bottom: auto;
		font-size: 18px;
	}

	#main #camillefournet_page .select_cnt .cnt_btn{
		margin: 0 auto;
	}
}

/*アニメーション*/
#main #camillefournet_page .select_cnt ul li{
	opacity: 0;
	transition: .8s .5s all;
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(2){
	transition-delay: 1s;
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(3){
	transition-delay: 1.5s;
}

#main #camillefournet_page .select_cnt ul li:last-of-type{
	transition-delay: 2s;
}

#main #camillefournet_page .select_cnt ul li figure{
	transform: translateY(-20px);
	transition: .8s .5s all;
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(2) figure{
	transition-delay: 1s;
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(3) figure{
	transition-delay: 1.5s;
}

#main #camillefournet_page .select_cnt ul li:last-of-type figure{
	transition-delay: 2s;
}

#main #camillefournet_page .select_cnt ul li p{
	position: relative;
	transform: translateY(40px);
	transition: .8s .5s all;
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(2) p{
	transition-delay: 1s;
}

#main #camillefournet_page .select_cnt ul li:nth-of-type(3) p{
	transition-delay: 1.5s;
}

#main #camillefournet_page .select_cnt ul li:last-of-type p{
	transition-delay: 2s;
}

#main #camillefournet_page .select_cnt.active ul li{
	opacity: 1;
}

#main #camillefournet_page .select_cnt.active ul li figure{
	transform: translateY(0);
}

#main #camillefournet_page .select_cnt ul li p{
	transform: translateY(0);
}