@charset "UTF-8";
/*common*/
body{
}
h1{display: none;}
.wrapper{max-width:600px;}
header {
    height: 60px;
    top: 0;
    left: 0;
    z-index: 9000;
    background-color: #FFF;
    width: 100vw;
    position:fixed;    
    transform: translate3d(0, 0, 0);
}
header.fix{
  top: 0;
  left: 0;
}
.headinfo {
    height: 60px;
}
.logo {
    width: 38%;
    max-width: 180px;
}
.pay{display: none;}
.contact {
    width: 52%;
    max-width: 195px;
    margin-top: 10px;
    margin-right: 0px;
}
.contact a {
    height: 40px;
    line-height: 130%;
    padding: 0 0;
    border-radius: 15px;
    font-size: 12px;}
.contact img {
    width: 22px;}
.contact span.tel {
        font-size: 16px;}
.contact span.time {
            font-size: 10px;}
.sp_menubt{
    width: 40px;
    height: 40px;
    display: block;
    border: 1px solid #999;
    margin: 12px 0 0 0;
    margin-right: 5px;
    border-radius: 5px;
}

nav{
    height: 60px;
    position: relative;
    z-index: -1;
    background-color: #FFF;
    display: none;
}
nav ul{
    display: none;
}
.sp_nav{
  display: block;
}
#navArea{
  top: 0;
  right: 0;
  width: 100vw;
  height: 60px;
}
/*============
nav
=============*/
.sp_nav {
  display: block;
  position: fixed;
  top: 0;
  left: -100vw;
  bottom: 0;
  width: 100vw;
  height: 100vh;
  background: #EEEEff;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  transition: all .5s;
  z-index: 3;
  opacity: 0;
}
.open .sp_nav {
  left: 0;
  opacity: 1;
}
.sp_nav .inner {
  padding: 70px 25px 25px 25px;
}
.sp_nav .inner ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
.sp_nav .inner ul li {
  position: relative;
  margin: 0;
  border-bottom: 1px solid #333;
}
.sp_nav .inner ul li a {
  display: block;
  color: #333;
  font-size: 14px;
  padding: 1em;
  text-decoration: none;
  transition-duration: 0.2s;
}
.sp_nav .inner ul li a:hover {
  background: #e4e4e4;
}

/*============
.toggle_btn
=============*/
.toggle_btn {
  display: block;
  top: 15px;
  right: 5px;
  width: 35px;
  height: 30px;
  transition: all .5s;
  cursor: pointer;
  position: relative;
}
.toggle_btn span {
  display: block;
  position: absolute;
  left: 0;
  width: 35px;
  height: 2px;
  background-color: #333;
  border-radius: 4px;
  transition: all .5s;
}
.toggle_btn span:nth-child(1) {
  top: 4px;
}
.toggle_btn span:nth-child(2) {
  top: 14px;
}
.toggle_btn span:nth-child(3) {
  bottom: 4px;
}
.open .toggle_btn span {
  background-color: #333;
}
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(10px) rotate(-315deg);
  transform: translateY(10px) rotate(-315deg);
}
.open .toggle_btn span:nth-child(2) {
  opacity: 0;
}
.open .toggle_btn span:nth-child(3) {
  -webkit-transform: translateY(-10px) rotate(315deg);
  transform: translateY(-10px) rotate(315deg);
}
/*============
#mask
=============*/
#mask {
  display: none;
  transition: all .5s;
}
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100%;
  background: #000;
  opacity: .8;
  z-index: 2;
  cursor: pointer;
}
/*============
main
=============*/
main {
position: relative;
z-index: 0;
}

/*============
body
=============*/

