
/*
base-color : #07105b  6,20,90
*/

/*add reset*/
ul,ol,menu{ list-style-type: none; }
ul.decimal{list-style-type: decimal; margin-left:1em;padding-left:1em;}
a{
  text-decoration: none;
  color:#1493ff;
  cursor: pointer;
  -moz-transition: 0.2s;
  -webkit-transition: 0.2s;
  -o-transition: 0.2s;
  -ms-transition: 0.2s;
}
a:hover{
  text-decoration: underline;
}

@media screen and (max-width:640px){
a{
  -moz-transition: 0;
  -webkit-transition: 0;
  -o-transition: 0;
  -ms-transition: 0;
}
}

*{
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
}
h2:focus
h3{ margin:0.25em 0 0.5em;}

/*add-form*/
.remark{
  font-size:0.9em;
  color:#555;
}
select{
  display: inline-block;
  background:#fff;
  position: relative;
  border:solid 1px #ccc;
  padding:0.5em 3em 0.5em 1em;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.select-outer:after{
  content:"▼";
  display: inline;
  position: relative;
  right:2.4em;
  font-size:0.8em;
}
input[type="text"],input[type="email"],input[type="password"],input[type="number"],input[type="tel"]{
  border:solid 1px #cacaca;
  background: #fff;
  color:#333;
  line-height:1.8;
  padding:0.5em;
}
input[type="text"]:hover,input[type="email"]:hover,input[type="password"]:hover,input[type="number"]:hover,input[type="tel"]:hover{
  border:solid 1px #07105b;
}
input[type="text"]:focus,input[type="email"]:focus,input[type="password"]:focus,input[type="number"]:focus,input[type="tel"]:focus{
  outline:solid 2px #000;
  background:#f1f1f1;
}

textarea{
  border:solid 1px #ccc;
  width:100%;
  line-height:2;
  padding:0 0.5em;
}
label{
  display: inline-block;
  padding-right:1em;
}
label input{
  margin-right:0.5em;
  border:solid 1px #000;
}
:placeholder-shown { color: #bbb; }
/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder { color: #bbb; }
/* Firefox 18- */
:-moz-placeholder { color: #bbb; opacity: 1; }
/* Firefox 19+ */
::-moz-placeholder { color: #bbb; opacity: 1; }

/* IE 10+ */
:-ms-input-placeholder { color: #bbb; }




/*base-flex-box*/
.flex-box-sb{
  display: flex;
  justify-content: space-between;
}


/*base-content*/
html{
  height:100%;
  color:#111;
}
body{
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  position: relative;
  background:#fff;
  font-size:16px;
  color:#111;
  line-height:2;
  height: 100vh;
  height:100%;
  min-height:100%;
  overflow: scroll;
  overflow-x:hidden;
}


article:after{
  content:" ";
  display: block;
  clear: both;
  width:100%;
}

.base-box{
  border:solid 1px #cacaca;
  background:#f3f3f3;
  width:100%;
  padding:1em;
}

/*base-accessories*/
.social .fa{
  display: none !important;
  color:#fff;
}
.fb{ background:#315096; display: block; }
.tw{ background:#55acee; display: block;}

.yen:after{
  content:" 円";
  display: inline-block;
  font-size:0.75em;
  color:#666;
  text-align:right;
  width:28px;
}
.ken:after{
  content:" 件";
  display: inline-block;
  font-size:0.75em;
  color:#666;
  text-align:right;
  width:28px;
}
hr{
  border:none;
  border-bottom:solid 1px #cacaca;
  margin:2em 0;
}
.ta-c{ text-align: center; }

.attention span{color:#f40; }
.attention span:before{
  content:"※";
}

/*button*/
.btn{
  display: block;
  line-height:1;
  text-align:center;
  border:solid 1px #000;
  padding:0.25em 1.25em;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
}
a .fa,button .fa,h2 .fa, h3 .fa{
  display: inline-block;
  padding-right:0.5em;
}
.btn-main{
  color:#fff;
  background:#E80F57;
  border:solid 1px #E80F57;
}
.btn-main:hover{
  color:#fff;
}
.btn-sub{
  color:#fff;
  background:#ccc;
  border:solid 1px #ccc;
}
.btn-sub:hover{
  color:#fff;
}
.btn-sub2{
  color:#fff;
  background:#62c234;
  border:solid 2px #62c234;
}
.btn-sub2:hover{
  color:#fff;
}

article .btn{
  max-width:480px;
}
.btn.list-under{
  width:auto;
  font-weight: 500;
  margin-left:auto;
  padding:2em 1em;
  border:solid 1px #000;
}
.btn.list-under:hover{
  opacity: 0.9;
}


/* header */
header{
  position: relative;
  width:100%;
  font-size:0.85em;
  padding:1em;
  background:#fff;
  z-index:100;
}
@media screen and (max-width:640px){
    header{
        background:rgba(0,0,0,0.2) !important;
    }
}
header article{
  width:100%;
}
header article a{
  color:#333;
}
header article a:hover{
  text-decoration: underline;
}
header article nav{
  display: flex;
  justify-content: space-between;
}
header article nav ul{
  display: table;
}
header article nav ul li{
  display: table-cell;
  padding:0.5em;
}
header article nav ul.menu-outer li:first-child,
header article nav ul.menu-outer li:nth-child(2){
  padding-right:4px;
  font-weight: 500;
}
header article nav ul.menu-outer li a.btn{
  padding:0.5em 1em;
}
header article nav ul.menu-outer li a.btn:hover{
  text-decoration: none;
  color:#fff;
}
header article nav ul.menu-outer li a.btn-main:hover{
  background:#FC6295;
}
header article nav ul.menu-outer li a.btn-sub:hover{
  background:#AFAFAF;
}

header article nav ul.logo-outer{
  position: relative;
  z-index:10;
}
header article nav ul.logo-outer h1{
  font-size:1.5em;
}
header article nav ul.logo-outer li a{
  position: absolute;
  display: block;
  top:-14px;
  left:-14px;
}
header article nav ul.logo-outer li img{
  width:92px;
  height:auto;
}

/*global nav*/
  nav.global{
    background:#fff;
    width:100%;
    height:40px;
    margin:0 auto;
    padding:.5em;
  }
  nav.global ul{
    position: relative;
    display: table;
    table-layout: fixed;
    width:100%;
    bottom:0;
  }
  nav.global ul li{
    display: table-cell;
    padding:0;
  }
  nav.global ul li a{
      color:#fff;
      font-weight: 400;
      padding:0;
      padding-bottom:.25rem;
        border-bottom:solid 2px rgba(0,0,0,0);
  }
  nav.global ul li a:hover{
        background:none;
        color:#fff;
        border-bottom:solid 2px #fff;
  }
  nav.global img{
      display: none;
  }





/* footer */
footer{
  padding:1.5rem;
  border-top:solid 1px #cacaca;
}
footer nav{
  margin:1em;
}
footer nav a{
  color:#fff;
}
footer nav a:hover{
  color:#ccc;
}
footer .copyrights{
  display: block;
  font-size:0.8em;
  text-align: center;
  padding:2em;
}
footer .copyrights span{
  display: block;
}
footer .copyrights ul{
  display: block;
  justify-content: space-between;
}
footer .copyrights ul li{
  display: inline-block;
  padding:1em;
}
footer .copyrights ul li a{
  color:#000;
}




/* contents−wrap pankuzu-nav */
article.pankuzu{
  width:100%;
  background:#111111;
  color:#d1d1d1;
  padding:0.25em 0;
}
article.pankuzu nav{
  width:calc(100% - 8em);
  font-size:0.8em;
  padding:0.5em 1em;
  margin-left:auto;
  margin-right:1em;
}
article.pankuzu nav ul{
  display: flex;
}
article.pankuzu nav ul li{
  padding-right:0.5em;
  line-height:1;
}
article.pankuzu nav ul li:after{
  content:" >";
  padding-left:0.5em;
}
article.pankuzu nav ul li:last-child:after{
  content:" ";
}
article.pankuzu nav ul li a{
  color:#a1a1a1;
}
article.pankuzu nav ul li a:hover{
  color:#fff;
}


/* contents−wrap */
#contents-wrap{
  position: relative;
  width:100%;
  min-height:80vh;
}
#contents-wrap article.contents{
  padding-top:64px;
  min-width:480px;
}
@media screen and (max-width:3000px){
  #contents-wrap article.contents{
    margin:0 auto;
    padding:5rem;
    padding-top:0px;
    padding-left:5rem;
    min-width:480px;
  }
}
@media screen and (max-width:640px){
  #contents-wrap article.contents{
    width:100%;
    margin:0 auto;
    padding:16px;
    padding-top:21px;
    padding-left:16px;
    min-width:auto;
  }
}


/* contents−wrap contents */

#contents-wrap article.contents section{
	padding:2rem;
}


#contents-wrap article.contents section.section01{
	background:#274695;
	margin-bottom:0;
}
#contents-wrap article.contents section.section01.shipper{
    background:#ffbd39;
}
#contents-wrap article.contents section.section02{
	margin-bottom:0;
}

#contents-wrap article.contents section.steps{
  margin-bottom:16px;
}
#contents-wrap article.contents section.steps ul{
  display: table;
  table-layout: fixed;
  width:100%;
  border-bottom:solid 1px #cacaca;
}
#contents-wrap article.contents section.steps ul li{
  display: table-cell;
  vertical-align: middle;
  font-size:0.75rem;
  color:#aaa;
  text-align: center;
  padding:8px 0;
}
#contents-wrap article.contents section.steps ul li.checked{
  background:#eee;
  color:#666;
}

