@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
vertical-align: baseline;
font-weight: 300;
color: black;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
body {
line-height: 1;
-webkit-text-size-adjust: none;
}
ol, ul {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
table {
border-collapse: collapse;
border-spacing: 0;
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
    cursor: pointer;
}

html, body { height: 100%; width:100%; }
/*==========================================================
  ボックス
==========================================================*/
#body {
  margin: 0px;
  padding: 0px;
  border:0px;
  text-align: center;
}

h1, h2, h3, h4, h5, h6 {}
p {}


img {
  margin: 0px;
  padding: 0px;
  border: 0px;
}

.floatleft{
	float: left;
}

.floatright{
	float: right;
}

.marginTB1{
	margin: 1em 0;
}

.marginTB2{
	margin: 2em 0;
}
.clearfix:after {
	content: "."; 
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*¥*//*/
	height: auto;
	overflow: hidden;
	/**/
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;
}
/*==========================================================
  テキストサイズ
==========================================================*/
.text9 { font-size:9px; }
.text10 { font-size:10px; }
.text11 { font-size:11px; }
.text12 { font-size:12px; }
.text13 { font-size:13px; }
.text14 { font-size:14px; }
.text15 { font-size:15px; }
.text16 { font-size:16px; }
.text17 { font-size:17px; }
.text18 { font-size:18px; }
.text19 { font-size:146.5%; }
.text20 { font-size:153.9%; }
.text21 { font-size:21px; }
.text22 { font-size:167%; }
.text23 { font-size:174%; }
.text24 { font-size:182%; }
.text25 { font-size:189%; }
.text26 { font-size:197%; }

.bold{font-weight: bold;}

p,td {
  font-size:1em;
font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 300;
	line-height: 2em;
}

a {
font-size:1em;
font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	text-decoration:none;
    font-weight: 300;
}
a:visited {
}
a:hover {
}

h1 {
font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size:48px;
  font-weight: 300;
  line-height: 1.8em;
}

h2 {
font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size:1,7em;
  line-height: 1.8em;
  font-weight: 300;
}

h3 {
font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size:1.5em;
  line-height: 1.8em;
  font-weight: 300;
}

h2 img {
	vertical-align:middle;
	margin-right: 0.2em;
}

h5 {
font-family: "Noto Sans JP", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size:100%;
  color: #1A1A1A;
  line-height: 1.8em;
}

.center{
	text-align: center;
}

.right{
	text-align: right;
}

h1 {
  font-size: 2.5em;
  font-weight: 300;
  line-height: 1.5;
  padding:1em 0;
  text-align: center;
}

		h2 {
  font-size: 2em;
  font-weight: 300;
  line-height: 1.8;
  padding: 0 ;
  text-align: center;
}
		h4 {
  font-size: 1.2em;
  font-weight: 300;
  line-height: 1.8;
  padding: 0.5em 0;
  text-align: center;
}
/*==========================================================
  改行
==========================================================*/
@media screen and (min-width: 750px){
  .br-pc { display:block; }
  .br-sp { display:none; }
}
	
@media screen and (max-width:750px){
  .br-pc { display:none; }
  .br-sp { display:block; }
}

/*===============================================
画面の横幅が769px以上（パソコン用）
===============================================*/
@media screen and (min-width: 751px){

}



/*===============================================
画面の横幅が640pxまで（スマホ用）
===============================================*/
@media screen and (max-width:750px){
h1{
font-size: 2em;
}
h2{
font-size: 1.2em;
}
h4{
font-size: 1em;
}
p,td {
  font-size: 0.8em;
}
}

/* ヘッダー */
		header{
position: fixed;
width: 100%;
z-index: 9;
height: 100px;
text-align: left;
}
		
		.fixed{
background-image: linear-gradient(0deg, rgba(0, 103, 135, 0)20%,rgba(0, 103, 135, 1) 100%);
position: fixed;
top: 0;
left: 0;
}
		
		header img{
			width: 350px;
			padding: 1em;
            margin-left: 30px;
		}
