@charset 'utf-8';

/*
contact
*/
.contact-form th, .contact-form td {
	display: block;
}
.contact-form th {
	font-size: 2rem;
	font-weight: 400;
	text-align: left;
	position: relative;
	letter-spacing: 0.2em;
	vertical-align: top;
	padding-top: 3rem;
}
.contact-form th:before, .contact-form .wpcf7-acceptance:before {
	position: absolute;
	top: 3.7rem;
	right: 0;
	font-size: 1.6rem;
	letter-spacing: 0.1em;
	padding: 3px 5px;
	display: flex;
	align-items: flex-start;
	justify-content: center;
	line-height: 1;
	color: #fff;
}
.contact-form th.required:before, .contact-form .wpcf7-acceptance:before {
	content: '必須';
	background-color: #B90000;
}
.contact-form th.optional:before {
	content: '任意';
	background-color: #1B4081;
}
.contact-form td input {
	width: 100%;
	border: .5px solid #707070;
	height: 3.5rem;
}
.contact-form td textarea {
	width: 100%;
	border: .5px solid #707070;
	height: 27rem;
}
.contact-form .wpcf7-acceptance {
	letter-spacing: 0.05em;
	position: relative;
	width: fit-content;
	display: block;
	margin: 0 auto;
	padding-right: 7rem;
	font-size: 13px;
}
.contact-form .wpcf7-acceptance:before {
	top: 4px;
	right: 0;
}
.contact-form .wpcf7-acceptance a {
	display: inline-block;
	text-decoration: underline .5px;
	text-underline-offset: 5px;
}
.contact-form .wpcf7-acceptance .wpcf7-list-item {
	margin-top: 1rem;
}
@media (min-width:576px) {
	.contact-form .wpcf7-acceptance {
		font-size: 2rem;
		padding-right: 10rem;
	}
	.contact-form .wpcf7-acceptance:before {
		top: 6px;
	}
}
@media (min-width:768px) {
	.contact-form th, .contact-form td {
		display: table-cell;
		padding: 2.85rem 0;
	}
	.contact-form th {
		width: 31.2%;
		letter-spacing: 0;
	}
	.contact-form td {
		width: 68.8%;
	}
	.contact-form th:before, .contact-form .wpcf7-acceptance:before {
		right: 2rem;
	}
}
@media (min-width:992px) {
	.contact-form th {
		letter-spacing: 0.2em;
	}
}


/*
privacy
*/
.privacy {
	padding: 0 0 20rem;
}
.privacy h1.common-subtitle {
	margin-bottom: 5.5rem;
}
.privacy-content .common-subtitle {
	font-size: 16px;
	margin: 6.5rem 0 2rem;
	font-weight: 400;
	padding-bottom: 10px;
}
.privacy-content p + p {
	margin-top: 3rem;
}


