hhtml,
body {
	width: 100%;
  background: #efeae1;
}

h1, h2, h3, h4, h5, h6 {
	clear: both;
	font-weight: normal;
}


body {
	font-family: "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
	font-size: 12px;
	line-height: 1.7em;
	color: #000;
	margin: 0;
	-webkit-text-size-adjust: none;
}

/*infoエリアをはじめは非表示*/
#info{
  display: none;
}

/*モーダルの横幅を変更したい場合*/
.modaal-container{
    max-width: 600px;
}

/*モーダルのボタンの色を変更したい場合*/
.modaal-close:after, 
.modaal-close:before{
  background:#ccc;	
}

.modaal-close:focus:after,
.modaal-close:focus:before,
.modaal-close:hover:after,
.modaal-close:hover:before{
  background:#333;
}
.sp { display: none; visibility: hidden;}
#wrap {
	margin: 0;
	padding: 0;
}
#toppr {display: block; max-width: 1000px; width: 95%; margin: auto; }
#vi { display: block;}
#vi img{ width: 100%; height: auto; vertical-align: top;}
#head { display: block; text-align: center; padding: 1em 0;}
#main h2 { font-size: 26px; font-weight: bold; text-align: center; background: #136c05; color: #fff; padding: 1em 0;}
#pimg { width: 300px; display: block; margin: auto;}
#pimg img{ width: 100%; height: auto;}
#tochi { display: block; width: 200px; margin: auto; }
#tochi img { width: 100%; height: auto;}
#bt { display: block; text-align: center; margin: 5em 0; }
#bt a { display: inline-block;  background: #136c05; color: #fff; text-decoration: none; padding: 1em; border-radius: 36px; font-size: 24px; font-weight: bold;-webkit-transition: all .8s; transition: all .8s;}
#bt a:hover { background: #000;}
#flows { display: flex; justify-content: space-between;}
#flows section { display: block; text-align: center; flex-basis: 48%; }
#flows section a { font-size: 26px; font-weight: bold; line-height: 1.4;-webkit-transition: all .8s; transition: all .8s;}
#flows section a:hover { background: #000; }
.bt01 a { background: #8b11a8; display: block; color: #fff; text-decoration: none; padding: 3em 0; border-radius: 10px;}
.bt02 a { background: #5a34bd; display: block; color: #fff; text-decoration: none; padding: 3em 0; border-radius: 10px;}
#hd img { width: 100%; height: auto;} 

#faq section { border: solid 8px #65ad5f; margin: 0 0 2em 0; padding: 3em; font-size: 18px; line-height: 2; background: #fff;}
#main #faq h2 { background: none; color: #000; text-align: left;  font-size: 30px; font-weight: bold; line-height: 1.4; margin: 0 0 1em 0; border-bottom:  dashed 4px #4aa22c; padding: 0 0 .6em 0; }
/* #head{ width: 100%;height: 100vh; background: url('vi.jpg'); background-position: top center;background-size: cover;display: flex;align-items: center; justify-content: center;} */
#head2{ width: 100%;height: 200px; background: url('vi.jpg'); background-position: center center;background-size: cover;display: flex;align-items: center;justify-content: center;}
#hd-copy { width: 50%; position: absolute; right: 1em; top:20%; bottom:15%;}
#hd-copy2 { width: 40%; position: absolute; right: 1em; top: 2%; }
#hd-copy img,#hd-copy2 img { width: 100%; height: auto;}
#hdud { background: #e6520f; color: #fff; width: 100%; text-align: center; padding: .4em 0; margin: 0;}
#hdud h2 { font-size: 36px; font-weight: bold;}
#phonetop { max-width: 1000px; width: 95%; margin: 4em auto 4em auto; display: block;}
#phonetop img { width: 100%; height: auto;}
#maincopy  { font-size: 22px; font-weight: bold; line-height: 1.6; max-width: 1000px; width: 95%; margin: 2em auto 0 auto; display: block;}
#ara { font-size: 16px; font-weight: bold; text-align: center; line-height: 1.6; max-width: 1000px; width: 95%; margin: 2em auto 0 auto; display: block;}
#ara h3 { font-size: 30px; font-weight: bold; line-height: 1.6; background: #d60000; color: #fff; padding: .3em 1em; display: block; border-radius: 20px; }
#main { display: block; max-width: 1000px; width: 95%; margin: auto; padding: 3em 0; }
#main h1 { font-size: 32px; font-weight: bold; border: solid 6px #136c05; padding: 1em 1em; border-radius: 20px; background: #fff; }
#cp { font-size: 26px; font-weight: bold; line-height: 1.6; margin-bottom: 1em;}
#plan  { width: 100%; background: #fffef5; margin: 4em 0 0 0; display: block;}
#plan2  { width: 100%; background: #fffef5; margin:  0; display: block;}
#plan2 h2 { font-size: 36px; font-weight: bold; line-height: 1.3; display: inline-block; text-align: center; border: solid 4px #fed720; padding: .8em 2em; margin-bottom: 1em;}
#plan2 p { font-weight: bold; line-height: 1.6;}
#plan2 img { max-width: 600px; width: 100%; height: auto;}
#plan-inner { max-width: 1000px; width: 95%; margin: auto; padding: 3em 0; display: block;}
#plantop { display: flex; justify-content: space-between; align-items: center; margin-bottom: 3em;}
#plantop section { flex-basis: 45%; text-align: center;}
#plantop h3 { font-size: 36px; font-weight: bold; line-height: 1.6; margin: 0 0 .3em 0;}
#plantop p { text-align: left; font-size: 20px; font-weight: bold; line-height: 1.6; margin: 0;}
#price { border: solid 6px #136c05; background: #ffffff; margin: auto; padding: 0; display: block;}
#price-inner { padding: 3em 4em;}
#price h4 { font-size: 40px; font-weight: bold; line-height: 1.6; text-align: center; margin: 0 0 1em 0;}
#price dl { font-size: 22px; font-weight: bold; display: flex; justify-content: space-between; border-bottom: dotted 1px #999; padding-bottom: .8em;}
#price dd { align-items: end;}
#faq { width: 100%; }
#faq-inner { max-width: 1000px; width: 95%; margin: auto; padding: 3em 0; display: block;}
#faq h3 {  font-size: 36px; font-weight: bold; line-height: 1.3; display: inline-block; text-align: center; border: solid 4px #fed720; padding: .8em 2em; margin-bottom: 2em; }
#pgWrap { text-align: center;}
#qa { display: flex; margin: 0 0 3em 0;}
.fqic { margin-right: 2em;}
#qa h4 { color: #ee5400; font-size: 30px; font-weight: bold; line-height: 1.3; margin: 0 0 .2em 0; padding: 0;}
#qa p { font-size: 18px; line-height: 1.6;}
#flow  { width: 100%; background: #fffef5; margin: 8em 0 0 0; display: block; position: relative;}
#flow-inner { max-width: 1000px; width: 95%; margin: auto; padding: 3em 0; display: block;}
#flimg { width: 100%; text-align: center; margin: -11em 0 0 0; display: block;}
#flow h3 { text-align: center; font-size: 54px; font-weight: bold; }
/* #fl { border: dotted 2px #8b11a8; background: #ffffff; margin: 0 auto 3em auto; padding: 0; display: block; text-align: center; } */
#fl { border-bottom: 1px solid #1c4a15; margin: 1em auto 1em auto; padding: 0; display: block; text-align: center; }
#fl-inner { padding: 3em;}
#fl h4 { font-size: 38px; font-weight: bold; line-height: 1.3; color: #1c4a15; margin: 0 0 .2em 0;}
#fl p { font-size: 20px;  font-weight: bold; line-height: 1.5;  margin: 0;}
#subplan  { width: 100%; background: #f1f1f1; margin: 8em 0 0 0; display: block;}
#subplan-inner { max-width: 1000px; width: 95%; margin: auto; padding: 4em 0; display: flex; justify-content: center;}
#subplan-inner section { flex-basis: 45%;}
#subplan h4 { font-size: 24px; font-weight: bold; background: #ffffff; border: solid 2px #bebebe; padding: .8em 0; text-align: center; margin: 0 0 1em 0; display: block; }
#subplan dl { font-size: 20px; font-weight: bold;}
#subplan dd { border-bottom: dotted 2px #bebebe; margin: -1em 0 .8em 0; padding: 0 0 .8em 7em;}
#subplan-inner a { text-align: right; font-size: 18px; font-weight: bold; color: #136c05; text-decoration: underline; display: block;}
#subplan-inner a:hover { text-decoration: none;}
#sbin  { max-width: 1000px; width: 95%; margin: auto; display: block; padding: 2em 0;}
#credit { max-width: 1000px; width: 95%; margin: auto; padding: 6em 0; display: block; text-align: center;}
#credit h3 { font-size: 30px; font-weight: bold; background: #ee5400; color: #ffffff; padding: .8em 0; margin: 0 0 1em; }
#credit p { font-size: 18px; line-height: 1.6;}
#credit img { max-width: 877px; width: 100%; height: auto;}
#voice  { width: 90%;  margin: 6em 0 0 0; display: block; margin: auto;}
#voice-inner { max-width: 1000px; width: 95%; margin: auto; padding: 3em 0; display: block; text-align: center;}
#voice h3 {text-align: center; font-size: 32px; font-weight: bold; }
#vc { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 2em 0 0 0;}
#vc section { text-align: left; flex-basis: 24%; border:  dotted 1px #136c05; background: #ffffff; position: relative; margin-bottom: 2em; border-radius: 20px;}
#vc section img { position: absolute; right: 10px; margin-top:-70px; }
#vc section h4 { font-size: 16px; font-weight: bold;border-bottom: solid 2px #136c05; padding-bottom: .5em; margin: 0 0 .5em 0; text-align: center;}
#eria { display: flex; width: 100%;}
#eria section { flex-basis: 100%; text-align: center;}
#eria section #inner { padding: 4em;}
#A { background: #ffec91;}
#B { background: #cae9b4;}
#eria h3 { font-size: 24px; font-weight: bold; background: #ffffff;  padding: .8em 0; text-align: center; margin: 0 0 2em 0; display: block;}
#eria h4 { font-size: 18px; font-weight: bold; line-height: 1.6; margin: 0;}
#eria p { font-size: 16px;}
#eria img { width: 100%; height: auto;}
.vcin { padding: 2em;}
#untl {max-width: 1000px; width: 95%; margin: auto; padding: 5em 0; display: block; text-align: center;}
#untl img { max-width: 708px; width: 100%; height: auto;}
#footer { background: #d8d7cc; display: block; margin: 0;}
#footer-inner { max-width: 1000px; width: 95%; margin: auto; padding: 5em 0 7em 0; display: block; text-align: center;}
#niji img { max-width: 599px; width: 80%; height: auto;}
#niji { margin-bottom: 1em;}
#footer h3 { font-size: 20px; font-weight: bold;}
#flogo { font-size: 33px; font-weight: bold; margin-bottom: 1em;}
#ad {  font-size: 20px; font-weight: bold; line-height: 1.4;}
#blockB { font-size: 18px; max-width: 1000px; width: 95%; margin: auto; padding: 3em  0; display: block; text-align: center;}
#blockH { width: 100%; display: block; background: #fff5c7;}
#blockH-inner {max-width: 1000px; width: 95%; margin: auto; padding: 5em 0; display: block; }
#menu { width: 100%; background: #ffab00; display: block; margin: 0; padding: 0;}
#menu ul { margin: 0; padding: 0; display: flex;}
#menu li { list-style: none; flex: 1; text-align: center; border-right: solid 1px #fff;}
#menu li a { padding: 1.2em 0; display: block; text-decoration: none; font-size: 20px; font-weight: bold; color: #fff;}
#menu li a:hover { background: #ff7200; color: #fff;}
#footer h3.meda { font-size: 33px; font-weight: bold; color: #006a00; margin-top: 2em;}
.fixed {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 1000;
}
#back a {
   color: #fff;
   text-decoration: none;
   display: inline-block;
   background: #ee5400;;
   padding: .3em 1em;
}

#back {
   display: block;
   padding:0 0 2em 0;
   font-size: 26px;
   font-weight: bold;
   text-align: center;
}

