@charset "utf-8";

/* HOME
-------------------------------------------------------------------*/
.home .mv{
	position:relative;
	padding:150px 0;
}

.home .mv .bgtxt{
	position:absolute;
	left:0;
	right:0;
	top:-50px;
	z-index:0;
	margin:0 auto;
	max-width:1360px;
}

.home .mv .line{
	position:absolute;
	right:0;
	top:600px;
	z-index:2;
}

.home .mv h1{
	position:absolute;
	left:40px;
	top:200px;
}

.home .mv .slider{
	margin:0 0 0 -30px;
}

.home .mv .slider li{
	margin:0 40px 0 0;
}

.arrow-box{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin: 0 30px 40px 0;
    position: relative;
}

.prev-arrow,
.next-arrow{
    display: block;
    width: 60px;
    height: 60px;
    transition: all .3s ease;
    cursor: pointer;
    position:relative;
}

.prev-arrow:after,
.next-arrow:after{
	content:"";
    width: 60px;
    height: 60px;
	background:url(../img/top/slide-arrow.png) no-repeat center center;
	position:absolute;
	left:0;
	top:0;
	transition: all 0.3s;
}

.prev-arrow{
    transform: rotate(180deg);
    margin-right: 20px;
}

.prev-arrow:hover:after,
.next-arrow:hover:after{
	opacity: 0.6;
	filter: alpha(opacity=60);
}

.m-tit{
	font-size:42px;
	line-height:1.6;
	font-family: "Zen Old Mincho", serif;
}

.m-tit span{
	font-size:16px;
	color:#CE8878;
	font-family: "Shippori Mincho", serif;
	display:block;
	padding:0 0 0 20px;
	background:url(../img/common/tit-ico.png) no-repeat left center;
}

.m-tit em{
	font-size:16px;
	display:block;
	color:#000000;
}

.service{
	padding:100px 20px 0 20px;
}

.service .box{
	display:flex;
	position:relative;
}

.service .box .line{
	position:absolute;
	bottom:-200px;
	left:-160px;
}

.service .box .txt-box{
	min-width:340px;
	width:340px;
	margin:0 120px 0 0;
	position:relative;
	z-index:2;
}

.service .box .txt-box .txt{
	padding:40px 0 0 0;
	line-height:2;
	color:#5C5C5C;
}

.service .box ul.link-box{
	width:100%;
	font-family: "Zen Old Mincho", serif;
	position:relative;
	z-index:2;
}

.service .box ul.link-box > li{
	padding:35px 0;
	border-bottom:1px solid #A2A2A2;
	position:relative;
}

.service .box ul.link-box > li:first-child{
	padding:0 0 35px 0;
}

.service .box ul.link-box > li .link-btn{
	position:absolute;
	right:0;
	top:40px;
}

.service .box ul.link-box > li:first-child .link{
	top:0;
}

.link-btn a{
	display:inline-block !important;
	font-size:14px;
	padding:0 30px 0 0;
	background:url(../img/common/link-arrow.png) no-repeat right center;
}

.service .box ul.link-box > li .num{
	font-size:18px;
	font-family: "Shippori Mincho", serif;
}

.service .box ul.link-box > li h3{
	font-size:20px;
	font-weight:500;
}

.service .box ul.link-box > li h3 span{
	font-size:32px;
	font-weight:400;
	color:#CE8878;
}

.service .box ul.link-box > li h3 em{
	font-size:16px;
	display:block;
}

.service .box ul.link-box > li h3 em span{
	font-size:16px;
}

.service .box ul.link-box > li ul{
	padding:30px 0 0 0;
	display:flex;
}

.service .box ul.link-box > li ul li{
	padding:0 30px;
	height:45px;
	line-height:43px;
	text-align:center;
	border:1px solid #707070;
	border-radius:5px;
	font-weight:600;
	margin:0 10px 0 0;
	background:#fff;
}

.m-btn a,
.morelink{
	display:inline-block;
	background:#000000;
	color:#fff;
	font-family: "Zen Old Mincho", serif;
	border-radius:5px;
	height:45px;
	line-height:43px;
	padding:0 30px;
	border:1px solid #000000;
}

.morelink{
	display:block;
	border-radius:80px;
	width:200px;
	margin:30px auto 0;
	transition: all 0.3s;
	text-align:center;
	cursor:pointer;
}

.m-btn a span{
	display:inline-block;
	padding:0 25px 0 0;
	background:url(../img/common/m-arrow-w.png) no-repeat right center;
}

.m-btn a:hover,
.morelink:hover{
	background:#fff;
	color:#000000;
}

.m-btn a:hover span{
	background:url(../img/common/m-arrow-b.png) no-repeat right center;
}

.home-news{
	padding:120px 20px 80px 20px;
	position:relative;
	z-index:99;
	background:#EDE7E4;
}

