﻿img{
	max-width:100%;
	height:auto;
}
html {
	position: relative;
	min-width: 1360px;
	scroll-behavior: smooth;
	scroll-padding-top: 110px;
}
body {
	color: #212121;
	width: 100%;
	font-family: "source-han-sans-japanese", sans-serif;
	font-weight: 300;
	font-style: normal;
	text-justify: inter-ideograph;
	text-align: justify;
	font-size: 15px;
}
a{
	color:#212121;
}
a:hover{
	transition:0.5s;
}
a:hover img{
	opacity:0.7;
	transition:0.5s;
}
header{
	width:100%;
	height: 106px;
	box-sizing:border-box;
	position:fixed;
/*	z-index:15000;*/
	z-index:10200;
	background:rgba(255,255,255,1);
	top:0;
	left:0;
}
#header_inner{
	width:100%;
	max-width:1430px;
	height:100%;
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin:0 auto;
	position:relative;
}
#header_r{
	display:flex;
	width:1010px;
	height:100%;
	justify-content:space-between;
	align-items:center;
}
header h1{
	max-width:400px;
	width:calc(100% - 1030px);
	height:100%;
	position:relative;
}
header h1 a{
	width:100%;
	height:100%;
	display:flex;
	align-items:center;
}
header h1 a img{
	width:100%;
	height:auto;
}
#hader_r img{
	vertical-align:middle;
	margin-right:10px;
}
#header_tel1{
	width:310px;
	color:#25b6a0;
}

#header_tel1 dt{
	font-size:14px;
	line-height:28px;
	text-align:center;
}
#header_tel1 dd{
	font-family: "futura-pt", sans-serif;
	font-weight: 500;
	font-style: normal;
	font-size:35px;
	text-align:center;
	letter-spacing:2px;
}
#header_tel2{
	display:flex;
	flex-wrap:wrap;
	width:350px;
	color:#0068b7;
	justify-content:space-between;
}
#header_tel2 dt,
#header_tel2 dd{
	line-height:40px;
	flex:none;
}
#header_tel2 dt{
	font-size:14px;
	width:45%;
}
#header_tel2 dd{
	width:55%;
	font-size:28px;
	font-family: "futura-pt", sans-serif;
	font-weight: 500;
	font-style: normal;
}
#header_r ul{
	width:208px;
	list-style:none;
	display:flex;
	justify-content:space-between;
}
#header_r ul li{
	width:100px;
}
#header_r ul li a{
	display:block;
	line-height:70px;
	border-radius:5px;
	text-align:center;
	font-size:16px;
	text-decoration:none;
	color:#fff;
}
#header_r ul li:nth-child(1) a{
	background: linear-gradient(135deg, #0068b7 0%,#7db9e8 100%,#4c9ad0 100%);
}
#header_r ul li:nth-child(2) a{
	background: linear-gradient(135deg,  #48c2ae 0%,#96dcd1 100%,#4c9ad0 100%);
}
#contact_nav1,
#contact_nav2{
	display:none;
	position:absolute;
	top:100px;
	right:0;
}
#contact_nav1{
	border:5px solid #0068b7;
	border-radius:5px;
	width:300px;
	box-sizing:border-box;
	padding:20px;
	background:#fff;
}
#contact_nav1 h4{
	color:#0068b7;
	text-align:center;
	margin:0 0 20px;
}
#contact_nav1 a{
	display:block;
	background:#0068b7 url('../images/common/arrow2.svg') no-repeat left 10px center;
	color:#fff;
	text-align:center;
	border-radius:5px;
	text-decoration:none;
	margin:0 auto 10px;
	line-height:35px;
}
#contact_nav2{
	border:5px solid #48c2ae;
	border-radius:5px;
	width:300px;
	box-sizing:border-box;
	padding:20px;
	background:#fff;
}
#contact_nav2 h4{
	color:#48c2ae;
	text-align:center;
	margin:0 0 20px;
}
#contact_nav2 a{
	display:block;
	background:#48c2ae url('../images/common/arrow2.svg') no-repeat left 10px center;
	color:#fff;
	text-align:center;
	border-radius:5px;
	text-decoration:none;
	margin:0 auto 10px;
	line-height:35px;
}
#gnav{
	width:960px;
	padding:0 10px;
	height:100px;
	position:absolute;
	background:#fff;
	border-radius:10px;
	top:120px;
	left: 50%;
	transform: translateX(-50%);
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	z-index:10000;
	box-sizing:border-box;
}
#gnav ul{
	box-sizing:border-box;
	display:flex;
	justify-content:space-between;
	width:100%;
	height:100%;
	align-items:center;
	margin:0 auto;
}
#gnav ul li{
	width:220px;
	flex:none;
}
#gnav ul a{
	text-decoration:none;
	height:80px;
	line-height:1.8em;
	align-items:center;
	display:flex;
	width:100%;
	background:url('../images/common/arrow2.svg') no-repeat right center;
}
#gnav ul a img{
	display:block;
	width:80px;
	margin-right:10px;
	flex:none;
}
#gnav ul a:hover{
	background:#96dcd1 url('../images/common/arrow2.svg') no-repeat right center;
}

