/*デフォルト*/
body {
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    background-color: #f6f6f4;
}
h1,h2,h3,h4,h5{
    letter-spacing: 0.1rem;
    line-height: 2rem;/*仮*/
    color:#5B5649;
}
a {
    color:#009CA3;
}
a:hover {
    color:#00B9B2;
}
.no-border a{
    border-bottom: none;
}
p, li{
    font-size:.85rem;
    letter-spacing: 0.1rem;
    line-height: 1.3rem;
    text-align: justify;
}
strong {
    font-weight: bold;
    font-size: 1rem;
}
.center{
    display: block;
    margin: 0 auto;
}
.attention{
    color: #FF6600;
    font-weight: bold;
    font-size: .9em;
}
.attention-l{
    color: #FF6600;
    font-weight: lighter;
    font-size: .9em;
}
.font1{
    font-size: 6pt;
}

.font80{
    font-size: .8em;
}
.font150{
    font-size: 1.5em;
}
.gray{
    color:#5B5649!important;
}
.blue{
    color:#00B9B2!important;
}
.text-blue{
    color:#26a69b!important;
}
.orange{
    color: #EF6854!important;
}
.bg-blue{
    background-color:#26a69b!important;
}
.bg-orange{
    background-color: #EF6854!important;
}
.bg-gray{
    background-color: #D9D9D2!important;
}
.bg-d-gray{
    background-color: #5B5649!important;
}
.indent1{
    padding-left: 1em;
}
/*見出し*/
.card-header-or h6{
    display: block;
    background-color: #EFEDED;
    padding: 7px;
    margin: 25px 15px 15px;
}

.size-big-200 {
    font-size: 150%;
}

.page-header h1{
    font-size:2em;
    line-height: 2.5em;
    position: relative;
    display: block;
    margin: 1.5em 0em 1.5em;
    text-align: center;
}
.page-header h1:before {
    content: '';
    position: absolute;
    bottom: 0px;
    width: 15%;
    height: 5px;
    left: 50%;
    -moz-transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background-color: #fae000;
    border-radius: 2px;
    display: block;
    margin: 0 auto;
}

.page-header h2{
    font-size:1.5em;
    line-height: 2.2em;
}
.page-header h2:first-letter {
    font-size: 1.55em;
    color: #26a69b;
}

.page-header h3{
    font-weight:bolder;
    font-size:1.3em;
    line-height: 1.5em;
    padding: 0.1em 0.5em;/*上下 左右の余白*/
    background: transparent;/*背景透明に*/
    border-left: solid 3px #fae000;/*左線*/
    margin-bottom: 0.5em;
}

.page-header h4{
    font-size:1.125em;
    line-height: 2.3em;
    font-weight: bold;
}

.page-header h5{
    font-size:0.75em;
    line-height: 2.3em;
    font-weight: bold;
}

.page-header h5{
    font-size: 16px;
    letter-spacing: 0.05em;
    padding: 0.1em 0em 0em 0.3em;
    border-bottom: 1px dashed #fdec50;
}
/*入れ子*/
ol.nest {
    counter-reset: item;
    list-style-type:none;
    text-indent: 1em;
    display: block;
    margin: 20px auto;
}
ol.nest li:before{
    display: inline-block;
    text-align: left;
    width: 1em;
    margin-right: 1em;
    margin-left: -2em;
  }
ol.nest>li:before {
    counter-increment: item;
    content: counters(item, "") ")";
}
ol.nest li{
    text-indent: 1em;
}

.space100{
    margin-top: 100px;
}
/*ヘッダー*/

#header {
position: relative;
    width: 100%;
    overflow: hidden;
    text-align: right;
    background-color: #F7F5EE;
    padding: 8px;
}
#header h1 {
 font-size: 14px;
}
#header img {
    float: left;
    height: auto;
    margin-top: 8px;
}
#header p {
    font-size: 90%;
    color: #300304;
    font-weight: lighter;
    padding: 8px 10px 0px 0px;
    float: right;
}
#header a {
    text-decoration: none;
    transition: all 0.5s ease-in-out 0s;
}
#header a:hover {
    color: #00B9B2;
     border-bottom: dotted 1px #00B9B2;
}
.headBoxEn{
	position: absolute;
    right: 16px;
    top:6px;
    z-index: 5;
    }
#share{
    padding-right: 60px;
    font-size: 12px;
}
#socialbuttons div {
    float: left;
    margin-left: 5px;
}
#socialbuttons  {
    /* [disabled]margin-left: 310px; */
    margin-top: 5px;
    text-align: right;
    margin-right: -17px;
}

.kan_bw{
    background-color: #300304;
}
a.nav-link{
    color: #ECECEC!important;
}
.navbar-brand{
    display: none;
}
a.nav-link-publicity-tab{
    color: #300304!important;
}