.home-news .box{
	position:relative;
}

.home-news .box h2{
	padding:0 0 50px 0;
}

.news-list{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.news-list:after{
	content:"";
	width:31%;
}

.news-list > li{
	width:31%;
	margin:0 0 40px 0;
	display:flex;
	flex-direction: column;
	font-family: "Zen Old Mincho", serif;
}

.news-list > li .cate{
	display:flex;
	align-items:center;
}

.news-list > li .cate .tit{
	line-height:1.6;
	padding:3px 25px;
	background:#CE9487;
	font-size:13px;
	font-weight:600;
	color:#fff;
	border-radius:25px;
}

.news-list > li .cate .day{
	padding:0 0 0 20px;
	color:#918883;
}

.news-list > li .img{
	margin:0 0 20px 0;
}

.news-list > li .img img{
	border-radius:10px;
}

.news-list > li .coverimg:before {
    padding-top: 70%;
}

.news-list > li .sub-cate{
	display:flex;
	flex-wrap:wrap;
}

.news-list > li .sub-cate > li{
	padding:10px 10px 0 0;
	font-size:13px;
	color:#CE8878;
}

.news-list > li .sub-cate > li:before{
	content:"#";
}

.news-list > li .txt{
    flex-grow: 1;
	line-height:1.8;
	color:#000000;
	padding:15px 0 40px 0;
}

.home-news .m-btn{
	position:absolute;
	right:0;
	top:40px;
}

.main-bg{
	position: sticky;
	top:0;
	left:0;
	right:0;
	height:500px;
	background:url(../img/top/main-bg01.jpg) no-repeat center center;
	background-size:cover;
	z-index:-1;
}

.main-bg02{
	background:url(../img/top/main-bg02.jpg) no-repeat center center;
	background-size:cover;
}

.reason{
	position:relative;
	z-index:99;
	background:#EDE7E4;
	padding:120px 20px;
}

.reason h2{
	text-align:center;
}

.reason h2.m-tit span{
	display:inline-block;
}

.m-tit b{
	font-weight:400;
}

.reason .box-in01{
	padding:60px 0 0 0;
}

.reason .box-in01 li{
	display:flex;
	align-items:center;
	padding:0 0 50px 0;
}

.reason .box-in01 li .img{
	min-width:500px;
	width:500px;
}

.reason .box-in01 li:nth-child(even) .img{
	order:2;
}

.reason .box-in01 li .txt-box{
	margin:0 0 0 40px;
	width:100%;
}

.reason .box-in01 li:nth-child(even) .txt-box{
	margin:0 40px 0 0;
}

.reason .box-in01 li .txt-box .num{
	font-family: "Shippori Mincho", serif;
	font-size:60px;
	color:#CE9487;
	margin:-50px 0 -10px 0;
}

.reason .box-in01 li .txt-box .num span{
	font-size:110px;
}

.reason .box-in01 li .txt-box h3{
	font-size:28px;
	line-height:1.6;
	color:#CE8878;
	font-weight:500;
	padding:0 0 10px 0;
	font-family: "Zen Old Mincho", serif;
}

.reason .box-in01 li .txt-box .txt{
	line-height:2;
}

.reason .box-in02{
	margin:110px 0 0 0;
	padding:0 50px 60px 50px;
	border-radius: 20px;
	background: #e0ccc6;
}

.reason .box-in02 ul{
	display:flex;
	justify-content:space-between;
	position:relative;
	top:-40px;
	flex-wrap: wrap;
}

.reason .box-in02 ul:after{
	content:"";
	width:32%;
}

.reason .box-in02 ul li{
	width:32%;
}

.reason .box-in02 ul li .youtube{
	padding:0 0 10px 0;
}

.reason .box-in02 ul li .youtube iframe{
	border-radius:10px;
}

.link-btn02 a{
	font-weight:400;
	font-family: "Shippori Mincho", serif;
}

.reason .box-in02 .m-btn{
	text-align:center;
}

.reason .client{
	padding:100px 0 0 0;
}

.reason .client h4{
	font-family: "Shippori Mincho", serif;
	font-size:18px;
	display:flex;
	color:#918883;
	align-items: center;
}

.reason .client h4:after{
	background-color: #918883;
	content: "";
	flex-grow: 1;
	height: 1px;
	margin-left: 15px
}

.reason .client ul{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	position:relative;
}

.reason .client ul:after{
	content:"";
	width:32%;
	display:block;
}

.reason .client ul li{
	width:32%;
	padding:20px 0 0 0;
	text-align:center;
}

.activities{
	padding:100px 20px;
	position:relative;
	z-index:99;
	background:#EDE7E4;
}

.activities .box{
	display:flex;
	padding:0 0 50px 0;
	border-bottom:1px solid #A2A2A2;
	position:relative;
	z-index:2;
}

.activities .line{
	position:absolute;
	bottom:100px;
	left:0;
	z-index:0;
}

.activities .box .txt-box{
	width:300px;
	min-width:300px;
	position:relative;
	z-index:2;
}

.activities .box .txt-box .m-btn{
	padding:30px 0 0 0;
}


.activities .box ul li{
	display:flex;
	padding:0 0 40px 0;
}

.activities .box ul li .img{
	width:300px;
	min-width:300px;
}

.activities .box ul li .tit-box{
	padding:0 0 0 30px;
	position:relative;
}

.activities .box ul li .tit-box h3{
	font-family: "Zen Old Mincho", serif;
	font-size:24px;
	line-height:1.6;
}

.activities .box ul li .tit-box .txt{
	padding:20px 0 0 0;
	font-size:14px;
	line-height:2;
}

.activities .box ul li .tit-box .link-btn{
	position:absolute;
	bottom:0;
	left:30px;
}

@media screen and (max-width: 1100px) {
.activities .box ul li{
	display:block;
}
	
.activities .box ul li .tit-box{
	padding:20px 0 0 0;
}

.activities .box ul li .tit-box h3{
	padding:0;
}

.activities .box ul li .tit-box .txt{
	padding:20px 0;
}

.activities .box ul li .tit-box .link-btn{
	position:static;
}
}

.about{
	position:relative;
	z-index:99;
	background:#EDE7E4;
	padding:0 20px;
}

.about .box-in{
	margin:80px 0 0 -130px;
	padding:50px 300px 30px 130px;
	background:#FFFFFF;
	border:1px solid #707070;
	border-radius:40px;
	position:relative;
	display:inline-block;
}

.about .box-in h3{
	background: #ce9487;
	display:inline-block;
	color:#fff;
	line-height:1.6;
	padding:3px 30px;
	font-weight:600;
	border-radius:30px;
	position:absolute;
	left:130px;
	top:-15px;
	font-size:16px;
}

.about .box-in h4{
	font-size:28px;
	line-height:1.6;
	font-weight:500;
	color:#CE8878;
	padding:0 0 20px 0;
}

.about .box-in .img{
	position:absolute;
	right:-150px;
	top:-80px;
}

.about .address{
	padding:80px 0 0 0;
}

.about .address dl{
	padding:25px 0;
	display:flex;
	border-bottom:1px solid #A2A2A2;
}

.about .address dl dt{
	font-size:20px;
	font-weight:500;
	color:#CE8878;
	line-height:1.6;
	width:140px;
	min-width:140px;
}

.about .address dl dd{
	font-size:20px;
	font-weight:500;
	line-height:1.6;
}

.about .address dl dd ul{
	font-size:20px;
	font-weight:500;
	line-height:1.6;
	display:flex;
	flex-wrap:wrap;
	margin:0 0 -20px 0;
}

.about .address dl dd ul li{
	margin:0 50px 20px 0;
	padding-left:1em;
	text-indent:-1em;
}

.about .address dl dd ul li:first-child,
.about .address dl dd ul li:nth-child(4){
	width:369px;
}

.about .address dl dd ul li:nth-child(2){
	width:269px;
}

.about .address dl dd ul li span{
	font-size:16px;
}

@media screen and (max-width: 1185px) {
.about .address dl dd ul{
	display:block;
}
	
.about .address dl dd ul li:first-child,
.about .address dl dd ul li:nth-child(4){
	width:100%;
}

.about .address dl dd ul li:nth-child(2){
	width:100%;
}
}

.slide-area{
	padding:150px 0 150px 0;
	background:url(../img/top/slide-area-bg.png) no-repeat center center #EDE7E4;
	background-size:cover;
	z-index:-1;
	text-align:center;
	position: sticky;
    top: 0;
}

.slide-area h2{
	font-size:48px;
	font-family: "Zen Old Mincho", serif;
	line-height:1.6;
	font-weight:500;
	padding:0 0 30px 0;
}

.slide-area h2 span{
	color:#CE8878;
}

.slide-area h2 span em{
	font-family: "Shippori Mincho", serif;
	font-size:50px;
}

.slide-area .img{
	margin:0 0 -170px 0;
	position:relative;
	z-index:2;
}

.slide-area ul{
	overflow: hidden;
	display: flex;
	width: 100vw;
	margin-inline: calc(50% - 50vw);
}

.slide-area ul li{
	color:#FFFFFF;
	font-size: 13.66vw;
	opacity:0.2;
	font-family: "Shippori Mincho", serif;
	padding:0 20px;
	flex-shrink: 0;
	white-space: nowrap;
}

.slide-area ul li:nth-child(odd) {
    animation: MoveLeft 80s -40s infinite linear;
}

.slide-area ul li:nth-child(even) {
    animation: MoveLeft2 80s infinite linear;
}

@keyframes MoveLeft {
from {
    transform: translateX(100%);
}
to {
    transform: translateX(-100%);
}
}

@keyframes MoveLeft2 {
from {
    transform: translateX(0);
}
to {
    transform: translateX(-200%);
}
}

@media screen and (max-width: 800px) {
.home .mv{
	position:relative;
	padding:160px 0;
}

.home .mv .bgtxt{
	top:40px;
	max-width:400px;
}

.home .mv .line{
	top:500px;
}

.home .mv h1{
	left:20px;
	top:120px;
	padding:0 20px 0 0;
	max-width:390px;
}

.home .mv .slider{
	margin:0 0 0 -30px;
}

.home .mv .slider li{
	margin:0 20px 0 0;
	width:390px;
}

@media screen and (max-width: 420px) {
.home .mv .slider li{
	width:300px;
}
	
.home .mv .bgtxt{
	max-width:300px;
}
}

.home .arrow-box02{
    display: flex !important;
    justify-content: flex-start;
    margin: 30px 0 0 20px;
}

.prev-arrow,
.next-arrow{
    width: 40px;
    height: 40px;
}

.prev-arrow:after,
.next-arrow:after{
    width: 40px;
    height: 40px;
	background:url(../img/top/slide-arrow.png) no-repeat center center;
	background-size:contain;
}

.m-tit{
	font-size:32px;
}

.m-tit span{
	font-size:14px;
}

.m-tit em{
	font-size:14px;
}

.service{
	overflow:hidden;
	padding:0 20px;
}

.service .box{
	display:block;
}

.service .box .line{
	position:static;
	margin:0 -20px;
	padding:50px 0 0 0;
}

.service .box .txt-box{
	min-width:inherit;
	width:100%;
	margin:0;
}

.service .box .txt-box .txt{
	padding:30px 0 30px 0;
}

.service .box ul.link-box > li{
	padding:20px 0;
}

.service .box ul.link-box > li:first-child{
	padding:0 0 20px 0;
}

.service .box ul.link-box > li .link-btn{
	position:static;
}

.service .box ul.link-box > li .num{
	font-size:14px;
}

.service .box ul.link-box > li h3{
	font-size:16px;
}

.service .box ul.link-box > li h3 span{
	font-size:24px;
}

.service .box ul.link-box > li h3 em{
	font-size:14px;
}

.service .box ul.link-box > li h3 em span{
	font-size:14px;
}

.service .box ul.link-box > li ul{
	padding:20px 0;
	flex-wrap:wrap;
}

.service .box ul.link-box > li ul li{
	padding:0 30px;
	height:32px;
	line-height:30px;
	margin:0 10px 10px 0;
}

.m-btn a{
	font-size:16px;
    display: block;
	text-align:center;
	background:url(../img/common/sp/m-arrow-w.png) no-repeat 95% center #000000;
	background-size:15px;
}
	
.m-btn a:hover {
	background:url(../img/common/sp/link-arrow.png) no-repeat 95% center #fff;
	background-size:15px;
}
	
.m-btn a span {
    padding: 0;
    background:none;
}
	
.m-btn a:hover span {
    background:none;
}
	
.link-btn a {
    background: url(../img/common/sp/link-arrow.png) no-repeat right center;
	background-size:13px;
}

.home-news{
	padding:60px 20px;
	overflow:hidden
}

.home-news .box h2{
	padding:0 0 30px 0;
}

.news-list{
	display:block;
}

.news-list:after{
	display:none;
}

.news-list > li{
	width:100%;
	margin:0 0 30px 0;
	display:block;
}


.news-list > li .cate .tit{
	padding:3px 15px;
	font-size:13px;
}

.news-list > li .cate .day{
	padding:0 0 0 15px;
}

.news-list > li .img{
	margin:0 0 20px 0;
}

.news-list > li .txt{
	padding:15px 0 25px 0;
}

.home-news .m-btn{
	position:static;
}

.main-bg{
	background:url(../img/top/sp/main-bg01.jpg) no-repeat center center;
	background-size:cover;
	height:240px;
}

.main-bg02{
	background:url(../img/top/main-bg02.jpg) no-repeat center center;
	background-size:cover;
}

.reason{
	padding:60px 20px;
	overflow:hidden
}

.reason h2{
	text-align:left;
}

.reason .box-in01{
	padding:30px 0 0 0;
}

.reason .box-in01 li{
	display:block;
	padding:0 0 30px 0;
}

.reason .box-in01 li .img{
	min-width:inherit;
	width:100%;
}

.reason .box-in01 li .txt-box{
	margin:0;
	width:100%;
}

.reason .box-in01 li:nth-child(even) .txt-box{
	margin:0;
}

.reason .box-in01 li .txt-box .num{
	font-size:42px;
	margin:0 0 -10px 0;
}

.reason .box-in01 li .txt-box .num span{
	font-size:68px;
}

.reason .box-in01 li .txt-box h3{
	font-size:22px;
}

.reason .box-in01 li .txt-box .txt{
	line-height:2;
}

.reason .box-in02{
	margin:80px 0 0 0;
	padding:0 20px 40px 20px;
}

.reason .box-in02 ul{
	display:block;
	top:-40px;
}
	
.reason .box-in02 ul:after{
	display:none;
}

.reason .box-in02 ul li{
	width:100%;
	margin:0 0 30px 0;
}

.reason .box-in02 ul li .img{
	padding:0 0 10px 0;
	text-align: center;
}

.reason .client{
	padding:60px 0 0 0;
}

.reason .client ul{
	display:block;
	text-align:center;
}

.reason .client ul:after{
	display:none;
}

.reason .client ul li{
	width:100%;
	text-align:center;
}

.activities{
	padding:60px 20px;
	overflow:hidden
}

.activities .line{
	position:static;
	margin:0 -20px;
	padding:40px 0 0 0;
}

.activities .box{
	display:block;
	padding:0 0 30px 0;
	border-bottom:none;
}

.activities .box .txt-box{
	width:100%;
	min-width:inherit;
	padding:0 0 40px 0;
}

.activities .box .txt-box .m-btn{
	padding:30px 0 0 0;
}

.activities .box ul li{
	padding:0 0 30px 0;
}

.activities .box ul li .img{
	width:100%;
	min-width:inherit;
}

.activities .box ul li .img.coverimg:before{
    padding-top: 65%;
}

.activities .box ul li .tit-box h3{
	font-size:22px;
}

.about{
	padding:0 20px;
	overflow:hidden
}

.about .box-in{
	margin:60px 0 0 -20px;
	padding:50px 20px;
	display:block;
	border-radius:0 30px 30px 0;
}

.about .box-in h3{
	padding:3px 30px;
	border-radius:30px;
	left:20px;
	top:-15px;
	font-size:14px;
}

.about .box-in h4{
	font-size:24px;
}

.about .box-in .img{
	position:static;
	padding:20px 0 0 0;
}

.about .address{
	padding:60px 0 0 0;
}

.about .address dl{
	padding:20px 0;
	display:block;
}

.about .address dl dt{
	font-size:16px;
	width:100%;
	min-width:inherit;
	padding:0 0 10px 0;
}

.about .address dl dd{
	font-size:16px;
}

.about .address dl dd ul{
	font-size:16px;
}

.about .address dl dd ul li{
	margin:0 0 20px 0;
}

.about .address dl dd ul li:first-child{
	width:100%;
}

.about .address dl dd ul li:nth-child(2){
	width:100%;
}

.about .address dl dd ul li span{
	font-size:14px;
}

.slide-area{
	padding:160px 20px;
	overflow:hidden
}

.slide-area h2{
	font-size:24px;
	padding:0 0 30px 0;
}

.slide-area h2 span em{
	font-size:26px;
}

.slide-area .img{
	margin:0;
}

.slide-area ul li{
	color:#FFFFFF;
	font-size: 16.66vw;
	opacity:0.2;
	font-family: "Shippori Mincho", serif;
	padding:0 20px;
	flex-shrink: 0;
	white-space: nowrap;
}
}


/* CONTACT
-------------------------------------------------------------------*/
.contact{
	position:relative;
	z-index:2;
	background: linear-gradient( rgba(237,231,228,0.2) 0%,#EDE7E4 15%, #EDE7E4 50%, #EDE7E4 100%);
	box-shadow: 0 0 40px 40px rgba(237,231,228,0.2);
	padding:200px 20px 120px 20px;
}

.contact .box{
	display:flex;
}

.contact .box .txt-box{
	min-width:480px;
	width:480px;
}

.contact .box .txt-box .txt{
	padding:30px 0 0 0;
	line-height:2;
	font-family: "Zen Old Mincho", serif;
}

.contact .box .form-box{
	width:100%;
}

@media screen and (max-width: 800px) {
.contact{
	padding:160px 20px 60px 20px;
}

.contact .box{
	display:block;
}

.contact .box .txt-box{
	min-width:inherit;
	width:100%;
}

.contact .box .txt-box .txt{
	padding:20px 0 40px 0;
}
}

/* FORM
-------------------------------------------------------------------*/
.form dl{
	display:flex;
	padding:0 0 20px 0;
}

.form dl dt{
	padding:10px 0 0 0;
	min-width:170px;
	width:170px;
	box-sizing:border-box;
	font-family: "Zen Old Mincho", serif;
}

.form dl dt.hissu:after{
	content:"*";
	color:#CE8878;
}

.form dl.none dt{
	padding:0;
}

.form dl dd{
	width:100%;
}

.form input, .form textarea{
    width: 100%;
    font-size: 16px;
    line-height: 1.6;
    padding: 10px;
	background:#fff;
    box-sizing: border-box;
	font-family: "Noto Sans JP", sans-serif;
	border:1px solid #707070;
	border-radius:5px;
}

.form textarea{
	height:180px;
}

.form .wpcf7-radio {
    display: block;
    padding:0;
}

.form .wpcf7-radio>* {
    display:inline-block;
	margin:0;
}

.form .wpcf7-radio input[type="radio"] {
    display: none;
}

.form .wpcf7-radio .wpcf7-list-item-label {
    position: relative;
    padding-left: 30px;
    line-height: 1.5;
    cursor: pointer;
}

.form .wpcf7-list-item > label{
	display:inline-block;
	margin:0 0 0 30px;
	font-weight:500;
}

.form .wpcf7-list-item.first > label{
	margin:0;
}

.form .wpcf7-radio .wpcf7-list-item-label::before {
    content: "";
    position: absolute;
    width: 20px;
	height:20px;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    border-radius: 50%;
	background:#fff;
}

.form .wpcf7-radio .wpcf7-list-item-label::after {
    content: "";
    position: absolute;
    width: 10px;
	height:10px;
    top: 50%;
	left: 5px;
    transform: translateY(-50%);
    background: #041d2b;
    border-radius: 50%;
    opacity: 0;
    transition: .3s;
}

.form .wpcf7-radio input[type="radio"]:checked+.wpcf7-list-item-label::after {
    opacity: 1;
}

.wpcf7-response-output{
	max-width:700px;
	margin:30px auto 0 !important;
	text-align:center;
}

.check .wpcf7-list-item-label{
	position:relative;
	cursor:pointer;
}

.check input[type="checkbox"] {
    display: none
}

.check input[type="checkbox"]+span {
    display:inline-block;
    position: relative;
	padding:0 0 0 30px;
    font-size: 13px;
    line-height: 1.6;
    cursor: pointer;
}

.check input[type="checkbox"]+span::before {
    content: "";
    position: absolute;
    width: 20px;
    aspect-ratio: 1 / 1;
    top: 0;
    left: 0;
	border-radius:1px;
	border:1px solid #000000;
}

.check input[type="checkbox"]+span::after {
    content: "";
    position: absolute;
    width: 14px;
    aspect-ratio: 1 / 1;
    left: 3px;
	top:3px;
    background: url(../img/common/check.png) no-repeat center center;
    background-size: contain;
    opacity: 0;
    transition: .3s
}

.check input[type="checkbox"]:checked+span::after {
    opacity: 1
}

.wpcf7-list-item {
    display: block;
	margin:0;
}

.contact .check{
	padding:50px 0 50px 0;
	text-align:center;
}

.conbtn{
	text-align:center;
}

.conbtn > div{
	display:inline-block;
    position: relative;
}

.conbtn input[type=submit] {
	height: 45px;
    line-height: 43px;
    width: 230px;
    color: #fff;
    text-align: center;
    font-size: 16px;
    font-weight: 500;
    box-sizing: border-box;
    display: block;
    position: relative;
	font-family: "Zen Old Mincho", serif;
	border:1px solid #000000;
	background:#000000;
	cursor:pointer;
	border-radius:5px;
	transition: all 0.3s;
}

.conbtn input[type=submit]:hover {
    color: #000000;
	background:#fff;
}

.contact .privacy{
	margin:20px 0;
	padding:20px;
	border:1px solid #707070;
	border-radius:5px;
}

.contact .privacy h3{
	padding:0 0 10px 0;
	line-height:1.6
	font-weight:500;
	font-size:16px;
	text-align:center;
}

.contact .privacy p{
	font-size:13px;
	line-height:1.8;
	color:#5C5C5C;
}

.wpcf7-not-valid-tip {
    font-size: 12px;
	padding:5px 0 0 0;
}

@media screen and (max-width: 800px) {
.form dl{
	display:block;
}

.form dl dt{
	padding:0 0 5px 0;
	min-width:inherit;
	width:100%;
}
	
.form dl.none dt{
	padding:0 0 5px 0;
}

.form textarea{
	height:180px;
}

.contact .check{
	padding:20px 0 30px 0;
}

.conbtn > div {
    display: block;
}	
	
.conbtn input[type=submit] {
	width:100%;
}
}

/* THANKS/404
-------------------------------------------------------------------*/
.thanks_area{
	padding:160px 0;
	text-align:center;
}

.thanks_area h1{
	font-size:28px;
	line-height:1.6em;
	font-weight:700;
	padding:50px 0;
	width:720px;
	border-bottom:1px solid #121B3A;
	margin:0 auto;
	font-family: "Zen Old Mincho", serif;
}

.thanks_area .txt{
	line-height:2;
	padding:50px 0;
	font-weight:500;
	font-family: "Zen Old Mincho", serif;
}


@media screen and (max-width: 800px) {
.thanks_area{
	padding:100px 20px;
	text-align:left;
}

.thanks_area h1{
	font-size:20px;
	padding:30px 0;
	box-sizing:border-box;
	width:100%;
	text-align:center;
}

.thanks_area .txt{
	padding:30px 0 40px 0;
}

}

/* CMS-LIST
-------------------------------------------------------------------*/
#list-area{
	padding:170px 20px 100px 20px;
	position:relative;
}

#list-area .line{
	position:absolute;
	right:-30px;
	top:250px;
	z-index:-1;
}

