@charset "utf-8";
/*
theme Name: Nuts-and-Chip
Author: Toma Akagami
Description: Nuts-and-Chipオリジナルテーマ
version: 1.0.0
*/

html {
	font-size: 62.5%;
}

body {
	background : #fff;
	color      : #333;
	font-family: "Noto Sans JP", 游ゴシック, YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, "Droid Sans", 'Lato', sans-serif;
	font-size  : 1.6em;
	width      : 100%;
}


#main-visual,
#family-page-top,
#wanted-cta-area,
.archive-desc,
.single-post-head,
.single-news-post-head {
	margin-top: 88px;
}


.br-pc {
	display: block;
}

.br-sp {
	display: none;
}

@media screen and (max-width: 767px) {
	.br-pc {
		display: none;
	}

	.br-sp {
		display: block;
	}
}

.container {
	margin   : 0 auto;
	max-width: 1360px;
	padding  : 0 30px;
	width    : 100%;
}

.header-inner {
	position          : fixed;
	top               : 0;
	left              : 0;
	-webkit-box-align : center;
	-ms-flex-align    : center;
	-webkit-box-pack  : justify;
	-ms-flex-pack     : justify;
	-webkit-box-shadow: 0px 0px 6px rgba(150, 150, 150, 0.4);
	align-items       : center;
	background        : #222;
	box-shadow        : 0px 0px 6px rgba(150, 150, 150, 0.4);
	color             : #fff;
	display           : -webkit-box;
	display           : -ms-flexbox;
	display           : flex;
	height            : 88px;
	justify-content   : space-between;
	width             : 100%;
	z-index           : 100;
}

.header-logo {
	width      : 64px;
	height     : 64px;
	margin-left: 30px;
}

.header-logo img {
	width : 100%;
	height: auto;
}

.gnav {
	margin-right: 30px;
}

.gnav-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width  : 100%;
}

.gnav-list li {
	margin-left: 36px;
}

.gnav-list li:first-child {
	margin-left: 0;
}

.gnav-list li a {
	display    : block;
	font-weight: 700;
	height     : 100%;
	position   : relative;
	text-align : center;
}

.gnav-txt:hover>.gnav-mark {
	display: block;
}

.gnav-mark {
	-webkit-transform: translateX(-50%);
	background       : #FFC136;
	border-radius    : 50%;
	bottom           : -12px;
	display          : none;
	height           : 6px;
	left             : 50%;
	position         : absolute;
	transform        : translateX(-50%);
	width            : 6px;
}


.drawer-hamburger {
	display : none;
	padding : 32px 2rem 0 0;
	position: fixed;
	top     : 0;
	width   : 3rem;
}

.drawer--right.drawer-open .drawer-hamburger {
	right: 75%;
}

.drawer-overlay {
	background: rgba(0, 0, 0, 0.6);
}

.drawer-hamburger-icon {
	background: #333;
}

.drawer-hamburger-icon::before,
.drawer-hamburger-icon::after {
	background: #333;
}

.drawer-nav {
	background: #000;
	width     : 75%;
}

.drawer--right .drawer-nav {
	right: -75%;
}

.drawer-menu {
	padding: 1.6rem 0 0 1.6rem;
}

.drawer-menu li {
	border-bottom: 1px solid #555;
	padding      : 1.6rem 0;
	position     : relative;
}

.drawer-menu li::after {
	-webkit-transform: translateY(-50%);
	color            : #fff;
	content          : '\f054';
	font-family      : 'Font Awesome 5 Free';
	font-weight      : 900;
	position         : absolute;
	right            : 10px;
	top              : 50%;
	transform        : translateY(-50%);
}

.drawer-menu li a {
	color         : #fff;
	display       : block;
	font-weight   : 700;
	letter-spacing: .2rem;
	margin-bottom : 0.6rem;
}

.drawer-txt-en {
	display       : block;
	font-family   : 'Lato', sans-serif;
	font-size     : 1.7rem;
	font-style    : italic;
	font-weight   : 900;
	letter-spacing: .2rem;
	margin-bottom : 0.6rem;
}

.drawer-txt-jp {
	color      : #555;
	display    : inline-block;
	font-size  : 1.1rem;
	font-weight: 700;
}

@media screen and (max-width: 959px) {
	.container {
		padding: 0 4%;
	}

	.gnav {
		display: none;
	}

	.drawer-hamburger {
		display: block;
	}
}

/* #main-visual {
	width     : 100vw;
	height    : calc(100vh - 88px);
	margin-top: 88px;
	background: url('src/img/base/resize_retouch.jpg') no-repeat top center / cover;
} */

#main-visual {
	position: relative;
	width   : 100%;
	height  : auto;
	overflow: hidden;
}

#main-visual::after {
	content    : '';
	display    : block;
	padding-top: 56.25%;
}

#main-visual img {
	position: absolute;
	top     : 0;
	left    : 0;
	bottom  : 0;
	right   : 0;
	width   : 100%;
	height  : auto;
}

#service-overview {
	padding: 120px 0;
}

.service-overview-box {
	-ms-flex-wrap: wrap;
	display      : -webkit-box;
	display      : -ms-flexbox;
	display      : flex;
	flex-wrap    : wrap;
}

.service-overview-head {
	margin-bottom: 60px;
	text-align   : center;
}

.service-overview-ttl {
	position     : relative;
	display      : inline-block;
	font-size    : 4rem;
	font-weight  : 700;
	margin-bottom: 48px;
	position     : relative;
}

.service-overview-ttl::after {
	position  : absolute;
	content   : '';
	bottom    : -16px;
	left      : 50%;
	transform : translateX(-50%);
	width     : 40%;
	height    : 4px;
	background: #FF6595;
}

.service-overview-txt {
	letter-spacing: .08rem;
	line-height   : 1.6;
}

.service-overview-list {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.service-overview-list-item {
	margin-right: 16px;
	width       : calc(33.3333% - 32px / 3);
}

.service-overview-list-item:last-child {
	margin-right: 0;
}

.service-overview-img {
	-webkit-box-align: center;
	-ms-flex-align   : center;
	-webkit-box-pack : center;
	-ms-flex-pack    : center;
	align-items      : center;
	display          : -webkit-box;
	display          : -ms-flexbox;
	display          : flex;
	justify-content  : center;
	position         : relative;
	width            : 100%;
}

.service-overview-img::before {
	background: rgba(122, 122, 122, 0.4);
	content   : '';
	display   : block;
	height    : 100%;
	left      : 0;
	position  : absolute;
	top       : 0;
	width     : 100%;
	z-index   : 1;
}

.service-overview-img::after {
	content    : '';
	display    : block;
	padding-top: 66.666%;
}

.service-overview-img img {
	bottom  : 0;
	height  : 100%;
	left    : 0;
	position: absolute;
	right   : 0;
	top     : 0;
	width   : 100%;
}

.service-ttl-box {
	-webkit-box-align: center;
	-ms-flex-align   : center;
	-webkit-box-pack : center;
	-ms-flex-pack    : center;
	align-items      : center;
	border           : 1px solid #fff;
	display          : -webkit-box;
	display          : -ms-flexbox;
	display          : flex;
	height           : 170px;
	justify-content  : center;
	position         : relative;
	width            : 170px;
	z-index          : 1;
}

.service-ttl-box::before {
	-webkit-backdrop-filter: blur(3px);
	backdrop-filter        : blur(3px);
	bottom                 : 0px;
	content                : '';
	left                   : 0px;
	position               : absolute;
	right                  : 0px;
	top                    : 0px;
	z-index                : -1;
}

.service-ttl-box h2 {
	text-align: center;
}

.service-ttl-en {
	color         : #fff;
	display       : block;
	font-family   : 'Lato', sans-serif;
	font-size     : 3rem;
	font-weight   : 700;
	letter-spacing: .1rem;
	line-height   : 1;
}

.service-ttl-jp {
	color      : #fff;
	font-size  : 1.3rem;
	line-height: 1;
}

.service-overview-btn {
	position          : relative;
	-webkit-box-shadow: 0px 0px 8px rgba(150, 150, 150, 0.4);
	box-shadow        : 0px 0px 8px rgba(150, 150, 150, 0.4);
	color             : #fff;
	background        : #000000;
	padding           : 16px 0;
	text-align        : center;
	width             : 100%;
	transition        : .4s all ease 0s;
	-webkit-transition: .4s all ease 0s;
	overflow          : hidden;
	z-index           : 2;
}

.service-overview-btn::before {
	content           : '';
	position          : absolute;
	top               : 0;
	left              : -100%;
	width             : 120%;
	height            : 100%;
	z-index           : -1;
	background        : #FF6595;
	transition        : .4s all ease-in-out 0s;
	-webkit-transition: .4s all ease-in-out 0s;
	transform         : skewX(-35deg) scale(0, 1);
}

.service-overview-list-item:hover .service-overview-img::before {
	background: rgba(37, 37, 37, 0.8);
	transition: .4s;
}

.service-overview-list-item a:hover .service-overview-btn {
	color: #fff;
}

.service-overview-list-item a:hover .service-overview-btn::before {
	left     : -10%;
	transform: skewX(-35deg) scale(1, 1);
}

@media screen and (max-width: 1300px) {
	.service-ttl-box {
		height: 13.077vw;
		width : 13.077vw;
	}

	.service-ttl-en {
		font-size: 2.308vw;
	}

	.service-ttl-jp {
		font-size: 1vw;
	}
}

@media screen and (max-width: 1179px) {
	#service-overview {
		padding: 80px 0;
	}
}

@media screen and (max-width: 767px) {

	#service-overview {
		padding: 64px 0;
	}

	.service-overview-ttl {
		font-size    : 3rem;
		margin-bottom: 32px;
	}

	.service-overview-ttl::after {
		bottom: -12px;
		height: 3px;
	}

	.service-overview-txt {
		font-size: 1.4rem;
	}

	.service-overview-list {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		flex-direction       : column;
	}

	.service-overview-list-item {
		margin: 0 0 32px 0;
		width : 100%;
	}

	.service-overview-list-item:last-child {
		margin-bottom: 0;
	}

	.service-ttl-box {
		width : 33.296vw;
		height: 33.296vw;
	}

	.service-ttl-en {
		font-size     : 5.673vw;
		letter-spacing: .2rem;
	}

	.service-ttl-jp {
		font-size: 2.16vw;
	}
}

