@charset "utf-8";

html {
	font-size: 62.5%;
}


body{
	margin: 0px;
	padding: 0px;
	font-size:1.5em;
	overflow:auto;
    background:#fff;
    box-sizing:border-box;
	line-height:1.5em;
	font-family:'Hiragino Kaku Gothic Pro','Noto Sans JP','Meiryo','sans-serif';
	color: #000;
}


main {
	width:100%;
	overflow:hidden;
	margin:auto;
	display:block; /* IE΍ɒǉ */
	padding:0;
	background:#fff;
}

input, select, textarea{
    font-family:'Hiragino Kaku Gothic Pro','Noto Sans JP','Meiryo','sans-serif';
	color: #000;
	cursor:pointer;
	width:100%;
}
::placeholder{color:#bfbfbf;}
 :-ms-input-placeholder{color:#bfbfbf;}

a, button{cursor:pointer;transition: all 0.2s ease-in-out;}
a:hover{opacity:.6;}

header img ,  #spHeader img ,footer img , .mainimg img , .headlogo img , .service img , .service img , .about img , #service .sec2 img , #faq .pc img
{
	width:100%;
}
.campain img {width: auto; max-width: 100%; height: 100%; max-height:440px;}
.shopping .flex img{width:100%; max-width:260px;}



/*header*/
header .ul li a{display:block;}
.headlogo a:hover{opacity:.85;}
header .menu li a:hover{opacity:.4;}
.headlogo{display:block;position:absolute;top:0;left:0;
width:100%;max-width:250px;z-index:10;}


.flex{display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items: flex-start;}

.mainimg{position:relative;max-width:1500px;margin:auto;}
.mainimg .soudan{
    position: absolute;
    right: 30px;
    z-index: 90;
    bottom: -50px;
    box-sizing: border-box;
    display:inline-block;
}
.mainimg .soudan img{max-width:323px;}
.mainimg .soudanbtn{
    position: fixed;
    right: 19px;
    z-index: 90;
    top: 30px;
    box-sizing: border-box;
    display:inline-block;
}
.mainimg .soudanbtn img{max-width:260px;}
.mainimg .scroll-fade{
    opacity: 0;
	visibility: hidden; 
	transition: opacity .5s, visibility .5s;
}
.mainimg .scroll-fade.scroll-view {
	opacity: 1;
	visibility: visible;
}
.mainimg .scroll-fade.scroll-view:hover{opacity:.6;}

/*header
header .ul li a{display:block;}
.headlogo a:hover{opacity:.85;}
header .menu li a:hover{opacity:.4;}
*/
/*footer*/
footer .totopfade {
    position: fixed;
    right: 20px;
    z-index: 99;
    bottom: 20px;
    box-sizing: border-box;
}
footer .totopfade img{max-width:60px;}
footer .snslink li a{display:block;}
footer .snslink li a:hover{opacity:.5;}
footer .contact{background:#eee;padding:80px 6% 100px;text-align:center;}
footer .contact h4{font-weight:600;font-size:3rem;}
footer .contact h5{font-family: 'Zen Kaku Gothic Antique';font-size:2.6rem;margin:35px 0 25px;}
footer .contact a{display:inline-block;}
footer .contact .tel img{max-width:534px;}
footer .contact  p{color:#4D4D4D;font-size:1.8rem;font-weight:600;
margin:10px 0 30px;}
footer .contactbtn img{max-width:585px;}
footer nav{max-width:819px;margin:20px auto;}
footer nav .flex li{font-size:1.6rem;line-height:1.2em;
border-right:2px solid #000;width:20%;text-align:center;}
footer nav .flex li a{display;inline-block;font-weight:600;}
footer nav .flex li:last-child{border:none;}
footer .copyright{color:#666;font-size:1.3rem;padding:20px;text-align:center;}



/*main*/
main .wrapper{max-width: 1180px;margin: auto;}
section.contents{margin:100px 0;}
.midashi{border-bottom:1px solid #000;padding-bottom:10px;margin-bottom:80px;}
.midashi h3{font-family: 'Zen Kaku Gothic Antique';font-size:2.8rem;display:inline-block;font-weight:900;}
.midashi p{display:inline-block;margin-left:25px;vertical-align:bottom;}
.red{color:#FF0000;}
table{width:100%;font-size:1.7rem;}
input[type="text"], select, textarea {
    width: 100%;
    resize: vertical;
    border: 1px solid #B1B1B1;
    padding: 10px 15px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: #fff;
    min-height:46px;
}
.button{
  font-family: 'Zen Kaku Gothic Antique';
  background: #2E3192;
  border-radius: 30px;
  box-shadow: #BDCCD4 2px 2px 0 0;
  color: #fff;
  cursor: pointer;
  display:block;
  font-size: 18px;
  padding: 0 20px;
  line-height: 57px;
  text-align: center;
  text-decoration: none;
  user-select: none;
  -webkit-user-select: none;
  touch-action: manipulation;
  letter-spacing:0.05em;
  max-width:400px;
  width:100%;
  font-weight:700;
  margin:auto;
  position:relative;
}
.button:hover {background: #BDCCD4;box-shadow: #2E3192 2px 2px 0 0;}
.button span{position:relative;}
.button.arrow::after{
    content: "";
    display: block;
    position: absolute;
    width: 19px;
    height: 10px;
    background: url(../img/button_allow.png) no-repeat center center;
    background-size:cover;
    top: 50%;
    right: 20px;
    margin-top:-5px;
}


.selectwrap{position:relative;}
.selectwrap::before{
   content: '';
   width:1px;
   height:46px;
   background:#B1B1B1;
   top:0;
   right:42px;
   position: absolute;
}
.selectwrap::after {
    content: '';
    width: 7px;
    height: 7px;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    -ms-transform: rotate(135deg);
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    position: absolute;
    top: 50%;
    right: 18px;
    margin-top: -5px;
}
.selectwrap select{background:#F0F0F0;}


/*shopping*/
#shopping ul li{position:relative;}
#shopping ul li img{max-width:348px;}
#shopping ul li .text{margin-left:35px;font-weight:bold;}
#shopping ul li .text .product{line-height:1.4em;}
#shopping ul li .text .price{font-size:2rem;margin:15px 0 30px;}
#shopping ul li .text input{width:92px;margin-right:15px;}

#shopping .products li{position:relative;}
#shopping .products li img{max-width:348px;	background-color: #f2f2f2; border-radius: 20px;}
#shopping .products li .text{margin-left:35px;font-weight:bold;}
#shopping .products li .text .product{line-height:1.4em;}
#shopping .products li .text .price{font-size:2rem;margin:15px 0 30px;}
#shopping .products li .text input{width:92px;margin-right:15px;}

/*form*/
.form table td .flex li input{max-width:368px;margin-top:5px;}
.form table td .number{display:inline-block;}
.form table td .kome{margin-top:10px;}
.form table td .address p{margin:30px 0 5px;}
.form table td .zip p{margin-top:0;}
.form table td .zip input{max-width:174px;}
.form table td .zip .hyphen{vertical-align:middle;padding-top: 2px}

.popup {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    transition: .6s;
    display: none;
}

.popup {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 9999;
    transition: .6s;
    display: none;
}

.popup .layer {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(46,46,46,.4);
    z-index: 1;
    cursor: pointer;
}

.popup .innerbox {
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 90%;
    max-width: 840px;
    padding:40px 50px 50px;
    background: #fff;
    z-index: 2;
    border-radius: 6px;
}
.popup .closebtn {
    position: absolute;
    right: 25px;
    top: 25px;
    width: 26px;
    height: 26px;
    line-height: 26px;
    text-align: center;
    cursor: pointer;
}

.popup .scroll_box {
  max-height: 640px;
  -webkit-overflow-scrolling:auto;
  overflow-scrolling: auto;
  overflow-y: auto;
}

.form .popup h4{font-size:2.4rem;text-align:center;color:#0399ED;font-weight:600;margin-bottom:30px;}


/*contact*/
#contact.form .button#confirm{margin-top:10px;}


/*top*/
.mainimg.top div{border-radius:10px;overflow:hidden;}
.mainimg.top .copy{position: absolute;width: 100%;height: auto;left:auto;top: 0;}
.mainimg.top video {width:100%;vertical-align: top;}   
#top .title{text-align:center;margin-bottom:50px;}
#top .title img{max-width:353px; }
#top .corona{color:#F43B3B;font-weight:600;text-align:center;font-size: 2.2rem;margin-top:60px;line-height:1.3em;}
#top .campain .zoom_list{display:inline-block;position:relative; 
    height: 23.6vw;
    max-height: 440px; text-align:center; }
#top .campain .zoom_list.vertical{ /*background-color:#333333;*/}
#top .campain .zoom_list::before{display:block;position:absolute;content:"";top:10px;right:10px;width:37px;height:37px;}
#top .campain .zoom_list.icon_black::before{background: url(../img/icon_zoom.png) no-repeat center center;background-size:auto;}
#top .campain .zoom_list.icon_white::before{background: url(../img/icon_zoom_wh.png) no-repeat center center;background-size:auto;}
#top .campain .date{font-size:1.5rem;font-weight:600;}
#top .campain h5{font-size:2rem;font-weight:600;margin:10px 0 15px;}
#top .about .pic{max-width:708px;}
#top .about h4{font-size:3.3rem;font-weight:600;line-height:1.6em;margin:30px 0 40px;}
#top .service, #top .shopping{background:#E6E6E6;padding:100px 0;}
#top .service .flex, #top .shopping .flex{-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;
margin-bottom:20px;}
#top .shopping .flex li{width:22%;}
#top .service .flex li{width:15%;margin-bottom:40px;}
#top .service .flex li p{text-align:center;font-size:1.6rem;font-weight:600;margin-top:15px;}
#top .news ul li{margin-bottom:20px;}
#top .news .button{margin-top:55px;}
#top .shopping .product{font-weight:600;margin:20px 0 15px;}
#top .shopping .price{font-weight:600;font-size:2rem;}
#top .shopping .title .red{font-weight:600;text-align:left;}
.gmap {
    height: 0;
    overflow: hidden;
    padding-top: 35.5%;
    position: relative;
}
.gmap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
}
#top .access h5{font-size:2rem;font-weight:600;margin-bottom:20px;}
#top .access table{font-size:1.6rem;font-weight:600;border-top:1px solid #B3B3B3;}
#top .access table td{border-bottom:1px solid #B3B3B3;padding:20px 0;}

/*faq*/
#faq .midashi{margin:100px 0 0;}
#faq .qa{width:94%;margin:auto;}
#faq .qa li{padding:55px 15px 40px;border-bottom:1px solid #ccc;}
#faq .qa li:last-child{border-bottom:none;}
#faq .qa li .question{position:relative;padding-left:95px;font-size:1.7rem;font-weight:600;}
#faq .qa li .question::before{
     content:"Q";
     position:absolute;
     font-size:2.3rem;
     font-weight:600;
     top:0;
     left:22px;
     display:block;
}
#faq .qa li .question::after{
     content:"";
     position:absolute;
     top:50%;
     left:0;
     display:block;
     width:63px;
     height:63px;
     border:2px solid #000;
     border-radius:63px;
     margin-top: -31.5px;
}
#faq .qa li .answer{position:relative;padding-left:95px;margin-top:40px;}
#faq .qa li .answer::before{
     content:"A.";
     position:absolute;
     font-size:2.3rem;
     font-weight:600;
     top:5px;
     left:22px;
     display:block;
     color:#0399ED;
}

/*news*/
#news .pagination{-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;font-weight:600;}
#news .pagination li{
    width: -webkit-calc(100% / 3);
    width: -mos-calc(100% / 3);
    width: calc(100% / 3);
    display: inline-block;
    text-align: center;
}
#news .pagination li .number li {margin: 0 10px;padding: 0 8px;width: auto!important;}
#news .pagination li .number li.this {border-bottom: 2px solid #000;padding-bottom: 5px;}
#news .pagination .under_line {border-bottom: 2px solid #000;padding-bottom: 5px;}


#news .pagination li .number li a{display:block;}
#news .pagination a.pervbtn {
    float: left;
    padding-left: 20px;
    letter-spacing: 0.14rem;
    position: relative;
}
#news .pagination a.nextbtn {
    float: right;
    padding-right: 20px;
    letter-spacing: 0.14rem;
    position: relative;
}
#news .pagination a.pervbtn:before, #news .pagination a.nextbtn:after {
    content: "";
    width: 8px;
    height: 8px;
    border: 0px;
    border-bottom: solid 1px #000;
    border-right: solid 1px #000;
    position: absolute;
    top: 30%;
}
#news .pagination a.pervbtn:before {-ms-transform: rotate(135deg);-webkit-transform: rotate(135deg);transform: rotate(135deg);left: 4px;}
#news .pagination a.nextbtn:after {-ms-transform: rotate(-45deg);-webkit-transform: rotate(-45deg);transform: rotate(-45deg);right: 4px;}
#news .alls li{padding:20px 0;}
#news .alls li a{display:block;}
#news .alls li p{text-decoration:underline;font-weight:600;}
#news.detail .kiji{margin:90px 90px}
#news.detail .kiji p{font-size:1.5rem;line-height:2em;}
#news.detail .date{padding-bottom:10px;}