#menu{
	width:70px;
	height:70px;
	padding:13px 0 0 0;
	border:1px solid #9a9a9a;
	box-sizing:border-box;
	position:relative;
	background:#f6f6f6;
	z-index:10001;
	margin-left:10px;
}
#menu{
	text-align:center;
}
/* Toggle Button */
.nav-toggle {
    display: block;
    width: 40px;
    height: 36px;
    margin:0 auto;
    cursor: pointer;
    z-index: 10001;
	position:relative;
}
.nav-toggle div {
    position: relative;
}
.nav-toggle span {
    display: block;
    position: absolute;
    margin:0 auto;
    height: 4px;
    width: 100%;
    background: #aea085;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
.nav-toggle span:nth-child(1) {
    top: 0;
}
.nav-toggle span:nth-child(2) {
    top: 11px;
}
.nav-toggle span:nth-child(3) {
    top: 22px;
}
.menu-fix{
	position:fixed !important;	
}
#global-nav {
	position: fixed;
	/* 開いてないときは画面外に配置 */
	top: 10px;
	display:none;
	background: #ffffff;
	text-align: center;
	left: 0;
	right: 0;
	margin: auto;
	max-width:1380px;
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	box-shadow:0 0 5px rgba(0,0,0,0.5);
}
#global-nav:after{
	clear:both;
	content:"";
	display:block;
}
#global-nav dl{
	width:20%;
	padding:85px 3% 50px;
	box-sizing:border-box;
	flex:none;
}
#gnav2,
#gnav4{
	background:#f7f7f7;
}
#gnav2 dd{
	margin:0 0 20px;
}
#gnav3 dd{
	margin:0 0 20px;
}
#gnav5{
	padding:116px 3% 50px !important;
}
#gnav5 ul{
	margin:50px 0 0px;
}
.nav_img{
	height:70px;
	display:block;
	text-align:center;
}
#global-nav strong{
	font-size:22px;
	color:#614f3d;
	font-family: yu-mincho-pr6, sans-serif;
}
@media screen and (max-width: 1200px) {
	#global-nav strong{
		font-size:18px;
	}
}
#global-nav a{
	text-decoration:none;
}
#global-nav .eng{
	font-size:14px;
	color:#d89e67;
	padding:5px 0;
	display:none;
}
#global-nav dt{
	height:160px;
	padding:10px;
	box-sizing:border-box;
	margin:0 0 20px;
	box-shadow:0 0 3px rgba(90,77,77,0.5);
	border-radius:5px;
}
#global-nav dt:hover{
	background:#fed9b5;
}
#global-nav ul {
	list-style: none;
	position: static;
	right: 0;
	bottom: 0;
	font-size: 14px;
}
#global-nav ul li {
	float: none;
	position: static;
	border-bottom:1px solid #dfdad2;
}
header #global-nav ul li a,
header.fixed #global-nav ul li a {
	width: 100%;
	display: block;
	color: #3b3b3b;
	line-height:36px;
	text-decoration:none;
}

header #global-nav a:hover{
	color:#d89e67;
}

/* #nav-toggle 切り替えアニメーション */
.open .nav-toggle span:nth-child(1) {
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
}
.open .nav-toggle span:nth-child(2) {
	width: 0;
	left: 50%;
}
.open .nav-toggle span:nth-child(3) {
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
}
/* #global-nav スライドアニメーション */
.open #global-nav {
	/* #global-nav top + #mobile-head height */
	/*-moz-transform: translateY(556px);
	-webkit-transform: translateY(556px);
	transform: translateY(556px);*/
	display:flex;
}
#nav-close{
	display:none;
}
.open #nav-close{
	display:block;
}
.open #nav-open{
	display:none;
}
.banner a{
	display:block;
	background:#5a4d4d url('../images/common/plus_white.png') no-repeat right 10px center;
	color:#fff;
	text-decoration:none;
	line-height:36px;
	margin:0 0 10px;
}
.banner1 a{
	display:block;
	background:#0068b7 url('../images/common/plus_white.png') no-repeat right 10px center;
	color:#fff;
	text-decoration:none;
	line-height:36px;
	margin:0 0 10px;
}
.banner2 a{
	display:block;
	background:#25b6a0 url('../images/common/plus_white.png') no-repeat right 10px center;
	color:#fff;
	text-decoration:none;
	line-height:36px;
	margin:0 0 10px;
}
.banner3 a{
	display:block;
	background:#ff9307 url('../images/common/plus_white.png') no-repeat right 10px center;
	color:#fff;
	text-decoration:none;
	line-height:36px;
	margin:0 0 10px;
}
#wrapper{
	padding:106px 0 0 0;
}
main{
	line-height:1.8em;
}