#info {
	background: #f2f2f2;
	padding   : 120px 0;
}

.info-ttl {
	margin-bottom: 32px;
}

.info-ttl h2 {
	font-family  : 'Lato', sans-serif;
	font-size    : 3.8rem;
	font-weight  : 700;
	margin-bottom: 64px;
	margin-bottom: 1rem;
}

.info-sub-ttl {
	color      : #696969;
	font-family: 'Noto Sans JP';
	font-size  : 1.4rem;
	font-weight: 400;
}

.info-content {
	overflow  : auto;
	background: #fff;
	padding   : 64px 32px;
	width     : 100%;
	height    : 480px;
}

.info-item {
	-webkit-box-align: center;
	-ms-flex-align   : center;
	align-items      : center;
	border-bottom    : 1px solid #ccc;
	display          : -webkit-box;
	display          : -ms-flexbox;
	display          : flex;
	padding          : 32px 0;
	position         : relative;
}

.info-item:first-child {
	padding-top: 0;
}

.info-item::after {
	-webkit-transform: rotate(45deg);
	border-right     : 2px solid #696969;
	border-top       : 2px solid #696969;
	content          : "";
	height           : 8px;
	margin-top       : -5px;
	position         : absolute;
	right            : 10px;
	top              : 50%;
	transform        : rotate(45deg);
	width            : 8px;
}

.info-post-date {
	font-family : 'Lato', sans-serif;
	font-size   : 1.3rem;
	font-weight : 700;
	margin-right: 64px;
}

.info-post-cat {
	border      : 1px solid #FF6595;
	color       : #FF6595;
	font-size   : 1.2rem;
	margin-right: 40px;
	padding     : 2px 8px;
}

.info-txt {
	-webkit-transition: .3s all ease 0s;
	color             : #696969;
	font-weight       : 700;
	letter-spacing    : .06rem;
	transition        : .3s all ease 0s;
}

.info-txt:hover {
	-webkit-transition: .3s all ease 0s;
	color             : #4eb8ff;
	text-decoration   : underline;
	transition        : .3s all ease 0s;
}

@media screen and (max-width: 959px) {
	#info {
		padding: 64px 0;
	}

	.info-ttl {
		text-align: center;
	}

	.info-ttl h2 {
		font-size: 3rem;
	}

	.info-sub-ttl {
		font-size: 1.2rem;
	}

	.info-post-date {
		font-size: 1.4rem;
	}

	.info-item {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		-webkit-box-align    : start;
		-ms-flex-align       : start;
		align-items          : flex-start;
		flex-direction       : column;
		padding              : 16px 0;
	}

	.info-item::after {
		right: 0;
	}

	.info-post-meta {
		margin-bottom: 16px;
	}

	.info-post-date {
		font-size   : 1.2rem;
		margin-right: 16px;
	}

	.info-post-cat {
		font-size: 1rem;
		padding  : 2px 4px;
	}

	.info-txt {
		font-size      : 1.4rem;
		line-height    : 1.6;
		padding-right  : 32px;
		text-decoration: underline;
	}
}


#line-banner {
	margin  : 0 auto;
	padding : 80px 0;
	position: relative;
	width   : 600px;
}

#line-banner a {
	-webkit-transition: .3s ease all 0s;
	transition        : .3s ease all 0s;
}

#line-banner a:hover {
	-webkit-transition: .3s ease all 0s;
	opacity           : .8;
	transition        : .3s ease all 0s;
}

@media screen and (max-width: 767px) {
	#line-banner {
		display: none;
	}
}

#blog {
	padding: 120px 0;
}

.blog-ttl {
	font-family  : 'Lato', sans-serif;
	font-size    : 3.8rem;
	font-weight  : 700;
	margin-bottom: 80px;
	text-align   : center;
}

.blog-post-box {
	-ms-flex-wrap: wrap;
	display      : -webkit-box;
	display      : -ms-flexbox;
	display      : flex;
	flex-wrap    : wrap;
	margin-bottom: 6rem;
}

.post-box {
	-webkit-transition: .3s ease all 0s;
	margin            : 0 32px 48px 0;
	transition        : .3s ease all 0s;
	width             : calc(33.3333% - 96px / 3);
}

.post-box:nth-child(3n) {
	margin-right: 0;
}

.post-thumbnail {
	-webkit-transition: .3s all ease 0s;
	margin-bottom     : 8px;
	overflow          : hidden;
	position          : relative;
	transition        : .3s all ease 0s;
}

.post-thumbnail::after {
	content    : '';
	display    : block;
	padding-top: 65%;
}

.post-thumbnail:hover img {
	-webkit-transform : scale(1.1);
	-webkit-transition: .3s all ease 0s;
	transform         : scale(1.1);
	transition        : .3s all ease 0s;
}

.post-thumbnail img {
	position          : absolute;
	top               : 0;
	left              : 0;
	bottom            : 0;
	right             : 0;
	width             : 100%;
	height            : 100%;
	object-fit        : cover;
	transition        : .3s all ease 0s;
	-webkit-transition: .3s all ease 0s;
}

.post-cat {
	-webkit-transition: .3s all ease-in-out 0s;
	background        : #D8DD58;
	color             : #fff;
	display           : block;
	font-size         : 1.4rem;
	letter-spacing    : .1rem;
	margin-bottom     : 4px;
	position          : absolute;
	right             : 0;
	text-align        : center;
	top               : 0;
	transition        : .3s all ease-in-out 0s;
}

.post-cat a {
	display: block;
	padding: 8px 16px;
}

.post-cat a:hover {
	-webkit-transition: .3s all ease-in-out 0s;
	background        : #fff;
	color             : #D8DD58;
	transition        : .3s all ease-in-out 0s;
}

.post-tag {
	-webkit-transition: .3s all ease 0s;
	background        : #9c9c9c;
	color             : #fff;
	display           : inline-block;
	font-size         : 1.2rem;
	margin-left       : 8px;
	margin-right      : 8px;
	padding           : 4px 8px 4px 10px;
	position          : relative;
	transition        : .3s all ease 0s;
}

.post-tag:before {
	-webkit-transition: .3s all ease 0s;
	border-color      : transparent #9c9c9c transparent transparent;
	border-style      : solid;
	border-width      : 10.5px 8px 10.5px 0px;
	content           : '';
	left              : -8px;
	position          : absolute;
	top               : 0;
	transition        : .3s all ease 0s;
}

.post-tag:hover {
	-webkit-transition: .3s all ease 0s;
	background        : #645C46;
	color             : #fff;
	transition        : .3s all ease 0s;
}

.post-tag:hover::before {
	-webkit-transition: .3s all ease 0s;
	border-color      : transparent #645C46 transparent transparent;
	transition        : .3s all ease 0s;
}

.post-tag:after {
	background   : #fff;
	border-radius: 50%;
	content      : '';
	height       : 7px;
	left         : -1px;
	position     : absolute;
	top          : calc(50% - 3.5px);
	width        : 7px;
}

.post-date {
	-webkit-box-pack: end;
	-ms-flex-pack   : end;
	display         : -webkit-box;
	display         : -ms-flexbox;
	display         : flex;
	font-family     : 'Lato', sans-serif;
	font-weight     : 700;
	font-size       : 1.2rem;
	justify-content : flex-end;
	margin-top      : 1.6rem;
}

.post-ttl {
	-webkit-transition: .3s all ease 0s;
	font-size         : 1.8rem;
	font-weight       : 700;
	letter-spacing    : .06rem;
	line-height       : 1.4;
	margin-top        : 1rem;
	transition        : .3s all ease 0s;
}

.post-ttl:hover {
	-webkit-transition: .3s all ease 0s;
	color             : #6cd0ff;
	transition        : .3s all ease 0s;
}

.post-ttl:hover .post-thumbnail {
	-webkit-transform: scale(1.1);
	transform        : scale(1.1);
}

.btn-wrapper {
	margin    : 0 auto;
	text-align: center;
	display   : none;
}

.more-btn {
	-webkit-box-shadow: 0px 0px 6px rgba(150, 150, 150, 0.4);
	-webkit-transition: .3s all ease 0s;
	border-radius     : 44px;
	box-shadow        : 0px 0px 6px rgba(150, 150, 150, 0.4);
	display           : inline-block;
	padding           : 1.2rem 4.8rem;
	transition        : .3s all ease 0s;
}

.more-btn:hover {
	-webkit-transition: .3s all ease 0s;
	background        : #000;
	transition        : .3s all ease 0s;
}

@media screen and (max-width: 959px) {
	#blog {
		padding: 64px 0;
	}

	.blog-ttl {
		font-size: 3rem;
	}

	.post-box {
		margin: 0 16px 16px 0;
		width : calc(50% - 16px / 2);
	}

	.post-box:nth-child(3n) {
		margin-right: 16px;
	}

	.post-box:nth-child(2n) {
		margin-right: 0;
	}

	.post-tag {
		font-size: 1rem;
		padding  : 3px 8px;
	}

	.post-tag:before {
		border-width: 8.5px 8px 8.5px 0px;
	}

	.post-ttl {
		font-size    : 1.3rem;
		margin-bottom: 4px;
		margin-top   : 1rem;
	}

	.more-btn {
		font-size: 1.4rem;
		padding  : .8rem 2.8rem;
	}
}

@media screen and (max-width: 767px) {
	.post-cat {
		font-size: 1rem;
	}

	.post-cat a {
		padding: 6px 8px;
	}
}

.footer-body {
	background: #222;
}

.footer-wrapper {
	-webkit-box-orient   : vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction   : column;
	-webkit-box-pack     : center;
	-ms-flex-pack        : center;
	display              : -webkit-box;
	display              : -ms-flexbox;
	display              : flex;
	flex-direction       : column;
	justify-content      : center;
	padding              : 60px 0;
}