#news.detail .kiji_images{margin:40px 100px ; text-align:center;}
#news.detail .kiji_images img{max-width:45%;}
#news.detail .kiji_images .limage{}
#news.detail .kiji_images .rimage{margin-left:5vw;}



/*service*/
#service .midashi{margin:100px 0 30px;}
#service img.pc, #service.detail .sec1 img{float:left;max-width:187px;margin-right:80px;}
#service .text{padding-top:15px;}
#service h5{font-size:2rem;font-weight:600;line-height:1.4em;}
#service .spflex{display:none;}
#service.detail h2{font-family: 'Zen Kaku Gothic Antique';color:#2E3192;font-size:3.4rem;font-weight:900;text-align: center;
margin-bottom:70px;}
#news.detail .kiji p, #service.detail .sec1 p{font-size:1.5rem;line-height:2.3em;}
#service.detail .midashi{margin:0 0 40px;}
#service.detail h5{margin:20px 0 15px;}
#service.detail .sec2 a , .sd_under a{font-size:1.8rem;font-weight:600;border-bottom:2px solid #000;padding:0 10px 10px;
display: inline-block;}


/*PC==============================================*/
@media screen and (min-width:769px){
.pc{display:block;}
.sp{display:none;}

header{max-width:1500px;margin:auto;position:relative;}
header .flex{-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;-webkit-box-align: stretch;-ms-flex-align: stretch;align-items: stretch;background:#D1E1E8;height:250px;}
header .menu{display: -webkit-box;display: -ms-flexbox;display: flex;
padding:0 30px 0 280px;background:#fff;width:57%;}
header .menu li{padding-top:40px;}
header .Rpart{display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;padding:40px 30px;width:43%;}
header .Rpart .tel{margin-right:5%;}
header .Rpart .tel img{max-width:393px;}
header .Rpart .contactbtn img{max-width:231px;}
.mainimg{width:100%;margin-top:-90px;}
.mainimg img, .mainimg.top div{width:98%;margin:auto;}
main .wrapper{width:96%;}
footer .snslink{margin:55px auto;max-width:819px;
display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items: flex-start;-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;justify-content: center;}
footer nav .flex{-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;}
#shopping ul{display: -webkit-box;display: -ms-flexbox;display: flex;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items: flex-start;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
#shopping ul li{width:48%;margin-bottom:90px;}
.form table th{width:20%;padding:30px 0 30px 30px;}
.form table td{width:80%;padding:30px 0;}
.form table th .red{padding-left:15px;}
.form table td input.calendar, #shopping.form table td .time{max-width:208px;}
.form table td .flex li:first-child{margin-right:20px;}
.form table td input{max-width:754px;}
.form table td .selectwrap.prefid, .form table td input#address1{max-width:368px;}
.form table td .zip span{display:inline-block;padding:0 10px;vertical-align:bottom;}
.form h6.red{font-size:2rem;text-align:center;margin:40px 0;}
.form .popup table{margin-bottom:20px;}
.form .popup table th{width:23%;padding:15px 0 15px 15px;}
.form .popup table td{width:77%;padding:15px 0;}
#top .campain ul {display: -webkit-box;display: -ms-flexbox;display: flex;
webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: center;
-webkit-box-align: end;-ms-flex-align: end;align-items: flex-start;
   }

#top .campain ul li:first-child{display: -webkit-box;display: -ms-flexbox;display: flex;
-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;-webkit-box-align: start;
-ms-flex-align: start; /*align-items: flex-start*/;width: auto;margin-right: 3vw;    flex-direction: column;}
#top .campain ul li:first-child a{/*width: 27vw;*/ margin-right: 1vw; max-width: 327px;}
#top .campain ul li:last-child{width:39.5%;}
#top .about .flex{-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
#top .about .pic{width:45%;}
#top .about .text{width:55%;margin-left:5%;}
#top .news .pcflex{display: -webkit-box;display: -ms-flexbox;display: flex;
-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
#top .news .title img{max-width:268px;}
#top .news ul{width:60%;}
#top .news ul li .date{float:left;}
#top .news ul li p{margin-left: 10em;}
#top .shopping .title{margin-bottom:60px;display: -webkit-box;display: -ms-flexbox;display: flex;
-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
#top .shopping .title .red{margin: 5px 0 0 40px}
#top .shopping .flex{margin-bottom:55px;}
#top .access .Lpart{float:left;width:45%;margin-right:5%;}
#top .access .Rpart{float:right;width:45%;}
#top .access table th{border-bottom:1px solid #B3B3B3;padding:20px 0;width:24%;}
#top .access table td{width:76%;}
#faq .flex{-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;margin:120px 0;}
#faq .flex li{width:24%;margin-bottom:10px;}
#news .midashi{margin-bottom:0;}
#news .alls{width:86%;margin:50px auto 80px;}
#news .alls li .date{float:left;}
#news .alls li p{margin-left: 10em;}
#news.detail .kiji::after{content: "";float: none;clear: both;display: block;}
#news.detail .kiji p:last-of-type{margin-top:50px;}
#news.detail .pic1{float:right;max-width:524px;padding:0 0 50px 50px;}
#news.detail .pic2{float:left;max-width:524px;padding:50px 50px 0 0;}
#service img.pc{float:left;max-width:187px;margin-right:80px;}
#service .text p{margin:20px 0 25px;}
#service .text ul{display: -webkit-box;display: -ms-flexbox;display: flex;
-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;}
#service .text ul li{width:40%;}
#service .text ul li:first-child{margin-right:30px;}
.clear{display:block;clear:both;}
#service.detail .sec1 .pcflex{display: -webkit-box;display: -ms-flexbox;display: flex;
-webkit-box-align:center;-ms-flex-align: center;align-items: center;}
#service.detail .sec1 .pcflex img{max-width:187px;margin-right:50px;}
#service.detail .sec2 ul{display: -webkit-box;display: -ms-flexbox;display: flex;
-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;margin-bottom:50px;}
#service.detail .sec2 ul li{width:31%;margin-bottom:60px;}
}

