@charset "utf-8";
@import url('common.css');
@import url('amime.css');
@import url('slick-theme.css');
@import url('slick.css');


/*＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
TOP PAGE
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊*/



/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
PCページレイアウト
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */


@media all and (min-width: 1025px) {


/* visu */


#visu{
	position: relative;
	vertical-align:middle;
	width:100%;
	height:100vh;
	margin:0 0 0 0;
	padding:0 0 0 0;
	text-align:center;
}


#visu div.txt{
	position: absolute;
	margin:0 0 0 0;
	padding:0 0 0 0;
	top: 55vh;
	left: 15vw;
	z-index:1000;
	text-align:left;
}

#visu div.txt h2{
	margin:2vw 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-47);
	font-weight:500;
	line-height:1.5;
	letter-spacing: 0;
	color:var(--color-WH);
}

#visu div.txt h2 span{
	display:block;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-32);
}

#visu p{
	margin:1.5vw 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-16);
	font-weight:400;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-WH);
}

#visu div.swiper{
	width:94%;
	height:100vh;
	margin:0 0 0 6%;
	padding:0 0 0 0;
}

.swiper-slide-active .swiper-slide__item,
.swiper-slide-duplicate-active .swiper-slide__item,
.swiper-slide-prev .swiper-slide__item {
  animation: zoomanime 8s linear 0s normal both;
}

@keyframes zoomanime {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}


.swiper-slide img {
  width: 100%;
  height: 100vh;
	object-fit: cover;
}


.Home-Firstview__scroll {
	margin:0 0 0 0;
	padding:0 0 0 0;
	align-items:center;
	color: #ccc;
	display: flex;
	gap: 20px;
	left: 3.8%;
	bottom:60px;
	mix-blend-mode: difference;
	position: absolute;
	transform: rotate(90deg) translate(-50%);
	transform-origin: 0 0;
	z-index: 10;
}

.Home-Firstview__scroll span.text{
	display:block;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-14);
	font-weight:400;
	line-height:2;
	letter-spacing: 1px;
}

.Home-Firstview__scroll:after {
    animation: scrollLine 2s var(--ease-outquart) both infinite;
    background: currentColor;
    content: "";
    display: block;
    flex: 0 0 auto;
    height: 1px;
    width: 100px;
}

:root {
    --ease-outquart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
}

@keyframes scrollLine {
0% {
    clip-path: inset(0 0 0 0);
}
50% {
    clip-path: inset(0 0 0 100%);
}
50.1% {
    clip-path: inset(0 100% 0 0);
}
100% {
    clip-path: inset(0 0 0 0);
}
}




/* setsuritsu */

#setsuritsu{
	position: relative;
	margin:110px auto 0 auto;
	padding:0 0 0 0;
	text-align:center;
}

#setsuritsu p{
	display:inline-block;
	margin:0 0 0 0;
	padding:15px 40px 18px 40px;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-22);
	font-weight:500;
	line-height:1;
	letter-spacing: 1px;
	text-align:center;
	border:1px solid var(--color-BLU);
}



/* greeting */

#greeting{
	position: relative;
	width:94%;
	max-width:1410px;
	margin:0 auto 0 auto;
	padding:80px 0 80px 0;
	display: flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}


#greeting div.titleBG{
	position: absolute;
	width:100%;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:8vw;
	font-weight:500;
	line-height:1;
	color:var(--color-Ged);
	text-align:center;
	z-index:-1;
}

#greeting p.en{
	width:calc(100% - 5vw);
	display:block;
	position: relative;
	margin:4vw 0 0 0;
	padding:0 0 0 5vw;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-BLU);
}

#greeting h2{
	width:calc(100% - 5vw);
	display:block;
	position: relative;
	margin:2vw 0 0 0;
	padding:0 0 0 5vw;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-25);
	font-weight:600;
	line-height:1.7;
	letter-spacing: 0;
}

#greeting div.txt{
	width:40vw;
	max-width:600px;
	margin:2vw 0 0 0;
	padding:0 0 0 5vw;
}

#greeting div.txt p{
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-16);
	font-weight:400;
	line-height:2;
	letter-spacing: 1px;
}


#greeting div.ph{
	width:40vw;
	max-width:650px;
	margin:2.5vw 0 0 0;
	padding:0 0 0 0;
}

#greeting div.ph img{
	width:100%;
}








/* profile */