@media screen and (max-width:750px){
header img{
width: 200px;
padding: 1em;
margin-left: 0px;
}
}
/* ハンバーガー（ナビゲーション）メニュー */

#Menu{
width: 100%;
height: 100%;
position: fixed;
z-index: -1;
		}
main {
  height: 100%;
  position: relative;
  overflow: hidden;
}

label p{
    color:#FFF;
}
.aside-section {
  top: 0;
  bottom: 0;
  position: absolute;
}

.aside-list li a span{
 color:#FFF!important;
}

.aside-left {
  display: none;
  width: 70%;
  left: 0;
  background-image: url('../img/menuback1.jpg');
background-repeat: no-repeat;
background-size: cover;
background-position: center right;
  -webkit-transform: translateY(-100%);
  -moz-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  -o-transform: translateY(-100%);
  transform: translateY(-100%);
  transition: transform 0.4s ease-in-out;
}

.aside-right {
  width: 100%;
  right: 0;
  background-image: url('../img/menuback2.jpg');
background-repeat: no-repeat;
background-size: cover;
background-position: center left;
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%);
  transition: transform 0.4s ease-in-out;
}


.aside-list {
  list-style: none;
  padding: 150px 0 0 15%;
  margin: 0;
  text-align: left;
}

.menuB{
    padding: 0 0 0 15%;
  margin: 0;
    text-align: left;
}

.menuB p,
.menuB a{
   color: #FFF; 
        }

.menuB .TELNo a{
    font-size: 1.2em;
    margin-left: 0.5em;
        }
        
.aside-content {
  margin: 0;
  padding: 0 0px;
  position: relative;
  height: 100%;
}

.aside-content img{
display: block;
position: absolute;
  top: 50%;
  left: 10%;
  transform: translateY(-50%);
}
.aside-list li {
  margin-bottom: 30px;
}

.navLinkFont li .button span:nth-child(1) {
		position: absolute;
	opacity: 0;
	font-size:1,2em;
	line-height: 1em;
	-webkit-transform: translateX(200px);
	-moz-transform: translateX(200px);
	-o-transform: translateX(200px);
	transform: translateX(200px);
	-webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}
.navLinkFont li .button span:nth-child(2) {
		position: relative;
	opacity: 1;
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-o-transform: scale(1);
	transform: scale(1);
	-webkit-transition: all 0.5s ease-in-out;
    -moz-transition: all 0.5s ease-in-out;
    -o-transition: all 0.5s ease-in-out;
    transition: all 0.5s ease-in-out;
}

.navLinkFont li .button:hover span:nth-child(1) {
	opacity: 1;
	-webkit-transform: translateX(0px);
	-moz-transform: translateX(0px);
	-o-transform: translateX(0px);
	transform: translateX(0px);
}

.navLinkFont li .button:hover span:nth-child(2) {
	-webkit-transform: scale(1.5) translateX(50px);
	-moz-transform: scale(1.5) translateX(50px);
	-o-transform: scale(1.5) translateX(50px);
	transform: scale(1.5) translateX(50px);
	opacity: 0;
}



input[type="checkbox"] {
  display: none;
}

input[type="checkbox"]:checked ~ #Menu {
  z-index: 20;
}

input[type="checkbox"]:checked ~ #Menu main aside .aside-left {
  transform: translateY(0%);
}

input[type="checkbox"]:checked ~ #Menu main aside .aside-right {
  transform: translateX(0%);
}

input[type="checkbox"]:checked ~ label .bar {
  background-color: #FFF;
}

input[type="checkbox"]:checked ~ label .top {
  -webkit-transform: translateY(0px) rotateZ(45deg);
  -moz-transform: translateY(0px) rotateZ(45deg);
  -ms-transform: translateY(0px) rotateZ(45deg);
  -o-transform: translateY(0px) rotateZ(45deg);
  transform: translateY(0px) rotateZ(45deg);
  background-color: #FFF;
}

