@charset "utf-8";
/*@font-face{
	font-family: "TanukiM";
	src:url("TanukiMagic.woff2")format("woff2");
}*/

body{
font-family: /*-apple-system, BlinkMacSystemFont, verdana,
 "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, Sans-Serif; */
 -apple-system,BlinkMacSystemFont,"Helvetica Neue","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
}
/*.header-copywrap p{
	font-family: "";
}*/

*{
	margin: 0;
	padding: 0;
}

-box-sizing: border-box-
html {
  box-sizing: border-box;
}
*, *::before, *::after {
  box-sizing: inherit;
}
/*-----------------------------------*/
html,body{
	 font-size: 16px;
	 background: white;
	 box-sizing: border-box;
}
.wrap{
	 width: 100%;
	 background: white;
	 display: flex;
     flex-direction: column;
	 min-height: 100vh;	 
}

.headerpc{
	 max-width: 1140px;
	 margin: 0 auto;
	 display: flex;
	 height: 3.7rem;
}

.header-logo{
	 margin:0.5rem 0 0 1rem; 
	 transition: all 0.1s;
}
.header-logo:hover{
	 opacity: 0.6;
}
.header-logo img{
     width: 12rem;
     height: auto;
}
.header-copy{
	 flex: 2;
}
.header-copywrap{
	 margin:0.7rem 0 0 0; 
	 text-align: right;
	 padding-right: 3rem;
}
.copy{
	 font-family: vdl-v7mincho, sans-serif;
	 font-weight: 700;
	 font-style: normal;
	 color: #595757;
	 line-height: 1.5rem;
}
.copy>br{
	 display: none;
}
.header-copywrap ul{
	 font-size: 0.8rem;
	 display: flex;
	 list-style: none;
	 justify-content: flex-end;
}
.header-copywrap ul li {
     margin-left: 1.3rem;
}
.header-copywrap ul li a{
	 color:#3079ed;
	 font-family: source-han-sans-japanese, sans-serif;		
	 transition: all 0.2s;
}
.header-copywrap a:hover{
	 color: #33ccff;
}

.header-form{
	 margin:0.6rem 0 0 0; 
	 flex: 0.7;
	 display: flex;
	 flex-direction: column;
	 align-items: center;
}
.form-iform{
	 text-align: center;
	 width: 200px;
	 height: 24px;
	 line-height: 24px;
	 color: white;	
	 background: #3079ed;
	 margin: 2.5px 10px; 
	 transition: all 0.2s;
}

.form-iform:hover{
	 background: #33ccff;
}

.form-iform a{
	 text-decoration:none;
	 color: white;	
}

.mailgyo{
	 color:#426EB5; 
	 font-size: 0.8rem;
	 line-height: 1rem;
	 transition: all 0.2s;
}
.mailgyo a{
     text-decoration-skip-ink: none;	
}
.mailgyo::before{
     display: inline-block;
     width: 1.1rem;
     content:"　";
     background-size: contain;
     background: url("img/mailicon0.svg") no-repeat;
}
.form-mail{
	 color:#3079ed;
}
.form-mail:hover{
	 color: #33ccff;
}

