/*
Theme Name: 松橋国語塾
Author: Masaharu
Description:松橋国語塾
Version:5.7
*/

@media print, screen and (min-width: 768px) {
  ._sp {
    display: none;
  }
}

._pc {
  display: none;
}

@media print, screen and (min-width: 768px) {
  ._pc {
    display: block;
  }
}

body{
  font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
  background-color: #FFF;
  padding-top: 120px;
}

a{
  text-decoration: none;
  color: ; 
}

img{
  width: 100%;
  height:auto;
}

.fa-phone{
  font-size:20px;
  padding-bottom: 3px;
  padding-right: 6px;
}

/* <!-- ヘッダー --> */
.header{
  height: 120px;
  width: 100%;
  position:fixed;
  z-index: 100;
  top: 0px;
}

.header-top{
  display: flex;
  background-color: white;
  padding-top: 10px;
}

.header-logo {
  font-size: 36px;
  margin-left: 120px;
  font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
  font-weight: bold;
  vertical-align: middle;
}

.header-logo a{
  color: #2a2b36;
}

.phone-contact{

}

.phone-contact-des{
font-size: 12px;
}
.contact-area{
  height: auto;
  margin: 0 0 0 auto;
  display: flex;
  margin-right: 120px;
}

.phone-number{
  font-size: 25px;
  padding: 5px 0px;
}
.contact{
  background-color: #faa02a;
  font-size: 17px;
  padding: 13px 30px;
  margin-bottom: 10px; 
  border-radius: 5px;
  font-weight: bold;
  margin-left: 30px;
  color: #000;
  transition:.4s;
}
.contact:hover{
 opacity: .6;
 transition:.4s;
}

.header-bar{
  background-color: #070d63;
  opacity: 1.0;
}

.nav-wrapper{
text-align: center;
}

.nav-list {
  
}

ul.ddmenu {
  margin: 0px;
  background-color: #070d63;
}

ul.ddmenu li {
  display: inline-block;
  list-style-type: none;
  position: relative;  
  margin: 0px;
}
ul.ddmenu a {
  background-color: #070d63;
  color: white;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  display: block;
  padding: 0px 22px;
  transition: 0.4s;
  line-height: 40px;
  margin: 0px -3px;
}

ul.ddmenu a:hover {
  background-color: #cacdfa;
  color: #070d63;
  transition: 0.4s;
}


ul.ddmenu ul {
  display: none;
  margin: 0px;
  padding: 0px;
  position: absolute;
  transition: 0.7s;
}

ul.ddmenu li:hover ul {
  display: block;
  transition: 0.7s;
}

.system a{
  width: 100px;
}



@media only screen and (max-width:767px) {
  .header{
    top:0;
    height: 78px;
    width: 100%;
    display: flex;
    position:fixed;
    z-index: 100;
    box-shadow:0px 10px 10px #00000029;
    background-color: white;
  }

  
  .header-bar{
    margin:0 0 0 auto;
  }
  .burger-btn{
    padding-right: 30px;
    display: block;
    width: 50px;
    height: 39px;
    position: relative;
    z-index: 3;
    border:none;
    margin-top: 20px;
  }

  .bar{
    width: 30px;
    height: 2px;
    display: block;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    background-color: #fff;
  }
  .bar_top{
    top: 10px;
  }
  .bar_mid{
    top: 50%;
    transform: translate(-50%,-50%);
  }
  .bar_bottom{
    bottom: 10px;
  }

  .burger-btn.close .bar_top{
    transform: translate(-50%,10px) rotate(45deg);
    transition: transform .3s;
  }
  .burger-btn.close .bar_mid{
    opacity: 0;
    transition: opacity .3s;
  }
  .burger-btn.close .bar_bottom{
  transform: translate(-50%,-8px) rotate(-45deg);
  transition: transform .3s;
  }
  .nav-wrapper{      
    display: none;     
    width: 100vw;      
    height: 100vh;      
    position: fixed;      
    top: 0;      
    left: 0;       
    z-index: 2;     
  }     
  .header-nav{        
    width: 100%;        
    height: 100%;        
    background-color:#1B1310;        
    z-index: 2;      
  }     
  .header-nav .nav-list ul {        
    display: block;        
    position: absolute;        
    top: 50%;        
    left: 50%;        
    transform: translate(-50%,-50%);        
    text-align: center;      
    background-color:#1B1310;
  }   

  .header-nav .nav-list ul li a{
    background-color:#1B1310;
  }
  .header-nav .nav-list ul li{
    display: block;
  }
  .header-logo{
    font-size:20px;
    margin-left: 20px;
    margin-right: 13px;
    margin-top: 16px;
  }   
  .contact-area{
    display: block;
    margin-right: 0px;
  }
  .phone-number{
    font-size: 16px;
  }
  .fa-phone {
    font-size:12px;
  }
  .contact{
    background-color: #faa02a;
    font-size: 10px;
    padding: 6px 10px;
    margin-bottom: 5px; 
    border-radius: 5px;
    font-weight: bold;
    margin-left: 0px;
    color: #000;
    transition:.4s;
    text-align: center;
  }
  ul.ddmenu {
    margin: 0px;
    background-color: #070d63;
  }
  
  ul.ddmenu li {
    display: inline-block;
    list-style-type: none;
    position: static;  
    margin: 0px;
  }
  ul.ddmenu a {
    background-color: #070d63;
    color: white;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    display: block;
    padding: 0px 22px;
    transition: 0.4s;
    line-height: 40px;
    margin: 0px -3px;
  }
  .system{
    text-align: center;
    padding-left: 23px;
  }

  
  .system a{
    width: 100px;
  }
  
  ul.ddmenu ul li a{
    display: none;
    margin: 0px;
    padding: 0px;
    transition: 0.7s;
  }
  
}