#list-area .cate-link{
	padding:50px 0 0 0;
	display:flex;
}

#list-area .cate-link li{
	padding:0 10px 0 0;
}

#list-area .cate-link li a{
	display:block;
	height:30px;
	line-height:28px;
	border:1px solid #707070;
	background:#fff;
	text-align:center;
	font-family: "Zen Old Mincho", serif;
	font-size:13px;
	border-radius:5px;
	padding:0 20px;
}

#list-area .cate-link li a:hover,
#list-area .cate-link li.on a{
	background:#000000;
	color:#fff;
}

#list-area .news-list{
	padding:60px 0 0 0;
}

.en-link{
	padding:10px 0 0 0;
    display: flex;
    flex-wrap: wrap;
}

.en-link > li{
	padding:10px 20px 0 0;
	font-family: "Zen Old Mincho", serif;
}

.en-link > li a{
	color:#000000;
	font-size:13px;
}

.en-link > li a:before{
	content:"#";
}

.en-link > li:hover a,
.en-link > li.on a{
	color:#CE9487;
}

.post-type-archive-news .en-link,
.term-osirase .en-link{
	display:none;
}

.term-en01 .cate-link li:last-child a,.term-en02 .cate-link li:last-child a,.term-en03 .cate-link li:last-child a{
	background:#000 !important;
	color:#fff;
}