@media screen and (max-width:1600px){
.mainimg{margin-top:-100px;}
.mainimg .soudan{top:11vw;right:2vw;}
.mainimg .soudan img{max-width:27vw;width:100%;}
.mainimg.top .soudan{top:33vw;}
/*#top .service .flex li p{font-size:1.6rem;}*/
}
@media screen and (max-width:1500px){
/*.headlogo a{max-width:16vw;}*/
.headlogo{max-width:16vw;}
header .flex{height:16vw;}
header .menu{padding: 0 2vw 0 18vw;}
header .menu li {padding-top: 2.4vw;}
header .Rpart {padding:2.5vw 3vw;}
header .Rpart .tel img{max-width:20vw;}
header .Rpart .contactbtn img{max-width:15vw;}
.mainimg{margin-top:-7vw;}
.mainimg .soudan img{max-width:29vw;width:100%;}
/*#service.detail .sec1 img{margin-right:60px;}*/
}

@media screen and (max-width:1300px){
footer .snslink{width:96%;}
#shopping ul li img{width:47%;}
#shopping ul li .text{margin-left:4%;}

#shopping .products li img{width:47%;}
#shopping .products li .text{margin-left:4%;}
.midashi h3{font-size: 2.7rem;}
#top .service .flex li p{font-size:1.4rem;}
#service h5{font-size:1.8rem;}
#top .corona{font-size:2rem;margin-top: 9vw;}
}

