 body {
     margin: 0;
     padding: 0;
     background: #000;
     color: #fff;
     overflow-x: hidden;
     -webkit-font-smoothing: antialiased;
     -moz-osx-font-smoothing: grayscale;
     font-family: "-apple-system", BlinkMacSystemFont, "Noto Sans Japanese","Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", "Hiragino Kaku Gothic ProN", "MS PGothic", Osaka, "sans-serif";
 }

/* .page-container {
     overflow: hidden;
 }*/

 a,
 button {
     transition: background .3s ease-in-out;
     outline: none!important;
 }

 a:hover {
     text-decoration: none;
     cursor: pointer;
 }

 .page-preloader {
     position: fixed;
     top: 0;
     bottom: 0;
     width: 100%;
     z-index: 100000;
     background: #FFFFFF url("../img/loading-gif-icon-26.jpg") no-repeat center center;
     background-size: 20%;
     animation-name: preloader-fade;
     animation-delay: 2s;
     animation-duration: 0.5s;
     animation-fill-mode: both;
 }

 @keyframes preloader-fade {
     0% {
         opacity: 1;
         visibility: visible;
     }
     100% {
         opacity: 0;
         visibility: hidden;
     }
 }

 .bloc {
     width: 100%;
     clear: both;
     background: 50% 50% no-repeat;
     padding: 0 50px;
     -webkit-background-size: cover;
     -moz-background-size: cover;
     -o-background-size: cover;
     background-size: cover;
     position: relative;
     display: flex;
 }

 .bloc .container {
     padding-left: 0;
     padding-right: 0;
 }

 .bloc-lg {
     padding: 100px 50px;
 }

 .bloc-sm {
     padding: 20px 50px;
 }

 .d-bloc {
     color: rgba(255, 255, 255, .7);
 }

 .d-bloc button:hover {
     color: rgba(255, 255, 255, .9);
 }

 .d-bloc .icon-round,
 .d-bloc .icon-square,
 .d-bloc .icon-rounded,
 .d-bloc .icon-semi-rounded-a,
 .d-bloc .icon-semi-rounded-b {
     border-color: rgba(255, 255, 255, .9);
 }

 .d-bloc .divider-h span {
     border-color: rgba(255, 255, 255, .2);
 }

 .d-bloc .a-btn,
 .d-bloc .navbar a,
 .d-bloc a .icon-sm,
 .d-bloc a .icon-md,
 .d-bloc a .icon-lg,
 .d-bloc a .icon-xl,
 .d-bloc h1 a,
 .d-bloc h2 a,
 .d-bloc h3 a,
 .d-bloc h4 a,
 .d-bloc h5 a,
 .d-bloc h6 a,
 .d-bloc p a {
     color: rgba(255, 255, 255, .6);
 }

 .d-bloc .a-btn:hover,
 .d-bloc .navbar a:hover,
 .d-bloc a:hover .icon-sm,
 .d-bloc a:hover .icon-md,
 .d-bloc a:hover .icon-lg,
 .d-bloc a:hover .icon-xl,
 .d-bloc h1 a:hover,
 .d-bloc h2 a:hover,
 .d-bloc h3 a:hover,
 .d-bloc h4 a:hover,
 .d-bloc h5 a:hover,
 .d-bloc h6 a:hover,
 .d-bloc p a:hover {
     color: rgba(255, 255, 255, 1);
 }

 .d-bloc .navbar-toggle .icon-bar {
     background: rgba(255, 255, 255, 1);
 }

 .d-bloc .btn-wire,
 .d-bloc .btn-wire:hover {
     color: rgba(255, 255, 255, 1);
     border-color: rgba(255, 255, 255, 1);
 }

 .d-bloc .card {
     color: rgba(0, 0, 0, .5);
 }

 .d-bloc .card button:hover {
     color: rgba(0, 0, 0, .7);
 }

 .d-bloc .card icon {
     border-color: rgba(0, 0, 0, .7);
 }

 .d-bloc .card .divider-h span {
     border-color: rgba(0, 0, 0, .1);
 }

 .d-bloc .card .a-btn {
     color: rgba(0, 0, 0, .6);
 }

 .d-bloc .card .a-btn:hover {
     color: rgba(0, 0, 0, 1);
 }

 .d-bloc .card .btn-wire,
 .d-bloc .card .btn-wire:hover {
     color: rgba(0, 0, 0, .7);
     border-color: rgba(0, 0, 0, .3);
 }

 .d-bloc .card,
 .l-bloc {
     color: rgba(255, 255, 255, 1);
 }

 .d-bloc .card button:hover,
 .l-bloc button:hover {
     color: rgba(0, 0, 0, .7);
 }

 .l-bloc .icon-round,
 .l-bloc .icon-square,
 .l-bloc .icon-rounded,
 .l-bloc .icon-semi-rounded-a,
 .l-bloc .icon-semi-rounded-b {
     border-color: rgba(0, 0, 0, .7);
 }

 .d-bloc .card .divider-h span,
 .l-bloc .divider-h span {
     border-color: rgba(0, 0, 0, .1);
 }

 .d-bloc .card .a-btn,
 .l-bloc .a-btn,
 .l-bloc .navbar a,
 .l-bloc a .icon-sm,
 .l-bloc a .icon-md,
 .l-bloc a .icon-lg,
 .l-bloc a .icon-xl,
 .l-bloc h1 a,
 .l-bloc h2 a,
 .l-bloc h3 a,
 .l-bloc h4 a,
 .l-bloc h5 a,
 .l-bloc h6 a,
 .l-bloc p a {
     color: rgba(0, 0, 0, .6);
 }

 .d-bloc .card .a-btn:hover,
 .l-bloc .a-btn:hover,
 .l-bloc .navbar a:hover,
 .l-bloc a:hover .icon-sm,
 .l-bloc a:hover .icon-md,
 .l-bloc a:hover .icon-lg,
 .l-bloc a:hover .icon-xl,
 .l-bloc h1 a:hover,
 .l-bloc h2 a:hover,
 .l-bloc h3 a:hover,
 .l-bloc h4 a:hover,
 .l-bloc h5 a:hover,
 .l-bloc h6 a:hover,
 .l-bloc p a:hover {
     color: rgba(0, 0, 0, 1);
 }

 .l-bloc .navbar-toggle .icon-bar {
     color: rgba(0, 0, 0, .6);
 }

 .d-bloc .card .btn-wire,
 .d-bloc .card .btn-wire:hover,
 .l-bloc .btn-wire,
 .l-bloc .btn-wire:hover {
     color: rgba(0, 0, 0, .7);
     border-color: rgba(0, 0, 0, .3);
 }

 .voffset {
     margin-top: 30px;
 }

 .hero .hero-nav {
     padding-left: inherit;
     padding-right: inherit;
 }