/* <!-- トップ画像 --> */
.top-container{
  background-image: url(../image/top.jpg);
  background-size: cover;
  width: 100%;
  height: 640px;
  margin-top: -100px;
}


.top-title{
  font-size: 50px;
  color:white;
  line-height: 85px;
  text-align: center;
}

@media print, screen and (max-width: 768px) {
  
  .top-container{
    background-size: cover;
    width:100%;
    height:200px;
    margin-top: 20px;
  }

  .top-title{
    font-size: 20px;
    color:white;
    line-height: 60px;
    text-align: center;
    padding-top: 180px;
  }
}

/* 初めての方へ */
.menu-container{
  width: 100%;
  height: auto;
  background-color: #f0f0f0;
}

.menu-item ul{
  display: flex;
justify-content: center;
}

.menu-item ul li{
  border:#070d63 solid 1px;
  width: 250px;
  margin: 50px 20px;
  text-align: center;
  background-color: white;
  transition:.3s;
}

.menu-item ul li:hover{
  opacity: .5;
  transition:.3s;
}

.menu-item ul li a p{
  color: #070d63;
  font-size: 16px;
  padding: 13px;
  font-weight: bold;
}

@media print, screen and (max-width: 768px) {
  
  /* 初めての方へ */
.menu-container{
  width: 100%;
  height: auto;
  background-color: #f0f0f0;
}

.menu-item ul{
  display: flex;
  justify-content: center;
}

.menu-item ul li{
  border:#070d63 solid 1px;
  width: 400px;
  margin: 30px 7px;
  text-align: center;
  background-color: white;
  transition:.3s;
}

.menu-item ul li:hover{
  opacity: .5;
  transition:.3s;
}

.menu-item ul li a p{
  color: #070d63;
  font-size: 13px;
  padding: 0px;
  font-weight: bold;
  padding: 5px 0px;
}
}

/* <!-- 特徴 --> */
.feature-container{
  width: 100%;
  padding-bottom: 50px;
  padding-top: 50px;
}

.container-title{
  padding:20px 8px;
}

h1{
  width: 80%;
  text-align: center;
  padding: 15px 0px;
  font-size: 32px;
  border-bottom: 1px solid #000;
  margin: 20px auto 20px;
  color: #000;
}

.feature-description{
  width: 77%;
  margin: 0px auto 40px;
  font-size: 15px;
  line-height: 27px;
  text-align: center;
}

.feature-description p{
  font-size: 30px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 20px;
}

.feature-description p span{
  color: red;
  font-size: 40px;
}

.feature-item{
  display: flex;
  width: 73%;
  border:solid 3px#070d63;
  margin: 45px auto;
  border-radius: 4px;
}

#img1{
  background-image: url(../image/kokugo.jpg);
}

#img2{
  background-image: url(../image/jugyo.jpg);
}

#img3{
  background-image: url(../image/kakomon.jpg);
}

#img4{
  background-image: url(../image/classroom.jpg);
}

.feature-text-title{
  background-size: cover;
  width: 170px;
  color: #1525ad;
  font-size: 25px;
  text-align: center;
  padding: 40px;
  opacity: .8;
}

.feature-text-title p{
  padding-top: 20px;
}

.feature-text-des{
  width: 80%;
  padding: 20px;
  height: 100px;
  vertical-align: middle;
  font-size:14px;
  line-height: 20px;
  margin-top: 10px;
}

.ft-title{
  font-size: 25px;
  border-bottom: 1px solid  #130a92;
  padding-bottom: 10px;
  margin-bottom: 20px;
}
.ft-des span{
  border-bottom: 3px solid rgb(255, 217, 0);
}

.adress-item{

}

.adress-text-des{
  width: 75%;
  display: flex;
  margin: 0 auto;
}

.adress{
  margin-left: 50px;
  font-size:18px;
  line-height: 27px;
  margin-top: 100px;
}

.phone-number2{
  margin-top: 50px;
}

.mail{
  margin-top: 50px;
}
.syozaichi{
  text-align: center;
  margin-top: 30px;
  font-size: 26px;
  margin-bottom: 30px;
}
#contact{
  text-align: center;
  margin-left: 0px;
  margin-top: 20px;
}
.adress-title h3{
  padding-top: 30px;
  padding-bottom: 20px;
}

