body{
  color:#333;
}

a:hover{
  opacity:.5;
}

img{
  max-width:100%;
  vertical-align:top;
}

.registerbox{
  padding:40px 0;
  background:#fff2f2;
  margin-top: 20px;
}
@media screen and (max-width:767px){
  .registerbox{
    padding:35px 15px;
  }
}
.registerbox .register{
  max-width:880px;
  margin:0 auto;
  text-align:center;
}
.registerbox .register-ttl{
  margin-bottom:10px;
  font-size:20px;
  font-weight:600;
}
@media screen and (max-width:767px){
  .registerbox .register-ttl{
    font-size:18px;
    margin-bottom: 10px;
  }
}
.registerbox .register-text{
  margin-bottom:20px;
  font-size:15px;
}
.registerbox .register-button-list{
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: center;
}
.registerbox .register-button-list::before{
  position: absolute;
  left: 0;
  top: -64px;
  display: block;
  content: "";
  width: 11.1%;
  padding-top: 45%;
  background-image: url(../images/tepcon.png);
  background-position: 50%;
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width:767px){
  .registerbox .register-button-list::before{
    content:none;
  }
}
.registerbox .register-button-list li{
  width: 40%;
}
@media screen and (max-width: 767px){
  .registerbox .register-button-list li {
    width: 100%;
  }
}
.registerbox .register-button-list .button{
  min-width: 240px;
}
@media screen and (max-width:767px){
  .registerbox .register-button-list .button{
    max-width: 280px;
    margin-right: auto;margin-left: auto;
  }
}
.registerbox .register .button-list li{
  width:32.15%;
}
@media screen and (max-width:767px){
  .registerbox .register .button-list li{
    width:50%;
  }
}
.registerbox .register .button-list li a{
  max-width:135%;
  min-width:82%;
}
@media screen and (max-width:767px){
  .registerbox .register .button-list li a{
    max-width:100%;
    padding:10px .5em;
  }
}
@media screen and (max-width:320px){
  .registerbox .register .button-list li a{
    font-size:12px;
  }
}
@media screen and (max-width:767px){
  .registerbox .register .button-list li a:after{
    content:none;
  }
}
@media screen and (max-width:767px){
  .registerbox .register .button-list li+li{
    margin-left:3%;
  }
}

.cautionbox{
  width:100vw;
  padding:40px 0;
  margin:0 calc(50% - 50vw);
  background:#fff2f2;
}
@media screen and (max-width:767px){
  .cautionbox{
    width:100%;
    padding:35px 15px;
  }
}
.cautionbox-inr{
  max-width:880px;
  margin:0 auto;
  padding:0 20px;
}
@media screen and (max-width:767px){
  .cautionbox-inr{
    padding:0;
  }
}
.cautionbox-ttl{
  margin-bottom:15px;
  color:#e71a21;
  font-size:20px;
  font-weight:600;
  text-align:center;
}
.cautionbox-body{
  font-size:15px;
}

.balloonbox{
  position:relative;
  padding:30px 60px;
  border:4px solid #e9eaea;
  border-radius:10px;
}
@media screen and (max-width:767px){
  .balloonbox{
    padding:20px 10px;
  }
}
.balloonbox:before{
  top:-21px;
  margin-left:-13px;
  border:10px solid transparent;
  border-bottom:12px solid #fff;
  z-index:2;
}
.balloonbox:after,.balloonbox:before{
  display:block;
  content:"";
  position:absolute;
  left:50%;
}
.balloonbox:after{
  top:-30px;
  margin-left:-17px;
  border:14px solid transparent;
  border-bottom-color:#e9eaea;
  z-index:1;
}
.balloonbox-ttl{
  margin-bottom:10px;
  font-size:22px;
  font-weight:600;
  text-align:center;
}
@media screen and (max-width:767px){
  .balloonbox-ttl{
    font-size:18px;
  }
}

.note-box,.note-box--white{
  padding:10px 20px;
  background:#fff;
  border-radius:3px;
}

.note-box--gray{
  background:#f5f6f7;
}

.note-box-body{
  font-size:16px;
  font-weight:600;
}




@media screen and (max-width:767px){
  .note-box-body.sp-center{
    text-align:center;
  }
}

.note-box--white,.note-box-w{
  background:#fff;
}

.note-box-w{
  padding:10px 20px;
  border-radius:3px;
}
.note-box-w-body{
  font-size:14px;
  color:#666;
}
@media screen and (max-width:767px){
  .note-box-w-body.sp-center{
    text-align:center;
  }
}

.notice-box{
  padding:5px 10px;
  font-size:15px;
  border:4px solid #e9eaea;
  border-radius:4px;
}
.notice-box--ttl,.notice-box a{
  font-weight:600;
}
.notice-box a{
  color:red;
  text-decoration:underline;
}

.attention-box{
  padding:35px 40px;
  background:#fff2f2;
  border-radius:8px;
}
@media screen and (max-width:767px){
  .attention-box{
    padding:25px 15px;
    font-size:15px;
  }
}
.attention-box-ttl{
  position:relative;
  color:#e71a21;
  font-size:18px;
  font-weight:600;
  margin-bottom:13px;
  padding-left:45px;
}
@media screen and (max-width:767px){
  .attention-box-ttl{
    font-size:15px;
  }
}
.attention-box-ttl:before{
  content:"";
  display:block;
  position:absolute;
  top:-4px;
  left:0;
  width:35px;
  height:35px;
  background:url(../images/icon_note.png);
  background-repeat:no-repeat;
  background-size:contain;
}
.attention-box-text{
  font-size:15px;
}

.q-list-box{
  margin-bottom:15px;
  padding:25px 30px;
  background:#fff;
  border-radius:3px;
}
@media screen and (max-width:767px){
  .q-list-box{
    padding:15px;
    font-size:15px;
  }
}