.footer-logo {
	-webkit-box-pack: center;
	-ms-flex-pack   : center;
	display         : -webkit-box;
	display         : -ms-flexbox;
	display         : flex;
	justify-content : center;
	margin-bottom   : 60px;
}

.footer-logo h1 {
	color      : #fff;
	font-family: 'Lato', sans-serif;
	font-size  : 3.2rem;
	font-weight: 900;
	font-style : italic;
}

.footer-nav {
	-webkit-box-pack: center;
	-ms-flex-pack   : center;
	display         : -webkit-box;
	display         : -ms-flexbox;
	display         : flex;
	justify-content : center;
}

.footer-nav-contents {
	margin-left: 80px;
}

.footer-nav-contents:first-child {
	margin-left: 0;
}

.footer-nav-ttl {
	color        : #555;
	font-family  : 'Lato', sans-serif;
	font-size    : 1.8rem;
	font-style   : italic;
	margin-bottom: 3.6rem;
}

.footer-nav-list {
	-webkit-box-orient   : vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction   : column;
	border-left          : 1px solid #fff;
	display              : -webkit-box;
	display              : -ms-flexbox;
	display              : flex;
	flex-direction       : column;
}

.footer-nav-list li {
	color        : #fff;
	font-size    : 1.4rem;
	font-weight  : 400;
	margin-bottom: 1.6rem;
	padding-left : 1.6rem;
}

.footer-nav-list li:last-child {
	margin-bottom: 0;
}

.footer-nav-list li a {
	-webkit-transition: .3s all ease 0s;
	transition        : .3s all ease 0s;
}

.footer-nav-list li a:hover {
	-webkit-transition: .3s all ease 0s;
	color             : #FFC136;
	transition        : .3s all ease 0s;
}

#copyright {
	color     : #757575;
	font-size : 1.2rem;
	padding   : 1.6rem 0;
	text-align: center;
}

@media screen and (max-width: 896px) {
	.footer-cv-area {
		background   : none;
		margin-bottom: 0;
	}

	.footer-cv-area-wrapper {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		flex-direction       : column;
		padding              : 0;
	}

	.footer-cv-are {
		height: auto;
	}

	.footer-cv-l {
		background   : #FF6595;
		margin-bottom: 2px;
		margin-top   : 0;
		padding      : 16px 0;
		width        : 100%;
	}

	.footer-cv-r {
		background   : #E6E65C;
		color        : #000;
		font-size    : 1.8rem;
		margin-bottom: 0;
		padding      : 16px 0;
		text-align   : center;
		width        : 100%;
	}

	.footer-cv-txt {
		font-size: 1.4rem;
	}

	.footer-cv-btn {
		font-size: 1.6rem;
		padding  : .6rem 2rem;
	}

	.footer-cv-btn::before,
	.footer-cv-btn::after {
		display: none;
	}

	.footer-wrapper {
		padding-bottom: 0;
	}

	.footer-nav {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		-webkit-box-align    : start;
		-ms-flex-align       : start;
		align-items          : flex-start;
		flex-direction       : column;
	}

	.footer-nav-contents {
		margin-bottom: 40px;
		margin-left  : 0;
		width        : 100%;
	}

	.footer-nav-ttl {
		border-bottom : 1px solid #757575;
		margin-bottom : 20px;
		padding-bottom: 6px;
	}

	.footer-nav-list {
		-webkit-box-align: start;
		-ms-flex-align   : start;
		align-items      : flex-start;
		border-left      : none;
		width            : 100%;
	}

	.footer-nav-list li {
		font-weight  : 700;
		margin-bottom: 2rem;
		padding-left : 0;
		position     : relative;
		width        : 100%;
	}

	.footer-nav-list li::after {
		-webkit-transform: translateY(-50%);
		color            : #fff;
		content          : '\f054';
		font-family      : 'Font Awesome 5 Free';
		font-weight      : 900;
		position         : absolute;
		right            : 10px;
		top              : 50%;
		transform        : translateY(-50%);
	}
}

@media screen and (max-width: 480px) {
	#copyright {
		font-size: 10px;
	}
}

.container::after {
	clear  : both;
	content: '';
	display: block;
}

.archive-desc {
	background: url(src/img/base/streamer-3088458_1920.jpg) no-repeat center center/cover;
	padding   : 30px 0;
	position  : relative;
	width     : 100%;
}

.archive-desc-detail {
	float        : left;
	padding-right: 2%;
	width        : 70%;
}

.archive-desc-heading {
	color         : #fff;
	display       : inline-block;
	font-size     : 3.2rem;
	font-weight   : 700;
	padding-bottom: 12px;
	position      : relative;
}

.archive-desc-heading::after {
	background: #fff;
	bottom    : 0;
	content   : '';
	height    : 1px;
	left      : 0;
	position  : absolute;
	width     : 100%;
}

.archive-desc-sub {
	display      : block;
	font-family  : "Lato", sans-serif;
	font-size    : 1.4rem;
	font-weight  : 700;
	margin-bottom: 2.8rem;
}

.archive-desc-pickup {
	float       : right;
	padding-left: 2%;
	width       : 30%;
}

.archive-desc-item {
	overflow: hidden;
	position: relative;
	width   : 100%;
}

.archive-desc-item::after {
	content    : '';
	display    : block;
	padding-top: 66.66%;
}

.archive-desc-item:hover .archive-desc-link {
	top: 0;
}

.archive-desc-item img {
	bottom  : 0;
	height  : auto;
	left    : 0;
	position: absolute;
	right   : 0;
	top     : 0;
	width   : 100%;
}

.archive-desc-link {
	-webkit-box-pack  : center;
	-ms-flex-pack     : center;
	-webkit-transition: .4s all ease-out 0s;
	display           : -webkit-box;
	display           : -ms-flexbox;
	display           : flex;
	height            : 100%;
	justify-content   : center;
	position          : absolute;
	text-align        : center;
	top               : calc(100% - 43px);
	transition        : .4s all ease-out 0s;
	width             : 100%;
}

.archive-desc-ttl {
	background : rgba(0, 0, 0, 0.7);
	color      : #fff;
	display    : block;
	font-size  : 1.8rem;
	font-weight: 700;
	width      : 100%;
}

.pickup {
	background   : rgba(255, 95, 188, 0.6);
	color        : #fff;
	display      : block;
	font-size    : 2rem;
	font-weight  : 700;
	margin-bottom: 3.2rem;
	padding      : 1rem 0;
}

.breadcrumb {
	background: #f2f2f2;
	padding   : 8px 0;
}

.breadcrumb .container {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.breadcrumb span {
	font-size: 1.2rem;
	margin   : 0 .6rem;
}

.breadcrumb .container>span:first-child {
	padding-left: 2rem;
	position    : relative;
}

.breadcrumb .container>span:first-child::before {
	-webkit-transform: translateY(-50%);
	content          : '\f015';
	font-family      : 'Font Awesome 5 Free';
	font-weight      : 900;
	left             : 0;
	position         : absolute;
	top              : 50%;
	transform        : translateY(-50%);
}

@media screen and (max-width: 959px) {
	.archive-desc-detail {
		float        : none;
		margin-bottom: 32px;
		margin-right : 0;
		padding-right: 0;
		text-align   : center;
		width        : 100%;
	}

	.archive-desc-heading {
		font-size: 2.4rem;
	}

	.archive-desc-sub {
		font-size    : 1.2rem;
		margin-bottom: 12px;
	}

	.archive-desc-pickup {
		float       : none;
		padding-left: 0;
		width       : 100%;
	}
}

@media screen and (max-width: 767px) {
	.breadcrumb {
		display: none;
	}
}

.main-wrapper {
	display  : -webkit-box;
	display  : -ms-flexbox;
	display  : flex;
	margin   : 0 auto;
	max-width: 1360px;
	padding  : 80px 30px;
	position : relative;
	width    : 100%;
}

#main-contents {
	padding-right: 2%;
	width        : 70%;
}

.archive-content {
	-webkit-box-orient   : vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction   : column;
	display              : -webkit-box;
	display              : -ms-flexbox;
	display              : flex;
	flex-direction       : column;
}

.archive-item {
	border-bottom : 1px solid #ccc;
	display       : -webkit-box;
	display       : -ms-flexbox;
	display       : flex;
	margin-bottom : 24px;
	padding-bottom: 24px;
	position      : relative;
	width         : 100%;
}

.eyecatch {
	max-height: 185px;
	max-width : 280px;
	overflow  : hidden;
	position  : relative;
	width     : 40%;
}

.eyecatch::after {
	content    : '';
	display    : block;
	padding-top: 66.07%;
}

.eyecatch img {
	-o-object-fit     : cover;
	-webkit-transition: .4s all ease 0s;
	bottom            : 0;
	height            : 100%;
	left              : 0;
	max-height        : 100%;
	max-width         : 100%;
	object-fit        : cover;
	position          : absolute;
	right             : 0;
	top               : 0;
	transition        : .4s all ease 0s;
	width             : 100%;
}

.eyecatch img:hover {
	-webkit-transform : scale(1.1, 1.1) rotateZ(5deg);
	-webkit-transition: .4s all ease 0s;
	transform         : scale(1.1, 1.1) rotateZ(5deg);
	transition        : .4s all ease 0s;
}

.archive-post-meta {
	padding-left: 3rem;
	width       : 60%;
}

.archive-cat {
	position    : relative;
	display     : inline-block;
	margin-right: 8px;
}

.archive-ttl {
	-webkit-transition: .3s all ease 0s;
	font-size         : 1.8rem;
	font-weight       : 700;
	letter-spacing    : .06rem;
	line-height       : 1.5;
	margin-bottom     : 1rem;
	margin-top        : .6rem;
	transition        : .3s all ease 0s;
}

.archive-ttl:hover {
	-webkit-transition: .3s all ease 0s;
	color             : #4eb8ff;
	transition        : .3s all ease 0s;
}