#profile{
	position: relative;
	width:100%;
	margin:80px auto 0 auto;
	padding:80px 0 120px 0;
	background:var(--color-BGB1);
}

#profile:before{
	position: absolute;
	content:'　';
	width:1px;
	height:80px;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	top:-40px;
	left: 50%;
	transform: translate(-50%, 0);
	background:var(--color-BGB3);
}


#profile p.en{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-BLU);
	text-align:center;
}

#profile h2{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-30);
	font-weight:500;
	line-height:1.7;
	letter-spacing: -3px;
	text-align:center;
}

#profile div.block{
	position: relative;
	width:94%;
	max-width:1200px;
	margin:50px auto 0 auto;
	padding:0 0 0 0;
	display: flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}

#profile div.block div.jimusho{
	width:48%;
	max-width:570px;
	margin:0 0 0 0;
	padding:0 0 0 0;
}

#profile div.block div.phBG{
	width:100%;
	margin:0 0 0 0;
	padding:0 0 0 0;
	background:var(--color-BGB3);
	display: flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap;
}

#profile div.block div.phBG div.ph{
	width:230px;
	margin:0 0 0 0;
	padding:30px 0 0 0;
	font-size:0;
}

#profile div.block div.phBG div.ph img{
	width:100%;
}

#profile div.block div.phBG div.txt{
	margin:0 0 0 20px;
	padding:0 0 0 0;
}

#profile div.block div.phBG div.txt p{
	position: relative;
	margin:-0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-17);
	font-weight:500;
	line-height:1;
	color:var(--color-WH);
	border:none;
}

#profile div.block div.phBG div.txt h3{
	position: relative;
	margin:20px 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-30);
	font-weight:500;
	line-height:1;
	color:var(--color-WH);
	display: flex;
	align-items:center;
	flex-wrap:wrap;
	letter-spacing: 1px;
}

#profile div.block div.phBG div.txt h3 span{
	display:inline-block;
	position: relative;
	margin:0 0 0 0;
	padding:5px 20px 0 0;
	font-size:var(--font-18);
	font-weight:600;
	line-height:1.6;
	letter-spacing: 3px;
}

#profile div.block div.jimusho p{
	display:block;
	position: relative;
	margin:50px 0 30px 0;
	padding:0 0 30px 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	border-bottom:1px solid var(--color-Gcc);
}

#profile div.block div.jimusho dl{
	display:block;
	position: relative;
	margin:0 0 10px 0;
	padding:0 0 0 0;
	display: flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap;
}

#profile div.block div.jimusho dt{
	width:130px;
	margin:0 20px 0 0;
	padding:0 0 0 0;
	color:var(--color-WH);
	background:var(--color-BGB3);
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	text-align:center;
}

#profile div.block div.jimusho dd{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
}






/* bussiness */

#bussiness{
	position: relative;
	width:100%;
	margin:0 auto 0 auto;
	padding:80px 0 80px 0;
	background:var(--color-BGB2);
}

#bussiness:before{
	position: absolute;
	content:'　';
	width:1px;
	height:80px;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	top:-40px;
	left: 50%;
	transform: translate(-50%, 0);
	background:var(--color-WH);
}


#bussiness p.en{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-WH);
	text-align:center;
}

#bussiness h2{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-30);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 3px;
	text-align:center;
	color:var(--color-WH);
}

#bussiness div.block{
	position: relative;
	width:94%;
	max-width:1200px;
	margin:50px auto 0 auto;
	padding:0 0 0 0;
	display: flex;
	justify-content:center;
	align-items:stretch;
	flex-wrap:wrap;
}

#bussiness div.block div.list{
	width:calc(100% / 3);
	max-width:290px;
	margin:0 25px 50px 25px;
	padding:50px 30px;
	background:var(--color-WH);
	text-align:center;
}

#bussiness div.block div.list div.icon{
	width:100px;
	margin:0 auto 0 auto;
	padding:0 0;
}

#bussiness div.block div.list div.icon img{
	width:100%;
}

#bussiness div.block div.list h3{
	margin:0 0 0 0;
	padding:30px 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-22);
	font-weight:600;
	line-height:1.7;
}

#bussiness div.block div.list p{
	margin:0 0 0 0;
	padding:10px 0 0 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
}



#bussiness div.fig h3{
	margin:0 0 0 0;
	padding:60px 0 0 0;
	font-size:var(--font-26);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 1px;
	text-align:center;
	color:var(--color-WH);
}