.red-text-box{
  background:#e71a21;
}

.blue-text-box,.red-text-box{
  display:inline-block;
  margin:0 3px;
  padding:0 10px;
  font-size:14px;
  color:#fff;
  border-radius:4px;
}

.blue-text-box{
  background:#4682ba;
}

.gray-text-box{
  color:#fff;
  border-radius:4px;
  background:#b2b4b6;
}

.gray-text-box,.red-border-text-box{
  display:inline-block;
  margin:0 3px;
  padding:0 10px;
  font-size:14px;
}

.red-border-text-box{
  border:2px solid #e71a21;
  border-radius:11px;
  background:#fff;
}

.divide-box{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  margin-bottom:20px;
}
@media screen and (max-width:767px){
  .divide-box{
    display:block;
    margin-bottom:20px;
  }
}
.divide-box-primary-ttl,.divide-box-secondary-ttl{
  margin-top:15px;
  margin-bottom:10px;
}
@media screen and (max-width:767px){
  .divide-box-primary-ttl,.divide-box-secondary-ttl{
    margin-top:15px;
    margin-bottom:10px;
  }
}
.divide-box-primary{
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
  margin-right:15px;
}
@media screen and (max-width:767px){
  .divide-box-primary{
    margin-right:0;
  }
}
.divide-box-secondary{
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
  position:relative;
  padding-left:15px;
}
@media screen and (max-width:767px){
  .divide-box-secondary{
    padding-left:0;
    padding-top:20px;
  }
}
.divide-box-secondary:before{
  content:"";
  display:block;
  height:100%;
  width:2px;
  background:url(../images/border-row.png) repeat-y 0 0;
  background-size:contain;
  position:absolute;
  left:0;
}
@media screen and (max-width:767px){
  .divide-box-secondary:before{
    height:2px;
    width:100%;
    background:url(../images/border.png) repeat-x 0 0;
    background-size:contain;
  }
}

a.button,a.button--arrow-right,button.button,button.button--arrow-right{
  display:inline-block;
  min-width:175px;
  max-width:100%;
  padding:10px 1em;
  border:2px solid #cacbcc;
  border-radius:40px;
  font-size:15px;
  font-weight:600;
  text-align:center;
  text-decoration:none;
  background:#fff;
  -webkit-transition:.25s;
  transition:.25s;
}
@media screen and (max-width:767px){
  a.button,a.button--arrow-right,button.button,button.button--arrow-right{
    display:block;
    max-width:100%;
  }
}
a.button--arrow-right:focus,a.button--arrow-right:hover,a.button:focus,a.button:hover,button.button--arrow-right:focus,button.button--arrow-right:hover,button.button:focus,button.button:hover{
  opacity:1;
  color:#656d73;
  background-color:#fff;
  text-decoration:none;
  border:2px solid #dcdcdc;
}
a.button--arrow-right,button.button--arrow-right{
  padding:10px 2em 10px 1.38em;
  position:relative;
}
a.button--arrow-right:after,button.button--arrow-right:after{
  display:block;
  content:"";
  position:absolute;
  top:50%;
  right:.83em;
  width:14px;
  height:14px;
  font-weight:600;
  background:url(../images/arrow.png) 50%;
  background-repeat:no-repeat;
  background-size:contain;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
}
a.button--border-red,button.button--border-red{
  border:2px solid #e71a21;
}
a.button--border-red.button--arrow-right:after,button.button--border-red.button--arrow-right:after{
  background:url(../images/arrow_red.png) 50%;
}
a.button--bg-red,button.button--bg-red{
  color:#fff;
  background:#e71a21;
  border:2px solid #e71a21;
}
a.button--bg-red.button--arrow-right:after,button.button--bg-red.button--arrow-right:after{
  background:url(../images/arrow_white.png) 50%;
}
a.button--bg-red:visited,button.button--bg-red:visited{
  color:#fff;
}
a.button--bg-red:focus,a.button--bg-red:hover,button.button--bg-red:focus,button.button--bg-red:hover{
  color:#333;
  border:2px solid #e71a21;
}
a.button--bg-red:hover::after,button.button--bg-red:hover{
  background:url(../images/arrow_red.png) 50%;
}
a.button--bg-red:focus::after,,button.button--bg-red:focus::after {
  background:url(../images/arrow_red.png) 50%;
  background-repeat: no-repeat;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}

a.button--bg-gray,button.button--bg-gray{
  color:#fff;
  background:#333;
  border:2px solid #333;
}
a.button--bg-gray.button--arrow-right:after,button.button--bg-gray.button--arrow-right:after{
  background:url(../images/arrow_white.png) 50%;
}
a.button--bg-gray:visited,button.button--bg-gray:visited{
  color:#fff;
}
a.button--bg-gray:focus,a.button--bg-gray:hover,button.button--bg-gray:focus,button.button--bg-gray:hover{
  color:#333;
}

.note-button-box{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:end;
  -ms-flex-align:end;
  align-items:flex-end;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
}
.note-button-box img{
  width:100%;
}

.grid ul{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}
@media screen and (max-width:767px){
  .grid ul{
    display:block;
  }
}
.grid ul>:last-child{
  margin-bottom:0;
}
.grid ul li{
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  width:50%;
  padding-right:2%;
}
@media screen and (max-width:767px){
  .grid ul li{
    width:100%;
    margin-right:0;
  }
}

.heading-h1,.heading-h1--top{
  padding:18px 0;
  font-size:22px;
  font-weight:600;
  text-align:center;
  color:#333;
  background:#e8eaeb;
}
@media screen and (max-width:767px){
  .heading-h1,.heading-h1--top{
	margin-top: 70px;
    padding:16px 10px;
    font-size:22px;
  }
}
.heading-h1--top{
  color:#fff;
  background:#e71a21;
}