@media screen and (min-width:769px) and (max-width:1081px) {
footer .snslink li{width:48%;}
.mainimg .soudanbtn img {max-width: 23vw;}
main .wrapper {width: 97%;}
.midashi h3 {font-size: 2.4rem;}
.midashi p{font-size:1.4rem;margin-left:10px;}
#top .about h4{font-size:2.6rem;margin:0 0 25px;}
#top .service .flex{-webkit-box-pack: center;-ms-flex-pack: center;justify-content: center;}
#top .service .flex li{width:23%;margin-right:2%;}
#top .service .flex li:last-child{margin-right:0;}
#top .service .flex li p{font-size:1.5rem;}
#faq .qa li {padding: 55px 0 40px;}
#faq .qa li .question{font-size: 1.6rem;}
#service img.pc{margin-right:50px;}
#service .text{padding:0;}
#service .text p{margin:15px 0 20px;}
#top .corona{font-size:1.8rem;}
}

/*SP==========================================*/
@media screen and (max-width: 768px) {
.sp{display:block;}
.pc{display:none;}
body{font-size:1.4em;}

#spHeader{position:fixed;top:0;width:100%;height:75px;z-index:99;}
#spHeader .btn-gnavi {
    position: fixed;
    top: 25px;
    right: 20px;
    width: 30px;
    height: 24px;
    z-index: 3;
    box-sizing: border-box;
    cursor: pointer;
    -webkit-transition: all 400ms;
    transition: all 400ms;
}
#spHeader .btn-gnavi span {
    position: absolute;
    width: 30px;
    height: 4px;
    background: #0399ed;
    border-radius: 10px;
    -webkit-transition: all 400ms;
    transition: all 400ms;
}
#spHeader .btn-gnavi span:nth-child(1) {
    top: 0;
}
#spHeader .btn-gnavi span:nth-child(2) {
    top: 10px;
}
#spHeader .btn-gnavi span:nth-child(3) {
    top: 20px;
}
#spHeader .btn-gnavi.open span:nth-child(1) {
    transform: translateY(20px) rotate(-45deg);
    top: -10px;
}
#spHeader .btn-gnavi.open span:nth-child(2) {
    opacity: 0;
}
#spHeader .btn-gnavi.open span:nth-child(3) {
    transform: translateY(-20px) rotate(45deg);
    top: 30px;
}