#contents-wrap article.contents section .form-box{

}

/*contents-box*/
.contents section.contents-box{
  position: relative;
  margin-bottom:0;
}
.contents section.contents-box h2{
  color:#fff;
  margin:2rem 0 2rem;
}
.contents section.contents-box a:hover{
    text-decoration: underline;
}

.contents section.contents-box .sample-image01{
    z-index:2;
    position: absolute;
    top:0;
    right:-16px;
    width:24%;
    height:auto;
}
.contents section.contents-box h2.catch-copy{
  color:#274695;
  text-align: left;
  letter-spacing: 8px;
  border:solid 4px #274695;
  padding:1rem;
}
.contents section.contents-box h2:first-child{
    margin:1rem 0 2rem;
}

.contents section.contents-box img{
    display: block;
    width:100%;
    height:auto;
    margin:1rem 0 2rem;
}
.contents section.contents-box .app-ss{
  max-width:320px;
  margin:1rem auto;
  border:solid 1px #cacaca;
}

.contents section.contents-box.under-pages h2{
  position: relative;
  color:#111 !important;
  border-bottom:solid 2px #cacaca;
  margin-bottom:1.5rem;
  padding-left:.5rem;
}
.contents section.contents-box.under-pages h2:after{
  content:" ";
  position: absolute;
  display: block;
  border:solid 1px #274695;
  width:80px;
  left:0;
}
.contents section.contents-box.under-pages .message-box{
  border:solid 1px #cacaca;
  padding:1rem;
  margin:.5rem 0 1rem;
}
.contents section.contents-box.under-pages table{
    width:100%;
    table-layout: fixed;
}
.contents section.contents-box.under-pages table th{
    width:30%;
    text-align: left;
    vertical-align: top;
}
.contents section.contents-box.under-pages table.small{
    font-size:0.75rem;
}
.contents section.contents-box.under-pages table.border-on{
    border-top:solid 1px #cacaca;
    border-left:solid 1px #cacaca;
}
.contents section.contents-box.under-pages table.border-on th,
.contents section.contents-box.under-pages table.border-on td{
    padding:.5rem;
    border-bottom:solid 1px #cacaca;
    border-right:solid 1px #cacaca;
}

