.narrow.row {
  margin-left: -5px;
  margin-right: -5px;
}

.narrow .col-1,.narrow .col-2,.narrow .col-3,
.narrow .col-4,.narrow .col-5,.narrow .col-6,
.narrow .col-7,.narrow .col-8,.narrow .col-9,
.narrow .col-10,.narrow .col-11,.narrow .col-12,
.narrow .col-xs-1,
.narrow .col-sm-1, .narrow .col-md-1, .narrow .col-lg-1,
.narrow .col-xs-2, .narrow .col-sm-2, .narrow .col-md-2, .narrow .col-lg-2,
.narrow .col-xs-3, .narrow .col-sm-3, .narrow .col-md-3, .narrow .col-lg-3,
.narrow .col-xs-4, .narrow .col-sm-4, .narrow .col-md-4, .narrow .col-lg-4,
.narrow .col-xs-5, .narrow .col-sm-5, .narrow .col-md-5, .narrow .col-lg-5,
.narrow .col-xs-6, .narrow .col-sm-6, .narrow .col-md-6, .narrow .col-lg-6,
.narrow .col-xs-7, .narrow .col-sm-7, .narrow .col-md-7, .narrow .col-lg-7,
.narrow .col-xs-8, .narrow .col-sm-8, .narrow .col-md-8, .narrow .col-lg-8,
.narrow .col-xs-9, .narrow .col-sm-9, .narrow .col-md-9, .narrow .col-lg-9,
.narrow .col-xs-10, .narrow .col-sm-10, .narrow .col-md-10, .narrow .col-lg-10,
.narrow .col-xs-11, .narrow .col-sm-11, .narrow .col-md-11, .narrow .col-lg-11,
.narrow .col-xs-12, .narrow .col-sm-12, .narrow .col-md-12, .narrow .col-lg-12 {
  padding-left: 5px;
  padding-right: 5px;
}

.sm_row.row {
  margin-left: -3px;
  margin-right: -3px;
}

.sm_row .col-1,.sm_row .col-2,.sm_row .col-3,
.sm_row .col-4,.sm_row .col-5,.sm_row .col-6,
.sm_row .col-7,.sm_row .col-8,.sm_row .col-9,
.sm_row .col-10,.sm_row .col-11,.sm_row .col-12,
.sm_row .col-xs-1,
.sm_row .col-sm-1, .sm_row .col-md-1, .sm_row .col-lg-1,
.sm_row .col-xs-2, .sm_row .col-sm-2, .sm_row .col-md-2, .sm_row .col-lg-2,
.sm_row .col-xs-3, .sm_row .col-sm-3, .sm_row .col-md-3, .sm_row .col-lg-3,
.sm_row .col-xs-4, .sm_row .col-sm-4, .sm_row .col-md-4, .sm_row .col-lg-4,
.sm_row .col-xs-5, .sm_row .col-sm-5, .sm_row .col-md-5, .sm_row .col-lg-5,
.sm_row .col-xs-6, .sm_row .col-sm-6, .sm_row .col-md-6, .sm_row .col-lg-6,
.sm_row .col-xs-7, .sm_row .col-sm-7, .sm_row .col-md-7, .sm_row .col-lg-7,
.sm_row .col-xs-8, .sm_row .col-sm-8, .sm_row .col-md-8, .sm_row .col-lg-8,
.sm_row .col-xs-9, .sm_row .col-sm-9, .sm_row .col-md-9, .sm_row .col-lg-9,
.sm_row .col-xs-10, .sm_row .col-sm-10, .sm_row .col-md-10, .sm_row .col-lg-10,
.sm_row .col-xs-11, .sm_row .col-sm-11, .sm_row .col-md-11, .sm_row .col-lg-11,
.sm_row .col-xs-12, .sm_row .col-sm-12, .sm_row .col-md-12, .sm_row .col-lg-12 {
  padding-left: 3px;
  padding-right: 3px;
}