.call p{
	 display: flex;
	 justify-content: center;
	 padding: 0.5rem 0;
	 font-size: 0.9rem;
	 color: #595757;
}
.sankou {
	background-color: #fff;
}
.sankou p{
	 display: flex;
	 justify-content: center;
	 padding: 1rem 0 0.5rem 0;
	 font-size: 0.9rem;
	 letter-spacing: 0.05rem;
	 font-weight: bold;
	 color: #595757;
}
.enditem{
	 max-width: 1140px;
	 margin: 0 auto;
	 background: #F2F2F2;
	 width: 100vw;
}
.enditemin{
	 max-width: 96%;
	 display: flex;	
     justify-content: space-between;
	 flex-wrap: wrap;
	 margin: 0 auto; 
}
.box123{
	 width: 50%;
	 display: flex;
	 padding: 1.5em 0.5em;	
}
.box1{
	 flex-basis:55%;
}
.box2{
	 flex-basis:auto;
	 display: flex;
     justify-content: center;
     align-items: center;	
}	
.box2 img{
	 height: auto;
	 display:block;
}
.box3{
	 flex-basis:3%;	
}
.box456789{
	 width: 50%;
	 color: #595757;
	 padding: 0.5em;
}	
.box456{
	 display: flex;	
	 width: 100%;
	 height: auto;
	 padding-top: 1em;
}	
.box4{
	 flex-basis:3%;	
}
.box5{
	 flex-basis:auto;
	 text-align: left;
	 padding-bottom: 0.6rem;
}
.box6{
	 flex-basis:30%;		
}
.box789{
	 display: flex;	
	 width: 100%;
	 display: none;
}			
.box7{
	 flex-basis:3%;
}
.box8{
	 flex-basis:auto;
	 text-align: left;
	 padding: 0.3em 1.2em;
	 border: solid 1px #CCCCCC;
	 border-radius: 0.3em;
	 background: white;
	 margin-bottom: 0.5em;
}
li .komoji3{
	 font-size: 0.6rem;	
}
.box9{
	 width: 30%;		
}
.box5 ul li{
	 font-size: 0.8rem;
	 list-style:none;
	 white-space: nowrap;
	 letter-spacing: 0em;
}
.box5 ul li:nth-child(1){
	 font-size: 1.1rem;
	 font-weight: bold;
}
.box5 ul li div{
     display: inline;
}
.box8 ul li{
	 font-size: 0.8rem;
	 list-style:none;
	 white-space: nowrap;
	 letter-spacing: 0em;
}
.box8 ul li:nth-child(1){
	 font-size: 0.9rem;
	 font-weight: bold;
	}
.box8 ul li div{
     display: inline;
}
.kakaku{
     font-size: 1rem;	
     font-weight: 900;
}		
.box a{
	 color: #3079ed;
	 font-family: source-han-sans-japanese, sans-serif;
	 text-decoration: none;
}
.enditem6{
	 max-width: 1140px;
	 margin: 0 auto;
	 background: #F2F2F2;
}
.enditem6in{
	 max-width: 90%;
	 display: flex;	
	 justify-content: space-between;
	 flex-wrap: wrap;
	 margin: 0 auto;
	 padding-top: 1.1rem;
	 background: #F2F2F2;
}
.box{
	 width: 13%;
	 height: auto;
	 margin-bottom: 0.2rem;
}
.box a img{
	 width: 100%;
	 margin-bottom: 0.07rem;
	 border:solid 0.09rem #3079ed;
	 overflow: hidden;
	 transition: all 0.2s;
}
.box a img:hover{
	 border:solid 0.2rem #22aad4;
}
.box figure{
	 font-size: 0.7rem;
	 text-align: center;
	 margin-bottom: 0.4rem;
	 color:#3079ed;
	 transition: all 0.2s;
}
.komoji{
	 font-size: 0.8rem;
}
.katakana{
	 letter-spacing: -0.1rem;
}
.box figcaption{
	 margin-top: -0.1rem;
	 line-height:1.2;
}
figure:hover{
	 color: #33ccff;	
	 font-weight:900; 
	}
.footerpc{
	 padding-top: 0.5rem;
	 background-color:#1e8ec8; 
	 height: 8rem;
}
.footer1{
	 color: white;
	 letter-spacing: 0.1rem;
	 font-size: 0.8rem;
	 text-align: center;	
	 padding-top: 0.5rem;
	 line-height: 0.8rem;
}
.footer2 ul{
	 display: flex;
	 justify-content: center;
}
.footer2 ul li{
	 color: white;
	 letter-spacing: 0.1rem;
	 font-size: 0.8rem;
	 text-align: center;	
	 padding-top: 0.5rem;
	 line-height: 0.8rem;
	 display: flex;
	 justify-content: center;
}
.footer2 ul li:nth-child(2){
     margin: 0 1.7rem;
}
.footer3 ul{
	 display: flex;
	 justify-content: center;
}
.footer3 ul li{
	 color: white;
	 letter-spacing: 0.1rem;
	 font-size: 0.8rem;
	 text-align: center;	
	 padding-top: 0.5rem;
	 line-height: 0.8rem;
	 display: flex;
	 justify-content: center;
	 transition: all 0.2s;
	 margin-left: 1.6rem;
}
.footer3 ul li:nth-child(1){
	 margin-left: 0;
}
.footer3 ul li:nth-child(4){
	 margin-left: 1rem;
}
.footer3 ul li:nth-child(5){
	 margin-left: 1rem;
}
.footer3 ul li a{
	 color: white;
	 transition: all 0.2s;
}
.footer3 ul li a:hover{
	 color: #33ccff;
}