#spHeader nav {
    position: fixed;
    top: 0;
    right: -3000px;
    width: 100%;
    background: #D1E1E8;
    box-sizing: border-box;
    z-index: 2;
    padding:14vw 7vw 7vw;
    box-shadow: 0 9px 6px -6px rgba(0,0,0,0.2);
}

.campain img {width: 100%; height:auto; max-height:none;}
.shopping img{	width:100%;}

.shopping .flex img{width:100%; max-width:none;}


#top .campain .zoom_list{ height: auto; max-height:none;
    /*max-width: 50%;*/
    width:100%;
    vertical-align: top;}
#top .campain .zoom_list.vertical img{ width:100%;/*auto; max-height:64vw;*/}


#spHeader nav ul li{margin-bottom:6vw;text-align:center;font-size:1.8rem;font-weight:600;}
#spHeader nav ul li a{display:block;}
#spHeader nav ul li .tel{margin:9vw 0;}
#spHeader nav ul li .contactbtn img{width:70%;margin:auto;}

/*.headlogo a {max-width: 19vw;}*/
.headlogo{max-width: 19vw;}
.mainimg {padding: 3%;margin:0;}
.mainimg .soudan{right:1vw;top:40vw;}
.mainimg .soudan img{max-width:49vw;}
.mainimg .soudanbtn{right:80px;top: 3vw;}
.mainimg .soudanbtn img{max-width:50vw;}
main .wrapper{width:94%;}
section.contents {margin:10vw 0vw;}
.midashi{margin-bottom: 6vw;}
.midashi h3 {font-size:2.3rem;line-height:1.3em;}
.midashi p {display:block;margin:10px 0 0;}
.button{width:85%;}