table {
   border: solid 6px #136c05;;
   border-collapse: collapse;
   border-spacing: 0;
   margin: 10px 0 2em 0;
   width: 100%;
   font-size: 24px;
   line-height: 1.4;
}
table th {
    padding: 1em;
    border: solid 4px #136c05;;
    border-width: 0 0 4px 4px;
    background: #fff;
    vertical-align: middle;
}
table td {
    padding: 1em;
    border: solid 4px #136c05;;
    border-width: 0 0 4px 4px;
    background: #fff;
    vertical-align: middle;
    font-weight: bold;
}

table th:first-child {
   width: 40%;
}
.tbsizeb { font-size: 22px; font-weight: bold;}
img.imgcenter { display: block; text-align: center; margin: 0 auto 4em auto; }
/*メニューをページ下部に固定*/
#sp-fixed-menu{
   position: fixed;
   width: 100%;
   bottom: 0px;
   font-size: 0;
   z-index: 99;
}

#sp-fixed-menu ul{
   display: flex;
   list-style: none;
   padding:0;
   margin:0;
   width:100%;
}

#sp-fixed-menu li{
   justify-content: center;
   align-items: center;
   line-height: 1.6;
   width: 100%;
   padding:0;
   margin:0;
   font-size: 18px;
   font-weight: bold;
}