.top_sns {
width: 40%;
margin: 0px auto;
display: -webkit-flex;
display: flex;
-webkit-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: center;
padding: 10px 0px 10px;
}

.top_sns_twitter {
width: 45%;
margin: 2%;
text-align: center;
font-size: 2vw;
color: #5B5649;
}

.top_sns_facebook {
width: 45%;
margin: 2%;
text-align: center;
font-size: 2vw;
    color: #5B5649;

}


#footer {
    overflow: hidden;
    background-color: #5B5649;
    z-index: 1;
    width: 100%;
    clear: both;
    padding-top: 32px;
    border-top: 1px dotted #ccc;
}
.footerNav a{
    color: #FFF;
    text-decoration: none;
    display: block;
    transition:all 0.3s ease-in-out;
    border:none;
    font-weight: lighter;
}
.footerNav a:hover {
    color: #009CA3;
}
.footerNav h3 {
    color: #FFF;
    font-size: 13px;
    margin: 0px;
}
.footerNav p {
    font-size: 12px;
    margin: 7px 0px 3px 0px;
    line-height: 100%;
}
.footerNav li{
    font-size: 12px;
    margin: 6px 0px 3px;
    padding: 4px 0px 4px 16px;
}
.footerNav li a::after {
    content: ' >';
    }
.footer ul {
    overflow: hidden;
    margin: 0px 0px 5px 0px;
    padding: 0px;

}
#footer hr{
    border-top: 1px dotted #FFF;
}
.footer-title{
    display: block;
    border-bottom: 1px dotted #645b5c;
    margin-top: 16px;
}
.footer-title h3{
    width: 95%;
    font-weight: bold;
    letter-spacing: 0.05em;
    border-bottom: 2px solid #fdec50;
    display: inline-block;
    padding-bottom: 3px;
    margin-bottom: -2px;
}
.footer_bottom{
    width: 48%;
	margin: 1%;
    display: inline;

}
.footer-business{
    text-align: center;
}
.footer-business a{
    color: #FFF;
    font-size: 0.8rem;
}

.footer-business a:after
{
  content: ' |';
}
.footer-business a:last-child:after
{
  content: '';
}

.jasrac{
    text-align: left;
    display: inline;
}
.jasrac p{
    font-size: .6em!important;
    line-height: 1.1em;
}
.copyright {
    font-size: 12px;
    color: #5B5649;
    clear: both;
    text-align: center;
    margin: 0px;
    background-color: #D9D9D2;
    /* [disabled]display: block;
*/
    width: 100%;
    padding: 0px 20px 5px 0px;
    vertical-align:text-top;
}
.copyright span{
    position: relative;
    top:-3px;
}
.logo-nxtg{
    position: relative;
    top:4px;
}

#page-top {
    position: fixed;
    right: 0px;
}
.btn-caret::after{
	content: '>';
	float:right;
}
.btn-back::after{
	content: '<';
	float:left;
}

/*サブブルーボタン（その他）*/
.btn-b{
    background-color: #26a69b;
    color: #FFF!important;
    display: inline-block;
    font-size: 1em;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    letter-spacing: 0.1em;
    padding: 1em 2em;
    border-radius: 4px;
    cursor: pointer;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);/*影*/
    -webkit-tap-highlight-color: transparent;
    transition: .3s ease-out;/*変化を緩やかに*/
}
.btn-b:hover{
    box-shadow: 0 3px 3px 0 rgba(0,0,0,0.14), 0 1px 7px 0 rgba(0,0,0,0.12), 0 3px 1px -1px rgba(0,0,0,0.2);/*浮き上がるように*/
    background-color: #00B9B2;
    text-decoration: none;
}
/*グレーボタン（「戻る」サブ）*/
.btn-g{
    background-color: #5B5649;
    color: #FFF!important;
    display: inline-block;
    font-size: 1em;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    letter-spacing: 0.1em;
    padding: 1em 2em;
    border-radius: 4px;
    cursor: pointer;
    box-shadow: 0 2px 2px 0 rgba(0,0,0,0.14), 0 1px 5px 0 rgba(0,0,0,0.12), 0 3px 1px -2px rgba(0,0,0,0.2);/*影*/
    -webkit-tap-highlight-color: transparent;
    transition: .3s ease-out;
}
.btn-g:hover{
    box-shadow: 0 3px 3px 0 rgba(0,0,0,0.14), 0 1px 7px 0 rgba(0,0,0,0.12), 0 3px 1px -1px rgba(0,0,0,0.2);/*浮き上がるように*/
    background-color: #7C7566;
    text-decoration: none;
}
/*サブブルーアウトラインボタン（その他）*/
.btn-b-outline{
    background-color: rgba(0,0,0,0);
    border: solid 1.5px #26a69b;
    color: #26a69b!important;
    display: inline-block;
    font-size: 1em;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    letter-spacing: 0.1em;
    padding: .925em 1.95em;
    border-radius: 4px;
    cursor: pointer;
    transition: .3s ease-out;
}
.btn-b-outline:hover{
    background-color: #26a69b;
    color: #FFF!important;
    text-decoration: none;
}
/*グレーアウトラインボタン（「戻る」メイン）*/
.btn-g-outline{
    background-color: rgba(0,0,0,0);
    border: solid 1.5px #5B5649;
    color: #5B5649!important;
    display: inline-block;
    font-size: 1em;
    line-height: 1;
    text-decoration: none;
    text-align: center;
    letter-spacing: 0.1em;
    padding: .925em 1.95em;
    border-radius: 4px;
    cursor: pointer;
    transition: .3s ease-out;
}
.btn-g-outline:hover{
    background-color:#5B5649;
    color: #FFF!important;
    text-decoration: none;
}

