﻿@charset "utf-8";
/*
Theme Name: NRS
Author: PRUNUS Inc.
Version: 1.0
*/

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,
form,fieldset,input,textarea,
th,td {margin:0;padding:0;}
table {border-collapse:collapse;border-spacing:0;}
fieldset,img {border:0;}
ul {list-style:none;}
caption,th {text-align:left;}
h1,h2,h3,h4,h5,h6 {font-size:100%;font-weight:normal;}
q:before,q:after {content:'';}
abbr,acronym {border:0;}
p{padding:0;margin:0;}

* {
	margin: 0;
	padding: 0;
	outline:none;
}
a:hover{
	filter:alpha(opacity=80);
	-moz-opacity:0.8;
	-khtml-opacity:0.8;
	opacity:0.8;
	-webkit-transition: all 0.2s;
	-moz-transition: all 0.2s;
	-ms-transition: all 0.2s;
	-o-transition: all 0.2s;
	transition: all 0.2s;
}
a,h1,h2, h3, h4, div, p, hr, blockquote, address, noscript {
	text-align: left;
	font-style: normal;
	font-size: 100%;
}
ul, ol, dl, dt, dd {
	list-style: none;
}
span, img {
	border: none;
}

em, strong {
	border: none;
	font-style: normal;
}

a {
	text-decoration: none;
}

a:hover {
	text-decoration: none;
}

hr.none{
	display:none;
}


*:hover {
	text-decoration:none;
}

html {
	width:100%;
	font-size:62.5%;
	scroll-behavior: smooth;
}
body {
	background:#fff;
	font-family: "Noto Sans JP", serif!important;
	color:#000;
	position:relative;
}



*{
	-moz-box-sizing: border-box;        /* Firefox */  
	-webkit-box-sizing: border-box;     /* Safari 3 */  
	-ms-box-sizing: border-box;         /* Internet Explorer 8 */  
	box-sizing: border-box;             /* Opera */ 
	text-decoration:none;
}

.clearfix:after{
	content: "";
	display: block;
	clear: both;
}

html,body {
	width:100%;
	height:100%;
	position:relative;
}

.no-scroll {
	overflow: hidden;
}

.heebo {
	font-family: 'Heebo', sans-serif;
}

.semib {
	font-weight:800;
}

.medium {
	font-weight:600;
}