.heading-h2{
  margin-bottom:40px;
  font-size:28px;
  font-weight:600;
  text-align:center;
}
@media screen and (max-width:767px){
  .heading-h2{
    margin-bottom:10px;
    font-size:20px;
  }
}
.heading-h2--icon{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  margin-bottom:18px;
  font-size:22px;
  text-align:center;
}
@media screen and (max-width:767px){
  .heading-h2--icon{
    font-size:18px;
    text-align:left;
  }
}
.heading-h2--icon:before{
  content:"";
  display:block;
}
.heading-h2--icon.icon-company:before{
  width:30px;
  height:30.55px;
  background-image:url(../images/icon_company.png);
}
.heading-h2--icon.icon-company:before,.heading-h2--icon.icon-q:before{
  margin-right:10px;
  background-repeat:no-repeat;
  background-size:contain;
}
.heading-h2--icon.icon-q:before{
  width:29.89px;
  height:31px;
  background-image:url(../images/icon_q.png);
}
.heading-h2--icon.icon-sms:before{
  width:35px;
  height:49px;
  margin-right:10px;
  background-image:url(../images/icon_sms.png);
  background-repeat:no-repeat;
  background-size:contain;
}

.heading-h3,.heading-h3--md{
  padding-bottom:3px;
  font-size:16px;
  font-weight:600;
}
@media screen and (max-width:767px){
  .heading-h3,.heading-h3--md{
    padding-bottom:3px;
    font-size:16px;
  }
}
.heading-h3-wrap{
  margin-top:36px;
  margin-bottom:15px;
  border-bottom:2px solid #e71a21;
}
@media screen and (max-width:767px){
  .heading-h3-wrap{
    margin-top:36px;
    margin-bottom:15px;
  }
}
.heading-h3--md{
  font-size:18px;
}

img.image-md{
  max-width:470px;
}
@media screen and (max-width:767px){
  img.image-md{
    max-width:100%;
  }
}

img.image-full{
  width:100%;
}

img.chat_btn{
  vertical-align:middle;
  padding-right:.25em;
  width: 120px;
}

a:focus,a:hover{
  text-decoration:none;
}
a.link-text,a.link-text:focus,a.link-text:hover{
  text-decoration:underline;
  color:#0a7bcc;
}
a.link-text:focus,a.link-text:hover{
  opacity:.5;
}

.arrow,.arrow--left{
  position:relative;
  display:inline-block;
  padding-right:11px;
  vertical-align:middle;
}
.arrow--left:before,.arrow:before{
  display:block;
  content:"";
  width:13px;
  height:13px;
  background:url(../images/arrow.png) 50%;
  background-repeat:no-repeat;
  position:absolute;
  top:50%;
  right:0;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
}
.arrow--left{
  padding-right:0;
}
.arrow--left:before{
  display:inline-block;
  position:relative;
  top:.4em;
  right:auto;
  left:0;
  padding-left:8px;
  vertical-align:middle;
  -webkit-transform:translateY(-50%) rotate(180deg);
  transform:translateY(-50%) rotate(180deg);
}
.arrow-red:before{
  background:url(../images/arrow_red.png) 50%;
  background-repeat:no-repeat;
}

.note-list{
  padding-left:1em;
  color:#666;
}
.note-list li{
  list-style-type:none;
  text-indent:-1em;
}

.button-list{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
}
.button-list li+li{
  margin-left:20px;
}

.half-list{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
}
@media screen and (max-width:767px){
  .half-list{
    display:block;
  }
}
.half-list li{
  width:50%;
}
@media screen and (max-width:767px){
  .half-list li{
    width:100%;
  }
}
.half-list li img{
  width:100%;
}
.half-list li+li{
  position:relative;
  margin-left:40px;
}
@media screen and (max-width:767px){
  .half-list li+li{
    margin-left:0;
    margin-top:15px;
    padding-top:15px;
  }
}
@media screen and (max-width:767px){
  .half-list li+li:before{
    content:"";
    height:2px;
    width:100%;
    background:url(../images/border.png) repeat-x 0 0;
    background-size:contain;
    position:absolute;
    top:0;
  }
}
.half-list-ttl{
  margin-bottom:10px;
  font-weight:600;
}
@media screen and (max-width:767px){
  .half-list-ttl{
    font-size:12px;
  }
}

.q-list{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -ms-flex-wrap:wrap;
  flex-wrap:wrap;
}
@media screen and (max-width:767px){
  .q-list{
    display:block;
  }
}
.q-list li{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-sizing:border-box;
  box-sizing:border-box;
  width:50%;
  padding-right:2%;
  text-align:left;
}
@media screen and (max-width:767px){
  .q-list li{
    width:100%;
    padding-right:0;
  }
}
.q-list li a{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  width:100%;
  padding:8px 18px 8px 0;
}
.q-list li a:before{
  content:"";
  height:2px;
  width:100%;
  background:url(../images/border.png) repeat-x 0 0;
  background-size:contain;
  position:absolute;
  bottom:0;
}
.q-list li a:after{
  position:absolute;
  top:50%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
  right:0;
  content:"";
  display:block;
  width:12px;
  height:12px;
  background:url(../images/arrow_red.png) 50%;
  background-repeat:no-repeat;
  background-size:contain;
}
@media screen and (max-width:767px){
  .q-list li:last-child a{
    border-bottom:none;
  }
}