#bussiness div.fig p{
	margin:0 0 0 0;
	padding:20px 0 0 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:2;
	letter-spacing: 1px;
	text-align:center;
	color:var(--color-WH);
}

#bussiness div.fig div.icon{
	width:750px;
	margin:0 auto 0 auto;
	padding:30px 0 0 0;
	text-align:center;
}

#bussiness div.fig div.icon img{
	width:100%;
}






/* price */

#price{
	position: relative;
	width:94%;
	max-width:1340px;
	margin:0 auto 0 auto;
	padding:80px 0 80px 0;
}

#price h2{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-26);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 1px;
	text-align:center;
}

#price p{
	margin:0 0 0 0;
	padding:20px 0 0 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:2;
	letter-spacing: 1px;
	text-align:center;
}

#price div.block{
	position: relative;
	margin:50px auto 0 auto;
	padding:0 0 0 0;
	display: flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}

#price div.block div.list01{
	width:calc(100% / 8 * 3 - 30px);
	max-width:460px;
	margin:0 0 0 0;
	padding:0 0;
}

#price div.block div.list02{
	width:calc(100% / 8 * 2 - 30px);
	max-width:300px;
	margin:0 0 0 0;
	padding:0 0;
}

#price div.block div.list h3{
	margin:0 0 0 0;
	padding:0 0 10px 0;
	font-size:var(--font-18);
	font-weight:700;
	line-height:1.7;
	border-bottom:2px solid var(--color-BL);
}

#price div.block div.list h4{
	margin:0 0 0 0;
	padding:10px 0 0 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
}

#price div.block div.list01 p{
	margin:0 0 0 0;
	padding:10px 0 10px 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
	border-bottom:1px solid var(--color-BL);
}

#price div.block div.list02 p{
	margin:0 0 0 0;
	padding:5px 0 10px 0;
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
	border-bottom:1px solid var(--color-BL);
}

#price div.block div.list table{
	width:100%;
	margin:0;
	padding:0;
	border-collapse: separate;
	border-collapse: collapse;
}

#price div.block div.list table th{
	margin:0;
	padding:5px 10px 5px 20px;
	border-bottom:1px solid var(--color-BL);
	background:var(--color-BGB1);
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.7;
	text-align: left;
}

#price div.block div.list table td{
	margin:0;
	padding:5px 10px 5px 20px;
	border-bottom:1px solid var(--color-BL);
	border-left:1px solid var(--color-Gcc);
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.7;
	text-align: left;
}

#price div.block div.list table td:last-child{
	margin:0;
	padding:5px 10px 5px 0;
	border-bottom:1px solid var(--color-BL);
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.7;
	text-align: right;
}






/* hakkan */

#hakkan{
	position: relative;
	width:94%;
	max-width:1340px;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	display: flex;
	justify-content:flex-start;
	align-items:stretch;
	flex-wrap:nowrap;
	border:1px solid var(--color-BL);
}

#hakkan div.title{
	width:30%;
	max-width:340px;
	margin:0 0 0 0;
	padding:50px 0 0 0;
	background:var(--color-Ged);
	border-right:1px solid var(--color-BL);
	text-align:center;
}

#hakkan div.title h2{
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-20);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 1px;
	text-align:center;
	color: #335BB8;
}

#hakkan div.title h3{
	width:80%;
	max-width:260px;
	display:block;
	position: relative;
	margin:20px auto 0 auto;
	padding:0 0 0 0;
	text-align:center;
}

#hakkan div.title h3 img{
	width:100%;
}

#hakkan div.title p{
	margin:0 0 0 0;
	padding:20px 0 0 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:1.8;
	letter-spacing: 1px;
	text-align:center;
}

#hakkan ul.block{
	width:70%;
	max-width:calc(1000px - 4vw);
	margin:0 0 0 0;
	padding:0 2vw 0 2vw;
	display: flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap;
	list-style-type:none;
}

#hakkan ul.block li{
	width:calc(100% / 5 - 30px);
	margin:0 0 0 0;
	padding:50px 15px 30px 15px;
	text-align:center;
}

#hakkan ul.block li div.ph{
	width:100%;
	margin:0 0 0 0;
	padding:0 0 0 0;
}

#hakkan ul.block li div.ph img{
	width:100%;
	border:1px solid var(--color-BL);
}

#hakkan ul.block li p{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:1.7;
	letter-spacing: 1px;
}









