body.modal-open {
	overflow: hidden;
	font-family:
	system-ui,
	-apple-system,
	BlinkMacSystemFont,
	"Segoe UI",
	"Hiragino Kaku Gothic ProN",
	"Yu Gothic UI",
	"Yu Gothic",
	Meiryo,
	sans-serif;
}
h1 {
	margin: 0px;
	font-size: 54px;
	font-weight: 500;
}
h2 {
	margin: 0px;
	font-size: 42px;
	font-weight: 500;
}
h3 {
	margin: 0px;
	font-size: 36px;
	font-weight: 500;
}
h4 {
	margin: 0px;
	font-size: 28px;
	font-weight: 500;
}
h5 {
	margin: 0px;
	font-size: 20px;
	font-weight: 500;
}
p {
	margin: 0px;
	padding: 0px;
}
a,button {
	cursor: pointer;
	box-sizing: border-box;
}
a:focus,
button:focus,
*:focus  {outline: none;}
a:focus, a:hover {
	color: inherit;
	text-decoration: none;
}

input[type="number"]::-webkit-outer-spin-button,
input[type="number"]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
div[id^='section-'] {
	position: relative;
	min-height: 50px;
}

#overlay {
	display: none;
	position: fixed;
	z-index: 1015;
	width: 100%;
	min-height: 100vh;
	top: 0;
	left: 0;
	background: rgba(0,0,0,0.3);
}
#slide {
  position: fixed;
  top: 0;
  right: 0;
  min-width: 500px;
  max-width: 50%;
  height: 100vh;
	overflow-y:auto;
  background: #fff;
	box-shadow: -2px 0 8px rgba(0, 0, 0, .15);
  transform: translateX(100%);
  transition: transform .3s ease;
  z-index: 1150;
}
#slide.is-open {transform: translateX(0);}
#slide .slide-menu-inner {
  height: 100%;
  display: flex;
  flex-direction: column;
	overflow-y: auto;
	overscroll-behavior: contain;
}
#slide .side-menu-header {
	display: flex;
	justify-content: flex-end;
	position: sticky;
	top: 0px;
	z-index: 100;
}
#slide .slide-menu-close {
	position: absolute;
	top: 10px;
	right: 15px;
  background: none;
  border: none;
  font-size: 24px;
  cursor: pointer;
}
#slide .side-menu-body {
  flex: 1;
  overflow-y: auto;
  padding: 16px;
}
#link.modal .modal-header,
#image.modal .modal-header,
#confirm.modal .modal-header,
#message.modal .modal-header {
	position: sticky;
	top: 0px;
	z-index: 100;
	border-bottom: 0px;
	border-radius: 6px 6px 0px 0px;
}
#link.modal .modal-header .close,
#image.modal .modal-header .close,
#message.modal .modal-header .close {
	opacity: 1;
	margin-top: 0px;
	margin-left: 15px;
	font-size: 18px;
	font-weight: normal;
	color:inherit;
	text-shadow:inherit;
}
#link.modal .modal-header .modal-title,
#image.modal .modal-header .modal-title {
	margin-right: auto;
	font-size: 16px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}
#link.modal .modal-body,
#image.modal .modal-body {
	position:relative;
	height:100%;
	padding-top: 0px;
}
#image.modal .modal-body .image {
  display: flex;
  justify-content: center;
  align-items: center;
}

/* 1枚表示のimg/video */
#image.modal .modal-body .image img,
#image.modal .modal-body .image video {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  display: block;
}

#confirm.modal p.form-control-static {margin: 0px;}
#confirm.modal .modal-footer,
#message.modal .modal-footer {
	position: sticky;
	position: -webkit-sticky;
	bottom: 0px;
	text-align: center;
	padding-bottom: 30px;
	background-color: inherit;
	border-top: 0px;
	border-radius: 0px 0px 6px 6px;
}
#message.modal .modal-header {border-bottom: 0px;}
#message.modal .modal-footer {border-top: 0px;}
#message.modal .panel-default {
	margin-bottom: 0px;
	-webkit-box-shadow: unset;
	box-shadow: unset;
	border-bottom: 0px;
}
#message.modal .panel-default>.panel-heading {background-color: #ffffff;}
#message.modal .panel-default>.panel-heading .caret {margin-top: 10px;}

.modal .modal-xl {
	width: 85%;
	height: 85%;
	margin: 15px auto;
}
.modal .modal-xl .modal-content {height: 100%;}
.modal .modal-fl {
	top: 0px;
	width: 100%;
	height: 100vh;
	margin: 0px;
	padding: 0px;
}
.modal .modal-fl .modal-content {
	height: 100%;
	max-height: 100vh;
	border: 0px none;
	border-radius: 0px;
}
.modal-body .message {padding:15px;}