.contact-s{
  width: 300px;
}





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

  .feature-container{
    width: 100%;
    padding-bottom: 50px;
    padding-top: 50px;
  }
  
  .container-title{
    padding:20px 8px;
  }
  
  h1{
    width: 80%;
    text-align: center;
    padding: 15px 0px;
    font-size: 32px;
    border-bottom: 1px solid #000;
    margin: 20px auto 10px;
    color: #000;
  }
  
  .feature-description{
    width: 80%;
    margin: 0px auto 40px;
    font-size: 15px;
    line-height: 27px;
    text-align: justify;
    text-justify: inter-ideograph;
  }
  
  .feature-description p{
    font-size: 20px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 20px;
    	
  }
  
  .feature-description p span{
    color: red;
    font-size: 25px;
  }
  
  .feature-item{
    display: block;
    width: 80%;
    border:solid 3px#070d63;
    margin: 45px auto;
    border-radius: 4px;
  }
  
  #img1{
    background-image: url(../image/kokugo.jpg);
    background-size: cover;
  }
  
  #img2{
    background-image: url(../image/jugyo.jpg);
  }
  
  #img3{
    background-image: url(../image/kakomon.jpg);
  }
  
  #img4{
    background-image: url(../image/classroom.jpg);
  }
  
  .feature-text-title{
    background-size: cover;
    width: 100%;
    text-align: center;
    padding: 0px;
    opacity: .8;
  }
  
  .feature-text-title p{
    width: 100%;
    padding-top: 0px;
    text-align: center;
    margin: 0 auto;
  }
  
  .feature-text-des{
    width: 100%;
    padding: 0px 0px;
    height: auto;
    vertical-align: middle;
    font-size:14px;
    line-height: 20px;
    margin: 10px auto;
    text-align: center;
  }

  .feature-text-des p:nth-child(2){
    font-size: 16px;
    text-align: left;
    margin: 7px;
    text-align: justify;
    text-justify: inter-ideograph;
    padding: 7px;
  }
  
  .ft-title{
    font-size: 21px;
    border-bottom: 1px solid  #130a92;
    padding-bottom: 10px;
    margin-bottom: 22px;
    line-height: 29px;

  }

  .ft-des{

  }

  .ft-des span{
    border-bottom: 3px solid rgb(255, 217, 0);
  }
  
  .adress-item{
  
  }
  
  iframe{
    width: 100%;
  }
  .adress-text-des{
    width: 80%;
    display: block;
    margin: 0 auto;
  }
  
  .adress{
    margin-left: 0px;
    font-size:18px;
    line-height: 27px;
    margin-top: 10px;
  }
  
  .phone-number2{
    margin-top: 0px;
  }
  
  .mail{
    margin-top: 50px;
  }
  
  #contact{
    text-align: center;
    margin-left: 0px;
    margin-top: 10px;
  }
  .adress-title h3{
    padding-top: 0px;
    padding-bottom: 10px;
  }
  .adress a p{
    font-size: 15px;
  }
}



/* <!-- 代表プロフィール --> */

.concept-container{
  background-color: #e2f9fd;
  padding-top: 50px;
  padding-bottom: 50px;
}


.concept-content{
  width: 70%;
  margin: 0 auto;
}

.introduction{
  width:100%;
  display: flex;
}

.intro-img{
  width: 30%;
  margin: 10px auto;
  height: auto;
}

.intro-img img{
  border: #777777 solid 1px;
}

.intro-text{
  width: 50%;
}
.katagaki{
  font-size: 20px;
  color:#777777 ;
}

.namebox{
  display: flex;
  margin-top: 16px;
  font-size: 30px;
}

.myname{
padding-right: 20px;
padding-top:10px;
font-size: 45px;
color: #000;
}

.name{
padding: 20px;
font-size: 20px;
color: #000;
}

.PROFILE{
  color: rgb(39, 156, 39);
  margin-top: 30px;
}
.mycareer{
  margin: 40px auto 5px;
  font-size: 15px;
  line-height: 22px;
  color: #000;
}

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

  .concept-container{
    background-color: #e2f9fd;
    padding-top: 50px;
    padding-bottom: 30px;
  }
  
  .concept-content{
    width: 80%;
    margin: 0 auto;
  }
  
  .introduction{
    width:100%;
    display: block;
  }
  
  .intro-img{
    width: 70%;
    margin: 10px auto;
    height: auto;
  }
  
  .intro-img img{
    border: #777777 solid 1px;
  }
  
  .intro-text{
    width: 100%;
    text-align: center;
  }
  .katagaki{
    font-size: 20px;
    color:#777777 ;
  }
  
  .namebox{
    display: block;
    margin-top: 16px;
    font-size: 30px;
  }
  
  .myname{
  padding-right:0px;
  padding-top:10px;
  font-size: 35px;
  color: #000;
  }
  
  .name{
  padding: 20px 0px;
  font-size: 20px;
  color: #000;
  }
  
  .PROFILE{
    color: rgb(39, 156, 39);
    margin-top: 10px;
  }
  .mycareer{
    margin: 18px auto 5px;
    font-size: 18px;
    line-height: 28px;
    color: #000;
    padding: 0;
    text-align: justify;
    text-justify: inter-ideograph;
  }
}
/* <授業システム> */

#system{
  padding-top: 100px;
}
.system-des{
  text-align: center;
  font-size:20px;
  padding-bottom: 30px;
  color:white;
}
.system-container{
background-image: url(../image/coffee.png);
background-size: cover;
background-position:50%;
width: 100%;
height:400px ;
padding-top: 50px;
}

.jugyo{
  color:white;
  border-bottom:solid 1px #FFF;
  margin-top: -30px;
}

.info-content{
  position: absolute;
}
.info-contents{
  margin: 0px auto;
  display: flex;
  justify-content: center;
}


.info-item{
  width: 250px;
  height: 200px;
  margin: 0px 15px;
  background-color: #FFFFFF;
  box-shadow:0px 10px 10px #00000029;
  border: #FFF solid 1px;
  transition:.5s;
}