@media (min-width: 479px) {

	body {
		text-align: center;
		background:#fff;
		background-position:top;
		line-height:1.8;
		color:#333;
		font-family: 'Noto Sans JP', sans-serif!important;
		width:100%;
		height:100%;
	}

/* 汎用 */
	.pcNone {
		display:none!important;
	}

	.contents1080 {
		width:100%;
		max-width:1120px;
		padding:0 20px;
		margin:0 auto;
	}

	.contents1280 {
		width:100%;
		max-width:1320px;
		padding:0 20px;
		margin:0 auto;
	}

/* header */

	header {
		width:100%;
		height:12rem;
		background:#fff;
		position:relative;
		display: flex;
		justify-content: flex-end;
		position:fixed;
		z-index: 30;
	}
	header .headlogo {
		width:39rem;
		height:auto;
        position: absolute;
        left: 12rem;
        top: 50%;
        text-align: center;
        transform: translate(0%, -50%);
	}
	header nav {
		padding-right:15.4rem;
		display: flex;
		gap:0 2vw;
		width:fit-content;
		height:12rem;
		align-items: center;
	}
	header nav ul.gmenu {
		display: flex;
		gap:0 1.5vw;
		width:fit-content;
		height:12rem;
		align-items: center;
	}
	header nav ul.gmenu li a {
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1; /* 100% */
		letter-spacing: 1.8px;
	}
	header nav .tel {
		width:fit-content;
		height:12rem;
		position: relative;
	}
	header nav .tel .number {
		height:12rem;
		line-height:12rem;
		color: var(--Main-Blue02, #005BB0);
		font-family: "Roboto Condensed";
		font-size: 5rem;
		font-style: normal;
		font-weight: 400;
		background:url(images/headtelicon.png) center left no-repeat;
		background-size:3.6rem;
		padding-left:4.6rem;
	}
	header nav .tel .sub {
		position: absolute;
		bottom:2rem;
		right:0.5rem;
		color: var(--Gray-02, #464646);
		font-size: 13px;
		font-style: normal;
		font-weight: 400;
		line-height: 16px; /* 123.077% */
	}

	header .btnblock {
		width:12rem;
		height:24rem;
		position: absolute;
		right:0;
		top:0;
	}
	header .btnblock .contact {
		display:block;
		width:12rem;
		height:12rem;
		background:#005BB0 url(images/headcontacticon.png) center center no-repeat;
		color: var(--White, #FFF);
		text-align: center;
		font-size: 1.4rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.2;
		padding-top:8rem;
	}
	header .btnblock .mitsumori {
		display:block;
		width:12rem;
		height:12rem;
		background:#00D9FF url(images/headmitsumoriicon.png) center center no-repeat;
		color: var(--White, #FFF);
		text-align: center;
		font-size: 1.4rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.2;
		padding-top:8rem;
	}

/* index */
	main {
		padding-top:12rem;
	}
	section.fv {
		width:calc(100% - 12rem);
		height:100vh;
		margin-left:12rem;
		position:fixed;
		z-index:-1;
		background:url(images/fvimg.jpg) top center no-repeat;
		background-size:cover;

	}
	section.top {
		width:100%;
		height:calc(100vh - 12rem);
		min-height:700px;
		position: relative;
		z-index: 10;
	}
	section.top .fvmessage {
        position: absolute;
        left: 24rem;
        top: 50%;
        transform: translate(0%, -50%);
	}
	section.top .fvmessage .main {
		color: var(--Gray-01, #181818);
		font-size: 4.4rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.7;
		letter-spacing: 4.403px;
		margin-bottom:3.3rem;
	}
	section.top .fvmessage .sub {
		color: var(--Gray-01, #181818);
		font-size: 2rem;
		font-style: normal;
		font-weight: 500;
		line-height: 2.4; /* 240% */
		letter-spacing: 2px;
		margin-bottom:4.9rem;
	}
	section.top .fvmessage a.bluebtn {
		display: block;
		width:44rem;
		height:10rem;
		background: linear-gradient(90deg, #1F73E1 0.04%, #38E4E4 99.7%, rgba(56, 228, 228, 0.00) 197.37%);
		color: var(--White, #FFF);
		text-align: center;
		font-size: 2.1rem;
		font-style: normal;
		font-weight: 700;
		line-height: 10rem;
		position:relative;
	}
	section.top .fvmessage a.bluebtn::after {
		content:"";
		width:3rem;
		height:3.6rem;
		position: absolute;
		background:url(images/bluebtnicon.png) center center no-repeat;
        right: 4rem;
        top: 50%;
        transform: translate(0%, -50%);
	}

	section.ourservice {
		width:100%;
		margin-top:-12rem;
		background: url(images/indexservicebg.png) top center repeat-x;
		background-size:100% 3000px;
		padding-bottom:8rem;
	}
	section.ourservice .content {
		width:100%;
		max-width:1500px;
		margin:0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
        padding-top: 22rem;
	}
	section.ourservice .left {
		width:55%;
		padding-left:13.7rem;
		padding-bottom:9rem;
	}
	section.ourservice .left .main {
		color: var(--White, #FFF);
		font-size: 4rem;
		font-style: normal;
		font-weight: 700;
		line-height: 1.8; /* 180% */
		margin-bottom:4.7rem;
	}
	section.ourservice .left .sub {
		color: var(--White, #FFF);
		font-size: 2rem;
		font-style: normal;
		font-weight: 500;
		line-height: 2.1; /* 210% */
	}
	section.ourservice .right {
		width:45%;
		padding-top:9.5rem;
		padding-bottom:9rem;
	}
	section.ourservice .right h2 {
		width:100%;
		text-align: right;
		color: var(--Main-Blue02, #005BB0);
		font-family: "Montserrat", sans-serif;
		font-size: 11.95rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1;
	}
	section.ourservice .center {
		width:100%;
		display: flex;
		justify-content: space-between;
		margin-bottom:7rem;
	}
	section.ourservice .center > div {
		display:block;
		width:calc(100% / 3);
		background:#fff;
	}
	section.ourservice .center > div img {
		width:100%;
		margin-bottom:3.5rem;
	}
	section.ourservice .center > div h3 {
		color: var(--Main-Blue02, #005BB0);
		font-size: 3.2rem;
		font-style: normal;
		font-weight: 700;
		line-height: 1;
		margin-bottom:3rem;
		padding:0 2rem;
	}
	section.ourservice .center > div p {
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 400;
		line-height:2.3; /* 233.333% */
		padding:0 2rem;
	}
	.moreblock {
		width:100%;
	}
	
	section.ourservice .moreblock {
		text-align: right;
	}
	.moreblock a.morebtn {
		display:inline-block;
		width:fit-content;
		height:6rem;
		color: var(--Gray-01, #181818);
		text-align: right;
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 400;
		line-height: 6rem;
		background:url(images/btnmoreicon.png) right center no-repeat;
		background-size:auto 100%;
		padding-right:7.5rem;
	}

	/* aboutus */
	section.index_aboutus {
		background:#fff;
		overflow: hidden;
		padding-bottom:8rem;
	}
	section.index_aboutus .content {
		background:url(images/index_aboutusbg.jpg) top center no-repeat;
		width:100%;
		margin:0 auto;
		padding-top:48rem;
	}
	section.index_aboutus .aboutblock {
		width:1080px;
		margin:0 auto;
		background:#fff;
		position:relative;
		padding:5.5rem 5rem;
	}
	section.index_aboutus .aboutblock::after {
		content:"";
		width:100vw;
		height:100%;
		position: absolute;
		left:100%;
		top:0;
		background:#fff;
	}
	section.index_aboutus .aboutblock h2 {
		color: var(--Main-Blue02, #14B5D1);
		font-family: Montserrat;
		font-size: 6rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1;
		margin-bottom:3.6rem;
	}
	section.index_aboutus .aboutblock .sub {
		color: var(--Gray-01, #181818);
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height:1.6; /* 161.538% */
		margin-bottom:5.9rem;
	}
	section.index_aboutus .aboutblock p {
		display: block;
		margin:0;
		padding:0;
		color: var(--Gray-01, #181818);
		font-size: 2rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2.1;
		margin-bottom:4.7rem;
	}
	section.index_aboutus .aboutblock .moreblock {
		text-align: right;
	}






	/* service */
	section.lower {
		width:100%;
		height:50rem;
		position: relative;
		overflow: hidden;
	}
	section.lower .title {
		width:1080px;
		background:#fff;
        position: absolute;
        left: 50%;
        bottom:0;
        transform: translate(-50%,0%);
		padding:5.5rem 5rem;
	}
	section.lower .title::after {
		content:"";
		width:100vw;
		height:100%;
		position: absolute;
		left:100%;
		top:0;
		background:#fff;
	}
	section.lower .title h1 .main {
		display: block;
		width:100%;
		color: var(--Main-Blue02, #14B5D1);
		font-family: Montserrat;
		font-size: 6.8rem;
		font-style: normal;
		font-weight: 200;
		line-height: 0.8;
		margin-bottom:3.6rem;
	}
	section.lower .title h1 .sub {
		display: block;
		width:100%;
		color: var(--Gray-01, #181818);
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height:1.6; /* 161.538% */
	}
	section.lower.company {
		background:#fff url(images/companytopbg.jpg) center center no-repeat;
	}
	section.aboutus {
		background:#fff;
		padding:14rem 0;
		width:100%;
		max-width:1920px;
	}
	section.aboutus .content {
		width:100%;
		display: flex;
		justify-content: flex-start;
	}
	section.aboutus .content .left {
		width:75%;
		max-width:96rem;
		margin-right:5rem;
	}
	section.aboutus .content .left img {
		width:100%;
	}
	section.aboutus .content .right{
		width:50%;
		max-width:59.5rem;
		padding-right:5rem;
	}
	section.aboutus .right h2 {
		color: var(--Main-Blue02, #14B5D1);
		font-family: Montserrat;
		font-size: 6.8rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1.75;
	}
	section.aboutus .right .sub {
		color: var(--Gray-01, #181818);
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.6; /* 161.538% */
		margin-bottom:3.5rem;
	}
	section.aboutus .right .text {
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2.3;
	}

	section.philosophy {
		width:100%;
		background:#fff;
		padding:0 8rem 18rem;
	}
	section.philosophy .content {
		width:100%;
		max-width:167rem;
		background:url(images/philosophybg.jpg) center center no-repeat;
		background-size:cover;
		padding:12rem;
		text-align: center;
	}
	section.philosophy h2 {
		color: var(--Main-Blue02, #14B5D1);
		text-align: center;
		font-family: Montserrat;
		font-size: 6.8rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1.75; /* 175.735% */
	}
	section.philosophy .sub {
		color: var(--White, #FFF);
		text-align: center;
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.6; /* 161.538% */
		margin-bottom:6rem;
	}
	section.philosophy .text {
		color: var(--White, #FFF);
		text-align: center;
		font-size: 2.2rem;
		font-style: normal;
		font-weight: 500;
		line-height: 2.3; /* 245.455% */
		letter-spacing: 2.2px;
	}

	section.profile {
		width:100%;
		background:#F8F8F8;
		padding:8.5rem 8rem;
	}
	section.profile .content {
		width:100%;
		max-width:1180px;
		margin:0 auto;

	}
	section.profile h2 {
		color: var(--Main-Blue02, #14B5D1);
		text-align: center;
		font-family: Montserrat;
		font-size: 6.8rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1.75; /* 175.735% */
	}
	section.profile .sub {
		color: var(--Gray-01, #181818);
		text-align: center;
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.6; /* 161.538% */
		margin-bottom:5rem;
	}
	.tablebg {
		background:#fff;
		width:100%;
		padding: 5rem;
	}
	.table01 {
		width:100%;
		border-top:1px solid #D1D1D1;
	}
	.table01 tr {
		border-bottom:1px solid #D1D1D1;
	}
	.table01 th {
		background:rgba(0,217,255,0.1);
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.7; /* 233.333% */
		padding:1.8rem;
		width:20rem;
	}
	.table01 td {
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.7; /* 233.333% */
		padding:1.8rem;
		width:calc(100% - 20rem);
	}

/* service */
	section.lower.cleaning {
		background:#fff url(images/cleaningservicebg.jpg) center center no-repeat;
	}
	section.cleaning {
		background:#fff;
		padding:14rem 0;
		width:100%;
		max-width:1920px;
	}
	section.about_service {
		background:#fff;
		width:100%;
	}
	section.about_service .content {
		padding:4rem 5rem 13rem;
		width:100%;
		max-width:1080px;
		margin:0 auto;
		background:#fff;
	}
	section.about_service h2 {
		color: var(--Main-Blue02, #005BB0);
		font-size: 4rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.9; /* 191.427% */
		letter-spacing: 4px;
		margin-bottom:3rem;
	}
	section.about_service .text {
		color: var(--Gray-01, #181818);
		font-size: 1.9rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2.3; /* 252.632% */
		letter-spacing: 1.9px;
	}
	section.servicelist {
		background:#fff;
		width:100%;
	}
	section.servicelist .content {
		padding:0rem 8rem 11rem;
		width:100%;
		max-width:calc(1680px + 16rem);
		margin:0 auto;
		background:#fff;
	}
	section.servicelist .content .titleblock {
		width:100%;
		max-width:1280px;
		margin:0 auto 6rem;
	}
	section.servicelist .content .titleblock h2 {
	}
	section.servicelist .content .titleblock h2 .main {
		width:100%;
		color: var(--Main-Blue02, #14B5D1);
		font-family: Montserrat;
		font-size: 6.8rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1.3; /* 175.735% */
	}
	section.servicelist .content .titleblock h2 .sub {
		width:100%;
		color: var(--Gray-01, #181818);
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.6; /* 161.538% */
	}
	section.servicelist .slist {
		width:100%;
		display: flex;
		flex-wrap: wrap;
		gap:4rem;
	}
	section.servicelist .slist > div {
		width:calc(50% - 2rem);
		position: relative;
	}
	section.servicelist .slist > div img {
		width:100%;
	}
	section.servicelist .slist > div > div {
		position:absolute;
		bottom:0;
		left:0;
		width:100%;
		padding:5rem;
	}
	section.servicelist .slist > div > div h3 {
		color: var(--Main-Blue02, #005BB0);
		font-size: 3.2rem;
		font-style: normal;
		font-weight: 700;
		line-height: 1.3x; /* 131.25% */
		margin-bottom:1.5rem;
	}
	section.servicelist .slist > div > div .text {
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2.3; /* 233.333% */
	}
	section.menu {
		width:100%;
		background:url(images/menubg.jpg) center center no-repeat;
		background-size:100% 100%;
	}
	section.menu .content {
		padding:13rem 8rem 13rem;
		width:100%;
		max-width:calc(1680px + 16rem);
		margin:0 auto;
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	section.menu .content .title {
		width:25%;
	}
	section.menu .content .title h2{

	}
	section.menu .content .title h2 .main {
		color: var(--White, #FFF);
		font-family: Montserrat;
		font-size: 6.8rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1.75; /* 175.735% */
		
	}
	section.menu .content .title h2 .sub {
		color: var(--White, #FFF);
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.6; /* 161.538% */
	}
	section.menu .content .menulist {
		width:75%;
		display: flex;
		flex-wrap: wrap;
	}
	section.menu .content .menulist > div {
		border:1px solid #fff;
		margin:-1px 0 0 -1px;
		width:calc((100% / 3) + 1px);
		padding:4rem;
		position: relative;
		display: flex;
		flex-flow: column;
		justify-content: flex-end;
		min-height:14rem;
	}
	section.menu .content .menulist > div.menu01 {
		background:rgba(20, 181, 209,0.3) url(images/menuicon01.png) right 1rem top 1rem no-repeat;
	}
	section.menu .content .menulist > div.menu02 {
		background:rgba(20, 181, 209,0.3) url(images/menuicon02.png) right 1rem top 1rem no-repeat;
	}
	section.menu .content .menulist > div.menu03 {
		background:rgba(20, 181, 209,0.3) url(images/menuicon03.png) right 1rem top 1rem no-repeat;
	}
	section.menu .content .menulist > div.menu04 {
		background:rgba(20, 181, 209,0.3) url(images/menuicon04.png) right 1rem top 1rem no-repeat;
	}
	section.menu .content .menulist > div.menu05 {
		background:rgba(20, 181, 209,0.3) url(images/menuicon05.png) right 1rem top 1rem no-repeat;
	}
	section.menu .content .menulist > div.menu06 {
		background:rgba(20, 181, 209,0.3) url(images/menuicon06.png) right 1rem top 1rem no-repeat;
	}
	section.menu .content .menulist > div.menu07 {
		background:rgba(20, 181, 209,0.3) url(images/menuicon07.png) right 1rem top 1rem no-repeat;
	}
	section.menu .content .menulist > div.menu08 {
		background:rgba(20, 181, 209,0.3) url(images/menuicon08.png) right 1rem top 1rem no-repeat;
	}
	section.menu .content .menulist > div h3 .sub {
		color: var(--White, #FFF);
		font-family: "Roboto Condensed";
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 700;
		line-height: 2; /* 200% */		
	}
	section.menu .content .menulist > div h3 .main {
		color: var(--White, #FFF);
		font-size: 2.2rem;
		font-style: normal;
		font-weight: 700;
		line-height: 1.3; /* 163.636% */
		margin-bottom:1rem;
	}
	section.menu .content .menulist > div .text {
		color: var(--White, #FFF);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 400;
		line-height: 1.77; /* 177.778% */
		display:none;
	}

	section.area {
		background:#fff;

	}
	section.area .content {
		padding:5rem 8rem 13rem;
		width:100%;
		max-width:calc(1180px + 16rem);
		margin:0 auto;
		display: flex;
		justify-content: space-between;
	}
	section.area .left {
		width:63%;
		padding-right:4rem;
	}
	section.area .left h2 {
		margin-bottom:3rem;
	}
	section.area .left .main {
		color: var(--Main-Blue02, #14B5D1);
		font-family: Montserrat;
		font-size: 6.8rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1.25; /* 175.735% */
	}
	section.area .left .sub {
		color: var(--Gray-01, #181818);
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.6; /* 161.538% */
	}

	section.area .arealist {
	}
	section.area .right {
		width:37%
	}
	section.area .right img {
		width:100%;
	}
	.arealist {
		border-top:1px solid #D1D1D1;
	}
	.arealist > div {
		border-bottom:1px solid #D1D1D1;
		padding:2.5rem 0;
		display: flex;
		justify-content: space-between;
	}
	.arealist > div > div:first-of-type {
		width:20%;
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.8; /* 188.235% */
	}
	.arealist > div > div:nth-of-type(2) {
		width:80%;
		color: var(--Gray-01, #181818);
		font-size: 1.7rem;
		font-style: normal;
		font-weight: 400;
		line-height: 1.8; /* 188.235% */
	}

	section.pricel {
		width:100%;
		background:#F8F8F8;
		padding:8.5rem 8rem;
	}
	section.pricel .content {
		width:100%;
		max-width:1180px;
		margin:0 auto;

	}
	section.pricel h2 {
		color: var(--Main-Blue02, #14B5D1);
		text-align: center;
		font-family: Montserrat;
		font-size: 6.8rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1.75; /* 175.735% */
	}
	section.pricel .sub {
		color: var(--Gray-01, #181818);
		text-align: center;
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.6; /* 161.538% */
		margin-bottom:5rem;
	}
	section.pricel .tablebg {
		background:#fff;
		width:100%;
		padding: 5rem 5rem 0;
	}
	.table02 {
		width:100%;
		border-top:1px solid #D1D1D1;
		table-layout: fixed;
		margin-bottom:5.5rem;
	}
	.table02 tr {
		border-bottom:1px solid #D1D1D1;
	}
	.table02 th {
		background:#005BB0;
		color: var(--White, #FFF);
		font-size: 1.9rem;
		font-style: normal;
		font-weight: 500;
		line-height: 2.2; /* 221.053% */
		padding:0.5rem 1.8rem;
		width:16rem;
		border-right:1px solid #D1D1D1;
	}
	.table02 td {
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 42px; /* 233.333% */
		padding:0.5rem 1.8rem;
		border-right:1px solid #D1D1D1;
	}
	.table02 th:last-child {
		border-right:0px solid #D1D1D1;
	}
	.table02 td:nth-child(2) {
		background:rgba(0,217,255,0.1);
	}
	.table02 td:last-child {
		border-right:0px solid #D1D1D1;
	}



/* recruit */
	section.lower.recruit {
		background:#fff url(images/recruittopbg.jpg) center center no-repeat;
	}
	section.recruit {
		background:#fff;
		padding:14rem 0;
		width:100%;
		max-width:1920px;
	}
	section.about_recruit {
		background:#fff;
		width:100%;
	}
	section.about_recruit .content {
		padding:2.7rem 5rem 13rem;
		width:100%;
		max-width:1080px;
		margin:0 auto;
		background:#fff;
	}
	section.about_recruit h2 {
		color: var(--Main-Blue02, #005BB0);
		font-size: 4rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.9; /* 191.427% */
		letter-spacing: 4px;
		margin-bottom:3rem;
		width:100%;
		text-align: center;
	}
	section.about_recruit .text {
		color: var(--Gray-01, #181818);
		font-size: 1.9rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2.3; /* 252.632% */
		letter-spacing: 1.9px;
		margin-bottom:10rem;
	}
	.recruitblock {
		width:100%;
	}
	.recruitblock h3 {
		background:#14B5D1;
		padding:2rem;
		color: var(--White, #FFF);
		font-size: 2.6rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1; /* 161.538% */
	}
	.recruitblock .list {
		margin-bottom:7.2rem;
	}
	.recruitblock .list > div {
		border-bottom:1px solid #D1D1D1;
		padding:1rem 2rem;
		display: flex;
		justify-content: space-between;
	}
	.recruitblock .list > div :first-of-type {
		width:16%;
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.8; /* 188.235% */
	}
	.recruitblock .list > div :nth-of-type(2) {
		width:84%;
		color: var(--Gray-01, #181818);
		font-size: 1.7rem;
		font-style: normal;
		font-weight: 400;
		line-height: 1.8; /* 188.235% */
	}

    a.recruitbtn {
        display: block;
        width: 100%;
		max-width:42rem;
        height: 10rem;
        background: linear-gradient(90deg, #1F73E1 0.04%, #38E4E4 99.7%, rgba(56, 228, 228, 0.00) 197.37%);
        color: var(--White, #FFF);
        text-align: center;
        font-size: 2.1rem;
        font-style: normal;
        font-weight: 700;
        line-height: 10rem;
        position: relative;
		margin:0 auto;
    }
	a.recruitbtn::after {
		content:"";
		width:3rem;
		height:3.6rem;
		position: absolute;
		background:url(images/bluebtnicon.png) center center no-repeat;
        right: 4rem;
        top: 50%;
        transform: translate(0%, -50%);
	}

/* contact */
	section.lower.contact {
		background:#fff url(images/requesttopbg.jpg) center center no-repeat;
	}
	section.contact {
		background:#fff;
		padding:14rem 0;
		width:100%;
		max-width:1920px;
	}
	section.about_contact {
		background:#fff;
		width:100%;
	}
	section.about_contact .content {
		padding:2.7rem 5rem 13rem;
		width:100%;
		max-width:1080px;
		margin:0 auto;
		background:#fff;
	}
	section.about_contact h2 {
		color: var(--Main-Blue02, #005BB0);
		font-size: 4rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.9; /* 191.427% */
		letter-spacing: 4px;
		margin-bottom:3rem;
		width:100%;
		text-align: center;
	}
	section.about_contact .text {
		color: var(--Gray-01, #181818);
		font-size: 1.9rem;
		font-style: normal;
		font-weight: 400;
		line-height: 2.3; /* 252.632% */
		letter-spacing: 1.9px;
		margin-bottom:3rem;
	}
	section.about_contact .top_contact {
		border:2px solid rgba(0,217,255,0.2);
		padding:3rem;
		display: flex;
		justify-content: space-between;
		width:100%;
		max-width:96rem;
		margin:0 auto;
	}
	section.about_contact .top_contact .title {
		width:30%;
		display: flex;
		justify-content: center;
		align-items: center;
		border-right:1px solid #005BB0;
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1; /* 233.333% */
	}
	section.about_contact .top_contact .right {
		width:70%;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-wrap: wrap;
	}
	section.about_contact .top_contact .right .number {
		color: var(--Main-Blue02, #005BB0);
		font-family: "Roboto Condensed";
		font-size: 7.16rem;
		font-style: normal;
		font-weight: 400;
		line-height: 1; /* 176% */
		background:url(images/headtelicon_big.png) center left no-repeat;
		background-size:5.2rem;
		padding-left:6.5rem;
	}
	section.about_contact .top_contact .right .sub {
        color: var(--Gray-02, #464646);
        font-size: 1.4rem;
        font-style: normal;
        font-weight: 400;
        line-height: 1.5;
        display: block;
        width: 100%;
        text-align: center;
	}


/* form */
	.form {
		width:100%;
		background:#F8F8F8;
		padding:8.5rem 8rem;
	}
	.form .content {
		width:100%;
		max-width:900px;
		margin:0 auto;

	}
	.form .content h2 {
		color: var(--Main-Blue02, #005BB0);
		text-align: center;
		font-size: 4rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.9;
		letter-spacing: 4px;
		margin-bottom:4rem;
	}
	.form .content .contactForm {
		width:100%;
		background:#fff;
		padding:6rem;
	}
	.contactForm .formBlock {
		width:100%;
		padding:1rem 0;
		font-size:1.7rem;
		font-weight:500;
		display:flex;
		justify-content: space-between;
	}

	.contactForm .formBlock.finish {
		margin-bottom:30px!important;
	}


	.contactForm .formBlock div.left {
		width:25rem;
		text-align:left;
		color: var(--Gray-01, #181818);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 1.5;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		position: relative;
		padding-right:1rem;
	}

	.required::after {
        content: "必須";
        color: #972C2C;
		width:4.6rem;
		height:2.8rem;
		border:1.5px solid #972C2C;
		font-size: 1.44rem;
		font-style: normal;
		font-weight: 400;
		line-height: 1;
		display: flex;
		justify-content: center;
		align-items: center;
		position: absolute;
        right: 2rem;
        top: 50%;
        text-align: center;
        transform: translate(0%, -50%);
		
}
	
	.contactForm .formBlock div.left span {
	}

	.contactForm .formBlock div.right {
		width:calc(100% - 24rem);
	}
	.contactForm .formBlock div.right input[type="text"], .contactForm .formBlock div.right input[type="email"], .contactForm .formBlock div.right input[type="url"], .contactForm .formBlock div.right select, .contactForm .formBlock div.right input[type="tel"] {
		height:6.4rem;
		outline:none;
		font-family: inherit;
		padding:0 15px;
		margin:5px 0;
		font-size:1.6rem;
		border: 1px solid var(--Gray-07, #E7E7E7);
		background: var(--Gray-09, #F8F8F8);
	}
	.contactForm .w100 {
		width:100%;
	}
	.contactForm .w50 {
		width:50%;
	}

	.contactForm .formBlock div.right textarea {
		width:100%;
		height:200px;
		font-size:1.6rem;
		border: 1px solid var(--Gray-07, #E7E7E7);
		background: var(--Gray-09, #F8F8F8);
		outline:none;
		font-family: inherit;
		padding:15px;
	}

	.wpcf7-form-control-wrap {
		display: block;
	}
	.wpcf7-form-control.wpcf7-radio{
	}
	span.wpcf7-list-item{
		margin-right:25px;
	}
	span.wpcf7-list-item.first {
		margin: 0 25px 0 0!important
	}

	.wpcf7-list-item-label{
		cursor: pointer;
		line-height:24px;
	}
	input[type="radio"]{
		position: absolute;
		opacity: 0;
	}
	input.kakunin {
        display: block;
        width: 36rem;
        height: 8rem;
        background: linear-gradient(90deg, #1F73E1 0.04%, #38E4E4 99.7%, rgba(56, 228, 228, 0.00) 197.37%);
        color: var(--White, #FFF);
        text-align: center;
        font-size: 2.1rem;
        font-style: normal;
        font-weight: 700;
        line-height: 8rem;
        position: relative;
		outline:none;
		border:none;
		cursor:pointer;
		margin:5rem auto 0;
	}
	input.kakunin::after {
		content:"";
		width:5rem;
		height:5rem;
		position: absolute;
		background:url(images/submiticon.png) center center no-repeat;
        right: 1.5rem;
        top: 50%;
        transform: translate(0%, -50%);
	}

	.contactForm h3 {
		color: var(--Main-Blue02, #005BB0);
		font-size: 2rem;
		font-weight: 500;
		margin-bottom: 1rem;
		padding-bottom: 1.5rem;
		border-bottom: 1px solid #d1d1d1;
	}
	.formBlock.noform {
		min-height:6rem;
	}
	.formBlock.fin {
		margin-bottom:10rem;
	}
	.formBlock.noform .right {
		display: flex;
		align-items: center;
	}


/* bottomcontact */
	.bottom_contact {
		background:#fff;
		width:100%;
	}
	.bottom_contact .content {
		padding:13rem 8rem 8rem;
		width:100%;
		max-width:calc(1680px + 16rem);
		margin:0 auto;
		background:#fff;
	}
	.bottom_contact .contactbox {
		width:100%;
		display: flex;

	}
	.bottom_contact .contactbox .left {
		width:calc(100% / 3);
		height:30rem;
		background:#005BB0;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-flow: column;
        padding: 0 2rem;
	}
	.bottom_contact .contactbox .left .main {
		color: var(--Main-Blue02, #14B5D1);
		font-family: Montserrat;
		font-size: 6rem;
		font-style: normal;
		font-weight: 200;
		line-height: 1;
	}
	.bottom_contact .contactbox .left .sub {
		color: var(--White, #FFF);
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 2.3;
	}
	.bottom_contact .contactbox .center {
		width:calc(100% / 3);
		background:#F8F8F8;
		padding:5rem 0rem;
		min-width: 50rem;
	}
	.bottom_contact .contactbox .center .data {
        width: 100%;
        height: 100%;
        padding: 0 2rem;
        border-right: 1px solid #005BB0;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-flow: column;
	}
	.bottom_contact .contactbox .data .title {
		color: var(--Gray-01, #181818);
		text-align: center;
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 500;
		line-height: 2.3;
	}
	.bottom_contact .contactbox .center .data .number {
		color: var(--Main-Blue02, #005BB0);
		font-family: "Roboto Condensed";
		font-size: 7.16rem;
		font-style: normal;
		font-weight: 400;
		line-height: 1; /* 176% */
		background:url(images/headtelicon_big.png) center left no-repeat;
		background-size:5.2rem;
		padding-left:6.5rem;
	}
	.bottom_contact .contactbox .center .data .sub {
		color: var(--Gray-02, #464646);
		font-size: 1.4rem;
		font-style: normal;
		font-weight: 400;
		line-height:1.8
	}
	.bottom_contact .contactbox .right {
		width:calc(100% / 3);
		background:#F8F8F8;
		padding:5rem 0rem;
	}
	.bottom_contact .contactbox .right .data {
		width:100%;
		height:100%;
		padding:0 2rem;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-flow: column;
	}
	.bottom_contact .contactbox .right a {
		display: block;
		width:100%;
		height:10rem;
		background: linear-gradient(90deg, #1F73E1 0.04%, #38E4E4 99.7%, rgba(56, 228, 228, 0.00) 197.37%);
		color: var(--White, #FFF);
		text-align: center;
		font-size: 2.1rem;
		font-style: normal;
		font-weight: 700;
		line-height: 10rem;
		position:relative;
	}
	.bottom_contact .contactbox .right a::after {
		content:"";
		width:3rem;
		height:3.6rem;
		position: absolute;
		background:url(images/bluebtnicon.png) center center no-repeat;
        right: 4rem;
        top: 50%;
        transform: translate(0%, -50%);
	}
	footer {
		width:100%;
		background:#fff;
	}
	footer .content {
		padding:0 8rem 0rem;
		width:100%;
		max-width:calc(1680px + 16rem);
		margin:0 auto;
		background:#fff;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	footer .content .left {
		width:40%;
		display: flex;


	}
	footer .content .left .logo {
		margin-right:3rem;
		width:13.3rem;
	}
	footer .content .left .adr img {
		margin-bottom:2rem;
	}
	footer .content .left .adr span {
		color: var(--Gray-01, #181818);
		font-size: 1.7rem;
		font-style: normal;
		font-weight: 400;
		line-height:1.8;
	}
	footer .right {
		width:60%;
	}
	footer .gmenu {
		display: flex;
		justify-content: flex-end;
	}
	footer .gmenu li a {
		display: block;
		color: var(--Gray-01, #181818);
		font-size: 1.7rem;
		font-style: normal;
		font-weight: 400;
		line-height: 1.1; /* 182.353% */
		padding:0rem 2.5rem;
		border-right:1px solid #888;
	}
	footer .gmenu li:last-child a {
		border-right:0px solid #888;
	}
	footer .copy {
        margin-top: 4.5rem;
		border-top:1px solid #D9D9D9;
		width:100%;
		text-align:center;
		padding:4.5rem;
		color: var(--Gray-01, #181818);
		font-family: Roboto;
		font-size: 1.8rem;
		font-style: normal;
		font-weight: 400;
		line-height: 31px; /* 172.222% */
	}

/* policy */

	.policytext {
	}
	.policytext h1 {
    font-size: 2.3rem;
    font-weight: 700;
    margin-bottom: 2rem;
	}
	.policytext h2 {
        color: #333 !important;
        font-size: 1.8rem !important;
        font-weight: 500 !important;
        line-height: 1.6 !important;
        letter-spacing: 0 !important;
        margin-bottom: 1.6rem !important;
        text-align: left !important;
	}
	.policytext p {
        font-size: 1.5rem;
        margin-bottom: 3.5rem;
        padding-left: 2rem;
	}
	.policytext ol {
        padding-left: 4rem;
        margin-bottom: 3rem;
	}
	.policytext ol li {
	}
.policytext *:first-child {
        margin-top: 1rem;
}
.policytext ol li {
        position: relative;
        list-style: outside decimal;
        padding: 0 0 0 0.5rem;
        font-size: 1.5rem;
}
.policytext ol li::marker {
        font-size: 1.6rem;
        font-weight: 500;
}

/* form */
	.policy {
        border: 2px solid rgba(0, 217, 255, 0.2);
        padding: 3rem;
		text-align:center;
		font-size:1.6rem;
		line-height:1.8;
		margin:30px 0;
	}
	.policy div p {
        text-align: center !important;
        font-size: 1.7rem;
	}
	.policy a {
		background-size:13px 13px;
		padding:0 15px 0 2px;
		-webkit-transition: all 0.2s;
		-moz-transition: all 0.2s;
		-ms-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
		text-decoration:underline;
	}









}









@media (max-width: 1550px) and (min-width:1281px) {
	html {
		font-size:56%;
	}
    header nav ul.gmenu {
        gap: 0 1vw;
    }
    header nav ul.gmenu li a {
        letter-spacing: 1px;
    }
    header .headlogo {
        width: 30rem;
    }
}
@media (max-width: 1280px) and (min-width:480px) {
	html {
		font-size:51%;
	}
    header nav ul.gmenu {
        gap: 0 2vw;
    }
    header nav ul.gmenu li a {
        letter-spacing: 1px;
    }
    header .headlogo {
        width: 30rem;
    }
}
@media (max-width: 1150px) and (min-width:480px) {
	header nav .tel {
		display: none;
	}




}



@media (max-width: 479px) {


	body {
		text-align: center;
		background:#fff;
		background-position:top;
		font-size:13px;
		line-height:1.8;
		color:#333;
		font-family: 'Noto Sans JP', sans-serif!important;
		width:100%;
		height:100%;
	}

/* 汎用 */
	.spNone {
		display:none!important;
	}


	





/* header */

header {
	width: 100%;
	height: 6rem;
	background: #fff;
	position: relative;
	display: flex;
	justify-content: flex-end;
	position: fixed;
	z-index: 10000;
}
header .headlogo {
	width: auto;
	height: 3.1rem;
	position: absolute;
	left: 2.5rem;
	top: 50%;
	text-align: center;
	transform: translate(0%, -50%);
}
header nav {
	display: none;
}

header .btnblock {
	width: 6rem;
	height: 12rem;
	position: absolute;
	right: 0;
	top: 6rem;
}
header .btnblock .contact {
	display: block;
	width: 6rem;
	height: 6rem;
	background: #005BB0 url(images/headcontacticon.png) center center no-repeat;
	background-size: 2.5rem auto;
	color: var(--White, #FFF);
	text-align: center;
	font-size: 0.9rem;
	font-style: normal;
	font-weight: 500;
	line-height: 2rem;
	padding-top: 4rem;
	letter-spacing: -0.5px;
}
header .btnblock .mitsumori {
	display: block;
	width: 6rem;
	height: 6rem;
	background: #00D9FF url(images/headmitsumoriicon.png) top 1rem center no-repeat;
	background-size: 2.2rem auto;
	color: var(--White, #FFF);
	text-align: center;
	font-size: 0.9rem;
	font-style: normal;
	font-weight: 500;
	line-height: 2rem;
	padding-top: 4rem;
	letter-spacing: -0.5px;
}

/* index */
main {
	padding-top:6rem;
}
section.fv {
	FONT-WEIGHT: 600;
	width: calc(100% - 5rem);
	height: 180vw;
	margin: 0 3rem 0;
	position: fixed;
	z-index: -1;
	background: url(images/sp-home-fv04.jpg) top center no-repeat;
	background-size: 100% auto;

}
section.top {
	width: 100%;
	position: relative;
	z-index: 10;
	margin-bottom: 5rem;
}
section.top .fvmessage {
	padding-top: 75vw;
}
section.top .fvmessage .main {
	width: calc(100% - 11rem);
	color: var(--Gray-01, #181818);
	font-size: 1.8rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: 1.3px;
	margin: 0 auto 2rem;
}
section.top .fvmessage .sub {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 1.2px;
	width: calc(100% - 11rem);
	margin: 0 auto 3rem;
}
section.top .fvmessage a.bluebtn {
	display: block;
	width: calc(100% - 11rem);
	height: 6.4rem;
	background: linear-gradient(90deg, #1F73E1 0.04%, #38E4E4 99.7%, rgba(56, 228, 228, 0.00) 197.37%);
	color: var(--White, #FFF);
	text-align: center;
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 700;
	line-height: 6.4rem;
	position: relative;
	margin: 0 auto;
}
section.top .fvmessage a.bluebtn::after {
	content: "";
	width: 3rem;
	height: 2.4rem;
	position: absolute;
	background: url(images/bluebtnicon.png) center center no-repeat;
	background-size: auto 100%;
	right: 2rem;
	top: 50%;
	transform: translate(0%, -50%);
}

section.ourservice {
	width: 100%;
	margin-top: -32rem;
	background: url(images/indexservicebg.png) top center repeat-x;
	background-size: 100% 700vw;
	padding-bottom: 10rem;
}
section.ourservice .content {
	width: 100%;
	margin: 0 auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 22rem 2.5rem 0;
}
section.ourservice .left {
	width: 100%;
	padding-bottom: 3rem;
	display: flex
;
	flex-wrap: wrap;
	order: 2;
}
section.ourservice .left .main {
	color: var(--White, #FFF);
	font-size: 2.2rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.8;
	margin-bottom: 2.7rem;
	width: 100%;
}
section.ourservice .left .sub {
	width: 100%;
	color: var(--White, #FFF);
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 500;
	line-height: 2.1;
}
section.ourservice .right {
	width: 100%;
	padding-top: 11rem;
	padding-bottom: 0rem;
}
section.ourservice .right h2 {
	width: 100%;
	text-align: left;
	color: var(--Main-Blue02, #005BB0);
	font-family: "Montserrat", sans-serif;
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1;
	margin-bottom: 3rem;
}
section.ourservice .center {
	width: 100%;
	margin-bottom: 0rem;
	order: 3;
}
section.ourservice .center > div {
	display: block;
	width: 80%;
	margin: 0 auto 4rem;
}
section.ourservice .center > div img {
	width: 100%;
	margin-bottom: 2rem;
}
section.ourservice .center > div h3 {
	color: var(--Main-Blue02, #005BB0);
	font-size: 2.1rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 2rem;
}
section.ourservice .center > div p {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.1;
}
.moreblock {
	text-align: right;
	order: 5;
}

section.ourservice .moreblock {
	text-align: right;
	width: 100%;
}
.moreblock a.morebtn {
	display: inline-block;
	width: fit-content;
	height: 4rem;
	color: var(--Gray-01, #181818);
	text-align: right;
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 4rem;
	background: url(images/btnmoreicon.png) right center no-repeat;
	background-size: auto 100%;
	padding-right: 5rem;
}

/* aboutus */
section.index_aboutus {
	background: #fff;
	overflow: hidden;
	width: 100%;
	padding-bottom:2rem;
}
section.index_aboutus .content {
	background: url(images/index_aboutusbg.jpg) top left -8vw no-repeat;
	background-size: auto 60vw;
	width: 100%;
	margin: 0 auto;
	padding-top: 33vw;
}
section.index_aboutus .aboutblock {
	width: 76vw;
	margin: 0 0 0 12vw;
	background: #fff;
	position: relative;
}
section.index_aboutus .aboutblock::after {
	content: "";
	width: 100vw;
	height: 100%;
	position: absolute;
	left: 100%;
	top: 0;
	background: #fff;
}
section.index_aboutus .aboutblock h2 {
	color: var(--Main-Blue02, #14B5D1);
	font-family: Montserrat;
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1;
	margin-bottom: 1rem;
	padding: 2.2rem 2.2rem 0;
}
section.index_aboutus .aboutblock .sub {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
	margin-bottom: 4rem;
	padding: 0 2.2rem 0;
}
section.index_aboutus .aboutblock p {
	display: block;
	margin: 0;
	padding: 0;
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.1;
	margin-bottom: 2.5rem;
	width: 100%;
}
section.index_aboutus .aboutblock .moreblock {
	text-align: right;
}






/* service */
section.lower {
	width: 100%;
	height: 20rem;
	position: relative;
}
section.lower .title {
	width: calc(100% - 5rem);
	height: 12rem;
	background: #fff;
	position: absolute;
	right: 0;
	bottom: -4rem;
	padding: 2.2rem 0 0 2.2rem;
}
section.lower .title h1 .main {
	display: block;
	width: 100%;
	color: var(--Main-Blue02, #14B5D1);
	font-family: Montserrat;
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1;
	margin-bottom: 1.5rem;
}
section.lower .title h1 .sub {
	display: block;
	width: 100%;
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
}
section.lower.company {
	background: #fff url(images/companytopbg.jpg) right -13vw center no-repeat;
	background-size: auto 100%;
}
section.aboutus {
	background: #fff;
	padding: 8rem 0 6rem;
	width: 100%;
	max-width: 1920px;
}
section.aboutus .content {
	width: 100%;
	padding: 0 3rem;
}
section.aboutus .content .left {
	width: 100%;
}
section.aboutus .content .left img {
	width:100%;
}
section.aboutus .content .right{
	width: 100%;
}
section.aboutus .right h2 {
	color: var(--Main-Blue02, #14B5D1);
	font-family: Montserrat;
	font-size: 3.6rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1.5;
}
section.aboutus .right .sub {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
	margin-bottom: 2.1rem;
}
section.aboutus .right .text {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.1;
	padding: 1rem;
}

section.philosophy {
	width: 100%;
	background: #fff;
	padding: 0 0rem 10rem;
}
section.philosophy .content {
	width: 100%;
	background: url(images/philosophybg.jpg) center center no-repeat;
	background-size: cover;
	padding: 4rem 3rem;
	text-align: center;
}
section.philosophy h2 {
	color: var(--Main-Blue02, #14B5D1);
	text-align: center;
	font-family: Montserrat;
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1.3;
}
section.philosophy .sub {
	color: var(--White, #FFF);
	text-align: center;
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
	margin-bottom: 4rem;
}
section.philosophy .text {
	color: var(--White, #FFF);
	text-align: left;
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 2.1;
	letter-spacing: 1px;
}

section.profile {
	width: 100%;
	background: #F8F8F8;
	padding: 4rem 3rem;
}
section.profile .content {
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
}
section.profile h2 {
	color: var(--Main-Blue02, #14B5D1);
	text-align: center;
	font-family: Montserrat;
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1.3;
}
section.profile .sub {
	color: var(--Gray-01, #181818);
	text-align: center;
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
	margin-bottom: 3rem;
}
.tablebg {
	background: #fff;
	width: 100%;
	padding: 2.5rem;
}
.table01 {
	width: 100%;
	border-top: 1px solid #D1D1D1;
}
.table01 tr {
	border-bottom:1px solid #D1D1D1;
}
.table01 th {
	background: rgba(0, 217, 255, 0.1);
	color: var(--Gray-01, #181818);
	font-size: 1.2rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.7;
	padding: 1.8rem;
	width: 35%;
}
.table01 td {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.7;
	padding: 1.8rem;
	width: 65%;
}

/* service */
section.lower.cleaning {
	background: #fff url(images/cleaningservicebg_sp.jpg) left center no-repeat;
	background-size: auto 100%;
}
section.cleaning {
	background: #fff;
	padding: 0;
	width: 100%;
	max-width: 1920px;
	margin-bottom: 6rem;
}
section.about_service {
	background:#fff;
	width:100%;
}
section.about_service .content {
	padding: 4rem 5rem 9rem;
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	background: #fff;
}
section.about_service h2 {
	color: var(--Main-Blue02, #005BB0);
	font-size: 2.4rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: 0;
	margin-bottom: 1.5rem;
}
section.about_service .text {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.1;
	letter-spacing: 0;
}
section.servicelist {
	background:#fff;
	width:100%;
}
section.servicelist .content {
	padding: 0rem 0rem 5rem;
	width: 100%;
	margin: 0 auto;
	background: #fff;
}
section.servicelist .content .titleblock {
	width: 100%;
	margin: 0 auto 3rem;
}
section.servicelist .content .titleblock h2 {
	padding-left: 5rem;
}
section.servicelist .content .titleblock h2 .main {
	width: 100%;
	color: var(--Main-Blue02, #14B5D1);
	font-family: Montserrat;
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1.3;
}
section.servicelist .content .titleblock h2 .sub {
	width: 100%;
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
}
section.servicelist .slist {
	width:100%;
}
section.servicelist .slist > div {
	width: 100%;
	position: relative;
	height: 100vw;
	overflow: hidden;
	margin-bottom: 2rem;
}
section.servicelist .slist > div img {
	width: auto;
	height: 100vw;
	margin-left: -50vw;
}
section.servicelist .slist > div > div {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	padding: 2.5rem;
	transform: translate(0%, -50%);
}
section.servicelist .slist > div > div h3 {
	color: var(--Main-Blue02, #005BB0);
	font-size: 2.1rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
	margin-bottom: 1.5rem;
}
section.servicelist .slist > div > div .text {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.1;
}
section.menu {
	width: 100%;
	background: url(images/menubg.jpg) center center no-repeat;
	background-size: 100% 100%;
}
section.menu .content {
	padding: 5rem 4rem;
	width: 100%;
	margin: 0 auto;
}
section.menu .content .title {
	width: 100%;
	margin-bottom: 4rem;
}
section.menu .content .title h2{

}
section.menu .content .title h2 .main {
	color: var(--White, #FFF);
	font-family: Montserrat;
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1;
}
section.menu .content .title h2 .sub {
	color: var(--White, #FFF);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 2.1;
}
section.menu .content .menulist {
	width: 100%;
}
section.menu .content .menulist > div {
	border: 1px solid #fff;
	margin: -1px 0 0 -1px;
	width: 100%;
	padding: 3rem 2rem;
	position: relative;
	min-height: 10rem;
}
section.menu .content .menulist > div.menu01 {
	background: rgba(20, 181, 209, 0.3) url(images/menuicon01.png) right 1rem center no-repeat;
	background-size: auto 6rem;
}
section.menu .content .menulist > div.menu02 {
	background:rgba(20, 181, 209,0.3) url(images/menuicon02.png)  right 1rem center no-repeat;
	background-size: auto 6rem;
}
section.menu .content .menulist > div.menu03 {
	background:rgba(20, 181, 209,0.3) url(images/menuicon03.png)  right 1rem center no-repeat;
	background-size: auto 6rem;
}
section.menu .content .menulist > div.menu04 {
	background:rgba(20, 181, 209,0.3) url(images/menuicon04.png)  right 1rem center no-repeat;
	background-size: auto 6rem;
}
section.menu .content .menulist > div.menu05 {
	background:rgba(20, 181, 209,0.3) url(images/menuicon05.png)   right 1rem center no-repeat;
	background-size: auto 6rem;
	background-size: auto 6rem;
}
section.menu .content .menulist > div.menu06 {
	background:rgba(20, 181, 209,0.3) url(images/menuicon06.png)  right 1rem center no-repeat;
	background-size: auto 6rem;
}
section.menu .content .menulist > div.menu07 {
	background:rgba(20, 181, 209,0.3) url(images/menuicon07.png)  right 1rem center no-repeat;
	background-size: auto 6rem;
}
section.menu .content .menulist > div.menu08 {
	background:rgba(20, 181, 209,0.3) url(images/menuicon08.png)  right 1rem center no-repeat;
	background-size: auto 6rem;
}
section.menu .content .menulist > div h3 .sub {
	color: var(--White, #FFF);
	font-family: "Roboto Condensed";
	font-size: 1.4rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.7;
}
section.menu .content .menulist > div h3 .main {
	color: var(--White, #FFF);
	font-size: 2rem;
	font-style: normal;
	font-weight: 700;
	line-height: 1.3;
}
section.menu .content .menulist > div .text {
	color: var(--White, #FFF);
	font-size: 1.8rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.77;
	display: none;
}

section.area {
	background:#fff;

}
section.area .content {
	padding: 5rem 3rem 13rem;
	width: 100%;
	margin: 0 auto;
}
section.area .left {
	width: 100%;
	margin-bottom: 4rem;
}
section.area .left h2 {
	margin-bottom: 3rem;
}
section.area .left .main {
	color: var(--Main-Blue02, #14B5D1);
	font-family: Montserrat;
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1.25;
	padding-left: 3rem;
}
section.area .left .sub {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6;
	padding-left: 3rem;
}

section.area .arealist {
}
section.area .right {
	width:100%;
}
section.area .right img {
	width:100%;
}
.arealist {
	border-top:1px solid #D1D1D1;
}
.arealist > div {
	border-bottom: 1px solid #D1D1D1;
	padding: 2.2rem 0;
}
.arealist > div > div:first-of-type {
	width: 20%;
	color: var(--Gray-01, #181818);
	font-size: 1.5rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.8;
	margin-bottom: 0.5rem;
}
.arealist > div > div:nth-of-type(2) {
	width: 80%;
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.8;
	width: 100%;
}

section.pricel {
	width:100%;
	background:#F8F8F8;
	padding:8.5rem 8rem;
}
section.pricel .content {
	width:100%;
	max-width:1180px;
	margin:0 auto;

}
section.pricel h2 {
	color: var(--Main-Blue02, #14B5D1);
	text-align: center;
	font-family: Montserrat;
	font-size: 6.8rem;
	font-style: normal;
	font-weight: 200;
	line-height: 1.75; /* 175.735% */
}
section.pricel .sub {
	color: var(--Gray-01, #181818);
	text-align: center;
	font-size: 2.6rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.6; /* 161.538% */
	margin-bottom:5rem;
}
section.pricel .tablebg {
	background:#fff;
	width:100%;
	padding: 5rem 5rem 0;
}
.table02 {
	width:100%;
	border-top:1px solid #D1D1D1;
	table-layout: fixed;
	margin-bottom:5.5rem;
}
.table02 tr {
	border-bottom:1px solid #D1D1D1;
}
.table02 th {
	background:#005BB0;
	color: var(--White, #FFF);
	font-size: 1.9rem;
	font-style: normal;
	font-weight: 500;
	line-height: 2.2; /* 221.053% */
	padding:0.5rem 1.8rem;
	width:16rem;
	border-right:1px solid #D1D1D1;
}
.table02 td {
	color: var(--Gray-01, #181818);
	font-size: 1.8rem;
	font-style: normal;
	font-weight: 500;
	line-height: 42px; /* 233.333% */
	padding:0.5rem 1.8rem;
	border-right:1px solid #D1D1D1;
}
.table02 th:last-child {
	border-right:0px solid #D1D1D1;
}
.table02 td:nth-child(2) {
	background:rgba(0,217,255,0.1);
}
.table02 td:last-child {
	border-right:0px solid #D1D1D1;
}



/* recruit */
section.lower.recruit {
	background: #fff url(images/recruittopbg.jpg) right -63vw center no-repeat;
	background-size: auto 100%;
}
section.recruit {
	background: #fff;
	padding: 0;
	width: 100%;
	max-width: 1920px;
	margin-bottom: 6rem;
}
section.about_recruit {
	background:#fff;
	width:100%;
}
section.about_recruit .content {
	padding:2.7rem 5rem 13rem;
	width:100%;
	max-width:1080px;
	margin:0 auto;
	background:#fff;
}
section.about_recruit h2 {
	color: var(--Main-Blue02, #005BB0);
	font-size: 4rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.9; /* 191.427% */
	letter-spacing: 4px;
	margin-bottom:3rem;
	width:100%;
	text-align: center;
}
section.about_recruit .text {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.3;
	letter-spacing: 1.9px;
	margin-bottom: 3rem;
	text-align: center;
}
section.about_recruit .text p {
	text-align: center;
}
.recruitblock {
	width:100%;
}
.recruitblock h3 {
	background:#14B5D1;
	padding:2rem;
	color: var(--White, #FFF);
	font-size: 2.6rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1; /* 161.538% */
}
.recruitblock .list {
	margin-bottom:7.2rem;
}
.recruitblock .list > div {
	border-bottom:1px solid #D1D1D1;
	padding:1rem 2rem;
	display: flex;
	justify-content: space-between;
}
.recruitblock .list > div :first-of-type {
	width:16%;
	color: var(--Gray-01, #181818);
	font-size: 1.8rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.8; /* 188.235% */
}
.recruitblock .list > div :nth-of-type(2) {
	width:84%;
	color: var(--Gray-01, #181818);
	font-size: 1.7rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.8; /* 188.235% */
}


a.recruitbtn {
    display: block;
    width: 100%;
    height: 6.4rem;
    background: linear-gradient(90deg, #1F73E1 0.04%, #38E4E4 99.7%, rgba(56, 228, 228, 0.00) 197.37%);
    color: var(--White, #FFF);
    text-align: center;
    font-size: 1.3rem;
    font-style: normal;
    font-weight: 700;
    line-height: 6.4rem;
    position: relative;
	margin:0 auto;
}
a.recruitbtn::after {
    content: "";
    width: 2rem;
    height: 2.4rem;
    position: absolute;
    background: url(images/bluebtnicon.png) center center no-repeat;
    background-size: auto 100%;
    right: 2.5rem;
    top: 50%;
    transform: translate(0%, -50%);
}

/* contact */
section.lower.contact {
	background:#fff url(images/requesttopbg.jpg) left center no-repeat;
	background-size: auto 100%;
}
section.contact {
	background: #fff;
	padding: 0;
	width: 100%;
	max-width: 1920px;
	margin-bottom: 6rem;
}
section.about_contact {
	background:#fff;
	width:100%;
}
section.about_contact .content {
	padding: 0rem 3rem 4rem;
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	background: #fff;
}
section.about_contact h2 {
	color: var(--Main-Blue02, #005BB0);
	font-size: 4rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.9; /* 191.427% */
	letter-spacing: 4px;
	margin-bottom:3rem;
	width:100%;
	text-align: center;
}
section.about_contact .text {
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 400;
	line-height: 2.1;
	letter-spacing: 1px;
	margin-bottom: 3rem;
}
section.about_contact .top_contact {
	border: 2px solid rgba(0, 217, 255, 0.2);
	padding: 2.5rem;
	width: 100%;
}
section.about_contact .top_contact .title {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	border-bottom: 1px solid #005BB0;
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1;
	padding-bottom: 1.5rem;
	margin-bottom: 1.5rem;
}
section.about_contact .top_contact .right {
	width: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
section.about_contact .top_contact .right .number {
	color: var(--Main-Blue02, #005BB0);
	font-family: "Roboto Condensed";
	font-size: 4.2rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	background: url(images/headtelicon_big.png) center left no-repeat;
	background-size: 3.5rem;
	padding-left: 4rem;
}
section.about_contact .top_contact .right .sub {
	color: var(--Gray-02, #464646);
	font-size: 1.2rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1.5;
	display: block;
	width: 100%;
	text-align: center;
}


/* form */
.form {
	width: 100%;
	background: #F8F8F8;
	padding: 4rem 3rem;
}
.form .content {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}
.form .content h2 {
	color: var(--Main-Blue02, #005BB0);
	text-align: center;
	font-size: 2rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.9;
	letter-spacing: 2px;
	margin-bottom: 2rem;
}
.form .content .contactForm {
	width: 100%;
	background: #fff;
	padding: 2.5rem;
}
.contactForm .formBlock {
	width: 100%;
	padding: 1rem 0;
	font-size: 1.3rem;
	font-weight: 500;
}

.contactForm .formBlock.finish {
	margin-bottom:30px!important;
}


.contactForm .formBlock div.left {
	width: 100%;
	text-align: left;
	color: var(--Gray-01, #181818);
	font-size: 1.3rem;
	font-style: normal;
	font-weight: 500;
	line-height: 1.4;
	position: relative;
	margin-bottom: 0.5rem;
}

.required::after {
	content: "必須";
	color: #972C2C;
	width: 3.6rem;
	height: 2.4rem;
	border: 1px solid #972C2C;
	font-size: 1.2rem;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	right: 0;
	top: 50%;
	text-align: center;
	transform: translate(0%, -50%);
	
}

.contactForm .formBlock div.left span {
}

.contactForm .formBlock div.right {
	width: 100%;
}
.contactForm .formBlock div.right input[type="text"], .contactForm .formBlock div.right input[type="email"], .contactForm .formBlock div.right input[type="url"], .contactForm .formBlock div.right select, .contactForm .formBlock div.right input[type="tel"] {
	height: 4.2rem;
	outline: none;
	font-family: inherit;
	padding: 0 10px;
	margin: 5px 0;
	font-size: 1.3rem;
	border: 1px solid var(--Gray-07, #E7E7E7);
	background: var(--Gray-09, #F8F8F8);
}
.contactForm .w100 {
	width:100%;
}
.contactForm .w150 {
	width:50%;
}

.contactForm .formBlock div.right textarea {
	width: 100%;
	height: 12rem;
	font-size: 1.6rem;
	border: 1px solid var(--Gray-07, #E7E7E7);
	background: var(--Gray-09, #F8F8F8);
	outline: none;
	font-family: inherit;
	padding: 15px;
}

.wpcf7-form-control-wrap {
	display: block;
}
.wpcf7-form-control.wpcf7-radio{
}
span.wpcf7-list-item{
	margin-right:25px;
}
span.wpcf7-list-item.first {
	margin: 0 25px 0 0!important
}

.wpcf7-list-item-label{
	cursor: pointer;
	line-height:24px;
}
input[type="radio"]{
	position: absolute;
	opacity: 0;
}
input.kakunin {
	display: block;
	width: 100%;
	height: 6rem;
	background: linear-gradient(90deg, #1F73E1 0.04%, #38E4E4 99.7%, rgba(56, 228, 228, 0.00) 197.37%);
	color: var(--White, #FFF);
	text-align: center;
	font-size: 1.6rem;
	font-style: normal;
	font-weight: 700;
	line-height: 6rem;
	position: relative;
	outline: none;
	border: none;
	cursor: pointer;
	margin: 2rem auto 0;
}
input.kakunin::after {
	content:"";
	width:5rem;
	height:5rem;
	position: absolute;
	background:url(images/submiticon.png) center center no-repeat;
	right: 1.5rem;
	top: 50%;
	transform: translate(0%, -50%);
}

.contactForm h3 {
	color: var(--Main-Blue02, #005BB0);
	font-size: 1.7rem;
	font-weight: 500;
	margin-bottom: 0.5rem;
	padding-bottom: 1rem;
	border-bottom: 1px solid #d1d1d1;
}
.formBlock.noform {
	min-height:6rem;
}
.formBlock.fin {
	margin-bottom:10rem;
}
.formBlock.noform .right {
	display: flex;
	align-items: center;
}


/* bottomcontact */
.bottom_contact {
    background: #fff;
    width: 100%;
    padding: 4rem 3rem 0;
}
.bottom_contact .content {
    width: 100%;
    margin: 0 auto;
    background: #fff;
}
.bottom_contact .contactbox {
    width: 100%;
}
.bottom_contact .contactbox .left {
    width: 100%;
    background: #005BB0;
    padding: 2.5rem;
}
.bottom_contact .contactbox .left .main {
    color: var(--Main-Blue02, #14B5D1);
    font-family: Montserrat;
    font-size: 4.2rem;
    font-style: normal;
    font-weight: 200;
    line-height: 1;
    margin-bottom: 1rem;
}
.bottom_contact .contactbox .left .sub {
    color: var(--White, #FFF);
    font-size: 1.3rem;
    font-style: normal;
    font-weight: 500;
    line-height: 2.3;
}
.bottom_contact .contactbox .center {
    width: 100%;
    background: #F8F8F8;
    padding: 2.5rem 1.8rem;
}
.bottom_contact .contactbox .center .data {
    width: 100%;
    text-align: left;
    border-bottom: 1px solid #005BB0;
    padding-bottom: 2rem;
}
.bottom_contact .contactbox .data .title {
    color: var(--Gray-01, #181818);
    text-align: left;
    font-size: 1.3rem;
    font-style: normal;
    font-weight: 500;
    line-height: 2.3;
    width: 100%;
}
.bottom_contact .contactbox .center .data .number {
    width: fit-content;
    color: var(--Main-Blue02, #005BB0);
    font-family: "Roboto Condensed";
    font-size: 4rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1;
    background: url(images/headtelicon_big.png) center left no-repeat;
    background-size: 2.9rem;
    padding-left: 3.6rem;
    margin: 0 auto;
}
.bottom_contact .contactbox .center .data .sub {
    color: var(--Gray-02, #464646);
    font-size: 1.2rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8;
    text-align: right;
}
.bottom_contact .contactbox .right {
    width: 100%;
    background: #F8F8F8;
    padding: 0 0 3rem;
}
.bottom_contact .contactbox .right .data {
    width: 100%;
    height: 100%;
    padding: 0 2rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-flow: column;
}
.bottom_contact .contactbox .right a {
    display: block;
    width: 100%;
    height: 6.4rem;
    background: linear-gradient(90deg, #1F73E1 0.04%, #38E4E4 99.7%, rgba(56, 228, 228, 0.00) 197.37%);
    color: var(--White, #FFF);
    text-align: center;
    font-size: 1.3rem;
    font-style: normal;
    font-weight: 700;
    line-height: 6.4rem;
    position: relative;
}
.bottom_contact .contactbox .right a::after {
    content: "";
    width: 2rem;
    height: 2.4rem;
    position: absolute;
    background: url(images/bluebtnicon.png) center center no-repeat;
    background-size: auto 100%;
    right: 2.5rem;
    top: 50%;
    transform: translate(0%, -50%);
}
footer {
    width: 100%;
    background: #fff;
    padding: 4rem 3rem 0;
}
footer .content {
    padding: 0;
    width: 100%;
    margin: 0 auto;
    background: #fff;
    display: flex
;
    flex-wrap: wrap;
    justify-content: space-between;
}
footer .content .left {
    width: 65%;
}
footer .content .left .logo {
    width: 8.4rem;
}
footer .content .left .adr img {
    margin-bottom: 2rem;
    width: 14.5rem;
	margin-top:1rem
}
footer .content .left .adr span {
    color: var(--Gray-01, #181818);
    font-size: 1.2rem;
    font-style: normal;
    font-weight: 400;
    line-height: 1.8;
}
footer .right {
    width: 35%;
}
footer .gmenu {
}
footer .gmenu li a {
    display: block;
    color: var(--Gray-01, #181818);
    font-size: 1.2rem;
    font-style: normal;
    font-weight: 400;
    line-height: 3;
}
footer .copy {
    margin-top: 2.5rem;
    border-top: 1px solid #D9D9D9;
    width: 100%;
    text-align: center;
    padding: 2rem;
    color: var(--Gray-01, #181818);
    font-family: Roboto;
    font-size: 1.2rem;
    font-style: normal;
    font-weight: 400;
}


/* policy */

	.policytext {
	}
	.policytext h1 {
    font-size: 1.6rem;
    font-weight: 700;
    margin-bottom: 2rem;
	}
	.policytext h2 {
        color: #333 !important;
        font-size: 1.4rem !important;
        font-weight: 500 !important;
        line-height: 1.6 !important;
        letter-spacing: 0 !important;
        margin-bottom: 1.6rem !important;
        text-align: left !important;
	}
	.policytext p {
        font-size: 1.2rem;
        margin-bottom: 3.5rem;
        padding-left: 0.5rem;
	}
	.policytext ol {
        padding-left: 0.5rem;
        margin-bottom: 3rem;
	}
	.policytext ol li {
	}
.policytext *:first-child {
        margin-top: 1rem;
}
.policytext ol li {
        position: relative;
        list-style: outside decimal;
        padding: 0 0 0 0.5rem;
        font-size: 1.2rem;
}
.policytext ol li::marker {
        font-size: 1.3rem;
        font-weight: 500;
}

/* form */
	.policy {
        border: 2px solid rgba(0, 217, 255, 0.2);
        padding: 1.5rem;
		text-align:center;
		line-height:1.8;
		margin:30px 0;
	}
	.policy div p {
        text-align: center !important;
		font-size:1.2rem;
	}
	.policy a {
		background-size:10px 10px;
		padding:0 15px 0 2px;
		-webkit-transition: all 0.2s;
		-moz-transition: all 0.2s;
		-ms-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
		text-decoration:underline;
	}




	/* slide関係 */
	.menuBtn {
        display: block !important;
        position: fixed;
        width: 60px;
        height: 60px;
        border: none;
        appearance: none;
        cursor: pointer;
		z-index: 10001;
        top: 0;
        right: 0;
        transition: all .4s;
	}
	.menu-trigger,
	.menu-trigger span {
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.menu-trigger {
        position: absolute;
        width: 30px;
        height: 14px;
        background: none;
        border: none;
        appearance: none;
        z-index: 1001;
        top: 23px;
        left: 15px;
	}
	.menu-trigger span {
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #005BB0;
        border-radius: 2px;
	}
	.menu-trigger span:nth-of-type(1) {
		top: 0;
	}
	.menu-trigger span:nth-of-type(2) {
		opacity: 0;
	}
	.menu-trigger span:nth-of-type(3) {
		bottom: 0;
	}		
	html.sb-active #menu01 span:nth-of-type(1) {
		transform: translateY(6px) rotate(-45deg);
	}
	html.sb-active #menu01 span:nth-of-type(2) {
		opacity: 0;
	}
	html.sb-active #menu01 span:nth-of-type(3) {
		transform: translateY(-6px) rotate(45deg);
	}
	html.sb-active .menu-trigger span {
	}
	html.sb-active .menuBtn {
	}

	.sb-slidebar {
		width: 100%!important;
		display: block;
		height: calc(100vh - 0px);
		margin-top: 0px;
	}











/* スライドメニュー */

	.slideMenu {
		width:100%;
		height:100vh;
		padding-top:60px;
		text-align:center;
		position:relative;
	}

	.slideMenu .menuBlock {
		display:block;
		height:auto;
		width:100%;
		padding:0;
		position:relative;
	}
	
	.slideMenu .menuBlock .gmenu {
		height:calc(100vh - 250px);
		position: relative;
	}
	.slideMenu .menuBlock .gmenu > div {
        position: absolute;
        left: 50%;
        top: 50%;
        text-align: center;
        transform: translate(-50%, -50%);
		width:100%;
	}
	.slideMenu .menuBlock .gmenu > div a {
		display:block;
		width:100%;
		text-align: center;
		color: var(--Gray-01, #181818);
		font-size: 1.9rem;
		font-style: normal;
		font-weight: 500;
		line-height: 3; /* 94.737% */
		letter-spacing: 1.9px;
	}
	.slidebottomtel {
        background: #F3F3F3;
        width: 100%;
        height: 190px;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-flow: column;
		position:absolaute;
		left:0;
		right:0;
		bottom:0;
	}
	.slidebottomtel .number {
        display: block;
        width: fit-content;
        color: var(--Main-Blue02, #005BB0);
        font-family: "Roboto Condensed";
        font-size: 4.5rem;
        font-style: normal;
        font-weight: 400;
        line-height: 6.5rem;
        background: #fff url(images/headtelicon_big.png) center left 2rem no-repeat;
        background-size: 3.2rem;
        padding: 0 3rem 0 6rem;
        margin: 0 auto 0.5rem;
        border-radius: 3.5rem;
        height: 6.5rem;
    }
	.slidebottomtel .sub {
        color: var(--Gray-02, #464646);
        font-size: 1.3rem;
        font-style: normal;
        font-weight: 400;
        line-height: 1.8;
        text-align: center;
    }
	


/* -----------------------------------
 * Slidebars
 * Version 0..10
 * http://plugins.adchsm.me/slidebars/
 *
 * Written by Adam Smith
 * http://www.adchsm.me/
 *
 * Released under MIT License
 * http://plugins.adchsm.me/slidebars/license.txt
 *
 * -------------------
 * Slidebars CSS Index
 *
 * 001 - Box Model, Html & Body
 * 002 - Site
 * 003 - Slidebars
 * 004 - Animation
 * 005 - Helper Classes
 *
 * ----------------------------
 * 001 - Box Model, Html & Body
 */

html, body, #sb-site, .sb-site-container, .sb-slidebar {
	/* Set box model to prevent any user added margins or paddings from altering the widths or heights. */
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}

html, body {
	width: 100%;
	overflow-x: hidden; /* Stops horizontal scrolling. */
}

html {
	height: 100%; /* Site is as tall as device. */
}

body {
	min-height: 100%;
	height: auto;
	position: relative; /* Required for static Slidebars to function properly. */
}

html.sb-scroll-lock.sb-active:not(.sb-static) {
	overflow: hidden; /* Prevent site from scrolling when a Slidebar is open, except when static Slidebars are only available. */
}

/* ----------
 * 002 - Site
 */

#sb-site, .sb-site-container {
	/* You may now use class .sb-site-container instead of #sb-site and use your own id. However please make sure you don't set any of the following styles any differently on your id. */
	width: 100%;
	position: relative;
	z-index: 1; /* Site sits above Slidebars */
	background-color: #ffffff; /* Default background colour, overwrite this with your own css. I suggest moving your html or body background styling here. Making this transparent will allow the Slidebars beneath to be visible. */
}

/* ---------------
 * 003 - Slidebars
 */

.sb-slidebar {
	height: 100%;
	overflow-y: auto; /* Enable vertical scrolling on Slidebars when needed. */
	position: fixed;
	top: 0px;
	z-index: 0; /* Slidebars sit behind sb-site. */
	display: none; /* Initially hide the Slidebars. Changed from visibility to display to allow -webkit-overflow-scrolling. */
	background:#fff; /* Default Slidebars background colour, overwrite this with your own css. */
	-webkit-transform: translate(0px); /* Fixes issues with translated and z-indexed elements on iOS 7. */
}

.sb-left {
	left: 0; /* Set Slidebar to the left. */
}

.sb-right {
	right: 0; /* Set Slidebar to the right. */
}

html.sb-static .sb-slidebar,
.sb-slidebar.sb-static {
	position: absolute; /* Makes Slidebars scroll naturally with the site, and unfixes them for Android Browser < 3 and iOS < 5. */
}

.sb-slidebar.sb-active {
	display: block; /* Makes Slidebars visibile when open. Changed from visibility to display to allow -webkit-overflow-scrolling. */
}

.sb-style-overlay {
	z-index: 99; /* Set z-index high to ensure it overlays any other site elements. */
}

.sb-momentum-scrolling {
	-webkit-overflow-scrolling: touch; /* Adds native momentum scrolling for iOS & Android devices. */
}

/* Slidebar widths for browsers/devices that don't support media queries. */
	.sb-slidebar {
		width: 100%;
	}
	
	.sb-width-thin {
		width: 15%;
	}
	
	.sb-width-wide {
		width: 45%;
	}

@media (max-width: 480px) { /* Slidebar widths on extra small screens. */
	.sb-slidebar {
		width: 100%;
	}
	
	.sb-width-thin {
		width: 100%;
	}
	
	.sb-width-wide {
		width: 100%;
	}
}

@media (min-width: 481px) { /* Slidebar widths on small screens. */
	.sb-slidebar {
		width: 55%;
	}
	
	.sb-width-thin {
		width: 40%;
	}
	
	.sb-width-wide {
		width: 70%;
	}
}

@media (min-width: 768px) { /* Slidebar widths on medium screens. */
	.sb-slidebar {
		width: 40%;
	}
	
	.sb-width-thin {
		width: 25%;
	}
	
	.sb-width-wide {
		width: 55%;
	}
}

@media (min-width: 992px) { /* Slidebar widths on large screens. */
	.sb-slidebar {
		width: 30%;
	}
	
	.sb-width-thin {
		width: 15%;
	}
	
	.sb-width-wide {
		width: 45%;
	}
}

@media (min-width: 1200px) { /* Slidebar widths on extra large screens. */
	.sb-slidebar {
		width: 20%;
	}
	
	.sb-width-thin {
		width: 5%;
	}
	
	.sb-width-wide {
		width: 35%;
	}
}

/* ---------------
 * 004 - Animation
 */

.sb-slide, #sb-site, .sb-site-container, .sb-slidebar {
	-webkit-transition: -webkit-transform 400ms ease;
	   -moz-transition: -moz-transform 400ms ease;
	     -o-transition: -o-transform 400ms ease;
	        transition: transform 400ms ease;
	-webkit-transition-property: -webkit-transform, left, right; /* Add left/right for Android < 4.4. */
	-webkit-backface-visibility: hidden; /* Prevents flickering. This is non essential, and you may remove it if your having problems with fixed background images in Chrome. */
}

/* --------------------
 * 005 - Helper Classes
 */
 
.sb-hide { 
	display: none; /* Optionally applied to control classes when Slidebars is disabled over a certain width. */
}








}












/*画面サイズが変わっても常に動画の中央が表示されるようにする*/
/*動画よりも画面が横に長くなるとき用*/
@media (aspect-ratio: 16/9), (min-aspect-ratio: 16/9) {
  .video-container .video-wrap video {
    width: 100%;
    top: 50%;
    transform: translateY(-50%);
  }
}

/*動画よりも画面が縦に長くなるとき用*/
@media (max-aspect-ratio: 16/9) {
  .video-container .video-wrap video {
    height: 125%;
    left: 60%;
    transform: translateX(-50%);
  }
}




.fadeIn {
	opacity: 0;
	transform: translate(0, 0);
	transition: 3s;
}

.fadeIn_left {
	opacity: 0;
	transform: translate(-15%, 0);
	transition: .8s;
	/* transition-timing-function : cubic-bezier(.41,.05,.94,.65); */
	/* -webkit-transition-timing-function : cubic-bezier(.41,.05,.94,.65); */
}

.fadeIn_right {
	opacity: 0;
	transform: translate(15%, 0);
	transition: .8s;
}

.fadeIn_right50 {
	opacity: 0;
	transform: translate(50%, 0);
	transition: .4s;
}

.fadeIn_up {
	opacity: 0;
	transform: translate(0, 10%);
	transition: .8s;
}

.fadeIn_down {
	opacity: 0;
	transform: translate(0, -30%);
	transition: .8s;
}


.fadeIn_left2 {
	opacity: 0;
	transform: translate(-8%, 0);
	transition: .8s;
	/* transition-timing-function : cubic-bezier(.41,.05,.94,.65); */
	/* -webkit-transition-timing-function : cubic-bezier(.41,.05,.94,.65); */
}

.fadeIn_right2 {
	opacity: 0;
	transform: translate(8%, 0);
	transition: .8s;
}

.fadeIn_up2 {
	opacity: 0;
	transform: translate(0, 8%);
	transition: .8s;
}

.fadeIn_down2 {
	opacity: 0;
	transform: translate(0, -8%);
	transition: .8s;
}

.fadeIn_left3 {
	opacity: 0;
	transform: translate(-4%, 0);
	transition: .8s;
	/* transition-timing-function : cubic-bezier(.41,.05,.94,.65); */
	/* -webkit-transition-timing-function : cubic-bezier(.41,.05,.94,.65); */
}

.fadeIn_right3 {
	opacity: 0;
	transform: translate(4%, 0);
	transition: .8s;
}

.fadeIn_up3 {
	opacity: 0;
	transform: translate(0, 4%);
	transition: .8s;
}

.fadeIn_down3 {
	opacity: 0;
	transform: translate(0, -4%);
	transition: .8s;
}

.is-show {
	transform: translate(0, 0);
	opacity: 1;
}

	.timing0 {transition-delay: 0ms;}
	.timing1 {transition-delay: 100ms;}
	.timing2 {transition-delay: 200ms;}
	.timing3 {transition-delay: 300ms;}
	.timing4 {transition-delay: 400ms;}
	.timing5 {transition-delay: 500ms;}
	.timing6 {transition-delay: 600ms;}
	.timing7 {transition-delay: 700ms;}
	.timing8 {transition-delay: 800ms;}
	.timing9 {transition-delay: 900ms;}
	.timing10 {transition-delay: 1000ms;}
	.timing11 {transition-delay: 1100ms;}
	.timing12 {transition-delay: 1200ms;}
	.timing13 {transition-delay: 1300ms;}
	.timing14 {transition-delay: 1400ms;}
	.timing15 {transition-delay: 1500ms;}
	.timing16 {transition-delay: 1600ms;}
	.timing17 {transition-delay: 1700ms;}
	.timing18 {transition-delay: 1800ms;}
	.timing19 {transition-delay: 1900ms;}
	.timing20 {transition-delay: 2000ms;}

	.timing25 {transition-delay: 2500ms;}
	.timing30 {transition-delay: 3000ms;}
	.timing35 {transition-delay: 3500ms;}

	.timing70 {transition-delay: 7500ms;}

	.timing75 {transition-delay: 7500ms;}
	.timing76 {transition-delay: 7600ms;}

	