.section-container,
.section,
.module,
.module .inner,
.module .column-list,
.module .content,
.module .column-1,
.module .column-2,
.module .title,
.module .heading,
.module .heading-detail,
.module .subheading,
.module .subheading-detail,
.module .line-detail,
.module .lead,
.module .text,
.module .text-detail,
.module .link,
.module .link-detail,
.module .image,
.module .image-detail,
.module .video,
.module .video-detail,
.module .caption,
.module .caption-detail,
.module .detail-heading,
.module .detail-subheading,
.module .module .detail-text,
.module .detail-image,
.module .detail-video,
.module .detail-link {position: relative;}
.module .content {min-height:30px;}

.module .category-heading,
.module-detail .category-heading {
	position: relative;
	cursor: pointer;
}
.module .category-menu,
.module-detail .category-menu {
	margin-bottom: 0px;
	padding-left: 0px;
	list-style: none;
}
.module .category-item,
.module-detail .category-item {list-style: none;}
.module .category-item a,
.module-detail .category-item a {
	text-decoration: none;
	display: block;
}

.module .content-category-tabs .category-tabs-btn {
	display: inline-block;
	float: none;
	margin-bottom: 0px;
	list-style: none;
	white-space: nowrap;
}
.module .content-category-tabs .category-tabs-link {
	display: block;
	float: none;
	margin-bottom: 0px;
	list-style: none;
	white-space: nowrap;
}
.module nav {width: 100%;}
.module .tag a,
.module .tag-detail a,
.module-detail .tag a,
.module-detail .tag-detail a {text-decoration: none;}
.module .inner > .row-no-gutters,
.module .list > .row-no-gutters,
.module .column-1 > .row-no-gutters,
.module .column-2 > .row-no-gutters {
	width: 100%;
	height: 100%;
}

.heading.ruby::before{
  content: attr(data-ruby);
  display: block;
  white-space: normal;
  overflow-wrap: anywhere;
  word-break: normal;
  margin-bottom: .2em;
}

.image > a,
.video > a,
.image-detail > a,
.video-detail > a {
	display: block;
	position: relative;
}
.image h1 {margin: 0;}
.image a.brand {
	display: flex;
  flex-wrap: nowrap;
  align-items: center;
}
.tag > a.btn.active,
.tag-detail > a.btn.active {box-shadow: none;}
.image .image-caption {position: absolute;}
.image .image-caption h1,
.image .image-caption h2,
.image .image-caption h3,
.image .image-caption h4,
.image .image-caption h5,
.image .image-caption p {
	color: inherit;
	text-shadow: inherit;
}
.image .glyphicon-zoom-in,
.image .glyphicon-search,
.image .glyphicon-new-window,
.video .glyphicon-zoom-in,
.video .glyphicon-search,
.video .glyphicon-new-window,
.image-detail .glyphicon-zoom-in,
.image-detail .glyphicon-search,
.image-detail .glyphicon-new-window,
.video-detail .glyphicon-zoom-in,
.video-detail .glyphicon-search,
.video-detail .glyphicon-new-window {
  position: absolute;
  top: unset;
  bottom: 10px;
  right: 10px;
  padding: 5px;
	border-radius: 100%;
	background-color: #ffffff;
	color: #666666;
	font-size: 12px;
	opacity: 0.7;
}
.image.pull-left,
.image.pull-right,
.image-detail.pull-left,
.image-detail.pull-right,
.video.pull-left,
.video.pull-right,
.video-detail.pull-left,
.video-detail.pull-right {z-index: 1;}
.overflow-x-auto li {white-space: nowrap;}
.default-color,
.default-color.active,
a.default-color:hover,
a.default-color:focus,
li.default-color:hover,
li.default-color:focus {
	background-color:inherit;
	border-color:inherit;
	color:inherit;
}

.tag-label > span {
	white-space: nowrap;
}