.post-txt p {
	color         : #696969;
	font-size     : 1.4rem;
	letter-spacing: .06rem;
	line-height   : 1.5;
}

#sidebar {
	padding-left: 2%;
	width       : 30%;
}

.widget-cat {
	margin-bottom: 60px;
}

.widget-ttl {
	margin-bottom: 16px;
}

.widget-ttl h3 {
	background : #FF6595;
	color      : #fff;
	height     : 32px;
	line-height: 32px;
	margin     : 0 32px;
	position   : relative;
	text-align : center;
}

.widget-ttl h3::before,
.widget-ttl h3::after {
	border  : 16px solid #FF6595;
	content : '';
	display : block;
	height  : 32px;
	position: absolute;
	top     : 0;
}

.widget-ttl h3::before {
	border-left-color: transparent;
	border-left-width: 8px;
	left             : -24px;
}

.widget-ttl h3::after {
	border-right-color: transparent;
	border-right-width: 8px;
	right             : -24px;
}

.widget-ttl h3 span {
	display : block;
	position: relative;
}

.widget-cat-list {
	padding-left: 12px;
}

.widget-cat-item {
	border-bottom: 1px solid #ccc;
	position     : relative;
}

.widget-cat-item::after {
	-webkit-transform: rotate(45deg);
	border-right     : 2px solid #696969;
	border-top       : 2px solid #696969;
	content          : "";
	height           : 8px;
	margin-top       : -5px;
	position         : absolute;
	right            : 10px;
	top              : 50%;
	transform        : rotate(45deg);
	width            : 8px;
}

.widget-cat-item a {
	-webkit-transition: .4s all ease 0s;
	color             : #696969;
	display           : block;
	font-size         : 1.4rem;
	padding           : 14px 0;
	transition        : .4s all ease 0s;
}

.widget-cat-item a:hover {
	-webkit-transition: .4s all ease 0s;
	background        : #fff0f5;
	transition        : .4s all ease 0s;
}

.widget-popular {
	margin-bottom: 60px;
}

.widget-popular-list {
	counter-reset: ranking;
	padding-left : 12px;
}

.widget-popular-item {
	border-bottom: 1px solid #ccc;
	position     : relative;
}

.widget-popular-item::before {
	background: #000;
	content   : '';
	height    : 24px;
	left      : 0;
	position  : absolute;
	top       : 14px;
	width     : 24px;
	z-index   : 1;
}

.widget-popular-item::after {
	color            : #fff;
	content          : counter(ranking);
	counter-increment: ranking;
	display          : block;
	font-family      : 'Lato', sans-serif;
	font-size        : 1.6rem;
	font-weight      : 400;
	left             : 6px;
	position         : absolute;
	top              : 16px;
	z-index          : 2;
}

.widget-popular-item:nth-child(1)::before {
	background: #DBC838;
}

.widget-popular-item:nth-child(2)::before {
	background: #8E8E8E;
}

.widget-popular-item:nth-child(3)::before {
	background: #B57C53;
}

.widget-popular-item a {
	-webkit-box-align : start;
	-ms-flex-align    : start;
	-webkit-transition: .4s all ease 0s;
	align-items       : flex-start;
	display           : -webkit-box;
	display           : -ms-flexbox;
	display           : flex;
	padding           : 14px 0;
	transition        : .4s all ease 0s;
}

.widget-popular-item a:hover {
	-webkit-transition: .4s all ease 0s;
	background        : #fff0f5;
	transition        : .4s all ease 0s;
}

.popular-post-thumbnail {
	display     : inline;
	margin-right: 0.8rem;
	position    : relative;
}

.popular-post-ttl {
	color    : #696969;
	font-size: 1.4rem;
}

.widget-search {
	margin-bottom: 60px;
}

.search-box {
	margin: 0 auto;
	width : 90%;
}

.search-box-form {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.search-box-input {
	-webkit-transition: .2s all ease 0s;
	background        : none;
	border            : 1px solid #ccc;
	font-family       : inherit;
	padding           : 10px;
	transition        : .2s all ease 0s;
	width             : 100%;
}

.search-box-input:hover {
	-webkit-box-shadow: 0 0 4px #FF6595;
	-webkit-transition: .2s all ease 0s;
	box-shadow        : 0 0 4px #FF6595;
	transition        : .2s all ease 0s;
}

.search-box-submit {
	background: #9c9c9c;
	position  : relative;
	width     : 60px;
}

.search-box-submit::after {
	-webkit-transform: translate(-50%, -50%);
	color            : #fff;
	content          : '\f002';
	font-family      : 'Font Awesome 5 Free';
	font-size        : 1.8rem;
	font-weight      : 900;
	left             : 50%;
	position         : absolute;
	top              : 50%;
	transform        : translate(-50%, -50%);
}

.widget-archive select {
	-webkit-transition: .4s all ease 0s;
	border-bottom     : 1px solid #ccc;
	color             : #696969;
	display           : block;
	font-size         : 1.4rem;
	margin            : 0 auto;
	padding           : 10px;
	transition        : .4s all ease 0s;
	width             : 90%;
}

.widget-archive select:hover {
	-webkit-transition: .4s all ease 0s;
	background        : #fff0f5;
	cursor            : pointer;
	transition        : .4s all ease 0s;
}

@media screen and (max-width: 959px) {
	.main-wrapper {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		flex-direction       : column;
		padding              : 30px;
	}

	#main-contents {
		margin-bottom: 32px;
		padding-right: 0;
		width        : 100%;
	}

	#sidebar {
		padding-left: 0;
		width       : 100%;
	}

	.widget-popular-list {
		padding-left: 0;
	}
}

@media screen and (max-width: 767px) {
	.archive-content {
		-webkit-box-orient   : horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction   : row;
		-ms-flex-wrap        : wrap;
		flex-direction       : row;
		flex-wrap            : wrap;
	}

	.archive-item {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		border-bottom        : none;
		flex-direction       : column;
		margin               : 0 16px 0 0;
		width                : calc(50% - 16px / 2);
	}

	.archive-item:nth-child(2n) {
		margin-right: 0;
	}

	.eyecatch {
		margin-bottom: 10px;
		max-height   : 100%;
		max-width    : 100%;
		width        : 100%;
	}

	.archive-post-meta {
		padding-left: 0;
		width       : 100%;
	}

	.archive-tag {
		margin: 0 0 0 8px;
	}

	.archive-ttl {
		font-size    : 1.4rem;
		margin-bottom: 0.6rem;
	}

	.post-txt {
		display: none;
	}

	.post-date {
		font-weight: normal;
		margin-top : 0;
	}

	.widget-ttl {
		margin-bottom: 12px;
	}

	.widget-cat,
	.widget-popular,
	.widget-search {
		margin-bottom: 32px;
	}

	.popular-post-ttl {
		line-height: 1.4;
	}
}

.single-post-head {
	background: url(src/img/base/sunset002.jpg) no-repeat center center/cover;
	padding   : 30px 0;
	position  : relative;
	width     : 100%;
}

.single-news-post-head {
	background: url(src/img/base/sunset002.jpg) no-repeat center center/cover;
	padding   : 48px 0;
	position  : relative;
	width     : 100%;
}

.single-post-ttl {
	float        : left;
	padding-right: 2%;
	width        : 66.6666%;
}

.single-news-post-ttl {
	float        : left;
	padding-right: 2%;
	width        : 100%;
}

.single-news-post-ttl .sub-ttl {
	margin-bottom: 16px;
}

.main-ttl {
	color         : #fff;
	display       : inline-block;
	font-size     : 2.8rem;
	font-weight   : 700;
	padding-bottom: 12px;
	position      : relative;
}

.main-ttl::after {
	background: #fff;
	bottom    : 0;
	content   : '';
	height    : 1px;
	left      : 0;
	position  : absolute;
	width     : 100%;
}

.sub-ttl {
	display      : block;
	font-family  : "Lato", sans-serif;
	font-size    : 1.4rem;
	font-weight  : 700;
	margin-bottom: 2.8rem;
}

.single-post-thumbnail {
	float      : right;
	margin-left: 3.333%;
	overflow   : hidden;
	position   : relative;
	width      : 30%;
}

.single-post-thumbnail::before {
	content    : '';
	display    : block;
	padding-top: 66.66%;
}

.single-post-thumbnail::after {
	clear  : both;
	content: '';
	display: block;
}

.single-post-thumbnail img {
	bottom      : 0;
	height      : 100%;
	left        : 0;
	padding-left: 30px;
	position    : absolute;
	right       : 0;
	top         : 0;
	width       : 100%;
}

.single-post-body {
	margin-bottom: 80px;
	padding      : 0 3rem 0 0;
}

.single-news-post-body {
	width    : 100%;
	max-width: 960px;
	margin   : 0 auto 80px;
	padding  : 0;
}

.cat-tag {
	margin-bottom: 1.4rem;
}

.single-cat {
	display     : inline-block;
	margin-right: 16px;
	position    : relative;
}

.single-post-meta {
	margin-bottom: 3.2rem;
}

.single-post-date {
	color       : #696969;
	font-family : 'Lato', sans-serif;
	font-size   : 1.4rem;
	margin-right: 2rem;
}

.fa-pencil-alt,
.fa-retweet {
	margin-right: .4rem;
}

.single-news-thumbnail {
	position     : relative;
	overflow     : hidden;
	width        : 100%;
	margin-bottom: 64px;
}

.single-news-thumbnail img {
	max-width: 100%;
	height   : auto;
}

#toc_container {
	margin-top   : 32px;
	margin-bottom: 32px
}

.single-post-txt h2,
.single-post-txt h3,
.single-post-txt h4,
.single-post-txt h5 {
	margin: 32px 0;
}

.single-post-txt h2 {
	padding    : 0.5em;
	background : rgb(255, 227, 240);
	border-left: solid 6px #FF6595;
}

.single-post-txt strong {
	line-height: 2;
}

.single-post-txt ul {
	list-style: disc;
}