/*
 .navbar-light .navbar-nav .nav-link {
     color: rgb(64, 64, 64);
 }
*/
 .btco-menu li>a {
     padding: 10px 15px;
     color: #000;
 }

 .btco-menu .active a:focus,
 .btco-menu li a:focus,
 .navbar>.show>a:focus {
     background: transparent;
     outline: 0;
 }

 .dropdown-menu .show>.dropdown-toggle::after {
     transform: rotate(-90deg);
 }

 .mg-sm {
     margin-top: 10px;
     margin-bottom: 5px;
 }

 .mg-md {
     margin-top: 10px;
     margin-bottom: 20px;
 }

 .btn-d,
 .btn-d:hover,
 .btn-d:focus {
     color: #000;
     background: rgba(204,204,204,0.8);
 }

 button {
     outline: none!important;
 }

 .blockquote {
     padding: 0 20px;
     border-left: 2px solid;
 }

 .blockquote.text-right {
     border-left: 0;
     border-right: 2px solid;
 }

 .card-sq,
 .card-sq .card-header,
 .card-sq .card-footer {
     border-radius: 0;
 }

 .card-rd {
     border-radius: 30px;
 }

 .card-rd .card-header {
     border-radius: 29px 29px 0 0;
 }

 .card-rd .card-footer {
     border-radius: 0 0 29px 29px;
 }

 .divider-h {
     padding: 20px 0;
     width: 100%;
     display: inline-block;
 }

 .divider-h span {
     display: block;
     border-top: 1px solid transparent;
 }

 .divider-half {
     width: 50%;
     margin: 0 auto;
 }

 .dropdown-menu .divider-h,
 .dropdown-menu .divider-half {
     padding: 0;
 }

 .form-control {
     border-color: rgba(0, 0, 0, .1);
     box-shadow: none;
 }

 .scroll-fx-in-range {
     will-change: opacity;
 }

 .scrollToTop {
     width: 40px;
     height: 40px;
     position: fixed;
     bottom: 20px;
     right: 20px;
     opacity: 0;
     z-index: 500;
     transition: all .3s ease-in-out;
 }

 .scrollToTop span {
     margin-top: 6px;
 }

 .showScrollTop {
     font-size: 14px;
     opacity: 1;
 }

 a[data-lightbox] {
     position: relative;
     display: block;
     text-align: center;
 }

 a[data-lightbox]:hover::before {
     content: "+";
     font-family: "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial;
     font-size: 32px;
     line-height: 42px;
     width: 50px;
     height: 50px;
     margin-left: -25px;
     border-radius: 50%;
     background: rgba(0, 0, 0, .6);
     color: #FFF;
     font-weight: 100;
     z-index: 1;
     position: absolute;
     top: 50%;
     left: 50%;
     transform: translateY(-50%);
     -webkit-transform: translateY(-50%);
 }

 a[data-lightbox]:hover img {
     opacity: 0.6;
     -webkit-animation-fill-mode: none;
     animation-fill-mode: none;
 }

 .lightbox-caption {
     padding: 20px;
     color: #FFF;
     background: rgba(0, 0, 0, .5);
     position: absolute;
     left: 15px;
     right: 15px;
     bottom: 5px;
 }

 .close-lightbox {
     color: #FFF;
     font-size: 30px;
     position: absolute;
     top: 20px;
     right: 20px;
     z-index: 20;
     background: rgba(0, 0, 0, .5);
     border: none;
     line-height: 30px;
     padding: 0 9px 5px;
     opacity: 0.3;
     border-radius: .25rem;
 }

 .close-lightbox:hover,
 .next-lightbox:hover,
 .prev-lightbox:hover {
     opacity: 1.0;
     color: #FFF;
 }

 .next-lightbox,
 .prev-lightbox {
     font-size: 20px;
     color: rgba(255, 255, 255, .9);
     background: rgba(0, 0, 0, .5);
     transition: all .2s ease-in-out;
     position: absolute;
     top: 45%;
     z-index: 1;
     opacity: 0.4;
     border-radius: .25rem;
 }

 .next-lightbox {
     padding: 6px 8px 1px 13px;
     right: 25px;
 }

 .prev-lightbox {
     padding: 6px 13px 1px 10px;
     left: 25px;
 }

 .frameless-lb {
     border-radius: 0;
     border: none;
 }

 .frameless-lb .modal-body {
     padding: 0;
 }

 .frameless-lb .lightbox-caption {
     left: 0;
     right: 0;
     bottom: -16px;
 }

 .object-hidden {
     display: none;
 }

 h1,
 h2,
 h3,
 h4,
 h5,
 h6,
 p,
 label,
 .btn,
 a {
     font-family: "Helvetica";
 }

 .container {
     max-width: 1140px;
 }

 .link-style {
     font-weight: bold;
 }

 .h2-style {
     font-size: 45px;
     width: 100%;
 }


 .red {
     color: #FF2600!important;
 }
 .black_belt_hot_text .red{
     font-size: 26px;
     font-weight: bolder;
 }
 .form-group span.red {
     font-size: 12px;
     font-weight: normal;;
 }