.opacity-0 {
  opacity:0!important;
}
.opacity-1 {
  opacity:0.2!important;
}
.opacity-2 {
  opacity:0.4!important;
}
.opacity-3 {
  opacity:0.6!important;
}
.opacity-4 {
  opacity:.8!important;
}
.opacity-5 {
  opacity:1!important;
}

.card-body {
    padding: 2rem;
}

a:hover {
	text-decoration: none;
	opacity: .8;
}

img {
	max-width: 100%;
	height: auto;
}

.transition {
    -webkit-transition: 0.7s;
    -moz-transition: 0.7s;
    -o-transition: 0.7s;
    transition: 0.7s;
}

.relative {
	position: relative;
}

.bg_white {
	background: rgba(255,255,255,0.97);
}

.toggle_btn {
	font-size:1.3rem;
	cursor: pointer;
}
.toggle_btn:hover {
	opacity: .85;
}

.screen-reader-text {
	display: none;
}

.fixed_full {
    height: 100%;
    position: fixed;
    z-index: 9999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
}

.absolute_y {
    position: absolute;
    top: 50%;
    left: 0%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
}

.absolute_x {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
}

.absolute_xy{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.btn {
	font-size:.9rem;
	padding:.5rem 1.25rem;
}

.btn-sm {
	padding: .5rem 1rem;
}

.btn-lg {
	padding: .6rem 1.75rem;
}


.single_content h2 {
	font-weight: bold;
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
    padding: 1rem 0;
    border-bottom: 1px solid #555;
}

.single_content h3 {
    font-weight: bold;
    margin-bottom: 1.5rem;
    padding: 1rem 0 0;
    font-size: 1.3rem;
}

.single_content h4 {
    font-weight: bold;
    margin-bottom: 1.5rem;
    padding: 1rem 0 0;
    font-size: 1.1rem;
}

.type-page h2 {
	font-weight: bold;
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
    padding: 1rem 0;
    border-bottom: 1px solid #555;
}

.type-page h3 {
    font-weight: bold;
    margin-bottom: 1.5rem;
    padding: 1rem 0 0;
    font-size: 1.3rem;
}

.type-page h4 {
    font-weight: bold;
    margin-bottom: 1.5rem;
    padding: 1rem 0 0;
    font-size: 1.1rem;
}

.nav-links .page-numbers {
	display: inline-block;
	border:1px solid #aaa;
	padding:.25em .7em;
	margin-right: .25em;
}

.nav-links .prev.page-numbers,
.nav-links .next.page-numbers{
	display: inline-block;
	border:0;
	padding:0;
}

.nav-links .page-numbers.placeholder {
	margin-right: 0;
}

/* =====================================================
   BST-MASTER から移行したスタイル
   ===================================================== */

/*
Index Title
*/
.indexttl {
	text-align: center;
	padding: 30px 0;
	font-size: 1.5rem;
	font-weight: bold;
	background: #f8f9fa;
	margin: 30px 0;
}

/*
Slider
*/
.slide_box {
	margin-bottom: 30px;
}

/*
Movie Block
*/
.movie-block {
	margin-bottom: 30px;
}
.movie-block ul {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-wrap: wrap;
}
.movie-block li {
	width: 33.333%;
	padding: 10px;
}
@media (max-width: 767px) {
	.movie-block li {
		width: 50%;
	}
}

/*
Loop Box / Card Styles
*/
.loop_box {
	margin-bottom: 20px;
}
.loop_box .card {
	border-radius: 0;
	box-shadow: 0 1px 3px rgba(0,0,0,0.1);
	height: 100%;
}
.loop_box .card-header {
	background: #fff;
	border-bottom: 1px solid #eee;
	padding: 12px 15px;
}
.loop_box .card-body {
	padding: 15px;
}
.loop_box header h1,
.loop_box header h2 {
	font-size: 1rem;
	line-height: 1.5;
	margin: 0;
}
.loop_box header h1 a,
.loop_box header h2 a {
	color: #333;
	text-decoration: none;
}
.loop_box header h1 a:hover,
.loop_box header h2 a:hover {
	color: #007bff;
}
.loop_box img {
	width: 100%;
	height: auto;
}
.loop_box section {
	font-size: 0.9rem;
	color: #666;
	margin: 10px 0;
}

/*
Sidebar
*/
.sidebar {
	margin-top: 20px
}
.sidebar section {
	margin-bottom: 40px
}
.sidebar ul,
.sidebar ol {
	list-style-type: none;
	padding: 0
}
.sidebar li {
	margin: 10px 0
}

/*
Site footer
*/
.site-footer {
	padding: 40px 0
}
.site-footer ul,
.site-footer ol {
	list-style-type: none;
	padding: 0
}
.site-footer li {
	margin: 10px 0
}
.site-sub-footer p {
	text-align: center
}
.site-footer p {
	text-align: center
}
.site-footer img {
	max-width: 100%;
	height: auto;
	transition: 0.3s;
}
.site-footer a:hover img {
	opacity: 0.8;
}

/*
Page Image
*/
.page_image {
	margin-bottom: 30px;
}
.page_image img {
	width: 100%;
	height: auto;
}

/*
Navbar styles
*/
.navbar-brand img {
	max-height: 50px;
	width: auto;
}
.navbar-nav .nav-link {
	padding: 10px 15px;
	color: #333;
}
.navbar-nav .nav-link:hover {
	color: #007bff;
}

/*
Pagination
*/
.pagination {
	justify-content: center;
	margin: 30px 0;
}
.pagination .page-item.active .page-link {
	background-color: #007bff;
	border-color: #007bff;
}

/*
Comments
*/
#respond {
	margin-top: 40px;
}
.comment-list {
	list-style: none;
	padding: 0;
}
.comment-list li {
	padding: 20px;
	margin-bottom: 20px;
	background: #f8f9fa;
	border-radius: 4px;
}