.anchor-list{
  position:relative;
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  width:100%;
  max-width:880px;
  margin-top:30px;
  margin-bottom:30px;
}
@media screen and (max-width:767px){
  .anchor-list{
    display:block;
    margin-top:30px;
    margin-bottom:30px;
  }
}
.anchor-list:before{
  content:none;
}
@media screen and (max-width:767px){
  .anchor-list:before{
    content:"";
    height:2px;
    width:100%;
    background:url(../images/border.png) repeat-x 0 0;
    background-size:contain;
    position:absolute;
    top:0;
  }
}
.anchor-list li{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  position:relative;
  line-height:2.4;
}
.anchor-list li:before{
  content:"";
  height:2px;
  width:100%;
  background:url(../images/border.png) repeat-x 0 0;
  background-size:contain;
  position:absolute;
  bottom:0;
}
@media screen and (max-width:767px){
  .anchor-list li{
    display:block;
    padding:0;
    text-align:left;
    font-size:14px;
  }
}
.anchor-list li a{
  position:relative;
  display:block;
  width:100%;
  padding:8px 10px 8px 0;
  text-decoration:none;
  -ms-flex-item-align:center;
  -ms-grid-row-align:center;
  align-self:center;
}
@media screen and (max-width:767px){
  .anchor-list li a{
    width:auto;
  }
}
.anchor-list li a:after{
  position:absolute;
  top:50%;
  -webkit-transform:translateY(-50%) rotate(90deg);
  transform:translateY(-50%) rotate(90deg);
  right:0;
  content:"";
  display:block;
  width:12px;
  height:12px;
  background:url(../images/arrow_red.png) 50%;
  background-repeat:no-repeat;
  background-size:contain;
}
.anchor-list[data-dir="2"] li{
  width:50%;
  margin-left:20px;
}
@media screen and (max-width:767px){
  .anchor-list[data-dir="2"] li{
    width:100%;
    margin-left:0;
  }
}
.anchor-list[data-dir="2"] li:first-child{
  margin-left:0;
}
.anchor-list[data-dir="3"] li{
  width:33.33%;
  margin-left:20px;
}
@media screen and (max-width:767px){
  .anchor-list[data-dir="3"] li{
    width:100%;
    margin-left:0;
  }
}
.anchor-list[data-dir="3"] li:first-child{
  margin-left:0;
}