#breadcrumb{
	position:absolute;
	right:0;
	top:60px;
    z-index: 9;
}

#breadcrumb ul{
	display:flex;
	flex-wrap:wrap;
	font-size:13px;
	font-family: "Zen Old Mincho", serif;
}

#breadcrumb ul li:not(:first-child){
	padding:0 0 0 20px;
	position:relative;
}

#breadcrumb ul li:not(:first-child):after {
    content: ">";
    position: absolute;
    left: 5px;
    top: 0;
}

@media screen and (max-width: 800px) {
#list-area{
	padding:80px 20px 60px 20px;
	overflow:hidden;
}

#list-area .line{
	right:-30px;
	top:100px;
}

#list-area .cate-link{
	padding:30px 0 0 0;
}
	
#list-area .cate-link li a{
	font-size:12px;
}

#list-area .news-list{
	padding:40px 0 0 0;
}

.en-link > li{
	padding:10px 10px 0 0;
}

#breadcrumb{
	position:static;
	padding:0 0 40px 0;
}

#breadcrumb ul{
	font-size:12px;
}

#breadcrumb ul li:not(:first-child):after {
    left: 5px;
    top: 0;
}
}

/* CMS-DETAIL
-------------------------------------------------------------------*/
#detail-area{
	padding:170px 20px 100px 20px;
}