/* .container-div-style {
     height: 23px;
 }

 .container-div-bloc-3-style {
     height: 80px;
 }

 .container-div-0-style {
     height: 80px;
 }

 .container-div-0-bloc-3-style {
     height: 130px;
 }
*/
 /*.label-style {
     width: 28.13%;
 }

 .radio-style {
     height: 37px;
 }

 .radio-bloc-3-style {
     height: 45px;
 }

 .p-style {
     font-size: 14px;
 }

 .btn-azure {
     background: #0081FF;
     color: #FFFFFF!important;
 }

 .btn-azure:hover {
     background: #0067cc!important;
     color: #FFFFFF!important;
 }

 .bg-tenkunoshizuku {
     background-image: url("../img/tenkunoshizuku.jpg");
 }*/

 @media (max-width: 1024px) {
     .bloc {
         padding-left: 20px;
         padding-right: 20px;
     }
     .bloc.full-width-bloc,
     .bloc-tile-2.full-width-bloc .container,
     .bloc-tile-3.full-width-bloc .container,
     .bloc-tile-4.full-width-bloc .container {
         padding-left: 0;
         padding-right: 0;
     }
 }

 @media (max-width: 991px) {
     .container {
         width: 100%;
     }
     .page-container {
         overflow: hidden;
         position: relative;
     }
     .bloc {
         padding-left: constant(safe-area-inset-left);
         padding-right: constant(safe-area-inset-right);
     }
     .bloc-group,
     .bloc-group .bloc {
         display: block;
         width: 100%;
     }
 }

 @media (max-width: 767px) {
     .page-container {
         overflow: hidden;
         position: relative;
     }
     .bloc-tile-2 .container,
     .bloc-tile-3 .container,
     .bloc-tile-4 .container {
         padding-left: 0;
         padding-right: 0;
     }
     .a-block {
         padding: 0 10px;
     }
     .btn-dwn {
         display: none;
     }
     .voffset {
         margin-top: 5px;
     }
     .voffset-md {
         margin-top: 20px;
     }
     .voffset-lg {
         margin-top: 30px;
     }
     form {
         padding: 5px;
     }
     .close-lightbox {
         display: inline-block;
     }
     .blocsapp-device-iphone5 {
         background-size: 216px 425px;
         padding-top: 60px;
         width: 216px;
         height: 425px;
     }
     .blocsapp-device-iphone5 img {
         width: 180px;
         height: 320px;
     }
 }

 @media (max-width: 991px) {
     .mt-md-0 {}
     .mt-md-4 {}
 }

 @media (max-width: 575px) {
     .mt-1 {}
     .h2-style {
         font-size: 30px;
     }
     .container-div-0-style {
         height: 90px;
     }
     .label-style {
         width: 100%;
     }
     .label--必須-■お名前-style {
         width: 100%;
     }
     .label--必須- ■email-style {
         width: 36.15%;
     }
     .label-bloc-3-style {
         width: 100%;
     }
     .container-div-bloc-3-style {
         height: 86px;
     }
     .container-div-28758-style {
         height: 43px;
     }
 }