/**/
.scroll-infinity__wrap {
    height: 150px;
}
.scroll-infinity__item {
    width: 200px;
    height: 150px;
  }
  .secmargin {
    margin-top: 20px;
    margin-bottom: 20px;
}
.mannga h2 {
  width: 95%;
  margin-left: auto;
  margin-right: auto;
}
h2{font-size: 2.5rem;}
h2::before{
  bottom: 12px;
  height: 13px;
}
.mannga_flex {
  display: -webkit-block;
  display: block;
}
.manga_wrap {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
.yoki{
  margin-top: 30px;
}
.about h3 {font-size: 2.5rem;}
.yuuryou {
  width: 90%;
  margin: 0 auto;
}
.about_wrap{
  margin-top: 50px;
  display: -webkit-block;
  display: block;
}
.about_wrap .youtube{
  width: 90%;
  max-width: 560px;
  margin: auto;
}
.youtube_box{
  display: block;
  width: 100%;
  height: 100%;
}
.price h3 {
  font-size: 1.75rem;
    width: 100vw;
    background-position: 0 18px;
    margin-bottom: 0px;}
.price_wrap {
  display: -webkit-block;
  display: flex;
  flex-wrap: wrap;
}
.price_box {
        width: 97%;
        border: 1px solid #3d86d8;
        border-radius: 22px;
        margin: 20px auto;
    }
    .price_box h4 {font-size:1.1rem;}
    .price_box h4 span {    font-size: 70%;}
    .pricetext {
      font-size: 2.2rem;
      margin-top: -5px;
      margin-bottom: 5px;
      line-height: 150%;
  }
  /*footer*/
  .footwrap {
    display: -webkit-flex;
    display: block;
    justify-content: space-between;
}
.company-info {
    width: 100vw;
    text-align: center;
}
.company-info img {
  margin: 20px auto 0;
}
.company-info p{
}
.foot-nav {
  display: none;
  width: 100vw;
  position: relative;
}
.foot-nav ul {
  margin-top: 20px;
  margin-left: 1em;
}
.news h2, .price h3{
  width: 100vw;
  font-size: 2.2rem;
  margin-bottom: 0;
  padding-bottom: 25px;
  background-position: 0 20px;
  background-size: 70%;
}
.slick-prev {
  left: 00px !important;
}
.slick-next {
  right: 0px !important;
}
.newswarap{
  padding: 0 25px;
}
.newswarap .slick-list {
  padding: 0 20px 0 0 !important;
}
.newsblock {
  margin-right: 15px;
}
.mannga h3 {
  width: 100vw;
  overflow: hidden;
  font-size: 2.5rem;
  margin-bottom: 20px;
}
.about_wrap .youtube h4 {
  font-size: 1.7rem;
}
.news h2, .price h3 {
  font-size: 1.8rem;
}
.voice .midashi h4{
  width: 100vw;
}
.fix{display: none;}
.paper:before{display: none;}
.paper-content{left: 0;}
.paper-content textarea{font-size: 13px;}
.example_wrap h4{font-size: 20px;    padding: 10px 0.5em 10px 50px;}
.example_wrap h4 .num{    width: 30px;font-size: 30px;top: 30px;}
.example_wrap h4 .case{left: 7px;    width: 30px;font-size: 18px;}
.hiyou_block{margin: 0;    width: 38%;    font-size: 24px;}
.mainasu{    width: 20px;padding: 13% 0px;}
.price_block{width: 90%;    background-size: 70%;padding-top: 50px;}
.example_wrap p.jisitsu{    font-size: 24px;}
.example_wrap h5{font-size: 50px;}
.dekirukoto h3 {  font-size: 190%;}
.deki_wrap {
  justify-content: center;}
.deki_block {
  width: 130px;
  height: 130px;padding: 20px;font-size: 14px;}
  .contact_block01 p span{    font-size: 13px;}
  .contact_block01{
    width: 95%;
    padding: 25px 2%;
  }
  .contact_block01 h4{font-size: 24px;    margin-bottom: 0px;}
  .contact_block01 .sub_wrap {
    display: -webkit-flex;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}
.contact_block01 .tel_block {
  width: 100%;
  margin: 10px 0;
}
.contact_block01 .rec_block {
  width: 100%;
  margin: 10px 0;
}
.contact_block01 h5{font-size: 32px;    margin-top: 10px;}
.contact_block01 .contact_bt{width: 90%;}
.contact_block01 .contact_bt a{font-size: 100%;}
.contact_block01{    background-position: right 240px, -20px 111px;}
.omakase h4{font-size: 20px;}
.omakase h5{    width: 100vw;    font-size: 32px;background-position: 0 5px;}
.omakase h4.under {
  margin-top: -10px;
}
.befoafter_wrap .block h4{    font-size: 24px;}
.befoafter_wrap .block p{font-size: 16px;padding: 5px;}
.midashi h3{width: 100%;font-size: 280%;    top: 1.2em;}
.midashi h4{width: 90%;    top: -3.5em;}
.flow_block{width: 46%;}
.contact_bt{width: 90%;}
.tel_block {
  margin: 20px 5%;
}
.point .midashi h3{font-size: 160%;}
.point .midashi h4{font-size: 150%; top: -4em;}
.flow_wrap{    flex-wrap: wrap;}
.point_block{width: 78%;    position: relative;  left: 20px;}
  .table_block table{font-size: 140%;}
  .voice .midashi h3{        top: 12px;}
  .voice .midashi h4{        width: 95vw;font-size: 100%;        top: -7em;}
  .voice_block{    margin: 10px 5px;padding: 10px;}
  .voice_block h5 {
    font-size: 140%;
}
.voice_block .paper-content2 p{font-size: 120%;}
.voice_block .paper2{height: auto;}
.contact_block02{width: 95%;}
.contact_block02 h3{font-size: 20px;padding: 5px 0;}
.mitsumorijutsu .midashi h3{
  width: 100%;
  font-size: 150%;
  background-position: 0 20px;
}
.mitsumorijutsu .mi_block01{
  width: 95%;
}
.mi_wrap{
  width: 90%;
  padding: 3%;
}
.mi_wrap details summary{
  font-size: 135%;
  overflow: hidden;
}

.mi_wrap details p{font-size: 120%;}
.syuukatsu .midashi h3{width: 100vw;top:0}
.mi_matome {  width: 92%;  padding: 2%;}
.syuukatsu_wrap{  width: 92%;  padding: 2%;}
.syuukatsu_wrap details summary{font-size: 160%;}
.mi_matome h6 {  font-size: 140%;  margin: 0 0 10px 0;}
.mitsumorijutsu .midashi h3.l1{background-position: 0 10px;}
.yasiki .midashi h3{        top: 30px;    padding-bottom: 10px;
}
.yasiki .midashi h4{top:-60px;}
.syuukatsu .mi_block01{width: 95%;}
.yasiki .syuukatsu_wrap details summary{line-height: 120%;}
.syuukatsu details p {
  font-size: 130%;
  line-height: 130%;
}
.jikka .midashi h4 {
  width: 98vw;
  font-size: 140%;
}
.jikka .midashi h3{
top:40px;
background-position: 0 0px;
}
.qanda h3 {
  font-size: 250%;
  width: 100vw;
}
.qa_wrap{width: 96%;}
.balloon-color {
  margin: 10px 0;}
.left .chatting-color{width: calc(100% - 170px);
  margin: 15px 0px 20px 10px;
  padding: 5px 5px;}
  .right .chatting-color{width: calc(100% - 170px);
    margin: 15px 10px 20px 0px;
    padding: 5px 5px;}
.text-color{font-size: 14px;}
.tiiki .tiiki_block01 {
  width: 95%;
  margin: 00px auto;
}
.tiiki .tiiki_block01 span{
  font-size: 120%;
  margin: 10px 3px;
  width: 4.5em;
}
.tiiki .tiiki_block01 h4{font-size: 130%;}
.tiiki .tiiki_block01 p {
  font-size: 110%;}
  .tiiki_block02{width: 96%;}
  .contact_sec h3{
    font-size: 190%;
  }
  .contact_block p {
    text-align: left;
    font-size: 150%;}
    .contact_block03 {
      width: 95%;
      margin: auto;
  }
  .contact_block03 dl{
    flex-wrap: wrap;}
  .contact_block03 dt{
    font-size: 140%;
    text-align: left;
    width: 50%;
  }
  .contact_block03 dd{
    text-align: right;
    width: 50%;
    position: relative;
  }
  .contact_block03 dd span.hissu{
    position: relative;
    text-align: right;
    right: 0;
    display: inline-block;
  }
  .contact_block03 dd span.ninni{
    display: inline-block;}
  .contact_block03 dd.formwaku{
    width: 100%;
  }
  .acc_wrap {
    flex-wrap: wrap;
}
.acc_text_block {
  width: 94%;
  margin: 0 auto 10px 0;
}
.acc_map_block {
  width: 90%;
  margin: auto;
}
.topics_block .topics_textblock img {
  /*float: none;
  width: 100%;*/
}


.topics_block {
  width: 95%;
  padding-bottom: 1em;
}
.topics_block .topics_textblock {
  margin: 0.5em;
}
.topics_block .topics_tag_wrap {
  margin-left: 0.2em;
}
.newswarap_list .newsblock{
  width: 100%;
  margin: 30px auto;
}
h2.tagh{
  width: 100%;
  font-size: 3rem;
  margin-bottom: 0px;
}
.blog h3{
  width: 100%;
  margin-bottom: 0px;
}
.blog_block{width:100%;}

.blogdetail_block h3 {
  width: 100%;
  background-size: 75%;
  margin-bottom: 0px;
  line-height: 1;
}
.blogdetail_block{
  width: 90%;
  padding-left: 5%;
  padding-right: 5%;
}
.blog .mi_matome {
    width: 90%;}
.blog .mi_wrap {
  width: 95%;
  padding: 2.5%;}

  .blog .mi_wrap details summary {
    font-size: 100%;}
    
.spfix{
  display: flex;
  position: fixed;
  z-index: 9999;
  bottom: 0px;
  right: 0px;
  height: 80px;
  width: 100%;
}
.spfix .bt_box{
  width: 33%;
  height: 80px;
  text-align: center;
  padding: 5px 0;
  position: relative;
  border-right: solid 1px #333;
}
.spfix .bt_box a{
  text-decoration: none;
  color: #FFF;
  font-size: 150%;
  font-family: "Kiwi Maru", serif;
  font-weight: 400;
  font-style: normal;
}
.spfix .bt_box img{
  width: 50px;
  display: block;
  margin: auto;
}
.spfix .line img{
  width: 70px;
  display: block;
  margin: auto;
}
.spfix .tel{
  background-color: #0354e3;
  background: linear-gradient(#0354e3, #BBDDFF, #0354e3);
  color: #FFF;
}
.spfix .mail{
  background-color: #f98d00;
  background: linear-gradient(#f98d00, #FFDDBB, #f98d00);
  color: #FFF;
}
.spfix .line{
  bottom: 00px;
background-color: #FFF;
background: linear-gradient(#00b900, 5%,  #FFF, 90%, #00b900);
color: #00b900;}
.spfix .line a{
  color: #00b900;
}
body{
  padding-bottom: 80px;
}
.blogdetail_block .detailtext_box img {
  width: 100%;
  float: none;
  margin-bottom: 1em;
}
p,div{
word-break: break-all;
}
.disp_sp{display: :block;}
.disp_pc{display: :none;}