.info-item:hover{
  box-shadow:0px 0px 0px #00000029;
  transition:.5s;
  opacity: .9;
}

.info-item img{

}

.info-item-title{
  font-size: 17px;
  text-align: center;
  padding: 70px auto;
  margin-top: 8px;
  color: rgb(15, 3, 121);

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

  .system-des{
    text-align: justify;
    text-justify: inter-ideograph;
    font-size:18px;
    line-height: 28px;
    padding-bottom: 30px;
    color:white;
    width: 80%;
    margin: 0 auto;
  }
  .system-container{
  background-image: url(../image/coffee.png);
  background-size: cover;
  background-position:50%;
  width: 100%;
  height:650px ;
  padding-top: 50px;
  }
  
  .jugyo{
    color:white;
    border-bottom:solid 1px #FFF;
    margin-top: -30px;
  }
  

  .info-contents{
    margin: 0px auto;
    display: block;
    justify-content: center;
    text-align: center;
  }
  
  
  .info-item{
    width: 250px;
    height: 200px;
    margin: 0px auto 10px;
    background-color: #FFFFFF;
    box-shadow:0px 10px 10px #00000029;
    border: #FFF solid 1px;
    transition:.5s;
  }
  
  .info-item:hover{
    box-shadow:0px 0px 0px #00000029;
    transition:.5s;
    opacity: .9;
  }
  
  .info-item img{
  
  }
  
  .info-item-title{
    font-size: 17px;
    text-align: center;
    padding: 70px auto;
    margin-top: 8px;
    color: rgb(15, 3, 121);
  
  }
}
/* 生徒の声 */

.voice-container{
  padding-top: 50px;
  padding-bottom: 50px;

}

.voice-item{
  width: 80%;
  margin: 0 auto;
}

.voice-item-1{
  display: flex;
  justify-content: center;
 
}

.voice-item-1 img{
  width: 500px;
  height: auto;
  padding: 40px;
}

.voice-item-2 img{
  width: 322px;
  padding: 30px;
}

.img3{
  height:200px ;
}
.voice-item-2{
  display: flex;
  justify-content: center;
}

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

  .voice-container{
    padding-top: 50px;
    padding-bottom: 10px;
  }
  
  .voice-item{
    width: 100%;
    margin: 0 auto;
  }
  
  .voice-item-1{
    display: block;
    justify-content: center;
   
  }
  
  .voice-item-1 img{
    width: 100%;
    height: auto;
    padding: 20px 0px;
  }
  
  .voice-item-2{
    width: 100%;
    padding: 20px 0px;
    text-align: center;
  }

  .voice-item-2 img{
    width: 80%;
    padding: 0px 0px;
    text-align: center;
    margin: 0 auto;
  }
  
  .img3{
    height:200px ;
  }
  .voice-item-2{
    display: block;
    justify-content: center;
  }
}
/* 授業料と入塾の流れ */

.tuition-container{
  background-image: url(../image/student.png);
  padding-bottom: 2px;
  background-repeat:no-repeat ;
  background-size: cover;
  padding-top: 50px;
}
h3{
  text-align: center;
  font-size: 24px;
  margin-bottom: 30px;
  font-weight: bold;
}

table{
  margin: 0 auto;
  font-size: 20px;
}
table, td, th{
  border: 2px solid rgb(0, 0, 0);
}

.t-left{
  width: 100px;
  padding: 20px 20px;
}

.t-right{
  padding: 20px 20px;
}

.voice-container{
  width: 100%;
}

.caution{
  width:100% ;
  text-align: center;
  font-size: 15px;
  line-height: 20px;
  margin-top: 15px;
  margin-bottom: 40px;
}

.flow{
  width: 100%;
  margin: 0 auto 100px;
  padding-top: 30px;
}
.flow-contents{
  text-align: center;
  margin: 0 auto;
}

.flow-item{
  width: 50%;
  height: auto;
  margin: 10px auto;
  background-color: #FFF8DC;
  padding: 10px 10px;
  border-radius: 3px;
}

.flow-item-title{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}

.next{
  font-size: 20px;
}

.res-next{
  display: none;
}

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

  
.tuition-container{
  background-image: url(../image/student.png);
  padding-bottom: 2px;
  background-repeat:no-repeat ;
  background-size: cover;
  padding-top: 50px;
}

.tuition-container .container-title h1{
  font-size: 26px;
}
h3{
  text-align: center;
  font-size: 24px;
  margin-bottom: 30px;
  font-weight: bold;
}

table{
  width: 90%;
  margin: 0 auto;
  font-size: 20px;
}
table, td, th{
  border: 2px solid rgb(0, 0, 0);
}

.t-left{
  width: 100px;
  padding: 20px 20px;
  vertical-align: middle;
}

.t-right{
  padding: 20px 20px;
  font-size: 16px;
}

.voice-container{
  width: 100%;
}

.caution{
  width:90% ;
  text-align: center;
  font-size: 15px;
  line-height: 20px;
  margin: 15px auto 10px;
}

.flow{
  width: 100%;
  margin: 0 auto 100px;
  padding-top: 30px;
}
.flow-contents{
  text-align: center;
  margin: 0 auto;
}

.flow-item{
  width: 50%;
  height: auto;
  margin: 10px auto;
  background-color: #FFF8DC;
  padding: 10px 10px;
  border-radius: 3px;
}

.flow-item-title{
  text-align: center;
  font-size: 18px;
  font-weight: bold;
}