.media{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
@media screen and (max-width:767px){
  .media{
    display:block;
  }
}
.media-item{
  width:50%;
  margin-right:4.08163265%;
  text-align:right;
}
@media screen and (max-width:767px){
  .media-item{
    width:100%;
    margin-right:0;
    margin-bottom:20px;
  }
}
.media-img{
  width:100%;
}
.media-img img{
  margin:0 auto;
}
.media-body{
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
}
.media-body>:last-child{
  margin-bottom:0;
}
.media--reverse{
  -webkit-box-orient:horizontal;
  -webkit-box-direction:reverse;
  -ms-flex-direction:row-reverse;
  flex-direction:row-reverse;
}
.media--reverse .media-item{
  margin-right:0;
}
.media--reverse .media-body{
  margin-right:4.08163265%;
  text-align:left;
}
@media screen and (max-width:767px){
  .media--reverse .media-body{
    margin-right:0;
  }
}
.media--detail{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
@media screen and (max-width:767px){
  .media--detail{
    display:block;
  }
}
.media--detail .media-body{
  width:100%;
  margin-right:35px;
}
@media screen and (max-width:767px){
  .media--detail .media-body{
    margin-right:0;
    margin-bottom:20px;
  }
}
.media--detail .media-item{
  margin-right:0;
}
@media screen and (max-width:767px){
  .media--detail .media-item{
    margin-bottom:0;
  }
}

.desc-media,.desc-media--full{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  -webkit-box-orient:horizontal;
  -webkit-box-direction:reverse;
  -ms-flex-direction:row-reverse;
  flex-direction:row-reverse;
}
@media screen and (max-width:767px){
  .desc-media,.desc-media--full{
    display:block;
  }
}
.desc-media-item{
  width:50%;
  margin-right:40px;
}
@media screen and (max-width:767px){
  .desc-media-item{
    width:100%;
    margin-right:0;
    margin-bottom:20px;
  }
}
.desc-media-img{
  width:100%;
  text-align:center;
}
.desc-media-img02{
  width:100%;
  text-align:center;
}
.desc-media-body{
  -webkit-box-flex:1;
  -ms-flex:1;
  flex:1;
}
.desc-media-body>:last-child{
  margin-bottom:0;howto-step-list li:nth-child(2)
}
@media screen and (max-width:767px){
  .desc-media-body>:last-child{
    margin-bottom:20px;
  }
  .step-body .desc-media-body>:last-child{
    margin-bottom:10px;
  }
}
.register-btn-img img{
  height:38px;
  margin-right:1em;
  vertical-align:bottom;
}
.desc-media--reverse{
  -webkit-box-orient:horizontal;
  -webkit-box-direction:normal;
  -ms-flex-direction:row;
  flex-direction:row;
}
.desc-media--reverse .desc-media-item{
  margin-right:0;
}
.desc-media--reverse .desc-media-body{
  margin-left:40px;
  text-align:left;
  font-size: 15px;
}
@media screen and (max-width:767px){
  .desc-media--reverse .desc-media-body{
    margin-left:0;
    margin-right:0;
  }
  .desc-media-item--reverse {
    margin-bottom: 10px;
  }
}
.desc-media--detail{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
}
@media screen and (max-width:767px){
  .desc-media--detail{
    display:block;
  }
}
.desc-media--detail .media-body{
  width:100%;
  margin-right:4.08163265%;
}
@media screen and (max-width:767px){
  .desc-media--detail .media-body{
    margin-bottom:20px;
  }
}
.desc-media--detail .media-item{
  margin-right:0;
}
@media screen and (max-width:767px){
  .desc-media--detail .media-item{
    margin-bottom:0;
  }
}
.desc-media--full{
  display:block;
}
.desc-media--full .desc-media-item{
  margin-right:0;
}
.desc-media--full .desc-media-body{
  margin-bottom:20px;
}

.kenshin-mv{
  margin:0 auto;
  border-bottom:1px solid #cacbcc;
}
.kenshin-mv.border-none {
    border: none;
}
@media screen and (max-width:767px){
  .kenshin-mv{
    margin:20px auto 0;
    border-bottom:none;
  }
}
.kenshin-mv img{
  max-width:880px;
  margin:0 auto;
}
@media screen and (max-width:767px){
  .kenshin-mv img{
    max-width:100%;
  }
}

/* inputimage*/
.inputimage{
  width:100%;
  text-align:center;
  margin:20px auto;
}

@media screen and (max-width:767px){
  .inputimage{
    margin:20px auto 0;
  }
}
.inputimage img{
  max-width:700px;
  margin:0 auto;
}
@media screen and (max-width:767px){
  .inputimage img{
    max-width:100%;
  }
}


.kenshin-top-mv-bottom {
    max-width: 880px;
    margin: 0 auto;
    font-size: 16px;
}
@media screen and (max-width:767px){
    .kenshin-top-mv-bottom {
        padding: 0 15px;
    }
}


.sms-mv,.sms-phishing-mv{
  margin:0 auto;
  border-bottom:1px solid #cacbcc;
}
@media screen and (max-width:767px){
  .sms-mv,.sms-phishing-mv{
    margin:20px auto 0;
    border-bottom:none;
  }
}
.sms-mv img,.sms-phishing-mv img{
  max-width:880px;
  margin:0 auto;
}
@media screen and (max-width:767px){
  .sms-mv img,.sms-phishing-mv img{
    max-width:100%;
  }
}

.sms-phishing-mv{
  border-bottom:none;
}
.sms-phishing-mv img{
  max-width:880px;
  margin:0 auto;
}
@media screen and (max-width:767px){
  .sms-phishing-mv img{
    max-width:100%;
  }
}

#content-body .sectionwrap{
  max-width:880px;
  margin:0 auto;
  padding:70px 20px;
}
@media screen and (max-width:767px){
  #content-body .sectionwrap{
    padding:35px 15px;
  }
}
#content-body .sectionwrap.line{
  border-top:1px solid #cacbcc;
}
#content-body .graybg-sectionwrap{
  background:#f5f6f7;
}
#content-body .graybg-sectionwrap-inr{
  max-width:880px;
  padding:70px 20px;
  margin:0 auto;
}
@media screen and (max-width:767px){
  #content-body .graybg-sectionwrap-inr{
    padding:70px 15px;
  }
}
#content-body .graybg-sectionwrap--sm{
  background:#f5f6f7;
}
#content-body .graybg-sectionwrap--sm-inr{
  max-width:880px;
  padding:40px 20px;
  margin:0 auto;
}
@media screen and (max-width:767px){
  #content-body .graybg-sectionwrap--sm-inr{
    padding:30px 15px;
  }
}
#content-body .bluebg-sectionwrap{
  background:#e0f2ff;
}
#content-body .bluebg-sectionwrap-inr{
  max-width:880px;
  padding:70px 20px;
  margin:0 auto;
}
@media screen and (max-width:767px){
  #content-body .bluebg-sectionwrap-inr{
    padding:30px 15px;
  }
}
#content-body .sectionwrap--sm{
  max-width:880px;
  margin:0 auto;
  padding:40px 20px;
}
@media screen and (max-width:767px){
  #content-body .sectionwrap--sm{
    padding:25px 15px;
  }
}
#content-body .sectionwrap--sm-x{
  max-width:880px;
  margin:0 auto;
  padding:22px 20px 0;
}
@media screen and (max-width:767px){
  #content-body .sectionwrap--sm-x{
    padding:22px 15px 0;
  }
}

.step-ttl{
  text-align:center;
}
.step-body{
  font-size:15px;
}
.step-num{
  display:block;
  margin-bottom:7px;
}
@media screen and (max-width:767px){
  .step-num{
    margin-bottom:7px;
  }
}
.step-num img{
  width:40px;
  height:40px;
}
.step-text{
  display:block;
  margin-bottom:20px;
  font-size:18px;
}
@media screen and (max-width:767px){
  .step-text{
    margin-bottom:15px;
    font-size:18px;
  }
}

.tab{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  border-bottom:2px solid #e71a21;
}
.tab button{
  background-color:inherit;
  float:left;
  width:50%;
  margin-bottom:0;
  padding:15px 0;
  margin-top:10px;
  font-weight:600;
  font-size:15px;
  border:none;
  border-radius:7px 7px 0 0;
  background:#cacbcc;
  outline:none;
  cursor:pointer;
  color: #333;
}
@media screen and (max-width:767px){
  .tab button{
    font-size:15px;
  }
}
.tab button.is_active{
  margin-top:0;
  padding:20px 0;
  color:#fff;
  background-color:#e71a21;
}
.tab button+button{
  margin-left:1px;
}
.tab-content{
  display:none;
  padding:25px 60px 60px;
  background:#fff;
  border-radius:0 0 8px 8px;
  border:2px solid #ccc;
  border-top:none;
}
@media screen and (max-width:767px){
  .tab-content{
    padding:23px 13px;
    font-size:15px;
  }
}
.tab-content.open{
  display:block;
}
.tab-wrap{
  margin-bottom:35px;
}

b{
  font-weight:600;
}
.text-black{
  color:#333;
}
.text-red{
  color:#e71a21;
}

.t_center{
  text-align:center;
}

.breakword{
  word-break:break-all;
}
.content-footer{
  width:auto;
  border-bottom:1px solid #d7d8d9;
  background:#fff;
}