/*---↓---スマホ用 フッター---↓---*/
.spfooter{
     display:flex;
     flex-direction: row;

}
.spfooter-tel{
	 position: relative;/*リンク範囲を親要素全体に広げる*/
	 padding:0.5em 0 3em;
	 font-size: 1.2rem;
	 letter-spacing: 0.1rem;
	 text-align: center;	
	 line-height: 1.3rem;
	 color: white;
	 background-color:#1e8ec8; 
	 flex:1;
	 border-right: solid 0.1rem white;
}
.footer-tel{
	 font-size: 0.9rem;
	 line-height: 1.2rem;
}
.spfooter-tel a {
	 position: absolute;/*リンク範囲を親要素全体に広げる*/
     top: 0;/*リンク範囲を親要素全体に広げる*/
     left: 0;/*リンク範囲を親要素全体に広げる*/
     width: 100%;/*リンク範囲を親要素全体に広げる*/
     height: 100%;/*リンク範囲を親要素全体に広げる*/
	 padding-top:0.5em;
     text-decoration:none;
	 color: white
}
.spfooter-form{
	 position: relative;/*リンク範囲を親要素全体に広げる*/
	 padding:0.5em 0 3em;
	 font-size: 1.2rem;
	 letter-spacing: 0.1rem;
	 text-align: center;	
	 line-height: 1.3rem;
	 color: white;
	 background-color:#1e8ec8; 
	 flex:1;
	 border-right: solid 0.1rem white;
}
.spfooter-form a {
	 position: absolute;/*リンク範囲を親要素全体に広げる*/
     top: 0;/*リンク範囲を親要素全体に広げる*/
     left: 0;/*リンク範囲を親要素全体に広げる*/
     width: 100%;/*リンク範囲を親要素全体に広げる*/
     height: 100%;/*リンク範囲を親要素全体に広げる*/
	 padding-top:0.5em;
	 text-decoration:none;
	 color: white
}
.footer-form{
	 font-size: 0.9rem;
	 line-height: 0.9rem;
}
/*---↑---スマホ用 フッター---↑---*/

@media screen and (min-width: 768px){
}
/*---↑---PC向け画面サイズ---↑---*/
/*スマホ向け*/
/*---↓---タブレット向け画面サイズ---↓---*/
@media screen and (max-width: 768px){
	.komoji{
		font-size: 0.8rem;
	}
	.box .komoji figcaption{
	     margin-top: -0.3rem;
    }			
	.header-logo img{
	     width: 10rem;
	     height: auto;
	}
    .copy>br{
	     display: none;
    }
	.form-iform{
		 width: 150px;
		 height: 23px;
		 line-height: 23px;
		 margin: 2.4px 10px; 
	}
	.form-iform a{
	     font-size: 0.7rem;
	}

	.mailgyo{
		 color:#426EB5; 
		 font-size: 0.7rem;
		 line-height: 1rem;
	}
	.mailgyo::before{
	     width: 1.1rem;
	     content:"　";
	     background-size: contain;
	     background: url("img/mailicon0.svg") no-repeat;
	}
	.enditem6{
		 max-width: 768px;
	}
	.box{
		 width: 15%;
	}
	.enditem6in{
		 padding-top: 0.9rem;
		 max-width: 95%;
	}
	.header{
		 max-width: 768px;
	}
}

@media screen and (min-width: 668px){
	.headersumaho{
	     display: none;
	}
	.spfooter{
	     display: none;
    }  
}
/*---↑---タブレット向け画面サイズ---↑---*/

