@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Whisper&display=swap');@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@300&display=swap');

* {
	margin: 0;
	padding: 0;
}


html {
    scroll-behavior: smooth;
}

.c-hamburger-menu {
  position: relative;
}

.top {
	position: fixed;
	right: 3rem;
	bottom: 3rem;
	width: 3%;
	filter: drop-shadow(2px 2px 2px #727171);
}

.top a {
	text-decoration: none;
}

a:hover {
	opacity: 0.5;
	transition: 0.5s;
}

.bgimg {
	background-repeat: no-repeat;
	background-size: cover;
	background-image: url(../img/main_img.jpg);
	background-position: center;
	width: 100%;
	height: auto;
	background-attachment:fixed;
}

header {
	background-color: #86C3DF;
	padding: 30px 50px;
	font-family: serif;
	width: 100%;
	position: fixed;
	z-index: 1;
}

.hed_body {
	width: 80%;
	margin: 0 auto;
	display: flex;
}

header .logo {
	font-size: 20px;
	margin-right: 6em;
	width: 100%;
	white-space: nowrap;
}

header ul {
	width: 100%;
	margin: 0 0 0 auto;
	display: flex;
}

header li {
	list-style: none;
	color: #fff;
	white-space: nowrap;
}

header a {
	margin-right: 30px;
	text-decoration: none;
	color: #fff;
	font-family: serif;
}

header a:hover {
	opacity: 0.5;
	transition: 0.5s;
}



.main {
	height: 700px;
	display: flex;
	margin: 0 auto;
	padding-top: 5em;
	width: 80%;
}

.reuse_img {
	opacity: 0.7;
	height: 80%;
	margin: auto 0 auto -50px;
}

.top_txt {
	color: #847E78;
	background-color: #fff;
	font-family: serif;
	font-size: 30px;
	margin: auto 0;
	padding: 10px 20px;
	height: auto;
	white-space: nowrap;
}

.section {
	background-color: #FAFCF5;
}

.sec_body {
	width: 70%;
	margin: 0 auto;
}


h2 {
	color: #86C3DF;
	font-size: 40px;
	font-family: serif;
	font-weight: lighter;
	text-align: center;
	margin-top: 6em;
}

h3 {
	color: #847E78;
	font-size: 20px;
	font-weight: lighter;
	font-family: serif;
	text-align: center;
}

.flex {
	display: flex;
	height: 400px;
	margin: 10em auto;
	width: 100%;
}


.mission {
	padding-top: 100px;
}

.mission img {
	width: 50%;
	height: 100%;
	object-fit:cover;
}


.mission p {
	color: #847E78;
	font-size: 20px;
	font-weight: lighter;
	font-family: serif;
	line-height: 3em;
	display: flex;
}

.section a {
	text-decoration: none;
	background-color: #86C3DF;
	padding: 20px 50px;
	color: #fff;
	font-size: 25px;
	font-family: serif;
	text-align: center;
	margin: 50px auto;
	width: 6em;
	display: block;
}

.section a:hover {
	opacity: 0.5;
	transition: 0.5s;
}

.sentence {
	font-size: 15px;
	font-family: serif;
	color: #847E78;
	line-height: 4em;
	margin-top: 50px;
}

.xo {
	font-size: 25px;
	color: #847E78;
	text-align: center;
	margin: 100px 0 40px;
}

.test_price {
	text-align: center;
}

.test_price img {
	width: 80%;
}

iframe {
	width: 100%;
	margin: 30px auto 0;
}

.adve {
	background-color: #86C3DF;
	margin: 0 auto;
	padding: 3rem;
}

.japan {
	color: #fff;
	text-align: center;
	font-family: serif;
	margin: 2rem 0;
	font-size: 1.5rem;
}

.recruit {
	color: #fff;
	font-size: 1.4rem;
	font-family: serif;
}

.recruit a {
	text-decoration: none;
	color: #fff;
	border: solid 1px #fff;
	padding: 5px;
	margin-top: 3rem;
	font-size: 1.2rem;
}

.ad_body {
	width: 50%;
	margin: 0 auto;
}

.contact {
	color: #fff;
	font-size: 3rem;
	margin: 0 0 0 auto;
	font-family: serif;
}

.flex_adve {
	display: flex;
}

.time {
	font-size: 1.5rem;
}

/*.adve {
	width: 100%;
	margin: 0;
	display: flex;
}

.japan {
	width: 50%;
	background-color: #86C3DF;
	color: #fff;
	font-family: serif;
	padding: 10px;
	background-image: url("../img/jpan_map.png");
	background-repeat: no-repeat;
	background-position: right;
	background-size: contain;
}

.j_one {
	font-size: 5em;
	text-align: right;
}
.j_two {
	font-size: 1.55em;
	text-align: right;
}

.recruit {
	color: #fff;
	text-align: left;
	background-color: #6FBCDF;
	width: 50%;
	font-family: serif;
	padding: 10px;
}

.r_one {
	font-size: 2.5em;
	margin-left: -20px;
}
.r_two {
	font-size: 2.3em;
}
.r_three {
	font-size: 9.7em;
	margin-top: -20px;
}

.recruit a {
	color: #fff;
	border-color: #fff;
	font-size: 1.5rem;
}

.recruit a:hover {
	opacity: 0.5;
	transition: 0.5s;
}*/

footer {
	width: 80%;
	background-color: #86C3DF;
	margin: 50px auto 0;
	border-radius: 10px 10px 0px 0px;
	color: #fff;
	font-family: serif;
	padding: 40px 40px 10px;
}

footer ul {
	width: 80%;
	margin: 0 -100px 0 auto;
	display: flex;
}


footer li {
	color: #fff;
	list-style: none;
	border: none;
}

footer a {
	text-decoration: none;
	margin-right: 30px;
}

footer a:hover {
	opacity: 0.5;
	transition: 0.5s;
}

.c_info {
	display: block;
}

.c_name {
	font-size: 1.5rem;
}

.small {
	text-align: center;
	font-size: 0.8rem;
	margin-top: 10px;
}

#nav-input {
  display: none;
}