/* company */

#company{
	position: relative;
	width:100%;
	margin:150px auto 0 auto;
	padding:80px 0 120px 0;
	background:var(--color-BGB1);
}

#company:before{
	position: absolute;
	content:'　';
	width:1px;
	height:80px;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	top:-40px;
	left: 50%;
	transform: translate(-50%, 0);
	background:var(--color-BGB3);
}


#company p.en{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-BLU);
	text-align:center;
}

#company h2{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-30);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 3px;
	text-align:center;
}

#company div.block{
	position: relative;
	width:94%;
	max-width:1200px;
	margin:50px auto 0 auto;
	padding:0 0 0 0;
	display: flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}

#company div.block div.jimusho{
	width:48%;
	max-width:570px;
	margin:0 0 0 0;
	padding:0 0 0 0;
}

#company div.block div.title{
	margin:0 0 0 0;
	padding:0 0 0 0;
}

#company div.block div.title h3{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-18);
	font-weight:600;
	line-height:1.7;
	letter-spacing: 1px;
}

#company div.block div.title p{
	margin:0 0 0 0;
	padding:0 0 10px 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
	border-bottom:1px solid var(--color-BL);
}

#company div.block table{
	width:100%;
	margin:0;
	padding:0;
	border-collapse: separate;
	border-collapse: collapse;
}

#company div.block table th{
	margin:0;
	padding:7px 0 7px 0;
	border-bottom:1px solid var(--color-Gcc);
	background:var(--color-BGB1);
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.7;
	text-align: left;
}

#company div.block table td{
	margin:0;
	padding:7px 0 7px 0;
	border-bottom:1px solid var(--color-Gcc);
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.7;
	text-align: left;
}

#company div.block div.map{
	margin:50px 0 0 0;
	padding:0;
}

#company div.block iframe{
	width:100%;
	margin:0;
	padding:0;
}





}













/* ＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊
SPページレイアウト
＊＊＊＊＊＊＊＊＊＊＊＊＊＊＊ */

@media all and (max-width: 1024px) {



/* visu */


#visu{
	position:relative;
	vertical-align:middle;
	width:100%;
	height:100vh;
	margin:0 0 0 0;
	padding:0 0 0 0;
	text-align:center;
}


#visu div.txt{
	position: absolute;
	margin:0 0 0 0;
	padding:0 0 0 0;
	top: 60vh;
	left: 7vw;
	z-index:1000;
	text-align:left;
}

#visu div.txt h2{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-28);
	font-weight:500;
	line-height:1.5;
	letter-spacing: 0;
	color:var(--color-WH);
}

#visu div.txt h2 span{
	display:block;
	margin:2vw 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-18);
}

#visu p{
	margin:4vw 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.8;
	letter-spacing: 1px;
	color:var(--color-WH);
}

#visu div.swiper{
	width:100%;
	height:100vh;
	margin:0 0 0 0;
	padding:0 0 0 0;
}


.swiper-slide-active .swiper-slide__item,
.swiper-slide-duplicate-active .swiper-slide__item,
.swiper-slide-prev .swiper-slide__item {
  animation: zoomanime 8s linear 0s normal both;
}

@keyframes zoomanime {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.1);
  }
}
.swiper-slide img {
  width: 100%;
  height: 100vh;
	object-fit: cover;
}


.Home-Firstview__scroll {
	margin:0 0 0 0;
	padding:0 0 0 0;
	align-items:center;
	color: #ccc;
	display: flex;
	gap: 20px;
	left: 93%;
	bottom:10px;
	mix-blend-mode: difference;
	position: absolute;
	transform: rotate(90deg) translate(-50%);
	transform-origin: 0 0;
	z-index: 10;
}

.Home-Firstview__scroll span.text{
	display:block;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-14);
	font-weight:400;
	line-height:2;
	letter-spacing: 1px;
}

.Home-Firstview__scroll:after {
    animation: scrollLine 2s var(--ease-outquart) both infinite;
    background: currentColor;
    content: "";
    display: block;
    flex: 0 0 auto;
    height: 1px;
    width: 50px;
}

:root {
    --ease-outquart: cubic-bezier(0.165, 0.840, 0.440, 1.000);
}

@keyframes scrollLine {
0% {
    clip-path: inset(0 0 0 0);
}
50% {
    clip-path: inset(0 0 0 100%);
}
50.1% {
    clip-path: inset(0 100% 0 0);
}
100% {
    clip-path: inset(0 0 0 0);
}
}