/*---↓---スマホ向け画面サイズW667 画面サイズ---↓---*/
@media screen and (max-width: 667.9px){
	.headerpc{
	     display: none;
	}
    .call{
	     display: none;
    }	
    .footerpc{
	     display: none;
    }
    .spfooterue{
	     display: none;	
    }
    .headersumaho{
	     display: flex;
	}
    .header-logo{
	     width: 25%;
	     margin:0.5rem 0 0 0.5rem; 
	}
    .header-logo img{
	     width: 100%;
	     height: auto;
	}	
    .header-copy{
	     margin: auto 0 ; 
	     text-align: right;
	     width: 75%;
    }
    .header-copy p{
	     margin-right: 0.5rem;
    }
    .header-copy ul{
	     font-size: 0.8rem;
	     display: flex;
	     list-style: none;
	     justify-content: flex-end;
	     margin-top: -0.1rem;
    }
    .header-copy ul li {
         margin-right: 0.5rem;
    }

    .header-copy ul li a{
	     color:#3079ed;
	     font-family: source-han-sans-japanese, sans-serif;		
    }
    .header-form {
         margin-top: auto;			
    }
	.borderline{
		 display: none;
	}
	.border{
		 flex-grow:0;
	}
    .info{
		 display: none;
    }
    .enditem{
		 max-width: 666px;
    }
    .enditemin{
         flex-direction: column;	
	     max-width: 98%;
    }
    .box123{
	     width: 96%;
	     margin:  0 auto;
	     padding-top: 0.5em;
		 padding-bottom: 0em;
	}
    .box1{
	     flex-basis:10%;
	}
    .box2{
	     flex-basis:80%;
	     display: flex;
         justify-content: center;
         align-items: center;
	}	
    .box3{
	     flex-basis:10%;	
	}
    .box456789{
	     width: 100%;
	}	
    .box456{
	     width: 96%;
	     margin:  -1rem auto 0  auto;
		/* background-color: #22aad4;*/	 
		 align-items: center;		 
	}	
    .box4{
	     flex-basis:10%;
		/* background-color: crimson;*/
	}
    .box5{
	     width: 80%;
	     padding-left: 0rem;
	     text-align: start;
	     margin: 0 0 0.1rem 0;
	     display: flex;
         justify-content: center;
         align-items: center;
		/* background-color: blanchedalmond;*/
	}
    .box6{
	     flex-basis:10%;
		/* background-color: darkseagreen;*/	
	}
    .box789{
	     width: 80%;
	     margin:  0 auto;
		 /*background-color: chartreuse;*/
	}	
    .box7{
	     flex-basis:10%;	
	}
    .box8{
	     width: 99%;
	     padding: 0.3em 2em 0.5em 2em;
	     text-align: start;
	     margin: 0 0 0.5rem 0;
	     display: flex;
         justify-content: center;
         align-items: center;
	}
    .box9{
	     flex-basis:10%;	
	}			
    .box2 img{
	     width: 95%;
	     height: 95%;
	     display:block;
	     margin:0.2rem 0 0 0;
    }
    .box5 ul li{
	     font-size: 1rem;
	     list-style:none;
    }
    .box5 ul li:nth-child(1){
	     text-align: center;
	     font-size: 1.4rem;
	     font-weight: bold;
	     padding-top:0rem;
	}
    .box8 ul li{
	     font-size: 1rem;
	     list-style:none;
    }
    .box8 ul li:nth-child(1){
	     text-align: center;
	     font-size: 1.1rem;
	     font-weight: bold;
	}
    .enditem6{
		max-width: 666px;
    }
    .box{
		 width: 32%;
    }
    .box figure{
	     font-size: 0.9rem;
	     text-align: center;
	     margin-bottom: 0.4rem;
	     color:#3079ed;
	     transition: all 0.2s;
    }
    .komoji{
	     font-size: 0.9rem;
    }
    .enditem6in{
		 padding-top: 0.7rem;
    }
    .enditem6in{
	     max-width: 96%;
    }
  /* ----↓----ハンバーガー部分----↓----　*/
 input[type="checkbox"] {
	opacity: 0;
	visibility: hidden;
	position: absolute;
  }
  .hamburger {
	display: block;
	width: 40px;
	height: 50px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
  }
  .hamburger span,
  .hamburger span::before,
  .hamburger span::after {
	position: absolute;
	display: block;
	content: "";
	width: 100%;
	height: 3px;
	background-color: #3079ed;
	transition: all 0.5s;
  }
  .hamburger span::before {
	top: -10px;
  }
  .hamburger span::after {
	bottom: -10px;
  }
  input[type="checkbox"]:checked + .hamburger span {
	background-color: transparent;
  }
  input[type="checkbox"]:checked + .hamburger span::before {
	top: 0;
	transform: rotate(45deg);
  }
  input[type="checkbox"]:checked + .hamburger span::after {
	transform: rotate(-45deg);
	bottom: 0;
  }
    /* ======メニューのスタイリング======= */
  .nav {
	     position: fixed;
	     width: 80%;
	     height: 100vh;
	     top: 60px;
	     right: -120%;
	     background-color: #3079ed;
	     color: #fff;
	     padding: 10px 0;
	     transition: all 0.5s;
  }
  .nav__item a {
	     display: block;
	     font-size: 18px;
	     padding: 16px 0 16px 70px;
	     text-transform: uppercase;
	     text-decoration: none;
	     color: #fff;
	     transition: all 0.3s;
  }
  .nav__item a:hover {
	     color: #3079ed;
	     background-color: #fff;
  }
  input[type="checkbox"]:checked ~ .nav {
	     right: 0;
  }
  li {
	     list-style:none;
  }
  .nav ul li:nth-child(6){
	     border-bottom: solid 1.5px #fff; /*枠線・下*/
  }
  /* ---↑-----ハンバーガー部分---↑-----　*/
}
  /*------------↑---W667 画面サイズ---↑------------*/