.single-post-txt li {
	margin: 16px 0 16px 24px;
}

.single-post-txt p {
	letter-spacing: .1rem;
	line-height   : 1.8;
}

.single-post-txt a {
	text-decoration: underline;
	color          : #4eb8ff;
	transition     : .3s all ease 0s;
}

.single-post-txt a:hover {
	opacity   : .7;
	transition: .3s all ease 0s;
}


.page-links {
	-webkit-box-pack: center;
	-ms-flex-pack   : center;
	display         : -webkit-box;
	display         : -ms-flexbox;
	display         : flex;
	justify-content : center;
	padding-top     : 48px;
}

.post-page-numbers {
	-webkit-transition: .3s all ease 0s;
	border            : 1px solid #ccc;
	color             : #696969;
	font-family       : 'Lato', sans-serif;
	font-size         : 1.6rem;
	font-weight       : 700;
	margin-right      : 16px;
	padding           : 8px 12px;
	transition        : .3s all ease 0s;
}

.page-links .current {
	background: #FF6595;
	border    : 1px solid #FF6595;
	color     : #fff;
}

.post-page-numbers:last-child {
	margin-right: 0;
}

.post-page-numbers:hover {
	-webkit-transition: .3s all ease 0s;
	background        : #FF6595;
	border            : 1px solid #FF6595;
	color             : #fff;
	transition        : .3s all ease 0s;
}

.sns-btn-wrapper {
	margin-top: 80px;
	text-align: center;
}

.sns-btn-head {
	color        : #696969;
	display      : inline-block;
	font-size    : 1.2rem;
	margin-bottom: 30px;
	position     : relative;
}

.sns-btn-head::before {
	background: #696969;
	content   : '';
	height    : 1px;
	left      : -60px;
	position  : absolute;
	top       : 50%;
	width     : 40px;
}

.sns-btn-head::after {
	background: #696969;
	content   : '';
	height    : 1px;
	position  : absolute;
	right     : -60px;
	top       : 50%;
	width     : 40px;
}

.sns-list {
	-webkit-box-pack: center;
	-ms-flex-pack   : center;
	display         : -webkit-box;
	display         : -ms-flexbox;
	display         : flex;
	font-family     : 'Lato', sans-serif;
	font-size       : 1.4rem;
	font-weight     : 900;
	justify-content : center;
}

.sns-list-item {
	border-left: 1px solid #ccc;
	width      : 30%;
}

.sns-list-item:last-child {
	border-right: 1px solid #ccc;
}

.sns-btn {
	-webkit-transition: .4s all ease 0s;
	display           : block;
	padding           : 14px 0;
	position          : relative;
	transition        : .4s all ease 0s;
	width             : 100%;
}

.sns-btn::before {
	-webkit-transform-origin: left top;
	-webkit-transform       : scale(0, 1);
	-webkit-transition      : .4s all ease 0s;
	bottom                  : 0;
	content                 : '';
	left                    : 0;
	position                : absolute;
	right                   : 0;
	top                     : 0;
	transform               : scale(0, 1);
	transform-origin        : left top;
	transition              : .4s all ease 0s;
	z-index                 : -1;
}

.sns-btn:hover {
	color: #fff;
}

.sns-btn:hover::before {
	-webkit-transform-origin: right top;
	-webkit-transform       : scale(1, 1);
	transform               : scale(1, 1);
	transform-origin        : right top;
}

.facebook {
	color: #465996;
}

.facebook::before {
	background: #465996;
}

.twitter {
	color: #55BDF5;
}

.twitter::before {
	background: #55BDF5;
}

.line {
	color: #6ACB61;
}

.line::before {
	background: #6ACB61;
}

.pagination {
	padding           : 64px 0;
	-webkit-transition: .3s all ease 0s;
	text-align        : center;
	transition        : .3s all ease 0s;
}

.pagination .current {
	background: #FF6595;
	border    : 1px solid #FF6595;
	color     : #fff;
}

.page-numbers {
	border      : 1px solid #ccc;
	color       : #696969;
	font-family : 'Lato', sans-serif;
	font-size   : 1.6rem;
	margin-right: 0.8rem;
	padding     : 1rem 1.6rem;
}

.page-numbers:hover {
	-webkit-transition: .3s all ease 0s;
	background        : #FF6595;
	border            : 1px solid #FF6595;
	color             : #fff;
	transition        : .3s all ease 0s;
}

.widget-related-item {
	border-bottom: 1px solid #ccc;
	padding      : 1.6rem 0;
}

.widget-related-item::after {
	clear  : both;
	content: '';
	display: block;
}

.widget-related-item .related-link {
	display : block;
	float   : left;
	height  : 125px;
	overflow: hidden;
	width   : 200px;
}

.widget-related-item .related-link img {
	height: 125px;
	width : 100%;
}

.related-ttl {
	color        : #696969;
	float        : right;
	font-size    : 1.8rem;
	font-weight  : 700;
	line-height  : 1.4;
	margin-bottom: .6rem;
	width        : calc(100% - 220px);
}

.related-ttl a {
	-webkit-transition: .3s all ease 0s;
	transition        : .3s all ease 0s;
}

.related-ttl a:hover {
	-webkit-transition: .3s all ease 0s;
	color             : #4eb8ff;
	transition        : .3s all ease 0s;
}

.related-post-date {
	color        : #696969;
	float        : right;
	font-family  : 'Lato', sans-serif;
	font-size    : 1.2rem;
	font-weight  : 700;
	margin-bottom: 1.4rem;
	width        : calc(100% - 220px);
}

.related-txt {
	color         : #696969;
	float         : right;
	font-size     : 1.4rem;
	letter-spacing: .06rem;
	width         : calc(100% - 220px);
}

@media screen and (max-width: 896px) {
	.single-post-ttl {
		float        : none;
		margin-bottom: 32px;
		padding-right: 0;
		text-align   : center;
		width        : 100%;
	}

	.main-ttl {
		font-size     : 2.4rem;
		padding-bottom: 0;
	}

	.main-ttl::after {
		display: none;
	}

	.sub-ttl {
		font-size    : 1.2rem;
		margin-bottom: 1.2rem;
	}

	.single-post-thumbnail {
		float      : none;
		margin-left: 0;
		width      : 100%;
	}

	.single-post-thumbnail img {
		padding-left: 0;
	}

	.single-post-meta {
		margin-bottom : 32px;
		padding-bottom: 0;
	}

	.widget-related-list {
		margin-bottom: 60px;
	}
}

@media screen and (max-width: 767px) {
	.main-ttl {
		font-size: 2rem;
	}

	.single-post-body {
		padding: 0;
	}

	.single-post-txt {
		font-size: 1.3rem;
	}

	.widget-related-list {
		margin-bottom: 32px;
	}

	.widget-related-item .related-link {
		height: 80px;
		width : 110px;
	}

	.related-ttl {
		font-size  : 1.4rem;
		font-weight: normal;
		width      : calc(100% - 120px);
	}

	.related-post-date,
	.related-txt {
		display: none;
	}
}



#family-page-top {
	background: url(src/img/base/family-head.jpg) no-repeat center center/cover;
	padding   : 120px 0;
	position  : relative;
	text-align: center;
	width     : 100%;
}

#family-page-top::after {
	background: rgba(0, 0, 0, 0.5);
	bottom    : 0;
	content   : '';
	display   : block;
	left      : 0;
	position  : absolute;
	right     : 0;
	top       : 0;
}

.family-ttl {
	color   : #fff;
	position: relative;
	z-index : 1;
}

.family-ttl-en {
	font-family: 'Lato', sans-serif;
	font-size  : 4.8rem;
	font-weight: 700;
}

.family-ttl-jp {
	-webkit-transform: translateX(-50%);
	bottom           : -24px;
	font-size        : 1.4rem;
	left             : 50%;
	position         : absolute;
	transform        : translateX(-50%);
}

@media screen and (max-width: 959px) {
	#family-page-top {
		padding: 64px 0;
	}
}

#family-slider-area {
	width  : 100%;
	padding: 80px 0;
}

.swiper-slide01 {
	max-width: 960px;
	width    : 90%;
}

.slide-family-wrapper {
	background: #FDD2D7;
	display   : -webkit-box;
	display   : -ms-flexbox;
	display   : flex;
	padding   : 24px;
}

#family-slider-area .thumb-comment-icons {
	margin-bottom: 16px;
}

.slide-family-thumbnail {
	-webkit-box-orient   : vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction   : column;
	-webkit-box-pack     : justify;
	-ms-flex-pack        : justify;
	background           : no-repeat center center / cover;
	border-radius        : 30px;
	display              : -webkit-box;
	display              : -ms-flexbox;
	display              : flex;
	flex-direction       : column;
	height               : 420px;
	justify-content      : space-between;
	margin-right         : 32px;
	min-width            : 280px;
	overflow             : hidden;
	padding-top          : 8px;
	position             : relative;
	width                : 30%;
}

.slide-family-thumbnail .thumb-comment-icons dl {
	opacity: 1;
}

.thumb-main {
	bottom  : 0;
	height  : 100%;
	left    : 0;
	position: absolute;
	right   : 0;
	top     : 0;
	width   : 100%;
}

.thumb-top-icons {
	-webkit-box-align: center;
	-ms-flex-align   : center;
	-webkit-box-pack : justify;
	-ms-flex-pack    : justify;
	align-items      : center;
	display          : -webkit-box;
	display          : -ms-flexbox;
	display          : flex;
	justify-content  : space-between;
}

.thumb-sub {
	border       : 3px solid #ccc;
	border-radius: 50%;
	height       : 64px;
	margin-left  : 8px;
	overflow     : hidden;
	position     : relative;
	width        : 64px;
}

.thumb-sub::after {
	content    : '';
	display    : block;
	padding-top: 100%;
}

.thumb-sub img {
	bottom  : 0;
	height  : 100%;
	left    : 0;
	position: absolute;
	right   : 0;
	top     : 0;
	width   : 100%;
}