/* 20230222 */
h2 {
	margin-bottom: 0.8em
}
h3{
	padding: 2.2em 0 1em;
}
.navbar-dark .navbar-toggler-icon {
}
.navbar-dark .navbar-toggler[aria-expanded=false] .navbar-toggler-icon {
    background-image: url(../img/menu.png);
    animation: changeOpen 0.5s linear 0s;
}
.navbar-dark .navbar-toggler[aria-expanded=true] .navbar-toggler-icon {
    background-image: url(../img/menu_on.png);
    animation: changeClose 0.5s linear 0s;
}
@keyframes changeOpen {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}
@keyframes changeClose {
  0% {
    opacity: 0
  }
  100% {
    opacity: 1
  }
}

::placeholder {
  color: #aaa!important;
}
.form-control {
    color: #222;
}
.navbar-dark .navbar-toggler {
    border:none;
}

/* Head */
.black_belt_navbar {
	position: relative;
	z-index: 5;
	padding: 0;
	background: rgba(0,0,0,.4)
}
.black_belt_logo {
	padding: 0 1rem;
}

.head_contact {
	display: inline-flex;
	align-items: center;
	flex-wrap: wrap;
}
.head_contact div {
	width: 100%!important;
	line-height: 1.6
}
.head_contact .head_contact_phone {
	font-size: 180%
}
.head_contact .head_contact_phone a{
    color: #fff;
}
.head_contact_text {
    letter-spacing: 0em;
}

.black_belt_head .navbar-nav {
	width: 100%
}
.black_belt_head .navbar-nav li.nav-item {
    flex: 1;
    text-align: center;
    position: relative;
}
.black_belt_head .navbar-nav li:after {
	display: block;
	content: "";
	height: 50%;
	width: 1px;
	position: absolute;
	top: 25%;
	right: 0;
    border-right: 1px solid #fff;
}
.black_belt_head .navbar-nav li:last-child:after {
    border-right: none
}
.black_belt_head .navbar-nav li a,
.black_belt_head .navbar-nav li a:hover,
.black_belt_head .navbar-nav li a:visited{
	color: #fff!important;
}
.black_belt_head .navbar-nav li a:hover {
    text-decoration: underline;
    background: #000!important;
}
.black_belt_head .dropdown-toggle{
    position: relative;
    top: 10px;
}
.black_belt_head .dropdown-menu {
    background: rgba(0,0,0,.8);
    border: 1px solid rgba(0,0,0,.15);
    margin: 0;
}
.black_belt_head .navbar-nav li li {
    list-style-type: disc;
}
.black_belt_head .navbar-nav li li:after{
    display: none;
}
.black_belt_head .navbar-nav li li a{
    padding-left: 0.5rem
}
.black_belt_head .navbar-nav li li::marker{
    color: #fff;
}
.dropdown:hover>.dropdown-menu {
  display: block;
}