@media screen and (max-width: 565px){
	.endbun ul li{
		 font-size: 0.7rem;
		 list-style:none;
	}
	.endbun ul li:nth-child(1){
		 font-size: 1rem;
		 font-weight: bold;
	}
    .kategori p{
         font-size: 0.9rem;
    }
}

@media screen and (max-width: 530px){
    .header-logo{
	     width: 128.43px;
	     margin:0.4rem 0 0 0.5rem; 
    }

    .header-copy p{
	     font-size: 0.9rem;
    }
    .header-copy ul{
	     margin-top: -0.3rem;
    }
    .gojyuon{
	     width: 100%;
    }
    .gojyuon p{
	     height: 1.2rem;
	     line-height: 1.2rem;
    }
}

@media screen and (max-width: 500px){
    .address{
	     font-size: 0.7rem;
    }
    .endbun ul li{
	     font-size: 0.7rem;
	     list-style:none;
    }
    .box789{
	     width: 80%;
	}
    .box7{
	     flex-basis:7%;	
	}
    .box9{
	     flex-basis:7%;	
	}
}

@media screen and (max-width: 482px){
    .endgazo img{
	     width: 70%;
	     overflow: hidden;
	     transition: all 0.2s;
	     align-items: center;
    }
}

@media screen and (max-width: 465px){
    .address{
	     font-size: 0.5rem;
    }
}

@media screen and (max-width: 460px){
    .header-copy p{
	     font-size: 0.8rem;
    }
}

@media screen and (max-width: 454px){
	.kategori p{
	     letter-spacing: -0.05rem;
	     font-size:0.9rem; 
	     height: 1.2rem;
	     line-height: 1.2rem;
    }
	.gojyuon p{
	     height: 1.2rem;
	     line-height: 1.2rem;
    }
}

@media screen and (max-width: 430px){
    .header-copy p{
	     font-size: 0.7rem;
    }
    .komoji{
         font-size: 0.7rem;
    }
    .box789{
	     width: 90%;
	}
    .box7{
	     flex-basis:3%;	
	}
    .box9{
	     flex-basis:3%;	
	}
}

