/*
Theme Name: Kidzuki_2
Text Domain: Kidzuki
*/

/* PAPER SLIDER */
#top-paper {
	max-width: calc(100vw - 30px);
}

@media (max-width: 640px) {
	#top-paper {
		margin-top: 33px;
	}
}

#top-paper .paper-slider li {
	margin: 0 7.5px
}

#top-paper h2 {
	position: relative;
	text-align: center;
	margin-bottom: 18px;
	line-height: 1rem;
}
#top-paper h2 span {
	background: #f2f1ed;
	padding: 0px 7px;
	font-size: 21px;
}

#top-paper h2:before {
	content: "";
	display: block;
	width: 100%;
	border-bottom: 1px #36322B solid;
	position: absolute;
	left: 0;
	bottom: calc(50% - 2px);
	z-index: -1;
}

#top-paper .paper-download {
	position: relative;
	margin-top: 18px;
}

#top-paper .paper-download:before {
	content: "";
	display: block;
	width: 100%;
	border-bottom: 1px #36322B solid;
	position: absolute;
	left: 0;
	bottom: calc(50% - 1px);
	z-index: -1;
}

#top-paper a.download-button {
	position: relative;
	background: #905C40;
	font-size: 13px;
	font-weight: bold;
	color: #FFFFFF;
	padding: 6px 0;
	width: 210px;
	text-align: center;
	display: block;
    margin: 0 auto;
	transition: background 0.3s ease;
}

#top-paper a.download-button:hover {
    background: #a37a62;
    text-decoration: none;
}

#top-paper a.download-button img {
	position: absolute;
    top: 50%;
    right: 10px;
    width: 6px;
    transform: translateY(-50%);
}

.sp-only {
	display: none !important;
}

@media (max-width: 768px) {
	.sp-only {
		display: block !important;
	}
	.pc-only {
		display: none !important;
	}
}

@media (min-width: 1660px) {
	footer .inner .footer-link a:first-child {
		margin-bottom: 40px;
	}
}


/* 一旦_230907 */
.r-head {
	line-height: 2.4;
	color: #937A63;
	padding: 0 0 0 20px;
	border-left: solid #937A63 4px;
	margin: 0 0 60px;
	font-weight: bold;
}

.r-text img {
	height: auto !important;
}

.rbody a {
	color: #003BFF;
}

.rbody a:hover {
	text-decoration: underline;
}

/* ↑一旦_230907 */

.image-caption {
	display: block;
	font-size: 0.8rem;
	font-weight: bold;
}

.wp-block-column .wp-block-gallery {
	margin: 0 0 30px !important;
}

#articles-single-other ul li .tags a {
	line-height: 1 !important;
}

#index-articles .articles-tags .row .more {
	min-width: 70px !important;
}

#index-news h2 {
	font-size: 40px;
	margin: 0 0 50px;
	text-align: center;
}

/* CONTACT お問い合せページ */
.contact-content {
	margin-top: 45px;
}

@media screen and (max-width: 970px) {
	.contact-content {
		margin-top: 15px;
	}
}

.contact-content:last-child {
	margin-top: 55px;
	margin-bottom: 165px;
}

.page-id-73 .contact-content:last-child {
	margin-top: 0 !important;
}

.contact-content article {
	width: 100%;
	display: flex;
}

.contact-content .inner {
	max-width: 1280px;
	width: calc(100% - 30px);
	margin: 0 auto;
}

.contact-content-left,
.contact-content-right,
.contact-content-full {
	position: relative;
	background: #fff;
	width: 50%;
	box-sizing: border-box;
	padding: 77px 40px 50px;
}

.contact-content-left {
	border-top: 2px #598875 solid;
	margin-right: 28px;
}

.contact-content-right {
	border-top: 2px #5C85C3 solid;
	margin-left: 28px;
}

.contact-content-full {
	width: 100%;
	border-top: 2px #905C40 solid;
	padding: 40px 40px 50px;
	text-align: center;
}

.contact-content-left h3,
.contact-content-right h3 {
	position: absolute;
	display: block;
	width: 320px;
	top: -32px;
	left: calc(50% - 160px);
	margin: 0 auto;
	border-radius: 999px;
	color: #fff;
	padding: 14px;
	text-align: center;
	font-size: 18px;
}

.contact-content-left h3 {
	background-color: #598875;
}


.contact-content-right h3 {
	background-color: #5C85C3;
}

.contact-content-full h3 {
	color: #905C40;
	font-size: 18px;
	margin-bottom: 35px;
}