/*---検索フォーム---*/
.search .search-item-btn,
.search-item-close-btn {cursor: pointer;}
.search .search-inner {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.swiper-search-item {padding: 0px 50px;}
.swiper-search-item .swiper-button-prev,
.swiper-search-item .swiper-button-next {
	opacity: 1;
	transform: translateY(-50%);
	text-shadow: none;
}
.swiper-search-item .swiper-pagination {
	position: initial;
	padding:7px;
}
.swiper-search-item .swiper-pagination-bullet {
	background: #ccc;
	margin-left: 7px;
	margin-right: 7px;
}
.swiper-search-item .swiper-pagination-bullet-active {
	opacity: 0.8;
	background: #666;
}
table.search-item-calendar {
	width: 100%;
	margin: auto;
}
table.search-item-calendar > thead.calendar-thead {
	font-size: 1.4rem;
	text-align: center;
	vertical-align: middle;
	border-width: 1px;
	border-style: solid;
}
table.search-item-calendar th.caption {
	position: relative;
	padding: 1rem;
	font-weight: 600;
	text-align: center;
}
table.search-item-calendar .caption-year {
	position: absolute;
	bottom: .8rem;
	white-space: nowrap;
}
table.search-item-calendar > tbody.calendar-tbody {
	border-left: .1rem solid #ddd;
	color: #333;
}
table.search-item-calendar > tbody.calendar-tbody td {
	font-size: 1.4rem;
	text-align: center;
	vertical-align: middle;
	border-right: .1rem solid #ddd;
	border-bottom: .1rem solid #ddd;
}
table.search-item-calendar > tbody.calendar-tbody td label {
	font-weight: normal;
	margin: 0px;
	width: 100%;
	height: 100%;
}
table.search-item-calendar > tbody.calendar-tbody td.calendar-blank {background-color: #f8f8f8;}
table.search-item-calendar > tbody.calendar-tbody td.calendar-past {color: #ccc;}
table.search-item-calendar > tbody.calendar-tbody td input[type="checkbox"] {display: none;}

.inherit {background-color: inherit;}
.danger {
	color: #a94442 !important;
	background-color: #f2dede !important;
	border-color: #ebccd1 !important;
}
.embed-responsive-full {padding-bottom: 100%;}
.show-more-content {display: none;}

/*---Form parts---*/
.input-group.time .input-group-addon {cursor: pointer;}
.toggle-button {
	position: relative;
  width: 78px;
  height: 30px;
  border-radius: 30px;
  overflow: hidden;
  cursor: pointer;
}
.toggle-button input[type=checkbox] {display: none;}
.toggle-button:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: block;
	background: #999;
	-webkit-transition: 0.2s ease-out;
	transition: 0.2s ease-out;
}
.toggle-button:after {
	content: "OFF";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 42px;
  height: 26px;
  display: block;
  border-radius: 26px;
  background: #fff;
  box-shadow: 0 9px 28px -6px rgba(0, 0, 0, 0.3);
  -webkit-transition: 0.2s ease-out;
  transition: 0.2s ease-out;
  text-align: center;
  padding-top: 8px;
  line-height: 1;
  font-size: 12px;
  font-weight: bold;
  color: #999;
  letter-spacing: .5px;
  box-sizing: border-box;
}
.toggle-button.checked:before {background: #449d44;}
.toggle-button.checked:after {
	content: "ON";
	left: 33px;
	box-shadow: 0 9px 28px -6px rgba(0, 0, 0, 0.5);
	color: #449d44;
	padding-top: 8px;
}

/*---Login---*/
.form-login {
	display: none;
	max-width: 330px;
	padding: 30px 15px;
	margin: 50px auto;
	border-radius: 6px;
}
.form-login .heading,
.form-login .checkbox {margin-bottom: 10px;}
.form-login .checkbox {font-weight: 400;}
.form-login .form-control {
	position: relative;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	height: auto;
	padding: 10px;
	font-size: 16px;
}
.form-login .form-control:focus {z-index: 2;}
.form-login input#inputUserID {
	margin-bottom: -1px;
	border-bottom-right-radius: 0;
	border-bottom-left-radius: 0;
}
.form-login input#inputPassword {
	margin-bottom: 10px;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
}
.login-info,
.notice-icon {padding: 15px;}
.view-barcode {
	padding: 10px 15px;
	background-color: #FFF;
}
.barcode {margin: auto;}
.login-icon {display: none;}

/* --- PWA ---*/
.visible-pwa-install {display: block;}
.hidden-pwa-install {display: none;}

/* --- 404 ---*/
.not-found {
	display: inline-block;
	padding: 50px;
	margin: auto;
	background-color: rgba(255,255,255,0.3);
	border: 2px solid rgba(0,0,0,0.1);
	border-radius: 100%;
	font-size: 72px;
}
.not-found-message {
	padding: 15px;
	margin: auto;
}

/* --- Bootstrap ---*/
legend {
	display: inline-block;
	max-width: 100%;
	padding: initial;
	font-size: initial;
	line-height: inherit;
	color: inherit;
	border: initial;
	border-bottom: initial;
	font-weight: 700;
}
label {
	display: inline-block;
	max-width: 100%;
	padding: initial;
	font-size: initial;
	line-height: inherit;
	color: inherit;
	border: initial;
	border-bottom: initial;
	font-weight: 700;
}
.navbar {
	min-height: 30px;
	margin-bottom: unset;
	border: unset;
	border-radius: unset;
}
.btn {white-space:initial;}
.btn,
.btn:hover,
.btn:active,
.btn:active:focus,
.btn:active:focus,
.btn:focus,
.btn.active.focus,
.btn.active:focus,
.btn.focus {
	outline: none;
	outline-offset: initial;
	box-shadow: none;
}
.modal-content {
	overflow-y: auto;
	max-height: calc(100vh - 60px);
}
.pagination {
	margin: 0px;
	display: block;
}
.pagination > li {display: inline-flex;}
.navbar-collapse {
	border-top: 0px;
	-webkit-box-shadow: none;;
	box-shadow: inset none;;
}
.dropdown-menu {box-shadow: none;}
.form-group [class*=col-] {
	padding-left: 15px;
	padding-right: 15px;
}
.form-group.row-no-gutters [class*=col-] {
	padding-right: 0;
	padding-left: 0;
}
.form-horizontal .form-group {
	margin-right: 0px;
	margin-left: 0px;
}
.checkbox label,
.radio label {
	display: flex;
	align-items: center;
	min-height: initial;
	padding-left: initial;
}
.checkbox input[type=checkbox],
.checkbox-inline input[type=checkbox],
.radio input[type=radio],
.radio-inline input[type=radio] {
	position: relative;
	margin-left: initial;
	margin: initial;
	margin-right: 5px;
}
.help-block {
	margin-top: 0px;
	margin-bottom: 0px;
	padding-left: 15px;
  padding-right: 15px;
}
.help-block.with-errors {
	padding-left: 0px;
  padding-right: 0px;
}
.btn-group-vertical>.btn-group:after,
.btn-group-vertical>.btn-group:before,
.btn-toolbar:after, .btn-toolbar:before,
.clearfix:after,
.clearfix:before,
.container-fluid:after,
.container-fluid:before,
.container:after,
.container:before,
.dl-horizontal dd:after,
.dl-horizontal dd:before,
.form-horizontal .form-group:after,
.form-horizontal .form-group:before,
.modal-footer:after,
.modal-footer:before,
.modal-header:after,
.modal-header:before,
.nav:after,
.nav:before,
.navbar-collapse:after,
.navbar-collapse:before,
.navbar-header:after,
.navbar-header:before,
.navbar:after,
.navbar:before,
.pager:after,
.pager:before,
.panel-body:after,
.panel-body:before,
.row:after,
.row:before {
	display: block;
	content: "";
}
.lead {
	margin-bottom: initial;
	font-size: initial;
	font-weight:initial;
	line-height: initial;
}
.label {
	margin:0px 2px;
	padding: 2px 5px;
}
.breadcrumb {
	background-color: initial;
}
.breadcrumb > .active {color: inherit;}
.nav-pills > li > a {border-radius: initial;}

/* --- Google icon ---*/
@font-face {
  font-family: 'Material Symbols Outlined';
  src: url('../../fonts/materialSymbols-Outlined.woff2') format('woff2');
}
@font-face {
  font-family: 'Material Symbols Rounded';
  src: url('../../fonts/materialSymbols-Rounded.woff2') format('woff2');
}
@font-face {
  font-family: 'Material Symbols Sharp';
  src: url('../../fonts/materialSymbols-Sharp.woff2') format('woff2');
}

/*スタイル別のショートカット*/
.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 17px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}
.material-symbols-rounded {
  font-family: 'Material Symbols Rounded';
  font-weight: normal;
  font-style: normal;
  font-size: 17px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}