.content-footer,.content-footer .utility-content{
   /*   border-top:1px solid #d7d8d9;  */
}

.content-footer .utility-content-wrap{
  border-top:1px solid #d7d8d9;
  margin:0 auto;
  padding:19px 0;
  text-align:center;
}

@media screen and (max-width:767px){
  .content-footer .utility-content-wrap{
    padding:0;
  }
}
.content-footer .utility-content-wrap ul{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  justify-content:center;
  width:100%;
}
@media screen and (max-width:767px){
  .content-footer .utility-content-wrap ul{
    display:block;
    width:auto;
    padding:0 10px;
  }
}
.content-footer .utility-content-wrap ul li{
  position:relative;
  font-size:14px;
  line-height:2.4;
}
.content-footer .utility-content-wrap ul li:before{
  content:"";
  height:100%;
  width:2px;
  background:url(../images/border-row.png) repeat-y 0 0;
  background-size:cover;
  position:absolute;
  left:0;
}
@media screen and (max-width:767px){
  .content-footer .utility-content-wrap ul li:before{
    height:2px;
    width:100%;
    background:url(../images/border.png) repeat-x 0 0;
    background-size:contain;
    position:absolute;
    bottom:0;
  }
}
@media screen and (max-width:767px){
  .content-footer .utility-content-wrap ul li{
    display:block;
    padding:0;
    border-left:none;
    text-align:left;
  }
}
.content-footer .utility-content-wrap ul li:last-child:after{
  content:"";
  height:100%;
  width:2px;
  background:url(../images/border-row.png) repeat-y 0 0;
  background-size:cover;
  position:absolute;
  top:0;
  right:0;
}
@media screen and (max-width:767px){
  .content-footer .utility-content-wrap ul li:last-child:after,.content-footer .utility-content-wrap ul li:last-child:before{
    content:none;
  }
}
.content-footer .utility-content-wrap ul li a{
  position:relative;
  display:block;
  padding:0 36px 0 20px;
  text-align:left;
}
@media screen and (max-width:767px){
  .content-footer .utility-content-wrap ul li a{
    padding:8px 0;
  }
}
.content-footer .utility-content-wrap ul li a:after{
  position:absolute;
  top:50%;
  -webkit-transform:translateY(-50%);
  transform:translateY(-50%);
  right:20px;
  content:"";
  display:block;
  width:12px;
  height:12px;
  background:url(../images/arrow.png) 50%;
  background-repeat:no-repeat;
  background-size:contain;
}
@media screen and (max-width:767px){
  .content-footer .utility-content-wrap ul li a:after{
    right:0;
    width:12px;
    height:12px;
  }
}
.content-footer .utility-content p.copyright{
  width:100%;
  margin-top:15px;
  margin-bottom:15px;
  font-size:10px;
  text-align:center;
  color:#707070;
}
.content-footer-num{
  margin-left:28px;
  line-height:1;
  font-size:30px;
}
@media screen and (max-width:767px){
  .content-footer-num{
    margin-left:0;
    text-align:center;
  }
}
.content-footer-num a:hover{
  text-decoration:none;
}
.content-footer-num-text{
  position:relative;
  padding-left:30px;
  color:#000;
}
.content-footer-num-text:before{
  position:absolute;
  top:0;
  left:0;
  content:"";
  display:block;
  width:22.15px;
  height:30px;
  background:url(../images/icon_phone.png);
}
.content-footer-num-text a:visited{
  color:#000;
}
.content-footer-time{
  margin-left:28px;
  font-size:12px;
}
@media screen and (max-width:767px){
  .content-footer-time{
    margin:10px auto 18px;
    text-align:center;
  }
}
.content-footer-sub{
  font-size:12px;
}
@media screen and (max-width:767px){
  .content-footer-sub{
    padding:0 20px;
  }
}

.contact{
  max-width:820px;
  margin:50px auto;
}
@media screen and (max-width:767px){
  .contact{
    margin:20px auto 15px;
  }
}
.contact-box{
  display:-webkit-box;
  display:-ms-flexbox;
  display:flex;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items:center;
  justify-content:center;
} 
@media screen and (max-width:767px){
  .contact-box{
    display:block;
  }
}
.contact-ttl{
  font-size:18px;
  font-weight:600;
}
@media screen and (max-width:767px){
  .contact-ttl{
    margin-bottom:9px;
    text-align:center;
  }
}
.contact-num{
  line-height:1;
  font-size:30px;
  position: relative;
}
@media screen and (max-width:767px){
  .contact-num{
    margin-left:0;
    text-align:center;
  }
}
.contact-num a:hover{
  text-decoration:none;
}
.contact-num-label {
    font-size: 14px;
    color: #656d73;
    text-align: center;
    position: absolute;
    right: 0;
    left: 0;
    margin: auto;
    top: -20px;
}
@media screen and (max-width:767px){
    .contact-num-label {
        position: static;
        margin-bottom: 8px;
    }
}
.contact-num-text{
  position:relative;
  padding-left:30px;
}
.contact-num-text:before{
  position:absolute;
  top:0;
  left:0;
  content:"";
  display:block;
  width:22.15px;
  height:30px;
  background:url(../images/icon_phone.png);
}
.contact-num-text a:visited{
  color:#000;
}
.contact-num-text a span {
    color: #e71a21;
    font-weight: 700;
    font-size: 38px;
}
.contact-time{
  margin-left: 200px;
  font-size:12px;
  text-align:left;
}
.contact-time-main{
  margin-left: 100px;
  margin-bottom:20px;
  text-align:left;
}
@media screen and (max-width:767px){
  .contact-time {
    margin:10px auto 18px;
    text-align:center;
  }
  .contact-time-main{
	margin:10px auto 18px;
    text-align:center;
  }
}