.dropdown>.dropdown-toggle:active {
  /*Without this, clicking will make it sticky*/
    pointer-events: none;
}
/* Main 01 */
.salutejapon01 {
	width: 100%;
	height: calc(100vh - 118px);
	background-image: url(../img/kv01.jpg);
    background-repeat: no-repeat;
    background-position: top center;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    background-attachment: fixed;
	position: relative;
	z-index: 1;
	top: -40px
}
.salutejapon01:after {
	display: block;
	content:"";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	background: rgba(0,0,0,.7)
}
.salutejapon01 .container {
	position: relative;
	z-index: 3
}
.black_belt_slide {
	text-align: center;
}
.black_belt_slide img {
	max-width:100%;
	width: 80%;
	margin: 0 auto;
}
.salutejapon_sub01 .black_belt_slide img {
	max-width:100%;
	width: 100%;
}

.salutejapon01 .container,.salutejapon01 .container *{
	height: 100%
}

.salutejapon01 .container img {
	height: auto
}
.salutejapon01 .container .carousel-item.active {
	display: flex;
	align-items: center;
}



/* Main 02 */
.salutejapon02 {
	width: 100%;
	padding: 6% 0 10%;
	text-align: center;
	line-height: 2;
	background: url(../img/kv02.jpg) no-repeat center center;
	background-size: cover;
	position: relative;
	z-index: 1;
	top: -40px
}
.salutejapon02:after {
	display: block;
	content:"";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	background: rgba(0,0,0,.8)
}
.salutejapon02 .container {
	position: relative;
	z-index: 3
}

/* Main 03 */
.salutejapon03 {
	width: 100%;
	padding: 10% 0;
	background: url(../img/kv03.jpg) no-repeat center center;
	background-size: cover;
	background-attachment: fixed;
	position: relative;
	z-index: 1;
	top: -40px
}
.salutejapon03:after {
	display: block;
	content:"";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	background: rgba(0,0,0,.8)
}
.salutejapon03 .container {
	position: relative;
	z-index: 3
}
.black_belt_hot {
	display: flex;
	align-items: center;
	background:#e5e5e5;
	margin: 15px 0;
	color: #000;
    height: calc( 100% - 30px)
}
.black_belt_hot .black_belt_hot_img {
	width: 42%;
    height: 100%;
	overflow: hidden;
    background-size: cover;
    background-position: center;
}
.black_belt_hot .black_belt_hot_img img{
	width: 100%;
	object-fit: cover
}
.black_belt_hot_text {
	width: 58%;
	overflow:hidden;
	padding: 1rem 15px;
	line-height: 1.6
}
.black_belt_hot_text h4{
	font-size: 1.1rem;
	font-weight: bold;
}

.btn_black_belt {
	background: #000;
	color: #fff;
	padding:5px;
	display: inline-block;
}
.btn_black_belt:hover {
	background: #6a2600;
	color: #fff;
}
.btn_black_belt span {
	display: block;
	padding: 0.2rem 2rem;
	border: 1px solid #fff
}
/* Main 04 */
.salutejapon04 {
	color: #fff;
	width: 100%;
	padding: 5% 0;
	background: url(../img/kv04.jpg) repeat-y center center;
	background-size: cover;
	position: relative;
	z-index: 1;
	top: -40px
}
.salutejapon04:after {
	display: block;
	content:"";
	width: 100%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
	background: rgba(0,0,0,.8)
}
.salutejapon04 .container,.map_box {
	position: relative;
	z-index: 3
}

/* Main 05 */
.salutejapon05 {
	color: #000;
	background: #f4f4f2;
	position: relative;
	top: -40px;
	padding: 10% 0;
}
.order_text {
	font-size: 1.5rem
}
.black_belt_form label {
	display: flex;
	justify-content: space-between;
}
.black_belt_form label span{
	display: block;
	padding: 3px 15px;
	border-radius: 5px;
	font-size: 12px;
	color: #fff!important
}
.black_belt_form label span.red {
	background-color: #f00
}
.black_belt_form label span.grey {
	background-color: #979797
}
.black_belt_form .btn_black_belt {
	padding:10px;
}
.form-group.error .form-control {
    border-color: #f00;
}
.salutejapon05 small a {
    text-decoration: underline;
    color: #6c757d;
}

/* Main 06 */
.salutejapon06 {
	padding: 20px 0 50px;
}
.salutejapon06 a{
    color: #fff;
    text-decoration: underline;
}
.salutejapon06 a:hover {
    text-decoration: none;
}