#detail-area .c-box{
	width:720px;
	margin:0 auto;
	order:2;
}

#detail-area .c-box .cate-box{
	display:flex;
	align-items:center;
	flex-wrap:wrap;
	font-family: "Zen Old Mincho", serif;
	padding:0 0 20px 0;
}

#detail-area .c-box .cate-box .cate > li{
    line-height: 1.6;
    padding: 3px 25px;
    background: #CE9487;
    font-size: 13px;
    font-weight: 500;
    color: #fff;
    border-radius: 25px;
	display:inline-block;
}

#detail-area .c-box .cate-box .cate > li:not(:first-child){
	margin:0 0 0 20px;
}

#detail-area .c-box .cate-box .sub {
	display:flex;
	align-items:center;
	flex-wrap:wrap;
}

#detail-area .c-box .cate-box .sub > li{
    font-size: 13px;
    color: #CE8878;
	margin:0 0 0 20px;
}

#detail-area .c-box .cate-box .sub > li:before{
	content:"#";
}

#detail-area h1{
	color:#2B251F;
	font-size:34px;
	line-height:1.6;
	font-weight:500;
	font-family: "Zen Old Mincho", serif;
}

#detail-area .day{
	font-family: "Shippori Mincho", serif;
	padding:20px 0 0 0;
}