.material-symbols-sharp {
  font-family: 'Material Symbols Sharp';
  font-weight: normal;
  font-style: normal;
  font-size: 17px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

/* 例：塗りつぶし・太字にしたいときのユーティリティ*/
.material-symbols-outlined.filled,
.material-symbols-rounded.filled,
.material-symbols-sharp.filled {font-variation-settings:'FILL' 1,'wght' 400,'GRAD' 0,'opsz' 24;}
.material-symbols-outlined.bold,
.material-symbols-rounded.bold,
.material-symbols-sharp.bold {font-variation-settings: 'FILL' 0, 'wght' 700, 'GRAD' 0, 'opsz' 24;}

span.material-symbols-outlined,
span.material-symbols-rounded,
span.material-symbols-sharp {
	display: inline-flex;
	vertical-align: middle;
}

/* --- swiper ---*/
.slider-content,
.slider-gallery,
.slider-gallery-list-outer,
.gallery-thumb-list-outer {position: relative;}
.gallery-thumb-list-outer {padding: 10px 0px;}
.slider-gallery-nav {
	margin-top:0px !important;
	transform: translateY(-50%);
}
.gallery-thumb-list .swiper-wrapper{flex-wrap: nowrap !important;}
.gallery-thumb-fit img,
.gallery-thumb-fit video {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
	aspect-ratio: 16 / 9;
}
.gallery-thumb-list .swiper-slide {cursor: pointer;}
.gallery-thumb-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 20;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  cursor: pointer;
}
.gallery-thumb-nav i {
  font-size: 20px;
  line-height: 1;
}
.gallery-thumb-prev {left: 6px;}
.gallery-thumb-next {right: 6px;}
.swiper-slide {
	height:auto;
	overflow: hidden;
}
.swiper-button-prev,
.swiper-button-next {
	color: inherit;
	opacity: 0.8;
	background-image: none !important;
}
.swiper-button-next::after,
.swiper-button-prev::after {content: none !important;}
.swiper-button-next i,
.swiper-button-prev i {
  font-size: 32px;
  line-height: 1;
  pointer-events: none; /* アイコンがクリックを邪魔しないように */
}
.swiper-button-disabled {visibility: hidden;}
.swiper-pagination-bullet {
	background: #fff;
	opacity: 0.8;
}
.swiper-pagination-bullet-active {
	opacity: 1;
	background: #fff;
}
.swiper-content .swiper-button-prev,
.swiper-content .swiper-button-next {
	color: inherit;
	opacity: 0.8;
}
.slider-controls {
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
}
.slider-controls .swiper-button-prev,
.slider-controls .swiper-button-next {
	position: relative;
	top: initial;
	width: initial;
	height: auto;
	margin-top: 0px;
	text-shadow: none;
	opacity: initial;
	padding-left: 7px;
	padding-right: 7px;
	transform: initial;
}
.slider-controls .swiper-button-next:after,
.slider-controls .swiper-button-prev:after {
	font-family: swiper-icons;
	font-size: inherit;
}
.slider-controls .swiper-pagination {
	display: flex;
	align-items: center;
	position: relative;
	padding-left: 7px;
	padding-right: 7px;
}
.slider-controls .swiper-pagination-bullet {
	opacity: 0.8;
	background: #ccc;
	margin-left: 7px;
	margin-right: 7px;
}
.slider-controls .swiper-pagination-bullet-active,
.slider-controls .swiper-pagination-bullet.active {
	opacity: 0.8;
	/*アクティブに外枠リング（2重リング例）*/
  background: #aaa;/* 中の色 */
  box-shadow:
		0 0 0 2px #fff,/* 内側の縁取り（背景と同色）*/
    0 0 0 4px #ccc;/* 外側リングの色 */
  transition: 
		box-shadow .2s ease,
		background .2s ease;
}
.swiper-wrapper.slide-continuous {transition-timing-function: linear !important;}