.next{
  font-size: 20px;
}

.res-next{
  display: none;
}
}
/* <!-- お知らせ --> */

.FAQ{
  background-color: rgb(225, 245, 250);
  padding-top: 30px;
  padding-bottom: 50px;
}
.news-contents{
  margin: 30px auto 0px;
  border: #09189e solid 1px;
  width: 50%;
  padding: 40px 20px 40px 40px;
}

.row{
  display: flex;
  margin-bottom: 25px;
  margin-left: 20px;
}

.row dt{
  width: 150px;
  margin-right: 30px;
  text-align: center;
}

.row dt a{
  color:#09189e;
  font-size: 17px;
}

.row dd {
  font-size: 17px;
}

.row dd a{
  color:#09189e;
  border-bottom: .7px solid #09189e;
}


.info-more{
  width: 100px;
  text-align: center;
  vertical-align: middle;
  background-color: #fda500;
  border-radius: 5px;
  font-size: 14px;
  padding:10px 20px;
  color: #000;
  text-align: center;
  display: block;
  margin: 50px auto 0px;
  transition:.5s;
}

.info-more:hover{
  opacity: .6;
  transition:.5s;
}


@media print, screen and (max-width: 768px) {
  .FAQ{
    background-color: rgb(225, 245, 250);
    padding-top: 30px;
    padding-bottom: 50px;
    text-align: center;
    margin: 0 auto;
  }
  .news-contents{
    margin-top: 30px;
    border: #09189e solid 1px;
    width: 85%;
    padding: 15px ;
  }

  
  .row{
    display: block;
    margin-bottom: 25px;
    margin-left: 0px;
  }
  
  .row dt{
    width: 90%;
    margin-right: 0px;
  }
  
  .row dt a{
    color:#09189e;
    font-size: 17px;
    line-height: 25px;
  }
  
  .row dd {
    font-size: 17px;
    width: 100%;
  }
  
  .row dd a{
    color:#09189e;
    border-bottom: .7px solid #09189e;
    line-height: 25px;
  }
  
  
  .info-more{
    width: 100px;
    text-align: center;
    vertical-align: middle;
    background-color: #fda500;
    border-radius: 5px;
    font-size: 14px;
    padding:10px 20px;
    color: #000;
    text-align: center;
    display: block;
    margin: 0px auto 0px;
    transition:.5s;
  }
  
  .info-more:hover{
    opacity: .6;
    transition:.5s;
  }
  .blog-more .info-more{
    margin-right: 0px;
  }
  
}

/* ブログ */
.blog-container{
padding-bottom: 0px;
padding-top: 50px;
}

.blog-contents {
  height: auto;
}

.blog-item-content{
  position: relative;
  margin-left: 100px;
  margin-right: 30px;
	
}

.blog-item{
  margin-top:70px ;
  height: 300px;
	width:90%;
}


.blog-thumbnail{
  width: 200px;
  height: 120px;
}

.blog-category {
  position: absolute;
  top: 0;
  left: 0;
	background-color: #fcdf91;
  padding: 6px  10px 5px 2px;
  height: 13px;
}


.blog-category a{
	color: black;
font-size: 12px;
white-space: nowrap;
}

.blog-item ul{
  width: 90%;
  margin: 0 auto;
  justify-content: center;
}

.blog-item ul li{
	display:flex;
  padding-bottom: 30px;
}

.post-categories{
  margin: 0;
}

.blog-title{
  margin-top: 40px;
  margin-left: 30px;
  margin-bottom: 8px;
}

.blog-title a{
  color:#09189e;
  font-size: 18px;
  border-bottom: 1px solid #09189e;
  line-height: 25px;
}

.blog-item-content{
border: rgb(182, 182, 182) solid 1px;
transition:.5s;
display: flex;
}

.blog-more{
  width: 100px;
  vertical-align: middle;
  border-radius: 5px;
  font-size: 14px;
  padding:10px 20px;
  color: #000;
  text-align: center;
  display: block;
  margin: 150px auto 50px;
  transition:.5s;
}


@media print, screen and (max-width: 768px) {
  
    
    
    .blog-item-content{
      position: static;

    }
    
    .blog-item{
      margin-top:70px ;
      height:auto;
      width:100%;
    }
    
    
    .blog-thumbnail{
      display: none;
    }
    
    .blog-category {
      position: static;
      top: 0;
      left: 0;
      background-color: #fcdf91;
        padding: 5px  10px;
      height: 13px;
    }
    
    
    .blog-category a{
      color: black;
    font-size: 13px;
    text-align: left;
    
    }
    
    .blog-item ul{
      width: 90%;
      margin: 0 ;
    justify-content: center;
    }
    
    .blog-item ul li{
      display:block;
      padding-bottom: 30px;
    
    }
    
    .blog-category{
      margin: 0;
    
    }
    
    .blog-title{
      margin-top: 20px;
      margin-left: 40px;
      margin-bottom: 8px;
    }
    
    .blog-title a{
      color:#09189e;
      font-size: 18px;
      border-bottom: 1px solid #09189e;
      line-height: 25px;
    }
    
    .blog-item-content{
    border:white solid 1px;
    transition:.5s;
    margin-left: 40px;
    }
    
    .blog-more{
      margin:0 auto 50px;
      padding: 0px;
    }
  }

/* <!-- フッター --> */