ul.rule{
    list-style-type: decimal;
    margin-bottom:1rem;
}
ul.rule >li{
    margin-left:1rem;
    padding-left:.5rem;
}
ol.rule{
    list-style-type: lower-roman;
}
ol.rule >li{
    margin-left:1rem;
    padding-left:.5rem;
}
ul.rule.circle{
    list-style-type: circle;
    margin-bottom:1rem;
}
ul.rule.circle >li{
    margin-left:1.5rem;
    padding-left:.5rem;
}
ul.rule.nostyle{
    list-style-type: none;
    margin-bottom:1rem;
}
ul.rule.nostyle >li{
    margin-left:1.5rem;
    padding-left:.5rem;
}


@media screen and (max-width:3000px){
    .contents section.contents-box .sample-image01{
        width:180px;
    }
}
@media screen and (max-width:640px){
    .contents section.contents-box .sample-image01{
        width:100px;
    }
    #contents-wrap article.contents section{
        padding:0rem;
    }
    .contents section.contents-box h2.catch-copy{
        letter-spacing: 2px;
    }
}





.contents section.contents-box.under-pages > p{
  margin-bottom:1rem;
}


/*contents-box links*/
.contents .to-contents-outer{
  width:100%;
  text-align: right;
  padding-top:16px;
}
.contents a.to-contents{
  background:#1493ff;
  color:#fff;
  padding:.5rem .5rem .5rem 2.5rem;
  border:solid 2px #fff;
}
.contents a.to-contents:hover{
  border:solid 2px #1493ff;
  color:#1493ff;
  background:#fff;
}
.contents a.to-contents .fa{
  display: inline-block;
  font-size:1.3rem;
  padding-left:1rem;
}