/* Sub Main */
.btn_black_belt_big {
	margin:0 auto;
	font-size: 1.4rem
}
.btn_black_belt_big span {
	padding:0.4rem 5rem;
}
.btn_black_belt_big.black {
	background: #000;
	color: #fff
}
.btn_black_belt_big.white {
	background: #fff;
	color: #000
}
.btn_black_belt_big.white span{
	border-color: #000;
}
.btn_black_belt_big.normal {
	background: #fff;
	color: #000
}
.btn_black_belt_big.normal span{
	border: 2px solid #000;
}
.btn_black_belt_big.black:hover,.btn_black_belt_big.white:hover,.btn_black_belt_big.normal:hover {
	background: #6a2600;
	color: #fff;
}
.btn_black_belt_big.normal:hover span{
	border: 2px solid #6a2600;
}
/* Sub Main 02*/
.salutejapon_sub02 .about_box {
	text-align: center;
	background: #323232;
	padding: 10px;
}
.salutejapon_sub02_2 .about_box {
	background: #111;
}
.salutejapon_sub02 .about_box .about_box_in {
	border: 3px solid #fff;
	padding-bottom: 2em;
	line-height: 2
}
.salutejapon_sub02_2 .about_box .about_box_in {
	border: 1px solid #fff;
}
.about_box_in p{
    margin-bottom: 2rem;
}
.about_box_in p,.shop_box_in p{
        max-width: 550px;
        margin-right: auto;
        margin-left: auto;
        text-align: center;
        word-break: normal;
        white-space: revert;
    }

/* Sub Main 03*/
.salutejapon_sub03 .sub_pro_in {
	padding:2rem 3rem 4rem;
	background: #fff
}
.salutejapon_sub03 .black_belt_hot {
	display: block;
	background-color: #fff
}
.salutejapon_sub03 .black_belt_hot .black_belt_hot_img {
	width: 100%;
    height: auto;
	overflow: hidden;
}

.salutejapon_sub03 .black_belt_hot .black_belt_hot_text {
	width: 100%;
	text-align: center;
	padding:1.5rem 1rem 0.5rem;
	min-height: 8em
}
/* Sub Main 04*/
.shop_box {
	background: #fff;
	color: #000;
	padding: 10px;
}
.shop_box .shop_box_in {
	border: 1px solid #000;
	padding-bottom: 2em;
	line-height: 2
}
.salutejapon_sub04 p a {
    color:#000;
    text-decoration: underline;
}
/* Sub Main 05*/
.salutejapon05.salutejapon_sub05 {
	top: 0!important;
	padding:0;
}

.salutejapon_sub05 .black_belt_form .btn_black_belt {
    padding: 5px;
    border-radius: 0
}

.salutejapon_sub05 .order_box {
	padding:10px;
}
.salutejapon_sub05 .order_box_in {
	border: 1px solid #ccc;
	padding: 4rem 1rem;
}

/* Success */

.salutejapon05.black_belt_form_success {
    background: none;
}
.black_belt_form_success .order_box {
    background-color: #fff
}
.black_belt_form_success .form-group {
    display: flex;
    padding-bottom: 0.5rem;
    border-bottom: 1px solid #ddd;
}
.black_belt_form_success .black_belt_form label {
    padding-right: 10px;
}
.success_text {
    text-align: left;
    font-weight: bold;
}
.black_belt_form_success .form-group.block {
    display: block;
    width: 100%
}

/* datetimepicker style */
.bootstrap-datetimepicker-widget {
    width: 100%!important;
    max-width:21rem
}
.bootstrap-datetimepicker-widget table th,
.bootstrap-datetimepicker-widget table td {
    padding:12px;
}
.bootstrap-datetimepicker-widget table td.today:before {
    border-bottom-color: #f00;
}
.bootstrap-datetimepicker-widget table td.active,
.bootstrap-datetimepicker-widget table td.active:hover {
    background-color: #6a2600;
    color: #fff;
}
.bootstrap-datetimepicker-widget table td.disabled,
.bootstrap-datetimepicker-widget table td.disabled:hover {
    color: #ddd;
}
.bootstrap-datetimepicker-widget table td.new{
    color: #888
}