#detail-area .img{
	padding:40px 0 0 0;
	line-height:0;
	text-align:center;
}

#detail-area .detail-box{
	padding:40px 0 0 0;
}

#detail-area .detail-box p{
	line-height:2;
	font-weight:400;
	padding:0 0 40px 0;
}

#detail-area .detail-box h2,
#detail-area .detail-box h3,
#detail-area .detail-box h4,
#detail-area .detail-box h5{
	font-size:24px;
	font-weight:600;
	line-height:1.6;
	padding:0 0 20px 0;
	color:#2B251F;
	font-family: "Zen Old Mincho", serif;
}

#detail-area .detail-box h3{
	font-size:20px;
}

#detail-area .detail-box h4{
	font-size:18px;
}

#detail-area .detail-box h5{
	font-size:16px;
}

#detail-area .detail-box p a{
	text-decoration:underline;
	color:#CE8878;
}

#detail-area .box{
	position:relative;
	display:flex;
}

#detail-area .box #breadcrumb{
	position:static;
	width:230px;
	padding:50px 0 0 40px;
	box-sizing:border-box;
	order:3;
}

#detail-area .box .bk-btn{
	width:230px;
	position: sticky;
	top:80px;
	height:100px;
	padding:50px 0 0 0;
}

#detail-area .box .bk-btn a{
	display:inline-block;
	padding:15px 0 15px 40px;
	font-family: "Zen Old Mincho", serif;
    background: url(../img/common/bk-arrow.png) no-repeat left center;
	font-size:14px;
}

