@charset "UTF-8";
html{color:#000;background:#FFF}body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td{margin:0;padding:0}table{border-collapse:collapse;border-spacing:0}fieldset,img{border:0}address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;font-weight:normal}ol,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;font-variant:normal}sup{vertical-align:text-top}sub{vertical-align:text-bottom}input,textarea,select{font-family:inherit;font-size:inherit;font-weight:inherit;*font-size:100%}legend{color:#000}*{-webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}

html {
	display: block;
	width: 100vw;
	height: 100vh;
	margin: 0;
	padding: 0;
	}

body {
	position: relative;
	display: block;
	width: 100vw;
	height: 100vh;
	margin: 0;
	color: #333;
	font-family: system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic UI","Segoe UI",Meiryo,sans-serif;
	font-weight: Thin;
	}

#wrap {
	width: 100vw;
	height: 100vh;
	padding: 5vw;
	background: url(../img/bg.jpg) center center no-repeat;
	background-size: cover;
	}

h1 {
	display: block;
	width: 100%;
	margin: 0;
	padding: 0 0 1vw 0;
	text-align: center;
	}
@media screen and (max-width: 767.98px){
#mv img.logo {
	width: 250px;
	}
}
@media screen and (orientation: portrait) and (max-width:1024px){
h1 {
	padding: 0 0 5vw 0;
	}
}

h1 img {
	display: inline-block;
	width: 60%;
	height: auto;
	animation: h1logo 3s ease .5s both;
	}
@keyframes h1logo {
	0% { opacity: 0; transform: translateY(20px); }
	99% { opacity: 1; transform: translateY(0px); }
	100% { opacity: 1; }
	}
@media screen and (orientation: portrait) and (max-width:1024px){
h1 img {
	width: 90%;
	}
}

h2 {
	margin: 0;
	padding: 0 0 1vw 0;
	font-size: 1.5vw !important;
	text-align: center;
	animation: welcome 3s ease 1s both;
	}
@keyframes welcome {
	0% { opacity: 0; transform: translateY(-20px); }
	99% { opacity: 1; transform: translateY(0px); }
	100% { opacity: 1; }
	}
@media screen and (orientation: portrait) and (max-width:1024px){
h2 {
	padding: 0 0 2vw 0;
	font-size: 5vw !important;
	}
}

p {
	margin: 0;
	padding: 0 0 1vw 0;
	font-size: 1.25vw;
	text-align: center;
	animation: info 3s ease 3s both;
	}
@keyframes info {
	0% { opacity: 0; }
	99% { opacity: 1; }
	100% { opacity: 1; }
	}
@media screen and (orientation: portrait) and (max-width:1024px){
p {
	padding: 0 0 1vw 0;
	font-size: 4vw;
	}
}

.inner {
	display: flex;
	flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
	}

.inner div {
	width: 50%;
	padding: 0 20px;
	}

.inner h3 {
	text-align: center;
	}

ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	animation: namelist 3s ease 3s both;
	}
@keyframes namelist {
	0% { opacity: 0; }
	99% { opacity: 1; }
	100% { opacity: 1; }
	}

li {
	display: block;
	padding: 1vw;
	width: calc(100% / 2);
	}
@media screen and (orientation: portrait) and (max-width:767px){
li {
	padding: 2vw;
	}
}

li a {
	display: block;
	padding: 2vw 0;
	text-align: center;
	color: #fff;
	font-size: 2vw;
	line-height: 1em;
	text-decoration: none;
	white-space: nowrap;
	background: #114a8b;
	border-left: 2px solid #2c6ab1;
	border-top: 2px solid #2c6ab1;
	border-right: 2px solid #06366d;
	border-bottom: 2px solid #06366d;
	border-radius: 10px;
	box-shadow: 0 3px 5px rgba(0,0,0,.5);
	transition: .3s ease;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
li a {
	padding: 3vw 0;
	font-size: 4vw;
	border-radius: 5px;
	box-shadow: 0 1px 3px rgba(0,0,0,.5);
	}
}

li a:hover {
	color: #fff;
	text-decoration: none;
	background: #2767af;
	}

li a span {
	display: block;
	padding: .25em 0 0 0;
	font-size: 1.5vw;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
li a span {
	padding: .5em 0 0 0;
	font-size: 3vw;
	}
}

#callMmodal {
	background: rgba(0,0,0,.8);
	}

#callMmodal .modal-dialog {
	position: absolute;
	left: 50% !important;
	top: 50% !important;
	transform: translate(-50%,-50%) !important;
	margin: 0 !important;
	padding: 0 !important;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
#callMmodal .modal-dialog {
	width: 90%;
	}
}

#callMmodal .modal-content {
	padding: 2vw;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
#callMmodal .modal-content {
	padding: 5vw;
	}
}

#callMmodal .modal-header {
	display: block;
	margin: 0;
	padding: 0;
	border: 0;
	}

#callMmodal .modal-header h5 {
	display: block;
	margin: 0;
	padding: 0;
	font-size: 1.5vw;
	text-align: center;
	line-height: 1em;
	background: #fff;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
#callMmodal .modal-header h5 {
	font-size: 4vw;
	}
}

#callMmodal .modal-body {
	display: block;
	margin: 0;
	padding: 2vw 7vw;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
#callMmodal .modal-body {
	padding: 4vw 2vw;
	}
}

#callMmodal #btnCall {
	display: block;
	padding: 1vw 0;
	text-align: center;
	color: #fff;
	font-size: 2vw;
	line-height: 1em;
	text-decoration: none;
	white-space: nowrap;
	background: #114a8b;
	border-left: 2px solid #2c6ab1;
	border-top: 2px solid #2c6ab1;
	border-right: 2px solid #06366d;
	border-bottom: 2px solid #06366d;
	border-radius: 100px;
	box-shadow: 0 3px 5px rgba(0,0,0,.5);
	transition: .3s ease;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
#callMmodal #btnCall {
	padding: 4vw 0;
	font-size: 5vw;
	border-radius: 10px;
	}
}

#callMmodal #btnCall:hover {
	color: #fff;
	text-decoration: none;
	background: #2767af;
	}

#callMmodal #btnCall img {
	display: block;
	width: 50px;
	height: 50px;
	margin: 0 auto 1vw auto;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
#callMmodal #btnCall img {
	width: 100px;
	height: 100px;
	margin: 0 auto 3vw auto;
	}
}

#callMmodal .modal-footer {
	display: block;
	margin: 0;
	padding: 0;
	text-align: center;
	border: 0;
	}

#callMmodal .modal-footer #btnCallClose {
	display: block;
	margin: 0 auto;
	padding: 1vw 2vw;
	font-size: 1.2vw;
	text-align: center;
	background: #ccc;
	border-radius: 60px;
	border: 0;
	background: #eee;
	transition: .3s ease;
	}
@media screen and (orientation: portrait) and (max-width:1024px){
#callMmodal .modal-footer #btnCallClose {
	font-size: 3vw;
	border-radius: 10px;
	}
}

#callMmodal .modal-footer #btnCallClose:hover {
	background: #ccc;
	}