.contact-content-left p,
.contact-content-right p,
.contact-content-full p {
	font-size: 15px;
	line-height: 32px;
	text-align: left !important;
}

.contact-content-full p {
	max-width: 640px;
	margin: 0 auto;
}

.contact-content p a {
	color: #003BFF;
}

.contact-content article .btn {
	padding: 50px 0 0;
	text-align: center;
}

/* 新お問い合わせページのスタイル↓ */
/* .contact-page #page-header {
	padding-bottom: 0;
}

.contact-page .contact-content-full {
	padding: 0 0 50px;
	border-top: none;
	border-radius: 20px;
}

.contact-page .contact-content-full h3 {
	background: #05674B;
	color: white;
	padding: 17px 0;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
}

.contact-page .contact-content-full .explanation {
	font-family: "Noto Sans JP", -apple-system, BlinkMacSystemFont, sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: #905C40;
	border-bottom: 1px solid #905C40;
	margin-top: 21px;
	padding-bottom: 3px;
	display: inline-block;
	transition: .5s;
}

.contact-page .contact-content-full .explanation:hover {
	text-decoration: none;
	opacity: .5;
}

.contact-page .contact-content-full p {
	max-width: 1059px;
	margin: 0 auto;
	text-align: center !important;
	font-size: 16px;
}

.contact-page .contact-content-left,
.contact-page .contact-content-right {
	border-top: 0;
	border-radius: 20px;
	padding: 0 0 50px;
}

.contact-page .contact-content-right .link-copy {
	text-align: center;
	font-family: Roboto, "Noto Sans JP", -apple-system, BlinkMacSystemFont, sans-serif;
	font-weight: 500;
	font-size: 20px;
	color: #905C40;
	display: flex;
	justify-content: center;
	column-gap: 0.5em;
	padding: 30px 0 0;
}

.contact-page .contact-content-right .link-copy .copy-target {
	cursor: pointer;
}

.contact-page .contact-content-left h3,
.contact-page .contact-content-right h3 {
	position: initial;
	width: auto;
	border-radius: 0;
	border-top-left-radius: 20px;
	border-top-right-radius: 20px;
	font-size: 15px;
	font-weight: bold;
}

.contact-page .contact-content-left h3 {
	background: #92A43C;
}

.contact-page .contact-content-right h3 {
	background: #6F94CD;
}

.contact-page .contact-content-left p,
.contact-page .contact-content-right p {
	padding: 60px 28px 0;
	text-align: center !important;
}

.contact-page .to-faq {
	border-top: 1px solid #905C40;
	border-bottom: 1px solid #905C40;
	padding: 15px 0;
	width: 100%;
	position: relative;
	text-align: center;
}

.contact-page .to-faq:after {
	content: "";
	width: 7px;
	height: 6px;
	background: url(./assets/images/shop-btn-arrow.svg) no-repeat center/contain;
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
}

.contact-page .to-faq a {
	color: #905C40;
	font-size: 15px;
	font-weight: bold;
	text-decoration: none;
	transition: .5s;
}

.contact-page .to-faq a:hover {
	text-decoration: none;
	opacity: .5;
}

@media screen and (max-width: 768px) {
	.contact-page #page-header .copy p {
		font-feature-settings: "palt";
	}

	.contact-page .contact-content-full p {
		text-align: initial !important;
		width: 320px;
		padding: 8px 0 0;
		margin: auto;
	}

	.contact-page .contact-content-left p,
	.contact-page .contact-content-right p {
		text-align: initial !important;
		width: 320px;
		padding: 25px 0 0;
		margin: auto;
	}
} */

.page-id-73 .contact-content article {
	text-align: center;
}

.page-id-73 .contact-content article .btn {
	margin: 0 auto;
	max-width: 100%;
}

.page-id-73 .contact-content article .btn.btn-double a {
	width: 450px;
}

.sp {
	display: none;
}

/* SNS-icons */
.logo {
	position: relative;
}

.sns-icons {}

.sns-icons a {
	display: inline-block;
	margin: 0 8px;
}

.sns-icons .mail-icon {
	background: url("assets/images/sns-icons/mail.svg");
	width: 17px;
	height: 13px;
}

.sns-icons .facebook-icon {
	background: url("assets/images/sns-icons/facebook_l.svg");
	width: 9px;
	height: 15.75px;
}

.sns-icons .twitter-icon {
	background: url("assets/images/sns-icons/twitter_l.svg");
	width: 17.14px;
	height: 14.09px;
	position: relative;
	top: -0.5px;
}