@media screen and (max-width: 1200px) {
#detail-area{
	overflow:hidden;
}	
	
#detail-area .box{
	display:block;
}

#detail-area .box #breadcrumb{
	width: 100%;
	padding: 0 40px 60px 20px;
	margin: -60px 0 0 0;
}
	
#detail-area .box .bk-btn{
	width:100%;
	position:static;
	height:auto;
	padding:50px 0 0 0;
	text-align:center;
}
}

@media screen and (max-width: 800px) {
#detail-area{
	padding:80px 20px 60px 20px;
	overflow:hidden;
}
	
#detail-area .day {
    padding: 10px 0 0 0;
}

#detail-area .c-box{
	width:100%;
}

#detail-area .c-box .cate-box{
	display:block;
}

#detail-area .c-box .cate-box .cate > li:not(:first-child){
	margin:0 0 0 10px;
}

#detail-area .c-box .cate-box .sub > li{
	margin:10px 10px 0 0;
}

#detail-area h1{
	font-size:24px;
}

#detail-area .img{
	padding:30px 0 0 0;
}

#detail-area .detail-box{
	padding:30px 0 0 0;
}

#detail-area .detail-box p{
	padding:0 0 30px 0;
}

#detail-area .detail-box h2,
#detail-area .detail-box h3,
#detail-area .detail-box h4,
#detail-area .detail-box h5{
	font-size:20px;
}