.footer{
background-color: #070d63;
}

.footer-list ul{
  display: flex;
  justify-content: center;
  padding-top: 62px;
  padding-bottom:62px;
}

.footer-list ul li {
  padding:0 25px;
  font-size: 16px;
  color:white;
  list-style-type: none;
}

.footer-list ul li a{
  color: #FFF;
  transition:.5s;
}

.footer-list ul li a:hover{
  opacity:.6;
  transition:.5s;
}

.footer-logo{
  margin:0 auto;
  width: 188px;
}

.copyright{
 margin:20px auto;
 color:white;
 text-align: center;
 font-size: 16px;
 padding-bottom:42px;
}

@media print, screen and (max-width: 768px) {
  .footer-list ul{
    display: block;
    justify-content: center;
    padding-top: 30px;
    padding-bottom: 20px;
    width: 100%;
    text-align: center;
  }

  .footer-list ul li {
    padding:10px 25px;
  }

  .copyright{
    margin:20px auto;
    color:white;
    text-align: center;
    font-size: 10px;
    padding-bottom:42px;
   }
}

/* 問い合わせページ */
 

  .inquiry{
    margin-top: 50px;
  }
  input{
    padding: 10px;
    margin: 10px;
    width: 500px;
    border:2px solid #d7d7d7;
  }

  .contact-title{
    vertical-align: text-top;
    height: 200px;
  }

  textarea{
    padding: 10px;
    margin: 10px;
    width: 500px;
    border:2px solid #d7d7d7;
  }
  .inquiry th{
   text-align:left;
   font-size:17px;
   color:#444;
   width:40%;
   background:#f7f7f7;
   border:solid 2px #d7d7d7;
   padding-left: 10px;
   height: auto;
   vertical-align: middle;
  }

  .inquiry td{
   font-size:17px;
   border:solid 2px #d7d7d7;
   height: 50px;
   width: 300px;
  }
  /*横の行とテーブル全体*/
  .entry-content .inquiry tr,.entry-content table{
    width: 100%;
  }

  .inquiry th span{
    line-height: 100%;
    vertical-align: middle;
  }

  .haveto{
   font-size:7px;
   padding:5px;
   background:#ff9393;
   color:#fff;
   border-radius:2px;
   margin-right:5px;
   position:relative;
   bottom:1px;
  }

  .any{
   font-size:7px;
   padding:5px;
   background:#93c9ff;
   color:#fff;
   border-radius:2px;
   margin-right:5px;
   position:relative;
   bottom:1px;
  }

  .contact-title{
    
  }

  #formbtn{
   display: block;
   padding:1em 0;
   margin:30px auto ;
   background:#ffaa56;
   color:#fff;
   font-size:18px;
   font-weight:bold;	 
   border-radius:5px;
   border: none;
   transition: .3s;
   text-align: center;
  }

form{
  text-align: center;
  height: 750px;
}
  #formbtn:hover{
   background:#070d63;
   transition:.5s;
  }
  @media(max-width:500px){
  
    .inquiry{
      margin-top: 50px;
      height: auto;
    }
    input{
      padding: 10px;
      margin: 0px;
      width: 90%;
      border:2px solid #d7d7d7;
    }
  
    .contact-title{
      vertical-align: text-top;
      height: 200px;
    }
  
    textarea{
      padding: 0px;
      margin: 0px;
      width:95%;
      border:2px solid #d7d7d7;
      height: 150px;
    }
    .inquiry td{
      font-size:17px;
      border:solid 2px #d7d7d7;
      height: 65px;
      width: 300px;
     }
    .inquiry th{
     text-align:left;
     font-size:17px;
     color:#444;
     width:100%;
     background:#f7f7f7;
     border:solid 2px #d7d7d7;
     padding-left: 0px;
     height: auto;
     vertical-align: middle;
    }
  
    /*横の行とテーブル全体*/
    .entry-content .inquiry tr,.entry-content table{
      width: 100%;
      padding-bottom: 100px;
    }
  
    .inquiry th span{
      line-height: 100%;
      vertical-align: middle;
      margin-bottom: 100px;
    }
  
    .haveto{
     font-size:7px;
     padding:5px;
     background:#ff9393;
     color:#fff;
     border-radius:2px;
     margin-right:5px;
     position:relative;
     bottom:1px;
    }
  
    .any{
     font-size:7px;
     padding:5px;
     background:#93c9ff;
     color:#fff;
     border-radius:2px;
     margin-right:5px;
     position:relative;
     bottom:1px;
    }
  
    .contact-title{
      
    }
  
    #formbtn{
     display: block;
     padding:1em 0;
     margin:30px auto 0px;
     background:#ffaa56;
     color:#fff;
     font-size:18px;
     font-weight:bold;	 
     border-radius:5px;
     border: none;
     transition: .3s;
     text-align: center;
    }
  
  .form{
    text-align: center;
    margin-bottom: 0px;
  }

    #formbtn:hover{
     background:#070d63;
     transition:.5s;
    }

   
    .inquiry th,.inquiry td {
     display:block!important;
     width:100%!important;
     border-top:none!important;
    }
    .inquiry tr:first-child th{
     border-top:1px solid #d7d7d7!important;
    }
    /* 必須・任意のサイズ調整 */	
    .inquiry .haveto,.inquiry .any {	
    font-size:10px;
    }
    .area{
      height: 190px;
      padding-bottom: 117px;
    }

    .page-content{
      padding-bottom: 150px;
    
    }
    .contact-footer{
      margin-top: 500px;
    }
  .page-wrap{
      padding-bottom: 100px;
    }
  }