/* ナビゲーションのスタイル調整 */
.navbar {
	padding: 0.5rem 1rem;
}
.navbar-nav .nav-link {
	padding: 0.75rem 0.8rem;
	font-size: 0.85rem;
	white-space: nowrap;
}
.navbar-nav .dropdown-menu {
	border-radius: 0;
	border: none;
	box-shadow: 0 2px 10px rgba(0,0,0,0.1);
	min-width: 200px;
}
.navbar-nav .dropdown-item {
	padding: 0.6rem 1rem;
	font-size: 0.85rem;
}
.navbar-nav .dropdown-item:hover {
	background-color: #f8f9fa;
}
/* モバイル時の調整 */
@media (max-width: 991px) {
	.navbar-nav {
		padding: 1rem;
	}
	.navbar-nav .nav-link {
		padding: 1rem 0;
		border-bottom: 1px solid #eee;
	}
	.navbar-nav .dropdown-menu {
		box-shadow: none;
		padding-left: 1rem;
	}
}

.navbar-expand-lg>.container {
    padding-right: 15px;
    padding-left: 15px;	
}

.navbar.navbar-default, .navbar.navbar-light {
	padding: 10px 0 20px!important;
}

@media (max-width: 991px) {
	.navbar-brand img {
	    max-width: 150px!important;
        height: auto!important;
	}
	.navbar.navbar-default, .navbar.navbar-light {
		padding: 10px 0 15px!important;
	}
	.navbar-brand {
	    padding-top:0rem;
	}
	.navbar-light .navbar-toggler {
		font-size: 1rem;
    	border: 0;
	}
	
	.navbar-light button.navbar-toggler:focus {
		border: 0;
		box-shadow: none;
		outline: none;
		opacity:.5;
    }

    .indexttl {
		text-align: center;
		padding: 0 0 10px;
		font-size: 1.5rem;
		font-weight: bold;
		background: #f8f9fa;
		margin: 20px 0;
    }
}


.slide_box .metaslider {
	max-width:100%!important;
}

iframe {
	max-width:100%;
}
body {
    overflow-wrap: anywhere;
}