.liver-sns-btn {
	display     : inline-block;
	margin-right: 8px;
	position    : relative;
}

.liver-sns-btn span {
	background   : rgba(0, 0, 0, 0.6);
	border       : 3px solid #FF8383;
	border-radius: 22px;
	color        : #fff;
	display      : block;
	font-size    : 1rem;
	padding      : 14px 16px;
}

.thumb-comment-icons {
	margin-bottom: -160px;
	padding-left : 8px;
	position     : relative;
}

.thumb-comment-icons dl {
	background   : rgba(0, 0, 0, 0.6);
	border-radius: 18px;
	color        : #fff;
	font-size    : 1.2rem;
	margin-bottom: 4px;
	padding      : 6px;
	width        : 80%;
}

.thumb-comment-icons dl dt,
.thumb-comment-icons dl dd {
	display: inline-block;
}

.icon-head {
	background   : #7E7EFC;
	border-radius: 8px;
	display      : inline-block;
	font-size    : 1rem;
	margin-right : 16px;
	padding      : 2px;
	text-align   : center;
	width        : 40px;
}

.icon-birth {
	-webkit-transition: .4s all ease-in 0s;
	opacity           : 0;
	transition        : .4s all ease-in 0s;
}

.icon-from {
	-webkit-transition: .4s all ease-in .15s;
	opacity           : 0;
	transition        : .4s all ease-in .15s;
}

.icon-hobby {
	-webkit-transition: .4s all ease-in .3s;
	opacity           : 0;
	transition        : .4s all ease-in .3s;
}

.icon-skill {
	-webkit-transition: .4s all ease-in .45s;
	opacity           : 0;
	transition        : .4s all ease-in .45s;
}

.thumb-bottom-icons {
	-ms-flex-pack    : distribute;
	-webkit-box-align: center;
	-ms-flex-align   : center;
	align-items      : center;
	background       : #333;
	display          : -webkit-box;
	display          : -ms-flexbox;
	display          : flex;
	justify-content  : space-around;
	padding          : 12px 16px;
	position         : relative;
	z-index          : 10;
}

.thumb-bottom-icons:hover .comment-bar,
.thumb-bottom-icons:hover .icon-send {
	-webkit-transition: .3s ease-in all 0s;
	background        : -webkit-linear-gradient(135deg, rgba(246, 255, 0, 0.8), rgba(255, 0, 161, 0.8));
	background        : linear-gradient(-45deg, rgba(246, 255, 0, 0.8), rgba(255, 0, 161, 0.8));
	transition        : .3s ease-in all 0s;
}

.comment-bar {
	background   : #666;
	border       : 2px solid #fff;
	border-radius: 18px;
	color        : #fff;
	font-size    : 1.4rem;
	margin-right : 16px;
	padding      : 4px 16px;
	position     : relative;
	z-index      : 10;
}

.fa-comment-dots {
	margin-right: 16px;
}

.comment-hover-txt {
	-webkit-transition: .3s all ease-in .15s;
	opacity           : 0;
	transition        : .3s all ease-in .15s;
}

.icon-send {
	-webkit-box-pack : center;
	-ms-flex-pack    : center;
	-webkit-box-align: center;
	-ms-flex-align   : center;
	align-items      : center;
	background       : #666;
	border           : 2px solid #fff;
	border-radius    : 50%;
	color            : #fff;
	display          : -webkit-box;
	display          : -ms-flexbox;
	display          : flex;
	height           : 30px;
	justify-content  : center;
	position         : relative;
	width            : 30px;
	z-index          : 10;
}

.slide-family-txt-area {
	width: 100%;
}

.slide-family-ttl {
	color        : #FF6595;
	font-family  : 'Lato', sans-serif;
	font-size    : 3.2rem;
	font-style   : italic;
	font-weight  : 900;
	margin-bottom: 24px;
}

.slide-family-name {
	font-size    : 3rem;
	font-weight  : 700;
	margin-bottom: 48px;
}

.slide-family-profile {
	background    : #FFEFEF;
	border-radius : 30px;
	letter-spacing: .08rem;
	line-height   : 1.6;
	padding       : 32px;
	position      : relative;
}

.slide-family-profile::before {
	border-color: #FFEFEF transparent transparent transparent;
	border-style: solid;
	border-width: 24px 0px 0px 16px;
	content     : '';
	height      : 0;
	left        : -16px;
	position    : absolute;
	top         : 32px;
	width       : 0;
}

.swiper-button-prev,
.swiper-button-next {
	height    : 48px;
	margin-top: -16px;
	width     : 48px;
}

.swiper-button-prev {
	background: url(src/img/base/arrow_left.png) no-repeat center center/contain;
}

.swiper-button-prev::after {
	content: "";
}

.swiper-button-next {
	background: url(src/img/base/arrow_right.png) no-repeat center center/contain;
}

.swiper-button-next::after {
	content: "";
}

@media screen and (max-width: 959px) {
	.slide-family-ttl {
		font-size: 2.4rem;
	}

	.slide-family-name {
		font-size: 2.4rem;
	}
}

@media screen and (max-width: 767px) {
	#family-slider-area {
		background: #FDD2D7;
		padding   : 0;
	}

	.slide-family-wrapper {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		-webkit-box-align    : center;
		-ms-flex-align       : center;
		align-items          : center;
		flex-direction       : column;
	}

	.slide-family-thumbnail {
		margin-bottom: 24px;
		margin-right : 0;
	}

	.slide-family-txt-area {

		text-align: center;
	}

	.slide-family-ttl {
		font-size    : 2rem;
		margin-bottom: 16px;
	}

	.slide-family-name {
		margin-bottom: 32px;
	}

	.slide-family-profile::before {
		display: none;
	}

	.slide-family-profile {
		font-size: 1.4rem;
		width    : 100%;
	}
}

#all-family {
	padding: 80px 0;
}

.all-family-inner {
	margin   : 0 auto;
	max-width: 1360px;
	padding  : 0 30px;
	width    : 100%;
}

.family-list {
	-ms-flex-wrap   : wrap;
	-webkit-box-pack: center;
	-ms-flex-pack   : center;
	display         : -webkit-box;
	display         : -ms-flexbox;
	display         : flex;
	flex-wrap       : wrap;
	-webkit-box-pack: center;
	-ms-flex-pack   : center;
	justify-content : center;
}

.family-list-item {
	margin   : 0 32px 32px 0;
	max-width: 280px;
	width    : calc(25% - 48px / 4);
}

.family-list-item:nth-child(4n) {
	margin-right: 0;
}

.family-list-item-thumbnail {
	-webkit-box-orient   : vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction   : column;
	-webkit-box-pack     : justify;
	-ms-flex-pack        : justify;
	background           : no-repeat center center/cover;
	border-radius        : 30px;
	display              : -webkit-box;
	display              : -ms-flexbox;
	display              : flex;
	flex-direction       : column;
	height               : 420px;
	justify-content      : space-between;
	overflow             : hidden;
	padding-top          : 8px;
	position             : relative;
}

.family-list-item-thumbnail:hover .thumb-comment-icons .icon-birth {
	-webkit-transition: .3s all ease-in .45s;
	opacity           : 1;
	transition        : .3s all ease-in .45s;
}

.family-list-item-thumbnail:hover .thumb-comment-icons .icon-from {
	-webkit-transition: .3s all ease-in .3s;
	opacity           : 1;
	transition        : .3s all ease-in .3s;
}

.family-list-item-thumbnail:hover .thumb-comment-icons .icon-hobby {
	-webkit-transition: .3s all ease-in .15s;
	opacity           : 1;
	transition        : .3s all ease-in .15s;
}

.family-list-item-thumbnail:hover .thumb-comment-icons .icon-skill {
	-webkit-transition: .3s all ease-in 0s;
	opacity           : 1;
	transition        : .3s all ease-in 0s;
}

.family-list-item-thumbnail:hover .thumb-bottom-icons .comment-hover-txt {
	-webkit-transition: .3s all ease-in .9s;
	opacity           : 1;
	transition        : .3s all ease-in .9s;
}

.family-list-item-thumbnail:hover::after {
	-webkit-transition: .3s ease-in all .9s;
	opacity           : 1;
	transition        : .3s ease-in all .9s;
}

.family-list-item-thumbnail::after {
	-webkit-transition: .6s all ease-in 0s;
	background        : -webkit-linear-gradient(135deg, rgba(246, 255, 0, 0.4), rgba(255, 0, 161, 0.4));
	background        : linear-gradient(-45deg, rgba(246, 255, 0, 0.4), rgba(255, 0, 161, 0.4));
	bottom            : 0;
	content           : '';
	display           : block;
	left              : 0;
	opacity           : 0;
	position          : absolute;
	right             : 0;
	top               : 0;
	transition        : .6s all ease-in 0s;
}

@media screen and (max-width: 1276px) {
	.family-list-item {
		width: calc(33.3333% - 64px / 3);
	}

	.family-list-item:nth-child(4n) {
		margin-right: 32px;
	}

	.family-list-item:nth-child(3n) {
		margin-right: 0;
	}
}

@media screen and (max-width: 959px) {
	.family-list-item {
		width: calc(50% - 32px / 2);
	}

	.family-list-item:nth-child(3n) {
		margin-right: 32px;
	}

	.family-list-item:nth-child(2n) {
		margin-right: 0;
	}
}

@media screen and (max-width: 767px) {
	.family-list {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		-ms-flex-wrap        : nowrap;
		-webkit-box-align    : center;
		-ms-flex-align       : center;
		align-items          : center;
		flex-direction       : column;
		flex-wrap            : nowrap;
	}

	.family-list-item {
		margin: 0 auto 32px;
		width : 280px;
	}

	.family-list-item:nth-child(3n) {
		margin-right: auto;
	}

	.family-list-item:nth-child(2n) {
		margin-right: auto;
	}
}

#singleLiver {
	background: #f0f0f0;
	padding   : 64px 30px;
	width     : 100%;
}