/*アプリDLボタン(svg)用シャドウ*/
.btn-shadow{
  filter: drop-shadow(0px 1.8px 1px rgba(0,0,0,.5));
  transition: .3s ease-out;
  position: relative;
  top: 10px;
}
.btn-shadow:hover{
  filter: drop-shadow(0px 1.8px 1.5px rgba(0,0,0,.7));
  text-decoration: none;
}

.btn-kzm {
    color: #5B5649;
    background-color: #FAE000;
    border : 0px;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
    margin: 1rem 0px;
	white-space: initial;
}
.btn-kzm:a {
 color: #5B5649;
 background-color: #FAE000;
 border : 0px;
 cursor:pointer;
}
.btn-kzm:hover {
    color: #5B5649;
    background-color: #FAE000;
    border : 0px;
    cursor: pointer;
    box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
}

.btn-outline-kzm {
    color: #5B5649;
    border : 1px solid #FAE000;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
    margin: 1rem 0px;
}

.btn-outline-kzm a {
    color: #5B5649;
    border : 1px solid #FAE000;
    cursor:pointer;
}
.btn-outline-kzm:hover {
    color: #300304;
    background-color: #FAE000;
    border : 1px solid #FAE000;
    cursor: pointer;
    box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);
    transition: all 0.3s cubic-bezier(.25, .8, .25, 1);
    margin: 1rem 0px;
}

.bg-kzm {
    background-color: #FAE000;
}
/* ステップ */
.step-underline{
	border-bottom: 1px solid #eee;
}
.step-current-underline{
	border-bottom: 2px solid #FAE000;
}
.badge-step {
	padding: 0;
	background-color: #eee;
}
.badge-current-step{
	padding: 0;
	background-color: #FAE000;
}


/* smartPhone */
@media screen and (max-width: 	768px) {
    /*ここにスマホ用スタイルを記述*/
    .container {
    width: 100%;
    }
    /*img要素のcssにwidth100追加でスマホ時のみ画像幅100%*/
    img.width100{
        width:100%;
        height:auto;
    }
    .page-header h1{
        font-size:1.6em;
        line-height: 1.5em;
        position: relative;
        display: block;
        margin: 1.5em 0em 1.8em;
        text-align: center;
    }
    .page-header h1:before {
        content: '';
        position: absolute;
        bottom: -4px;
        width: 35%;
        max-width:120px;
        height: 5px;
        left: 50%;
        -moz-transform: translateX(-50%);
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        background-color: #fae000;
        border-radius: 2px;
        display: block;
        margin: 0px auto 0px;

    }

    .page-header h2{
        font-size:1.3em;
        line-height: 1.5em;
        margin-bottom: 10px;
    }
    .page-header h2:first-letter {
        font-size: 1.4em;
        color: #00B9B2;
    }

    .page-header h3{
        font-weight:bolder;
        font-size:1.15em;
        line-height: 1.5em;
        padding: 0.1em 0.5em;/*ä¸Šä¸‹ å·¦å³ã®ä½™ç™½*/
        background: transparent;/*èƒŒæ™¯é€æ˜Žã«*/
        border-left: solid 3px #fae000;/*å·¦ç·š*/
        margin-bottom: 0.5em;
    }

    .page-header h4{
        font-size:1.025em;
        line-height: 2.3em;
        font-weight: bold;
    }

    .page-header h5{
        font-size:0.75em;
        line-height: 2.3em;
        font-weight: bold;
    }
    .top_sns {
        width: 90%;
        margin: 0px auto;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: center;
        padding: 10px 0px 10px;
    }

    .top_sns_twitter {
    	width: 45%;
    	margin: 2%;
    	text-align: center;
    	font-size: 4vw;
    	color: #5B5649;
    }

    .top_sns_facebook {
    	width: 45%;
    	margin: 2%;
    	text-align: center;
    	font-size: 4vw;
    	color: #5B5649;
    }
    .sp-border{
        border-top:1px dotted #D9D9D2!important;
        opacity: .5;
        margin: 5px 0px!important;
    }
}
@media screen and (min-width:575px) {
    .sp-border{
        display: none;
    }
}