/*form-details*/
.form-box > .text-supplement{
  margin:16px 0;
}
.form-box h2,
.form-box h3{
  line-height:2.5;
}
.form-box h3:before{
  content:" ";
  display: inline-block;
  min-height:16px;
  padding-right:0.5em;
  border-left:solid 4px #f00;
}
.form-box .item-detail-blocks{
  position: relative;
  background:#fff;
  border:solid 1px #aaa;
  padding:12px;
  margin-bottom:1.5rem;
}

.form-box .item-detail-blocks ul{
  display: table;
  table-layout: fixed;
  width:100%;
  margin-bottom:1rem;
  border-bottom:solid 1px #cacaca;
}
.form-box .item-detail-blocks ul:last-child{
  margin-bottom:0;
}
.form-box .item-detail-blocks ul li{
  display: table-cell;
  background: #ffffff;
  padding:1rem;
  vertical-align: middle;
}
.form-box .item-detail-blocks ul li input[type=text],
.form-box .item-detail-blocks ul li input[type=tel],
.form-box .item-detail-blocks ul li input[type=email]{
  max-width:100%;
}
.form-box .item-detail-blocks ul li span.block{
  display: block;
}


.form-box .item-detail-blocks ul li:nth-child(odd){
  width:160px;
  color:#666;
  font-weight: 600;
  background:#eee;
}

.form-box .text-attention,
.form-box .text-danger{/*強調*/
  display: block;
  color:#FF0011;
  font-weight: 400;
}
.form-box .text-supplement{/*補足説明*/
  display: block;
  font-size:0.8rem;
  color:#999;
  padding:4px 0;
}

.form-box .text-contents-box{
  width:100%;
  padding:1em;
  margin-bottom:1em;
  border:solid 1px #cacaca;
}

.message-box {
    border: solid 2px #cacaca;
    background: #fff;
    margin: 1rem auto;
    padding: 1rem;
    line-height: 1.7;
}
.message-box.footers{
    background:#eee;
    font-size:0.9em;
    margin-top:4rem;
}
.text-attention{
    color:#f00;
    font-weight: 400;
}

.form-box .btn{
  display: block;
  width:80%;
  margin:1em auto;
  padding:1em;
}




/*static contents*/
#contents-wrap article.contents.statics{
  max-width:3000px;
  margin:auto;
}
#contents-wrap article.contents.statics h2{
  border:none !important;
  background:none !important;
  font-size:180% !important;
  padding-left:0 !important;
  margin-left:0 !important;
}
#contents-wrap article.contents.statics h3{
  font-size:140% !important;
}




/*before-afters*/
.item-box .item-no:before,
.item-box .item-create:before{
  display: inline-block;
  padding-right:0.5em;
}

article.catch{
  position: relative;
/*  padding-top:24%;*/
  background-size: cover !important;
  background-position: center center !important;
}

article.catch .box-black{
  display: block;
  position: absolute;
  z-index:1;
  top:0;
  right:0;
  bottom:0;
  left:0;
  background:rgba(0,26,43,0.4);
}
article.catch .catch-contents{
  position: relative;
  top:45%;
  z-index:3;
  width:100%;
  color:#fff;
  text-align: center;
  margin:0;
}
article.catch .catch-contents h2{
  display: block;
  width:90%;
  font-size:2em;
  text-shadow:2px 2px 3px rgba(0,0,0,0.6);
  margin:0 auto;
}
article.catch .catch-contents img.logo{
  display: block;
  width:180px;
  height:auto;
  margin:16px auto 24px;
}