#detail-area .detail-box h3{
	font-size:18px;
}

#detail-area .detail-box h4{
	font-size:16px;
}

#detail-area .detail-box h5{
	font-size:16px;
}

#detail-area .box{
}

#detail-area .box #breadcrumb{
	padding:50px 0 40px 0;
}

#detail-area .box .bk-btn{
	padding:40px 0 0 0;
}

#detail-area .box .bk-btn a{
    background: url(../img/common/sp/bk-arrow.png) no-repeat left center;
	background-size:29px;
}
	
}
/* WORKS
-------------------------------------------------------------------*/
#list-area .works-list{
	padding:60px 0 0 0;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

#list-area .works-list:after{
	content:"";
	width:31%;
}

#list-area .works-list > li{
	width:31%;
	margin:0 0 40px 0;
}

#list-area .works-list > li .youtube{
	padding:0 0 10px 0;
}

#list-area .works-list > li .youtube iframe{
	border-radius:10px;
}

.post-type-archive-works .list-box{
	position:relative;
}

.post-type-archive-works .list-box:after{
	content:"";
	height:100%;
	background:#E0CCC6;
	border-radius:30px 30px 0 0;
	position:absolute;
	left: -50px;
    right: -50px;
	top:120px;
	z-index:-1;
}

@media screen and (max-width: 800px) {
#list-area .works-list{
	padding:40px 0 0 0;
	display:block;
}

#list-area .works-list:after{
	display:none;
}

#list-area .works-list > li{
	width:100%;
	margin:0 0 30px 0;
}
	
.post-type-archive-works .list-box:after{
	display:none;
}
}

/* WORKS-DETAIL
-------------------------------------------------------------------*/
.single-works .youtube{
	padding:40px 0 0 0;
}

.single-works .youtube iframe{
	border-radius:10px;
}

.single-works .txt{
	padding:30px 0 0 0;
	line-height:2;
	font-weight:500;
}

@media screen and (max-width: 800px) {
.single-works .youtube{
	padding:30px 0 0 0;
}
}