@media only screen and (max-width:767px) {
	.cform th,
	.cform td {
		width: 100%;
		display: block;
		border-top: none;
    margin-bottom: 100px;
	}
}


/* ブログ一覧 */

.article{
  padding-top: -100px;
}

#blog-title{
  margin-bottom: 100px;
}
.w_inner {
  width: 75%;
  margin: 0 auto;
  padding-bottom: -200px;
}

.archive-img {
  width:240px;
}

.archive-blog{
  margin-top: 0px;
}

.archive-blog span{
  color:black;
  font-size:16px;
  margin-left: 30px;
  margin-top: 30px;
}

.archive-blog dd{
  color:black;
  font-size: 23px;
  margin-top: 15px;
  margin-left: 30px;
  width: 100%;
}

.archive-text{
  font-size: 19px;
  margin-right: 3px;
  margin-top: 10px;
  color:#000;
  margin-left: 30px;
}


#archive-row{
  margin-bottom: 100px;
}

.archive-pic{
  position:relative;
  width:254px;
}

.archive-label{
  position:absolute;
  top:0;
  left:0;

  height: 20px;
  margin-right: 30px;
  background-color: #070d63;
  vertical-align: middle;
  line-height: 20px;
  font-size: 12px;
  text-align: center;
  padding: 0px 5px;
}

.archive-label a{
  color: white;
  white-space: nowrap;
}

.archive-des-title a{
  color: #070d63;
}
.archive-title a{
	line-height:30px;
}
.archive-text{
	font-size:16px;
	line-height:20px;
	text-align: justify;
　text-justify: inter-ideograph;
}

@media only screen and (max-width:767px) {
  
  .archive-topimg{
    width:cover;
    margin-top: 0px;
  }

  #content{
    width: 100%;
  }
  
  .archive-topimg{
    width:cover;
    height:auto;
  }

  
  #archive-row{
    display: block;
  }

  .archive-label{
    position:absolute;
    top:0;
    left:0;
    height: 32px;
    background-color: #070d63;
    vertical-align: middle;
    line-height: 32px;
    font-size: 14px;
    text-align: center;
  }

  .archive-pic{
    position:relative;
    width:80%;
    text-align: center;
    margin: 0 auto;
  }
  
  .archive-img {
    width: 100%;
    text-align: center;
    margin: 0 auto;
  }

  .archive-date{
    color:white;
    font-size:16px;
    margin-left:40px;
  }

  .archive-text{
    margin: 20px 30px;
  }

  .archive-title a{

    font-size:22px;
  
  }
  .archive-title{
    line-height: 32px;
  }

  .archive-blog{
    width: 90%;
    margin-right: 0px;
  }

}

/* 投稿ページ */
/* メイン */

.single{
  display: flex;
  padding-top: 30px;
  justify-content: center;
}

.single-main{
  width:800px;
}


.single-title{
  color:black;
  font-size: 30px;
  border-left: 10px solid rgb(4, 15, 175);
  margin-top: 44px;
  padding-left: 10px;
  padding-top: 10px;
  padding-bottom: 10px;
	line-height:35px;
}

.top-sub{
  display: flex;
}


.single-date{
  color:black;
  font-size: 20px;
  padding-bottom: 10px;
  margin: 0 0 0 auto;
}

.single-img{
  margin-bottom: 50px;
}

.single-content{
  color:black;
  font-size: 24px;
  margin-bottom: 70px;
}



.single-content h2{
  font-size: 36px;
  background-color:#030f55;
  text-align-last: left;
  padding-left:22px;
  padding-top: 13px;
  padding-bottom: 14px;
  margin-top: 50px;
}

.single-content h3{
  font-size: 26px;
  border-left:solid 7px #030f55  ;
  padding:10px 21px;
  text-align: left;
  margin-top: 50px;
}

.single-content p{
  font-size: 18px;
  line-height: 27px;
}

.single-container p{
	font-size:17px;
	line-height:35px;
}

.single-container td{
	padding:10px 5px;
	font-size:17px;
}

.single-container strong{
	font-size:17px;
}
.single-container table{
	margin:20px 0px;
}
@media only screen and (max-width:767px) {
	.single{
    display: block;
    height: auto;
  }
  
  .single-main{
    width:80%;
    margin: 0px auto;
  }
  
}

/* 関連ページ */
.single-side{
  width:270px;
  margin-top: 240px;
  margin-left: 56px;
}

.side-article-title{
  background-color: #030f55;
  color:white;
  font-size: 21px;
  padding-top:14px ;
  padding-bottom: 13px;
  margin-bottom: 30px;
  text-align: center;
}

.side-article-content ul li{
  display: flex;
}

.side-article-picture img{
  width: 100px;
}

.side-article-picture img:hover{
  opacity: .6;
}

.side-article-blogtitle{
  margin-left: 17px;
  height: 111px;
  color: black;
  line-height: 20px;
}

.side-article-blogtitle a{
  color: black;
  font-size: 16px;
}

.side-article-blogtitle a:hover{
  border-bottom: 1px solid black;
}

.single-content{
  font-size: 20px;
}

@media only screen and (max-width:767px) {
	.single-side{
    margin-top: 50px;
  }
}
/* パンくずリスト */
.breadcrumb-area{
margin-left: 50px;
}