/*catch-image*/
article.catch.top{
	background:url(../catch/top.jpg);
	background-position: center;
	background-size:cover;
}
article.catch.company{
	background:url(../catch/company.jpg);
	background-position: 64% !important;
	background-size:cover;
}
article.catch.contact,
article.catch.contact-thanks{
	background:url(../catch/contact.jpg);
	background-position: 80% !important;
	background-size:cover;
}
@media screen and (max-width:3000px){
article.catch.top{
	background:url(../catch/top.jpg);
	background-position: 40% 10% !important;
	background-size:cover;
	height:480px;
}
}




article.catch .catch-contents > ul{
	position: relative;
	display: table;
	table-layout: fixed;
	width:100%;
	margin:24px auto;
	
}
article.catch .catch-contents > ul li{
  display: table-cell;
  vertical-align: middle;
}
article.catch .catch-contents > ul li:first-child{padding-right:16px; text-align: right;}
article.catch .catch-contents > ul li:last-child{padding-left:16px;}
article.catch .catch-contents > ul li a{
  margin:0 auto !important;
}



/*
  contents-page-catch
*/
article.contents-catch{
  position: relative;
  background:#06135a;
  min-height:20px;
  background-size: cover;
  background-position: center center;
}


main{
  display:block;
  width:100%;
  min-width:100%;
}
main > div{
  width: 100% !important;
}
main > div.contents-one article {
  position: relative;
  width: 100%;
  padding:1em;
  border-top:solid 1px #000 !important;
}

article.catch .catch-contents img.logo {
  width: 90px;
  margin: 24px auto;
}
article.catch .catch-contents h2 {
  font-size: 2rem;
}
article.catch .catch-contents > ul{
    display: none;
}




@media screen and (max-width:640px){
    main > div.contents-one article {
      position: relative;
      width: 100%;
      padding:1em;
    }
    article.catch .catch-contents{
        top:0px;
    }
    article.catch .catch-contents img.logo {
      width: 90px;
      margin: 80px auto 16px;
    }
    article.catch .catch-contents h2 {
      font-size:1rem;
      letter-spacing: 0;
    }
    article.catch .catch-contents > ul{
        display: none;
    }
    nav.global{
      display: none;
    }
  }

@media screen and (max-width:640px){
  .form-box .item-detail-blocks ul,
  .form-box .item-detail-blocks ul li ,
  .form-box .item-detail-blocks ul li:nth-child(odd){
    display: block;
    table-layout: fixed;
    width: 100%;
  }
  .form-box .item-detail-blocks ul li{
    padding:.5rem;
  }
}


.form-box .item-detail-blocks ul li:nth-child(odd)


/*
  landing-page
*/
.landing-page{
  width:100%;
  background:rgba(255,255,255,0.9);
  border-bottom:solid 1px #cacaca;
  padding:4em 0;
  border-top:solid 1px #cacaca !important;
}

.landing-page .header h2{
  position: relative;
  background:none !important;
  border:none !important;
  color:#06135a !important;
  text-align: center;
  font-size:2em !important;
}
.landing-page .header h2:after{
  content:" ";
  position: relative;
  display: block;
  background:#06135a;
  width:3em;
  height:0.2em;
  margin-left:calc(50% - 1.5em);
  margin-top:1.2em;
}
.landing-page .catchf{
  display: block;
  font-size:1.5em;
  text-align:center;
}

.landing-page section .landing-contents{
  font-color:#666;
}
.landing-page section .landing-contents p.ta-c{
  font-size:1.1em;
  line-height:2;
  letter-spacing: 0.2em;
}
.landing-page section .top-3colum{
   width:100%;
   margin:2em 0;
}
.landing-page section .top-3colum li{
  flex:1;
  padding:2em;
}
.landing-page section .top-3colum li img{
  display: block;
  width:100%;
  height:auto;
  margin-bottom:1em;
}


article.landing-page section.item-list .item-box:hover{
  background:#fcfcfc;
  box-shadow:0px 0px 6px 5px #ccc;
  -moz-box-shadow:0px 0px 6px 5px #ccc;
  -webkit-box-shadow:0px 0px 6px 5px #ccc;
}