/* setsuritsu */

#setsuritsu{
	position: relative;
	margin:70px auto 0 auto;
	padding:0 0 0 0;
	text-align:center;
}

#setsuritsu p{
	display:inline-block;
	margin:0 0 0 0;
	padding:15px 40px 18px 40px;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-16);
	font-weight:500;
	line-height:1.5;
	letter-spacing: 1px;
	text-align:center;
	border:1px solid var(--color-BLU);
}



/* greeting */

#greeting{
	position: relative;
	width:90%;
	margin:0 auto 0 auto;
	padding:50px 0 50px 0;
	display: flex;
	justify-content:space-between;
	align-items:stretch;
	flex-wrap:wrap;
}


#greeting div.titleBG{
	position: absolute;
	width:100%;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:16vw;
	font-weight:500;
	line-height:1;
	color:var(--color-Ged);
	text-align:center;
	z-index:-1;
}

#greeting p.en{
	width:100%;
	display:block;
	position: relative;
	margin:6vw 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-BLU);
}

#greeting h2{
	width:100%;
	display:block;
	position: relative;
	margin:2vw 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-24);
	font-weight:600;
	line-height:1.7;
	letter-spacing: 0;
}

#greeting div.txt{
	width:100%;
	margin:3vw 0 0 0;
	padding:0 0 0 0;
}

#greeting div.txt p{
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-16);
	font-weight:400;
	line-height:1.8;
	letter-spacing: 1px;
}


#greeting div.ph{
	width:100%;
	margin:5vw 0 0 0;
	padding:0 0 0 0;
}

#greeting div.ph img{
	width:100%;
}








/* profile */

#profile{
	position: relative;
	width:100%;
	margin:50px auto 0 auto;
	padding:50px 0 80px 0;
	background:var(--color-BGB1);
}

#profile:before{
	position: absolute;
	content:'　';
	width:1px;
	height:60px;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	top:-30px;
	left: 50%;
	transform: translate(-50%, 0);
	background:var(--color-BGB3);
}


#profile p.en{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-BLU);
	text-align:center;
}

#profile h2{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-30);
	font-weight:500;
	line-height:1.7;
	letter-spacing: -3px;
	text-align:center;
}

#profile div.block{
	position: relative;
	width:90%;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
}

#profile div.block div.jimusho{
	width:100%;
	margin:50px 0 0 0;
	padding:0 0 20px 0;
}

#profile div.block div.phBG{
	width:100%;
	margin:0 0 0 0;
	padding:0 0 0 0;
	background:var(--color-BGB3);
	display: flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap;
}

#profile div.block div.phBG div.ph{
	width:40%;
	margin:0 0 0 0;
	padding:30px 0 0 0;
	font-size:0;
}

#profile div.block div.phBG div.ph img{
	width:100%;
}

#profile div.block div.phBG div.txt{
	width:calc(60% - 10px);
	margin:0 0 0 10px;
	padding:0 0 0 0;
}

#profile div.block div.phBG div.txt p{
	position: relative;
	margin:-0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-13);
	font-weight:500;
	line-height:1;
	color:var(--color-WH);
	border:none;
}

#profile div.block div.phBG div.txt h3{
	position: relative;
	margin:20px 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-24);
	font-weight:500;
	line-height:1;
	color:var(--color-WH);
	display: flex;
	align-items:center;
	flex-wrap:wrap;
	letter-spacing: 1px;
}

#profile div.block div.phBG div.txt h3 span{
	display:inline-block;
	position: relative;
	margin:0 0 0 0;
	padding:5px 20px 0 0;
	font-size:var(--font-15);
	font-weight:600;
	line-height:1.6;
	letter-spacing: 3px;
}

#profile div.block div.jimusho p{
	display:block;
	position: relative;
	margin:30px 0 20px 0;
	padding:0 0 20px 0;
	font-size:var(--font-14);
	font-weight:500;
	line-height:1.8;
	letter-spacing: 1px;
	border-bottom:1px solid var(--color-Gcc);
}

#profile div.block div.jimusho dl{
	display:block;
	position: relative;
	margin:0 0 10px 0;
	padding:0 0 0 0;
	display: flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap;
}