footer .totopfade img {max-width: 14vw;}
footer .snslink{width:85%;margin:0 auto 10vw;}
footer .snslink li{margin-top:5vw;}
footer .contact{padding:12vw 4vw;}
footer .contact h4{font-size: 2.4rem;line-height: 1.3em;}
footer .contact h5{font-size:2rem;margin: 6vw 0 3vw;}
footer .contact p{font-size: 1.6rem;}
footer .contact .contactbtn img{width:85%;margin:auto;}
footer nav{margin: 6vw 0 0;}
footer nav .flex{-ms-flex-wrap: wrap;flex-wrap: wrap;-webkit-box-pack: center;
-ms-flex-pack: center;justify-content: center;}
footer nav .flex li{width:33%;margin-bottom:3vw;font-size:1.4rem;}
footer nav .flex li:nth-child(3){border:none;}
footer nav .flex li:nth-child(4){width:38%;}
footer .copyright{padding:3vw;}

#shopping ul li{margin-bottom:7vw;}
#shopping .products li{margin-bottom:7vw;}
.form table th{display:block;padding-bottom:2vw;}
.form table td{display:block;padding-bottom:8vw;}
.form table td .flex{-webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;}
.form table td .flex li{width:48%;}
.form table td .zip input {max-width: 140px;}
.form table td .zip span{display:block;margin-top:10px;font-size:1.5rem;}
.form table td .zip .hyphen{margin:0 10px;display:inline-block;}
.form table td .kome{font-size:1.5rem;text-indent:-1em;padding-left:1em;}
.form h6.red {font-size: 1.8rem;margin: 4vw 0;line-height: 1.3em;}
.form h6.red span{display:block;text-indent:-1em;padding-left:1em;}