/*トップ*/
.contents-box .top-box-pr01{}
.contents-box .top-box-pr01 .logo{
  width:120px;
  height:auto;
  margin:2rem auto;
}
.contents-box .finish-pr{
	background:#faff6e;
	border:solid 4px #E80F57;
	color:#E80F57;
	font-size:1.2rem;
	font-weight: 600;
	line-height:2;
	letter-spacing: .2rem;
	padding:1rem;
	margin-bottom:2rem;
}


/*acs*/
.fukidashi{
  position: relative;
  display: block;
  background:#fafafa;
  border:solid 1px #cacaca;
  margin:8px;
  padding:8px;
  padding-top:0;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
}
.fukidashi.up:before{
  content:" ";
  position: relative;
  top:-10px;
  display: block;
  width: 0;
  height: 0;
  margin:0 auto;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 10px solid #cacaca;
}
.fukidashi > i{
  display: block;
  text-align: center;
  margin:1rem auto;
}
#circle{
  width:160px;
  height:160px;
  margin:1rem auto;
  border:solid 1px;
  background-size: cover;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  border-radius: 50%;
}
#square{
    width:96%;
    height:160px;
    margin:1rem auto;
    background-size: cover;
}
#triangle-down {
  display: block;
  margin:1rem auto;
  width: 0;
  height: 0;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
  border-top: 14px solid #E80F57;
}
.ta-c{text-align: center;}
.ta-l{text-align: left;}
.ta-r{text-align: right;}

