@CHARSET "UTF-8";

body {
	background-color: #fafafa;
}
div.ccm-page {
	font-size: 14px;
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
div.ccm-page .font-sans-serif {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
div.ccm-page .font-serif {
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, serif;
}
div.ccm-page .font-kaimintsuki {
	font-family: "解ミン 月 B", "Kaimin Tsuki Bold", "KaiminTuStd Bold", "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", Georgia, serif;
}

div.ccm-page h1,
div.ccm-page h2,
div.ccm-page h3 {
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
	font-weight: bold;
}

.body-container {
	min-height: 100vh;
	position: relative;
	width: 100%;
	max-width: 1400px;
	background-color: #f8f8f8;
	padding-bottom: 120px;
}
.page-template-home .body-container {
	background-color: #fff;
}
.ccm-toolbar-visible .body-container {
	min-height: calc(100vh - 50px);
}

.maxwidth70 {
	max-width: 70em;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0em;
	padding-right: 0em;
}
.container .grid-full,
.container-fluid .grid-full {
	margin-left: -15px;
	margin-right: -15px;
}
div.ccm-page span.word-block {
	display: inline-block;
}

div.ccm-page .header-container {
	position: relative;
	min-height: 50px;
}
div.ccm-page .header-navi {
	position: absolute;
	z-index: 10;
	width: 100%;
}

.page-template-home .page-header-area {
	padding-top: 20px;
}
@media (max-width: 767px) {
	.page-template-home .page-header-area {
		padding-top: 50px;
	}
}
.page-header-area h1,
.page-header-area h2,
.page-header-area h3 {
	margin: 0px;
	color: #036eb8;
}

div.ccm-page.editing .header-navi {
	position: relative;
}

div.ccm-page .footer-container {
	padding: 0em;
	position: absolute;
	left: 0px;
	bottom: 0px;
	width: 100%;
}
div.ccm-page .footer-info {
	position: relative;
}
div.ccm-page .footer-info .link-to-top {
	position: absolute;
	bottom: 0px;
	right: 20px;
}
div.ccm-page .bottom-info {
	border-top: solid 1px #000000;
	padding: 0.5em 1em 2em 1em;
	margin-top: 1em;
}
div.ccm-page .footer-navi a {
	padding-left: 0.5em;
	padding-right: 0.5em;
	border-left: solid 1px #000000;
	display: inline-block;
	text-align: center;
	height: 12px;
	line-height: 12px;
	font-size: 12px;
	color: #000000;
}
div.ccm-page .footer-navi a:FIRST-CHILD {
	border-left: none;
}
div.ccm-page .copyright {
	font-size: 70%;
}
@media (max-width: 767px) {
	div.ccm-page .bottom-info {
		padding-left: 0em;
		padding-right: 0em;
	}
	div.ccm-page .copyright {
		padding-right: 1em;
	}
}

div.ccm-page .release-info {
	text-align: right;
	padding: 0em 0em 1em 0em;
}
div.ccm-page .release-info .release-date,
div.ccm-page .release-info .release-type {
	display: inline-block;
	padding: 0em 1em;
	line-height: 1em;
}
div.ccm-page .release-info .release-type {
	border-left: solid 1px #000000;
}

.home-content-block {
	margin-top: 15px;
	margin-bottom: 15px;
}

div.ccm-page .text-break-all {
	word-break: break-all;
}
div.ccm-page .d-sm-none {
	display: none;
}
@media (max-width: 575px) {
	div.ccm-page .d-sm-none {
		display: inherit;
	}
}
@media (min-width: 992px) {
	div.ccm-page .float-lg-left {
		float: left;
	}
	div.ccm-page .float-lg-right {
		float: right;
	}
	div.ccm-page .d-lg-flex {
		display: flex;
	}
}
@media (min-width: 768px) {
	div.ccm-page .float-md-left {
		float: left;
	}
	div.ccm-page .float-md-right {
		float: right;
	}
	div.ccm-page .d-md-flex {
		display: flex;
	}
	div.ccm-page .h-md-350 {
		height: 350px;
		overflow-y: auto;
	}
}
@media (min-width: 576px) {
	div.ccm-page .d-sm-flex {
		display: flex;
	}
}

.multi-column {
	display: flex;
}
.multi-column .main-column {
	width: 100%;
	flex: 1 1 auto;
	text-align: justify;
	text-justify: inter-ideograph;
}
.multi-column .side-column {
	flex: 0 0 auto;
}
.editing .multi-column .side-column {
	min-width: 300px;
}
@media (max-width: 767px) {
	.multi-column {
		display: block;
	}
}

@keyframes fadeIn {
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}
.animation-block .animation-fadeIn,
.animation-block.animation-fadeIn {
	opacity: 0;
}
.animation-enabled .animation-fadeIn,
.animation-enabled.animation-fadeIn {
	animation-delay: 0.5s;
	animation-duration: 0.5s;
	animation-name: fadeIn;
	animation-fill-mode: both;
}

@-webkit-keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -10deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 5deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -2deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -2deg);
  }
  99% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    opacity: 1;
  }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes flipInX {
  from {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 90deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
    opacity: 0;
  }

  40% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -10deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -10deg);
    -webkit-animation-timing-function: ease-in;
    animation-timing-function: ease-in;
  }

  60% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 5deg);
    transform: perspective(400px) rotate3d(1, 0, 0, 5deg);
    opacity: 1;
  }

  80% {
    -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -2deg);
    transform: perspective(400px) rotate3d(1, 0, 0, -2deg);
  }
  99% {
    -webkit-transform: perspective(400px);
    transform: perspective(400px);
    opacity: 1;
  }

  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

