/*	===============================================================
	● ブライダルチェック特設ページ
	---------------------------------------------------------------
	Release 2024.07.17                                Powered by TDR
	=============================================================== */
	@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@700&display=swap');

	body
	{
		padding:0;
	}
	main
	{
		display: block;
		line-height: 2;
	}
	p
	{
		text-align: justify;
	}
	main > h3
	{
		background: #c19963;
		padding:22px 0;
		text-align: center;
	}
	main > h3 img
	{
		max-width:659px;
		margin:auto;
	}
	.container
	{
		width: 100%;
		max-width: 1100px;
		margin:auto;
		padding:0 10px;
		position: relative;
	}

	@media screen and (max-width: 768px)
	{
		main
		{
			line-height: 1.7;
		}
		main > h3
		{
			padding:12px 0;
		}
		main > h3 img
		{
			width:80%;
		}
		.container
		{
			padding:0 0px;
		}
	}

	.kv > .container
	{
		max-width: 1440px;
	}

	.kv
	{
		padding:0 30px;
		background: url(../images/kv.jpg) no-repeat;
		background-size: cover;
		background-position: right 30% bottom;
		height: 1000px;
	}
	.kv h1
	{
		max-width: 95%;
		width: 865px;
		height:auto;
		padding-top:110px;
		filter: drop-shadow(2px 2px 5px #fff);
	}
	@media screen and (max-width: 768px)
	{
		.kv
		{
			height: 300px;
			padding:0 0px;
			display: flex;
			align-items: center;
		}
		.kv h1
		{
			max-width: 65%;
			width:auto;
			height:230px;
			max-height: 230px;
			padding-top:0px;
		}
		.kv h1 img
		{
			object-fit: contain;
		}
	}

	.read
	{
		background: #ffffed;
		padding:50px 0 80px;
	}
	.read h2
	{
		max-width:386px;
		margin-bottom:30px;
	}
	@media screen and (max-width: 768px)
	{
		.read
		{
			padding:15px 30px 40px;
		}
		.read h2
		{
			max-width:calc(386px / 2);
			margin-bottom:20px;
		}
	}

	.recommend
	{
		background: #fff;
		padding:80px 0;
	}
	.recommend h2
	{
		max-width:498px;
		margin:0 auto 30px;
	}
	.recommend ul
	{
		display: flex;
		justify-content: center;
		flex-wrap: wrap;
		gap:30px;
		margin-bottom: 20px;
	}
	.recommend ul li
	{
		width:calc(( 100% - 60px ) / 3);
	}
	.recommend ul li figure
	{
		margin-bottom:20px;
	}
	.recommend ul li div
	{
		min-height:230px;
		padding:30px 45px 30px 30px;
		background:
		url(../images/recommend_bracket1.png) no-repeat top left,
		url(../images/recommend_bracket2.png) no-repeat bottom right 15px;
	}
	.recommend ul li div h4
	{
		font-size:1.8rem;
		text-align: center;
		font-weight: bold;
		margin-bottom:15px;
	}
	.recommend ul li div p
	{
		font-size:1.7rem;
	}
	@media screen and (max-width: 768px)
	{
		.recommend
		{
			padding:40px 10px;
		}
		.recommend h2
		{
			max-width:calc(498px / 2);
			margin:0 auto 20px;
		}
		.recommend ul
		{
			gap:20px 5px;
		}
		.recommend ul li
		{
			width:calc(( 100% - 5px ) / 2);
		}
		.recommend ul li figure
		{
			margin-bottom:10px;
		}
		.recommend ul li div
		{
			min-height:auto;
			padding:10px 15px;
			background:
			url(../images/recommend_bracket1.png) no-repeat top left / 39px 39px,
			url(../images/recommend_bracket2.png) no-repeat bottom right / 39px 39px;
		}
		.recommend ul li div h4
		{
			font-size:1.6rem;
			margin-bottom:10px;
		}
		.recommend ul li div p
		{
			font-size:1.4rem;
		}

	}

	.inspection
	{
		background: #c9e8f3;
		padding:80px 0;
	}
	.inspection h2
	{
		max-width:487px;
		margin:0 auto 10px;
	}
	.inspection p
	{
		font-weight: bold;
		text-align: center;
		margin:0 auto 50px;
	}
	.inspection .acc
	{
		padding:25px 50px;
		background:
		url(../images/inspection_bracket1.png) no-repeat top left,
		url(../images/inspection_bracket2.png) no-repeat top right,
		url(../images/inspection_bracket4.png) no-repeat bottom left,
		url(../images/inspection_bracket3.png) no-repeat bottom right;
		background-color: #fff;
		margin-bottom:20px;
	}
	.inspection .acc dt
	{
		font-size:3rem;
		color:#036eb7;
		cursor: pointer;
		font-weight: bold;
		font-family: "Noto Serif JP", serif;
		position: relative;
	}
	.inspection .acc dt:hover
	{
		color:#036eb7;
	}
	.inspection .acc dt.open
	{
		font-size:3rem;
	}
	.inspection .acc dt:after
	{
		position: absolute;
		content:"";
		top:calc( 50% - (3.5rem / 2) );
		right:20px;
		width:3.5rem;
		height:3.5rem;
		background-color: #2ea6df;
		mask-repeat: no-repeat;
		mask-position: center;
		mask-size: contain;
		mask-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512"><path d="M256 0a256 256 0 1 0 0 512A256 256 0 1 0 256 0zM135 241c-9.4-9.4-9.4-24.6 0-33.9s24.6-9.4 33.9 0l87 87 87-87c9.4-9.4 24.6-9.4 33.9 0s9.4 24.6 0 33.9L273 345c-9.4 9.4-24.6 9.4-33.9 0L135 241z"/></svg>');
		transition: 0.5s;
	}
	.inspection .acc dt.open:after
	{
		transform: rotate(180deg);
		bottom:50%;
	}
	.inspection .acc dd
	{
		margin-top:30px;
		padding-top:30px;
		border-top:1px solid #036eb7;
	}
	.inspection .acc dd strong
	{
		font-size:2.8rem;
		display: block;
		font-weight: bold;
		margin-bottom:10px;
	}
	.inspection .acc dd p
	{
		text-align: justify;
		font-weight: normal;
	}
	.btn
	{
		text-align: center;
		padding:50px 0 20px;
	}
	.btn a
	{
		font-size:3rem;
		font-weight: bold;
		height:60px;
		line-height: 50px;
		padding:0.7em 2em;
		background:#c19962;
		color:#fff;
		text-decoration: none;
		border-radius: calc(30px + 0.35em);
	}
	@media screen and (max-width: 768px)
	{
		.inspection
		{
			padding:40px 20px;
		}
		.inspection h2
		{
			max-width:calc(487px / 2);
		}
		.inspection p
		{
			width:100%;
			margin:0 auto 30px;
		}
		.inspection .acc
		{
			padding:10px 20px;
			background:
			url(../images/inspection_bracket1.png) no-repeat top left / 15px 15px,
			url(../images/inspection_bracket2.png) no-repeat top right / 15px 15px,
			url(../images/inspection_bracket4.png) no-repeat bottom left / 15px 15px,
			url(../images/inspection_bracket3.png) no-repeat bottom right / 15px 15px;
			background-color: #fff;
			margin-bottom:15px;
		}
		.inspection .acc dt
		{
			font-size:1.8rem;
		}
		.inspection .acc dt.open
		{
			font-size:1.8rem;
		}
		.inspection .acc dt:after
		{
			position: absolute;
			content:"";
			top:calc( 50% - (1.8rem / 2) );
			right:10px;
			width:1.8rem;
			height:1.8rem;
		}
		.inspection .acc dd
		{
			margin-top:10px;
			padding-top:10px;
		}
		.inspection .acc dd strong
		{
			font-size:1.6rem;
			margin-bottom:10px;
		}
		.inspection .acc dd p
		{
			margin:0 auto 10px;
		}
		.btn
		{
			padding:10px 0 10px;
		}
		.btn a
		{
			font-size:1.6rem;
			height:auto;
			line-height: 1.8;
			padding:0.7em 0;
			width:80%;
			display: block;
			margin:auto;
			border-radius: 20px;
		}
	}

	.inspection .faq
	{
		margin-top:100px;
		background: #fff;
		border-radius: 20px;
		padding:80px 100px;
	}
	.inspection .faq h2
	{
		max-width:647px;
		margin:0 auto 30px;
	}
	.inspection .faq .faq_wrap
	{
		padding-top:30px;
	}
	.inspection .faq .faq_wrap > div
	{
		width: 100%;
		display: flex;
		margin-bottom:20px;
	}
	.inspection .faq .faq_wrap > div figure
	{
		width:63px;
		height:63px;
		position: absolute;
		z-index: 10;
	}
	.inspection .faq .faq_wrap > div figure img
	{
		width:63px;
		height:63px;
	}
	.inspection .faq .faq_wrap > div p
	{
		text-align: left;
		font-weight: bold;
		margin:0;
		padding-left:90px;
		position: relative;
		z-index: 1;
		min-height: 63px;
		line-height: 63px;
		border-radius: 31.5px;
	}
	.inspection .faq .faq_wrap > div.faq_q p
	{
		width: 100%;
		background:#046eb7;
		color:#fff;
	}
	.inspection .faq .faq_wrap > div.faq_a p
	{
		line-height: 2.5;
		padding-top:10px;
	}
	@media screen and (max-width: 768px)
	{
		.inspection .faq
		{
			margin-top:30px;
			background: #fff;
			border-radius: 10px;
			padding:40px 30px;
		}
		.inspection .faq h2
		{
			max-width:calc(647px / 2);
			margin:0 auto 10px;
		}
		.inspection .faq .faq_wrap > div figure
		{
			width:calc(63px / 2);
			height:calc(63px / 2);
		}
		.inspection .faq .faq_wrap > div figure img
		{
			width:calc(63px / 2);
			height:calc(63px / 2);
		}
		.inspection .faq .faq_wrap > div p
		{
			text-align: left;
			font-weight: bold;
			margin:0;
			padding-left:calc(90px / 2);
			position: relative;
			z-index: 1;
			min-height: calc(63px / 2);
			line-height: 1.6;
		}
		.inspection .faq .faq_wrap > div.faq_q p
		{
			width: 100%;
			background:#fff;
			color:#046eb7;
		}
		.inspection .faq .faq_wrap > div.faq_a p
		{
			line-height: 1.6;
			padding-top:0px;
		}

	}

	.top-clinic
	{
		padding: 75px 0 50px;
	}
	.top-clinic:after
	{
		content: none;
	}
	.c-ttl__main
	{
		padding-top:50px;
		background: url(../images/clinic_ttl.png) no-repeat;
		background-size: 192px 59px;
		background-position: top center;
	}

	.l-footer__about
	{
		width: 100%;
		margin-top:20px;
	}
	.footer_sns
	{
		margin-top:20px;
	}
	@media screen and (max-width: 768px)
	{
		.top-clinic
		{
			padding: 25px 0 30px;
		}
		.c-ttl__main
		{
			padding-top:25px;
			background-size: 81px 29px;
		}
		.l-footer__about
		{
			margin: 0 auto 0px;
		}
	}

	footer
	{
		background: #c6df6e;
	}
	footer p
	{
		text-align: center;
		font-size:1.5rem;
		color:#fff;
		padding:0.5em
	}