@charset "utf-8";


/*---------wrapper---------*/

#wrapper {
width: 100%;
margin: 0 auto;
z-index: 600;
overflow: hidden;
}


/*---------header---------*/

header {
width: 100%;
width: 1200px;
margin: 0 auto;
} 

header ul#logo {
float: left;
margin-top: 23px;
font-size: 1.8em;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 500;
width: 400px;
}

header ul#logo a {
color: #009A90;
text-decoration: none;
background: url("../images/common/mark.png") no-repeat left top;
background-size: 17%;
padding: 0 0 0 19%;
}

header ul#nav {
float: right;
width: 785px;
}

header #nav li ul#menu {
float: left;
width: 588px;
}

header #nav li ul#menu li {
position: relative;
width:	30%;
float: left;
margin: 0;
padding: 0;
text-align: center;
}

header #nav li ul#menu li a {
letter-spacing: 0.1em;
display: block;
margin: 0;
padding: 40px 0;
font-size: 16px;
line-height: 1;
text-decoration: none;
}

header #nav li ul#menu li a {
font-size: 16px;
text-decoration: none;
display: block;
color: #222;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 500;
}

header #nav li ul#num {
float: right;
margin: 25px 0 0 0;
background: #009A90;
padding: 1%;
}

header #nav li ul#num p {
color: #fff;
font-size: 18px;
letter-spacing: 0.1em;
text-align: center;
font-weight: 600;
font-family: 'Heebo', sans-serif;
}

@media only screen and (max-width: 1200px) {
header ul#logo {
padding-left: 1%;
}
}


@media only screen and (max-width: 900px) {
header {
display: none;
}
}


/*---------spnavi---------*/

#spnavi {
display: none;
overflow: hidden;
}

#splogo {
position: absolute;
top: 10px;
padding: 6px 0 8px 11%;
margin: 0 0 0 2%;
font-size: 1.4em;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 500;
text-decoration: none;
color: #009A90;
background: url("../images/common/mark.png") no-repeat left top 50%;
background-size: 13.5%;
}


/*---------mainimg---------*/
	
#mainimg {
clear:both;
background: url("../images/top/mainimg01.jpg")no-repeat center center;
background-size: cover;
height: 100vh;
position: relative;
}

#mainimg img{
display: block;
margin: 0 auto 0 auto;
padding: 10% 0 0 0;
text-align: center;
}

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

#mainimg img{
display: block;
margin: 0 auto 0 auto;
padding: 20% 0 0 0;
text-align: center;
width: 90%;
}

}

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

#mainimg img{
display: block;
margin: 0 auto 0 auto;
padding: 20% 0 0 0;
text-align: center;
width: 95%;
}

}
@media only screen and (max-width: 800px) {

#mainimg img{
display: block;
margin: 0 auto 0 auto;
padding: 40% 0 0 0;
text-align: center;
width: 98%;
}

}

/*---------underimg---------*/

.undertitle ul.title {
width: 100%;
max-width: 1200px;
margin: 0 auto;
}

.undertitle ul.title h2 {
font-size: 33px;
letter-spacing: 0.15em;
color: #fff;
padding-top: 85px;
font-weight: 500;
}

#undermainimg .sub {
font-size: 15px;
letter-spacing: 0.15em;
color: #fff;
}

#undermainimg {
position: relative;
overflow: hidden;
height: 250px;
width: 100%;
background: rgb(1,152,145);
background: linear-gradient(90deg, rgba(1,152,145,1) 0%, rgba(1,48,130,1) 100%);
margin-bottom: 30px;
transition-property: height, width,top, left, color, background;
transition-duration:0.45s;
}

@media only screen and (max-width: 1200px) {
.undertitle ul.title  {
max-width: 95%;
}
}

@media only screen and (max-width: 800px) {
.undertitle ul.title  {
max-width: 95%;
}
	
.undertitle ul.title h2 {
font-size: 24px;
padding-top: 50px;
}

.undertitle .sub {
font-size: 12px;
max-width: 95%;
}
	
#undermainimg {
height: 150px;
}
}


/*---------contents---------*/

#contents {
max-width: 1200px;
width: 100%;
margin: 0 auto;
box-sizing: border-box;
transition-duration:0.4s;
}

@media only screen and (max-width: 1200px) {
#contents{
padding: 0 3%;
}
}


/*---------title---------*/

h3.mt01 {
border-bottom: 2px solid #009a90;
margin-bottom: 20px;
font-size: 32px;
letter-spacing: 0.06em;
text-align: center;
padding: 0.7% 0.5%;
color: #009a90;
}

h3.mt02 {
font-weight: 700;
font-size: 42px;
font-family: 'Noto Serif JP', serif;
text-align: center;
margin: 0 auto 20px auto;
color:#009A90;
letter-spacing: 0.03em;
}