.sns-icons .instagram-icon {
	background: url("assets/images/sns-icons/instagram_l.svg");
	width: 16.57px;
	height: 16.57px;
	position: relative;
	top: 1px;
}

.sns-icons .youtube-icon {
	background: url("assets/images/sns-icons/yt_icon.svg");
	width: 19.67px;
    height: 14.57px;
	position: relative;
	top: 0px;
}

.sns-icons .cart-icon {
	background: url("assets/images/sns-icons/cart_1.svg");
	width: 12px;
	height: 16px;
	position: relative;
	top: 0;
}

@media screen and (min-width: 769px) {
	.wp-block-gallery .wp-block-image:first-child {
		margin-right: 1px !important;
	}

	.blocks-gallery-caption {
		max-width: 960px;
		margin: 0 auto !important;
	}

	#sdgs-content03 .wrap article {
		pointer-events: none;
	}
}


@media screen and (min-width: 769px) and (max-width: 1389px) {

	#index-projects .content ul li,
	#index-projects .content ul li a .text,
	#index-projects .content ul li a figure {
		height: calc(((100vw - 100px) - ((100vw - 100px) * 0.04)) / 2 * 0.32361111) !important;
	}

	#index-projects .content ul li a .text {
		padding: 0 !important;
	}

	#index-projects .content ul li a .text p {
		font-size: calc(100vw * 18 / 1600) !important;
	}
}

@media screen and (max-width: 1000px) {
	.blocks-gallery-caption {
		padding: 10px 40px 0 !important;
		margin-top: -10px !important;
	}

	.sns-icons {
		left: -85px;
		top: 1px;
	}

	.sns-icons a {
		margin: 0 4px;
	}

	header .logo img {
		height: 15px !important;
	}
}

@media screen and (max-width: 1000px) {
	.sns-icons {
		display: none;
	}
}

@media screen and (max-width: 768px) {
	.wp-block-column .wp-block-gallery {
		margin: 0 -11px 30px !important;
	}

	#articles-single-content .container article .body figure.full-width figure {
		margin: 0 0 15px !important;
	}

	.blocks-gallery-caption {
		padding: 10px 11px 0 !important;
	}

	.full-width .blocks-gallery-caption {
		padding: 10px 26px 0 !important;
	}

	#articles-single-content .container article .body figure.full-width {
		margin: 0 -26px 60px !important;
	}

	#articles-single-content .container article .body figure.wp-block-gallery {
		margin: 0 -26px 60px !important;
	}

	#index-news h2 {
		font-size: 24px;
		margin: 0 0 30px;
	}

	/* CONTACT お問い合せページ */
	.contact-content article .btn {
		text-align: center;
		padding: 30px 0 0;
	}

	.contact-content article .btn a {
		font-size: 15px;
		max-width: 100%;
	}
}

@media screen and (max-width: 970px) {
	.contact-page #page-header {
		padding: 60px 26px 30px;
	}

	.contact-content article {
		flex-direction: column;
	}

	.contact-content:last-child {
		margin-top: 25px;
		margin-bottom: 104px;
	}

	.contact-content-left,
	.contact-content-right,
	.contact-content-full {
		width: 100%;
		margin-left: 0;
		margin-right: 0;
		padding: 54px 18px 18px;
	}

	.contact-content-full {
		padding: 31px 18px 18px;
	}

	.contact-content-right {
		margin-top: 55px;
		/* 新コンタクトページで下記適用 */
		/* margin-top: 15px; */
	}

	.contact-content-full h3 {
		margin-bottom: 25px;
	}

	.pc {
		display: none;
	}

	.sp {
		display: inline-block;
	}

	.btn-double a {
		padding-top: 4px;
		line-height: 1.5 !important;
	}
}

@media screen and (max-width: 768px) {
	#mainvisual .menu ul li {
		/*display:none;*/
		position: relative;
		z-index: 1;
	}

	#mainvisual .menu ul li.active {
		/*display:block;*/
		z-index: 2;
	}

	#mainvisual .menu ul li.done {
		/*display:none;*/
		z-index: 1;
	}
}


@media screen and (max-width: 768px) {
  .limited{
   height: 27.73vw!important;
  }
}

.to-wp {
  position:fixed;
  bottom: 24px;
  left: 1.33vw;
  z-index:10;
  display: block;
  width:596px;
  display:none;
}

@media screen and (max-width: 767px){
  .to-wp {
    bottom:10px;
    left:50%;
    transform:translateX(-50%);
    width:94.66vw;
  }
}

.to-wp img {
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.3);
}