/*New Year info*/
.section-contact .contact-sub.info {
    font-size: 18px;
	font-weight: 700;
	margin-top: 30px;
}
.contact-newyear-info{
    text-align: center;
	font-size:16px;
}
@media screen and (max-width:767px){
.section-contact .contact-sub.info {
        font-size: 14px;
        padding: 0;
    }
.contact-newyear-info{
    margin:0 auto 18px;
    text-align:left;
    font-size:14px;
  }
}

.contact-sub{
  font-size:12px;
  text-align:center;
}
.contact-sub-a{
  font-size:16px;
  text-align:center;
}
.contact-sub.bottom{
  font-size:14px;
  font-weight: 700;
}
@media screen and (max-width:767px){
  .contact-sub{
    padding:0 20px;
    text-align:left;
  }
    .contact-sub-a{
    padding:0 20px;
    text-align:left;
  }
}

@media screen and (max-width:767px){
  #content-body-wrapper{
    margin-top:0;
  }
}

.header-company-logo_og{
  height:70px;
}
@media screen and (max-width:767px){
  .header-company-logo_og{
    height:60px;
  }
}
.header-company-logo_og a{
  display:block;
  padding:16px 0;
  max-width:126px;
  margin:0 auto;
}
@media screen and (max-width:767px){
  .header-company-logo_og a{
    padding-top:10px;
    padding-bottom:10px;
  }
}
@media screen and (max-width:767px){
  .header-company-logo_og a img{
    height:40px;
  }
}

.kennshin-leadtext{
  margin-bottom:35px;
  text-align:center;
  font-size:15px;
}
@media screen and (max-width:767px){
  .kennshin-leadtext{
    text-align:left;
    font-size:18px;
  }
}

.kennshin-schedule{
  margin:0 auto 35px;
  text-align:center;
}
@media screen and (max-width:767px){
  .kennshin-schedule{
    margin:0 auto;
  }
}
.kennshin-schedule img{
  max-width:550px;
}
@media screen and (max-width:767px){
  .kennshin-schedule img{
    max-width:100%;
  }
}

.member{
  display:none;
  max-width:880px;
  margin:14px auto 13px;
}
@media screen and (max-width:767px){
  .member{
    margin:14px auto 13px;
  }
}
@media screen and (max-width:767px){
  .member-inr{
    margin:0 15px;
  }
}

.sms-leadtext{
  margin-bottom:6px;
  text-align:center;
  font-weight:600;
  font-size:18px;
}
@media screen and (max-width:767px){
  .sms-leadtext{
    text-align:left;
    font-size:15px;
  }
}

.sms-schedule{
  margin:0 auto 35px;
  text-align:center;
}
@media screen and (max-width:767px){
  .sms-schedule{
    margin:0 auto;
  }
}
.sms-schedule img{
  max-width:550px;
}
@media screen and (max-width:767px){
  .sms-schedule img{
    max-width:100%;
  }
}

.howto-step-list li:first-child .desc-media-item,
.howto-step-list li:nth-child(2) .desc-media-item {
    padding: 0;
    box-sizing: border-box;
}

.howto-step-list li:first-child a.button--arrow-right {
    min-width: auto;
    margin-right: 16px;
    margin-bottom: 8px;
}


@media screen and (max-width:767px){
    .howto-step-list li:first-child a.button--arrow-right {
        display: inline-block;
        margin-right: 8px;
    }
}

.section-contact {
    max-width: 880px;
    margin: 0 auto;
}
.optout-contact-num {
    text-align: center;
    margin-bottom: 10px;
    display: flex;
    justify-content: center;
    align-items: center;
}
@media screen and (max-width: 767px) {
    .optout-contact-num {
        display: block;
    }
}

.optout-contact-num .contact-num-label {
    position: static;
    margin: 0 20px 0 0;
    font-size: 16px;
    color: #333;
}
@media screen and (max-width: 767px) {
    .optout-contact-num .contact-num-label {
        margin: 0 0 10px 0;
        font-size: 14px;
    }
}

.optout-contact-num .contact-num-text {
    font-size: 50px;
    padding-left: 50px;
}
.optout-contact-num .contact-num-text a {
    color: #333;
}
.optout-contact-num .contact-num-text a span {
    font-size: 50px;
}
@media screen and (max-width:767px){
    .optout-contact-num .contact-num-text {
        font-size: 35px;
        padding-left: 35px;
    }
    .optout-contact-num .contact-num-text a span {
        font-size: 35px;
    }
}

.section-contact .contact-time {
    text-align: center;
    font-size: 18px;
}
.section-contact .contact-sub.bottom {
    font-size: 18px;
}
@media screen and (max-width:767px){
    .section-contact .contact-time {
        font-size: 14px;
        margin-bottom: 0;
    }
    .section-contact .contact-sub.bottom {
        font-size: 14px;
        padding: 0;
    }
}
.optout-contact-num .contact-num-text.contact-num-text:before {
    bottom: 0;
    margin: auto;
    width: 30px;
    height: 40px;
    background-repeat: no-repeat;
    background-size: 100%;
}
@media screen and (max-width:767px){
    .optout-contact-num .contact-num-text.contact-num-text:before {
        width: 22.15px;
        height: 30px;
    }
}

.download-image {
    margin: 80px 0 0;
}
@media screen and (max-width:767px){
    .download-image {
        margin: 40px 0 0;
    }
}
.download-image .heading-h2 {
    margin-top: 40px;
}

.download-image .list-disc li + li {
    margin-top: 30px;
}

.download-image .list-disc h3 {
    margin-bottom: 20px;
    font-size: 15px;
}