h3.mt03 {
font-weight: 700;
font-size: 42px;
font-family: 'Noto Serif JP', serif;
text-align: center;
margin: 0 auto 20px auto;
color:#fff;
letter-spacing: 0.03em;
text-shadow: 0 0 8px #000;
}

h4.st01 {
color: #fff;
background: #009A90;
margin-bottom: 20px;
font-size: 19px;
letter-spacing: 0.06em;
padding: 0.9%;
border-radius: 1px;
}

@media only screen and (max-width: 800px) {
h3.mt01 {
margin-bottom: 20px;
font-size: 24px;
}

h3.mt02 {
font-size: 27px;
margin-bottom: 13px;
}

h3.mt03 {
font-size: 27px;
margin-bottom: 13px;
text-shadow: 0 0 8px #000;
}

h4.st01 {
margin-bottom: 20px;
font-size: 16px;
padding: 9px;
}
}


/*---------footer---------*/

#footer {
width: 100%;
background: #009A90;
margin: 5% auto 0 auto;
}

#footer .footerbox {
max-width: 1200px;
margin: 0 auto;
}

#footer .footerbox ul.infobox {
float: left;
width: 44%;
padding: 2% 0;
}

#footer .footerbox h1 {
font-size: 1.8em;
text-align: center;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 500;
letter-spacing: 0.08em;
color:#ffffff;
background: url("../images/common/ft_mark.png") no-repeat left top 52%;
background-size: 15%;
padding: 2% 0 2% 4.8%;
display: block;
margin: 0 auto 0 auto;
width: 29%;
}

#footer .footerbox ul.infobox p.address {
line-height: 145%;
font-size: 17px;
letter-spacing: 0.08em;
padding: 0 0 10px 0;
margin: 0 0 10px 0;
color:#ffffff;
border-bottom: 1px #fff dotted;
}

#footer .footerbox ul.infobox p.address2 {
line-height: 145%;
font-size: 17px;
letter-spacing: 0.08em;
padding: 0 0 40px 0;
color:#ffffff;
}

#footer .footerbox ul.infobox p a {
font-size: 15px;
letter-spacing: 0.08em;
text-decoration: none;
color:#ffffff;
}

#footer .footerbox ul.infobox li.copy {
font-weight: 500;
font-size: 12px;
letter-spacing: 0.12em;
color:#ffffff;
}

#footer .footerbox ul.ftnavi {
float: right;
width: 25%;
padding: 2% 0 3% 0;
}

#footer .footerbox ul.ftnavi li {
float: left;
margin-right: 32px;
}

#footer .footerbox ul.ftnavi li p {
line-height: 250%;
letter-spacing: 1px;
font-weight: bold;
color:#fff;
}

#footer .footerbox ul.ftnavi li p a {
font-size: 16px;
font-weight: bold;
text-decoration: none;
color:#fff;
}


#footer .footerbox .ftsdgs{
float: none;
clear: both;
margin: 20px 0 0 0;
}

@media only screen and (max-width: 1000px) {
#footer .footerbox h1 {
font-size: 1.5em;
text-align: center;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 500;
letter-spacing: 0.08em;
color:#ffffff;
background: url("../images/common/ft_mark.png") no-repeat left top 70%;
background-size: 14%;
padding: 5% 0 2% 4%;
display: block;
margin: 0 auto 0 auto;
width: 90%;
}


}

@media only screen and (max-width: 800px) {
	
#footer {
padding: 0 3%;
text-align: center;
}

#footer .footerbox {
width: 100%;
max-width: 100%;
}

#footer .footerbox ul.infobox {
width: 95%;
margin: 0 auto;
}

#footer .footerbox h1 {
font-size: 1.5em;
text-align: center;
font-family: 'Noto Sans JP', sans-serif;
font-weight: 500;
letter-spacing: 0.08em;
color:#ffffff;
background: url("../images/common/ft_mark.png") no-repeat left top 70%;
background-size: 14%;
padding: 5% 0 2% 4%;
display: block;
margin: 0 auto 0 auto;
width: 95%;
}
#footer .footerbox ul.infobox p.address {
line-height: 145%;
font-size: 13px;
letter-spacing: 0.08em;
padding: 0 0 10px 0;
margin: 0 0 10px 0;
color:#ffffff;
border-bottom: 1px #fff dotted;
}

#footer .footerbox ul.infobox p.address2 {
line-height: 145%;
font-size: 13px;
letter-spacing: 0.08em;
padding: 0 0 20px 0;
color:#ffffff;
}

#footer .footerbox ul.infobox p a {
font-size: 13px;
letter-spacing: 0.08em;
text-decoration: none;
color:#ffffff;
}

#footer .footerbox ul.ftnavi {
display: none;
}

#footer .footerbox ul.infobox li.copy {
padding: 1% 2%;
font-size: 11px;
}
	
}