#sp-fixed-menu img {
   position: relative;
   top:.3em;
   padding-right: .2em;
}

#sp-fixed-menu li:last-child{
   background: #075814;
}

#sp-fixed-menu li a{
   color: #fff;
   text-align: center;
   display:block;
   width: 100%;
   padding:20px 0;
   text-decoration: none;
}
.side-menu {
  display: none;
  visibility: hidden;
}
/*PCの場合にはメニューを表示させない*/
@media (min-width: 768px) {
   .for-sp{
	  display:none;
	}
}

@media only screen and (max-width: 999px) {
#plantop { display: block;}
#plantop p { text-align: center;}   
#vc { margin: 2em 0 0 0;}
#vc section { left; flex-basis: 48%; }
#vc section img { right: 60px; }
#voice h3 {font-size: 22px; line-height: 1.3;}
}

@media only screen and (max-width: 900px) {
  #ara h3 { font-size: 20px; font-weight: bold; line-height: 1.6; background: #d60000; color: #fff; padding: .3em 1em; display: block; border-radius: 20px; }
   #Wrap { height: auto;}
    #head{ height: auto; background-size: cover; background-repeat: no-repeat; } 
	 #hd-copy { position: relative; display: block;  padding: 6em 0;} 
   #hd-copy img { width: 100%; height: auto;}
   #menu li a { padding: 1.6em 0; display: block; text-decoration: none; font-size: 2vw; font-weight: bold; color: #fff;}
   #hd-copy2 { width: 45%; top: 3%; }
   #phonetop { margin: 3em auto 4em auto;}
   #hdud { width: 100%; position: relative; bottom: 0; left: 0;}
   body.Android #hdud {  bottom: -10%;}
   body.iPhone #hdud {  bottom: -13%;}
	#hdud h2 { font-size: 18px;}
	#maincopy  { font-size: 18px; font-weight: bold; line-height: 1.6;}
   #plantop h3 { font-size: 28px;}   
   #plan2 h2{ font-size: 28px;}   
   #plantop p { text-align: left; font-size: 18px;}   
   .plimg img { width: 100%; height: auto;}
   .br-sp {display: none;}
   .tbsizeb { font-size: 18px;}
   #price-inner { padding: 2em;}
   #price h4 { font-size: 22px;}
   #price dl { font-size: 16px; align-items: center;}
   #price dt span { font-size: 12px; display: block; font-weight: normal;}
   #faq h3 { font-size: 28px; padding: .6em 1em;} 
   #qa h4 { font-size: 22px;}
   .fqic img { width: 50px; height: auto;}
   #flow h3 { font-size: 28px; }
   #fl h4 { font-size: 26px;}
   #fl h4 span { display: block;}
   #fl p { font-size: 18px;}
   #flow img { max-width: 240px; width: 100%; height: auto;}
   #subplan-inner { display: block;}
   #subplan-inner section { margin-bottom: 4em;}
   #subplan h4 { font-size: 22px; }
   #subplan dl { font-size: 18px;}
   #credit h3 { font-size: 22px; line-height: 1.3; padding: .8em 1em;}
   #credit span { display: block;}
   #eria { display: block;}
}

