@media screen and (min-width: 1025px) {
.primary-nav li {
display: flex;  /* 横並びにする */
    align-items: center;  /* 垂直方向に中央 */
    text-align: center;  /* 文字のセンタリング(複数行になったとき用) */
}
  /* 左側の線 */
.primary-nav li::before{
	content:"";
    flex-grow: 1;  /* 線の伸び率 */
    border-bottom: 3px solid #ff8100;
   padding-left: 15px;  /* 線の長さが、最低でも15px以上になるように余白をとる */
  } 
.primary-nav li.noline::before{
	 border-bottom: none;  
  }
#header.fixed .primary-nav li::before{
    border-bottom: 3px solid #222;  
  } 
#header.fixed .primary-nav li.noline::before{
	 border-bottom: none;  
  }
 } 

@media screen and (max-width: 1024px) {
 #header .header-content {
 width: 90%;
}
 .nav-toggle {
 display: block;
}
 .navigation {
 position: fixed;
 background-color: #000;
 width: 100%;
 height: 100%;
 top: 0;
 left: 0;
 z-index: 99999;
 visibility: hidden;
 opacity: 0;
 -webkit-transition: opacity 0.5s, visibility 0s 0.5s;
 transition: opacity 0.5s, visibility 0s 0.5s;
}
.primary-nav {
	 display:block;
 position: relative;
 top: 45%;
 -moz-transform: translateY(-45%);
 -ms-transform: translateY(-45%);
 -webkit-transform: translateY(-45%);
 transform: translateY(-45%);
}
.primary-nav li {
 display: block;
 margin-bottom: 20px;
}
.primary-nav li a {
	
	 color: #fff;
 display: block;
 font-size: 14px;
 margin: 0;
 text-align: center;
	 border-bottom: none;
}
.primary-nav li a:hover,.primary-nav li a.active {	
	border-bottom: none;
}
	

	
.headsns_sp li a {
	display: inline-block;
	text-align: center;
	border-radius: 50%;
	background:#ffffff;
	width: 35px;
	height: 35px;
	line-height: 35px;
	color: #ff9e00;
	margin: 0 5px;
}
	

 .flex-control-nav {
 bottom: 20px;
}
.headsns_sp{
    display:flex;
    justify-content: center;
}

.headsns{
    display: none;
}
}
@media screen and (max-width: 768px) {
.whitecircle{
    position: absolute;
    top: -60px;
    width:130%;	
    left: 50%;
transform: translateX(-50%);
}
 #banner {
 text-align:center;
}
 .banner-text {
 padding-top: 30%;
}
 .banner-text h1 {
 margin-top:70px;
 font-size: 33px;
 line-height:36px;
}
 .banner-text p {
 font-size: 18px;
}
.banner-img {
margin:auto;
}
 .banner-btn a {
 margin-bottom: 100px;
}
	.tategaki{
		display: none;
	}
	


#features {
text-align:center;
}
.features1-content {
 margin-top: 5%;
}
.left {
 text-align:center;
}
.middle {
 padding-left:0px;
 margin:auto;
 margin-top:5%;
 margin-bottom:5%;
}
.features2-content {
 margin-top:0px;
}
.features3 img {
 padding-left:0px;
}
 .footer .footer-col {
 margin-bottom: 50px;
}
}


@media screen and (max-width: 640px) {
.section {
	padding: 60px 0;
}    
 #banner {
 text-align:center;
}
 .banner-text h1 {
 margin-top:70px;
 font-size: 33px;
 line-height:36px;
}
 .banner-btn a {
 margin-bottom: 70px;
}
 .banner-text {
 padding-top: 35%;
}
.footer a {
 font-size:14px;
}
.footer .footer-share li {
 width: 35px;
 height: 35px;
 border-radius: 50%;
 padding: 7px 0;
 margin: 0 5px;
}
	.jacket{
		display:block;
	}
}
@media screen and (max-width: 480px) {
 #banner {
 text-align:center;
}
 .banner-text {
 padding-top: 45%;
}
 .banner-text h1 {
 margin-top:100px;
 font-size: 32px;
 line-height:36px;
}
 .banner-btn a {
 margin-bottom: 15px;
}
.member li.memimg{
	width:150px;
	margin-right:10px;
	}
.member li.memimg img{
	width:150px;	
	}	
}
@media screen and (max-width: 320px) {
 .banner-text {
 padding-top: 55%;
}
.subscribe-form input[type=text] {
width:65%;
}
.subscribe-form input[type=submit] {
 width: 35%;
}
}