.singleLiver-post-box {
	display      : -webkit-box;
	display      : -ms-flexbox;
	display      : flex;
	background   : #fff;
	border-radius: 30px;
	margin       : 0 auto;
	margin-bottom: 32px;
	max-width    : 1360px;
	padding      : 40px;
	position     : relative;
	width        : 100%;
}


.singleLiver-post {
	-webkit-box-orient   : vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction   : column;
	display              : -webkit-box;
	display              : -ms-flexbox;
	display              : flex;
	flex-direction       : column;
	padding-right        : 64px;
	width                : 60%;
}

.singleLiver-post-thumbnail {
	border-radius: 30px;
	overflow     : hidden;
	position     : relative;
	display      : block;
	width        : 40%;
	height       : 640px;
}

.singleLiver-post-thumbnail::after {
	content    : '';
	display    : block;
	padding-top: 149.52%;
}

.singleLiver-post-thumbnail img {
	height    : 640px;
	width     : 100%;
	object-fit: cover;
}

.singleLiver-name {
	font-size    : 3.2rem;
	font-weight  : 700;
	margin-bottom: 40px;
}

.singleLiver-desc {
	margin-bottom: 44px;
}

.singleLiver-profile {
	-webkit-box-align: center;
	-ms-flex-align   : center;
	align-items      : center;
	display          : -webkit-box;
	display          : -ms-flexbox;
	display          : flex;
	margin-bottom    : 1rem;
}

.singleLiver-profile dt {
	background   : #ff8383;
	border-radius: 20px;
	color        : #fff;
	display      : inline-block;
	font-size    : 1.2rem;
	font-weight  : 700;
	margin-right : 1.6rem;
	padding      : .4rem 0;
	text-align   : center;
	width        : 80px;
}

.singleLiver-profile dd {
	font-size     : 1.4rem;
	letter-spacing: .06rem;

}

.singleLiver-profile-message {
	width        : 100%;
	margin-bottom: 40px;
}

.singleLiver-profile-message h3 {
	color        : #FF8383;
	font-size    : 1.4rem;
	margin-bottom: 2rem;
	position     : relative;
}

.singleLiver-profile-message h3::after {
	background: #ccc;
	bottom    : -8px;
	content   : '';
	height    : 1px;
	left      : 0;
	position  : absolute;
	width     : 100%;
}

.singleLiver-profile-message dd {
	letter-spacing: .06rem;
	line-height   : 1.6;
}

.profile-txt {
	letter-spacing: .06rem;
	line-height   : 1.6;
	padding-right : 16px;
}

.appeal-ttl {
	margin-top: 32px;
}

.livers-btn {
	text-align: center;
}

.livers-btn a {
	-webkit-box-shadow: 0px 0px 8px rgba(209, 209, 209, 0.7);
	-webkit-transition: .3s all ease 0s;
	background        : #fff;
	border-radius     : 25px;
	box-shadow        : 0px 0px 8px rgba(209, 209, 209, 0.7);
	color             : #696969;
	display           : inline-block;
	padding           : 1.6rem 3.2rem;
	transition        : .3s all ease 0s;
}

.livers-btn a:hover {
	background: #333;
	color     : #fff;
	transition: .3s all ease 0s;
}

@media screen and (max-width: 959px) {
	#singleLiver {
		background: #fff;
		padding   : 64px 3%;
	}

	.singleLiver-post-box {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: reverse;
		-ms-flex-direction   : column-reverse;
		display              : -webkit-box;
		display              : -ms-flexbox;
		display              : flex;
		flex-direction       : column-reverse;
		padding              : 32px;
	}

	.singleLiver-post {
		background  : #fff;
		margin-right: 0;
		padding     : 0;
	}

	.singleLiver-post-thumbnail {
		margin   : 0 auto 32px;
		max-width: 420px;
		width    : auto;
	}

	.singleLiver-post {
		-webkit-box-align: center;
		-ms-flex-align   : center;
		align-items      : center;
		width            : 100%;
	}

	.singleLiver-name {
		font-size : 2.4rem;
		text-align: center;
	}

	.singleLiver-desc {
		margin-bottom: 32px;
		padding      : 16px 32px;
		width        : 100%;
		background   : #FFEFEF;
		border-radius: 20px;
	}

	.singleLiver-profile-message {
		background   : #FFEFEF;
		border-radius: 20px;
		margin-bottom: 32px;
		padding      : 16px 32px;
	}

	.singleLiver-profile-message h3 {
		margin-bottom: 32px;
	}

	.singleLiver-profile-message h3::after {
		background: #ccc;
		bottom    : -12px;
		height    : 1px;
		width     : 100%;
	}

	.singleLiver-profile-message dd {
		font-size: 1.3rem;
	}

	.profile-txt {
		padding: 0;
	}
}

@media screen and (max-width: 767px) {
	#singleLiver {
		padding: 32px 3%;
	}

	.singleLiver-post-box {
		padding: 32px 3%;
	}

	.singleLiver-name {
		margin-bottom: 32px;
	}

	.profile-txt p {
		font-size: 1.3rem;
	}

	.singleLiver-profile dt {
		font-size   : 1rem;
		margin-right: 8px;
		width       : 56px;
	}

	.singleLiver-profile dd {
		font-size: 1.2rem;
	}

	.singleLiver-profile-message {
		font-size: 1.4rem;
	}

	.profile-txt {
		font-size: 1.3rem;
	}

	.livers-btn a {
		font-size: 1.4rem;
		padding  : 16px 32px;
	}

	.singleLiver-post-thumbnail {
		height: 420px;
	}

	.singleLiver-post-thumbnail img {
		height: 420px;
	}
}


#wanted-cta-area {
	padding: 80px 0;
}

#wanted-cta-area .container {
	-webkit-box-pack : justify;
	-ms-flex-pack    : justify;
	-webkit-box-align: center;
	-ms-flex-align   : center;
	align-items      : center;
	display          : -webkit-box;
	display          : -ms-flexbox;
	display          : flex;
	justify-content  : space-between;
}

.cta-top {
	margin-top: 0 !important;
	background: #f2f2f2;
}

.cta-img-area {
	margin-right: 128px;
}

.cta-img-area img {
	height: auto;
	width : 100%;
}

.cta-img-sp {
	display: none;
}

.cta-txt-area p {
	letter-spacing: .08rem;
	line-height   : 2;
}

.wanted-ttl {
	font-size     : 4.8rem;
	font-weight   : 700;
	letter-spacing: .1rem;
	line-height   : 1.4;
	margin-bottom : 40px;
}

.wanted-sub-ttl {
	font-size     : 2.4rem;
	font-weight   : 700;
	letter-spacing: .1rem;
	margin-bottom : 32px;
}

.wanted-content {
	margin-bottom: 32px;
}

.fa-check-circle {
	margin-right: 8px;
	color       : #5BD6AB;
}

.cta-btn {
	background   : #5BD6AB;
	border-radius: 24px;
	color        : #fff;
	display      : inline-block;
	font-weight  : 700;
	padding      : 16px 88px 16px 72px;
	position     : relative;
	transition   : .3s all ease 0s;
}

.cta-btn:hover {
	transition: .3s all ease 0s;
	opacity   : .7;
}

.cta-btn::before {
	background: #fff;
	content   : '';
	height    : 1px;
	position  : absolute;
	right     : 32px;
	top       : calc(50% + 3px);
	width     : 32px;
}

.cta-btn::after {
	-webkit-transform       : rotate(45deg);
	-webkit-transform-origin: right bottom;
	background              : #fff;
	content                 : '';
	height                  : 1px;
	position                : absolute;
	right                   : 32px;
	top                     : calc(50% + 3px);
	transform               : rotate(45deg);
	transform-origin        : right bottom;
	width                   : 12px;
}

@media screen and (max-width: 1120px) {
	#wanted-cta-area .container {
		-webkit-box-pack: center;
		-ms-flex-pack   : center;
		justify-content : center;
	}

	.cta-img-pc {
		display: none;
	}

	.cta-img-sp {
		display: block;
	}

	.wanted-ttl {
		font-size    : 4rem;
		margin-bottom: 32px;
	}

	.wanted-sub-ttl {
		font-size    : 2rem;
		margin-bottom: 24px;
	}

	.wanted-content {
		font-size    : 1.6rem;
		margin-bottom: 24px;
	}


	.cta-btn {
		padding: 16px 64px 16px 48px;
	}

	.cta-btn::before,
	.cta-btn::after {
		right: 16px;
	}
}

@media screen and (max-width: 959px) {
	#wanted-cta-area .container {
		-webkit-box-orient   : vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction   : column;
		flex-direction       : column;
	}

	.cta-txt-area {
		text-align: center;
	}

	.cta-img-area {
		margin: 0 0 32px 0;
	}

	.wanted-ttl {
		font-size     : 5.6rem;
		letter-spacing: .2rem;
		line-height   : 1.3;
	}

	.wanted-sub-ttl {
		font-size: 2.8rem;
	}

	.wanted-content {
		display      : inline-block;
		font-size    : 1.6rem;
		font-weight  : 700;
		margin-bottom: 64px;
		text-align   : left;
	}
}

@media screen and (max-width: 767px) {
	#wanted-cta-area {
		padding: 32px 0;
	}

	.wanted-ttl {
		font-size    : 3rem;
		margin-bottom: 24px;
	}

	.wanted-sub-ttl {
		font-size: 2rem;
	}

	.wanted-content {
		font-size    : 1.4rem;
		margin-bottom: 32px;
	}
}

.wanted-adv {
	background: #f2f2f2;
	padding   : 120px 0;
}

.wanted-adv-ttl {
	font-size     : 3.2rem;
	font-weight   : 700;
	letter-spacing: .1rem;
	margin-bottom : 120px;
	text-align    : center;
}

.wanted-adv-contents {
	-ms-flex-wrap   : wrap;
	-webkit-box-pack: center;
	-ms-flex-pack   : center;
	display         : -webkit-box;
	display         : -ms-flexbox;
	display         : flex;
	flex-wrap       : wrap;
	justify-content : center;
}