.shipper{color:#ff9600;}
.carrier{color:#00a7ff;}

/*split*/
.split{
  display: table;
  table-layout: fixed;
  width:100%;
}
.split > li{
  display: table-cell;
  vertical-align: top;
}



/*トップのお知らせ*/
article.landing-page{
    background:#fafafa;
    padding:32px;
}
article.landing-page h2{
  border:solid;
  text-align: center;
  padding:1em;
  margin:1em 0;
}
article.landing-page p{
  margin:2em;
}

article.landing-page .infomations li{
  padding:1em 0;
  border-bottom:dotted 1px #cacaca;
}
article.landing-page .infomations li span.infomation-cat{
  font-size:0.8rem;
  margin:1rem 0;
  background: #eee;
}
article.landing-page .infomations li a{
  display: block;
  font-size:1rem;
  padding:0.5rem 0 1rem;
}
article.landing-page .infomations li span a:hover{
  color:#f40022;
}
.post-info{
    font-size:0.75rem;
    color:#666;
    text-align: right;
    padding:.5rem 0 0;
}
.post-info > span{
    padding:0;
    padding-left:16px;
}

/*list*/
ul.list-contents{
    display: block;
    width:100%;
    margin-bottom:2rem;
}
ul.list-contents li{
    display: block;
    width:100%;
    padding-bottom:.5rem;
    margin-bottom:.5rem;
    border-bottom:dotted 1px #cacaca;
}
ul.list-contents li a{
    display: block;
}
ul.list-contents li a:hover{
    text-decoration: underline;
}

/*single*/
.single{
    margin:2rem 0px;
    padding:1rem;
    background:#f9f9f9;
}
.single p{
    margin-bottom:1rem;
}

/*next-back*/
ul.next-back{
    display: block;
    table-layout: fixed;
    width:100%;
    margin:1rem 0;
}
ul.next-back li{
    display: block;
    width:100%;
    font-size:0.8rem;
}
ul.next-back li:first-child{
}
ul.next-back li:last-child{
    text-align: right;
}
ul.next-back li a{
    display: block;
    width:100%;
    color:#111;
    border:solid 1px #cacaca;
    padding:.5rem .75rem;
    margin:.1rem 0;
}
ul.next-back li a:hover{
    background:#111;
    color:#fff;
}

/*single Q&A*/
.single .qaq,
.single .qaa{
  position: relative;
  border:solid 1px #bbb;
  background:#fff;
  padding:1em;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.single .qaq{
  color:#666;
  margin-bottom:2em;
}
.single .qaq:before{
  content:"Q";
  position: absolute;
  top:-0.75em;
  left:-0.25em;
  font-size:1.25em;
  color:#aaa;
  line-height:1;
  font-weight: 600;
  padding:.25em .5em;
  background:#ddd;
}
.single .qaa{
  font-size:1.1em;
}
.single .qaa:before{
  content:"A";
  position: absolute;
  top:-0.75em;
  left:-0.25em;
  font-size:1.25em;
  color:#fff;
  line-height:1;
  font-weight: 600;
  padding:.25em .5em;
  background:#274695;
}


.app-box{
    display: block;
    width:100%;
}
.app-box ul.split li{
    text-align: center;
}
.app-box ul li a img{
    width:80% !important;
    max-height:70px !important;
    margin:1rem auto !important;
}
.app-box ul li .qr-img{
    width:50% !important;
    max-width:50% !important;
    height:auto !important;
    margin:0 auto 1rem !important;
}






















































/*ボックス全体*/
.accbox {
    width:100%;
    margin: 2em 0;
    padding: 0;
}

/*ラベル*/
.accbox label {
    display: block;
    width:100%;
    margin: 1.5px 0;
    padding : 13px 12px;
    color: #333;
    font-weight: 400;
    background: #fff;
    cursor :pointer;
    transition: all 0.2s;
    border:none !important;
}
.accbox label.flex-box-sb span{
  display: inline-block;
}
.accbox label.flex-box-sb span:first-child{
  width:100%;
}

/*アイコンを表示*/
.accbox label:before {
    content: '\f054';
    font-family: 'FontAwesome';
    padding-right: 8px;
    display: inline-block;
    width:32px;
}

/*ラベルホバー時*/
.accbox label:hover {
    background :#fff;
    border:solid 1px #8b97ff;
}

/*チェックは隠す*/
.accbox input {
    display: none;
}

/*中身を非表示にしておく*/
.accbox .accshow {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.3s;
}

/*クリックで中身表示*/
.cssacc:checked + label + .accshow {
  height: auto;
  padding: 1em;
  border:solid 1px #cacaca;
  opacity: 1;
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e2e2e2', endColorstr='#fafafa',GradientType=0 );
}

.accbox ul{
  width:98%;
  margin:auto;
}
.accbox ul li{
  border-bottom:solid 1px #cacaca;
}
.accbox ul li a{
  display: block;
  color:#07105b;
  padding:0.5em 0;
}
.accbox ul li a:hover{
  color:#f40022;
  padding-left:0.6em;
}
.accbox ul li a span{
  display: inline-block;
}
.accbox ul li a span:first-child{
  width:calc(100% - 100px);
}
.accbox ul li a span:last-child{
  width:100px;
  text-align: right;
}

/*アイコンを入れ替える*/
.cssacc:checked + label:before {
    content: '\f078';
}



/*accbox & guide*/
.accbox.guide{
  border:solid 1px #aaa;
}
.accbox.guide h3{
  background:#111;
  color:#fff;
  padding:.5rem 0 .5rem 1rem;
}
.accbox.guide input[type=radio] + label,
.accbox.guide input[type=checkbox] + label{
    border-bottom:dotted 1px #cacaca !important;
}




/*scroll top*/
#pagetop{
  position: fixed;
  right:0;
  bottom:0;
}
#pagetop a{
  position: absolute;
  right:0;
  bottom:80px;
  display: block;
  background:rgba(0,0,0,0.3);
  color:#fff;
  font-size:1.2rem;
  padding:.5rem .65rem;
}
#pagetop a:hover{
  background:rgba(0,0,0,0.4);
}

/*modal-menu*/
.open-menu{
    display: none;
}
@media screen and (max-width:640px){
    .open-menu{
        display: block;
        font-size:1.5rem;
        color:#fff;
        z-index:1000;
        position: fixed;
        top:2px;
        left:16px;
    }
}
.menu-box{
}
.menu-box ul,
.menu-box ul li{
    display: block;
    width:100%;
}
.menu-box ul li a{
    display: block;
    width:100%;
    border:solid 1px #cacaca;
    margin-bottom:.25rem;
    padding:.25rem 0;
}

/*cf7*/
.wpcf7-response-output{
    margin:2rem 0 1rem;
}