#profile div.block div.jimusho dt{
	width:35%;
	max-width:130px;
	margin:0 20px 0 0;
	padding:0 0 0 0;
	color:var(--color-WH);
	background:var(--color-BGB3);
	font-size:var(--font-14);
	font-weight:500;
	line-height:1.8;
	letter-spacing: 1px;
	text-align:center;
}

#profile div.block div.jimusho dd{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-14);
	font-weight:500;
	line-height:1.8;
	letter-spacing: 1px;
}






/* bussiness */

#bussiness{
	position: relative;
	width:100%;
	margin:0 auto 0 auto;
	padding:80px 0 80px 0;
	background:var(--color-BGB2);
}

#bussiness:before{
	position: absolute;
	content:'　';
	width:1px;
	height:60px;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	top:-30px;
	left: 50%;
	transform: translate(-50%, 0);
	background:var(--color-WH);
}


#bussiness p.en{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-WH);
	text-align:center;
}

#bussiness h2{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-30);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 3px;
	text-align:center;
	color:var(--color-WH);
}

#bussiness div.block{
	position: relative;
	width:90%;
	margin:30px auto 0 auto;
	padding:0 0 0 0;
}

#bussiness div.block div.list{
	width:calc(100%  - 40px);
	margin:0 0 10px 0;
	padding:30px 20px;
	background:var(--color-WH);
	display: flex;
	justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
}

#bussiness div.block div.list div.icon{
	width:25%;
	margin:0 0 0 0;
	padding:0 0;
	text-align:center;
}

#bussiness div.block div.list div.icon img{
	width:100%;
}

#bussiness div.block div.list div.txt{
	width:65%;
	margin:0 0 0 0;
	padding:0 0;
}

#bussiness div.block div.list h3{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-22);
	font-weight:600;
	line-height:1.7;
}

#bussiness div.block div.list p{
	margin:0 0 0 0;
	padding:5px 0 0 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
}



#bussiness div.fig{
	position: relative;
	width:90%;
	margin:50px auto 0 auto;
	padding:0 0 0 0;
}

#bussiness div.fig h3{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-20);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 1px;
	text-align:center;
	color:var(--color-WH);
}

#bussiness div.fig p{
	margin:0 0 0 0;
	padding:15px 0 0 0;
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.8;
	letter-spacing: 1px;
	text-align:center;
	color:var(--color-WH);
}

#bussiness div.fig div.icon{
	width:100%;
	margin:0 auto 0 auto;
	padding:30px 0 0 0;
	text-align:center;
}

#bussiness div.fig div.icon img{
	width:100%;
}






/* price */

#price{
	position: relative;
	width:90%;
	margin:0 auto 0 auto;
	padding:60px 0 60px 0;
}

#price h2{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-20);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 1px;
	text-align:center;
}

#price p{
	margin:0 0 0 0;
	padding:20px 0 0 0;
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.8;
	letter-spacing: 1px;
	text-align:center;
}

#price div.block{
	position: relative;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
}

#price div.block div.list01{
	width:100%;
	margin:50px 0 0 0;
	padding:0 0;
}

#price div.block div.list02{
	width:100%;
	margin:50px 0 0 0;
	padding:0 0;
}

#price div.block div.list h3{
	margin:0 0 0 0;
	padding:0 0 10px 0;
	font-size:var(--font-16);
	font-weight:700;
	line-height:1.7;
	border-bottom:2px solid var(--color-BL);
}

#price div.block div.list h4{
	margin:0 0 0 0;
	padding:10px 0 0 0;
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
}

#price div.block div.list01 p{
	margin:0 0 0 0;
	padding:10px 0 10px 0;
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
	border-bottom:1px solid var(--color-BL);
}

#price div.block div.list02 p{
	margin:0 0 0 0;
	padding:5px 0 10px 0;
	font-size:var(--font-12);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
	border-bottom:1px solid var(--color-BL);
}

#price div.block div.list table{
	width:100%;
	margin:0;
	padding:0;
	border-collapse: separate;
	border-collapse: collapse;
}

#price div.block div.list table th{
	margin:0;
	padding:5px 10px 5px 10px;
	border-bottom:1px solid var(--color-BL);
	background:var(--color-BGB1);
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.7;
	text-align: left;
}

#price div.block div.list table td{
	margin:0;
	padding:5px 10px 5px 10px;
	border-bottom:1px solid var(--color-BL);
	border-left:1px solid var(--color-Gcc);
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.7;
	text-align: left;
}