input[type="checkbox"]:checked ~ label .bottom {
  -webkit-transform: translateY(-15px) rotateZ(-45deg);
  -moz-transform: translateY(-15px) rotateZ(-45deg);
  -ms-transform: translateY(-15px) rotateZ(-45deg);
  -o-transform: translateY(-15px) rotateZ(-45deg);
  transform: translateY(-15px) rotateZ(-45deg);
  background-color: #FFF;
}

input[type="checkbox"]:checked ~ label .middle {
  width: 0;
}

label p {
  color: #FFF;
}

input[type="checkbox"]:checked ~ label p {
  color: #FFF;
}
.middle {
  margin: 0 auto;
}

label {
  top: 10px;
	right: 10px;
  display: inline-block;
  padding: 7px 10px;
  background-color: transparent;
  cursor: pointer;
  margin: 0px;
  z-index: 100;
  position: fixed;
}
@media screen and (max-width:750px){
label {
  top: 0;
	right: 0;
}
}

.bar {
  display: block;
  background-color: #FFF;
  width: 30px;
  height: 3px;
  border-radius: 5px;
  margin: 5px auto;
  transition: background-color 0.4s ease-in, transform 0.4s ease-in,
    width 0.4s ease-in;
}



@media (min-width: 992px) {
  .aside-left {
    display: block;
  }

  .aside-right {
    width: 30%;
  }
  


}
/* ボタンオープン（リンク用） */
.marginB1 {
  padding: 1em 0 2em;
  display: block;
  overflow: hidden;
}

	.btn-open {
  display: inline-block;
width: 300px;
  height:60px;
  text-align: center;
  background-color: rgba(0,103,135,1.00);
  font-size: 16px;
  line-height: 52px;
  color: #FFF;
  text-decoration: none;
  font-weight: bold;
  border: 2px solid rgba(0,103,135,1.00);
  position: relative;
  overflow: hidden;
  z-index: 1;
		margin: 0 1em;
}
#main p a.btn-open{
	color: #FFF;
}
.btn-open:after{
  width: 100%;
  height: 0;
  content:"";
  position: absolute;
  top: 50%;
  left: 50%;
  background : #FFF;
  opacity: 0;
  transform: translateX(-50%) translateY(-50%) rotate(45deg);
  transition: .2s;
  z-index: -1;
}
	.btn-open{
		color: white;
	}
	
	.btn-open:visited{
		color: white;
	}
	
.btn-open:hover{
  color: rgba(0,103,135,1.00);
}
#Section4 p a.btn-open:hover{
  color: rgba(0,103,135,1.00);
}
.btn-open:hover:after{
  height: 400%;
  opacity: 1;
}
.btn-open:active:after{
  height: 340%;
  opacity: 1;
}


/* footer */
		#Section6{
        margin: 0;
        padding: 0;
			background-color:rgba(0,103,135,1.00);
            text-align: center;
		}
        #Section6 img{
			width: 100%;
            margin: 0;
            padding: 0;
            display: block;
		}
        
        #Section6 h3,
        #Section6 p a,
        #Section6 p{
        color: #FFF;
        }
        
        .Copyright2{
        padding: 2em 0;
        font-size: 0.7em;
        }

.footerNavi{
position: relative;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto 2em;
  display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    text-align: center;
    justify-content: center;
}

.footerNavi li{
border-right: 1px solid #FFF;
padding: 0 1.5em;
}
.footerNavi li:first-child{
border-left: 1px solid #FFF;
}

.footerNavi li a{
color: #FFF
}

.footerNavi li a:hover{
color:rgba(160, 216, 234, 1);
}
@media screen and (max-width:750px){
.footerNavi li{
width: 100%;
border-right: none;
padding: 1em 0;
}

.footerNavi li:first-child{
border-left: none;

}
}
