@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,700;1,400&family=Noto+Serif+JP:wght@400;700&family=Noto+Sans+JP:wght@300,400;700&display=swap');
/* CSS Document */


/* 
------------------------------------------------------------------------------------------------------------------------
Set out
------------------------------------------------------------------------------------------------------------------------
*/

*:not(select):not(input), *:before, *:after {
    margin: 0;
    padding: 0;
	border: 0;
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
html, body {
	width:100%;
	margin:0;
	padding:0;
	overflow-x:hidden;
}
body {
	font-size:16px;
	font-family: 'Noto Sans JP', sans-serif;
	line-height:1.8;
  background: #f2f2f3;
	color:#727171;
	-webkit-text-size-adjust: 100%;
}

.clearfix:after {
    content:"";
    display:block;
    clear:both;
}
.clear {
	clear:both;
}

.serif {
	font-family: 'Noto Serif JP', sans-serif;
}

li {
	list-style-type:none;
}
img {
	max-width:100%;
	height: auto;
	margin:0;
	padding:0;
	vertical-align:bottom;
	transition:.3s;
}
a {
	text-decoration:none;
	color:#505050;
	transition:.3s;
}
a:hover {
	opacity:0.8;
	text-decoration:border;
	transition:.3s;
}
a:hover img.noTrans{
	opacity:1.0!important;
}
a:hover img{
	opacity:0.8;
	transition:.3s;
}
h1,h2,h3,h4,h5,h6 {
	font-weight:bold;
	letter-spacing:normal;
}
h1 a:hover img {
	opacity:1;
}

.align {
	text-align:center!important;
}
.align_left {
	text-align:left!important;
}
.align_right {
	text-align:right!important;
}

.bold {
	font-weight:bold;
}
.font_s {
	font-size:12px;
}

.mb0 {margin-bottom:0px!important;}

.mb10 {margin-bottom:10px!important;}

.mb15 {margin-bottom:15px!important;}
.mb20 {margin-bottom:20px!important;}
.mb30 {margin-bottom:30px!important;}
.mb50 {margin-bottom:50px!important;}
.mb80 {margin-bottom:80px!important;}
.mb100 {margin-bottom:100px!important;}
.mb200 {margin-bottom:200px!important;}
.pb30 {padding-bottom:30px!important;}
.pt30 {padding-top:30px!important;}
.pt50 {padding-top:50px!important;}

.in {display:none;}

.fs12 {font-size:12px!important;}
.fs20 {font-size:20px!important;}
.lineheight3 {line-height: 3.0!important;}

.w50 {width:50%!important;}
.w60 {width:60%!important;}
.w70 {width:70%!important;}
.w80 {width:80%!important;}
.w90 {width:90%!important;}



@media screen and (max-width:768px){
	body {
		background: #fff;
	}
	.in {display:block;}
	.out {display:none;}
}

@media screen and (min-width: 768px) {
	a[href^="tel:"] {
			pointer-events: none;
	}
}




/* 
------------------------------------------------------------------------------------------------------------------------
Layout 
------------------------------------------------------------------------------------------------------------------------
*/

.base {
	width:90%;
	max-width:1000px;
	margin: 5vw auto 0 auto;
}

.wrap {
	width:90%;
	max-width:1400px;
	margin-left:auto;
	margin-right:auto;
	box-sizing:content-box;
}

.wraps {
	width:90%;
	max-width:1200px;
	margin-left:auto;
	margin-right:auto;
	box-sizing:content-box;
}

.wrapss {
	width:90%;
	max-width:960px;
	margin-left:auto;
	margin-right:auto;
	box-sizing:content-box;
}



/* 
------------------------------------------------------------------------------------------------------------------------
header
------------------------------------------------------------------------------------------------------------------------
*/
header{
	width:100%;
	margin: 0;
	transition: 0.5s ;
	text-align: center;
	border-radius: 25px 25px 0 0;
	background: #0080c8;
}
header img {
	width:70%;
	max-width: 320px;
	padding:15px 15px 50px 15px;
}



/* 
------------------------------------------------------------------------------------------------------------------------
Footer
------------------------------------------------------------------------------------------------------------------------
*/

div.close {
	text-align: center;
	margin: auto;
}
div.close input[type="button"] {
	margin: 0 auto;
	background: #0080c8;
	border:none;
	border-radius: 8px;
	color:#fff;
	font-size:20px;
	padding: 6px;
	width:90%;
	cursor: pointer;
}


footer {
	background: #fff;
}

.copyright {
	padding:15px;
	text-align: center;
	font-size: 14px;
}

@media screen and (max-width:768px){

	div.footInner {
		padding: 50px 0;
	}
	.copyright {
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}
	.copyright img {
		width:60px;
		margin-right:0px;
		margin-bottom:40px;
	}

}




/* 
------------------------------------------------------------------------------------------------------------------------
Content
------------------------------------------------------------------------------------------------------------------------
*/

.main {
	position: relative;
	width:100%;
	margin: -25px 0 0 0;
	padding: 5%;
	border-radius: 25px 25px 0 0;
	background: #fff;
	z-index: 999;
}

.main h3 {
	text-align: center;
	font-size:28px;
	margin-bottom:10px;
}

.main .mobileBlock {
	margin-bottom:50px;
}

.main .mobileBlock ul {
	width:100%;
	margin: 0 auto;
	padding: 5%;
	border-radius: 25px;
	background: #f2f2f3;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.main .mobileBlock ul li {
	width:48%;
	text-align: center;
	font-size:32px;
}

.main .mobileBlock ul li a {
	font-size:36px;
	display: block;
	padding:10px 30px;
	background: #fff;
	border-radius: 50px;
	color: #0080c8;
	font-weight: bold;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, .5);
	margin-top:10px;
}
.main .mobileBlock ul li a::before {
	content: '';
  display: inline-block;
  vertical-align: middle;
  width: 38px;
  height: 38px;
  background-image: url("../img/icon_tel.png");
  background-size: contain;
	background-repeat: no-repeat;
	margin-right:12px;
	margin-bottom:6px;
}

.main .generalBlock {
	padding-bottom:40px;
}
.main .generalBlock p.tel {
	text-align: center;
	font-size:32px;
	color: #0080c8;
	font-weight: bold;
}
.main .generalBlock p.tel span {
	font-size:36px;
	padding:10px 30px;
	background: #f2f2f3;
	border-radius: 50px;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, .5);
}
.main .generalBlock p.tel span::before {
	content: '';
  display: inline-block;
  vertical-align: middle;
  width: 38px;
  height: 38px;
  background-image: url("../img/icon_tel.png");
  background-size: contain;
	background-repeat: no-repeat;
	margin-right:12px;
	margin-bottom:6px;
}

@media screen and (max-width:768px){

	.main h3 {
		font-size:20px;
	}

	.main .mobileBlock {
		margin-bottom:30px;
	}
	.main .mobileBlock ul li {
		width:100%;
		margin-bottom:20px;
		font-size:22px;
	}
	.main .mobileBlock ul li a {
		font-size:26px;
		padding:10px 20px;
	}
	.main .mobileBlock ul li a::before {
		width: 32px;
		height: 32px;
	}
	
	.main .generalBlock p.tel {
		font-size:22px;
	}
	.main .generalBlock p.tel span {
		padding:10px 20px;
		font-size:26px;
	}

}