.popup table{margin:0 auto 4vw;}
.popup table th{font-size:1.4rem;padding-bottom:1.5vw;}
.popup table td{padding-bottom:3.5vw;}
.popup h4{font-size:2rem;margin-bottom:4vw;}
.popup .innerbox{padding:6vw 5vw 7vw;}
.popup .scroll_box{max-height:70vh;}
.popup .closebtn {
    right: 5vw;
    top: 5vw;
    width: 5vw;
    height: 5vw;
    line-height: 5vw;
}
.mainimg.top .soudan{top:83vw;}
#top{margin-top:15vw;}
#top .title img {max-width: 52vw;}
#top .title{margin-bottom:8vw;}
#top .corona{font-size:2rem;margin-top:8vw;}
#top .campain .zoom_list:first-of-type{margin-bottom:4vw;}
#top .campain ul li:first-child {
    text-align: center;
    margin: 0px auto 5vw auto;}
#top .about .title img, #top .news .title img, #top .shopping .title img, #top .access .title img{margin:auto;}
#top .about .flex{-webkit-box-orient: vertical;-webkit-box-direction: normal;-ms-flex-direction: column;flex-direction: column;}
#top .about .pic{-webkit-box-ordinal-group:3;-ms-flex-order:2;order:2;}
#top .about .text{-webkit-box-ordinal-group:2;-ms-flex-order:1;order:1;margin:5vw 0;}
#top .service, #top .shopping{padding:14vw 0;}
#top .service .flex{margin-bottom:3vw;}
#top .service .flex li{width:48%;margin-bottom:7vw;}
#top .service .flex li p{font-size:1.5rem;}
#top .about h4{margin:5vw 0;font-size:2.3rem;}
#top .news .button {margin-top: 9vw;}
#top .shopping .flex li{width:48%;margin-bottom:8vw;}
#top .shopping .product{margin:3vw 0;}
#top .shopping .title .red{margin-top: 7vw;}
#top .access table, #top .access table tr, #top .access table tbody, #top .access table th, #top .access table td{display:block;width:100%;}
#top .access table th{padding-top:4vw;}
#top .access table td{padding: 2vw 0 4vw;}
.gmap{padding-top: 56.25%;margin-top: 6vw;}
#faq .midashi {margin: 12vw 0 0;text-align:center;}
#faq .midashi  h3{font-size:2.1rem;}
#faq .qa li {padding: 6vw 0 5vw}
#faq .qa li .question {font-size: 1.5rem;padding-left: 60px;}
#faq .qa li .answer{padding-left: 60px;margin-top:5vw;}
#faq .qa li .question::before {font-size: 1.8rem;left: 11px;top:calc(50% - 14px);}
#faq .qa li .question::after {
    left: -5px;
    width: 48px;
    height: 48px;
    border-radius: 48px;
    margin-top: -28px;
}
#faq .qa li .answer::before {font-size: 1.8rem;left: 10px;}
#news .pagination li{width:20%;}
#news .pagination li:nth-child(2){width:60%;}
#news .alls{margin-bottom:5vw;}
#news .alls li{padding:0 0 5vw;}
#news.detail .date {padding-bottom: 0.5vw;}
#news.detail .kiji{margin:8vw 0;}
#news.detail .pic1{margin-bottom:4vw;}
#news.detail .pic2{margin:4vw 0;}
#news.detail .kiji p, #service.detail .sec1 p {font-size: 1.4rem;line-height: 1.7em;}



#news.detail .kiji_images{margin:20px 0px; text-align:center;}
#news.detail .kiji_images img{width:100%; max-width:none;}
#news.detail .kiji_images .limage{}
#news.detail .kiji_images .rimage{margin-left:0px; margin-top:20px;}


#service .spflex{display: -webkit-box;display: -ms-flexbox;display: flex;
webkit-box-pack: justify;-ms-flex-pack: justify;justify-content: space-between;
-webkit-box-align: start;-ms-flex-align: start;align-items: flex-start;
margin:5vw 0;}
#service .spflex img{width:34%;margin-right:5%;}
#service .midashi{margin:12vw 0 1.5vw;}
#service .text ul li:first-child{margin-bottom:4vw;}
#service h5{font-size:1.6em;}
#service.detail h2{font-size:3rem;margin-bottom:10vw;}
#service.detail .sec1 img{float:left;margin:0 6% 0 0;width:34%;}
#service.detail .midashi {margin: 14vw 0 6vw;}
#service.detail h5 {margin: 4vw 0 3vw;}
#service.detail .sec2 ul li{margin-bottom:9vw;}

}
@media screen and (max-width: 568px) {
#top .corona{font-size:1.6rem;}
}