#content-body-wrapper .list-disc.pc-mb0 {
    margin-bottom: 0;
}


.pc-txt-align-r{
  text-align:right;
}

.pc-txt-align-l{
  text-align:left;
}

.pc-txt-align-c{
  text-align:center;
}

@media screen and (max-width:767px){
  .sp-txt-align-r{
    text-align:right;
  }

  .sp-txt-align-l{
    text-align:left;
  }

  .sp-txt-align-c{
    text-align:center;
  }
}

.pc-ft-13{
  font-size:13px;
}

.pc-ft-14{
  font-size:14px;
}

.pc-ft-15{
  font-size:15px;
}

@media screen and (max-width:767px){
  .sp-ft-12{
    font-size:12px;
  }

  .sp-ft-14{
    font-size:14px;
  }

  .sp-ft-15{
    font-size:15px;
  }
}
.list-disc .font-small{
  font-size:14px;
}
@media screen and (max-width:767px){
  .list-disc .font-small{
    font-size:15px;
  }
}

.sp-hidden{
  display:block;
}
@media screen and (max-width:767px){
  .sp-hidden{
    display:none;
  }
}

.pc-hidden{
  display:none;
}
@media screen and (max-width:767px){
  .pc-hidden{
    display:block;
  }
}

hr.dotted{
  height:2px;
  margin:25px 0;
  border:none;
}
@media screen and (max-width:767px){
  hr.dotted{
    margin:20px 0;
  }
}
hr.dotted:before{
  content:"";
  display:block;
  height:2px;
  width:100%;
  background:url(../images/border.png) repeat-x 0 0;
  background-size:contain;
}

.pc-mb-5{
  margin-bottom:-5px;
}

.pc-mb0{
  margin-bottom:0;
}

.pc-mb5{
  margin-bottom:5px;
}

.pc-mb10{
  margin-bottom:10px;
}

.pc-mb15{
  margin-bottom:15px;
}

.pc-mb20{
  margin-bottom:20px;
}

.pc-mb25{
  margin-bottom:25px;
}

.pc-mb30{
  margin-bottom:30px;
}

.pc-mb35{
  margin-bottom:35px;
}

.pc-mb40{
  margin-bottom:40px;
}

.pc-mb45{
  margin-bottom:45px;
}

.pc-mb50{
  margin-bottom:50px;
}

.pc-mb55{
  margin-bottom:55px;
}

.pc-mb60{
  margin-bottom:60px;
}

.pc-mb65{
  margin-bottom:65px;
}

.pc-ml0{
  margin-left:0;
}

.pc-ml5{
  margin-left:5px;
}

.pc-ml10{
  margin-left:10px;
}

.pc-ml15{
  margin-left:15px;
}

.pc-ml20{
  margin-left:20px;
}

.pc-ml25{
  margin-left:25px;
}

.pc-ml30{
  margin-left:30px;
}

.pc-ml35{
  margin-left:35px;
}

.pc-ml40{
  margin-left:40px;
}

.pc-ml45{
  margin-left:45px;
}

.pc-ml50{
  margin-left:50px;
}

.pc-ml55{
  margin-left:55px;
}

.pc-ml60{
  margin-left:60px;
}

.pc-ml65{
  margin-left:65px;
}

@media screen and (max-width:767px){
  .sp-mb-5{
    margin-bottom:-5px;
  }

  .sp-mb0{
    margin-bottom:0;
  }

  .sp-mb5{
    margin-bottom:5px;
  }

  .sp-mb10{
    margin-bottom:10px;
  }

  .sp-mb15{
    margin-bottom:15px;
  }

  .sp-mb20{
    margin-bottom:20px;
  }

  .sp-mb25{
    margin-bottom:25px;
  }

  .sp-mb30{
    margin-bottom:30px;
  }

  .sp-mb35{
    margin-bottom:35px;
  }

  .sp-mb40{
    margin-bottom:40px;
  }

  .sp-mb45{
    margin-bottom:45px;
  }

  .sp-mb50{
    margin-bottom:50px;
  }

  .sp-mb55{
    margin-bottom:55px;
  }

  .sp-mb60{
    margin-bottom:60px;
  }

  .sp-mb65{
    margin-bottom:65px;
  }

  .sp-ml0{
    margin-left:0;
  }

  .sp-ml5{
    margin-left:5px;
  }

  .sp-ml10{
    margin-left:10px;
  }

  .sp-ml15{
    margin-left:15px;
  }

  .sp-ml20{
    margin-left:20px;
  }

  .sp-ml25{
    margin-left:25px;
  }

  .sp-ml30{
    margin-left:30px;
  }

  .sp-ml35{
    margin-left:35px;
  }

  .sp-ml40{
    margin-left:40px;
  }

  .sp-ml45{
    margin-left:45px;
  }

  .sp-ml50{
    margin-left:50px;
  }

  .sp-ml55{
    margin-left:55px;
  }

  .sp-ml60{
    margin-left:60px;
  }

  .sp-ml65{
    margin-left:65px;
  }
}
#content-body-wrapper{
  margin-bottom:0;
}

body{
  overflow-x:hidden;
}

.kennshin-stepimg{
  border: 1px solid #ccc;
  margin-top: 5px;
  margin-bottom: 5px;
}

.desc-media-img-wrap {
  border: solid 1px #333;
}

.desc-media-img-wrap-pd10 {
  padding: 10px 0;
}

.kennshin-stepimg-wrap {
  width: 250px;
  margin-left: 20px;
}

.kennshin-stepimg-size {
  width: 100%;
  height: auto;
}

@media screen and (max-width:767px){
  .kennshin-stepimg{
    width: 100%;
  }
  .kennshin-stepimg-wrap {
    width: 100%;
    margin-left: 2px;
  }
}