/* screen set */
@media (min-width: 768px) {
    .navbar-expand-md .navbar-collapse.black_belt_sp {
        display: none!important;
    }
}
@media (min-width: 1200px) {
	.black_belt_logo img {
	}
	.navbar .container.black_belt_head {
		display: block;
	}
	.head_contact {
		display: flex;
	}
	.navbar-expand-md .navbar-collapse.d-md-none,
    .navbar-expand-md .navbar-collapse.black_belt_sp {
		display: none!important;
	}
	.salutejapon01,.salutejapon02,.salutejapon03,.salutejapon04,.salutejapon05{
		top: -40px
	}
	.black_belt_navbar {
	    position: relative;
	}
	.salutejapon01 {
		width: 100%;
		height: calc(100vh - 118px);
	}
	h2 {
		font-size: 3.5rem;
		font-weight: bold;
	}
}
@media (max-width: 1199.98px) {
	.black_belt_logo img {
		max-width: 180px
	}
	.navbar .container.black_belt_head {
		display: block;
	}
	.head_contact {
		display: flex;
	}
	.navbar-expand-md .navbar-collapse.d-md-none {
		display: none!important;
	}
	.salutejapon01,.salutejapon02,.salutejapon03,.salutejapon04,.salutejapon05{
		top: -40px
	}
	.black_belt_navbar {
	    position: relative;
	}
	.salutejapon01 {
		width: 100%;
		height: calc(100vh - 118px);
	}
	h2 {
		font-size: 3.2rem;
		font-weight: bold;
	}
	.salutejapon_sub03 .sub_pro_in {
	    padding: 2rem 2rem 4rem;
	}
    .salutejapon01,.salutejapon02,.salutejapon03,.salutejapon04 {
        background-size: auto 100vh;
    }
}
@media (max-width: 991.98px) {
	.black_belt_logo img {
	}
	.navbar .container.black_belt_head {
		display: block;
	}
	.head_contact {
		display: flex;
	}
	.navbar-expand-md .navbar-collapse.d-md-none {
		display: none!important;
	}
	.salutejapon01,.salutejapon02,.salutejapon03,.salutejapon04,.salutejapon05{
		top: -40px
	}
	.black_belt_navbar {
	    position: relative;
	}
	.salutejapon01 {
		width: 100%;
		height: calc(100vh - 118px);
	}
	h2 {
		font-size: 3rem;
		font-weight: bold;
	}
	.salutejapon_sub03 .sub_pro_in {
	    padding: 2rem 1.5rem 4rem;
	}
}
@media (max-width: 767.98px) {
	.black_belt_logo img {
	}
	.navbar .container.black_belt_head,
	.navbar-expand-md .navbar-collapse.d-md-none {
		display: flex;
	}
    .navbar-expand-md .navbar-collapse.black_belt_sp ul{
        position: relative;
        z-index: 2;
        margin: 2rem 0 40vh;
    }
	.navbar-expand-md .navbar-collapse.black_belt_sp li{
		width: 100%;
        text-align: left;
	}
    .navbar-expand-md .navbar-collapse.black_belt_sp li {
        padding-left: 2rem;
        padding-right: 1rem;
        font-size: 1.1rem;
    }
    .navbar-expand-md .navbar-collapse.black_belt_sp li li {
        width: 100%;
        padding-left: 0;
        padding-right: 0;
        font-size: 0.9rem;
        list-style-type: disc;
        padding-bottom: 0.5rem
    }
    .navbar-expand-md .navbar-collapse.black_belt_sp li a{
        color: #fff;
        text-decoration: underline;
    }
    .head_contact_tel {
        padding-top: 0.7rem;
        display: block;
        font-size: 1.3rem;
        text-align: center;
    }
    .head_contact_tel a{
        font-size: 1.7rem;
    }
	.head_contact {
		display: none;
	}
	.salutejapon01,.salutejapon02,.salutejapon03,.salutejapon04,.salutejapon05{
		top: 0
	}
	.black_belt_navbar {
	    position: fixed;
	    z-index: 50;
	    width: 100%;
	    background: rgba(0,0,0,.98)
	}

	.salutejapon01 {
		width: 100%;
		height: 100vh;
	}

	.salutejapon01 .container .black_belt_slide.d-block {
		display: flex!important;
		align-items: center;
	}
	.salutejapon01 .container .black_belt_slide.d-block div {
		height: auto;
	}
    .salutejapon01 .container .black_belt_slide.d-block img {
        margin-bottom: 2rem
    }
    .salutejapon01 .container .black_belt_slide.d-block .btn_black_belt {
        margin-top:3rem
    }
	h2 {
		font-size: 2.5rem;
		font-weight: normal;
	}
	.salutejapon_sub03 .black_belt_hot {
		display: flex;
	}
	.salutejapon_sub03 .sub_pro_in {
	    padding: 2rem 1rem 4rem;
	}
	.salutejapon_sub03 .black_belt_hot .black_belt_hot_img {
		width: 49%;
	}

	.salutejapon_sub03 .black_belt_hot .black_belt_hot_text {
		width: 51%;
		text-align: left;
	}
    .black_belt_hot_text {
        font-size: 0.9rem
    }
	.black_belt_hot_text h4 {
	    font-size: 1.1rem;
	}

	.salutejapon_sub01 {
		padding-top: 5rem;
	}
    .salutejapon05.black_belt_form_success {
        padding-top: 6rem;
    }
	.sub_pro_in .row .col-md-4:nth-child(odd) .black_belt_hot{
		flex-direction: row-reverse;
	}
	.sub_pro_in .row .col-md-4:nth-child(odd) .black_belt_hot .black_belt_hot_text {
		text-align: right;
	}
	.sub_pro_in .btn_black_belt {
		margin-top: 2rem
	}
    .salutejapon_sub05 .order_box_in {
        padding: 1.5rem 1rem;
    }
    .black_belt_form_success h2 {
        font-size: 1.7rem;
    }
    .salutejapon04 {
        padding-bottom: 0;
    }
    .salutejapon04 iframe {
        position: relative;
        bottom: -7px
    }
}