/*
NEWS-archive
*/
.post-type-archive-news .titlearea3-mv, .tax-news-cat .titlearea3-mv, .tax-news-tag .titlearea3-mv {
	background-image: url("../images/news/news_mv.jpg");
}
.news-archive {
	padding-top: 0;
}
.news-archive-list a {
	padding: 3.5rem 0 5px;
	background-image: linear-gradient(to right, #333333 12px, transparent 12px);
	background-size: 24px .5px;
	background-repeat: repeat-x; 
	background-position: left bottom;
	font-size: 2rem;
	letter-spacing: 0.05em;
}
.news-archive-list li:first-child a {
	padding-top: 0;
}
.news-archive-list .news-date {
	font-weight: 700;
	margin-right: 4rem;
	letter-spacing: -0.05em;
}
.news-archive-list .news-tag-wrapper {
	margin-right: 3.5rem;
	display: flex;
	flex-wrap: wrap;
}
.news-archive-list .news-tag {
	font-size: 16px;
	color: #fff;
	line-height: 1;
	padding: 2px 2rem;
	background-color: #3F9877;
	letter-spacing: 0;
	white-space: nowrap;
}
.news-archive-list .news-tag + .news-tag {
	margin-left: 10px;
}
@media (min-width:992px) {
	.news-archive-list a {
		display: flex;
		align-items: center;
	}
	.news-archive-list .news-tag-wrapper {
		flex-direction: column;
	}
	.news-archive-list .news-tag + .news-tag {
		margin: 10px 0 0 0;
	}
}

/*
NEWS-single
*/
.single-news .titlearea3-mv {
	background-image: url("../images/news/news_single_mv.jpg");
}
.news-single {
	letter-spacing: 0.05em;
}
.news-thumbnail {
	width: 100%;
	height: 0;
	padding-bottom: 56%;
	position: relative;
	margin-bottom: 2.8rem;
}
.news-thumbnail img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
}
.news-single .news-date {
	font-size: 2.5rem;
	font-weight: 700;
	color: #3F9877;
	margin-right: 1.8rem;
}
.news-single .news-tag-wrapper, .blog-single .news-tag-wrapper {
	display: flex;
}
.news-single .news-tag, .blog-single .news-tag {
	font-size: 2rem;
	color: #fff;
	line-height: 1;
	padding: 8px 2rem;
	background-color: #3F9877;
	letter-spacing: 0;
	white-space: nowrap;
	width: fit-content;
}
.news-single .news-tag + .news-tag, .blog-single .news-tag + .news-tag {
	margin-left: 1.8rem;
}
.news-single-title {
	color: #333333;
	font-size: 3.5rem;
	font-weight: 700;
	border-bottom: 3px solid #3F9877;
	padding-bottom: 1rem;
	margin-bottom: 4rem;
}
.news-single .editor-content {
	position: relative;
	padding-bottom: 3rem;
}
.news-single .editor-content:after {
	content: '';
	width: 21.8rem;
	height: 1px;
	background-color: #55D2E6;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}
.single-news-btn {
	font-size: 2.5rem;
	line-height: 1;
	margin: 5rem 0 0 auto;
	display: flex;
	align-items: center;
	justify-content: flex-end;
}
.single-news-btn img {
	margin-left: 10px;
	max-width: 10px;
}
.news-single .sidebar, .blog-single .sidebar {
	color: #3F9877;
	background-color: #EAFCF5;
}
.news-single .sidebar-title, .blog-single .sidebar-title {
	border-bottom: 2px solid #3F9877;
}
.news-single .sidebar-list li a:hover, .blog-single .sidebar-list li a:hover {
	color: #333333;
}
.news-single .sidebar-list li a:before, .blog-single .sidebar-list li a:before {
	background-image: url("../images/common/arrow_green04.png");
	width: 13px;
	height: 7px;
}
.news-single .sidebar-list li a:hover::before, .blog-single .sidebar-list li a:hover::before {
	background-image: url("../images/common/arrow_black02.png");
	
}
@media (min-width:768px) {
	.news-single-top {
		display: flex;
		align-items: center;
	}
}
@media (min-width:992px) {
	.news-single-content, .blog-single-content {
		width: calc(80% - 7rem);
	}
}


/*BLOG*/
.post-type-archive-blog .titlearea3-mv {
	background-image: url("../images/blog/blog_mv.jpg");
}
.blog-archive {
	padding-top: 0;
}
.blog-archive-list li + li {
	margin-top: 4.8rem;
}
.blog-archive-list a {
	padding: 13px 2rem;
	background-color: #FCFCFC;
	box-shadow: 3px 3px 6px 0 rgba(0,0,0,.16);
	border-radius: 5px;
}
.blog-archive .blog-thumb {
	width: 100%;
	height: 0;
	position: relative;
	padding-bottom: 70%;
	margin-bottom: 2rem;
}
.blog-archive .blog-thumb img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
}
.blog-archive-top {
	margin-bottom: 10px;
}
.blog-archive .blog-date {
	font-size: 1.7rem;
	margin-right: 4.5rem;
}
.blog-archive .blog-title {
	font-size: 2.4rem;
	font-kerning: 700;
}
.blog-archive .pagination a, .blog-archive .pagination span {
	padding: 0;
	margin: 0 12.5px;
}
.blog-archive .pagination span.current {
	color: #fff;
	background-color: #636973;
	border-radius: 100%;
	width: 2.4rem;
	height: 2.4rem;
	display: flex;
	align-items: center;
	justify-content: center;	
}
@media (min-width:768px) {
	.blog-archive-list a {
		display: flex;
		align-items: center;
	}
	.blog-archive .blog-thumb {
		margin: 0 2.8rem 0 0;
		max-width: 20rem;
		padding-bottom: 20%;
	}
	.blog-archive-top {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
	}
}
@media (min-width:992px) {
	.blog-archive .blog-thumb {
		padding-bottom: 16%;
	}
}

/*
BLOG-single
*/
.single-blog .titlearea3-mv {
	background-image: url("../images/blog/blog_single_mv.jpg");
}
.blog-single-thumb {
	width: 100%;
	height: 0;
	position: relative;
	padding-bottom: 42.2%;
	margin-bottom: 3.5rem;
}
.blog-single-thumb img {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
}
.blog-single .blog-date {
	font-size: 2.5rem;
	font-weight: 700;
	letter-spacing: 0.05em;
}
.blog-single .blog-title {
	font-size: 3.5rem;
	font-weight: 700;
	padding-bottom: 1rem;
	border-bottom: 3px solid #3F9877;
	margin-bottom: 4rem;
}