#price div.block div.list table td:last-child{
	margin:0;
	padding:5px 0 5px 0;
	border-bottom:1px solid var(--color-BL);
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.7;
	text-align: right;
}






/* hakkan */

#hakkan{
	position: relative;
	width:90%;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	border:1px solid var(--color-Gcc);
}

#hakkan div.title{
	width:100%;
	margin:0 0 0 0;
	padding:30px 0 30px 0;
	background:var(--color-Ged);
	border-bottom:1px solid var(--color-Gcc);
	text-align:center;
}

#hakkan div.title h2{
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-16);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 1px;
	text-align:center;
	color: #335BB8;
}

#hakkan div.title h3{
	width:80%;
	max-width:260px;
	display:block;
	position: relative;
	margin:10px auto 0 auto;
	padding:0 0 0 0;
	text-align:center;
}

#hakkan div.title h3 img{
	width:100%;
}

#hakkan div.title p{
	width:80%;
	margin:10px auto 0 auto;
	padding:0 0 0 0;
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.8;
	letter-spacing: 1px;
	text-align:center;
}

#hakkan ul.block{
	width:calc(100% - 4vw);
	margin:0 0 0 0;
	padding:0 2vw 0 2vw;
	display: flex;
	justify-content:flex-start;
	align-items:center;
	flex-wrap:wrap;
	list-style-type:none;
}

#hakkan ul.block li{
	width:calc(100% / 3 - 4vw);
	margin:0 0 0 0;
	padding:30px 2vw 20px 2vw;
	text-align:center;
}

#hakkan ul.block li:nth-child(n+4){
	display:none;
}

#hakkan ul.block li div.ph{
	width:100%;
	margin:0 0 0 0;
	padding:0 0 0 0;
}

#hakkan ul.block li div.ph img{
	width:100%;
	border:1px solid var(--color-BL);
}

#hakkan ul.block li p{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-13);
	font-weight:400;
	line-height:1.7;
	letter-spacing: 1px;
}









/* company */

#company{
	position: relative;
	width:100%;
	margin:80px auto 0 auto;
	padding:60px 0 80px 0;
	background:var(--color-BGB1);
}

#company:before{
	position: absolute;
	content:'　';
	width:1px;
	height:60px;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
	top:-30px;
	left: 50%;
	transform: translate(-50%, 0);
	background:var(--color-BGB3);
}


#company p.en{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-15);
	font-weight:500;
	line-height:2;
	letter-spacing: 1px;
	color:var(--color-BLU);
	text-align:center;
}

#company h2{
	width:100%;
	display:block;
	position: relative;
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-family: "Zen Old Mincho", sans-serif;
	font-size:var(--font-30);
	font-weight:500;
	line-height:1.7;
	letter-spacing: 3px;
	text-align:center;
}

#company div.block{
	position: relative;
	width:90%;
	margin:0 auto 0 auto;
	padding:0 0 0 0;
}

#company div.block div.jimusho{
	width:100%;
	margin:50px 0 0 0;
	padding:0 0 20px 0;
}

#company div.block div.title{
	margin:0 0 0 0;
	padding:0 0 0 0;
}

#company div.block div.title h3{
	margin:0 0 0 0;
	padding:0 0 0 0;
	font-size:var(--font-18);
	font-weight:600;
	line-height:1.7;
	letter-spacing: 1px;
}

#company div.block div.title p{
	margin:0 0 0 0;
	padding:0 0 10px 0;
	font-size:var(--font-15);
	font-weight:400;
	line-height:1.7;
	text-align: left;
	letter-spacing: 1px;
	border-bottom:1px solid var(--color-BL);
}

#company div.block table{
	width:100%;
	margin:0;
	padding:0;
	border-collapse: separate;
	border-collapse: collapse;
}

#company div.block table th{
	width:30%;
	max-width:200px;
	margin:0;
	padding:5px 0 5px 0;
	border-bottom:1px solid var(--color-Gcc);
	background:var(--color-BGB1);
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.7;
	text-align: left;
}

#company div.block table td{
	margin:0;
	padding:5px 0 5px 0;
	border-bottom:1px solid var(--color-Gcc);
	font-size:var(--font-14);
	font-weight:400;
	line-height:1.7;
	text-align: left;
}

#company div.block div.map{
	margin:30px 0 0 0;
	padding:0;
}

#company div.block iframe{
	width:100%;
	height:300px;
	margin:0;
	padding:0;
}


}