footer{
	padding:0px 0 0;
}
#footer_wrap{
	padding:50px 0 0 0;
	background:#b8e1e4;
}
#footer_banner{
	list-style:none;
	display:flex;
	width:960px;
	height:100px;
	margin:0 auto;
	gap:10px;
	justify-content:space-between;
}
#footer_banner li{
	height:100%;
	display:flex;
	align-items:center;
}
#footer_banner li a{
	height:100%;
	display:flex;
	align-items:center;
}
.footer_comment{
	text-align:center;
	margin:0 auto 50px;
}
#footer_service{
	padding:0 0 20px;
}
footer h2{
	font-family: "futura-pt", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size:24px;
	position:relative;
	width:960px;
	margin:0 auto 40px;
	top:-15px;
}
footer h2:after{
	content:"";
	background:#b2b2b2;
	height:1px;
	width:800px;
	display:block;
	position:absolute;
	right:0;
	top:50%;
}
#footer_service ul{
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	gap:10px 30px;
	width:960px;
	margin:0 auto 70px;
}
#footer_service ul li{
	width:300px;
}
#footer_service ul li a{
	text-decoration:none;
}
#footer_service ul li a span{
	line-height:40px;
	padding:0 0 0 30px;
	display:block;
	background:url('../images/common/arrow4.svg') no-repeat left center;
}
#footer_other{
	margin:0 auto 70px;
	position:relative;
	padding:0 0 40px;
}
#footer_other1{
	width:960px;
	margin:0 auto 40px;
	display:flex;
	justify-content:space-between;
	list-style:none;
}
#footer_other1 li{
}
#footer_other1 li a{
	display:block;
	padding:0 0 0 20px;
	text-decoration:none;
	background:url('../images/common/arrow3.svg') no-repeat left center;
}
#footer_other1 li a:hover{
	text-decoration:underline;
}
#footer_other2{
	width:960px;
	margin:auto;
	left:0;
	right:0;
	bottom:-40px;
	display:flex;
	justify-content:space-between;
	list-style:none;
	position:absolute;
}
.show_footer_menu1,
.show_footer_menu2{
	width:450px;
	position:relative;
}
.show_footer_menu1 ul,
.show_footer_menu2 ul{
	display:none;
	padding:0 0 0 30px;
	background:#fff;
	position:absolute;
	top:70px;
}
.show_footer_menu1 > a,
.show_footer_menu2 > a{
	display:block;
	border-radius:5px;
	line-height:70px;
	font-size:18px;
	text-decoration:none;
	color:#fff;
	text-align:center;
	background:url('../images/common/arrow4.svg') no-repeat right 20px center;
}
.show_footer_menu1{
	background: linear-gradient(to right,  #adcee8 0%,#1a77be 29%,#1a77be 60%,#92dff6 100%,#4c9ad0 100%);
}
.show_footer_menu2{
	background: linear-gradient(to right, #aeeac6 0%,#56c8af 29%,#32bba4 60%,#92dff6 100%,#c9ede8 100%);
}
.show_footer_menu1 ul a,
.show_footer_menu2 ul a{
	display:block;
	line-height:30px;
}
footer h3{
	text-align:center;
	margin:0 auto 50px;
}
.footer_inner{
	display:flex;
	text-shadow: 
	    #fff 2px 0px,  #fff -2px 0px,
	    #fff 0px -2px, #fff 0px 2px,
	    #fff 2px 2px , #fff -2px 2px,
	    #fff 2px -2px, #fff -2px -2px,
	    #fff 1px 2px,  #fff -1px 2px,
	    #fff 1px -2px, #fff -1px -2px,
	    #fff 2px 1px,  #fff -2px 1px,
	    #fff 2px -1px, #fff -2px -1px;
}
footer .fll,
footer .flr{
	width:50%;
	flex:none;
	box-sizing:border-box;
	margin:0 auto;
	padding:0px 0 0px;
	display:flex;
}
/*
.footer_inner .fll{
	background:url('../images/common/footer1.webp') no-repeat left center;
	background-size:auto 100%;
}
.footer_inner .flr{
	background:url('../images/common/footer2.webp') no-repeat right center;
	background-size:auto 100%;
}
*/
footer address{
	width:375px;
	box-sizing:border-box;
	font-style:normal;
	line-height:1.8em;
}
footer address h4{
	font-size:30px;
	font-family: "futura-pt", sans-serif;
	font-weight: 400;
	font-style: normal;
	margin:0 auto 10px;
	color:#06677f;
}
footer address h4 span{
	font-size:16px;
	display:block;
}
footer .fll{
	justify-content:flex-end;
}
footer .fll address{
	border-right:1px solid #bebdbd;
}
footer .flr address{
	padding:0 0 0 40px;
}
#fnav{
	display:flex;
	justify-content:space-between;
}
.gotop{
	width:60px;
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 10000;
}

.gotop a {
	display: block;
	text-align:center;
	text-decoration:none;
}

#copyright {
	width:100%;
	line-height:60px;
	margin:0 auto;
	text-align:center;
}
/*
main section{
	opacity: 0;
	transition-duration: 500ms;
	transition-property: opacity, transform;
}
*/
main section:first-child{
	opacity:1 !important;
}
.scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}
.sp_only{
	display:none;
}