.br_top {
	display: none;
}


@media screen and (max-width: 751px) {
	
	.hed_body {
		width: 100%;
		display: block;
	}
	
	.main {
		width: 100%;
		margin-left: auto;
		margin-right: auto;
	}

	.sentence {
		font-size: 0.8rem;
		line-height: 2rem;
	}
	
	.sec_body {
		width: 90%;
	}
	
	.flex p {
	font-size: 0.8rem;
}
	
	h2 {
		margin-top: 2rem;
	}
	
	header {
	font-family: serif;
	width: 100%;
	z-index: 1;
}
	
	header li {
	list-style: none;
	color: #fff;
	white-space: normal;
	width: 100%;
}
	
	header ul {
	width: 100%;
	margin: 0 0 0 auto;
	display: block;
}

	
	
	.bgimg {
	background-repeat: no-repeat;
	background-size: size;
	background-image: url("../img/main_bg_sp.jpg");
	background-position: center;
	background-attachment: local;
	width: 100%;
	height: auto;
	position: static;
}
	
	.japan p {
		font-size: 1rem;
	}
	
	.flex_adve {
	display: block;
}
	
	.ad_body {
	width: 90%;
	text-align: center;
}
	
	.tel {
		font-size: 2rem;
		margin-top: 2rem;
	}

	.time {
		font-size: 1rem;
	}
	
	.section {
		width: 100%;
	}
	
	
	#nav-drawer {
  position: relative;
}

/*チェックボックス等は非表示に*/
.nav-unshown {
  display:none;
}

/*アイコンのスペース*/
#nav-open {
  display: inline-block;
  width: 30px;
  height: 22px;
  vertical-align: middle;
}

/*ハンバーガーの形をCSSで表現*/
#nav-open span, #nav-open span:before, #nav-open span:after {
  position: absolute;
  height: 3px;/*線の太さ*/
  width: 25px;/*長さ*/
  border-radius: 3px;
  background: #fff;
  display: block;
  content: '';
  cursor: pointer;
}
#nav-open span:before {
  bottom: -8px;
}
#nav-open span:after {
  bottom: -16px;
}

/*閉じる用の薄黒箇所*/
#nav-close {
  display: none;
  position: fixed;
  z-index: 99;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #fff;
  opacity: 0;
  transition: .3s ease-in-out;
}

/*メニューの中身*/
#nav-content {
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 90%;
  max-width: 330px;/*最大幅（お好みで調整を）*/
  height: 100%;
  background: #86C3DF;
padding: 2rem 0 0 2rem;
  transition: .3s ease-in-out;
  -webkit-transform: translateX(-105%);
  transform: translateX(-105%);
}
	
header ul {
	margin-top: 2rem;
}

/*チェックがついたら表示させる*/
#nav-input:checked ~ #nav-close {
  display: block;
  opacity: .5;
}

#nav-input:checked ~ #nav-content {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
  box-shadow: 6px 0 25px rgba(0,0,0,.15);
}

.header-logo-menu{
 display: flex;
 display: -moz-flex;
 display: -o-flex;
 display: -webkit-flex;
 display: -ms-flex;
 flex-direction: row;
 -moz-flex-direction: row;
 -o-flex-direction: row;
 -webkit-flex-direction: row;
 -ms-flex-direction: row;
}

/*ロゴやサイトタイトルをセンタリング*/
.logo-area{text-align:center;margin:auto;}
	
	
	.flex {
	display: block;
	margin: 0;
		height: auto;
}
	
	.mission img {
	width: 100%;
	height: auto;
	display: block;
	margin-bottom: 2rem;
}
	
	.top_txt {
	color: #3E3E3E;
	background-color: #fff;
	font-family: serif;
	font-size: 1rem;
	margin: auto 0 auto;
	padding: 10px 20px;
	height: auto;
	white-space: normal;
}
	
	.reuse_img {
	opacity: 0.7;
	height: 40%;
	margin: auto 0 auto -5.5rem;
}
	
	footer ul {
		display: none;
	}
	
	.top {
		width: 10%;
	}
	
	.br_top {
		display: block;
	}
	
	
}