@media (max-width: 575.98px) {

	.black_belt_logo img {
	}
	.navbar .container.black_belt_head {
		display: flex;
	}
	.head_contact {
		display: none;
	}
    .navbar-expand-md .navbar-collapse.black_belt_sp ul {
        height: calc(100vh - 80px);
        overflow-y: scroll;
    }
    .navbar-expand-md .navbar-collapse.black_belt_sp ul{
        margin: 1.2rem 0 20vh;
        padding-bottom: 30vh
    }
    .navbar-expand-md .navbar-collapse.black_belt_sp li {
        padding-left: 1rem;
        font-size: 0.9rem;
    }
    .navbar-expand-md .navbar-collapse.black_belt_sp ul ol {
        padding-left: 1rem;
        margin-top: 0.2rem
    }
    .navbar-expand-md .navbar-collapse.black_belt_sp li li {
        font-size: 0.8rem;
    }
    .black_belt_sp .nav-link {
        padding-top: 0.2rem;
        padding-bottom: 0.2rem;
    }
    .navbar-expand-md .navbar-collapse.black_belt_sp li li {
        padding-bottom: 0.2rem;
    }
    .head_contact_tel {
        padding-top:0;
        font-size: 1rem;
    }
    .head_contact_tel a {
        font-size: 1.4rem;
    }
	.salutejapon01,.salutejapon02,.salutejapon03,.salutejapon04,.salutejapon05{
		top: 0
	}
	.black_belt_navbar {
	    position: fixed;
	    width: 100%;
	    background: rgba(0,0,0,.98);
	}
	.salutejapon01 {
        padding-top: 70px;
		width: 100%;
		height:100vh;
	}
	.salutejapon01 .container .black_belt_slide.d-block {
		display: flex!important;
		align-items: center;
	}
	.salutejapon01 .container .black_belt_slide.d-block div {
		height: auto;
	}
    .salutejapon01 .container .black_belt_slide.d-block img {
        margin-bottom: 2rem
    }
    .salutejapon01 .container .black_belt_slide.d-block .btn_black_belt {
        margin-top:3rem
    }

	.salutejapon_sub01 .container,.salutejapon_sub02 .container,
	.salutejapon_sub02_2 .container,.salutejapon_sub03 .container,
	.salutejapon_sub04 .container,.salutejapon_sub05 .container{
		padding-left: 0;
		padding-right: 0
	}
    h2{font-size: 2rem;}
	h3{font-size: 1.2rem}
	.btn_black_belt_big,.order_text {
		font-size: 1.1rem
	}
	.salutejapon_sub02 .about_box .about_box_in,
	.salutejapon_sub02_2 .about_box .about_box_in,
	.shop_box .shop_box_in {
		padding-left: 10px;
		padding-right: 10px;
	}
	.salutejapon_sub03 .sub_pro_in {
	    padding: 2rem 15px 4rem;
	}

}
@media (max-width: 375.98px) {
    body {
        font-size: 0.85rem;
    }
    h2 {
        font-size: 1.6rem;
    }
    h3 {
        font-size: 1.1rem;
    }
    .black_belt_hot_text h4, .btn_black_belt_big, .order_text {
        font-size: 1rem;
    }
    .black_belt_hot_text {
        font-size: 0.85rem;
    }
    .btn-group-lg>.btn, .btn-lg {
        font-size: 1.1rem;
    }
}