.animation-block .animation-flipInX,
.animation-block.animation-flipInX {
	opacity: 0;
}
.animation-enabled .animation-flipInX,
.animation-enabled.animation-flipInX {
	animation-delay: 1s;
	animation-duration: 2s;
	animation-fill-mode: both;
	-webkit-backface-visibility: visible !important;
	backface-visibility: visible !important;
	-webkit-animation-name: flipInX;
	animation-name: flipInX;
}
@media (print), (prefers-reduced-motion: reduce) {
  .animation-block {
    -webkit-animation-duration: 1ms !important;
    animation-duration: 1ms !important;
    -webkit-transition-duration: 1ms !important;
    transition-duration: 1ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
  }
}

.dropdown-list {
	position: absolute;
	top: 15px;
	left: 20px;
}
.page-template-home .dropdown-list {
	left: auto;
	right: 250px;
	top: 8px;
}
.dropdown-list .dropdown-toggle {
	background-color: transparent;
}
.dropdown-list .dropdown-toggle:hover {
	background-color: #fff;
}
.page-template-home .dropdown-list .dropdown-toggle:hover {
	background-color: #ddd;
}
.dropdown-list .dropdown-menu {
	background-color: black;
	border-radius: 0px;
	margin-top: -1px;
	padding: 10px;
	color: white;
	transition: transform 0.2s ease-out;
	transform: scale(0);
	transform-origin: top left;
	display: block;
}
.dropdown-list.open .dropdown-menu {
	transform: scale(1);
}
.dropdown-list .dropdown-menu a {
	color: inherit;
	padding: 15px 20px;
}
.dropdown-list .dropdown-toggle {
	border-color: #eeeeee;
	font-size: 150%;
	border-radius: 0px;
	display: flex;
	padding: 0px;
	justify-content: center;
	align-items: center;
	width: 40px;
	height: 35px;
}
.page-template-home .dropdown-list .dropdown-toggle {
	animation: borderBlur 5s linear 5s infinite normal both;
}
.page-template-home .dropdown-list.open .dropdown-toggle {
	animation: none;
}

.language-switch {
	position: absolute;
	top: 5px;
	right: 0px;
	background-color: transparent;
	width: 200px;
	z-index: 100;
}
.language-switch .dropdown-toggle {
	background-color: transparent;
	padding: 10px 30px;
	min-width: 160px;
	text-align: left;
}
.language-switch .open .dropdown-toggle,
.language-switch .dropdown-toggle:hover,
.language-switch .dropdown-toggle:focus {
	background-color: #fff;
}
.language-switch .dropdown-menu {
	background-color: black;
	border: none;
	border-radius: 0px;
	margin-top: -1px;
	padding: 10px;
	color: white;
	transition: transform 0.2s ease-out;
	transform: scaleY(0);
	transform-origin: top left;
	display: block;
}
.language-switch .open .dropdown-menu {
	transform: scaleY(1);
}
.language-switch .dropdown-menu a {
	color: inherit;
	padding: 15px 20px;
}
.language-switch .dropdown-menu a:hover {
	background-color: #fff;
	color: #000;
}
.language-switch .dropdown-menu .disabled a {
	color: #777;
}
.language-switch .dropdown-menu .disabled a:hover {
	background-color: inherit;
}

.page-template-home .language-switch {
	background-color: transparent;
	top: 0px;
}
.page-template-home .language-switch .dropdown-toggle {
	border: none;
	border-radius: 0px;
	background-color: #000;
	color: #fff;
}
.page-template-home .language-switch .open .dropdown-toggle,
.page-template-home .language-switch .dropdown-toggle:hover,
.page-template-home .language-switch .dropdown-toggle:focus {
	border: none;
	background-color: #444;
	color: #fff;
}
.page-template-home .language-switch .dropdown-menu {
	background-color: black;
	border: none;
	border-radius: 0px;
	color: white;
}
.page-template-home .language-switch .dropdown-menu a {
	color: inherit;
}
.page-template-home .language-switch .dropdown-menu a:hover {
	background-color: #fff;
	color: #000;
}
.page-template-home .language-switch .dropdown-menu .disabled a {
	color: #777;
}
.page-template-home .language-switch .dropdown-menu .disabled a:hover {
	background-color: inherit;
}

.alert-jumplink {
	display: block;
	border: dotted 2px black;
	border-radius: 2em;
	padding: 5em 0em;
	text-align: center;
	margin: 5em 2em 2em;
	background-color: #fff;
	color: #000;
}
a.alert-jumplink:hover,
a.alert-jumplink:active,
a.alert-jumplink:focus {
	text-decoration: none;
	color: #000;
	filter: drop-shadow(0px 0px 10px #ccc);
}
@media (max-width: 767px) {
	.alert-jumplink {
		margin: 2em 0em;
	}
}

.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style]{
  width: 100% !important;
  max-width: 500px;
}