/*payment-plan*/
table.plan{
    margin-bottom:2rem;
}
table.plan tr:nth-child(2){
    background:#4fdfff;
    color:#0a687e;
}
table.plan tr:nth-child(4){
    background:#4fff8d;
    color:#0d8036;
}
table.plan tr:nth-child(6){
    background:#ffee4f;
    color:#988908;
}
table.plan th,
table.plan td{
    padding:.75em .5em;
    text-align: center !important;
}
table.plan td.blank{
    padding:4px;
}
table.plan td span.payment-attention{
    display: block;
    background:#fff;
    color:#f00;
    font-size:0.8em;
    font-weight: 600;
}
table.plan td:nth-child(2) > span{
    font-size:1.1em;
    font-weight: 800;
}
.brand-logo{
    display: block;
    margin-bottom:2rem;
}
.contents section.contents-box .brand-logo > img{
    display: block;
    max-width:360px;
    height:auto;
    margin:1rem 0;
}

/*add top-pr*/
.app-pr-title{
  font-size:1.4em;
  color:#00406f;
  font-weight: 600;
  padding-left:1em;
}
.app-pr-box{
  position: relative;
  background:#d2edff;
  padding-left:33% !important;
}
.app-pr-image{
  position: absolute;
  top:0;
  left:20px;
  width:30%;
  height:240px;
}
.app-pr-image img{
  width:100%;
}
.app-pr-box span{
  display: block;
  font-size:1.1em;
  color:#00406f;
  font-weight: 600;
}
.app-pr-box ul.app-bnr{
  display: table;
  table-layout: fixed;
}
.app-pr-box ul.app-bnr li{
  display: table-cell;
  width:50%;
  padding:1em;
}
.app-pr-box ul.app-bnr li img{
  width:auto;
  height:50px;
}
@media screen and (max-width:640px){
  #contents-wrap article.contents section.app-pr-box{
    padding-left:1em !important;
    padding:1em;
  }
  .app-pr-image{
    display: none;
  }
  .app-pr-box ul.app-bnr li img{
    width:auto;
    height:42px;
  }
}
@media screen and (max-width:320px){
  .app-pr-box ul.app-bnr li img{
    width:auto;
    height:32px;
  }
}



/* base */
blockquote{
  border:solid 1px #aaa;
  background:#f1f1f1;
  padding:.5em;
  margin-bottom:1.5em;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}





/*20200213 add*/
.post-photo-gallerys{
  display: table;
  table-layout: fixed;
  width:100%;
}
.post-photo-gallerys li{
  display: table-cell;
  vertical-align: middle;
}
.post-photo-gallerys li img{
  display: block;
  max-width:180px;
  height:auto;
  margin:.5em auto !important;
}



/*20200224add*/
.information-cat{
}

.information-cat h3{
  display: block;
  background: #111;
  color:#fff;
  font-size:1.2em;
  padding:.5em .5em .5em 1em;
}
.information-cat ul{
  width:100%;
}
.information-cat ul li a{
  display: block;
  color:#333;
  letter-spacing: .1em;
  border-right:solid 1px #cacaca;
  border-bottom:solid 1px #cacaca;
  border-left:solid 1px #cacaca;
  padding:.5em .5em .5em 1em;
}
.information-cat ul li a:hover{
  text-decoration: none !important;
  background:#fffddf;
}


/*20200229 add*/
.remodal100{
  width:100%;
  max-width: 100% !important;
  font-size:12px;
}
.get-contents-box{
  width:100%;
}
.get-contents-box table{
  width:100%;
  text-align:left;
}
.get-contents-box table th,
.get-contents-box table td{
  padding:4px;
  border-right: solid 1px #ccc;
  border-bottom: solid 1px #ccc;
}
.get-contents-box table th{
  background:#eee;
  text-align:center;
}
.get-contents-box .get-case td:last-child{
  text-align: right
}
.sp-only-tag{
  display: none;
}
@media screen and (max-width:640px){
  .get-contents-box table tbody{
    margin-bottom:8px;
  }
  .get-contents-box table th{
    display: none;
  }
  .get-contents-box table td{
    display: block;
    border-left:solid 1px #ccc;
  }
  .get-contents-box table tbody td:last-child{
    border-bottom:solid 2px #111;
  }
  .sp-only-tag{
    background:#eee;
    padding:4px;
    display: block;
  }
  .get-contents-box .get-case td:last-child{
    text-align: left
  }
}







/*add*/
ul.company-info{
  margin-bottom:1em;
  border-bottom:solid 1px #aaa;
}
ul.company-info li:first-child{
  
}