@media screen and (max-width: 415px){
    .footer-tel1{
	     font-size: 0.8rem;
    }
    .footer-tel2{
	     font-size: 0.7rem;
    }
    .spfooter-mail{
	     padding-top: 0.8rem;
	     font-size: 1.1rem;
    }
    .address{
	     font-size: 0.4rem;
    }
}

@media screen and (max-width: 390px){
    .header-logo{
	     width: 120px;
	     margin-top: 0.7rem;	
	}
	.endbun ul li{
		 font-size: 0.6rem;
		 list-style:none;
	}
    .box5 ul li{
	     font-size: 0.9rem;
    }		
}

@media screen and (max-width: 383px){
    .header-logo{
	     width: 110px;
	     margin-top: 0.8rem;	
	}
	.komoji{
	     font-size: 0.6rem;	
	 }
	div.navbar ul li:nth-child(14) a{
		 letter-spacing:-0.02rem;
		 font-size: 0.9rem;
	}
	.kategori p{
		 font-size: 0.8rem;		
	}
}	

@media screen and (max-width: 371px){
    .header-logo{
	     width: 100px;
	}
    .box789{
	     width: 100%;
	}
    .box7{
	     flex-basis:3%;	
	}
    .box9{
	     flex-basis:3%;	
	}	
}

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

@media screen and (max-width: 364px){
    .header-logo{
	     width: 90px;
	     margin-top: 0.9rem;	
	}
    .box5 ul li{
	     font-size: 0.8rem;
    }	
}

@media screen and (max-width: 360px){
	.navbar ul li a{
		 letter-spacing:-0.02rem;
		 font-size: 0.9rem;
	}
    .spfooter-tel{
	     font-size: 0.9rem;
    }
    .footer-tel1{
	     font-size: 0.7rem;
    }
    .footer-tel2{
	     font-size: 0.6rem;
    }
    .spfooter-mail{
	     font-size: 1rem;
    }
    .spfooter-form{
	     font-size: 0.9rem;
    }
    .footer-form{
	     font-size: 0.7rem;
    }
}

@media screen and (max-width: 350px){
    .header-logo{
	     width: 90px;
	}
    .header-copy p{
	     font-size: 0.6rem;
    }	
}
@media screen and (max-width: 340px){
	div.navbar2 ul li:first-child p{
		 letter-spacing:-0.02rem;
		 font-size: 0.9rem;
	}
	.box789{
	     width: 100%;
	}
    .box7{
	     flex-basis:1%;	
	}
    .box9{
	     flex-basis:1%;	
	}
	}

@media screen and (max-width: 337px){
	div.navbar ul li:first-child p{
		 letter-spacing:-0.02rem;
		 font-size: 0.7rem;
	}
	div.navbar ul li:nth-child(4) a{
		 letter-spacing:-0.02rem;
		 font-size: 0.8rem;
	}	
	div.navbar ul li:nth-child(14) a{
		 letter-spacing:-0.02rem;
		 font-size: 0.8rem;
	}
	div.navbar ul li:last-child a{
		 letter-spacing:-0.05rem;
		 font-size: 0.6rem;
	}
}

@media screen and (max-width: 330px){
    .header-logo{
	     width: 80px;
	     margin-top: 1rem;	
	}
    .komoji{
	     font-size: 0.5rem;
    }	
    .spfooter-tel{
	     font-size: 0.8rem;
    }
    .footer-tel1{
	     font-size: 0.6rem;
    }
    .footer-tel2{
	     font-size: 0.5rem;
    }
    .spfooter-mail{
	     font-size: 0.9rem;
    }
    .address{
	     font-size: 0.3rem;
    }
    .spfooter-form{
	     font-size: 0.8rem;
    }
    .footer-form{
	     font-size: 0.6rem;
    }
}

@media screen and (max-width: 319px){
	.navbar ul li a{
		 font-size: 0.8rem;
	}
	.header-copywrap p{
		 font-size: 0.6rem;
	}
	div.navbar ul li:last-child a{
		 letter-spacing:-0.05rem;
		 font-size: 0.8rem;
	}
}