@media only screen and (max-width:767px) {
	
body{
    padding-top:60px;
  }
  .single{
    padding: 0;
    margin: 0;
  }
  .breadcrumb{
    color:white;
    margin-top: -100px;
    padding-top: -100px;
  }
  .breadcrumb-list{
    display: flex;
  }
  
  .breadcrumb-item a{
    font-size: 16px;
}

.archive-breadcrumb{
  margin-left: 10px;
}

.breadcrumb{
  margin-top: 30px;
}
}

/* ページネーション */


.article .article-pager {
  padding-top: 20px;
  margin-bottom: 100px;
}

.article .article-pager .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.article .article-pager .number, .article .article-pager .dots {
  width: 46px;
  height: 46px;
}

.article .article-pager .number span, .article .article-pager .dots span {
  font-size: 16px;
  color: #fff;
  height: 46px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.article .article-pager .number {
  border: 2px solid #070d63;
  background-color: #fff;
}

.article .article-pager .number.-current {
  background-color: #070d63;
}

.article .article-pager .number + .number {
  margin-left: 20px;
}

.article .article-pager .number a {
  display: block;
  -webkit-transition: background-color .3s ease;
  transition: background-color .3s ease;

}
.article .article-pager .number a span{
  color:#070d63;
}
.article .article-pager .number a:hover {
  -webkit-transition: background-color .3s ease;
  transition: background-color .3s ease;
  background-color: #070d63;
}

@media only screen and (max-width:767px) {
  
}
/* 固定ページ */
.page-wrap{
padding-bottom: 70px;
}

.page-wrap h2{
  margin-top: 40px;
  margin-bottom:40px ;
  padding-left: 10px; 
  font-size: 25px;
  color: white;
  background-color: #070d63;
  padding: 8px;
  border-radius: 2px;
  margin-bottom: 30px;
  padding-left: 29px;
}

.page-wrap h3{
    margin-top: 30px;
    padding-left: 29px;
}

.page-content{
  width: 60%;
  margin: 30px auto;
  line-height: 30px;
}

.page-wrap p{
  text-align-last: left;
  padding-left: 47px;
}
@media only screen and (max-width:767px) {
  .page-content p{
    padding-left: 0px;
    text-align: justify;
text-justify: inter-ideograph;
width: 80%;
margin: 0 auto;
  }
  .page-content{
    width: 90%;
    margin: 30px auto;
  }
  
  .page-wrap h2{
    margin-top: 40px;
    margin-bottom:40px ;
    padding-left: 0px; 
    font-size: 23px;
    color: white;
    background-color: #070d63;
    padding: 8px;
    border-radius: 2px;
    margin-bottom: 30px;
    padding-left: 0px;
    text-align: center;
  }
  .page-wrap h3{
    margin: 30px auto;
    text-align: center;
    padding-left: 0px;
}
.page-content{
  padding-bottom: 30px;
}

.page-wrap-c{
  padding-bottom: 170px;
}
}



/* トップに戻るボタン */
.back-to-top {
  position: fixed;
  bottom: 40px;
  right: 0px;

  display: none;
  width: 60px;
  height: 60px;
  vertical-align: middle;

  background-color: #070d63;
  color: #fff;
  opacity: 0.5;
  font-size: 1.9rem;
  line-height: 60px;
  text-align: center;
  text-decoration: none;
  transition:.5s;
}

.back-to-top:hover {
  opacity: 1;
  transition:.5s;
}

/* ニュース一覧 */
.archive-news-contents{
  width: 65%;
  margin: 0 auto;
}

.archive-news-contents ul li{
  display: flex;
  margin-bottom: 100px;
}

.archive-des iframe{
  display: none;
}

.archive-news-img a img{
  width: 250px;
}

.archive-des{
  margin-left: 50px;
}

.archive-des dt a{
font-size: 16px;
line-height: 27px;
color: #000;
}


.archive-des dd a{
  font-size: 20px;
  line-height: 35px;
  color: #09189e;
  border-bottom: 1px solid #09189e;
}

.archive-des-content{
  font-size: 18px;
  line-height: 22px;
  margin-top: 10px;
}
.single-content h2{
  color: white;
  font-size: 20px;
}
@media only screen and (max-width:767px) {
	
  .archive-news-contents{
    width: 80%;
    margin: 0 auto;
  }
  
  .archive-news-contents ul li{
    display: block;
    margin-bottom: 100px;
  }
  
  .archive-des iframe{
    display: none;
  }
  
  .archive-news-img a img{
    width: 100%;
    text-align: center;
  }
  
  .archive-des{
    margin-left: 0px;
text-align: justify;
text-justify: inter-ideograph;
  }
  
  .archive-des dt a{
  font-size: 16px;
  line-height: 27px;
  color: #000;
  }
  
  
  .archive-des dd a{
    font-size: 20px;
    line-height: 35px;
    color: #09189e;
    border-bottom: 1px solid #09189e;
  }
  
  .archive-des-content{
    font-size: 18px;
    line-height: 22px;
    margin-top: 10px;
}
main{
  padding-top: -50px;
}
.breadcrumb-area{
  margin-top: 50px;
}

.single-content h2{
  color: white;
  font-size: 20px;
}

h1{
  font-size: 24px;
}

}

.wpcf7-response-output{
  margin: 0;
}
