@charset "UTF-8";

/* top
---------------------------------------------------------------------------*/
.img-main {
	margin-bottom: 0;
}

#topContents {
	width: 100%;
	opacity: 0;
}


/* .loading
---------------------------------------------------------------------------*/
.loading {
	display: none !important;
	/*position: fixed;
	top: 0;
	right: 0;
	background-color: #FFFFFF;
	width: 100%;
	height: 100vh;
	z-index: 99999;*/
}

/*.loading .txt,
.loading .logo {
	position: absolute;
	z-index: 1;
}

.loading .txt {
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%) !important;
	width: 391px;
	margin-top: -60px;
	text-align: center;
}

.loading .txt-jp {
	margin-bottom: 33px;
	transform: scale(0.65) !important;
}

.loading .txt-jp > div {
	float: left;
	transform-origin: center bottom;
	opacity: 0;
}

.loading .txt1 { margin-right: 11px; }
.loading .txt2 { margin-right: 11px; }
.loading .txt3 { margin-right: 12px; }
.loading .txt4 { margin-right: 11px; }
.loading .txt5 { margin-right: 6px; }
.loading .txt6 { margin-right: 12px; }
.loading .txt7 { margin-right: 10px; }
.loading .txt8 { margin-right: 13px; }
.loading .txt9 { margin-right: 8px; }
.loading .txt10 { margin-right: 12px; }
.loading .txt11 { margin-right: 7px; }

.loading .txt-en {
	margin-top: -17px;
	transform: scale(0.85) !important;
	opacity: 0;
}

.loading .logo {
	bottom: 100px;
	left: 50%;
	width: 70px;
	margin-left: -35px;
	opacity: 0;
}

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

.loading .bar-wrap {
	position: absolute;
	top: 0;
	left: 0;
	background-color: #E7E4DA;
	width: 6px;
	height: 100%;
	z-index: 1;
}

.loading .bar {
	background-color: #FBB602;
	width: 100%;
	height: 0;
}

.loading .cover1,
.loading .cover2 {
	position: absolute;
	top: 0;
	right: 100%;
	width: 100%;
	height: 100%;
}

.loading .cover1 {
	background-color: #FBB602;
	z-index: 2;
}

.loading .cover2 {
	background-color: #FFE57A;
	z-index: 3;
}*/


/* .sec-lead
---------------------------------------------------------------------------*/
.sec-lead {
	position: relative;
	margin-bottom: 60px;
	padding: 55px 7% 0;
	text-align: center;
}

.sec-lead .mark,
.sec-lead .mark1,
.sec-lead .mark2,
.sec-lead .mark3 {
	display: block;
	position: absolute;
	height: auto;
}

.sec-lead .mark {
	top: -30px;
	left: 50%;
	width: 60px;
	margin-left: -30px;
	z-index: 10;
}

.sec-lead .mark1 {
	top: 84px;
	left: -14px;
	width: 56px;
	transform: rotate(-55deg);
}

.sec-lead .mark2 {
	top: 50px;
	right: -8px;
	width: 52px;
	transform: rotate(20deg);
}

.sec-lead .mark3 {
	bottom: -124px;
	right: 24px;
	width: 76px;
	transform: rotate(10deg);
}

.sec-lead h2 {
	margin-bottom: 20px;
	color: #42210A;
	font-size: 20px;
	line-height: 1.6;
	letter-spacing: 0.2em;
}

.sec-lead p {
	margin-bottom: 10px;
	text-align: center;
	line-height: 2;
	letter-spacing: 0.13em;
}

.sec-lead .btn-set {
	margin-top: 24px;
	text-align: center;
}

.sec-lead .btn-set div {
	display: inline-block;
	margin: 0 3px 12px;
}

.sec-lead .btn-set div a {
	display: block;
	font-size: 13px;
}


/* .partner
---------------------------------------------------------------------------*/
.partner {
	margin-bottom: 65px;
}


/* .sec-effort
---------------------------------------------------------------------------*/
.sec-effort {
	margin-bottom: 50px;
	padding: 0 7%;
}

.sec-effort h2 {
	margin-bottom: 30px;
}

.sec-effort li {
	position: relative;
	display: -webkit-box;
	display: flex;
	border-bottom: 1px solid #DFCAAA;
	margin-bottom: 26px;
	padding-bottom: 22px;
}

.sec-effort li:last-of-type {
	margin-bottom: 0;
}

.sec-effort li figure {
	width: 135px;
	min-width: 135px;
}

.sec-effort li figure img {
	width: 100%;
	height: auto;
}

.sec-effort li .txt-set {
	padding-left: 25px;
}

.sec-effort li h3 {
	margin-bottom: 7px;
	color: #42210A;
	font-size: 15px;
	line-height: 1.6;
	letter-spacing: 0.12em;
	white-space: nowrap;
}

.sec-effort li p {
	color: #897060;
	font-size: 12px;
	text-align: justify;
	line-height: 1.7;
	letter-spacing: 0.05em;
}

.sec-effort li .btn-link-brown {
/*
	position: absolute;
	bottom: 22px;
	left: 0;
*/
	margin-top: 20px;
	width: 155px;
}

.sec-effort li .btn-link-brown a {
	display: block;
	padding: 11px 18px 11px 19px;
	font-size: 12px;
	letter-spacing: 0.08em;
}


/* .sec-service
---------------------------------------------------------------------------*/
.sec-service {
	margin-bottom: 60px;
}

.service-lead-top {
	margin-bottom: 40px;
}


/* .sec-access
---------------------------------------------------------------------------*/
.sec-access {
	margin-bottom: 65px;
}


/* .sec-blog
---------------------------------------------------------------------------*/
.sec-blog {
	padding: 0 7%;
}

.sec-blog .blog-list article {
	display: none;
}

.sec-blog .blog-list article:nth-of-type(1),
.sec-blog .blog-list article:nth-of-type(2),
.sec-blog .blog-list article:nth-of-type(3),
.sec-blog .blog-list article:nth-of-type(4) {
	display: block;
}

.sec-blog .title-circle a {
	color: #765844;
}