/* outer（あなたが高さを入れる要素）配下は全部 100% */
.modal .slider-gallery-list-outer,
.modal .slider-gallery-list-outer .swiper-container,
.modal .slider-gallery-list-outer .swiper-wrapper,
.modal .slider-gallery-list-outer .swiper-slide {height: 100%;}

/* サムネ側も同様 */
.modal .gallery-thumb-list-outer,
.modal .gallery-thumb-list-outer .swiper-container,
.modal .gallery-thumb-list-outer .swiper-wrapper,
.modal .gallery-thumb-list-outer .swiper-slide {height: 100%;}
.modal .gallery-thumb-list-outer {padding:15px;}

/* 画像/動画をスライドいっぱいに */
.modal .slider-gallery-list-outer .swiper-slide img,
.modal .slider-gallery-list-outer .swiper-slide video,
.modal .gallery-thumb-list-outer .swiper-slide img,
.modal .gallery-thumb-list-outer .swiper-slide video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover; /* メインは contain にしたいならここは分ける */
}

.modal .slider-gallery-nav{
	color:#fff;
	text-shadow: 0 2px 6px rgba(0,0,0,.6);
}

/* --- FullCalendar ---*/
.fc .fc-toolbar-chunk button:focus {box-shadow: none !important;}
.fc .fc-daygrid-day-number,
.fc .fc-col-header-cell-cushion {color: inherit;}
.fc .fc-daygrid-day-number:hover,
.fc .fc-col-header-cell-cushion {
	cursor: default;
	text-decoration: none;
}
.fc a.fc-daygrid-day-number[data-navlink],
.fc a.fc-col-header-cell-cushion[data-navlink] {
	color: #337ab7;
	cursor: pointer;
}
.fc a.fc-daygrid-day-number[data-navlink]:hover,
.fc a.fc-col-header-cell-cushion[data-navlink]:hover {text-decoration: underline;}
.fc td.fc-day-sat {background-color: #eaf4ff;}
.fc td.fc-day-sun {background-color: #ffeaea;}
.fc .fc-bg-event {opacity: 1;}

/* --- Bootstrap Validator ---*/
.has-error .form-control {background-color: #FFF0F0;}

/*---余白関連---*/
/*padding関連*/
.pad-0 {padding: 0px;}
.pad-t0 {padding-top: 0px;}
.pad-b0 {padding-bottom: 0px}
.pad-tb0 {
	padding-top: 0px;
	padding-bottom: 0px;
}
.pad-rl0 {
	padding-right: 0px;
	padding-left: 0px;
}
.pad-5 {padding: 5px;}
.pad-t5 {padding-top: 5px;}
.pad-b5 {padding-bottom: 5px;}
.pad-tb5 {
	padding-top: 5px;
	padding-bottom: 5px;
}
.pad-rl5 {
	padding-right: 5px;
	padding-left: 5px;
}
.pad-7 {padding: 7px;}
.pad-t7 {padding-top: 7px;}
.pad-b7 {padding-bottom: 7px;}
.pad-r7 {padding-right: 7px;}
.pad-l7 {padding-left: 7px;}
.pad-tb7 {
	padding-top: 7px;
	padding-bottom: 7px;
}
.pad-rl7 {
	padding-right: 7px;
	padding-left: 7px;
}
.pad-15 {padding: 15px;}
.pad-t15 {padding-top: 15px;}
.pad-b15 {padding-bottom: 15px;}
.pad-r15 {padding-right: 15px;}
.pad-l15 {padding-left: 15px;}
.pad-tb15 {
	padding-top: 15px;
	padding-bottom: 15px;
}
.pad-rl15 {
	padding-right: 15px;
	padding-left: 15px;
}

.pad-l15-i {padding-left: 15px !important;}
.pad-30 {padding: 30px;}
.pad-t30 {padding-top: 30px;}
.pad-b30 {padding-bottom: 30px;}
.pad-tb30 {
	padding-top: 30px;
	padding-bottom: 30px;
}
.pad-rl30 {
	padding-right: 30px;
	padding-left: 30px;
}
.pad-50 {padding: 50px;}
.pad-t50 {padding-top: 50px;}
.pad-b50 {padding-bottom: 50px;}
.pad-tb50 {
	padding-top: 50px;
	padding-bottom: 50px;
}
.pad-rl50 {
	padding-right: 50px;
	padding-left: 50px;
}
/*margin関連*/
.mrg-0 {margin: 0px;}
.mrg-t0 {margin-top: 0px;}
.mrg-b0 {margin-bottom: 0px;}
.mrg-r0 {margin-right: 0px;}
.mrg-l0 {margin-left: 0px;}
.mrg-tb0 {
	margin-top: 0px;
	margin-bottom: 0px;
}
.mrg-5 {margin: 5px;}
.mrg-t5 {margin-top: 5px;}
.mrg-b5 {margin-bottom: 5px;}
.mrg-r5 {margin-right: 5px;}
.mrg-l5 {margin-left: 5px;}
.mrg-tb5 {
	margin-top: 5px;
	margin-bottom: 5px;
}
.mrg-7 {margin: 7px;}
.mrg-t7 {margin-top: 7px;}
.mrg-b7 {margin-bottom: 7px;}
.mrg-r7 {margin-right: 7px;}
.mrg-l7 {margin-left: 7px;}
.mrg-tb7 {
	margin-top: 7px;
	margin-bottom: 7px;
}
.mrg-rl5 {
	margin-right: 5px;
	margin-left: 5px;
}
.mrg-15 {margin: 15px;}
.mrg-t15 {margin-top: 15px;}
.mrg-b15 {margin-bottom: 15px;}
.mrg-r15 {margin-right: 15px;}
.mrg-l15 {margin-left: 15px;}
.mrg-tb15 {
	margin-top: 15px;
	margin-bottom: 15px;
}
.mrg-rl15 {
	margin-right: 15px;
	margin-left: 15px;
}
.mrg-30 {margin: 30px;}
.mrg-t30 {margin-top: 30px;}
.mrg-b30 {margin-bottom: 30px;}
.mrg-r30 {margin-right: 30px;}
.mrg-l30 {margin-left: 30px;}
.mrg-tb30 {
	margin-top: 30px;
	margin-bottom: 30px;
}
.mrg-rl30 {
	margin-right: 30px;
	margin-left: 30px;
}
.mrg-t50 {margin-top: 50px;}
.mrg-b50 {margin-bottom: 50px;}
.mrg-r50 {margin-right: 50px;}
.mrg-l50 {margin-left: 50px;}
.mrg-tb50 {
	margin-top: 50px;
	margin-bottom: 50px;
}
.mrg-rl50 {
	margin-right: 50px;
	margin-left: 50px;
}

@media screen and (min-width: 768px) {
	.login-icon,
	.notice-icon,
	.notice-icon-offset {
		position: absolute !important;
		top: 50% !important;
		right: 30px !important;
		transform: translateY(-50%) !important;
		width: 30px;
		text-align: center;
		cursor: pointer;
	}
	.login-icon .glyphicon-user,
	.notice-icon .glyphicon-bell,
	.notice-icon-offset .glyphicon-bell {
		background-color: rgba(255,255,255,0.6);
		border-radius: 100%;
		padding: 5px;
	}
	.notice-icon-offset {right: 60px !important;}
	.module .content-category .category-icon {display: none;}
	.flexbox-nowrap .col-sm-12,
	.flexbox-nowrap-sm .col-sm-12 {min-width: 100%;}
	.flexbox-nowrap .col-sm-11
	.flexbox-nowrap-sm .col-sm-11 {min-width: 91.66666667%;}
	.flexbox-nowrap .col-sm-10,
	.flexbox-nowrap-sm .col-sm-10 {min-width: 83.33333333%;}
	.flexbox-nowrap .col-sm-9,
	.flexbox-nowrap-sm .col-sm-9 {min-width: 75%;}
	.flexbox-nowrap .col-sm-8,
	.flexbox-nowrap-sm .col-sm-8 {min-width: 66.66666667%;}
	.flexbox-nowrap .col-sm-7,
	.flexbox-nowrap-sm .col-sm-7 {min-width: 58.33333333%;}
	.flexbox-nowrap .col-sm-6,
	.flexbox-nowrap-sm .col-sm-6 {min-width: 50%;}
	.flexbox-nowrap .col-sm-5,
	.flexbox-nowrap-sm .col-sm-5 {min-width: 41.66666667%;}
	.flexbox-nowrap .col-sm-4,
	.flexbox-nowrap-sm .col-sm-4 {min-width: 33.33333333%;}
	.flexbox-nowrap .col-sm-3,
	.flexbox-nowrap-sm .col-sm-3 {min-width: 25%;}
	.flexbox-nowrap .col-sm-2,
	.flexbox-nowrap-sm .col-sm-2 {min-width: 16.66666667%;}
	.flexbox-nowrap .col-sm-1,
	.flexbox-nowrap-sm .col-sm-1 {min-width: 8.33333333%;}
}
@media screen and (min-width: 992px) {
	.flexbox-nowrap .col-md-12,
	.flexbox-nowrap-sm .col-md-12 {min-width: 100%;}
	.flexbox-nowrap .col-md-11,
	.flexbox-nowrap-sm .col-md-11 {min-width: 91.66666667%;}
	.flexbox-nowrap .col-md-10,
	.flexbox-nowrap-sm .col-md-10 {min-width: 83.33333333%;}
	.flexbox-nowrap .col-md-9,
	.flexbox-nowrap-sm .col-md-9 {min-width: 75%;}
	.flexbox-nowrap .col-md-8,
	.flexbox-nowrap-sm .col-md-8 {min-width: 66.66666667%;}
	.flexbox-nowrap .col-md-7,
	.flexbox-nowrap-sm .col-md-7 {min-width: 58.33333333%;}
	.flexbox-nowrap .col-md-6,
	.flexbox-nowrap-sm .col-md-6 {min-width: 50%;}
	.flexbox-nowrap .col-md-5,
	.flexbox-nowrap-sm .col-md-5 {min-width: 41.66666667%;}
	.flexbox-nowrap .col-md-4,
	.flexbox-nowrap-sm .col-md-4 {min-width: 33.33333333%;}
	.flexbox-nowrap .col-md-3,
	.flexbox-nowrap-sm .col-md-3 {min-width: 25%;}
	.flexbox-nowrap .col-md-2,
	.flexbox-nowrap-sm .col-md-2 {min-width: 16.66666667%;}
	.flexbox-nowrap .col-md-1,
	.flexbox-nowrap-sm .col-md-1 {min-width: 8.33333333%;}
}
@media screen and (min-width: 1200px) {
	.flexbox-nowrap .col-lg-12,
	.flexbox-nowrap-sm .col-lg-12 {min-width: 100%;}
	.flexbox-nowrap .col-lg-11,
	.flexbox-nowrap-sm .col-lg-11 {min-width: 91.66666667%;}
	.flexbox-nowrap .col-lg-10,
	.flexbox-nowrap-sm .col-lg-10 {min-width: 83.33333333%;}
	.flexbox-nowrap .col-lg-9,
	.flexbox-nowrap-sm .col-lg-9 {min-width: 75%;}
	.flexbox-nowrap .col-lg-8,
	.flexbox-nowrap-sm .col-lg-8 {min-width: 66.66666667%;}
	.flexbox-nowrap .col-lg-7,
	.flexbox-nowrap-sm .col-lg-7 {min-width: 58.33333333%;}
	.flexbox-nowrap .col-lg-6,
	.flexbox-nowrap-sm .col-lg-6 {min-width: 50%;}
	.flexbox-nowrap .col-lg-5,
	.flexbox-nowrap-sm .col-lg-5 {min-width: 41.66666667%;}
	.flexbox-nowrap .col-lg-4,
	.flexbox-nowrap-sm .col-lg-4 {min-width: 33.33333333%;}
	.flexbox-nowrap .col-lg-3,
	.flexbox-nowrap-sm .col-lg-3 {min-width: 25%;}
	.flexbox-nowrap .col-lg-2,
	.flexbox-nowrap-sm .col-lg-2 {min-width: 16.66666667%;}
	.flexbox-nowrap .col-lg-1,
	.flexbox-nowrap-sm .col-lg-1 {min-width: 8.33333333%;}
}
@media screen and (max-width: 767px) {
	h1 {
		font-size: 36px;
		font-weight: 500;
	}
	h2 {
		font-size: 32px;
		font-weight: 500;
	}
	h3 {
		font-size: 28px;
		font-weight: 500;
	}
	h4 {
		font-size: 24px;
		font-weight: 500;
	}
	h5 {
		font-size: 20px;
		font-weight: 500;
	}
	#slide {
		min-width: 300px;
		max-width: 100%;
	}
	.login-icon,
	.notice-icon,
	.notice-icon-offset {
		float: right;
		padding: 5px;
		text-align: center;
		cursor: pointer;
	}
	.login-icon .glyphicon-user,
	.notice-icon .glyphicon-bell,
	.notice-icon-offset .glyphicon-bell  {
		border-radius: 100%;
		padding: 5px;
	}
	.flexbox-nowrap-xs li {white-space: nowrap;}
	.flexbox-nowrap .col-xs-12,
	.flexbox-nowrap-xs .col-xs-12 {min-width: 100%;}
	.flexbox-nowrap .col-xs-11,
	.flexbox-nowrap-xs .col-xs-11 {min-width: 91.66666667%;}
	.flexbox-nowrap .col-xs-10,
	.flexbox-nowrap-xs .col-xs-10 {min-width: 83.33333333%;}
	.flexbox-nowrap .col-xs-9,
	.flexbox-nowrap-xs .col-xs-9 {min-width: 75%;}
	.flexbox-nowrap .col-xs-8,
	.flexbox-nowrap-xs .col-xs-8 {min-width: 66.66666667%;}
	.flexbox-nowrap .col-xs-7,
	.flexbox-nowrap-xs .col-xs-7 {min-width: 58.33333333%;}
	.flexbox-nowrap .col-xs-6,
	.flexbox-nowrap-xs .col-xs-6 {min-width: 50%;}
	.flexbox-nowrap .col-xs-5,
	.flexbox-nowrap-xs .col-xs-5 {min-width: 41.66666667%;}
	.flexbox-nowrap .col-xs-4,
	.flexbox-nowrap-xs .col-xs-4 {min-width: 33.33333333%;}
	.flexbox-nowrap .col-xs-3,
	.flexbox-nowrap-xs .col-xs-3 {min-width: 25%;}
	.flexbox-nowrap .col-xs-2,
	.flexbox-nowrap-xs .col-xs-2 {min-width: 16.66666667%;}
	.flexbox-nowrap .col-xs-1,
	.flexbox-nowrap-xs .col-xs-1 {min-width: 8.33333333%;}

	/* --- Swiper ---*/
	.swiper-content .gallery-thumbs img {height:75px;}
	.swiper-button-prev {left:0px !important;}
	.swiper-button-next {right:0px !important;}
	.swiper-button-prev::after,
	.swiper-button-next::after {font-size: 20px !important;}

	/* --- FullCalendar ---*/
	.fc .fc-toolbar.fc-header-toolbar {margin-bottom: 5px;}
	.fc .fc-toolbar {flex-wrap: wrap;}
	.fc-toolbar-chunk {padding: 5px 0px;}
	.fc-toolbar-chunk:nth-of-type(3) {margin-left: auto;}
	.fc-toolbar-title{
		display: inline-block;
		margin: 0px !important;
		padding: 5px 10px;
		font-size: 24px !important;
	}
	.fc-prev-button,
	.fc-next-button {
		padding: 5px;
		font-size: 18px;
	}
}