@media only screen and (max-width: 644px) {
  #head img { max-width:280px; height: auto;}
  .pc { display: none; visibility: hidden}
  .sp { display: block; visibility:visible;}
  #main { display: block; max-width: 1000px; width: 95%; margin: auto; padding: 2em 0; }
  table {
     border: solid 4px #136c05;;
     border-collapse: collapse;
     border-spacing: 0;
     margin: 10px 0 2em 0;
     width: 100%;
     font-size: 16px;
  }
  #footer h3.meda { font-size: 24px; font-weight: bold; color: #006a00; margin-top: 2em;}
  #bt { display: block; text-align: center; margin: 2em 0; }
  #flows section a { font-size: 18px; font-weight: bold; line-height: 1.4;-webkit-transition: all .8s; transition: all .8s;}
  #faq section { border: solid 4px #8cccfc; margin: 0 0 2em 0; padding: 2em; font-size: 16px; line-height: 1.6; background: #fff;}
  #faq h2 { font-size: 24px; font-weight: bold; line-height: 1.4; margin: 0 0 1em 0; border-bottom:  dashed 4px #136c05;; padding-bottom: .6em; background: }
  #price { border: solid 4px #136c05;; background: #ffffff; margin: auto; padding: 0; display: block;}
  #cp { font-size: 20px; font-weight: bold; line-height: 1.6; margin-bottom: 1em;}
  #main h1 { font-size: 26px; font-weight: bold; border: solid 3px #136c05;; padding: 1em 1em; border-radius: 20px; background: #fff; }
  #menu li a { padding: 2em 0; display: block; text-decoration: none; font-size: 2.6vw; font-weight: bold; color: #fff;}
  .side-menu {
    position: fixed;
    top: inherit;
    bottom: 1.5em;
    right:0;
    left: 0;
    z-index:101;
    font-size:0;
    display: block;
    visibility:visible;
  }
  
  .side-menu ul {
    margin: 0;
    padding: 0;
  }
  .side-menu li {
    width: 100%;
    margin: 0;
    float: left;
    display: block;
  }
  .side-menu li a{
    -webkit-writing-mode: inherit;
    -ms-writing-mode: inherit;
    writing-mode: inherit;
    font-size:18px; 
    font-weight: bold;
    padding:1.5em 1em;
    text-decoration: none;
    text-align: center;
    color:#fff;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  _:-ms-lang(x)::-ms-backdrop,.side-menu li a{
    -ms-writing-mode: lr-tb;
    font-size:14px; 
    padding:1.5em 1em;
    text-decoration: none;
    text-align: center;
    color:#fff;
    -webkit-transition: 0.5s;
    transition: 0.5s;
  }
  
  .side-menu li a{
    display: block;
    background: #136c05;;
    
  }
  .side-menu li a:before{
    content: url('images/tel.svg');
    display: inline-block;
    position: relative;
    top:.3em;
  }
  
  .side-menu li a:hover{
    background: #000;
  }
  
  _::-webkit-full-page-media, _:future, :root .side-menu li a{ 
    position: relative;
    right: 0em;
    z-index:1;
  }
  _::-webkit-full-page-media, _:future, :root .side-menu li a:hover {
    position: relative;
    right: 0em;	
    z-index:1;
  }
  @-moz-document url-prefix() {
  .side-menu li a{
    position: relative;
    right: 0em;
  }


}