.wanted-adv-content {
	-webkit-box-orient   : vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction   : column;
	-webkit-box-align    : center;
	-ms-flex-align       : center;
	align-items          : center;
	background           : #fff;
	display              : -webkit-box;
	display              : -ms-flexbox;
	display              : flex;
	flex-direction       : column;
	margin               : 0 32px 32px 0;
	padding              : 32px;
	width                : calc(33.3333% - 64px / 3);
}

.wanted-adv-content:nth-child(3n) {
	margin-right: 0;
}

.wanted-adv-content h3 {
	-webkit-box-ordinal-group: 3;
	-ms-flex-order           : 2;
	font-size                : 1.8rem;
	font-weight              : 700;
	margin-bottom            : 48px;
	order                    : 2;
	position                 : relative;
}

.wanted-adv-content h3::after {
	-webkit-transform: translateX(-50%);
	background       : #FF8383;
	bottom           : -16px;
	content          : '';
	height           : 3px;
	left             : 50%;
	position         : absolute;
	transform        : translateX(-50%);
	width            : 48px;
}

.wanted-adv-content img {
	-webkit-box-ordinal-group: 2;
	-ms-flex-order           : 1;
	height                   : 64px;
	margin-bottom            : 24px;
	order                    : 1;
	width                    : 64px;
}

.wanted-adv-content p {
	-webkit-box-ordinal-group: 4;
	-ms-flex-order           : 3;
	font-size                : 1.4rem;
	letter-spacing           : .08rem;
	line-height              : 2;
	order                    : 3;
}

@media screen and (max-width: 959px) {
	.wanted-adv {
		padding: 80px 0;
	}

	.wanted-adv-ttl {
		font-size    : 2.6rem;
		margin-bottom: 80px;
	}

	.wanted-adv-content {
		margin: 0 32px 32px 0;
		width : calc(50% - 64px / 2);
	}

	.wanted-adv-content:nth-child(3n) {
		margin-right: 32px;
	}

	.wanted-adv-content:nth-child(2n) {
		margin-right: 0;
	}
}

@media screen and (max-width: 767px) {
	.wanted-adv {
		padding: 64px 0;
	}

	.wanted-adv-ttl {
		font-size    : 2rem;
		margin-bottom: 64px;
	}

	.wanted-adv-content {
		margin: 0 0 16px 0;
		width : 100%;
	}

	.wanted-adv-content:nth-child(3n) {
		margin-right: 0;
	}

	.wanted-adv-content h3 {
		font-size: 1.6rem;
	}

	.wanted-adv-content img {
		height       : 48px;
		margin-bottom: 16px;
		width        : 48px;
	}

	.wanted-adv-content p {
		font-size: 1.4rem;
	}
}

.faq {
	padding: 120px 0;
}

.faq-ttl {
	font-size    : 4.8rem;
	margin-bottom: 120px;
	position     : relative;
	text-align   : center;
}

.faq-ttl-en {
	font-family   : 'Lato';
	font-weight   : 900;
	letter-spacing: .2rem;
}

.faq-ttl-jp {
	-webkit-transform: translateX(-50%);
	bottom           : -32px;
	color            : #696969;
	font-size        : 1.4rem;
	left             : 50%;
	letter-spacing   : .08rem;
	position         : absolute;
	transform        : translateX(-50%);
}

.accordion-container {
	margin  : 0 auto;
	position: relative;
	width   : 100%;
}

.accordion-container {
	max-width: 1100px;
	width    : 80%;
}

.accordion-ttl-box {
	-webkit-transition: .3s;
	background        : #F2CACA;
	cursor            : pointer;
	margin-bottom     : 3px;
	padding           : 32px 64px;
	position          : relative;
	transition        : .3s;
}

.accordion-ttl-box:hover {
	-webkit-transition: .3s;
	opacity           : .8;
	transition        : .3s;
}

.accordion-ttl-box::after {
	-webkit-transform : rotate(135deg);
	-webkit-transition: 0.3s all ease-in-out 0s;
	border-right      : solid 2px #555;
	border-top        : solid 2px #555;
	content           : '';
	display           : block;
	height            : 10px;
	position          : absolute;
	right             : 25px;
	top               : 38%;
	transform         : rotate(135deg);
	transition        : 0.3s all ease-in-out 0s;
	width             : 10px;
}

.accordion-ttl {
	font-size     : 1.8rem;
	font-weight   : 700;
	letter-spacing: .08rem;
	line-height   : 1.3;
	padding-left  : 42px;
	text-indent   : -42px;
}

.accordion-ttl.open::after {
	-webkit-transform: rotate(-45deg);
	top              : 45%;
	transform        : rotate(-45deg);
}

.qa-head {
	font-family : 'Lato';
	font-size   : 2.4rem;
	font-weight : bold;
	margin-right: 16px;
}

.accordion-content {
	background   : #FFF0F0;
	display      : none;
	margin-bottom: 3px;
	margin-top   : -3px;
	padding      : 32px 64px;
}

.accordion-content p {
	font-weight   : 500;
	letter-spacing: .08rem;
	line-height   : 1.6;
	padding-left  : 45px;
	text-indent   : -45px;
}

@media screen and (max-width: 959px) {
	.faq {
		padding: 80px 0;
	}

	.faq-ttl {
		margin-bottom: 80px;
	}

	.qa-head {
		font-size   : 2rem;
		margin-right: 16px;
	}

	.accordion-container {
		width: 90%;
	}

	.accordion-ttl-box {
		padding: 16px 48px 16px 16px;
	}

	.accordion-ttl-box::after {
		height: 8px;
		right : 16px;
		width : 8px;
	}

	.accordion-ttl {
		font-size: 1.4rem;
	}

	.accordion-content {
		font-size: 1.4rem;
		padding  : 16px 48px 16px 16px;
	}

	.accordion-content p {
		padding-left: 40px;
		text-indent : -40px;
	}
}

#voice {
	background: #f2f2f2;
	padding   : 120px 0;
	position  : relative;
}

.voice-ttl {
	font-size    : 3.2rem;
	font-weight  : 700;
	margin-bottom: 80px;
	text-align   : center;
}

:root {
	--swiper-theme-color: #645C46;
}

.swiper-pagination {
	-webkit-transform: translateX(-50%);
	left             : 50%;
	margin-top       : 6px;
	transform        : translateX(-50%);
}

.swiper-pagination-bullet {
	margin-right: 8px;
}

.swiper-slide02 {
	background   : #fff;
	border-radius: 30px;
	padding      : 16px 24px;
	position     : relative;
	width        : 360px;
	height       : 100%;
}

.swiper-slide02 a {
	-webkit-box-orient   : vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction   : column;
	-webkit-box-align    : center;
	-ms-flex-align       : center;
	align-items          : center;
	display              : -webkit-box;
	display              : -ms-flexbox;
	display              : flex;
	flex-direction       : column;
}

.voice-thumbnail {
	border       : 4px solid #ccc;
	border-radius: 50%;
	height       : 96px;
	margin-bottom: 16px;
	overflow     : hidden;
	position     : relative;
	width        : 96px;
}

.voice-thumbnail::after {
	content    : '';
	display    : block;
	padding-top: 132.53%;
}

.voice-thumbnail img {
	bottom  : 0;
	height  : 100%;
	left    : 0;
	position: absolute;
	right   : 0;
	top     : 0;
	width   : 100%;
}

.voice-name {
	color        : #FF8383;
	font-size    : 1.8rem;
	font-weight  : 700;
	margin-bottom: 24px;
}

.voice-txt {
	letter-spacing: .08rem;
	line-height   : 1.6;
}

@media screen and (max-width: 959px) {
	#voice {
		padding: 80px 0;
	}

	.voice-ttl {
		font-size    : 2.4rem;
		margin-bottom: 36px;
	}
}

@media screen and (max-width: 767px) {
	.swiper-slide02 {
		width: 320px;
	}
}

#single-family {
	width: 100%;
}

#toc_container {
	background    : #fafafa;
	border        : 1px solid #aaa;
	font-weight   : 700;
	letter-spacing: .08rem;
	line-height   : 1.4;
}

#toc_container p.toc_title {
	margin-bottom: 1em;
	text-align   : left;
	color        : #666;
}

.toc_number {
	display   : inline-block;
	margin    : 0 4px 8px 0;
	padding   : 2px 6px;
	color     : #fff;
	background: #FF6595;
	font-size : 90%;
}

.toc_list li a {
	color: #666;
}

#company {
    margin-top: 88px;
    padding: 80px 30px;
}

#company .inner {
    text-align: center;
}

.company-ttl {
    margin-bottom: 64px;
    font-size: 3.2rem;
    font-weight: bold;
}

.company-table{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.company-table tr {
    text-align: center;
    border-bottom: 2px solid #fff;
}

.company-table th{
    position: relative;
    padding: 8px 0;
    text-align: center;
    width: 25%;
    color: #fff;
    background: #555;
}

.company-table td{
    padding: 8px 80px;
    text-align: left;
    width: 75%;
    background: rgb(230, 230, 230);
}

@media screen and (max-width: 767px) {
    #company {
        padding: 64px 12px;
    }
    .company-table td {
        padding: 6px 12px;
        font-size: 1.4rem;
    }
}

#other {
    margin-top: 88px;
    padding: 80px 30px;
}

#other .inner {
    text-align: center;
}

.other-ttl {
    margin-bottom: 64px;
    font-size: 3.2rem;
    font-weight: bold;
}

.other-table{
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
}

.other-table tr {
    text-align: center;
    border-bottom: 2px solid #fff;
}

.other-table th{
    position: relative;
    padding: 8px 0;
    text-align: center;
    width: 25%;
    color: #fff;
    background: #555;
}

.other-table td{
    padding: 8px 80px;
    text-align: left;
    width: 75%;
    background: rgb(230, 230, 230);
}

@media screen and (max-width: 767px) {
    #other {
        padding: 64px 12px;
    }
    .other-table td {
        padding: 6px 12px;
        font-size: 1.4rem;
    }
}