@charset "UTF-8";
@font-face {
	src: url("../fonts/IwaUCDAGothStd-Lt.otf") format("opentype"),
		url("../fonts/IwaUCDAGothStd-Md.otf") format("opentype"), url("../fonts/IwaUCDAGothStd-R2.otf") format("opentype"),
		url("../fonts/IwaUCDAGothStd-Th.otf") format("opentype");
	font-family: "minmoji";
}

@-webkit-keyframes fade-in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

@keyframes fade-in {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}

/* Base style
----------------------------------------------------------- */
/* ----- reset ----- */
html {
	-webkit-box-sizing: border-box;
	-webkit-text-size-adjust: 100%;
	-moz-tab-size: 4;
	-o-tab-size: 4;
	box-sizing: border-box;
	word-break: normal;
	tab-size: 4;
}

*,
::before,
::after {
	-webkit-box-sizing: inherit;
	box-sizing: inherit;
	background-repeat: no-repeat;
}

::before,
::after {
	text-decoration: inherit;
	vertical-align: inherit;
}

* {
	margin: 0;
	padding: 0;
}

/* General elements */
hr {
	height: 0;
	overflow: visible;
}

details,
main {
	display: block;
}

summary {
	display: list-item;
}

ol,
ul,
dl {
	list-style: none;
}

em {
	font-style: normal;
}

small {
	font-size: 0.875em;
}

[hidden] {
	display: none;
}

abbr[title] {
	-webkit-text-decoration: underline dotted;
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

a {
	background-color: transparent;
}

a:active,
a:hover {
	outline-width: 0;
}

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
}

pre {
	font-size: 1em;
}

b,
strong {
	font-weight: bolder;
}

sub,
sup {
	position: relative;
	font-size: 0.75em;
	line-height: 0;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Forms */
input {
	border-radius: 0;
}

[disabled] {
	cursor: default;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

textarea {
	overflow: auto;
	resize: vertical;
}

button,
input,
optgroup,
select,
textarea {
	font: inherit;
}

optgroup {
	font-weight: bold;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
	color: inherit;
	cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	padding: 0;
	border-style: none;
}

button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	outline: 1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

button,
input,
select,
textarea {
	border-style: none;
	background-color: transparent;
}

select {
	-moz-appearance: none;
	-webkit-appearance: none;
}

select::-ms-expand {
	display: none;
}

select::-ms-value {
	color: currentColor;
}

legend {
	display: table;
	max-width: 100%;
	max-width: 100%;
	border: 0;
	color: inherit;
	white-space: normal;
}

::-webkit-file-upload-button {
	-webkit-appearance: button;
	color: inherit;
	font: inherit;
}

/* Specify media element style */
img {
	border-style: none;
}

progress {
	vertical-align: baseline;
}

svg:not([fill]) {
	fill: currentColor;
}

/* Accessibility */

[aria-busy="true"] {
	cursor: progress;
}

[aria-controls] {
	cursor: pointer;
}

[aria-disabled] {
	cursor: default;
}

/* ----- default ----- */
*,
*::before,
*::after {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
 
}

@font-face {
	font-family: "MiSans";
	font-style: normal;

	src: url(../fonts/MiSans-Regular.ttf);
}

body {
	-webkit-text-size-adjust: 100%;
	word-wrap: break-word;
	background: #f3f5f7;
	color: #000000;
	font-family: "MiSans", "Helvetica Neue", arial, sans-serif;
	font-size: 1.5rem;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.75;
	overflow-wrap: break-word;
}

a {
	-webkit-transition: color 0.15s ease-in-out, border-color 0.15s ease-in-out, background-color 0.15s ease-in-out;
	color: #000000;
	text-decoration: none;
	transition: color 0.15s ease-in-out, border-color 0.15s ease-in-out, background-color 0.15s ease-in-out;
}

button {
	border: none;
	cursor: pointer;
}

img {
	-webkit-backface-visibility: hidden;
	max-width: 100%;
	backface-visibility: hidden;
	vertical-align: top;
}

a img {
	-webkit-transition: opacity 0.15s ease-in-out;
	transition: opacity 0.15s ease-in-out;
}

/* Layout style
----------------------------------------------------------- */
/* ----- wrapper ----- */
body.is-fixed-body {
	position: fixed;
	position: relative;
	left: 0;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.wrapper {
	position: relative;
	overflow: hidden;
}

/* ----- header ----- */
.header {
	-webkit-transition: 1s cubic-bezier(0.55, 0.085, 0, 0.99);
	-webkit-transition-property: background-color, -webkit-transform;
	z-index: 10;
	position: fixed;
	right: 0;
	width: 100%;
	height: 110px;
	transition: 1s cubic-bezier(0.55, 0.085, 0, 0.99);
	transition-property: background-color, -webkit-transform;
	transition-property: transform, background-color;
	transition-property: transform, background-color, -webkit-transform;
}

.header::after {
	display: block;
	clear: both;
	content: "";
}

.header::after {
	position: absolute;
	right: 0;
	left: 0;
	height: 131px;
	margin: 0 auto;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.42)), to(rgba(0, 0, 0, 0)));
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.42), rgba(0, 0, 0, 0));
	content: "";
}

.header.is-opened::after {
	display: none;
}

.header-information + .header {
	position: absolute;
}

.header-logo {
	z-index: 10;
	position: relative;
	/* margin: 20px 34px 26px; */
	margin: 0 34px  ;
	float: left;
	line-height: 1;
	height: 100%;
	display: flex;
	align-items: center;
}

.header.is-fixed .header-logo {
	-webkit-transition: 0.3s ease-out;
	transition: 0.3s ease-out;
}

.header.is-fixed .header-logo a {
	-webkit-transition: 0.3s ease-out;
	transition: 0.3s ease-out;
}

.header-logo a {
	display: block;
	width: 136px;
	width: 160px;
	width: 176px;
	font-size: 0;
	/* padding: 11px 11px 10px; */
}

.header-logo a  img{
	width: 100%;
}

.header-logo a:hover {
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

.header.is-opened .header-logo {
	-webkit-transition: none;
	-webkit-animation: 1s fade-in ease-in 0.5s forwards;
	animation: 1s fade-in ease-in 0.5s forwards;
	opacity: 0;
	transition: none;
}

.header-hamburger {
	display: block;
	z-index: 10;
	position: relative;
	width: 80px;
	height: 64px;
	margin: 20px 18px;
	padding: 16px;
	float: right;
}

.header.is-fixed .header-hamburger {
	-webkit-transition: 0.3s ease-out;
	transition: 0.3s ease-out;
}

.header-hamburger.is-opened {
	margin: 20px 18px 20px 0;
}

.header-hamburger-line {
	-webkit-transition: -webkit-transform 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	display: block;
	position: absolute;
	right: 16px;
	width: 48px;
	height: 2px;
	margin: auto;
	overflow: hidden;
	border-radius: 2px;
	transition: -webkit-transform 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	transition: transform 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	transition: transform 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86),
		-webkit-transform 0.3s cubic-bezier(0.785, 0.135, 0.15, 0.86);
}

.header-hamburger-line::before,
.header-hamburger-line::after {
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	border-radius: 2px;
	background-color: #ffffff;
	content: "";
}

.header-hamburger-line::before {
	left: 0;
}

.header-hamburger-line::after {
	left: -180%;
}

.header-hamburger-line:nth-child(1) {
	top: 16px;
}

.header-hamburger-line:nth-child(2) {
	top: 0;
	bottom: 0;
}

.header-hamburger-line:nth-child(3) {
	bottom: 16px;
}

.header-hamburger.is-opened .header-hamburger-line::before,
.header-hamburger.is-opened .header-hamburger-line::after {
	background-color: #000000;
}

.header-hamburger.is-opened .header-hamburger-line:nth-child(1) {
	-webkit-transform: translateY(15px) rotate(45deg);
	transform: translateY(15px) rotate(45deg);
}

.header-hamburger.is-opened .header-hamburger-line:nth-child(2) {
	width: 0;
}

.header-hamburger.is-opened .header-hamburger-line:nth-child(3) {
	-webkit-transform: translateY(-15px) rotate(-45deg);
	transform: translateY(-15px) rotate(-45deg);
}

.header-hamburger.is-opened .header-hamburger-line:nth-child(3)::after {
	right: -180%;
	left: auto;
}

.header-nav {
	z-index: 5;
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(255, 255, 255, 0.9);
	opacity: 0;
	pointer-events: none;
}

.header.is-opened .header-nav {
	-webkit-transition: opacity 0.3s ease;
	opacity: 1;
	pointer-events: auto;
	transition: opacity 0.3s ease;
}

.header-nav-inner {
	scrollbar-width: none;
	-webkit-backdrop-filter: blur(6px);
	height: 100%;
	overflow-y: auto;
	backdrop-filter: blur(6px);
}

.header-nav-inner::-webkit-scrollbar {
	display: none;
}

.header-nav-container {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 36px 34px 0 49px;
}

.header-search {
	font-size: 1.3rem;
}

.header-search-tags a {
	display: block;
	position: relative;
	padding-right: 1.5em;
}

.header-search-tags a::after {
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(100% - 12px);
	width: 12px;
	height: 6px;
	margin: auto;
	background: url(../images/icon_arrow_r.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.header-search-tags a:hover::after {
	-webkit-transform: translateX(8px);
	transform: translateX(8px);
}

.header-search-keyword {
	position: relative;
	height: 40px;
	overflow: hidden;
}

.header-search-keyword-input {
	width: 100%;
	height: 100%;
	padding: 6px 35px 6px 24px;
	border: 1px solid #000000;
	border-radius: 20px;
	background-color: #ffffff;
}

.header-search-keyword-input::-webkit-input-placeholder {
	color: #898989;
	opacity: 1;
}

.header-search-keyword-input::-moz-placeholder {
	color: #898989;
	opacity: 1;
}

.header-search-keyword-input:-ms-input-placeholder {
	color: #898989;
	opacity: 1;
}

.header-search-keyword-input::-ms-input-placeholder {
	color: #898989;
	opacity: 1;
}

.header-search-keyword-input::placeholder {
	color: #898989;
	opacity: 1;
}

.header-search-keyword-button {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	align-items: center;
	justify-content: flex-start;
	width: 35px;
	height: 100%;
	border-radius: 0 20px 20px 0;
}

.header-search-keyword-button i {
	-webkit-transform: rotate(-42deg);
	position: relative;
	width: 13px;
	height: 13px;
	margin: 5px;
	transform: rotate(-42deg);
	border: 1px solid #000000;
	border-radius: 50%;
}

.header-search-keyword-button i::after {
	position: absolute;
	right: 0;
	bottom: -5px;
	left: 0;
	width: 1px;
	height: 5px;
	margin: 0 auto;
	border-radius: 2px;
	background-color: #000000;
	content: "";
}

.header-contents {
	position: relative;
	margin-top: 44px;
}

#header .header-contents.is-lv1 .header-topics,
#header .header-contents.is-lv2 .header-topics {
	-webkit-transition: none;
	opacity: 0;
	transition: none;
}

.header-menu-item {
	font-weight: 500;
	line-height: 1.46667;
}

.header-menu-item + .header-menu-item {
	border-top: 1px solid #ebebeb;
}

.header-menu-item a {
	display: block;
	position: relative;
	padding: 0.25em 1em;
}

.header-dropdown {
	-webkit-transform: translateX(-30px);
	-webkit-transition: 0.3s ease;
	-webkit-transition-property: opacity, visibility, margin, border, -webkit-transform;
	visibility: hidden;
	z-index: 1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	transform: translateX(-30px);
	opacity: 0;
	transition: 0.3s ease;
	transition-property: opacity, visibility, margin, border, -webkit-transform;
	transition-property: opacity, visibility, transform, margin, border;
	transition-property: opacity, visibility, transform, margin, border, -webkit-transform;
}

.header-dropdown.is-opened {
	-webkit-transform: translateX(0);
	visibility: visible;
	transform: translateX(0);
	opacity: 1;
}

.header-dropdown-button {
	position: relative;
	padding-right: 2em;
}

.header-dropdown-button::after {
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	bottom: 0;
	left: calc(100% - 30px);
	width: 12px;
	height: 6px;
	margin: auto;
	background: url(../images/icon_arrow_r.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.header-dropdown-button:hover:after {
	width: 26px;
	background-image: url(../images/icon_arrow_r_long.svg);
}

.header-dropdown-title {
	margin-bottom: -1px;
	border-bottom: 1px solid #ebebeb;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.5;
}

.header-dropdown-title a {
	padding: 0.77778em 1.11111em 0.83333em 1.11111em;
}

.header-dropdown-menu {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	max-height: calc(100% - 57px);
	overflow: hidden;
	overflow-y: scroll;
}

.header-dropdown-menu-item {
	border-top: 1px solid #ebebeb;
}

.header-dropdown-menu-item:nth-child(1) {
	border-top: none;
}

.header-dropdown-back-button {
	display: none;
	z-index: 2;
	position: absolute;
	position: absolute;
	bottom: 100%;
	left: 0;
	padding: 5px 10px 5px 30px;
	background-color: #000000;
	color: #ffffff;
}

.header-dropdown-back-button::after {
	-webkit-transform: rotate(135deg);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 14px;
	width: 10px;
	height: 10px;
	margin: auto;
	transform: rotate(135deg);
	border-right: 1px solid #ffffff;
	border-bottom: 1px solid #ffffff;
	content: "";
}

.header-topics {
	-webkit-transition: 0.3s ease;
	-webkit-transition-property: opacity, visibility;
	transition: 0.3s ease;
	transition-property: opacity, visibility;
}

.header-topics-banner {
	-webkit-transition: opacity 0.3s ease-in-out;
	text-align: center;
	transition: opacity 0.3s ease-in-out;
}

.header-topics-banner img {
	width: 100%;
}

.header-topics-breadcrumb {
	margin-bottom: 10px;
}

.header-topics-breadcrumb::before {
	content: "■";
}

.header-topics-breadcrumb > li {
	display: inline;
}

.header-topics-breadcrumb > li:not(:first-child):before {
	margin: 0 0.25em;
	content: "＞";
}

.header-topics-title {
	margin: 110px 0 20px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.4;
}

.header-topics-box {
	-webkit-transition: opacity 0.3s ease-in-out;
	display: block;
	transition: opacity 0.3s ease-in-out;
}

.header-topics-box-pict {
	margin-bottom: 12px;
}

.header-topics-box-pict img {
	width: 100%;
}

.header-topics-box-title {
	font-size: 1.4rem;
	font-weight: 500;
}

.header-topics-box-tags {
	position: relative;
	margin-top: 1em;
	padding-top: 0.75em;
	font-size: 1.3rem;
}

.header-topics-box-tags::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 33px;
	border-top: 1px solid;
	content: "";
}

.header-topics-box-tags > li {
	display: inline;
	margin-right: 0.75em;
}

.header-topics-box-list {
	-ms-flex-wrap: wrap;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 15px;
}

.header-topics-box-list > li {
	width: 48%;
	max-width: 320px;
}

.header-link-list {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin: 20px 0;
}

.header-link-list li {
	padding: 10px 12px;
}

.header-link-list.-logo li {
	-webkit-transition: opacity 0.3s ease-in-out;
	width: 16.60079%;
	min-height: 64px;
	padding: 10px;
	transition: opacity 0.3s ease-in-out;
}

.header-link-list.-logo li a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 5px;
	background-color: #ffffff;
	text-align: center;
}

.header-link-list.-logo li a[target="_blank"] {
	position: relative;
}

.header-link-list.-logo li a[target="_blank"]::after {
	position: absolute;
	right: 5px;
	bottom: 5px;
	width: 9px;
	height: 9px;
	background: url(../images/icon_blank.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

.header-link-list.-logo li a img {
	max-height: 20px;
}

.header-links {
	padding: 12px 34px;
	background-color: rgba(0, 0, 0, 0.9);
	color: #ffffff;
	font-size: 1.3rem;
}

.header-links a {
	color: #ffffff;
}

.header-links-group {
	padding: 18px 34px;
	background-color: rgba(239, 239, 239, 0.9);
}

.header.is-opened {
	position: fixed;
	top: 0;
	width: 80%;
	min-width: 1222px;
}

.header.is-fixed {
	-webkit-transition: 0.3s ease-out;
	position: fixed;
	top: 0;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.42)), to(rgba(0, 0, 0, 0)));
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.42), rgba(0, 0, 0, 0));
	transition: 0.3s ease-out;
}

.header.is-fixed::after {
	content: none;
}

.header.-black {
	background-color: #313131;
}

.header.-black::after {
	content: none;
}

.jp-en-btn {
	z-index: 90;
	position: relative;
	margin: 20px 0;
	padding: 16px;
	float: right;
	color: #ffffff;
	font-size: 20px;
	font-weight: bold;
	text-shadow: 0px 3px 5px #5875ac;
	pointer-events: auto;
}

.-black .jp-en-btn {
	text-shadow: none;
}

.is-fixed .jp-en-btn {
	margin: 16px 0;
	padding: 10px 0;
	font-size: 16px;
}

.is-opened .jp-en-btn {
	color: #000000;
	font-size: 16px;
	text-shadow: 0px 3px 5px transparent;
}

.jp-en-btn .jp-btn {
	padding-right: 24px;
	color: #ffffff;
}

.jp-en-btn .jp-btn.-not-jp {
	color: #c3c6c9;
}

.is-opened .jp-en-btn .jp-btn {
	color: #000000;
}

.jp-en-btn .en-btn {
	padding-left: 24px;
	color: #ffffff;
}

.jp-en-btn .en-btn.-not-en {
	color: #c3c6c9;
}

.is-opened .jp-en-btn .en-btn {
	color: #000000;
}

.header-information {
	position: relative;
	padding: 14px 0;
	background-color: #ffffff;
}

.header-information-inner {
	max-width: 933px;
	margin: 0 auto;
	padding: 0 34px;
}

.header-information-body {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	width: 100%;
}

.header-information-close {
	-webkit-transform: rotate(45deg);
	-webkit-transition: opacity 0.3s ease-in-out;
	position: absolute;
	top: 20px;
	right: 12px;
	width: 20px;
	height: 20px;
	transform: rotate(45deg);
	transition: opacity 0.3s ease-in-out;
}

.header-information-close::before,
.header-information-close::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	margin: auto;
	background-color: #000000;
	content: "";
}

.header-information-close::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

/* ----- footer ----- */
.footer {
	position: relative;
	padding: 50px 0 40px;
	background-color: #000000;
	color: #ffffff;
	font-size: 1.3rem;
	text-align: center;
}

.footer a {
	color: #ffffff;
}

.footer-inner {
	width: 100%;
	max-width: 1266px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px;
	padding-left: 10px;
}

.footer-links {
	-ms-flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -1.5em;
	line-height: 2;
	font-size: 1.2rem;
}

.footer-links > li {
	position: relative;
	padding: 0 1.5em;
}

.footer-links > li::before {
	position: absolute;
	left: -0.5em;
	content: "｜";
}

.footer-links > li:first-child::before {
	content: none;
}

.footer-links > li a {
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

.footer-links-wrap {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
}

.footer-logo {
	margin-top: 30px;
	margin-top: 35px;
	text-align: center;
}

.footer-logo:first-child {
	margin-top: 0;
}

.footer-logo a {
	display: block;
	width: 136px;
	width: 176px;
	margin: 0 auto;
	padding: 11px 11px 10px;
}

.footer-copyright {
	margin-top: 30px;
	margin-top: 48px;
	/* font-family: "Roboto", "Noto Sans JP", "Helvetica Neue", arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans",
		"メイリオ", meiryo, sans-serif; */
	font-weight: 300;
	text-align: center;
	font-size: 1.2rem;
}

.gdpr-bg {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	z-index: 15000;
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	padding: 30px 5%;
	background: #313131;
}

.gdpr-link {
	color: #fff;
	text-decoration: underline;
}

.gdpr-bg-inner {
	position: relative;
}

.gdpr-btn {
	position: absolute;
	right: -2%;
	margin-bottom: 10px;
	font-size: 0;
	line-height: 0;
	text-align: right;
}

.gdpr-btn a {
	display: inline-block;
}

.gdpr-btn img {
	width: 24px;
	height: 24px;
}

.gdpr-text {
	color: #fff;
	font-size: 13px;
	line-height: 1.8;
}

.gdpr-box {
	-webkit-box-align: end;
	-ms-flex-align: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: end;
}

.gdpr-accept {
	min-width: 180px;
	padding: 0 20px;
}

.gdpr-accept a {
	-webkit-transition: all 0.15s;
	display: block;
	padding: 10px 32px;
	border-radius: 4px;
	background-color: #ffffff;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.4;
	text-align: center;
	transition: all 0.15s;
}

.gdpr-accept a:hover {
	background-color: #000;
	color: #fff;
	text-decoration: none;
}

.pagetop {
	position: absolute;
	right: 45px;
	bottom: calc(100% + 26px);
	font-size: 1.6rem;
}

.pagetop a {
	-webkit-transition: opacity 0.3s ease-in-out;
	display: inline-block;
	padding: 10px 20px;
	border-radius: 30px;
	color: #000000;
	transition: opacity 0.3s ease-in-out;
}

.pagetop a span {
	display: block;
	position: relative;
	padding-right: 27px;
}

.pagetop a span::after {
	-webkit-transform: rotate(-45deg) translate(-2px, 2px);
	position: absolute;
	top: 0;
	right: 2px;
	bottom: 0;
	width: 10px;
	height: 10px;
	margin: auto 0;
	transform: rotate(-45deg) translate(-2px, 2px);
	border-top: 1px solid #000000;
	border-right: 1px solid #000000;
	content: "";
}

/* ----- content ----- */
.content {
	position: relative;
	padding: 70px 0;
}

.content.bg-dark {
	color: #ffffff;
}

.content-header {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	flex-direction: column;
	justify-content: center;
	height: 500px;
	overflow: hidden;
	text-align: center;
}

.content-header-bg {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}

.content-header-bg img {
	-o-object-fit: cover;
	display: block;
	width: 100%;
	height: 500px;
	object-fit: cover;
	font-family: "object-fit: cover;";
}

.content-header-text {
	position: relative;
	padding: 0 10px;
	color: #ffffff;
	/* text-shadow: 0 6px 10px rgba(0, 0, 0, 0.58); */
	text-shadow: 0 6px 5px rgba(0, 0, 0, 0.28);
}

.content-header-heading {
	font-size: 6rem;
	font-weight: 700;
	line-height: 1.4;
	text-align: center;
}

.content-header-heading-sub {
	display: block;
	margin-top: 1em;
	font-size: 3rem;
	letter-spacing: 0.05em;
}

.content-header-heading-sub.-horizontal {
	display: inline-block;
	margin-top: 0;
}

.content-body {
	margin-top: 110px;
}

.content-header + .content-body {
	margin-top: 0;
}

.content-top {
	padding: 50px 0 80px;
}

.content-inner {
	width: 100%;
	max-width: 1266px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 10px;
	padding-left: 10px;
}

.content-narrow {
	max-width: 1086px;
	margin: 0 auto;
}

.content-narrow.content-inner {
	max-width: 1106px;
}

.content-narrow-sm {
	max-width: 814px;
	margin: 0 auto;
}

.content-narrow-sm.content-inner {
	max-width: 834px;
}

.content-narrow-sm > .heading-lv2,
.article-post .content-narrow-sm > h2 {
	margin-bottom: 30px;
}

.content-hr {
	position: relative;
	width: 100%;
	height: 1px;
	margin: 70px 0;
	border: 0;
}

.content-hr:first-child {
	margin-top: 0;
}

.content-hr::before {
	-webkit-transform: translateX(-50%);
	position: absolute;
	top: 0;
	left: 50%;
	width: 1252px;
	transform: translateX(-50%);
	border-top: 1px solid #000000;
	content: "";
}

.content-hr:before {
	bottom: 0;
	margin: auto;
}

.content-hr-light {
	position: relative;
	width: 100%;
	height: 1px;
	margin: 50px 0;
	border: 0;
}

.content-hr-light::before {
	-webkit-transform: translateX(-50%);
	position: absolute;
	top: 0;
	left: 50%;
	width: 1035px;
	transform: translateX(-50%);
	border-top: 1px solid #d8d8d8;
	content: "";
}

.content-section {
	margin-top: 100px;
}

.content-section:first-child,
.content-hr + .content-section,
.content-hr-light + .content-section {
	margin-top: 0;
}

.content-bg-movie {
	-o-object-fit: cover;
	z-index: -1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	min-width: 100%;
	min-height: 100%;
	margin: auto;
	object-fit: cover;
	font-family: "object-fit: cover;";
}

.content-bg-movie.-semitransparent {
	opacity: 0.5;
}

/* ----- column ----- */
.column {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-flow: row wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-flow: row wrap;
	margin: -26px;
	list-style: none;
}

.column.-center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.column.-left {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.column.-right {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.column.-around {
	-ms-flex-pack: distribute;
	justify-content: space-around;
}

.column.-top {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

.column.-middle {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.column.-bottom {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.column .column-col,
.column .column-col-auto,
.column .column-col-1,
.column .column-col-2,
.column .column-col-3,
.column .column-col-4,
.column .column-col-5,
.column .column-col-6 {
	padding: 26px;
}

.column .column-col {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.column .column-col-auto {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 auto;
	flex: 0 0 auto;
	width: auto;
	max-width: 100%;
}

.column .column-col-1 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 100%;
	flex: 0 0 100%;
	max-width: 100%;
}

.column .column-col-2 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 50%;
	flex: 0 0 50%;
	max-width: 50%;
}

.column .column-col-3 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 33.33333%;
	flex: 0 0 33.33333%;
	max-width: 33.33333%;
}

.column .column-col-4 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 25%;
	flex: 0 0 25%;
	max-width: 25%;
}

.column .column-col-5 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 20%;
	flex: 0 0 20%;
	max-width: 20%;
}

.column .column-col-6 {
	-webkit-box-flex: 0;
	-ms-flex: 0 0 16.66667%;
	flex: 0 0 16.66667%;
	max-width: 16.66667%;
}

.column.-gap-sm {
	margin: -13px;
}

.column.-gap-sm .column-col,
.column.-gap-sm .column-col-auto,
.column.-gap-sm .column-col-1,
.column.-gap-sm .column-col-2,
.column.-gap-sm .column-col-3,
.column.-gap-sm .column-col-4,
.column.-gap-sm .column-col-5,
.column.-gap-sm .column-col-6 {
	padding: 13px;
}

/* Mmodule style
----------------------------------------------------------- */
/* ----- heading ----- */
.heading-lv1,
.heading-lv2,
.article-post h2,
.heading-lv3,
.article-post h3,
.heading-lv4,
.heading-lv5 {
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.4;
}

.heading-lv1:first-child,
.heading-lv2:first-child,
.article-post h2:first-child,
.heading-lv3:first-child,
.article-post h3:first-child,
.heading-lv4:first-child,
.heading-lv5:first-child {
	margin-top: 0;
}

.heading-lv1:last-child,
.heading-lv2:last-child,
.article-post h2:last-child,
.heading-lv3:last-child,
.article-post h3:last-child,
.heading-lv4:last-child,
.heading-lv5:last-child {
	margin-bottom: 0;
}

.heading-lv1 {
	margin-bottom: 1.5em;
	font-size: 4rem;
}

.heading-lv2,
.article-post h2 {
	margin: 2em 0 1.5em;
	font-size: 3.2rem;
}

.heading-lv2-latin {
	font-size: 4rem;
}

.heading-lv2 + .heading-lv3,
.article-post h2 + .heading-lv3,
.article-post .heading-lv2 + h3,
.article-post h2 + h3 {
	margin: 1.5em 0 1em;
}

.heading-lv3,
.article-post h3 {
	margin: 3em 0 1em;
	font-size: 3rem;
}

.heading-lv3 + .panel-outline,
.article-post h3 + .panel-outline {
	margin-top: 0;
}

.heading-lv4 {
	margin: 3em 0 1em;
	font-size: 2.1rem;
}

.heading-lv5 {
	margin: 3em 0 1em;
}

/* ----- text ----- */
.text-block {
	margin: 50px auto;
}

.text-block:first-child {
	margin-top: 0;
}

.text-block:last-child {
	margin-bottom: 0;
}

.text-block > p {
	margin: 1.5em 0;
}

.text-block > p:first-child {
	margin-top: 0;
}

.text-block > p:last-child {
	margin-bottom: 0;
}

.text-ellipsis {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.text-indent {
	text-indent: 1em;
}

.text-line-camp-1,
.text-line-camp-2,
.text-line-camp-3,
.text-line-camp-4,
.text-line-camp-5 {
	-webkit-box-orient: vertical;
	display: -webkit-box;
	overflow: hidden;
}

.text-line-camp-1 {
	-webkit-line-clamp: 1 !important;
}

.text-line-camp-2 {
	-webkit-line-clamp: 2 !important;
}

.text-line-camp-3 {
	-webkit-line-clamp: 3 !important;
}

.text-line-camp-4 {
	-webkit-line-clamp: 4 !important;
}

.text-line-camp-5 {
	-webkit-line-clamp: 5 !important;
}

.text-line-camp-unset {
	-webkit-line-clamp: unset !important;
}

.text-note {
	margin: 0.75em 0;
	font-size: 1.3rem;
}

.text-note:first-child {
	margin-top: 0;
}

.text-note:last-child {
	margin-bottom: 0;
}

/* ----- indent ----- */
.indent-block {
	padding-left: 1em;
	text-indent: -1em;
}

/* ----- button ----- */
.button-block,
.button-block-bg,
.button-list-item {
	text-align: center;
}

.button-block .button,
.button-block-bg .button,
.button-list-item .button {
	min-width: 260px;
}

.-lg.button-block .button,
.-lg.button-block-bg .button,
.-lg.button-list-item .button {
	width: 390px;
}

.-xl.button-block .button,
.-xl.button-block-bg .button,
.-xl.button-list-item .button {
	width: 500px;
}

.button-block {
	margin-top: 60px;
}

.button-block-bg {
	padding: 74px 0 66px;
	background: -webkit-gradient(linear, left top, left bottom, from(#eff1f4), to(#e1e6ea)) no-repeat;
	background: linear-gradient(180deg, #eff1f4, #e1e6ea) no-repeat;
}

.button-list.-column .button,
.button-list.-column-2 .button,
.button-list.-column-3 .button,
.button-list.-column-4 .button {
	width: 100%;
}

.button-list {
	margin: 70px 0 -40px;
}

.button-list.-left {
	-webkit-box-pack: start !important;
	-ms-flex-pack: start !important;
	justify-content: flex-start !important;
}

.button-list:first-child {
	margin-top: 0;
}

.button-list + .button-list,
.button-block + .button-list {
	margin-top: 60px;
}

.button-list-item {
	padding-bottom: 40px;
}

.button {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-box-shadow: -2px -2px 5px #ffffff, 10px 10px 20px rgba(0, 0, 0, 0.25);
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	position: relative;
	align-items: center;
	justify-content: center;
	height: 100%;
	min-height: 60px;
	padding: 5px 40px;
	border-radius: 60px;
	background: -webkit-gradient(linear, left top, left bottom, from(#eff1f4), to(#e1e6ea)) no-repeat;
	background: linear-gradient(180deg, #eff1f4, #e1e6ea) no-repeat;
	box-shadow: -2px -2px 5px #ffffff, 10px 10px 20px rgba(0, 0, 0, 0.25);
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
	transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1), -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.button:hover {
	-webkit-box-shadow: -1px -1px 3px #ffffff, 5px 5px 10px rgba(0, 0, 0, 0.25);
	box-shadow: -1px -1px 3px #ffffff, 5px 5px 10px rgba(0, 0, 0, 0.25);
}

.button:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.button::after {
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	right: 20px;
	bottom: 0;
	width: 19px;
	height: 9px;
	margin: auto;
	background: url(../images/icon_arrow_r_bold.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.button:hover {
	text-decoration: none;
}

.button:hover::after {
	-webkit-transform: translate(8px);
	transform: translate(8px);
}

.button[target="_blank"]::after {
	width: 15px;
	height: 15px;
	background-image: url(../images/icon_blank.svg);
}

.button[target="_blank"]:hover::after {
	-webkit-transform: translate(0);
	transform: translate(0);
}

.button.-dark {
	-webkit-box-shadow: 0 5px 12px rgba(0, 0, 0, 0.92), 0 0 14px rgba(100, 100, 100, 0.5);
	background: linear-gradient(93deg, #14141a, #1f1f22);
	box-shadow: 0 5px 12px rgba(0, 0, 0, 0.92), 0 0 14px rgba(100, 100, 100, 0.5);
	color: #ffffff;
}

.button.-dark::after {
	background-image: url(../images/icon_arrow_r_bold_white.svg);
}

.button.-dark:hover {
	-webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.92), 0 0 7px rgba(100, 100, 100, 0.5);
	box-shadow: 0 2px 6px rgba(0, 0, 0, 0.92), 0 0 7px rgba(100, 100, 100, 0.5);
}

.button.-dark:active {
	-webkit-box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.15) inset, -2px -2px 2px rgba(100, 100, 100, 0.5) inset,
		3px 3px 3px rgba(0, 0, 0, 0.15) inset;
	box-shadow: -1px -1px 1px rgba(0, 0, 0, 0.15) inset, -2px -2px 2px rgba(100, 100, 100, 0.5) inset,
		3px 3px 3px rgba(0, 0, 0, 0.15) inset;
}

.button.-not-arrow {
	padding-right: 10px;
	padding-left: 10px;
}

.button.-not-arrow::after {
	content: none;
}

.button.-back::after {
	right: auto;
	left: 20px;
	background-image: url(../images/icon_arrow_l_bold.svg);
}

.button.-back:hover::after {
	-webkit-transform: translate(-8px);
	transform: translate(-8px);
}

.button.-outline {
	-webkit-box-shadow: none;
	border: 1px solid;
	background: transparent;
	box-shadow: none;
}

.button.-outline.-dx {
	border: none;
	background: #b8b9f2;
	transition: all 0.4s;
}

.button.-outline.-dx:hover {
	color: #ffffff;
	background: #443472;
	transition: all 0.4s;
}

.button.-outline.-dx::after {
	transition: all 0.2s;
}

.button.-outline.-dx:hover::after {
	background-image: url(../images/icon_arrow_r_bold_white.svg);
	transition: all 0.4s;
}

.button.-outline.-light {
	color: #ffffff;
}

.button.-outline.-light::after {
	background-image: url(../images/icon_arrow_r_bold_white.svg);
}

/* ----- link ----- */
.link-text[href$=".pdf"]::after,
.link-list-title a[href$=".pdf"]::after,
.link-list > li > a[href$=".pdf"]::after,
.link-text.-mb[href$=".pdf"]::after,
.link-list-title a.-mb[href$=".pdf"]::after,
.link-list > li > a.-mb[href$=".pdf"]::after,
.link-text[href$=".epub"]::after,
.link-list-title a[href$=".epub"]::after,
.link-list > li > a[href$=".epub"]::after,
.link-text[href$=".xls"]::after,
.link-list-title a[href$=".xls"]::after,
.link-list > li > a[href$=".xls"]::after,
.link-text[href$=".xlsx"]::after,
.link-list-title a[href$=".xlsx"]::after,
.link-list > li > a[href$=".xlsx"]::after,
.link-text[href$=".doc"]::after,
.link-list-title a[href$=".doc"]::after,
.link-list > li > a[href$=".doc"]::after,
.link-text[href$=".zip"]::after,
.link-list-title a[href$=".zip"]::after,
.link-list > li > a[href$=".zip"]::after,
.link-text[href$=".ppt"]::after,
.link-list-title a[href$=".ppt"]::after,
.link-list > li > a[href$=".ppt"]::after,
.link-text.-mb[href$=".ppt"]::after,
.link-list-title a.-mb[href$=".ppt"]::after,
.link-list > li > a.-mb[href$=".ppt"]::after,
.link-text[href$=".pptx"]::after,
.link-list-title a[href$=".pptx"]::after,
.link-list > li > a[href$=".pptx"]::after,
.link-text.-mb[href$=".pptx"]::after,
.link-list-title a.-mb[href$=".pptx"]::after,
.link-list > li > a.-mb[href$=".pptx"]::after,
.link-text[href$=".key"]::after,
.link-list-title a[href$=".key"]::after,
.link-list > li > a[href$=".key"]::after {
	display: inline-block;
	width: auto;
	height: auto;
	margin-left: 1em;
	padding-left: 23px;
	background: no-repeat 0 50%;
	background-size: 13.5px 18px;
	font-weight: 400;
	text-decoration: none;
	vertical-align: 0.25em;
}

.link-text[href$=".pdf"]:after,
.link-list-title a[href$=".pdf"]:after,
.link-list > li > a[href$=".pdf"]:after,
.link-text.-mb[href$=".pdf"]:after,
.link-list-title a.-mb[href$=".pdf"]:after,
.link-list > li > a.-mb[href$=".pdf"]:after,
.link-text[href$=".epub"]:after,
.link-list-title a[href$=".epub"]:after,
.link-list > li > a[href$=".epub"]:after,
.link-text[href$=".xls"]:after,
.link-list-title a[href$=".xls"]:after,
.link-list > li > a[href$=".xls"]:after,
.link-text[href$=".xlsx"]:after,
.link-list-title a[href$=".xlsx"]:after,
.link-list > li > a[href$=".xlsx"]:after,
.link-text[href$=".doc"]:after,
.link-list-title a[href$=".doc"]:after,
.link-list > li > a[href$=".doc"]:after,
.link-text[href$=".zip"]:after,
.link-list-title a[href$=".zip"]:after,
.link-list > li > a[href$=".zip"]:after,
.link-text[href$=".ppt"]:after,
.link-list-title a[href$=".ppt"]:after,
.link-list > li > a[href$=".ppt"]:after,
.link-text.-mb[href$=".ppt"]:after,
.link-list-title a.-mb[href$=".ppt"]:after,
.link-list > li > a.-mb[href$=".ppt"]:after,
.link-text[href$=".pptx"]:after,
.link-list-title a[href$=".pptx"]:after,
.link-list > li > a[href$=".pptx"]:after,
.link-text.-mb[href$=".pptx"]:after,
.link-list-title a.-mb[href$=".pptx"]:after,
.link-list > li > a.-mb[href$=".pptx"]:after,
.link-text[href$=".key"]:after,
.link-list-title a[href$=".key"]:after,
.link-list > li > a[href$=".key"]:after {
	vertical-align: 0;
}

.link-text[target="_blank"]:not(:hover)[href$=".pdf"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".pdf"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".pdf"],
.link-text[target="_blank"]:not(:hover)[href$=".epub"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".epub"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".epub"],
.link-text[target="_blank"]:not(:hover)[href$=".xls"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".xls"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".xls"],
.link-text[target="_blank"]:not(:hover)[href$=".xlsx"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".xlsx"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".xlsx"],
.link-text[target="_blank"]:not(:hover)[href$=".doc"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".doc"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".doc"],
.link-text[target="_blank"]:not(:hover)[href$=".zip"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".zip"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".zip"],
.link-text[target="_blank"]:not(:hover)[href$=".ppt"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".ppt"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".ppt"],
.link-text[target="_blank"]:not(:hover)[href$=".pptx"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".pptx"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".pptx"],
.link-text[target="_blank"]:not(:hover)[href$=".key"],
.link-list-title a[target="_blank"]:not(:hover)[href$=".key"],
.link-list > li > a[target="_blank"]:not(:hover)[href$=".key"] {
	text-decoration: underline;
}

.link-text[href$=".pdf"][target="_blank"]::after,
.link-list-title a[href$=".pdf"][target="_blank"]::after,
.link-list > li > a[href$=".pdf"][target="_blank"]::after,
.link-text[href$=".epub"][target="_blank"]::after,
.link-list-title a[href$=".epub"][target="_blank"]::after,
.link-list > li > a[href$=".epub"][target="_blank"]::after,
.link-text[href$=".xls"][target="_blank"]::after,
.link-list-title a[href$=".xls"][target="_blank"]::after,
.link-list > li > a[href$=".xls"][target="_blank"]::after,
.link-text[href$=".xlsx"][target="_blank"]::after,
.link-list-title a[href$=".xlsx"][target="_blank"]::after,
.link-list > li > a[href$=".xlsx"][target="_blank"]::after,
.link-text[href$=".doc"][target="_blank"]::after,
.link-list-title a[href$=".doc"][target="_blank"]::after,
.link-list > li > a[href$=".doc"][target="_blank"]::after,
.link-text[href$=".zip"][target="_blank"]::after,
.link-list-title a[href$=".zip"][target="_blank"]::after,
.link-list > li > a[href$=".zip"][target="_blank"]::after,
.link-text[href$=".ppt"][target="_blank"]::after,
.link-list-title a[href$=".ppt"][target="_blank"]::after,
.link-list > li > a[href$=".ppt"][target="_blank"]::after,
.link-text[href$=".pptx"][target="_blank"]::after,
.link-list-title a[href$=".pptx"][target="_blank"]::after,
.link-list > li > a[href$=".pptx"][target="_blank"]::after,
.link-text[href$=".key"][target="_blank"]::after,
.link-list-title a[href$=".key"][target="_blank"]::after,
.link-list > li > a[href$=".key"][target="_blank"]::after {
	width: auto;
	height: auto;
	background-position: 0 50%;
	background-size: 13.5px 18px;
}

.link-text[target="_blank"][href$=".epub"].-mb:after,
.link-list-title a[target="_blank"][href$=".epub"].-mb:after,
.link-list > li > a[target="_blank"][href$=".epub"].-mb:after {
	content: "EPUB (" attr(data-file-capacity) "MB)";
}

.link-text[target="_blank"][href$=".key"].-mb:after,
.link-list-title a[target="_blank"][href$=".key"].-mb:after,
.link-list > li > a[target="_blank"][href$=".key"].-mb:after {
	content: "KEY (" attr(data-file-capacity) "MB)";
}

.link-text,
.link-list-title a,
.link-list > li > a {
	text-decoration: underline;
}

.link-text:hover,
.link-list-title a:hover,
.link-list > li > a:hover {
	text-decoration: none;
}

.link-text[target="_blank"],
.link-list-title a[target="_blank"],
.link-list > li > a[target="_blank"] {
	text-decoration: none;
}

.link-text[target="_blank"]::after,
.link-list-title a[target="_blank"]::after,
.link-list > li > a[target="_blank"]::after {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 0.6em;
	background: url(../images/icon_blank.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

.link-text[target="_blank"]::after,
.link-list-title a[target="_blank"]::after,
.link-list > li > a[target="_blank"]::after {
	vertical-align: middle;
}

.link-text[target="_blank"]:hover,
.link-list-title a[target="_blank"]:hover,
.link-list > li > a[target="_blank"]:hover {
	text-decoration: underline;
}

.link-text[href$=".pdf"]:after,
.link-list-title a[href$=".pdf"]:after,
.link-list > li > a[href$=".pdf"]:after {
	background-image: url(../images/icon_pdf.svg);
	content: "PDF (" attr(data-file-capacity) "KB)";
}

.link-text[href$=".pdf"].-mb:after,
.link-list-title a[href$=".pdf"].-mb:after,
.link-list > li > a[href$=".pdf"].-mb:after {
	background-image: url(../images/icon_pdf.svg);
	content: "PDF (" attr(data-file-capacity) "MB)";
}

.link-text[href$=".ppt"]:after,
.link-list-title a[href$=".ppt"]:after,
.link-list > li > a[href$=".ppt"]:after,
.link-text[href$=".pptx"]:after,
.link-list-title a[href$=".pptx"]:after,
.link-list > li > a[href$=".pptx"]:after {
	background-image: url(../images/icon_ppt.svg);
	content: "PPT (" attr(data-file-capacity) "KB)";
}

.link-text[href$=".ppt"].-mb:after,
.link-list-title a[href$=".ppt"].-mb:after,
.link-list > li > a[href$=".ppt"].-mb:after,
.link-text[href$=".pptx"].-mb:after,
.link-list-title a[href$=".pptx"].-mb:after,
.link-list > li > a[href$=".pptx"].-mb:after {
	background-image: url(../images/icon_ppt.svg);
	content: "PPT (" attr(data-file-capacity) "MB)";
}

.link-text[href$=".epub"]:after,
.link-list-title a[href$=".epub"]:after,
.link-list > li > a[href$=".epub"]:after {
	content: "EPUB (" attr(data-file-capacity) "KB)";
}

.link-text[href$=".key"]:after,
.link-list-title a[href$=".key"]:after,
.link-list > li > a[href$=".key"]:after {
	content: "KEY (" attr(data-file-capacity) "KB)";
}

.link-text[href$=".xls"]:after,
.link-list-title a[href$=".xls"]:after,
.link-list > li > a[href$=".xls"]:after,
.link-text[href$=".xlsx"]:after,
.link-list-title a[href$=".xlsx"]:after,
.link-list > li > a[href$=".xlsx"]:after {
	background-image: url(../images/icon_xls.svg);
	content: "XLS (" attr(data-file-capacity) "KB)";
}

.link-text[href$=".xls"].-mb:after,
.link-list-title a[href$=".xls"].-mb:after,
.link-list > li > a[href$=".xls"].-mb:after,
.link-text[href$=".xlsx"].-mb:after,
.link-list-title a[href$=".xlsx"].-mb:after,
.link-list > li > a[href$=".xlsx"].-mb:after {
	background-image: url(../images/icon_xls.svg);
	content: "XLS (" attr(data-file-capacity) "MB)";
}

.link-text[href$=".doc"]:after,
.link-list-title a[href$=".doc"]:after,
.link-list > li > a[href$=".doc"]:after {
	background-image: url(../images/icon_doc.svg);
	content: "DOC (" attr(data-file-capacity) "KB)";
}

.link-text[href$=".doc"].-mb:after,
.link-list-title a[href$=".doc"].-mb:after,
.link-list > li > a[href$=".doc"].-mb:after {
	background-image: url(../images/icon_doc.svg);
	content: "DOC (" attr(data-file-capacity) "MB)";
}

.link-text[href$=".zip"]:after,
.link-list-title a[href$=".zip"]:after,
.link-list > li > a[href$=".zip"]:after {
	background-image: url(../images/icon_pdf.svg);
	content: "ZIP (" attr(data-file-capacity) "KB)";
}

.link-text[href$=".zip"].-mb:after,
.link-list-title a[href$=".zip"].-mb:after,
.link-list > li > a[href$=".zip"].-mb:after {
	background-image: url(../images/icon_pdf.svg);
	content: "ZIP (" attr(data-file-capacity) "MB)";
}

.link-list-title {
	margin: 30px 0 10px;
	font-size: 2.1rem;
	font-weight: 700;
}

.link-list-title:first-child {
	margin-top: 0;
}

.link-list-title .link-arrow {
	text-decoration: none;
}

.link-list > li + li {
	margin-top: 10px;
}

.link-list > li .link-arrow,
.link-list > li .link-anchor {
	text-decoration: none;
}

.link-list-inside {
	margin-top: 40px;
}

.link-list-inside:first-child {
	margin-top: 0;
}

.link-arrow,
.link-arrow-list > li > a {
	display: inline-block;
	text-decoration: none;
}

.link-arrow::after,
.link-arrow-list > li > a::after {
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	display: inline-block;
	width: 12px;
	height: 6px;
	margin-left: 0.5em;
	background: url(../images/icon_arrow_r_bold.svg) no-repeat 50% 50%;
	background-size: contain;
	vertical-align: 0.25em;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.link-arrow:hover::after,
.link-arrow-list > li > a:hover::after {
	-webkit-transform: translateX(8px);
	transform: translateX(8px);
}

.link-arrow-list > li + li {
	margin-top: 10px;
}

.link-anchor,
.link-anchor-list > li > a {
	display: inline-block;
	position: relative;
	text-decoration: none;
}

.link-anchor::after,
.link-anchor-list > li > a::after {
	-webkit-transform: rotate(135deg);
	position: absolute;
	top: 0;
	bottom: 0;
	width: 7px;
	height: 7px;
	margin: auto;
	transform: rotate(135deg);
	border-top: 1px solid #000000;
	border-right: 1px solid #000000;
	content: "";
}

.link-anchor:hover,
.link-anchor-list > li > a:hover {
	text-decoration: underline;
}

.link-anchor {
	padding-right: 20px;
}

.link-anchor::after {
	right: 2px;
}

.link-anchor-list {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin: -20px;
}

.link-anchor-list.-narrow > li {
	padding-bottom: 0px;
}

.link-anchor-list > li {
	padding: 20px;
}

.link-anchor-list > li > a {
	padding-left: 20px;
	font-weight: 500;
}

.link-anchor-list > li > a:after {
	left: 2px;
}

.link-anchor-block {
	margin: 40px 0;
}

.link-anchor-block:first-child {
	margin-top: 0;
}

.link-anchor-block:last-child {
	margin-bottom: 0;
}

.link-rss {
	-webkit-transition: opacity 0.3s ease-in-out;
	display: inline-block;
	font-size: 1.3rem;
	line-height: 1;
	text-align: center;
	transition: opacity 0.3s ease-in-out;
}

.link-rss::before {
	display: block;
	width: 20px;
	height: 20px;
	margin: 0 auto 6px;
	background: url(../images/icon_rss.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

/* ----- list ----- */

.list-annotation {
	font-size: 1.3rem;
}

.list-annotation > li {
	-webkit-box-align: start;
	-ms-flex-align: start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: flex-start;
}

.list-annotation > li::before {
	-ms-flex-negative: 0;
	display: block;
	flex-shrink: 0;
	margin-right: 10px;
}

ul.list-annotation > li::before {
	content: "※";
}

ol.list-annotation {
	counter-reset: count 0;
}

ol.list-annotation.-no-reset {
	counter-reset: none;
}

ol.list-annotation > li {
	counter-increment: count;
}

ol.list-annotation > li::before {
	content: "*" counter(count);
}

.list-decimal,
.article-post ol {
	list-style: decimal;
}

.list-decimal > li,
.article-post ol > li {
	margin-left: 18px;
	padding-left: 8px;
}

.list-decimal > li .list-disc,
.article-post ol > li .list-disc,
.list-decimal > li .article-post ul,
.article-post .list-decimal > li ul,
.article-post ol > li ul {
	margin-top: 1em;
}

.list-annotation,
.list-decimal,
.article-post ol,
.list-disc,
.article-post ul {
	margin: 40px 0;
}

.list-annotation:first-child,
.list-decimal:first-child,
.article-post ol:first-child,
.list-disc:first-child,
.article-post ul:first-child,
h2 + .list-annotation,
h2 + .list-decimal,
.article-post h2 + ol,
h2 + .list-disc,
.article-post h2 + ul,
h3 + .list-annotation,
h3 + .list-decimal,
.article-post h3 + ol,
h3 + .list-disc,
.article-post h3 + ul {
	margin-top: 0;
}

.list-annotation:last-child,
.list-decimal:last-child,
.article-post ol:last-child,
.list-disc:last-child,
.article-post ul:last-child {
	margin-bottom: 0;
}

.list-annotation > li + li,
.list-decimal > li + li,
.article-post ol > li + li,
.list-disc > li + li,
.article-post ul > li + li {
	margin-top: 1em;
}

.-compact.list-annotation > li + li,
.-compact.list-decimal > li + li,
.article-post ol.-compact > li + li,
.-compact.list-disc > li + li,
.article-post ul.-compact > li + li {
	margin-top: 0em;
}

.list-disc > li,
.article-post ul > li,
.list-disc > li > ul > li,
.article-post ul > li > ul > li {
	position: relative;
	padding-left: 20px;
}

.list-disc > li::before,
.article-post ul > li::before,
.list-disc > li > ul > li::before,
.article-post ul > li > ul > li::before {
	position: absolute;
	top: 0.6em;
	left: 0;
	width: 10px;
	height: 10px;
	border: 1px solid #000000;
	border-radius: 50%;
	background-color: #000000;
	content: "";
}

.list-disc > li > ul,
.article-post ul > li > ul {
	margin: 40px 0 40px 10px;
}

.list-disc > li > ul > li::before,
.article-post ul > li > ul > li::before {
	background-color: transparent;
}

.list-disc > li:last-child > ul,
.article-post ul > li:last-child > ul {
	margin-bottom: 0;
}

/* ----- image ----- */
.image-block,
.iframe-block {
	position: relative;
	margin: 50px 0;
	text-align: center;
}

.image-block.-sm img,
.-sm.iframe-block img {
	max-width: 70%;
}

.image-block:first-child,
.iframe-block:first-child,
[class*="heading-lv"] + .image-block,
[class*="heading-lv"] + .iframe-block {
	margin-top: 0;
}

.image-block:last-child,
.iframe-block:last-child {
	margin-bottom: 0;
}

.image-block.-white-bg,
.-white-bg.iframe-block {
	padding: 20px;
	border-radius: 10px;
	background: #fff;
}

.image-fluid {
	width: 100%;
}

.image-radius {
	overflow: hidden;
	border-radius: 20px;
}

.image-border {
	border: 1px solid #d8d8d8;
}

/* ----- iframe ----- */
.iframe-fluid iframe,
.iframe-responsive iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: 0;
}

.iframe-fluid {
	position: relative;
	padding-top: 56.25%;
}

.iframe-responsive {
	position: relative;
	padding-top: 56.25%;
}

/* ----- social ----- */
.social-block {
	margin: 70px 0;
}

.social-block:first-child {
	margin-top: 0;
}

.social-block:last-child {
	margin-bottom: 0;
}

.social-list {
	-ms-flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin: 0 -9px;
}

.social-list.-right {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	justify-content: flex-end;
}

.social-list.-center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.social-list-item {
	margin: 0 9px;
}

.social-list-item a {
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

.social-list-item img {
	height: 32px;
}

/* ----- label ----- */
.label {
	display: inline-block;
	min-width: 76px;
	padding: 3px 10px 2px;
	background-color: #000000;
	color: #ffffff;
	font-weight: 700;
	letter-spacing: 0.05em;
	line-height: 1.2;
	text-align: center;
}

.label.-new {
	background-color: #ff0000;
}

.label.-closed {
	background-color: #888888;
}

/* ----- tag ----- */
.hashtag-list {
	-webkit-line-clamp: 1;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	position: relative;
	/*IE対策*/
	height: 2.5em;
	padding-top: 0.75em;
	overflow: hidden;
	font-size: 1.3rem;
	text-overflow: ellipsis;
	word-break: break-all;
}

.hashtag-list::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 33px;
	border-top: 1px solid;
	content: "";
}

.hashtag-list > li {
	display: inline;
	margin-right: 0.75em;
}

.hashtag-list.-normal {
	-webkit-line-clamp: inherit;
	display: block;
	height: auto;
	padding-top: 0;
	overflow: visible;
	text-overflow: inherit;
}

.hashtag-list.-normal::before {
	content: none;
}

.tag-button {
	-webkit-transition: 0.15s ease-in-out;
	-webkit-transition-property: color, background-color;
	padding: 3px 11px;
	border-radius: 12px;
	font-weight: 500;
	transition: 0.15s ease-in-out;
	transition-property: color, background-color;
}

.-lg .tag-button {
	font-size: 1.6rem;
}

.tag-button:hover {
	text-decoration: none;
}

.tag-button.is-active {
	background-color: #000000;
	color: #ffffff;
}

.tag-field {
	-webkit-box-shadow: -3px 0 6px #ffffff inset, -4px 0 15px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	z-index: 1;
	position: relative;
	padding: 38px 78px;
	border: solid #ffffff;
	border-width: 0 1px 1px 0;
	border-radius: 20px;
	background-color: #ebeef2;
	box-shadow: -3px 0 6px #ffffff inset, -4px 0 15px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	text-align: center;
}

.tag-field + .tag-field {
	margin-top: 30px;
}

.tag-field-title {
	margin: 40px 0 20px;
	font-size: 1.8rem;
	font-weight: 500;
	text-align: center;
}

.tag-field-title:first-of-type {
	margin-top: 0;
}

.tag-field-footer {
	margin: 18px -50px -16px;
	text-align: right;
}

.tag-field .tag-button-list {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
}

.tag-field .more-button-block {
	margin-top: 20px;
}

.tag-field.-recommend .tag-field-title-inner {
	position: relative;
}

.tag-field.-recommend .tag-field-title-inner::before,
.tag-field.-recommend .tag-field-title-inner::after {
	display: block;
	position: absolute;
	top: 50%;
	width: 60px;
	height: 0;
	border-top: 2px solid #000;
	content: "";
}

.tag-field.-recommend .tag-field-title-inner::before {
	-webkit-transform: translate(-100%, -50%);
	left: -1em;
	transform: translate(-100%, -50%);
}

.tag-field.-recommend .tag-field-title-inner::after {
	-webkit-transform: translate(100%, -50%);
	right: -1em;
	transform: translate(100%, -50%);
}

.tag-button-list,
.tag-list {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin: -6px;
}

.tag-button-list-item,
.tag-list-item {
	margin: 6px;
}

.tag-button,
.tag {
	display: inline-block;
	background-color: #ffffff;
	line-height: 1.2;
	text-align: center;
}

.tag {
	padding: 4px 6px;
	border-radius: 4px;
	font-size: 1.4rem;
}

/* ----- filtering ----- */
.filtering-area {
	padding: 50px 0 80px;
}

.filtering-button {
	-webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transition-property: opacity, -webkit-box-shadow;
	-webkit-box-shadow: 5px 6px 10px rgba(0, 0, 0, 0.21), -3px 0 10px #ffffff, 3px 0 10px #ffffff, -3px -2px 12px #ffffff;
	display: block;
	z-index: 1;
	position: relative;
	width: 100%;
	height: calc(100% - 13px);
	margin-bottom: 13px;
	border: solid #ffffff;
	border-width: 1px 0 0 1px;
	border-radius: 10px;
	background-color: #e6eaee;
	box-shadow: 5px 6px 10px rgba(0, 0, 0, 0.21), -3px 0 10px #ffffff, 3px 0 10px #ffffff, -3px -2px 12px #ffffff;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	text-align: center;
	transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition-property: opacity, -webkit-box-shadow;
	transition-property: box-shadow, opacity;
	transition-property: box-shadow, opacity, -webkit-box-shadow;
}

.filtering-button::before {
	-webkit-transform: rotate(45deg);
	-webkit-box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	position: absolute;
	right: 0;
	bottom: -9px;
	left: 0;
	width: 17px;
	height: 17px;
	margin: auto;
	transform: rotate(45deg);
	background-color: #e6eaee;
	box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
	content: "";
	opacity: 0;
}

.filtering-button:hover {
	text-decoration: none;
}

.filtering-button-inner {
	-ms-flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	z-index: 1;
	position: relative;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 13px 10px 15px;
	border-radius: 10px;
	background-color: #e6eaee;
	opacity: 0.5;
}

.filtering-button.is-active .filtering-button-inner {
	opacity: 1;
}

.filtering-button.is-active::before {
	opacity: 1;
}

.filtering-button:not(.is-active):hover {
	-webkit-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
	box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
}

.filtering-button:not(.is-active):active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.filtering-button:not(.is-active):active .filtering-button-inner:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.filtering-button.-toggle {
	position: relative;
}

.filtering-button.-toggle::after {
	-webkit-transform: rotate(45deg) translate(-1px, -1px);
	position: absolute;
	top: 0;
	right: 13px;
	bottom: 0;
	width: 7px;
	height: 7px;
	margin: auto;
	transform: rotate(45deg) translate(-1px, -1px);
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	content: "";
}

.filtering-button.-toggle::after {
	z-index: 1;
}

.filtering-button.-toggle .filtering-button-inner {
	padding-right: 25px;
	padding-left: 25px;
}

.filtering-button-list {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	z-index: 2;
	position: relative;
	justify-content: space-between;
	margin: 0 auto 14px;
}

.filtering-button-list-item {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	position: relative;
	flex: 1;
	margin-left: 48px;
}

.-narrow .filtering-button-list-item {
	margin-left: 24px;
}

.filtering-button-list-item:first-child {
	margin-left: 0;
}

.filtering-button-list-item .filtering-selectbox {
	margin: 0 -4px;
	padding: 44px 38px 30px;
}

.filtering-selectbox-moblie {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	font-size: 1.6rem;
	opacity: 0;
}

.filtering-selectbox {
	-webkit-box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.37);
	padding: 50px 45px 25px;
	overflow: hidden;
	border: solid #ffffff;
	border-width: 1px 0 0 1px;
	border-radius: 15px;
	background: linear-gradient(135deg, #eff1f4, #e1e6ea);
	box-shadow: 3px 3px 6px rgba(0, 0, 0, 0.37);
}

.filtering-selectbox-option {
	-webkit-transition: color 0.2s;
	border-bottom: 1px solid #cecece;
	transition: color 0.2s;
}

.filtering-selectbox-option-inner {
	-webkit-transition: -webkit-transform 0.9s cubic-bezier(0.12, 0.88, 0.33, 1.18);
	display: block;
	padding: 11px 0;
	cursor: pointer;
	transition: -webkit-transform 0.9s cubic-bezier(0.12, 0.88, 0.33, 1.18);
	transition: transform 0.9s cubic-bezier(0.12, 0.88, 0.33, 1.18);
	transition: transform 0.9s cubic-bezier(0.12, 0.88, 0.33, 1.18),
		-webkit-transform 0.9s cubic-bezier(0.12, 0.88, 0.33, 1.18);
}

.filtering-selectbox-option.is-hidden {
	display: none;
}

.filtering-selectbox-group {
	position: relative;
}

.filtering-selectbox-group .filtering-label.is-active {
	z-index: 2;
}

.filtering-selectbox-group .is-active + .filtering-content {
	z-index: 1;
}

.filtering.-toggle {
	border: 1px solid #d8d8d8;
	border-radius: 20px;
}

.filtering.-toggle .filtering-label::before,
.filtering.-toggle .filtering-label::after,
.filtering.-toggle .filtering-content-close::before,
.filtering.-toggle .filtering-content-close::after {
	width: 30px;
	height: 1px;
	border: solid #000000;
	border-width: 1px 0 0;
}

.filtering.-toggle .filtering-label {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-shadow: -3px 0 6px #ffffff inset, -4px 0 15px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 90px;
	padding: 15px 80px;
	border: solid #ffffff;
	border-width: 0 2px 2px 0;
	border-radius: 20px;
	background-color: #ebeef2;
	box-shadow: -3px 0 6px #ffffff inset, -4px 0 15px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	color: #000000;
	font-size: 1.8rem;
	font-weight: 500;
	text-align: center;
}

.filtering.-toggle .filtering-label::before,
.filtering.-toggle .filtering-label::after {
	right: 40px;
}

.filtering.-toggle .filtering-label::before {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
}

.filtering.-toggle .filtering-label::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.filtering.-toggle .filtering-content-close {
	width: 30px;
	height: 30px;
}

.filtering.-toggle .filtering-content-close::after {
	-webkit-transform: rotate(0);
	transform: rotate(0);
}

.filtering {
	position: relative;
	font-size: 1.4rem;
}

.filtering-label {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-shadow: -6px -6px 6px #ffffff inset, -5px -5px 5px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	align-items: center;
	height: 50px;
	padding: 8px 40px 8px 20px;
	border-radius: 25px;
	box-shadow: -6px -6px 6px #ffffff inset, -5px -5px 5px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	color: #898989;
	line-height: 1.2;
	cursor: pointer;
}

.filtering-label::after {
	-webkit-transform: rotate(45deg) translate(-1px, -1px);
	position: absolute;
	top: 0;
	right: 30px;
	bottom: 0;
	width: 7px;
	height: 7px;
	margin: auto;
	transform: rotate(45deg) translate(-1px, -1px);
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	content: "";
}

.filtering-label:focus,
.filtering-label:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.filtering-label.is-active {
	-webkit-box-shadow: none;
	border-radius: 15px;
	background-color: transparent;
	box-shadow: none;
}

.filtering-label.is-active::after {
	-webkit-transform: rotate(-135deg) translate(-2px, -2px);
	transform: rotate(-135deg) translate(-2px, -2px);
}

.filtering-content {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}

.is-active + .filtering-content {
	display: block;
}

.filtering-content-close {
	display: block;
	position: absolute;
	top: 18px;
	right: 30px;
	width: 20px;
	height: 20px;
}

.filtering-content-close::after {
	-webkit-transform: rotate(-135deg) translate(-1px, -1px);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 7px;
	height: 7px;
	margin: auto;
	transform: rotate(-135deg) translate(-1px, -1px);
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	content: "";
}

.filtering-link-block {
	margin-top: 20px;
	text-align: center;
}

.filtering-link-block a {
	-webkit-transition: opacity 0.3s ease-in-out;
	position: relative;
	position: relative;
	padding-right: 14px;
	transition: opacity 0.3s ease-in-out;
}

.filtering-link-block a::after {
	-webkit-transform: rotate(-45deg) translate(-1px, -1px);
	position: absolute;
	top: 0;
	right: 2px;
	bottom: 0;
	width: 7px;
	height: 7px;
	margin: auto;
	transform: rotate(-45deg) translate(-1px, -1px);
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	content: "";
}

.filtering-clear {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-transition: opacity 0.3s ease-in-out;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	align-items: center;
	margin-left: auto;
	font-size: 1.5rem;
	font-weight: 500;
	transition: opacity 0.3s ease-in-out;
}

.filtering-clear-icon {
	-webkit-transform: rotate(45deg);
	display: block;
	position: relative;
	width: 20px;
	height: 20px;
	margin-right: 6px;
	transform: rotate(45deg);
	border-radius: 50%;
	background-color: #ffffff;
}

.filtering-clear-icon::before,
.filtering-clear-icon::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 13px;
	height: 1px;
	margin: auto;
	background-color: #000000;
	content: "";
}

.filtering-clear-icon::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.filtering-block {
	margin: 40px 0 50px;
}

.filtering-block:first-child {
	margin-top: 0;
}

.filtering-block:last-child {
	margin-bottom: 0;
}

.filtering-block .filtering-label {
	width: 380px;
}

/* ----- information ----- */
.information-list-item {
	position: relative;
}

.information-list-item::after {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 391px;
	margin: 0 auto;
	border-bottom: 1px solid #d8d8d8;
	content: "";
}

.information-list.-multiple .information-list-item::after {
	width: 100%;
}

.information-list.-emergency .information-list-item::after {
	content: none;
}

.information-list.-link-list .information-list-item::after {
	content: none;
}

.information-list-item + .information-list-item {
	margin-top: 18px;
}

.information-list.-multiple .information-list-item + .information-list-item {
	margin-top: 30px;
}

.information-section {
	max-width: 1035px;
	margin: 40px auto 0;
}

.information-section + .information-section {
	margin-top: 60px;
}

.information-section:first-child {
	margin-top: 0;
}

.information {
	-webkit-box-align: start;
	-ms-flex-align: start;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	align-items: flex-start;
	padding-bottom: 1em;
	line-height: 1.625;
}

.information-list.-multiple .information {
	padding-bottom: 30px;
}

.information-list.-link-list .information .information-title {
	font-weight: normal;
}

.information::after {
	display: block;
	clear: both;
	content: "";
}

.information-data {
	-ms-flex-negative: 0;
	display: inline-block;
	flex-shrink: 0;
	min-width: 6em;
	margin-top: 5px;
	font-size: 1.4rem;
	line-height: 1.21429;
}

.information-category {
	display: inline-block;
	min-width: 10em;
	margin-left: 0.75em;
	font-size: 1.4rem;
}

.information-title {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	margin-left: 1.25em;
	font-weight: 700;
}

[target="_blank"] .information-title::after {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 0.6em;
	background: url(../images/icon_blank.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

[target="_blank"] .information-title::after {
	vertical-align: 0;
}

.information-title-arrow {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	margin-left: 1em;
}

.information-title-arrow::after {
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	display: inline-block;
	width: 12px;
	height: 6px;
	margin-left: 0.5em;
	background: url(../images/icon_arrow_r.svg) no-repeat 50% 50%;
	background-size: contain;
	vertical-align: 0.25em;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.information:hover .information-title-arrow::after {
	-webkit-transform: translateX(8px);
	transform: translateX(8px);
}

.information-pict {
	-ms-flex-negative: 0;
	position: relative;
	flex-shrink: 0;
	width: 228px;
	margin-right: 20px;
	padding-top: 128px;
	overflow: hidden;
	border-radius: 15px;
	background-color: #ffffff;
}

.information-pict img {
	-o-object-fit: contain;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: contain;
	font-family: "object-fit: contain;";
}

.information-content::after {
	display: block;
	clear: both;
	content: "";
}

.information-content .information-data {
	padding-right: 0;
}

.information-content .information-title {
	margin-bottom: 20px;
}

.information-label,
.information-tags {
	margin-bottom: 10px;
	line-height: 1;
}

.information-label {
	margin-right: 8px;
}

.information-hashtags {
	margin-top: 20px;
}

/* ----- card ----- */
.card {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-shadow: 9px 8px 10px rgba(0, 0, 0, 0.21), 0 0 5px 0 #ffffff, -4px 0 5px 0 #ffffff, -4px -6px 15px #ffffff;
	-webkit-transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 40px;
	overflow: hidden;
	border: solid #ffffff;
	border-width: 1px 0 0 1px;
	border-radius: 30px;
	background: linear-gradient(-38deg, #eff1f4, #e1e6ea);
	box-shadow: 9px 8px 10px rgba(0, 0, 0, 0.21), 0 0 5px 0 #ffffff, -4px 0 5px 0 #ffffff, -4px -6px 15px #ffffff;
	transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1), -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.card::after {
	display: block;
	clear: both;
	content: "";
}

.card:not(:first-child),
.card:not(:last-child) {
	height: auto;
}

.card:hover {
	-webkit-box-shadow: 15px 14px 17px rgba(0, 0, 0, 0.21), 0 0 8px 0 #ffffff, -7px 0 8px 0 #ffffff,
		-7px -10px 26px #ffffff;
	box-shadow: 15px 14px 17px rgba(0, 0, 0, 0.21), 0 0 8px 0 #ffffff, -7px 0 8px 0 #ffffff, -7px -10px 26px #ffffff;
	text-decoration: none;
}

.card:hover .card-pict img {
	-webkit-transform: scale(1.04);
	transform: scale(1.04);
}

.card:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.card:active {
	border-color: transparent;
}

.card + .card {
	margin-top: 50px;
}

.card-pict {
	position: relative;
	margin-bottom: 15px;
	padding-top: 56.25%;
	overflow: hidden;
	border-radius: 20px;
	background-color: #ffffff;
}

.card-pict img {
	-o-object-fit: contain;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: contain;
	font-family: "object-fit: contain;";
}

.card-pict img {
	-webkit-transition: -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
	transition: -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
	transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
	transition: transform 0.8s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.8s cubic-bezier(0.19, 1, 0.22, 1);
}

.card-pict.-book,
.card-pict.-icon {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 10px;
}

.card-pict.-book {
	height: 220px;
}

.card-pict.-book img {
	width: 122px;
	height: 171px;
	border: 1px solid #d8d8d8;
}

.card-pict.-thumb {
	padding-top: 95%;
}

.card-pict.-thumb img {
	-o-object-fit: cover;
	object-fit: cover;
}

.card-pict.-icon {
	height: 178px;
}

.card-pict.-icon img {
	width: 125px;
	height: 125px;
}

.card-content {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.card-content p {
	margin-bottom: 20px;
}

.card-content p:last-child {
	margin-bottom: 0;
}

.card-content .card-title {
	margin-bottom: 10px;
}

.card-content .card-category {
	margin-bottom: 5px;
}

.card-data {
	margin-bottom: 3px;
	font-size: 1.3rem;
	line-height: 1.15385;
}

.card-category {
	display: block;
	font-size: 1.4rem;
}

.card-heading {
	margin-bottom: 10px;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.26667;
}

[target="_blank"] .card-heading::after {
	display: inline-block;
	width: 15px;
	height: 15px;
	margin-left: 0.25em;
	background: url(../images/icon_blank.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

.card-title {
	font-size: 2.1rem;
	font-weight: 700;
}

.card-title.-sm {
	font-size: 1.6rem;
}

.card-title > span {
	font-size: 1.5rem;
}

.card[target="_blank"] .card-title::after {
	display: inline-block;
	width: 15px;
	height: 15px;
	margin-left: 0.25em;
	background: url(../images/icon_blank.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

.relation-link .card-title {
	-webkit-line-clamp: unset;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.35;
}

.relation-link .card-title > span {
	font-size: 1.3rem;
	font-weight: bold;
}

.card-description {
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	display: -webkit-box;
	overflow: hidden;
}

.card-description.-blank-icon::after {
	display: inline-block;
	width: 15px;
	height: 15px;
	margin-left: 0.25em;
	background: url(../images/icon_blank.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

.relation-link .card-description {
	-webkit-line-clamp: unset;
	line-height: 1.35;
}

.card-hashtags {
	margin-top: auto;
}

.column-col-3 .card.-horizontal {
	padding: 20px;
	border-radius: 20px;
}

.card-content.relation-link > p {
	font-size: 1.5rem;
}

.card-list-item {
	margin: 0 auto 40px;
}

.card-list-item:not(.-wide) {
	max-width: 1073px;
}

.card-list-item:last-child {
	margin-bottom: 0;
}

.card-slider-list {
	-ms-flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -25px;
}

.card-slider-list-item {
	width: 100%;
	padding: 0 25px;
}

.card-slider-list.slick-initialized {
	display: block;
}

.card-slider-list .slick-list {
	overflow: visible;
}

/* ----- box ----- */
.box {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.box + .box {
	margin-top: 46px;
}

.box-pict {
	margin-bottom: 20px;
	text-align: center;
}

.box-pict:first-child {
	margin-top: 0;
}

.box-pict:last-child {
	margin-bottom: 0;
}

.box-date {
	display: block;
	margin-bottom: 5px;
	font-size: 1.3rem;
	line-height: 1.15385;
}

.box-category {
	margin-bottom: 5px;
	font-size: 1.4rem;
	line-height: 1.28571;
}

.box-heading {
	margin-bottom: 10px;
	font-size: 3rem;
	font-weight: 700;
	line-height: 1.26667;
}

.box-heading:last-child {
	margin-bottom: 0;
}

.box-title {
	margin-bottom: 10px;
	font-size: 2.1rem;
	font-weight: 700;
}

.box-title.-sm {
	font-size: 1.6rem;
}

.box-tags {
	margin-top: auto;
}

.box-content {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	flex-grow: 1;
}

.box-content p,
.box-content ul {
	margin-bottom: 1em;
}

.box-content p:last-child,
.box-content ul:last-child {
	margin-bottom: 0;
}

.box-content ul {
	margin-top: 0;
}

.box-content .box-title {
	margin-bottom: 10px;
}

.box.-float::after {
	display: block;
	clear: both;
	content: "";
}

.box.-float-sp.-reverse .box-pict {
	margin-left: 15px;
	float: right;
}

.column-col-4 .box-title {
	font-size: 1.6rem;
}

/* ----- table ----- */
.table-responsive {
	overflow-x: auto;
}

.table-responsive + .table-responsive {
	margin-top: 50px;
}

/* th-width(px) 20-300 */
table.-th-w-20 th {
	width: 20px !important;
}

table.-th-w-40 th {
	width: 40px !important;
}

table.-th-w-60 th {
	width: 60px !important;
}

table.-th-w-80 th {
	width: 80px !important;
}

table.-th-w-100 th {
	width: 100px !important;
}

table.-th-w-120 th {
	width: 120px !important;
}

table.-th-w-140 th {
	width: 140px !important;
}

table.-th-w-160 th {
	width: 160px !important;
}

table.-th-w-180 th {
	width: 180px !important;
}

table.-th-w-200 th {
	width: 200px !important;
}

table.-th-w-220 th {
	width: 220px !important;
}

table.-th-w-240 th {
	width: 240px !important;
}

table.-th-w-260 th {
	width: 260px !important;
}

table.-th-w-280 th {
	width: 280px !important;
}

table.-th-w-300 th {
	width: 300px !important;
}

.table,
.article-post table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	font-size: 1.6rem;
}

.-space .table,
.-space .article-post table,
.article-post .-space table {
	margin-top: 1.5em;
}

.-wide .table td,
.-wide .article-post table td,
.article-post .-wide table td,
.-wide .table th,
.-wide .article-post table th,
.article-post .-wide table th {
	padding: 25px 15px;
}

.table.-no-decoration tbody th,
.article-post table.-no-decoration tbody th {
	background-color: #ffffff;
	text-align: left;
}

.table.-no-decoration tbody tr,
.article-post table.-no-decoration tbody tr {
	background-color: #ffffff;
}

.table.-no-decoration tbody td,
.article-post table.-no-decoration tbody td {
	background-color: #ffffff;
}

.table.-no-decoration thead,
.article-post table.-no-decoration thead {
	background-color: #ffffff;
	color: #000000;
}

.table.-decoration th,
.article-post table.-decoration th,
.table.-decoration td,
.article-post table.-decoration td {
	border: 2px solid #ffffff;
}

.table + .table,
.article-post table + .table,
.article-post .table + table,
.article-post table + table {
	margin-top: 50px;
}

.table th,
.article-post table th,
.table td,
.article-post table td {
	padding: 8px 6px 7px;
	border: 1px solid #adadad;
	line-height: 1.5;
}

.table.-gray thead,
.article-post table.-gray thead {
	background-color: #000000;
	color: #ffffff;
}

.table.-thead-left thead,
.article-post table.-thead-left thead {
	text-align: left;
}

.table.-thead-left th,
.article-post table.-thead-left th {
	padding: 8px 6px 7px;
}

.table thead,
.article-post table thead {
	background-color: #000000;
	color: #ffffff;
	text-align: center;
}

.table thead th,
.article-post table thead th {
	padding: 8px 2px 7px;
	font-weight: 500;
}

.table tbody th,
.article-post table tbody th {
	background-color: #e1e6ea;
	font-weight: 400;
}

.table tbody tr:nth-child(odd),
.article-post table tbody tr:nth-child(odd) {
	background-color: #f3f5f7;
}

.table tbody tr:nth-child(even),
.article-post table tbody tr:nth-child(even) {
	background-color: #ffffff;
}

.table-section {
	margin-top: 50px;
}

.table.-td-color-gray tbody tr td:nth-child(4),
.article-post table.-td-color-gray tbody tr td:nth-child(4) {
	background-color: #f3f5f7;
}

.table.-td-color-gray tbody tr td:nth-child(6),
.article-post table.-td-color-gray tbody tr td:nth-child(6) {
	background-color: #f3f5f7;
}

.table.-td-color-gray tbody tr td:nth-child(9),
.article-post table.-td-color-gray tbody tr td:nth-child(9) {
	background-color: #f3f5f7;
}

.table.-td-color-white tbody tr td:nth-child(2),
.article-post table.-td-color-white tbody tr td:nth-child(2) {
	background-color: #ffffff;
}

.table.-td-color-white tbody tr td:nth-child(3),
.article-post table.-td-color-white tbody tr td:nth-child(3) {
	background-color: #ffffff;
}

.table.-td-color-white tbody tr td:nth-child(5),
.article-post table.-td-color-white tbody tr td:nth-child(5) {
	background-color: #ffffff;
}

.table.-td-color-white tbody tr td:nth-child(7),
.article-post table.-td-color-white tbody tr td:nth-child(7) {
	background-color: #ffffff;
}

.table.-td-color-white tbody tr td:nth-child(8),
.article-post table.-td-color-white tbody tr td:nth-child(8) {
	background-color: #ffffff;
}

.table.-vertical tbody tr td:nth-child(odd),
.article-post table.-vertical tbody tr td:nth-child(odd) {
	background-color: #f3f5f7;
}

.table.-vertical tbody tr td:nth-child(even),
.article-post table.-vertical tbody tr td:nth-child(even) {
	background-color: #ffffff;
}

.table.-inversion tbody tr:nth-child(even),
.article-post table.-inversion tbody tr:nth-child(even) {
	background-color: #f3f5f7;
}

.table.-inversion tbody tr:nth-child(odd),
.article-post table.-inversion tbody tr:nth-child(odd) {
	background-color: #ffffff;
}

.table.-last-gray tbody tr:last-child,
.article-post table.-last-gray tbody tr:last-child {
	background-color: #f3f5f7;
}

.table.-last-gray tbody tr:not(:last-child),
.article-post table.-last-gray tbody tr:not(:last-child) {
	background-color: #ffffff;
}

.table.-free tbody tr,
.article-post table.-free tbody tr {
	background-color: #ffffff;
}

.table.-free tbody tr.-gyay,
.article-post table.-free tbody tr.-gyay {
	background-color: #f3f5f7;
}

/* ----- form ----- */
.form-control,
.form-control-radius {
	display: block;
	width: 100%;
	font-size: 1.6rem;
}

.form-control:focus,
.form-control-radius:focus {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.form-control::-webkit-input-placeholder,
.form-control-radius::-webkit-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control::-moz-placeholder,
.form-control-radius::-moz-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control:-ms-input-placeholder,
.form-control-radius:-ms-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control::-ms-input-placeholder,
.form-control-radius::-ms-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control::placeholder,
.form-control-radius::placeholder {
	color: #898989;
	opacity: 1;
}

.is-error .form-control,
.is-error .form-control-radius,
.is-error .form-control-select > select {
	border: 1px solid #ff0000;
	color: #ff0000;
}

.form-control {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-shadow: -6px -6px 6px #ffffff inset, -5px -5px 5px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	height: 50px;
	padding: 8px 40px 8px 20px;
	border-radius: 10px;
	box-shadow: -6px -6px 6px #ffffff inset, -5px -5px 5px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	line-height: 1.2;
}

.form-control::-webkit-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control::-moz-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control:-ms-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control::-ms-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control::placeholder {
	color: #898989;
	opacity: 1;
}

.form-control-radius {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-shadow: -6px -6px 6px #ffffff inset, -5px -5px 5px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	height: 50px;
	padding: 8px 40px 8px 20px;
	border-radius: 25px;
	box-shadow: -6px -6px 6px #ffffff inset, -5px -5px 5px #ffffff inset, 0 3px 6px rgba(0, 0, 0, 0.16) inset;
	line-height: 1.2;
}

.form-control-radius::-webkit-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control-radius::-moz-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control-radius:-ms-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control-radius::-ms-input-placeholder {
	color: #898989;
	opacity: 1;
}

.form-control-radius::placeholder {
	color: #898989;
	opacity: 1;
}

textarea.form-control,
textarea.form-control-radius {
	height: auto;
}

.form-control-select {
	position: relative;
	width: 100%;
	font-size: 1.6rem;
	line-height: 1.4;
}

.form-control-select::after {
	-webkit-transform: rotate(45deg);
	position: absolute;
	top: 0;
	right: 24px;
	bottom: 0;
	width: 7px;
	height: 7px;
	margin: auto;
	transform: rotate(45deg);
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	content: "";
}

.form-control-select > select {
	-webkit-transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-box-shadow: 5px 6px 10px rgba(0, 0, 0, 0.21), -3px 0 10px #ffffff, 3px 0 10px #ffffff, -3px -2px 12px #ffffff;
	display: block;
	width: 100%;
	height: 53px;
	padding: 15px 36px;
	border: solid #ffffff;
	border-width: 1px 0 0 1px;
	border-radius: 10px;
	background-color: #e6eaee;
	box-shadow: 5px 6px 10px rgba(0, 0, 0, 0.21), -3px 0 10px #ffffff, 3px 0 10px #ffffff, -3px -2px 12px #ffffff;
	font-weight: 500;
	transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1), -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.form-control-select > select:hover {
	-webkit-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
	box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
}

.form-control-select > select:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.form-control-select-outline {
	position: relative;
	width: 100%;
	font-size: 1.6rem;
}

.form-control-select-outline::after {
	-webkit-transform: rotate(45deg) translate(-1px, -1px);
	position: absolute;
	top: 0;
	right: 13px;
	bottom: 0;
	width: 7px;
	height: 7px;
	margin: auto;
	transform: rotate(45deg) translate(-1px, -1px);
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	content: "";
}

.form-control-select-outline > select {
	display: block;
	width: 100%;
	height: 40px;
	padding: 4px 16px;
	border: 1px solid #000000;
	border-radius: 4px;
	background-color: #ffffff;
}

.form-control-checkbox,
.form-control-radio {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
	align-items: center;
	vertical-align: middle;
}

.form-control-checkbox > span,
.form-control-radio > span {
	position: relative;
	min-height: 38px;
	padding-left: 38px;
}

.form-control-checkbox > span::before,
.form-control-radio > span::before,
.form-control-checkbox > span::after,
.form-control-radio > span::after {
	-webkit-transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	content: "";
	transition: 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.form-control-checkbox > span::before,
.form-control-radio > span::before {
	-webkit-transition-property: -webkit-box-shadow;
	-webkit-box-shadow: -5px -5px 10px #ffffff, 2px 2px 10px rgba(0, 0, 0, 0.31);
	width: 38px;
	height: 38px;
	background: linear-gradient(-40deg, rgba(239, 241, 244, 0.4), rgba(225, 230, 234, 0.4));
	box-shadow: -5px -5px 10px #ffffff, 2px 2px 10px rgba(0, 0, 0, 0.31);
	transition-property: -webkit-box-shadow;
	transition-property: box-shadow;
	transition-property: box-shadow, -webkit-box-shadow;
}

.form-control-checkbox > span > span,
.form-control-radio > span > span {
	display: inline-block;
	padding-left: 10px;
	vertical-align: middle;
}

.form-control-checkbox input,
.form-control-radio input {
	display: none;
}

.form-control-checkbox input:checked + span::before,
.form-control-radio input:checked + span::before {
	-webkit-box-shadow: inset 0 3px 6px rgba(0, 0, 0, 0.16), inset -3px 0 6px #ffffff, inset -2px 0 5px #ffffff;
	border: solid #ffffff;
	border-width: 0 1px 1px 0;
	box-shadow: inset 0 3px 6px rgba(0, 0, 0, 0.16), inset -3px 0 6px #ffffff, inset -2px 0 5px #ffffff;
}

.form-control-checkbox > span::before {
	border-radius: 5px;
}

.form-control-checkbox > span::after {
	left: 9px;
	width: 21px;
	height: 16px;
	background: url(../images/icon_checked.svg) no-repeat 50% 50%;
	background-size: contain;
	opacity: 0;
}

.form-control-checkbox input[type="checkbox"]:checked + span::after {
	opacity: 1;
}

.form-control-radio > span::before,
.form-control-radio > span::after {
	border-radius: 50%;
}

.form-control-radio > span::after {
	left: 10px;
	width: 16px;
	height: 16px;
	border: 1px solid #000000;
	background-color: #ffffff;
}

.form-control-radio input[type="radio"]:checked + span::after {
	background-color: #000000;
}

.form-control-list > li {
	margin-top: 15px;
}

.form-control-list.-horizontal {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}

.form-control-list.-horizontal > li {
	margin-right: 15px;
}

.form-button {
	-webkit-transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-box-shadow: 5px 6px 10px rgba(0, 0, 0, 0.21), -3px 0 10px #ffffff, 3px 0 10px #ffffff, -3px -2px 12px #ffffff;
	display: inline-block;
	padding: 13px 10px 15px;
	border: solid #ffffff;
	border-width: 1px 0 0 1px;
	border-radius: 10px;
	background-color: #e6eaee;
	box-shadow: 5px 6px 10px rgba(0, 0, 0, 0.21), -3px 0 10px #ffffff, 3px 0 10px #ffffff, -3px -2px 12px #ffffff;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.35714;
	text-align: center;
	transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1), -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.form-button:hover {
	-webkit-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
	box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
}

.form-button:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.form-button-fill {
	padding: 9px 10px;
	border-radius: 4px;
	background-color: #000000;
	color: #ffffff;
	font-weight: 500;
	line-height: 1.4;
	text-align: center;
}

.form-button-group {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	margin-top: 75px;
}

.form-button-group-item {
	width: 260px;
	margin-left: 45px;
}

.form-button-group-item:first-child {
	margin-left: 0;
}

.form-button-group-item .button {
	width: 100%;
}

.form-button-group-item.-sm {
	max-width: 145px;
}

.form-row-gruop {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	margin-left: -20px;
}

.form-row-gruop > * {
	margin-left: 20px;
}

.form-row-gruop .form-button-fill {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 92px;
}

.form-row-gruop .form-control,
.form-row-gruop .form-control-radius,
.form-row-gruop .form-control-select,
.form-row-gruop .form-control-select-outline {
	min-width: 110px;
}

.form-row-gruop .-max.form-control,
.form-row-gruop .-max.form-control-radius,
.form-row-gruop .-max.form-control-select,
.form-row-gruop .-max.form-control-select-outline {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
}

.form-group {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	font-size: 1.6rem;
}

.form-group + .form-group {
	margin-top: 45px;
}

.form-group-label.-required::after {
	color: #ff0000;
	content: "＊";
}

.error-message {
	display: none;
	width: 100%;
	margin: 0.75em 0;
	color: #ff0000;
}

.error-message:first-child {
	margin-top: 0;
}

.error-message:last-child {
	margin-bottom: 0;
}

.is-error .error-message {
	display: block;
}

.form-field {
	max-width: 865px;
	margin: 0 auto;
}

.form-search {
	margin: 40px 0;
}

.form-search:first-child {
	margin-top: 0;
}

.form-search:last-child {
	margin-bottom: 0;
}

.form-search-group {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	max-width: 870px;
	margin: 0 auto;
}

.form-search-group input[type="text"] {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	font-size: 1.4rem;
}

.form-search-group input[type="submit"] {
	-ms-flex-negative: 0;
	-ms-flex-item-align: stretch;
	flex-shrink: 0;
	align-self: stretch;
	width: 92px;
	margin-left: 18px;
}

/* ----- more ----- */
.more-button {
	-webkit-transition: opacity 0.3s ease-in-out;
	display: inline-block;
	position: relative;
	padding-right: 20px;
	font-weight: 500;
	transition: opacity 0.3s ease-in-out;
}

.more-button::after {
	-webkit-transform: rotate(45deg) translate(-1px, -1px);
	position: absolute;
	top: 0;
	right: 2px;
	bottom: 0;
	width: 7px;
	height: 7px;
	margin: auto;
	transform: rotate(45deg) translate(-1px, -1px);
	border-right: 1px solid #000000;
	border-bottom: 1px solid #000000;
	content: "";
}

.more-button-block {
	margin-top: 60px;
	text-align: center;
}

.more-button-block:first-child {
	margin-top: 0;
}

/* ----- slider ----- */
.slider-arrows {
	-webkit-box-pack: end;
	-ms-flex-pack: end;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: flex-end;
	margin-bottom: 15px;
}

.slider-arrows .slick-arrow {
	-webkit-transform: translateY(0);
	-webkit-transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-box-shadow: -5px -5px 10px #ffffff, 2px 2px 10px rgba(0, 0, 0, 0.31);
	position: relative;
	top: auto;
	right: auto;
	left: auto;
	width: 50px;
	height: 50px;
	padding: 0;
	padding-right: 0;
	transform: translateY(0);
	border-radius: 50%;
	background: linear-gradient(-40deg, #eff1f4, #e1e6ea) no-repeat;
	box-shadow: -5px -5px 10px #ffffff, 2px 2px 10px rgba(0, 0, 0, 0.31);
	cursor: pointer;
	transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.slider-arrows .slick-arrow:hover {
	-webkit-box-shadow: -2px -2px 5px #ffffff, 1px 1px 5px rgba(0, 0, 0, 0.31);
	box-shadow: -2px -2px 5px #ffffff, 1px 1px 5px rgba(0, 0, 0, 0.31);
}

.slider-arrows .slick-arrow::after {
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 24px;
	height: 10px;
	margin: auto;
	background: url(../images/icon_arrow_r.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.slider-arrows .slick-arrow::before {
	content: none;
}

.slider-arrows .slick-arrow::after {
	-webkit-transform: translateY(-1px);
	left: 0;
	transform: translateY(-1px);
}

.slider-arrows .slick-arrow:hover::after {
	-webkit-transform: translate(5px, -1px);
	transform: translate(5px, -1px);
}

.slider-arrows .slick-arrow:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.slider-arrows .slick-arrow:not(:first-child) {
	margin-left: 30px;
}

.slider-arrows .slick-arrow.slick-disabled {
	opacity: 0.5;
	pointer-events: none;
}

.slider-arrows .slick-arrow.slick-disabled::after {
	opacity: 0.57;
}

.slider-arrows .slick-prev::after {
	-webkit-transform: scale(-1, 1) translateY(-1px);
	transform: scale(-1, 1) translateY(-1px);
}

.slider-arrows .slick-prev:hover::after {
	-webkit-transform: scale(-1, 1) translate(5px, -1px);
	transform: scale(-1, 1) translate(5px, -1px);
}

.home-content-heading + .slider-arrows {
	margin-top: -45px;
}

/* ----- tab ----- */
.tab-button {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-transition: 0.15s ease-in-out;
	-webkit-transition-property: color, -webkit-box-shadow;
	-webkit-box-shadow: 8px 10px 20px rgba(0, 0, 0, 0.21), -6px 0 10px #ffffff, -6px -5px 15px #ffffff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	padding: 10px 10px 14px;
	border: solid #ffffff;
	border-width: 1px 0 0 1px;
	border-radius: 10px 10px 0 0;
	background-color: #e6eaee;
	box-shadow: 8px 10px 20px rgba(0, 0, 0, 0.21), -6px 0 10px #ffffff, -6px -5px 15px #ffffff;
	font-weight: 500;
	text-align: center;
	opacity: 0.5;
	transition: 0.15s ease-in-out;
	transition-property: color, -webkit-box-shadow;
	transition-property: color, box-shadow;
	transition-property: color, box-shadow, -webkit-box-shadow;
}

.tab-button-list {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	max-width: 874px;
	margin: 0 auto;
}

.tab-button-list-item {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	min-height: 75px;
	padding-top: 12px;
}

.tab-button-list-item.is-active {
	padding-top: 0;
}

.tab-button-list-item.is-active .tab-button {
	z-index: 1;
	padding-bottom: 20px;
	opacity: 1;
}

.tab-button-list-item:not(.is-active) .tab-button:hover {
	-webkit-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
	box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
}

.tab-button-list-item:not(.is-active) .tab-button:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.tab-panel {
	display: none;
	z-index: 2;
	position: relative;
	padding: 20px 0 70px;
	background-color: #e6eaee;
}

.tab-panel.is-active {
	display: block;
}

/* ----- animation ----- */
.header .header-nav [data-effect="fade-in"],
.header-nav .header [data-effect="fade-in"],
.header .header-nav [data-effect-list="fade-in"] > *,
.header-nav .header [data-effect-list="fade-in"] > *,
.header .header-nav [data-effect="slide-up"],
.header-nav .header [data-effect="slide-up"],
.header .header-nav [data-effect-list="slide-up"] > *,
.header-nav .header [data-effect-list="slide-up"] > *,
.header .header-nav [data-effect="slide-up-order"] > li,
.header-nav .header [data-effect="slide-up-order"] > li,
.header .header-nav [data-effect="slide-right-order"] > li,
.header-nav .header [data-effect="slide-right-order"] > li,
.header .header-nav [data-effect="slide-left"],
.header-nav .header [data-effect="slide-left"],
.header .header-nav [data-effect-list="slide-left"] > *,
.header-nav .header [data-effect-list="slide-left"] > *,
.header .header-nav [data-effect="slide-right"],
.header-nav .header [data-effect="slide-right"],
.header .header-nav [data-effect-list="slide-right"] > *,
.header-nav .header [data-effect-list="slide-right"] > * {
	-webkit-transition: none;
	opacity: 0;
	transition: none;
}

.header.is-opened .header-nav [data-effect="fade-in"],
.header-nav .header.is-opened [data-effect="fade-in"],
.header.is-opened .header-nav [data-effect-list="fade-in"] > *,
.header-nav .header.is-opened [data-effect-list="fade-in"] > *,
.header.is-opened .header-nav [data-effect="slide-up"],
.header-nav .header.is-opened [data-effect="slide-up"],
.header.is-opened .header-nav [data-effect-list="slide-up"] > *,
.header-nav .header.is-opened [data-effect-list="slide-up"] > *,
.header.is-opened .header-nav [data-effect="slide-up-order"] > li,
.header-nav .header.is-opened [data-effect="slide-up-order"] > li,
.header.is-opened .header-nav [data-effect="slide-right-order"] > li,
.header-nav .header.is-opened [data-effect="slide-right-order"] > li,
.header.is-opened .header-nav [data-effect="slide-left"],
.header-nav .header.is-opened [data-effect="slide-left"],
.header.is-opened .header-nav [data-effect-list="slide-left"] > *,
.header-nav .header.is-opened [data-effect-list="slide-left"] > *,
.header.is-opened .header-nav [data-effect="slide-right"],
.header-nav .header.is-opened [data-effect="slide-right"],
.header.is-opened .header-nav [data-effect-list="slide-right"] > *,
.header-nav .header.is-opened [data-effect-list="slide-right"] > * {
	-webkit-transition: opacity 0.2s ease-in, -webkit-transform 0.3s cubic-bezier(0, 1.01, 0.87, 0.95);
	-webkit-transition-delay: 1s, 1s;
	-webkit-transform: none;
	transform: none;
	opacity: 1;
	transition: opacity 0.2s ease-in, -webkit-transform 0.3s cubic-bezier(0, 1.01, 0.87, 0.95);
	transition: opacity 0.2s ease-in, transform 0.3s cubic-bezier(0, 1.01, 0.87, 0.95);
	transition: opacity 0.2s ease-in, transform 0.3s cubic-bezier(0, 1.01, 0.87, 0.95),
		-webkit-transform 0.3s cubic-bezier(0, 1.01, 0.87, 0.95);
	transition-delay: 1s, 1s;
}

.header .header-nav [data-effect="slide-up"],
.header .header-nav [data-effect-list="slide-up"] > * {
	-webkit-transform: translateY(30px);
	transform: translateY(30px);
}

.header .header-nav [data-effect="slide-up-order"] > li {
	-webkit-transform: translateY(30px);
	transform: translateY(30px);
}

.header .header-nav [data-effect="slide-right-order"] > li {
	-webkit-transform: translateX(30px);
	transform: translateX(30px);
}

.header .header-nav [data-effect="slide-left"],
.header .header-nav [data-effect-list="slide-left"] > * {
	-webkit-transform: translateX(-30px);
	transform: translateX(-30px);
}

.header .header-nav [data-effect="slide-right"],
.header .header-nav [data-effect-list="slide-right"] > * {
	-webkit-transform: translateX(30px);
	transform: translateX(30px);
}

.header-nav [data-effect-delay="1"] {
	-webkit-transition-delay: 0.05s !important;
	transition-delay: 0.05s !important;
}

.header-nav [data-effect-delay="2"] {
	-webkit-transition-delay: 0.1s !important;
	transition-delay: 0.1s !important;
}

.header-nav [data-effect-delay="3"] {
	-webkit-transition-delay: 0.15s !important;
	transition-delay: 0.15s !important;
}

.header-nav [data-effect-delay="4"] {
	-webkit-transition-delay: 0.2s !important;
	transition-delay: 0.2s !important;
}

.header-nav [data-effect-delay="5"] {
	-webkit-transition-delay: 0.25s !important;
	transition-delay: 0.25s !important;
}

.header-nav [data-effect-delay="6"] {
	-webkit-transition-delay: 0.3s !important;
	transition-delay: 0.3s !important;
}

.header-nav [data-effect-delay="7"] {
	-webkit-transition-delay: 0.35s !important;
	transition-delay: 0.35s !important;
}

.header-nav [data-effect-delay="8"] {
	-webkit-transition-delay: 0.4s !important;
	transition-delay: 0.4s !important;
}

.header-nav [data-effect-delay="9"] {
	-webkit-transition-delay: 0.45s !important;
	transition-delay: 0.45s !important;
}

.header-nav [data-effect-delay="10"] {
	-webkit-transition-delay: 0.5s !important;
	transition-delay: 0.5s !important;
}

.header-nav [data-effect-delay="11"] {
	-webkit-transition-delay: 0.55s !important;
	transition-delay: 0.55s !important;
}

.header-nav [data-effect-delay="12"] {
	-webkit-transition-delay: 0.6s !important;
	transition-delay: 0.6s !important;
}

.header-nav [data-effect-delay="13"] {
	-webkit-transition-delay: 0.65s !important;
	transition-delay: 0.65s !important;
}

.header-nav [data-effect-delay="14"] {
	-webkit-transition-delay: 0.7s !important;
	transition-delay: 0.7s !important;
}

.header-nav [data-effect-delay="15"] {
	-webkit-transition-delay: 0.75s !important;
	transition-delay: 0.75s !important;
}

.header-nav [data-effect-delay="16"] {
	-webkit-transition-delay: 0.8s !important;
	transition-delay: 0.8s !important;
}

.header-nav [data-effect-delay="17"] {
	-webkit-transition-delay: 0.85s !important;
	transition-delay: 0.85s !important;
}

.header-nav [data-effect-delay="18"] {
	-webkit-transition-delay: 0.9s !important;
	transition-delay: 0.9s !important;
}

.header-nav [data-effect-delay="19"] {
	-webkit-transition-delay: 0.95s !important;
	transition-delay: 0.95s !important;
}

.header-nav [data-effect-delay="20"] {
	-webkit-transition-delay: 1s !important;
	transition-delay: 1s !important;
}

@-webkit-keyframes arrow-rotate {
	0% {
		background-position-x: 0;
		opacity: 1;
	}
	30% {
		background-position-x: 10px;
		opacity: 0;
	}
	35% {
		background-position-x: 0;
		opacity: 0;
	}
	75% {
		background-position-x: -10px;
		opacity: 0;
	}
	100% {
		background-position-x: 0;
		opacity: 1;
	}
}

@keyframes arrow-rotate {
	0% {
		background-position-x: 0;
		opacity: 1;
	}
	30% {
		background-position-x: 10px;
		opacity: 0;
	}
	35% {
		background-position-x: 0;
		opacity: 0;
	}
	75% {
		background-position-x: -10px;
		opacity: 0;
	}
	100% {
		background-position-x: 0;
		opacity: 1;
	}
}

@-webkit-keyframes hamburger-line-top {
	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}
	0% {
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
}

@keyframes hamburger-line-top {
	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}
	0% {
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
}

@-webkit-keyframes hamburger-line-middle {
	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}
	0% {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
}

@keyframes hamburger-line-middle {
	0% {
		-webkit-transform: rotate(0);
		transform: rotate(0);
	}
	0% {
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
}

[data-effect="fade-in"],
[data-effect-list="fade-in"] > *,
[data-effect="slide-up"],
[data-effect-list="slide-up"] > *,
[data-effect="slide-up-order"] > li,
[data-effect="slide-right-order"] > li,
[data-effect="slide-left"],
[data-effect-list="slide-left"] > *,
[data-effect="slide-right"],
[data-effect-list="slide-right"] > * {
	-webkit-transition: 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	-webkit-transition-property: opacity, -webkit-transform;
	opacity: 0;
	transition: 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	transition-property: opacity, -webkit-transform;
	transition-property: opacity, transform;
	transition-property: opacity, transform, -webkit-transform;
}

.is-visible[data-effect="fade-in"],
[data-effect-list="fade-in"] > .is-visible,
.is-visible[data-effect="slide-up"],
[data-effect-list="slide-up"] > .is-visible,
[data-effect="slide-up-order"] > li.is-visible,
[data-effect="slide-right-order"] > li.is-visible,
.is-visible[data-effect="slide-left"],
[data-effect-list="slide-left"] > .is-visible,
.is-visible[data-effect="slide-right"],
[data-effect-list="slide-right"] > .is-visible {
	-webkit-transform: none;
	transform: none;
	opacity: 1;
}

[data-effect="slide-up"],
[data-effect-list="slide-up"] > * {
	-webkit-transform: translateY(30px);
	transform: translateY(30px);
}

[data-effect="slide-up-order"] > li {
	-webkit-transform: translateY(30px);
	transform: translateY(30px);
}

[data-effect="slide-right-order"] > li {
	-webkit-transform: translateX(30px);
	transform: translateX(30px);
}

[data-effect="slide-left"],
[data-effect-list="slide-left"] > * {
	-webkit-transform: translateX(-30px);
	transform: translateX(-30px);
}

[data-effect="slide-right"],
[data-effect-list="slide-right"] > * {
	-webkit-transform: translateX(30px);
	transform: translateX(30px);
}

[data-effect-delay="1"] {
	-webkit-transition-delay: 0.1s !important;
	transition-delay: 0.1s !important;
}

[data-effect-delay="2"] {
	-webkit-transition-delay: 0.2s !important;
	transition-delay: 0.2s !important;
}

[data-effect-delay="3"] {
	-webkit-transition-delay: 0.3s !important;
	transition-delay: 0.3s !important;
}

[data-effect-delay="4"] {
	-webkit-transition-delay: 0.4s !important;
	transition-delay: 0.4s !important;
}

[data-effect-delay="5"] {
	-webkit-transition-delay: 0.5s !important;
	transition-delay: 0.5s !important;
}

[data-effect-delay="6"] {
	-webkit-transition-delay: 0.6s !important;
	transition-delay: 0.6s !important;
}

[data-effect-delay="7"] {
	-webkit-transition-delay: 0.7s !important;
	transition-delay: 0.7s !important;
}

[data-effect-delay="8"] {
	-webkit-transition-delay: 0.8s !important;
	transition-delay: 0.8s !important;
}

[data-effect-delay="9"] {
	-webkit-transition-delay: 0.9s !important;
	transition-delay: 0.9s !important;
}

[data-effect-delay="10"] {
	-webkit-transition-delay: 1s !important;
	transition-delay: 1s !important;
}

/* ----- pagination ----- */
.pagination {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
}

.pagination .page {
	padding: 0 7.5px;
}

.pagination .page a {
	padding: 4px 10px;
	border: 2px solid #000000;
	border-radius: 3px;
	background: #ffffff;
	color: #000000;
	font-size: 1.5rem;
	text-decoration: none;
}

.pagination .page a:hover {
	text-decoration: underline;
}

.pagination .page.is-active {
	margin: 0 7.5px;
	padding: 1.5px 10px;
	border: 2px solid #000000;
	border-radius: 3px;
	background: #000000;
	color: #ffffff;
	font-size: 1.5rem;
	text-decoration: none;
}

.pagination .arrow-button {
	display: block;
	position: relative;
	width: 18px;
	height: 18px;
}

.pagination .next .arrow-button {
	margin-left: 17.5px;
}

.pagination .next .arrow-button::after {
	-webkit-transform: translateY(-1px);
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 24px;
	height: 10px;
	margin: auto;
	transform: translateY(-1px);
	background: url(../images/icon_arrow_r_bold.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.pagination .next .arrow-button:hover::after {
	-webkit-transform: translate(5px, -1px);
	transform: translate(5px, -1px);
}

.pagination .prev .arrow-button {
	margin-right: 17.5px;
}

.pagination .prev .arrow-button::after {
	-webkit-transform: scale(-1, 1) translateY(-1px);
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 24px;
	height: 10px;
	margin: auto;
	transform: scale(-1, 1) translateY(-1px);
	background: url(../images/icon_arrow_r_bold.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

.pagination .prev .arrow-button:hover::after {
	-webkit-transform: scale(-1, 1) translate(5px, -1px);
	transform: scale(-1, 1) translate(5px, -1px);
}

/* Project style
----------------------------------------------------------- */
/* ----- panel ----- */
.panel-outline {
	margin-top: 75px;
	padding: 50px 46px;
	border: 1px solid #000000;
	border-radius: 20px;
}

.panel-outline.-square {
	border-radius: 0;
}

.panel-outline.-square.-bold {
	border-width: 5px;
}

.panel-outline.-square.-red {
	border-color: #ff0000;
	color: #ff0000;
}

.panel-outline.-square.-red p,
.panel-outline.-square.-red dl,
.panel-outline.-square.-red dt,
.panel-outline.-square.-red dd,
.panel-outline.-square.-red h1,
.panel-outline.-square.-red h2,
.panel-outline.-square.-red h3,
.panel-outline.-square.-red h4,
.panel-outline.-square.-red a,
.panel-outline.-square.-red ul,
.panel-outline.-square.-red li {
	color: #ff0000;
}

.panel-outline.-square.-dotted {
	border: dotted;
}

.panel-outline.-square.-double {
	border: double;
}

.panel-outline.-square.-double-bold {
	position: relative;
	border-width: 3px;
}

.panel-outline.-square.-double-bold.-red::before {
	border: 1px solid #ff0000;
}

.panel-outline.-square.-double-bold::before {
	-webkit-transform: translate(-50%, -50%);
	position: absolute;
	top: 50%;
	left: 50%;
	width: 99.5%;
	min-height: 99.5%;
	transform: translate(-50%, -50%);
	border: 1px solid #000000;
	content: "";
}

.panel-outline:first-child {
	margin-top: 0;
}

.panel-outline.-sm {
	padding: 20px;
}

.panel-outline.-sm ul:not(:first-child) {
	margin-top: 10px;
}

.panel-outline.-sm ul:not(:last-child) {
	margin-bottom: 10px;
}

.panel-outline.-sm ul > li + li {
	margin-top: 5px;
}

.panel-outline-title {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 50px;
	color: #000000;
	font-size: 2.1rem;
	font-weight: 700;
	text-align: center;
}

.panel-outline-title::before,
.panel-outline-title::after {
	display: inline-block;
	width: 55px;
	border-top: 1px solid;
	content: "";
}

.panel-outline.-sm .panel-outline-title {
	margin-bottom: 20px;
}

.panel-outline-title > span {
	padding: 0 1em;
}

.panel-outline .panel-outline-link-text {
	margin: 2.5em 0;
	text-align: center;
}

.panel-outline.-bookstore {
	padding: 20px 46px 30px;
}

.panel-outline.-bookstore .panel-outline-title {
	margin-bottom: 0;
}

.panel-outline.-bookstore .text-block {
	margin-top: 30px;
}

/* ----- article ----- */
.article {
	padding: 45px 0 70px;
	padding: 55px 0 80px;
	background: -webkit-gradient(linear, left top, left bottom, from(#eff1f4), to(#e1e6ea)) no-repeat;
	background: linear-gradient(180deg, #eff1f4, #e1e6ea) no-repeat;
	font-size: 1.6rem;
}

.article img {
	height: auto;
}

.article-inner {
	width: 100%;
	max-width: 954px;
	margin: 0 auto;
	padding: 0 70px;
}

.article-panel {
	padding: 30px 70px 50px;
	border-radius: 30px;
	/* background-color: #ffffff; */
}

.article-header h1 {
	margin-bottom: 0.5em;
}

.article-header > p {
	margin-top: 1em;
}

.article-header > p:first-child {
	margin-top: 0;
}

.article-body {
	margin-top: 50px;
}

.article-body h2 + p,
.article-body h2 + figure,
.article-body h2 + ul,
.article-body h3 + p,
.article-body h3 + figure,
.article-body h3 + ul {
	margin-top: 0;
}

.article-body .heading-lv2,
.article-body .article-post h2,
.article-post .article-body h2 {
	margin-bottom: 1em;
}

.article-body > p,
.article-body > figure,
.article-body > ul {
	margin: 1.5em 0;
}

.article-body > p:first-child,
.article-body > figure:first-child,
.article-body > ul:first-child {
	margin-top: 0;
}

.article-body > p:last-child,
.article-body > figure:last-child,
.article-body > ul:last-child {
	margin-bottom: 0;
}

.article-body .text-note {
	margin: 0.75em 0;
}

.article-body figure {
	text-align: center;
}

.article-body .hashtag-list {
	margin-top: 50px;
}

.article-category {
	margin-bottom: 0.75em;
	color: #888888;
	font-size: 2.1rem;
	letter-spacing: 0.05em;
}

.article-category > a {
	color: #888888;
}

.article-date {
	font-size: 1.4rem;
}

.article-tags {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}

.article-tags > li {
	margin-right: 1em;
}

.article-tags > li.-pdf {
	margin-left: auto;
}

.article-tags .link-text[href$=".pdf"]:after,
.article-tags .link-list-title a[href$=".pdf"]:after,
.link-list-title .article-tags a[href$=".pdf"]:after,
.article-tags .link-list > li > a[href$=".pdf"]:after {
	padding-left: 26px;
	background-size: auto 32px;
	line-height: 1.25;
	text-indent: 0.5em;
	white-space: pre;
	content: "PDF\a("attr(data-file-capacity) "KB)";
}

.article-post > p,
.article-post > figure {
	margin: 1.5em 0;
}

.article-post > p:first-child,
.article-post > figure:first-child {
	margin-top: 0;
}

.article-post > p:last-child,
.article-post > figure:last-child {
	margin-bottom: 0;
}

.article-post small {
	display: block;
	margin-top: 1em;
	font-size: 1.3rem;
}

.article-post small:first-child {
	margin-top: 0;
}

.article-figure {
	position: relative;
	margin: 50px 0;
	text-align: center;
}

.article-figure:first-child,
h2 + .article-figure,
h3 + .article-figure {
	margin-top: 0;
}

.article-figure:last-child {
	margin-bottom: 0;
}

.article-figure figure {
	display: inline-block;
}

.article-figure figure img {
	height: auto;
}

.article-figure figcaption {
	margin: 0.75em 0;
	text-align: left;
}

.article-figure figcaption:first-child {
	margin-top: 0;
}

.article-figure figcaption:last-child {
	margin-bottom: 0;
}

.news .article-post h2:first-child {
	font-size: 2.4rem;
}

/* ----- toggle ----- */
.toggle-box {
	margin: 40px 0;
	padding: 27px 80px 26px;
	border-radius: 10px;
	background-color: #f3f5f7;
	font-size: 1.6rem;
}

.toggle-box:first-child {
	margin: 0;
}

.toggle-box:last-child {
	margin-bottom: 0;
}

.toggle-box + .toggle-box {
	margin-top: 30px;
}

.toggle-box.-light {
	background-color: #ffffff;
}

.toggle-box-header {
	position: relative;
	padding-right: 16px;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.5;
	cursor: pointer;
}

.toggle-box-body {
	padding-bottom: 25px;
}

.toggle-box-body.-nenpyo {
	display: none;
}

.toggle-box-content {
	margin-top: 25px;
}

.toggle-box-content ul,
.toggle-box-content ol {
	margin: 30px 0;
}

.toggle-box-icon {
	position: absolute;
	top: 0;
	right: -43px;
	bottom: 0;
	width: 30px;
	height: 30px;
	margin: auto;
	border: 1px solid #000000;
}

.toggle-box-icon::before,
.toggle-box-icon::after {
	-webkit-transition: 200ms ease-in-out;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 15px;
	height: 1px;
	margin: auto;
	background-color: #000000;
	content: "";
	transition: 200ms ease-in-out;
}

.toggle-box-icon::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

.is-opened .toggle-box-icon::after {
	-webkit-transform: rotate(0);
	transform: rotate(0);
	opacity: 0;
}

.toggle-panel {
	padding: 50px 80px;
	border-radius: 10px;
	background-color: #f3f5f7;
	font-size: 1.6rem;
}

.toggle-panel.-light {
	background-color: #ffffff;
}

.toggle-panel-section {
	position: relative;
}

.toggle-panel-section + .toggle-panel-section:not(.is-first) {
	margin-top: 50px;
	padding-top: 50px;
}

.toggle-panel-section + .toggle-panel-section:not(.is-first)::before {
	position: absolute;
	top: 0;
	right: -40px;
	left: -40px;
	height: 1px;
	margin: auto;
	background-color: #d8d8d8;
	content: "";
}

.toggle-panel-title {
	margin: 2em 0 1em;
	font-size: 1.8rem;
	font-weight: 500;
}

.toggle-panel-title:first-child {
	margin-top: 0;
}

.toggle-panel-title:last-child {
	margin-bottom: 0;
}

.toggle-panel .toggle-box {
	margin: 26px 0;
	padding: 0;
	background-color: transparent;
}

.toggle-panel .toggle-box-header {
	text-align: right;
}

.toggle-panel .toggle-box-body {
	padding-bottom: 0;
}

/* ----- modal ----- */
.modal-button {
	-webkit-transform: translateY(0);
	-webkit-transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-box-shadow: -5px -5px 10px #ffffff, 2px 2px 10px rgba(0, 0, 0, 0.31);
	display: block;
	width: 50px;
	height: 50px;
	padding: 0;
	transform: translateY(0);
	border-radius: 50%;
	background: linear-gradient(-40deg, #eff1f4, #e1e6ea) no-repeat;
	box-shadow: -5px -5px 10px #ffffff, 2px 2px 10px rgba(0, 0, 0, 0.31);
	cursor: pointer;
	transition: all 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.modal-button:hover {
	-webkit-box-shadow: -2px -2px 5px #ffffff, 1px 1px 5px rgba(0, 0, 0, 0.31);
	box-shadow: -2px -2px 5px #ffffff, 1px 1px 5px rgba(0, 0, 0, 0.31);
}

.modal-button:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.modal-button::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 20px;
	height: 20px;
	margin: auto;
	background: url(../images/icon_search_plus.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

[data-modal-src] {
	display: block;
	position: relative;
	cursor: pointer;
}

.modal {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-transition: 0.2s ease-in-out 0.2s;
	-webkit-transition-property: opacity, visibility;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	visibility: hidden;
	z-index: 15;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 80px 30px 40px;
	overflow-y: auto;
	background-color: rgba(0, 0, 0, 0.8);
	text-align: center;
	opacity: 0;
	transition: 0.2s ease-in-out 0.2s;
	transition-property: opacity, visibility;
}

.modal.is-show {
	-webkit-transition-delay: 0s;
	visibility: visible;
	opacity: 1;
	transition-delay: 0s;
}

.modal-pict,
.modal-movie {
	-webkit-transform: translateY(-50%);
	-webkit-transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
	-webkit-transition-property: opacity, -webkit-transform;
	width: 100%;
	max-width: 1246px;
	margin: 0 auto;
	overflow-y: auto;
	transform: translateY(-50%);
	text-align: center;
	opacity: 0;
	transition: 0.5s cubic-bezier(0.19, 1, 0.22, 1);
	transition-property: opacity, -webkit-transform;
	transition-property: opacity, transform;
	transition-property: opacity, transform, -webkit-transform;
}

.modal-pict.is-active,
.modal-movie.is-active {
	-webkit-transform: translateY(0);
	-webkit-transition-delay: 0.4s;
	transform: translateY(0);
	opacity: 1;
	transition-delay: 0.4s;
}

.modal-movie {
	width: 100%;
	max-width: 940px;
}

.modal-movie .movie-wrap {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	text-align: left;
}

.modal-movie .movie-wrap .movie {
	z-index: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.modal-close-button {
	-webkit-transform: rotate(45deg);
	z-index: 1;
	position: absolute;
	top: 15px;
	right: 30px;
	width: 52px;
	height: 52px;
	transform: rotate(45deg);
	cursor: pointer;
}

.modal-close-button::before,
.modal-close-button::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 5px;
	margin: auto;
	border-radius: 20px;
	background-color: #ffffff;
	content: "";
}

.modal-close-button::after {
	-webkit-transform: rotate(90deg);
	transform: rotate(90deg);
}

/* ----- carousel ----- */
.carousel-visual {
	margin: 46px 0;
}

.carousel-visual:first-child {
	margin-top: 0;
}

.carousel-visual:last-child {
	margin-bottom: 0;
}

.carousel-visual-item {
	position: relative;
}

.carousel-visual-item img {
	width: 100%;
}

.carousel-visual-dots {
	-ms-flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	right: 0;
	bottom: 25px;
	left: 0;
	flex-wrap: wrap;
	justify-content: center;
}
.js-carousel-visual.-dx .carousel-visual-dots {
	display: none !important;
}
.carousel-visual-dots > li {
	line-height: 1;
}

.carousel-visual-dots > li button {
	display: block;
	position: relative;
	width: 24px;
	height: 24px;
	text-indent: -9999px;
}

.carousel-visual-dots > li button::before {
	position: absolute;
	top: 5px;
	right: 5px;
	bottom: 5px;
	left: 5px;
	margin: auto;
	border-radius: 50%;
	background-color: #cccccc;
	content: "";
}

.carousel-visual-dots > li.slick-active button::before {
	background-color: #666666;
}

.carousel-visual-arrow {
	-webkit-transform: rotate(45deg);
	z-index: 2;
	position: absolute;
	top: 0;
	bottom: 0;
	width: 51px;
	height: 51px;
	margin: auto;
	transform: rotate(45deg);
	border: 1px solid #000000;
}

.carousel-visual-arrow.-prev {
	left: 28px;
	border-width: 0 0 1px 1px;
}

.carousel-visual-arrow.-next {
	right: 28px;
	border-width: 1px 1px 0 0;
}

/* ----- 関連コンテンツ----- */
.relation-content {
	position: relative;
}

.relation-content + .relation-content {
	margin-top: 100px;
	padding-top: 70px;
}

.relation-content + .relation-content::before {
	-webkit-transform: translateX(-50%);
	position: absolute;
	top: 0;
	left: 50%;
	width: 1252px;
	transform: translateX(-50%);
	border-top: 1px solid #000000;
	content: "";
}

.relation {
	padding: 70px 0;
	background-color: #e9ecef;
}

/* ----- お問い合わせ----- */
.contact-list {
	margin: 40px auto;
	font-size: 1.6rem;
	text-align: left;
}

.contact-list:first-child {
	margin-top: 0;
}

.contact-list:last-child {
	margin-bottom: 0;
}

.contact-list-head {
	padding-right: 1em;
	font-weight: 700;
}

.contact-list-body {
	width: 100%;
	max-width: 300px;
}

.contact-panel {
	padding: 70px;
	background-color: #ffffff;
}

.contact {
	padding: 70px 0;
	background-color: #ffffff;
	background-size: cover;
	text-align: center;
}

.contact + .contact {
	margin-top: 90px;
}

.contact[class*="bg-base"] {
	padding-top: 60px;
	padding-bottom: 60px;
}

.contact-lead-block {
	margin-top: 70px;
	font-size: 2.1rem;
}

.contact-lead-block > p {
	margin-top: 1em;
}

.contact-button-block {
	margin-top: 70px;
}

/* ----- グループ会社一覧----- */
.group-list {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin: -15px -26px;
}

.group-list-item {
	width: 33.33333%;
	min-height: 95px;
	padding: 15px 26px;
}

.group-list-item a {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-shadow: -5px -5px 10px #ffffff, 5px 5px 10px rgba(0, 0, 0, 0.16);
	-webkit-transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding: 16px;
	border-radius: 15px;
	background-color: #eaeaea;
	box-shadow: -5px -5px 10px #ffffff, 5px 5px 10px rgba(0, 0, 0, 0.16);
	text-align: center;
	transition: -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
	transition: box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1), -webkit-box-shadow 0.4s cubic-bezier(0.19, 1, 0.22, 1);
}

.group-list-item a[target="_blank"] {
	position: relative;
}

.group-list-item a[target="_blank"]::after {
	position: absolute;
	right: 18px;
	bottom: 9px;
	width: 15px;
	height: 15px;
	background: url(../images/icon_blank.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

.group-list-item a:hover {
	-webkit-box-shadow: -2px -2px 5px #ffffff, 2px 2px 5px rgba(0, 0, 0, 0.16);
	box-shadow: -2px -2px 5px #ffffff, 2px 2px 5px rgba(0, 0, 0, 0.16);
}

.group-list-item a:active {
	-webkit-box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	outline: none;
	box-shadow: -1px -1px 1px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
}

.group-list-item a img {
	max-height: 32px;
}

.group {
	padding: 56px 0 86px;
	background-color: #f2f2f2;
}

/* ----- フリーユニット----- */
.unit-case {
	overflow: hidden;
	background-color: #e9ecef;
}

.unit-case .box {
	position: relative;
}

.unit-case .box-pict {
	margin-bottom: 0;
}

.unit-case .box-pict img {
	width: 100%;
}

.unit-iframe {
	position: relative;
}

.unit-iframe-button {
	z-index: 1;
	position: absolute;
	right: 0;
	bottom: 70px;
	left: 0;
	margin: 0 auto;
	text-align: center;
}

.unit-message {
	margin: 0 auto;
	text-align: center;
}

.unit-message-heading {
	margin: 20px 0;
	font-size: 2.6rem;
	font-weight: 700;
	letter-spacing: 0.1em;
	line-height: 2.15385;
}

.unit-message-title {
	font-size: 1.6rem;
}

/* ----- 検索結果ページ----- */
.search-control {
	margin-bottom: 75px;
}

.search-control-filtering {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.search-control-filtering-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding-left: 25px;
}

.search-control-filtering-item > [data-sitesearch] {
	width: 100%;
}

body.search ._popfind_sitesearch ._searchstatus {
	margin: 0;
}

body.search ._popfind_sitesearch ._countselector,
body.search ._popfind_sitesearch ._sortorderselector,
body.search ._popfind_sitesearch ._attributegroup {
	margin: 0;
	padding: 0;
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._group {
	margin-bottom: 1em;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.2;
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin: -6px;
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute {
	margin: 6px;
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute input {
	clip: rect(0 0 0 0);
	-webkit-clip-path: inset(50%);
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	border: 0;
	white-space: nowrap;
	clip-path: inset(50%);
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute input:focus + ._label {
	background-color: #bbbbbb;
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute ._label {
	-webkit-transition: 0.15s ease-in-out;
	-webkit-transition-property: color, background-color;
	display: inline-block;
	padding: 3px 11px;
	border-radius: 12px;
	background-color: #ffffff;
	font-weight: 500;
	line-height: 1.2;
	text-align: center;
	transition: 0.15s ease-in-out;
	transition-property: color, background-color;
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute ._count {
	display: none;
	margin-left: 8px;
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute._select ._label {
	background-color: #000000;
	color: #ffffff;
}

body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute._disable {
	opacity: 0.6;
}

body.search ._popfind_sitesearch .search-control ._countselector ._label,
body.search ._popfind_sitesearch .search-control ._countselector ._group,
body.search ._popfind_sitesearch .search-control ._sortorderselector ._label,
body.search ._popfind_sitesearch .search-control ._sortorderselector ._group,
body.search ._popfind_sitesearch .search-control ._attributegroup ._label,
body.search ._popfind_sitesearch .search-control ._attributegroup ._group {
	font-size: 1.6rem;
	font-weight: 400;
}

body.search ._popfind_sitesearch .search-control ._countselector select,
body.search ._popfind_sitesearch .search-control ._sortorderselector select,
body.search ._popfind_sitesearch .search-control ._attributegroup select {
	display: block;
	width: 110px;
	height: 40px;
	padding: 5px 20px 4px;
	overflow: hidden;
	border: 1px solid #000000;
	border-radius: 4px;
	background: url(../images/icon-chevron-down.svg) no-repeat right 12px top 50%;
	background-color: #ffffff;
	line-height: 1;
	text-align: center;
	text-align: -webkit-center;
	text-overflow: ellipsis;
	white-space: nowrap;
}

body.search ._popfind_sitesearch ._items ._item {
	margin-bottom: 30px;
	padding: 0 0 25px;
	border-bottom: 1px solid #d8d8d8;
}

body.search ._popfind_sitesearch ._items ._item:last-child {
	margin-bottom: 0;
}

body.search ._popfind_sitesearch ._items ._item ._wrap {
	width: auto;
}

body.search ._popfind_sitesearch ._items ._item ._wrap::after {
	display: block;
	clear: both;
	content: "";
}

body.search ._popfind_sitesearch ._items ._item ._wrap *[class^="_"] {
	padding: 0;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._layoutgroup1 {
	width: 228px;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail {
	padding: 0;
	overflow: hidden;
	border-radius: 15px;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail::before,
body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail::after {
	content: none;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail a {
	position: relative;
	padding-top: 128px;
	overflow: hidden;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail a img {
	-o-object-fit: cover;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	object-fit: cover;
	font-family: "object-fit: cover;";
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail a::before {
	content: none;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail img {
	border: 0;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._title {
	margin-bottom: 0.75em;
	font-size: 1.6rem;
	line-height: 1.4;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._snippet {
	margin-bottom: 1em;
}

body.search ._popfind_sitesearch ._items ._item ._wrap ._link {
	margin-top: 1.5em;
	font-size: 1.3rem;
}

body.search ._attributes {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}

body.search ._pagenator {
	-ms-flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
}

body.search ._button {
	display: block;
	position: relative;
	width: 18px;
	height: 18px;
}

body.search ._next ._button {
	margin-left: 10px;
}

body.search ._next ._button::after {
	-webkit-transform: translateY(-1px);
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 24px;
	height: 10px;
	margin: auto;
	transform: translateY(-1px);
	background: url(../images/icon_arrow_r_bold.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

body.search ._next ._button:hover::after {
	-webkit-transform: translate(5px, -1px);
	transform: translate(5px, -1px);
}

body.search ._prev ._button {
	margin-right: 10px;
}

body.search ._prev ._button::after {
	-webkit-transform: translateY(-1px);
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 24px;
	height: 10px;
	margin: auto;
	transform: scale(-1, 1) translateY(-1px);
	background: url(../images/icon_arrow_r_bold.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

body.search ._prev ._button:hover::after {
	-webkit-transform: scale(-1, 1) translate(5px, -1px);
	transform: scale(-1, 1) translate(5px, -1px);
}

body.search ._first ._button {
	margin-right: 10px;
}

body.search ._first ._button::after {
	-webkit-transform: translateY(-1px);
	-webkit-transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 24px;
	height: 10px;
	margin: auto;
	transform: scale(-1, 1) translateY(-1px);
	background: url(../images/icon_arrow_r_bold.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
	transition: 0.2s cubic-bezier(0.075, 0.82, 0.165, 1);
}

body.search ._first ._button:hover::after {
	-webkit-transform: scale(-1, 1) translate(5px, -1px);
	transform: scale(-1, 1) translate(5px, -1px);
}

body.search ._popfind_sitesearch ._pagenator {
	margin: 56px 0 0;
	padding: 0;
}

body.search ._popfind_sitesearch ._pagenator ._nav._page {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	min-width: 40px;
	min-height: 40px;
	margin: 0 7.5px;
	padding: 0;
	border: 2px solid #000000;
	border-radius: 3px;
}

body.search ._popfind_sitesearch ._pagenator ._nav._page a {
	-ms-flex-item-align: stretch;
	display: block;
	align-self: stretch;
	width: 100%;
	padding: 4px;
	border-radius: 3px;
	background: #ffffff;
	color: #000000;
	font-size: 1.5rem;
	text-decoration: none;
}

body.search ._popfind_sitesearch ._pagenator ._nav._page._current {
	margin: 0 7.5px;
	padding: 4px;
	background: #000000;
	color: #ffffff;
	font-size: 1.5rem;
	text-decoration: none;
}

body.search ._popfind_sitesearch ._pagenator ._nav {
	-webkit-box-flex: 0;
	-ms-flex: none;
	flex: none;
}

body.search ._popfind_sitesearch ._pagenator ._nav ._button {
	display: block;
	position: relative;
	width: 24px;
	height: 100%;
	padding: 0;
	border-bottom: none;
	border-radius: 5px;
	background: none;
	background-color: transparent;
}

body.search ._popfind_sitesearch ._pagenator ._nav._prev,
body.search ._popfind_sitesearch ._pagenator ._nav._next {
	text-indent: -9999px;
}

body.search ._popfind_sitesearch ._pagenator ._nav._first {
	display: none;
}

/* Page style
----------------------------------------------------------- */
/* ----- Home ----- */
.home-content {
	padding: 70px 0;
}

.home-content-heading {
	margin-bottom: 45px;
	font-size: 4.5rem;
	font-size: 4.4rem;
	font-size: 3.2rem;
	font-weight: 700;
	/* line-height: 1.4; */
	text-align: center;
}

.home-content-heading-sub {
	display: block;
	font-size: 0.7em;
	font-size: 0.44em;
	line-height: 1;
	line-height: 1.4;
}

.home-content-lead {
	margin-bottom: 30px;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 2;
	text-align: center;
}

.home-mainvisual {
	text-align: center;
	position: relative;
}

.home-mainvisual-item {
	position: relative;
	width: 100%;
	overflow: hidden;
	color: #ffffff;
}

.home-mainvisual-item::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 158px;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.42)));
	background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.42));
	content: "";
}
.home-mainvisual-item.-ad::after,
.home-mainvisual-item.-dx::after {
	content: none;
}

.home-mainvisual-pict {
	position: relative;
}

.home-mainvisual-pict img {
	-o-object-fit: cover;
	display: block;
	width: 100%;
	height: 51.0981%;
	min-height: 500px;
	object-fit: cover;
}

.home-mainvisual-button {
	z-index: 1;
	position: absolute;
	right: 0;
	top: 84%;
	left: 0;
	margin: 0 auto;
	text-align: center;
}
.home-mainvisual-button.-dx {
	top: 88.5%;
}

.home-mainvisual-button a {
	min-width: 260px;
}

.home-mainvisual-button.-dx a {
	min-width: 260px;
	min-height: 42px;
	border-radius: 0px;
	border: 2px solid #fff;
}

.home-company {
	background-color: #ffffff;
	text-align: center;
}

.home-company-lead {
	font-size: 3.2rem;
	font-weight: 700;
	text-align: center;
}

.home-company .button-block {
	margin-top: 75px;
}

.home-service {
	padding: 45px 0 75px;
	background-color: #f7f7f7;
	text-align: center;
}

.home-service-pict {
	position: relative;
	margin: 30px 0 40px;
	text-align: center;
}

.home-service-link > li {
	position: absolute;
	width: 200px;
	height: 140px;
	margin: auto;
}

.home-service-link > li a {
	display: block;
	width: 100%;
	height: 100%;
}

.home-service-link > li.ax {
	top: -2%;
	right: 2%;
	left: 0;
}

.home-service-link > li.bx {
	top: 0;
	right: 0;
	bottom: 0;
	left: -42%;
}

.home-service-link > li.cx {
	right: 2%;
	bottom: -2%;
	left: 0;
}

.home-service-link > li.dx {
	top: 0;
	right: -39%;
	bottom: 0;
	left: 0;
}

.home-service .button-block {
	margin-top: 40px;
}

.home-topics {
	padding-top: 40px;
}

.home-topics .slider-arrows {
	margin: 70px 0 40px;
}

.home-topics-list-main-item {
	margin-top: 50px;
}

.home-topics-list-main-item [target="_blank"] .card-heading::after {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 0.3em;
	background: url(../images/icon_blank.svg) no-repeat 50% 50%;
	background-size: contain;
	content: "";
}

.home-topics-list-main-item:first-child {
	margin-top: 0;
}

.home-topics-list-sub {
	margin: 60px -5px -1px;
}

.slider-arrows + .home-topics-list-sub {
	margin-top: 0;
}

.home-topics-list-sub + .home-topics-list-sub {
	margin-top: 50px;
}

.home-topics-list-sub-item .card {
	padding: 20px 24px 25px;
}

.home-topics-list-sub-item .card-pict {
	margin-bottom: 10px;
}

.home-topics-list-sub-item .card-description {
	-webkit-line-clamp: 2;
}

.home-topics-list-sub[data-slider-link] {
	display: block;
}

.home-topics-list-sub .slick-list {
	overflow: visible;
}

.home-filtering-header-row {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	margin-bottom: 40px;
}

.home-filtering-lead {
	margin-bottom: 1em;
	color: #888888;
}

.home-filtering-title {
	-ms-flex-negative: 0;
	position: relative;
	flex-shrink: 0;
	padding: 0 2em 4px 0;
	color: #888888;
	font-size: 2.6rem;
	font-weight: 700;
}

.home-filtering-title::before,
.home-filtering-title::after {
	position: absolute;
	top: 0;
	right: 0.5em;
	bottom: 0;
	width: 1em;
	height: 1px;
	margin: auto 0;
	border-radius: 3px;
	background-color: #000000;
	content: "";
}

.home-filtering-title::before {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.home-filtering-title::after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.home-filtering-box {
	width: 380px;
}

.home-filtering-box .filtering-label {
	font-size: 2rem;
	font-weight: 700;
}

/* ----- Our Capabilities ----- */
.capabilities-inner {
	max-width: 1050px;
}

.content-inner .capabilities-inner {
	max-width: 1030px;
	margin: 0 auto;
}

.capabilities .lgp-bg {
	padding: 45px 20px 55px;
	background: rgba(255, 255, 255, 0.5);
}

.capabilities .lgp-bg .capabilities-about-lead p {
	font-size: 2.3rem;
}

.capabilities .heading-lgp {
	margin: 0 0 1em;
	font-size: 3rem;
}

.capabilities-bg {
	padding: 30px 0 70px;
	background-color: #e6eaee;
}

.capabilities-business-card-title-en,
.capabilities-section-category-en,
.capabilities-tab .tab-button > em {
	-webkit-text-fill-color: transparent;
	-webkit-background-clip: text;
	display: block;
	font-weight: 700;
	line-height: 1;
}

.capabilities-business-card-title-en > span,
.capabilities-section-category-en > span,
.capabilities-tab .tab-button > em > span {
	display: block;
	margin-top: 6px;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.2;
}

[data-capabilities-category="ax"] .capabilities-business-card-title-en,
[data-capabilities-category="ax"] .capabilities-section-category-en,
[data-capabilities-category="ax"] .capabilities-tab .tab-button > em,
.capabilities-tab [data-capabilities-category="ax"] .tab-button > em {
	background-image: -webkit-gradient(linear, left top, right top, from(#3de1ff), to(#02c5ff));
	background-image: linear-gradient(90deg, #3de1ff, #02c5ff);
	color: #3de1ff;
}

[data-capabilities-category="bx"] .capabilities-business-card-title-en,
[data-capabilities-category="bx"] .capabilities-section-category-en,
[data-capabilities-category="bx"] .capabilities-tab .tab-button > em,
.capabilities-tab [data-capabilities-category="bx"] .tab-button > em {
	background-image: -webkit-gradient(linear, left top, right top, from(#ed1690), to(#ed1654));
	background-image: linear-gradient(90deg, #ed1690, #ed1654);
	color: #ed1690;
}

[data-capabilities-category="cx"] .capabilities-business-card-title-en,
[data-capabilities-category="cx"] .capabilities-section-category-en,
[data-capabilities-category="cx"] .capabilities-tab .tab-button > em,
.capabilities-tab [data-capabilities-category="cx"] .tab-button > em {
	background-image: -webkit-gradient(linear, left top, right top, from(#1963b0), to(#5019b0));
	background-image: linear-gradient(90deg, #1963b0, #5019b0);
	color: #1963b0;
}

[data-capabilities-category="dx"] .capabilities-business-card-title-en,
[data-capabilities-category="dx"] .capabilities-section-category-en,
[data-capabilities-category="dx"] .capabilities-tab .tab-button > em,
.capabilities-tab [data-capabilities-category="dx"] .tab-button > em {
	background-image: -webkit-gradient(linear, left top, right top, from(#ff9d00), to(#ff853b));
	background-image: linear-gradient(90deg, #ff9d00, #ff853b);
	color: #ff9d00;
}

.capabilities-about {
	position: relative;
	padding: 90px 0 70px;
	text-align: center;
}

.capabilities-about-title {
	margin-bottom: 70px;
}

.capabilities-about-title > img {
	width: 460px;
}

.capabilities-about-lead {
	max-width: 854px;
	margin: 0 auto;
	font-weight: 700;
	text-align: left;
}

.capabilities-about .button-block {
	margin-top: 90px;
}

.capabilities-business-cards {
	-ms-flex-wrap: wrap;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}

.capabilities-business-cards .capabilities-business-card {
	width: calc((100% - 30px * 3) / 4);
	margin-left: 30px;
}

.capabilities-business-cards .capabilities-business-card:nth-child(4n + 1) {
	margin-left: 0;
}

.capabilities-business-cards .capabilities-business-card:nth-child(n + 5) {
	margin-top: 30px;
}

.capabilities-business-card {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	padding: 24px 8px 40px;
	border-radius: 20px;
	background-color: #ffffff;
	line-height: 1.375;
	text-align: center;
}

.capabilities-business-card-title {
	margin-bottom: 22px;
	margin-bottom: 0;
	font-size: 1.6rem;
	font-weight: 700;
}

.capabilities-business-card-title-en {
	display: block;
	margin-bottom: 16px;
	font-size: 7.1rem;
}

.capabilities-business-card-title-en > span {
	min-height: 2.4em;
}

.capabilities-business-card-text {
	margin-top: auto;
}

.capabilities-business-lead {
	max-width: 800px;
	margin: 40px auto 0;
}

.capabilities-model {
	padding: 70px 0 60px;
	background: radial-gradient(#1a1a3b, #000000 79.26829%, #03061b);
	color: #ffffff;
	text-align: center;
}

.capabilities-model-figure {
	z-index: 1;
	position: relative;
	max-width: 896px;
	margin: 0 auto;
}

.capabilities-model-figure-bg img {
	width: 100%;
}

.capabilities-model-figure-item {
	position: absolute;
	width: 250px;
	width: min(27.29258vw, 250px);
	height: 250px;
	height: min(27.29258vw, 250px);
	padding: 10px;
	padding: min(1.0917vw, 10px);
	overflow: hidden;
	border-radius: 50%;
	line-height: 1.5625;
}

.capabilities-model-figure-item::before {
	-webkit-box-shadow: 0 3px 6px #000000 inset;
	-webkit-backdrop-filter: blur(33px) brightness(19%);
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	border-radius: 50%;
	backdrop-filter: blur(33px) brightness(19%);
	background: url(../images/capabilities_model_bg.png) no-repeat 50% 50%;
	box-shadow: 0 3px 6px #000000 inset;
	mix-blend-mode: multiply;
	content: "";
	opacity: 0.2;
}

.capabilities-model-figure-item[data-capabilities-category="ax"] {
	top: 27.8777%;
	right: 0;
}

.capabilities-model-figure-item[data-capabilities-category="bx"] {
	top: 27.8777%;
	left: 0;
}

.capabilities-model-figure-item[data-capabilities-category="cx"] {
	top: 0;
	right: 34.26339%;
}

.capabilities-model-figure-item[data-capabilities-category="dx"] {
	right: 34.26339%;
	bottom: 0;
}

.capabilities-model-figure-item .capabilities-title-en {
	margin-bottom: 16px;
	margin-bottom: min(1.74672vw, 16px);
	font-size: 6rem;
	font-size: min(6.55022vw, 60px);
}

.capabilities-model-figure-item .capabilities-title-en > span {
	font-size: min(1.63755vw, 15px);
}

.capabilities-model-figure-inner {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	border-radius: 50%;
	background-color: #ffffff;
	color: #000000;
}

.capabilities-model-figure-text {
	font-weight: 700;
}

.capabilities-section {
	padding: 70px 0;
}

.capabilities-section-category {
	-webkit-box-align: center;
	-ms-flex-align: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
	margin-bottom: 30px;
	font-size: 2.1rem;
	font-weight: 700;
	line-height: 1.2381;
}

.capabilities-section-category-en {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	margin-right: 20px;
	font-size: 6rem;
}

.capabilities-section-heading {
	margin-bottom: 20px;
	font-size: 3rem;
	font-weight: 700;
}

.capabilities-tab .tab-button {
	color: rgba(0, 0, 0, 0.5);
	line-height: 1.33333;
	opacity: 1;
}

.capabilities-tab .tab-button > em {
	margin-bottom: 12px;
	font-size: 6rem;
}

.capabilities-tab .tab-button-list {
	max-width: 1016px;
}

.capabilities-tab .tab-button-list-item {
	margin: 0 -7px;
}

.capabilities-tab .tab-button-list-item:not(.is-active) .tab-button > em {
	-webkit-text-fill-color: rgba(0, 0, 0, 0.5);
	background-image: none;
	color: rgba(0, 0, 0, 0.5);
}

.capabilities-article {
	position: relative;
	margin-top: 50px;
	line-height: 1.86667;
}

.capabilities-article::after {
	display: block;
	clear: both;
	content: "";
}

.capabilities-article + .capabilities-article {
	margin-top: 70px;
}

.capabilities-article-heading {
	margin-bottom: 20px;
	font-size: 2.1rem;
	font-weight: 700;
	line-height: 1.42857;
}

.capabilities-article-text > p {
	margin: 1em 0;
}

.capabilities-article-text > p:first-child {
	margin-top: 0;
}

.capabilities-article-text > p:last-child {
	margin-bottom: 0;
}

.capabilities-article-profile {
	margin-top: 20px;
}

.capabilities-article-profile-name {
	margin-bottom: 8px;
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.5625;
}

.capabilities-article-button {
	padding-top: 30px;
}

.capabilities-article-button > a {
	min-width: 260px;
}

.capabilities-article-avatar {
	width: 27.28155%;
	overflow: hidden;
	border-radius: 20px;
}

.capabilities-article-avatar img {
	width: 100%;
}

.-capabilities .box-pict .name-area {
	margin-top: 5px;
	text-align: center;
}

.-capabilities .box-pict .name-area .text-name {
	display: inline-block;
	text-align: left;
}

.-capabilities .box-pict .name-area .text-name .name {
	font-weight: bold;
}

.-capabilities .box-pict .name-area .text-name .division {
	font-size: 1.4rem;
}

.box-content.-ie {
	width: 100%;
}

/* Utility style
----------------------------------------------------------- */
/* clearfix */
.clearfix::after {
	display: block;
	clear: both;
	content: "";
}

.clear-both {
	clear: both !important;
}

/* color */
.fc-base {
	color: #000000 !important;
}

.fc-white {
	color: #ffffff !important;
}

.fc-attention {
	color: #ff0000 !important;
}

/* background-color */
.bg-white {
	background-color: #ffffff !important;
}

.bg-base {
	background-color: #f3f5f7 !important;
}

.bg-base-dark {
	background-color: #e9ecef !important;
}

.bg-base-gradient {
	background: -webkit-gradient(linear, left top, left bottom, from(#eff1f4), to(#e1e6ea)) no-repeat !important;
	background: linear-gradient(180deg, #eff1f4, #e1e6ea) no-repeat !important;
}

.bg-dark {
	background-color: #26262c !important;
}

/* border-color */
.no-border {
	border: none !important;
}

.ftSmall {
	font-size: 1.4rem;
}

/* float */
.fl-left {
	float: left !important;
}

.fl-right {
	float: right !important;
}

.fl-none {
	float: none !important;
}

/* font-weight */
.fw-300 {
	font-weight: 300 !important;
}

.fw-400 {
	font-weight: 400 !important;
}

.fw-500 {
	font-weight: 500 !important;
}

.fw-700 {
	font-weight: 700 !important;
}

.fw-normal {
	font-weight: normal !important;
}

.fw-bold {
	font-weight: bold !important;
}

/* font-size */
.fs-sm {
	font-size: 1.3rem !important;
}

.fs-md {
	font-size: 1.5rem !important;
}

.fs-lg {
	font-size: 1.6rem !important;
}

.fs-12 {
	font-size: 1.2rem !important;
}

.fs-18 {
	font-size: 1.8rem !important;
}

.fs-24 {
	font-size: 2.4rem !important;
}

.fs-30 {
	font-size: 3rem !important;
}

.fs-36 {
	font-size: 3.6rem !important;
}

.fs-42 {
	font-size: 4.2rem !important;
}

.fs-48 {
	font-size: 4.8rem !important;
}

.ff-base {
	font-family: "Roboto", "Noto Sans JP", "Helvetica Neue", arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans",
		"メイリオ", meiryo, sans-serif;
}

.ff-minmoji {
	font-family: "minmoji";
}

/* margin */
.m-auto {
	margin: 0 auto !important;
}

.mt-0 {
	margin-top: 0px !important;
}

.mb-0 {
	margin-bottom: 0px !important;
}

.ml-0 {
	margin-left: 0px !important;
}

.mr-0 {
	margin-right: 0px !important;
}

.mt-5 {
	margin-top: 5px !important;
}

.mb-5 {
	margin-bottom: 5px !important;
}

.ml-5 {
	margin-left: 5px !important;
}

.mr-5 {
	margin-right: 5px !important;
}

.mt-10 {
	margin-top: 10px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.ml-10 {
	margin-left: 10px !important;
}

.mr-10 {
	margin-right: 10px !important;
}

.mt-15 {
	margin-top: 15px !important;
}

.mb-15 {
	margin-bottom: 15px !important;
}

.ml-15 {
	margin-left: 15px !important;
}

.mr-15 {
	margin-right: 15px !important;
}

.mt-20 {
	margin-top: 20px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.ml-20 {
	margin-left: 20px !important;
}

.mr-20 {
	margin-right: 20px !important;
}

.mt-25 {
	margin-top: 25px !important;
}

.mb-25 {
	margin-bottom: 25px !important;
}

.ml-25 {
	margin-left: 25px !important;
}

.mr-25 {
	margin-right: 25px !important;
}

.mt-30 {
	margin-top: 30px !important;
}

.mb-30 {
	margin-bottom: 30px !important;
}

.ml-30 {
	margin-left: 30px !important;
}

.mr-30 {
	margin-right: 30px !important;
}

.mt-35 {
	margin-top: 35px !important;
}

.mb-35 {
	margin-bottom: 35px !important;
}

.ml-35 {
	margin-left: 35px !important;
}

.mr-35 {
	margin-right: 35px !important;
}

.mt-40 {
	margin-top: 40px !important;
}

.mb-40 {
	margin-bottom: 40px !important;
}

.ml-40 {
	margin-left: 40px !important;
}

.mr-40 {
	margin-right: 40px !important;
}

.mt-45 {
	margin-top: 45px !important;
}

.mb-45 {
	margin-bottom: 45px !important;
}

.ml-45 {
	margin-left: 45px !important;
}

.mr-45 {
	margin-right: 45px !important;
}

.mt-50 {
	margin-top: 50px !important;
}

.mb-50 {
	margin-bottom: 50px !important;
}

.ml-50 {
	margin-left: 50px !important;
}

.mr-50 {
	margin-right: 50px !important;
}

.mt-55 {
	margin-top: 55px !important;
}

.mb-55 {
	margin-bottom: 55px !important;
}

.ml-55 {
	margin-left: 55px !important;
}

.mr-55 {
	margin-right: 55px !important;
}

.mt-60 {
	margin-top: 60px !important;
}

.mb-60 {
	margin-bottom: 60px !important;
}

.ml-60 {
	margin-left: 60px !important;
}

.mr-60 {
	margin-right: 60px !important;
}

.mt-65 {
	margin-top: 65px !important;
}

.mb-65 {
	margin-bottom: 65px !important;
}

.ml-65 {
	margin-left: 65px !important;
}

.mr-65 {
	margin-right: 65px !important;
}

.mt-70 {
	margin-top: 70px !important;
}

.mb-70 {
	margin-bottom: 70px !important;
}

.ml-70 {
	margin-left: 70px !important;
}

.mr-70 {
	margin-right: 70px !important;
}

.mt-75 {
	margin-top: 75px !important;
}

.mb-75 {
	margin-bottom: 75px !important;
}

.ml-75 {
	margin-left: 75px !important;
}

.mr-75 {
	margin-right: 75px !important;
}

.mt-80 {
	margin-top: 80px !important;
}

.mb-80 {
	margin-bottom: 80px !important;
}

.ml-80 {
	margin-left: 80px !important;
}

.mr-80 {
	margin-right: 80px !important;
}

.mt-85 {
	margin-top: 85px !important;
}

.mb-85 {
	margin-bottom: 85px !important;
}

.ml-85 {
	margin-left: 85px !important;
}

.mr-85 {
	margin-right: 85px !important;
}

.mt-90 {
	margin-top: 90px !important;
}

.mb-90 {
	margin-bottom: 90px !important;
}

.ml-90 {
	margin-left: 90px !important;
}

.mr-90 {
	margin-right: 90px !important;
}

.mt-95 {
	margin-top: 95px !important;
}

.mb-95 {
	margin-bottom: 95px !important;
}

.ml-95 {
	margin-left: 95px !important;
}

.mr-95 {
	margin-right: 95px !important;
}

.mt-100 {
	margin-top: 100px !important;
}

.mb-100 {
	margin-bottom: 100px !important;
}

.ml-100 {
	margin-left: 100px !important;
}

.mr-100 {
	margin-right: 100px !important;
}

/* padding */
.pt-0 {
	padding-top: 0px !important;
}

.pt-0per {
	padding-top: 0% !important;
}

.pb-0 {
	padding-bottom: 0px !important;
}

.pl-0 {
	padding-left: 0px !important;
}

.pr-0 {
	padding-right: 0px !important;
}

.pt-5 {
	padding-top: 5px !important;
}

.pt-5per {
	padding-top: 5% !important;
}

.pb-5 {
	padding-bottom: 5px !important;
}

.pl-5 {
	padding-left: 5px !important;
}

.pr-5 {
	padding-right: 5px !important;
}

.pt-10 {
	padding-top: 10px !important;
}

.pt-10per {
	padding-top: 10% !important;
}

.pb-10 {
	padding-bottom: 10px !important;
}

.pl-10 {
	padding-left: 10px !important;
}

.pr-10 {
	padding-right: 10px !important;
}

.pt-15 {
	padding-top: 15px !important;
}

.pt-15per {
	padding-top: 15% !important;
}

.pb-15 {
	padding-bottom: 15px !important;
}

.pl-15 {
	padding-left: 15px !important;
}

.pr-15 {
	padding-right: 15px !important;
}

.pt-20 {
	padding-top: 20px !important;
}

.pt-20per {
	padding-top: 20% !important;
}

.pb-20 {
	padding-bottom: 20px !important;
}

.pl-20 {
	padding-left: 20px !important;
}

.pr-20 {
	padding-right: 20px !important;
}

.pt-25 {
	padding-top: 25px !important;
}

.pt-25per {
	padding-top: 25% !important;
}

.pb-25 {
	padding-bottom: 25px !important;
}

.pl-25 {
	padding-left: 25px !important;
}

.pr-25 {
	padding-right: 25px !important;
}

.pt-30 {
	padding-top: 30px !important;
}

.pt-30per {
	padding-top: 30% !important;
}

.pb-30 {
	padding-bottom: 30px !important;
}

.pl-30 {
	padding-left: 30px !important;
}

.pr-30 {
	padding-right: 30px !important;
}

.pt-35 {
	padding-top: 35px !important;
}

.pt-35per {
	padding-top: 35% !important;
}

.pb-35 {
	padding-bottom: 35px !important;
}

.pl-35 {
	padding-left: 35px !important;
}

.pr-35 {
	padding-right: 35px !important;
}

.pt-40 {
	padding-top: 40px !important;
}

.pt-40per {
	padding-top: 40% !important;
}

.pb-40 {
	padding-bottom: 40px !important;
}

.pl-40 {
	padding-left: 40px !important;
}

.pr-40 {
	padding-right: 40px !important;
}

.pt-45 {
	padding-top: 45px !important;
}

.pt-45per {
	padding-top: 45% !important;
}

.pb-45 {
	padding-bottom: 45px !important;
}

.pl-45 {
	padding-left: 45px !important;
}

.pr-45 {
	padding-right: 45px !important;
}

.pt-50 {
	padding-top: 50px !important;
}

.pt-50per {
	padding-top: 50% !important;
}

.pb-50 {
	padding-bottom: 50px !important;
}

.pl-50 {
	padding-left: 50px !important;
}

.pr-50 {
	padding-right: 50px !important;
}

.pt-55 {
	padding-top: 55px !important;
}

.pt-55per {
	padding-top: 55% !important;
}

.pb-55 {
	padding-bottom: 55px !important;
}

.pl-55 {
	padding-left: 55px !important;
}

.pr-55 {
	padding-right: 55px !important;
}

.pt-60 {
	padding-top: 60px !important;
}

.pt-60per {
	padding-top: 60% !important;
}

.pb-60 {
	padding-bottom: 60px !important;
}

.pl-60 {
	padding-left: 60px !important;
}

.pr-60 {
	padding-right: 60px !important;
}

.pt-65 {
	padding-top: 65px !important;
}

.pt-65per {
	padding-top: 65% !important;
}

.pb-65 {
	padding-bottom: 65px !important;
}

.pl-65 {
	padding-left: 65px !important;
}

.pr-65 {
	padding-right: 65px !important;
}

.pt-70 {
	padding-top: 70px !important;
}

.pt-70per {
	padding-top: 70% !important;
}

.pb-70 {
	padding-bottom: 70px !important;
}

.pl-70 {
	padding-left: 70px !important;
}

.pr-70 {
	padding-right: 70px !important;
}

.pt-75 {
	padding-top: 75px !important;
}

.pt-75per {
	padding-top: 75% !important;
}

.pb-75 {
	padding-bottom: 75px !important;
}

.pl-75 {
	padding-left: 75px !important;
}

.pr-75 {
	padding-right: 75px !important;
}

.pt-80 {
	padding-top: 80px !important;
}

.pt-80per {
	padding-top: 80% !important;
}

.pb-80 {
	padding-bottom: 80px !important;
}

.pl-80 {
	padding-left: 80px !important;
}

.pr-80 {
	padding-right: 80px !important;
}

.pt-85 {
	padding-top: 85px !important;
}

.pt-85per {
	padding-top: 85% !important;
}

.pb-85 {
	padding-bottom: 85px !important;
}

.pl-85 {
	padding-left: 85px !important;
}

.pr-85 {
	padding-right: 85px !important;
}

.pt-90 {
	padding-top: 90px !important;
}

.pt-90per {
	padding-top: 90% !important;
}

.pb-90 {
	padding-bottom: 90px !important;
}

.pl-90 {
	padding-left: 90px !important;
}

.pr-90 {
	padding-right: 90px !important;
}

.pt-95 {
	padding-top: 95px !important;
}

.pt-95per {
	padding-top: 95% !important;
}

.pb-95 {
	padding-bottom: 95px !important;
}

.pl-95 {
	padding-left: 95px !important;
}

.pr-95 {
	padding-right: 95px !important;
}

.pt-100 {
	padding-top: 100px !important;
}

.pt-100per {
	padding-top: 100% !important;
}

.pb-100 {
	padding-bottom: 100px !important;
}

.pl-100 {
	padding-left: 100px !important;
}

.pr-100 {
	padding-right: 100px !important;
}

/* text-align */
.text-center {
	text-align: center !important;
}

.text-left {
	text-align: left !important;
}

.text-right {
	text-align: right !important;
}

/* vertical-align */
.va-top {
	vertical-align: top !important;
}

.va-middle {
	vertical-align: middle !important;
}

.va-bottom {
	vertical-align: bottom !important;
}

/* white-space */
.ws-nowrap {
	white-space: nowrap !important;
}

/* text-color */
.text-red-type01 {
	color: #ff0000;
}

.text-red-type02 {
	color: #ff3366;
}

.text-red-type03 {
	color: #ff6633;
}

.text-red-type04 {
	color: #ff6347;
}

.text-blue-type01 {
	color: #0000ff;
}

.text-blue-type02 {
	color: #0099cc;
}

.text-green-type01 {
	color: #33cc00;
}

.text-green-type02 {
	color: #006600;
}

.text-purple-type01 {
	color: #663399;
}

.text-purple-type02 {
	color: #4b0082;
}

.text-yellow-type01 {
	color: #ffcc00;
}

.sp-content {
	display: none !important;
}

/* display */
.d-none {
	display: none !important;
}

.d-block {
	display: block !important;
}

.d-inline {
	display: inline !important;
}

.d-i-block {
	display: inline-block !important;
}

.d-table {
	display: table !important;
}

.d-t-row {
	display: table-row !important;
}

.d-t-cell {
	display: table-cell !important;
}

.d-flex {
	display: -webkit-box !important;
	display: -ms-flexbox !important;
	display: flex !important;
}

.d-i-flex {
	display: -webkit-inline-box !important;
	display: -ms-inline-flexbox !important;
	display: inline-flex !important;
}

/* overflow */
.of-auto {
	overflow: auto;
}

.of-hidden {
	overflow: hidden;
}

/* visibility */
.hidden {
	visibility: hidden !important;
}

.visible {
	visibility: visible !important;
}

/* hover */
.hover-opacity {
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}

/* width(px) 5-600 */
.w-5 {
	width: 5px !important;
}

.w-10 {
	width: 10px !important;
}

.w-15 {
	width: 15px !important;
}

.w-20 {
	width: 20px !important;
}

.w-25 {
	width: 25px !important;
}

.w-30 {
	width: 30px !important;
}

.w-35 {
	width: 35px !important;
}

.w-40 {
	width: 40px !important;
}

.w-45 {
	width: 45px !important;
}

.w-50 {
	width: 50px !important;
}

.w-55 {
	width: 55px !important;
}

.w-60 {
	width: 60px !important;
}

.w-65 {
	width: 65px !important;
}

.w-70 {
	width: 70px !important;
}

.w-75 {
	width: 75px !important;
}

.w-80 {
	width: 80px !important;
}

.w-85 {
	width: 85px !important;
}

.w-90 {
	width: 90px !important;
}

.w-95 {
	width: 95px !important;
}

.w-100 {
	width: 100px !important;
}

.w-105 {
	width: 105px !important;
}

.w-110 {
	width: 110px !important;
}

.w-115 {
	width: 115px !important;
}

.w-120 {
	width: 120px !important;
}

.w-125 {
	width: 125px !important;
}

.w-130 {
	width: 130px !important;
}

.w-135 {
	width: 135px !important;
}

.w-140 {
	width: 140px !important;
}

.w-145 {
	width: 145px !important;
}

.w-150 {
	width: 150px !important;
}

.w-155 {
	width: 155px !important;
}

.w-160 {
	width: 160px !important;
}

.w-165 {
	width: 165px !important;
}

.w-170 {
	width: 170px !important;
}

.w-175 {
	width: 175px !important;
}

.w-180 {
	width: 180px !important;
}

.w-185 {
	width: 185px !important;
}

.w-190 {
	width: 190px !important;
}

.w-195 {
	width: 195px !important;
}

.w-200 {
	width: 200px !important;
}

.w-205 {
	width: 205px !important;
}

.w-210 {
	width: 210px !important;
}

.w-215 {
	width: 215px !important;
}

.w-220 {
	width: 220px !important;
}

.w-225 {
	width: 225px !important;
}

.w-230 {
	width: 230px !important;
}

.w-235 {
	width: 235px !important;
}

.w-240 {
	width: 240px !important;
}

.w-245 {
	width: 245px !important;
}

.w-250 {
	width: 250px !important;
}

.w-255 {
	width: 255px !important;
}

.w-260 {
	width: 260px !important;
}

.w-265 {
	width: 265px !important;
}

.w-270 {
	width: 270px !important;
}

.w-275 {
	width: 275px !important;
}

.w-280 {
	width: 280px !important;
}

.w-285 {
	width: 285px !important;
}

.w-290 {
	width: 290px !important;
}

.w-295 {
	width: 295px !important;
}

.w-300 {
	width: 300px !important;
}

.w-305 {
	width: 305px !important;
}

.w-310 {
	width: 310px !important;
}

.w-315 {
	width: 315px !important;
}

.w-320 {
	width: 320px !important;
}

.w-325 {
	width: 325px !important;
}

.w-330 {
	width: 330px !important;
}

.w-335 {
	width: 335px !important;
}

.w-340 {
	width: 340px !important;
}

.w-345 {
	width: 345px !important;
}

.w-350 {
	width: 350px !important;
}

.w-355 {
	width: 355px !important;
}

.w-360 {
	width: 360px !important;
}

.w-365 {
	width: 365px !important;
}

.w-370 {
	width: 370px !important;
}

.w-375 {
	width: 375px !important;
}

.w-380 {
	width: 380px !important;
}

.w-385 {
	width: 385px !important;
}

.w-390 {
	width: 390px !important;
}

.w-395 {
	width: 395px !important;
}

.w-400 {
	width: 400px !important;
}

.w-405 {
	width: 405px !important;
}

.w-410 {
	width: 410px !important;
}

.w-415 {
	width: 415px !important;
}

.w-420 {
	width: 420px !important;
}

.w-425 {
	width: 425px !important;
}

.w-430 {
	width: 430px !important;
}

.w-435 {
	width: 435px !important;
}

.w-440 {
	width: 440px !important;
}

.w-445 {
	width: 445px !important;
}

.w-450 {
	width: 450px !important;
}

.w-455 {
	width: 455px !important;
}

.w-460 {
	width: 460px !important;
}

.w-465 {
	width: 465px !important;
}

.w-470 {
	width: 470px !important;
}

.w-475 {
	width: 475px !important;
}

.w-480 {
	width: 480px !important;
}

.w-485 {
	width: 485px !important;
}

.w-490 {
	width: 490px !important;
}

.w-495 {
	width: 495px !important;
}

.w-500 {
	width: 500px !important;
}

.w-505 {
	width: 505px !important;
}

.w-510 {
	width: 510px !important;
}

.w-515 {
	width: 515px !important;
}

.w-520 {
	width: 520px !important;
}

.w-525 {
	width: 525px !important;
}

.w-530 {
	width: 530px !important;
}

.w-535 {
	width: 535px !important;
}

.w-540 {
	width: 540px !important;
}

.w-545 {
	width: 545px !important;
}

.w-550 {
	width: 550px !important;
}

.w-555 {
	width: 555px !important;
}

.w-560 {
	width: 560px !important;
}

.w-565 {
	width: 565px !important;
}

.w-570 {
	width: 570px !important;
}

.w-575 {
	width: 575px !important;
}

.w-580 {
	width: 580px !important;
}

.w-585 {
	width: 585px !important;
}

.w-590 {
	width: 590px !important;
}

.w-595 {
	width: 595px !important;
}

.w-600 {
	width: 600px !important;
}

/* width(%) 5-100 */
.w-5per {
	width: 5% !important;
}

.w-10per {
	width: 10% !important;
}

.w-15per {
	width: 15% !important;
}

.w-20per {
	width: 20% !important;
}

.w-25per {
	width: 25% !important;
}

.w-30per {
	width: 30% !important;
}

.w-35per {
	width: 35% !important;
}

.w-40per {
	width: 40% !important;
}

.w-45per {
	width: 45% !important;
}

.w-50per {
	width: 50% !important;
}

.w-55per {
	width: 55% !important;
}

.w-60per {
	width: 60% !important;
}

.w-65per {
	width: 65% !important;
}

.w-70per {
	width: 70% !important;
}

.w-75per {
	width: 75% !important;
}

.w-80per {
	width: 80% !important;
}

.w-85per {
	width: 85% !important;
}

.w-90per {
	width: 90% !important;
}

.w-95per {
	width: 95% !important;
}

.w-100per {
	width: 100% !important;
}

/* width(em) 5-20 */
.w-1em {
	width: 1em !important;
}

.w-2em {
	width: 2em !important;
}

.w-3em {
	width: 3em !important;
}

.w-4em {
	width: 4em !important;
}

.w-5em {
	width: 5em !important;
}

.w-6em {
	width: 6em !important;
}

.w-7em {
	width: 7em !important;
}

.w-8em {
	width: 8em !important;
}

.w-9em {
	width: 9em !important;
}

.w-10em {
	width: 10em !important;
}

.w-11em {
	width: 11em !important;
}

.w-12em {
	width: 12em !important;
}

.w-13em {
	width: 13em !important;
}

.w-14em {
	width: 14em !important;
}

.w-15em {
	width: 15em !important;
}

.w-16em {
	width: 16em !important;
}

.w-17em {
	width: 17em !important;
}

.w-18em {
	width: 18em !important;
}

.w-19em {
	width: 19em !important;
}

.w-20em {
	width: 20em !important;
}

@media screen {
	[hidden~="screen"] {
		display: inherit;
	}
	[hidden~="screen"]:not(:active):not(:focus):not(:target) {
		clip: rect(0 0 0 0) !important;
		position: absolute !important;
	}
}

@media screen and (max-width: 767px) {
	body {
		font-size: 1.3rem;
	}
	.header {
		height: 67px;
	}
	.header::after {
		height: 87px;
	}
	.header-logo {
		/* margin: 10px; */
	}
	.header-logo{
	    margin: 0 19px;
	}
	.header-logo a {
		width: 80px;
		width: 110px;
 
		/* padding: 8px; */
	}
	.header-hamburger {
		width: 44px;
		height: 37px;
		margin: 12px 10px;
		padding: 10px;
	}
	.header-hamburger-line {
		right: 10px;
		width: 24px;
	}
	.header-hamburger-line:nth-child(1) {
		top: 10px;
	}
	.header-hamburger-line:nth-child(3) {
		bottom: 10px;
	}
	.header-hamburger.is-opened .header-hamburger-line:nth-child(1) {
		-webkit-transform: translateY(7.5px) rotate(45deg);
		transform: translateY(7.5px) rotate(45deg);
	}
	.header-hamburger.is-opened .header-hamburger-line:nth-child(3) {
		-webkit-transform: translateY(-7.5px) rotate(-45deg);
		transform: translateY(-7.5px) rotate(-45deg);
	}
	.header-nav {
		padding-top: 55px;
	}
	.header-nav-container {
		padding: 20px 15px 28px;
	}
	.header-search-tags {
		margin: 14px 10px 0;
		text-align: right;
	}
	.header-contents {
		margin-top: 25px;
	}
	.header-contents.is-lv1 .header-menu-item {
		border: none;
	}
	.header-contents.is-lv1 .header-menu-item > a {
		-webkit-transition: none;
		opacity: 0;
		transition: none;
	}
	.header-contents.is-lv1 .header-dropdown-back-button {
		display: block;
	}
	.header-contents.is-lv2 .header-dropdown.-lv1 > .header-dropdown-title,
	.header-contents.is-lv2 .header-dropdown.-lv1 > .header-dropdown-menu > .header-dropdown-menu-item > a {
		-webkit-transition: none;
		opacity: 0;
		transition: none;
	}
	.header-contents.is-lv2 .header-dropdown.-lv1 > .header-dropdown-title,
	.header-contents.is-lv2 .header-dropdown.-lv1 > .header-dropdown-menu > .header-dropdown-menu-item {
		border-top: none;
	}
	.header-menu {
		margin-top: 10px;
	}
	.header-menu-item {
		font-size: 1.4rem;
	}
	.header-menu-item a {
		padding: 12px 5px;
	}
	.header-dropdown {
		-webkit-transform: translateX(15px);
		transform: translateX(15px);
	}
	.header-dropdown-button {
		padding-right: 20px;
	}
	.header-dropdown-button::after {
		right: 10px;
	}
	.header-link-list {
		margin: -8px;
	}
	.header-link-list li {
		width: 50%;
		padding: 8px;
	}
	.header-link-list.-logo {
		margin: -7px;
	}
	.header-link-list.-logo li {
		width: 33.33333%;
		min-height: 59px;
		padding: 7px;
	}
	.header-link-list.-logo li a[target="_blank"]::after {
		width: 6px;
		height: 6px;
	}
	.header-link-list.-logo li a {
		padding: 7px 3px 8px;
	}
	.header-link-list.-logo li a[target="_blank"]::after {
		width: 6px;
		height: 6px;
	}
	.header-link-list.-logo li a img.sp-content {
		max-height: 26px;
	}
	.header-links {
		padding: 20px 22px;
		font-size: 1.12rem;
	}
	.header-links .header-link-list {
		margin-bottom: 16px;
	}
	.header-links-group {
		padding: 26px 15px;
	}
	.header-links-group .header-link-list {
		margin: -7px;
	}
	.jp-en-btn {
		margin: 12px 10px;
		padding: 10px 0;
		font-size: 10px;
	}
	.is-fixed .jp-en-btn {
		margin: 12px 10px;
		padding: 10px 0;
		font-size: 10px;
	}
	.jp-en-btn .jp-btn {
		padding-right: 12px;
	}
	.jp-en-btn .en-btn {
		padding-left: 12px;
	}
	.header-information {
		padding: 10px 0;
	}
	.header-information-inner {
		padding: 0 19px;
	}
	.header-information-head {
		text-align: center;
	}
	.header-information-close {
		top: 14px;
		right: 10px;
		width: 23px;
		height: 23px;
	}
	.footer {
		padding: 30px 0;
		font-size: 1rem;
	}
	.footer-inner {
		max-width: 100%;
		padding-right: 19px;
		padding-left: 19px;
	}
	.footer-links {
		margin: -8px;
	}
	.footer-links > li {
		width: 50%;
		padding: 8px;
	}
	.footer-links > li::before {
		content: none;
	}
	.footer-logo {
		margin-top: 10px;
	}
	.footer-logo a {
		width: 98px;
		width: 176px;
		padding: 8px 8px 6px;
	}
	.footer-copyright {
		margin-top: 16px;
	}
	.gdpr-bg {
		padding: 60px 5% 30px;
	}
	.gdpr-btn {
		top: -38px;
	}
	.gdpr-box {
		display: block;
	}
	.gdpr-accept {
		margin-top: 20px;
	}
	.gdpr-accept a {
		max-width: 180px;
		margin: 0 auto;
	}
	.pagetop {
		right: 15px;
		bottom: calc(100% + 11px);
	}
	.pagetop a {
		padding: 7px 12px 5px;
	}
	.pagetop a span {
		padding-right: 22px;
	}
	.content {
		padding: 50px 0;
	}
	.content-header-heading {
		font-size: 3rem;
	}
	.content-header-heading-sub {
		font-size: 1.5rem;
	}
	.content-header {
		height: 250px;
	}
	.content-header-bg img {
		height: 250px;
	}
	.content-header-text {
		padding: 0 19px;
	}
	.content-body {
		margin-top: 67px;
	}
	.content-top {
		padding: 25px 0 35px;
	}
	.content-inner {
		max-width: 100%;
		padding-right: 19px;
		padding-left: 19px;
	}
	.content-narrow-sm > .heading-lv2,
	.article-post .content-narrow-sm > h2 {
		margin-bottom: 8px;
	}
	.content-hr::before {
		width: calc(100vw - 25px * 2);
	}
	.content-hr {
		margin: 50px 0;
	}
	.content-hr-light::before {
		width: 100%;
	}
	.content-hr-light {
		margin: 25px 0;
	}
	.content-section {
		margin-top: 60px;
	}
	.column {
		margin: -13px;
	}
	.column .column-col,
	.column .column-col-auto,
	.column .column-col-1,
	.column .column-col-2,
	.column .column-col-3,
	.column .column-col-4,
	.column .column-col-5,
	.column .column-col-6 {
		padding: 13px;
	}
	.column .column-col-1-sp {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 100%;
		flex: 0 0 100%;
		max-width: 100%;
	}
	.column .column-col-2-sp {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		max-width: 50%;
	}
	.column .column-col-3-sp {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 33.33333%;
		flex: 0 0 33.33333%;
		max-width: 33.33333%;
	}
	.column.-gap-sm {
		margin: -5px;
	}
	.column.-gap-sm .column-col,
	.column.-gap-sm .column-col-auto,
	.column.-gap-sm .column-col-1,
	.column.-gap-sm .column-col-2,
	.column.-gap-sm .column-col-3,
	.column.-gap-sm .column-col-4,
	.column.-gap-sm .column-col-5,
	.column.-gap-sm .column-col-6 {
		padding: 5px;
	}
	.heading-lv1 {
		margin-bottom: 1em;
		font-size: 2.3rem;
	}
	.heading-lv2,
	.article-post h2 {
		margin-bottom: 27px;
		font-size: 1.6rem;
	}
	.heading-lv2-latin {
		font-size: 2.25rem;
	}
	.heading-lv3,
	.article-post h3 {
		font-size: 1.5rem;
	}
	.heading-lv4 {
		font-size: 1.5rem;
	}
	.text-block {
		margin: 25px 0;
	}
	.text-line-camp-1-sp {
		-webkit-line-clamp: 1 !important;
	}
	.text-line-camp-2-sp {
		-webkit-line-clamp: 2 !important;
	}
	.text-line-camp-3-sp {
		-webkit-line-clamp: 3 !important;
	}
	.text-line-camp-4-sp {
		-webkit-line-clamp: 4 !important;
	}
	.text-line-camp-5-sp {
		-webkit-line-clamp: 5 !important;
	}
	.button-block .button,
	.button-block-bg .button,
	.button-list-item .button {
		min-width: 178px;
	}
	.-lg.button-block .button,
	.-lg.button-block-bg .button,
	.-lg.button-list-item .button {
		width: 275px;
	}
	.-xl.button-block .button,
	.-xl.button-block-bg .button,
	.-xl.button-list-item .button {
		width: 100%;
	}
	.button-block {
		margin: 40px 7px 0;
	}
	.button-block-bg {
		padding: 50px 7px;
	}
	.button-list {
		margin: 30px 7px -30px;
	}
	.button-list + .button-list,
	.button-block + .button-list {
		margin-top: 40px;
	}
	.button-list-item {
		padding-bottom: 30px;
	}
	.button-list.-column .button-list-item .button {
		width: 178px;
	}
	.button {
		-webkit-box-shadow: -5px -5px 10px #ffffff, 2px 2px 6px rgba(0, 0, 0, 0.43), -1px -1px 5px rgba(0, 0, 0, 0.43);
		box-shadow: -5px -5px 10px #ffffff, 2px 2px 6px rgba(0, 0, 0, 0.43), -1px -1px 5px rgba(0, 0, 0, 0.43);
	}
	.button {
		min-height: 40px;
		padding: 3px 20px 5px;
		border-radius: 20px;
		font-size: 1.3rem;
		line-height: 1.23077;
	}
	.button::after {
		-webkit-transform: translateY(-2px);
		right: 9.5px;
		width: 9.5px;
		height: 4.5px;
		transform: translateY(-2px);
	}
	.button:hover::after {
		-webkit-transform: translate(4px, -2px);
		transform: translate(4px, -2px);
	}
	.button[target="_blank"]::after {
		width: 11px;
		height: 11px;
	}
	.button.-dark {
		-webkit-box-shadow: 0 2px 6px rgba(0, 0, 0, 0.92), 0 0 7px rgba(100, 100, 100, 0.5);
		box-shadow: 0 2px 6px rgba(0, 0, 0, 0.92), 0 0 7px rgba(100, 100, 100, 0.5);
	}
	.link-text[href$=".pdf"]::after,
	.link-list-title a[href$=".pdf"]::after,
	.link-list > li > a[href$=".pdf"]::after,
	.link-text.-mb[href$=".pdf"]::after,
	.link-list-title a.-mb[href$=".pdf"]::after,
	.link-list > li > a.-mb[href$=".pdf"]::after,
	.link-text[href$=".epub"]::after,
	.link-list-title a[href$=".epub"]::after,
	.link-list > li > a[href$=".epub"]::after,
	.link-text[href$=".xls"]::after,
	.link-list-title a[href$=".xls"]::after,
	.link-list > li > a[href$=".xls"]::after,
	.link-text[href$=".xlsx"]::after,
	.link-list-title a[href$=".xlsx"]::after,
	.link-list > li > a[href$=".xlsx"]::after,
	.link-text[href$=".doc"]::after,
	.link-list-title a[href$=".doc"]::after,
	.link-list > li > a[href$=".doc"]::after,
	.link-text[href$=".zip"]::after,
	.link-list-title a[href$=".zip"]::after,
	.link-list > li > a[href$=".zip"]::after,
	.link-text[href$=".ppt"]::after,
	.link-list-title a[href$=".ppt"]::after,
	.link-list > li > a[href$=".ppt"]::after,
	.link-text.-mb[href$=".ppt"]::after,
	.link-list-title a.-mb[href$=".ppt"]::after,
	.link-list > li > a.-mb[href$=".ppt"]::after,
	.link-text[href$=".pptx"]::after,
	.link-list-title a[href$=".pptx"]::after,
	.link-list > li > a[href$=".pptx"]::after,
	.link-text.-mb[href$=".pptx"]::after,
	.link-list-title a.-mb[href$=".pptx"]::after,
	.link-list > li > a.-mb[href$=".pptx"]::after,
	.link-text[href$=".key"]::after,
	.link-list-title a[href$=".key"]::after,
	.link-list > li > a[href$=".key"]::after {
		width: auto;
		height: auto;
		background-size: 12px 16px;
	}
	.link-text[href$=".pdf"]:after,
	.link-list-title a[href$=".pdf"]:after,
	.link-list > li > a[href$=".pdf"]:after,
	.link-text.-mb[href$=".pdf"]:after,
	.link-list-title a.-mb[href$=".pdf"]:after,
	.link-list > li > a.-mb[href$=".pdf"]:after,
	.link-text[href$=".epub"]:after,
	.link-list-title a[href$=".epub"]:after,
	.link-list > li > a[href$=".epub"]:after,
	.link-text[href$=".xls"]:after,
	.link-list-title a[href$=".xls"]:after,
	.link-list > li > a[href$=".xls"]:after,
	.link-text[href$=".xlsx"]:after,
	.link-list-title a[href$=".xlsx"]:after,
	.link-list > li > a[href$=".xlsx"]:after,
	.link-text[href$=".doc"]:after,
	.link-list-title a[href$=".doc"]:after,
	.link-list > li > a[href$=".doc"]:after,
	.link-text[href$=".zip"]:after,
	.link-list-title a[href$=".zip"]:after,
	.link-list > li > a[href$=".zip"]:after,
	.link-text[href$=".ppt"]:after,
	.link-list-title a[href$=".ppt"]:after,
	.link-list > li > a[href$=".ppt"]:after,
	.link-text.-mb[href$=".ppt"]:after,
	.link-list-title a.-mb[href$=".ppt"]:after,
	.link-list > li > a.-mb[href$=".ppt"]:after,
	.link-text[href$=".pptx"]:after,
	.link-list-title a[href$=".pptx"]:after,
	.link-list > li > a[href$=".pptx"]:after,
	.link-text.-mb[href$=".pptx"]:after,
	.link-list-title a.-mb[href$=".pptx"]:after,
	.link-list > li > a.-mb[href$=".pptx"]:after,
	.link-text[href$=".key"]:after,
	.link-list-title a[href$=".key"]:after,
	.link-list > li > a[href$=".key"]:after {
		padding-left: 20px;
	}
	.link-text[target="_blank"]::after,
	.link-list-title a[target="_blank"]::after,
	.link-list > li > a[target="_blank"]::after {
		width: 11px;
		height: 11px;
	}
	.link-list-title {
		font-size: 1.5rem;
	}
	.link-list-inside {
		margin-top: 25px;
	}
	.link-anchor-list {
		margin: -10px -15px;
	}
	.link-anchor-list > li {
		padding: 10px 15px;
	}
	.link-rss {
		font-size: 1rem;
	}
	.link-rss::before {
		width: 14px;
		height: 14px;
		margin-bottom: 3px;
	}
	.list-annotation {
		font-size: 1rem;
	}
	.list-disc > li::before,
	.article-post ul > li::before,
	.list-disc > li > ul > li::before,
	.article-post ul > li > ul > li::before {
		width: 10px;
		height: 10px;
	}
	.image-block.-sp-sm img,
	.-sp-sm.iframe-block img {
		max-width: 70%;
	}
	.image-block,
	.iframe-block {
		margin: 30px 0;
	}
	.image-block.-white-bg,
	.-white-bg.iframe-block {
		padding: 10px;
	}
	.image-responsive {
		width: 100%;
	}
	.social-block {
		margin: 40px 0;
	}
	.social-list {
		margin: 0 -6px;
	}
	.social-list-item {
		margin: 0 6px;
	}
	.social-list-item img {
		height: 22px;
	}
	.label {
		min-width: 62px;
		padding: 4px;
		font-size: 1.1rem;
	}
	.hashtag-list {
		font-size: 1rem;
	}
	.-lg .tag-button {
		font-size: 1.3rem;
	}
	.tag-button {
		padding: 3px 11px 4px;
		font-size: 1.3rem;
	}
	.tag-field + .tag-field {
		margin-top: 15px;
	}
	.tag-field {
		padding: 35px 20px;
	}
	.tag-field-title {
		font-size: 1.5rem;
	}
	.tag-field-footer {
		margin: 38px 0 -15px;
	}
	.tag-field.-recommend .tag-field-title-inner::before,
	.tag-field.-recommend .tag-field-title-inner::after {
		width: 40px;
	}
	.tag-button-list,
	.tag-list {
		margin: -3px;
	}
	.tag-button-list-item,
	.tag-list-item {
		margin: 3px;
	}
	.tag {
		padding: 4px 6px 5px;
		border-radius: 2px;
		font-size: 1rem;
	}
	.filtering-area {
		padding: 26px 0 43px;
	}
	.filtering-button {
		-webkit-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
		border-radius: 5px;
		box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
	}
	.filtering-button {
		height: calc(100% - 8px);
		margin-bottom: 8px;
		font-size: 1.4rem;
		line-height: 1.2;
	}
	.filtering-button::before {
		bottom: -5px;
		width: 11px;
		height: 11px;
	}
	.filtering-button-inner {
		padding: 11px 0 13px;
	}
	.filtering-button-inner > span {
		font-size: 1.1rem;
	}
	.filtering-button.-toggle {
		margin-bottom: 8px;
	}
	.filtering-button.-toggle::after {
		right: 6px;
	}
	.filtering-button.-toggle .filtering-button-inner {
		padding-right: 16px;
		padding-left: 16px;
	}
	.filtering-button-list {
		margin-bottom: 9px;
	}
	.filtering-button-list-item {
		min-height: 62px;
		margin-left: 16px;
	}
	.filtering-button-list-item .filtering-content {
		position: fixed;
		top: auto;
		bottom: 0;
		height: 200px;
		overflow-y: auto;
	}
	.filtering-button-list-item .filtering-selectbox {
		padding: 10px 19px;
	}
	.filtering-selectbox-moblie.is-active + .filtering-button {
		pointer-events: none;
	}
	.filtering-selectbox {
		-webkit-box-shadow: 1.5px 1.5px 3px rgba(0, 0, 0, 0.37);
		padding: 35px 15px 20px;
		border-radius: 10px;
		box-shadow: 1.5px 1.5px 3px rgba(0, 0, 0, 0.37);
	}
	.filtering.-toggle .filtering-label::before,
	.filtering.-toggle .filtering-label::after,
	.filtering.-toggle .filtering-content-close::before,
	.filtering.-toggle .filtering-content-close::after {
		width: 20px;
	}
	.filtering.-toggle .filtering-label {
		height: 61px;
		padding: 10px 35px;
	}
	.filtering.-toggle .filtering-label::before,
	.filtering.-toggle .filtering-label::after {
		right: 14px;
	}
	.filtering.-toggle .filtering-content-close {
		width: 20px;
		height: 20px;
		margin-top: -16px;
	}
	.filtering {
		font-size: 1rem;
	}
	.filtering-label {
		-webkit-box-shadow: -3px -3px 3px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
		height: 35px;
		padding: 4px 28px 4px 10px;
		box-shadow: -3px -3px 3px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	}
	.filtering-label::after {
		right: 18px;
	}
	.filtering-content-close {
		position: relative;
		top: 0;
		right: auto;
		margin-top: -10px;
		margin-left: auto;
	}
	.filtering-link-block {
		margin-top: 15px;
	}
	.filtering-clear {
		font-size: 1.3rem;
	}
	.filtering-block {
		margin: 32px 0 20px;
	}
	.filtering-block .filtering-label {
		width: 245px;
	}
	.information-list-item::after {
		width: 200px;
	}
	.information-list-item + .information-list-item {
		margin-top: 12px;
	}
	.information-list:not(.-multiple) .information-list-item:last-child::after {
		content: none;
	}
	.information {
		padding-bottom: 0.75em;
	}
	.information-list.-multiple .information {
		padding-bottom: 15px;
	}
	.information-list:not(.-emergency) .information {
		display: block;
	}
	.information-data {
		margin-top: 0;
		font-size: 1rem;
	}
	.information-list:not(.-emergency) .information-data {
		width: auto;
	}
	.information-list.-emergency .information-data {
		margin-top: 0.5em;
	}
	.information-category {
		font-size: 1.1rem;
	}
	[target="_blank"] .information-title::after {
		width: 11px;
		height: 11px;
	}
	.information-list:not(.-emergency) .information-title {
		margin-left: 0;
	}
	.information-pict {
		width: 43.7037%;
		margin: 0 10px 8px 0;
		padding-top: 24.59259%;
		float: left;
		border-radius: 8px;
	}
	.information-content > * {
		display: block;
		max-width: calc(100% - 43.7037% - 10px);
		margin-left: auto;
	}
	.information-content .information-data {
		margin-bottom: 5px;
	}
	.information-content .information-title {
		margin-bottom: 10px;
		overflow: hidden;
		line-height: 1.61538;
	}
	.information-label,
	.information-tags {
		display: inline-block;
		margin-bottom: 5px;
		vertical-align: middle;
	}
	.information-hashtags {
		max-width: 100%;
		margin-top: 10px;
		clear: both;
	}
	.card {
		-webkit-box-shadow: 4.5px 4px 10px rgba(0, 0, 0, 0.21), 0 0 5px 0 #ffffff, -2px 0 5px 0 #ffffff,
			-2px -3px 15px #ffffff;
		padding: 20px;
		border-width: 0;
		border-radius: 15px;
		box-shadow: 4.5px 4px 10px rgba(0, 0, 0, 0.21), 0 0 5px 0 #ffffff, -2px 0 5px 0 #ffffff, -2px -3px 15px #ffffff;
		font-size: 1.3rem;
	}
	.card + .card {
		margin-top: 24px;
	}
	.card-pict {
		margin-bottom: 10px;
		border-radius: 10px;
	}
	.card-pict.-book {
		height: 121px;
	}
	.card-pict.-book img {
		width: 71px;
		height: 100px;
	}
	.card-pict.-thumb {
		padding-top: 65%;
	}
	.card-pict.-icon {
		max-width: 83.5px;
		height: 83.5px;
	}
	.card-pict.-icon img {
		width: 62.5px;
		height: 62.5px;
	}
	.card-pict.-book,
	.card-pict.-logo {
		max-width: 121px;
	}
	.card-content p {
		margin-bottom: 15px;
	}
	.card-data {
		font-size: 1rem;
	}
	.card-category {
		font-size: 1.1rem;
	}
	[target="_blank"] .card-heading::after {
		width: 11px;
		height: 11px;
	}
	.card-heading {
		font-size: 1.7rem;
		line-height: 1.29412;
	}
	.card[target="_blank"] .card-title::after {
		width: 11px;
		height: 11px;
	}
	.card-title {
		font-size: 1.5rem;
		line-height: 1.33333;
	}
	.card-title.-sm {
		font-size: 1.3rem;
	}
	.card-title > span {
		font-size: 1.2rem;
	}
	.card-description.-blank-icon::after {
		width: 11px;
		height: 11px;
	}
	.card-description.-sp {
		display: block;
	}
	.card.-horizontal-sp {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		-webkit-box-align: start;
		-ms-flex-align: start;
		flex-direction: row;
		flex-grow: 1;
		align-items: flex-start;
		padding: 12px;
		border-radius: 10px;
	}
	.card.-horizontal-sp .card-pict {
		-ms-flex-negative: 0;
		flex-shrink: 0;
		width: 25.37879%;
		border-radius: 10px;
	}
	.card.-horizontal-sp .card-pict + .card-content {
		min-width: 0;
		margin-left: 12px;
	}
	.card.-horizontal-sp .card-pict.-square {
		padding-top: 25.37879%;
	}
	.card.-horizontal-sp .card-description {
		display: block;
	}
	.card.-media,
	.card.-media .card-content {
		display: block;
	}
	.card.-media {
		padding: 15px;
	}
	.card.-media .card-pict {
		width: 50.32895%;
		margin: 0 12px 10px 0;
		padding-top: 28.31003%;
		float: left;
		border-radius: 7.5px;
	}
	.card.-media .card-pict.-square {
		width: 25.37879%;
		padding-top: 25.37879%;
	}
	.card.-media .card-description {
		-webkit-line-clamp: 2;
	}
	.card.-media .card-description:not(.-not-clear) {
		margin-top: 12px;
		clear: both;
	}
	.card.-media .card-hashtags {
		margin-top: 15px;
		clear: both;
	}
	.column-col-3 .card.-horizontal {
		padding: 12px;
		border-radius: 10px;
	}
	.column-col-3 .card.-horizontal .card-pict {
		width: 25.37879%;
		border-radius: 10px;
	}
	.column-col-3 .card.-horizontal .card-pict + .card-content {
		margin-left: 12px;
	}
	.column-col-3 .card.-horizontal .card-pict.-square {
		padding-top: 25.37879%;
	}
	.card-list-item {
		margin-bottom: 20px;
	}
	.card-slider-list-item {
		padding: 0 13px;
	}
	.card-slider-list-item .card {
		padding: 18px 15px;
	}
	.card-slider-list.slick-initialized {
		margin: 0 -19px;
	}
	.box-pict {
		margin: 10px 0;
	}
	.box-heading {
		margin-bottom: 5px;
		font-size: 1.7rem;
	}
	.box-title {
		margin-bottom: 5px;
		font-size: 1.7rem;
		line-height: 1.33333;
	}
	.box-title.-sm {
		font-size: 1.5rem;
	}
	.box-content {
		font-size: 1.3rem;
	}
	.box.-horizontal .box-pict.-book,
	.box.-float .box-pict.-book {
		max-width: 138px;
		margin-right: auto;
		margin-bottom: 10px;
		margin-left: auto;
	}
	.box.-float-sp {
		display: block;
	}
	.box.-float-sp::after {
		display: block;
		clear: both;
		content: "";
	}
	.box.-float-sp .box-pict {
		width: 47.77448%;
		margin-right: 15px;
		float: left;
	}
	.box.-float-sp .box-content {
		display: block;
	}
	.column-col-4 .box-title {
		font-size: 1.5rem;
	}
	.table-responsive + .table-responsive {
		margin-top: 25px;
	}
	.table-responsive table {
		width: 814px;
	}
	table.-th-w-20-sp th {
		width: 20px !important;
	}
	table.-th-w-40-sp th {
		width: 40px !important;
	}
	table.-th-w-60-sp th {
		width: 60px !important;
	}
	table.-th-w-80-sp th {
		width: 80px !important;
	}
	table.-th-w-100-sp th {
		width: 100px !important;
	}
	table.-th-w-120-sp th {
		width: 120px !important;
	}
	table.-th-w-140-sp th {
		width: 140px !important;
	}
	table.-th-w-160-sp th {
		width: 160px !important;
	}
	table.-th-w-180-sp th {
		width: 180px !important;
	}
	table.-th-w-200-sp th {
		width: 200px !important;
	}
	table.-th-w-220-sp th {
		width: 220px !important;
	}
	table.-th-w-240-sp th {
		width: 240px !important;
	}
	table.-th-w-260-sp th {
		width: 260px !important;
	}
	table.-th-w-280-sp th {
		width: 280px !important;
	}
	table.-th-w-300-sp th {
		width: 300px !important;
	}
	.table th,
	.article-post table th {
		font-size: 1.2rem;
	}
	.table td,
	.article-post table td {
		font-size: 1.3rem;
	}
	.form-control,
	.form-control-radius {
		font-size: 1.4rem;
	}
	.form-control {
		-webkit-box-shadow: -3px -3px 3px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
		height: 40px;
		padding: 4px 28px 4px 10px;
		box-shadow: -3px -3px 3px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	}
	.form-control {
		border-radius: 5px;
	}
	.form-control-radius {
		-webkit-box-shadow: -3px -3px 3px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
		height: 35px;
		padding: 4px 28px 4px 10px;
		box-shadow: -3px -3px 3px #ffffff inset, -2px -2px 2px #ffffff inset, 0 1px 3px rgba(0, 0, 0, 0.16) inset;
	}
	.form-control-select {
		font-size: 1.4rem;
	}
	.form-control-select::after {
		right: 12px;
	}
	.form-control-select > select {
		-webkit-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
		border-radius: 5px;
		box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
	}
	.form-control-select > select {
		height: 47px;
		padding: 6px 20px 8px 14px;
		font-size: 1.4rem;
	}
	.form-control-select-outline {
		font-size: 1.4rem;
	}
	.form-control-select-outline::after {
		right: 10px;
	}
	.form-control-select-outline > select {
		height: 35px;
		border-radius: 5px;
	}
	.form-control-checkbox > span,
	.form-control-radio > span {
		min-height: 35px;
		padding-left: 35px;
	}
	.form-control-checkbox > span::before,
	.form-control-radio > span::before {
		width: 35px;
		height: 35px;
	}
	.form-control-checkbox > span::after {
		left: 7px;
		width: 20px;
		height: 15px;
	}
	.form-control-radio > span::after {
		width: 15px;
	}
	.form-button {
		-webkit-box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
		border-radius: 5px;
		box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.21), -1px 0 5px #ffffff, 1px 0 5px #ffffff, -1px -1px 6px #ffffff;
	}
	.form-button {
		padding: 6px 8px 8px;
		font-size: 1.4rem;
	}
	.form-button-fill {
		padding: 8px 4px;
	}
	.form-button-group {
		margin-top: 45px;
	}
	.form-button-group-item {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		margin-left: 35px;
	}
	.form-button-group-item.-sm {
		max-width: 35.60831%;
	}
	.form-row-gruop {
		margin-left: -15px;
	}
	.form-row-gruop > * {
		margin-left: 15px;
	}
	.form-row-gruop .form-button-fill {
		width: 69px;
	}
	.form-group {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		font-size: 1.4rem;
	}
	.form-group + .form-group {
		margin-top: 35px;
	}
	.form-group-head {
		-webkit-box-ordinal-group: 0;
		-ms-flex-order: -1;
		order: -1;
		margin-bottom: 10px;
	}
	.form-search {
		margin: 25px 19px;
	}
	.form-search-group input[type="text"] {
		font-size: 1rem;
	}
	.form-search-group input[type="submit"] {
		width: 56px;
		margin-left: 10px;
	}
	.more-button {
		padding-right: 28px;
		font-size: 1.3rem;
	}
	.more-button::after {
		-webkit-transform: rotate(45deg) translate(-2px, -2px);
		width: 10px;
		height: 10px;
		transform: rotate(45deg) translate(-2px, -2px);
	}
	.more-button-block {
		margin-top: 30px;
	}
	.slider-arrows {
		margin-bottom: 20px;
	}
	.slider-arrows .slick-arrow {
		-webkit-box-shadow: -2px -2px 5px #ffffff, 1px 1px 5px rgba(0, 0, 0, 0.31);
		box-shadow: -2px -2px 5px #ffffff, 1px 1px 5px rgba(0, 0, 0, 0.31);
	}
	.slider-arrows .slick-arrow {
		width: 33px;
		height: 33px;
	}
	.slider-arrows .slick-arrow:not(:first-child) {
		margin-left: 20px;
	}
	.slider-arrows .slick-arrow:after {
		width: 15px;
		height: 6px;
	}
	.tab-button {
		-webkit-box-shadow: 4px 5px 10px rgba(0, 0, 0, 0.21), -3px 0 5px #ffffff, -3px -2px 7px #ffffff;
		box-shadow: 4px 5px 10px rgba(0, 0, 0, 0.21), -3px 0 5px #ffffff, -3px -2px 7px #ffffff;
	}
	.tab-button {
		border-radius: 5px 5px 0 0;
	}
	.tab-button-list {
		margin: 0 19px;
	}
	.tab-button-list-item {
		min-height: 53px;
		padding-top: 9px;
	}
	.tab-button-list-item.is-active .tab-button {
		padding-bottom: 5px;
	}
	.tab-panel {
		padding: 14px 0 35px;
	}
	.header-nav [data-effect-delay-sp="1"] {
		-webkit-transition-delay: 0.05s !important;
		transition-delay: 0.05s !important;
	}
	.header-nav [data-effect-delay-sp="2"] {
		-webkit-transition-delay: 0.1s !important;
		transition-delay: 0.1s !important;
	}
	.header-nav [data-effect-delay-sp="3"] {
		-webkit-transition-delay: 0.15s !important;
		transition-delay: 0.15s !important;
	}
	.header-nav [data-effect-delay-sp="4"] {
		-webkit-transition-delay: 0.2s !important;
		transition-delay: 0.2s !important;
	}
	.header-nav [data-effect-delay-sp="5"] {
		-webkit-transition-delay: 0.25s !important;
		transition-delay: 0.25s !important;
	}
	.header-nav [data-effect-delay-sp="6"] {
		-webkit-transition-delay: 0.3s !important;
		transition-delay: 0.3s !important;
	}
	.header-nav [data-effect-delay-sp="7"] {
		-webkit-transition-delay: 0.35s !important;
		transition-delay: 0.35s !important;
	}
	.header-nav [data-effect-delay-sp="8"] {
		-webkit-transition-delay: 0.4s !important;
		transition-delay: 0.4s !important;
	}
	.header-nav [data-effect-delay-sp="9"] {
		-webkit-transition-delay: 0.45s !important;
		transition-delay: 0.45s !important;
	}
	.header-nav [data-effect-delay-sp="10"] {
		-webkit-transition-delay: 0.5s !important;
		transition-delay: 0.5s !important;
	}
	.header-nav [data-effect-delay-sp="11"] {
		-webkit-transition-delay: 0.55s !important;
		transition-delay: 0.55s !important;
	}
	.header-nav [data-effect-delay-sp="12"] {
		-webkit-transition-delay: 0.6s !important;
		transition-delay: 0.6s !important;
	}
	.header-nav [data-effect-delay-sp="13"] {
		-webkit-transition-delay: 0.65s !important;
		transition-delay: 0.65s !important;
	}
	.header-nav [data-effect-delay-sp="14"] {
		-webkit-transition-delay: 0.7s !important;
		transition-delay: 0.7s !important;
	}
	.header-nav [data-effect-delay-sp="15"] {
		-webkit-transition-delay: 0.75s !important;
		transition-delay: 0.75s !important;
	}
	.header-nav [data-effect-delay-sp="16"] {
		-webkit-transition-delay: 0.8s !important;
		transition-delay: 0.8s !important;
	}
	.header-nav [data-effect-delay-sp="17"] {
		-webkit-transition-delay: 0.85s !important;
		transition-delay: 0.85s !important;
	}
	.header-nav [data-effect-delay-sp="18"] {
		-webkit-transition-delay: 0.9s !important;
		transition-delay: 0.9s !important;
	}
	.header-nav [data-effect-delay-sp="19"] {
		-webkit-transition-delay: 0.95s !important;
		transition-delay: 0.95s !important;
	}
	.header-nav [data-effect-delay-sp="20"] {
		-webkit-transition-delay: 1s !important;
		transition-delay: 1s !important;
	}
	.panel-outline {
		margin-top: 54px;
		padding: 35px 25px;
		border-radius: 10px;
	}
	.panel-outline-title {
		margin-bottom: 35px;
		font-size: 1.5rem;
	}
	.panel-outline-title::before,
	.panel-outline-title::after {
		width: 27.5px;
	}
	.article {
		padding: 18px 0 50px;
		font-size: 1.4rem;
	}
	.article-inner {
		padding: 0 19px;
	}
	.article-panel {
		width: auto;
		margin: 0 19px;
		padding: 15px 19px 30px;
		border-radius: 15px;
	}
	.article-body {
		margin-top: 25px;
	}
	.article-category {
		margin-bottom: 1em;
		font-size: 1.3rem;
	}
	.article-date {
		font-size: 1rem;
	}
	.article-tags {
		font-size: 1.1rem;
	}
	.article-tags .link-text[href$=".pdf"]:after,
	.article-tags .link-list-title a[href$=".pdf"]:after,
	.link-list-title .article-tags a[href$=".pdf"]:after,
	.article-tags .link-list > li > a[href$=".pdf"]:after {
		background-size: auto 28px;
	}
	.article-post small {
		font-size: 1rem;
	}
	.article-post > table {
		display: block;
		overflow-x: auto;
	}
	.article-post > table thead,
	.article-post > table tbody {
		display: table;
		width: 814px;
	}
	.article-figure {
		margin: 30px 0;
	}
	.news .article-post h2:first-child {
		font-size: 1.6rem;
	}
	.toggle-box {
		margin: 30px 0;
		padding: 16px 20px 18px 25px;
		font-size: 1.4rem;
	}
	.toggle-box + .toggle-box {
		margin-top: 25px;
	}
	.toggle-box-header {
		font-size: 1.4rem;
	}
	.toggle-box-body {
		padding-bottom: 15px;
	}
	.toggle-box-content {
		margin-top: 20px;
	}
	.toggle-box-icon {
		right: -7px;
		width: 15px;
		height: 15px;
	}
	.toggle-box-icon::before,
	.toggle-box-icon::after {
		width: 7px;
	}
	.toggle-panel {
		padding: 40px 20px 35px 25px;
		font-size: 1.4rem;
	}
	.toggle-panel-section + .toggle-panel-section:not(.is-first) {
		margin-top: 25px;
		padding-top: 25px;
	}
	.toggle-panel-section + .toggle-panel-section:not(.is-first)::before {
		right: 0;
		left: 0;
	}
	.toggle-panel-title {
		margin-bottom: 0.75em;
		font-size: 1.4rem;
	}
	.toggle-panel .toggle-box-header {
		padding-right: 23px;
	}
	.toggle-panel .toggle-box-icon {
		right: 0;
	}
	.modal-button {
		-webkit-box-shadow: -2px -2px 5px #ffffff, 1px 1px 5px rgba(0, 0, 0, 0.31);
		box-shadow: -2px -2px 5px #ffffff, 1px 1px 5px rgba(0, 0, 0, 0.31);
	}
	.modal-button {
		width: 33px;
		height: 33px;
		margin: 8px 0 0 auto;
	}
	.modal-button::after {
		width: 14px;
		height: 14px;
	}
	.modal {
		padding: 45px 19px;
	}
	.modal-close-button {
		top: 15px;
		right: 19px;
		width: 26px;
		height: 26px;
	}
	.modal-close-button::before,
	.modal-close-button::after {
		height: 2px;
	}
	.carousel-visual {
		margin: 30px 0;
	}
	.carousel-visual-dots {
		bottom: 10px;
	}
	.carousel-visual-dots > li button {
		width: 12px;
		height: 12px;
	}
	.carousel-visual-dots > li button::before {
		top: 2px;
		right: 2px;
		bottom: 2px;
		left: 2px;
	}
	.carousel-visual-arrow {
		width: 26px;
		height: 26px;
	}
	.carousel-visual-arrow.-prev {
		left: 8px;
	}
	.carousel-visual-arrow.-next {
		right: 8px;
	}
	.relation-content + .relation-content::before {
		width: calc(100vw - 25px * 2);
	}
	.relation-content + .relation-content {
		margin-top: 60px;
		padding-top: 50px;
	}
	.relation {
		padding: 50px 0;
	}
	.contact-list {
		margin: 25px 0;
		font-size: 1.4rem;
	}
	.contact-list-head {
		margin-bottom: 10px;
	}
	.contact-panel {
		padding: 50px 20px;
	}
	.contact {
		padding: 50px 0 89px;
	}
	.contact + .contact {
		margin-top: 30px;
	}
	.contact[class*="bg-base"] {
		padding-top: 19px;
		padding-bottom: 19px;
	}
	.contact-lead-block {
		margin-top: 30px;
		font-size: 1.5rem;
	}
	.contact-button-block {
		margin-top: 30px;
	}
	.group-list {
		margin: -10px -7px;
	}
	.group-list-item {
		min-height: 65px;
		padding: 10px 7px;
	}
	.group-list-item a[target="_blank"]::after {
		width: 6px;
		height: 6px;
	}
	.group-list-item a {
		-webkit-box-shadow: -2px -2px 5px #ffffff, 2px 2px 5px rgba(0, 0, 0, 0.16);
		padding: 5px 3px;
		border-radius: 7px;
		box-shadow: -2px -2px 5px #ffffff, 2px 2px 5px rgba(0, 0, 0, 0.16);
	}
	.group-list-item a[target="_blank"]::after {
		right: 7px;
		bottom: 4.5px;
	}
	.group-list-item a img {
		max-height: 15px;
	}
	.group-list-item a img.sp-content {
		max-height: 26px;
	}
	.group {
		padding: 30px 0 55px;
	}
	.unit-case-heading-group {
		z-index: 1;
		position: absolute;
		right: 0;
		bottom: 100%;
		left: 0;
		padding: 0 19px 16px;
		color: #ffffff;
	}
	.unit-case-heading-group::after {
		z-index: -1;
		position: absolute;
		top: 0;
		bottom: 0;
		left: 0;
		width: 100vw;
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.5)));
		background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5));
		content: "";
	}
	.unit-case .box-content {
		position: relative;
		padding: 10px 19px 20px;
	}
	.unit-case .box-heading {
		font-size: 2.4rem;
	}
	.unit-iframe-button {
		bottom: 27px;
	}
	.unit-message {
		margin: 0 14px;
	}
	.unit-message-heading {
		margin: 15px 0;
		font-size: 1.4rem;
	}
	.unit-message-heading:first-child {
		margin-top: 0;
	}
	.unit-message-title {
		font-size: 1.4rem;
	}
	.search-control {
		margin-bottom: 35px;
		font-size: 1.4rem;
	}
	.search-control-count {
		margin-bottom: 25px;
	}
	.search-control-filtering {
		margin-left: -25px;
	}
	.search-control-filtering-item {
		-webkit-box-flex: 1;
		-ms-flex: 1;
		flex: 1;
	}
	body.search ._popfind_sitesearch .search-control ._countselector,
	body.search ._popfind_sitesearch .search-control ._sortorderselector,
	body.search ._popfind_sitesearch .search-control ._attributegroup {
		display: block;
		text-align: center;
	}
	body.search ._popfind_sitesearch .search-control ._countselector ._label,
	body.search ._popfind_sitesearch .search-control ._countselector ._group,
	body.search ._popfind_sitesearch .search-control ._sortorderselector ._label,
	body.search ._popfind_sitesearch .search-control ._sortorderselector ._group,
	body.search ._popfind_sitesearch .search-control ._attributegroup ._label,
	body.search ._popfind_sitesearch .search-control ._attributegroup ._group {
		margin-bottom: 10px;
		font-size: 1.4rem;
	}
	body.search ._popfind_sitesearch .search-control ._countselector select,
	body.search ._popfind_sitesearch .search-control ._sortorderselector select,
	body.search ._popfind_sitesearch .search-control ._attributegroup select {
		width: 100%;
		height: 35px;
		border-radius: 5px;
	}
	body.search ._popfind_sitesearch ._items ._item {
		margin-bottom: 25px;
		padding-bottom: 20px;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._layoutgroup1 {
		width: 43.85185%;
		margin: 0 10px 10px 0;
		float: left;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail a {
		padding-top: 56.75676%;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._title {
		font-size: 1.5rem;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._title ~ * {
		clear: both;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._link {
		font-size: 1rem;
	}
	body.search ._popfind_sitesearch ._pagenator {
		margin-top: 40px;
	}
	body.search ._popfind_sitesearch ._pagenator ._nav._page {
		min-width: 36px;
		min-height: 36px;
		margin: 5px;
	}
	body.search ._popfind_sitesearch ._pagenator ._nav._page a {
		border-width: 1px;
	}
	.home-content {
		padding: 50px 0;
	}
	.home-content-heading {
		margin-bottom: 35px;
		font-size: 2.25rem;
	}
	.home-content-heading + .slider-arrows {
		margin-top: -35px;
	}
	.home-content-lead {
		margin-bottom: 20px;
		font-size: 1.4rem;
	}
	.home-mainvisual-item::after::after {
		height: 115px;
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.6)));
		background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.6));
	}
	.home-mainvisual-button {
		top: 84%;
	}
	.home-mainvisual-button.-dx {
		top: 88.5%;
	}
	.home-mainvisual-button a {
		min-width: 178px;
		min-height: 40px;
	}
	.home-mainvisual-button.-dx a {
		min-width: 178px;
		min-height: 40px;
	}
	.home-company {
		padding-top: 63px;
	}
	.home-company-lead {
		font-size: 2rem;
	}
	.home-company .button-block {
		margin-top: 65px;
	}
	.home-service {
		padding: 50px 0 60px;
	}
	.home-service-pict {
		max-width: 97.76119%;
		margin: 20px auto 30px;
	}
	.home-service-link > li {
		width: 35%;
		height: 100px;
	}
	.home-service-link > li.bx {
		right: auto;
		left: -5%;
	}
	.home-service-link > li.dx {
		right: -5%;
		left: auto;
	}
	.home-service .button-block {
		margin-top: 30px;
	}
	.home-topics {
		padding-top: 25px;
	}
	.home-topics .slider-arrows {
		margin: 45px 0 20px;
	}
	.home-topics-list-main-item {
		margin-top: 24px;
	}
	.home-topics-list-main-item [target="_blank"] .card-heading::after {
		width: 11px;
		height: 11px;
	}
	.home-topics-list-main-item:first-child .card-heading {
		font-size: 2.4rem;
		line-height: 1;
	}
	.home-topics-list-main-item:not(:first-child) .card-heading {
		font-size: 2.4rem;
		line-height: 1;
	}
	.home-topics-list-sub {
		margin: 30px 0 0;
	}
	.home-topics-list-sub + .home-topics-list-sub {
		margin-top: 45px;
	}
	.home-topics-list-sub-item + .home-topics-list-sub-item {
		margin-top: 28px;
	}
	.home-topics-list-sub-item .card {
		padding: 18px 15px 20px;
	}
	.home-topics-list-sub-item .card.-media {
		padding: 20px;
	}
	.home-topics-list-sub[data-slider-link] .home-topics-list-sub-item {
		max-width: 63.2vw;
		padding: 0 6px;
	}
	.home-topics-list-sub[data-slider-link] .home-topics-list-sub-item + .home-topics-list-sub-item {
		margin-top: 0;
	}
	.home-topics-list-sub[data-slider-link] .home-topics-list-sub-item .card-description {
		-webkit-line-clamp: 4;
	}
	.home-topics-list-sub[data-slider-link="first"] .home-topics-list-sub-item:nth-child(odd) {
		padding: 17px 25px 16px;
	}
	.home-topics-list-sub[data-slider-link="first"] .home-topics-list-sub-item:nth-child(odd) .card {
		padding: 15px 12px;
	}
	.home-topics-list-sub[data-slider-link="second"] .home-topics-list-sub-item:nth-child(even) {
		padding: 17px 25px 16px;
	}
	.home-topics-list-sub[data-slider-link="second"] .home-topics-list-sub-item:nth-child(even) .card {
		padding: 15px 12px;
	}
	.home-filtering-header-row {
		margin-bottom: 28px;
	}
	.home-filtering-title {
		padding-bottom: 2px;
		font-size: 1.8rem;
	}
	.home-filtering-box {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		width: auto;
	}
	.home-filtering-box .filtering-label {
		font-size: 1.5rem;
	}
	.capabilities .lgp-bg {
		padding: 40px 20px;
	}
	.capabilities .lgp-bg .capabilities-about-lead p {
		font-size: 1.3rem;
	}
	.capabilities .heading-lgp {
		font-size: 1.5rem;
	}
	.capabilities .button.-lgp {
		-webkit-box-shadow: -2px -2px 5px #ffffff, 10px 10px 20px rgba(0, 0, 0, 0.25);
		box-shadow: -2px -2px 5px #ffffff, 10px 10px 20px rgba(0, 0, 0, 0.25);
	}
	.capabilities-business-card-title-en > span,
	.capabilities-section-category-en > span,
	.capabilities-tab .tab-button > em > span {
		font-size: 1rem;
	}
	.capabilities-about {
		padding: 45px 0 50px;
	}
	.capabilities-about-title {
		margin-bottom: 45px;
	}
	.capabilities-about-title > img {
		width: 230px;
	}
	.capabilities-about .button-block {
		margin-top: 50px;
	}
	.capabilities-business-cards .capabilities-business-card {
		width: calc((100% - 15px) / 2);
		margin-left: 15px;
	}
	.capabilities-business-cards .capabilities-business-card:nth-child(2n + 1) {
		margin-left: 0;
	}
	.capabilities-business-cards .capabilities-business-card:nth-child(n + 3) {
		margin-top: 15px;
	}
	.capabilities-business-card {
		padding: 20px 5px 26px;
		border-radius: 10px;
	}
	.capabilities-business-card-title {
		margin-bottom: 12px;
		margin-bottom: 0;
		font-size: 1.1rem;
	}
	.capabilities-business-card-title-en {
		font-size: 48.5px;
	}
	.capabilities-business-card-text {
		font-size: 1rem;
	}
	.capabilities-model-figure {
		margin: 0 -7px;
	}
	.capabilities-model-figure-item {
		width: 96px;
		width: 25.6vw;
		height: 96px;
		height: 25.6vw;
		padding: 4px;
		padding: 1.06667vw;
	}
	.capabilities-section {
		padding: 30px 0 50px;
	}
	.capabilities-section-category {
		margin-bottom: 15px;
		font-size: 1.5rem;
	}
	.capabilities-section-category-en {
		margin-right: 10px;
		font-size: 2.5rem;
	}
	.capabilities-section-heading {
		margin-bottom: 10px;
		font-size: 1.5rem;
	}
	.capabilities-tab .tab-button > em {
		margin-bottom: 0;
		font-size: 2.5rem;
	}
	.capabilities-article {
		margin-top: 30px;
	}
	.capabilities-article + .capabilities-article {
		margin-top: 50px;
	}
	.capabilities-article-heading {
		margin-bottom: 10px;
		font-size: 1.5rem;
	}
	.capabilities-article-text {
		width: 52.53731%;
		float: right;
	}
	.capabilities-article-profile {
		margin: 10px 58.50746% 0 0;
	}
	.capabilities-article-profile-name {
		font-size: 1.4rem;
	}
	.capabilities-article-button {
		padding-top: 25px;
		clear: both;
		text-align: center;
	}
	.capabilities-article-button > a {
		min-width: 178px;
	}
	.capabilities-article-avatar {
		width: 41.9403%;
		margin-right: 58.50746%;
		border-radius: 10px;
	}
	.capabilities-article-avatar:not(:first-child) {
		margin-top: 15px;
	}
	.box.-horizontal.-capabilities .box-pict img {
		max-width: 207px;
		margin: 0 auto;
	}
	.fl-none-sp {
		float: none !important;
	}
	.fl-clear-sp {
		clear: both !important;
	}
	.fs-sm {
		font-size: 1rem !important;
	}
	.fs-md {
		font-size: 1.2rem !important;
	}
	.fs-lg {
		font-size: 1.3rem !important;
	}
	.m-auto-sp {
		margin: 0 auto !important;
	}
	.mt-0-sp {
		margin-top: 0px !important;
	}
	.mb-0-sp {
		margin-bottom: 0px !important;
	}
	.ml-0-sp {
		margin-left: 0px !important;
	}
	.mr-0-sp {
		margin-right: 0px !important;
	}
	.mt-5-sp {
		margin-top: 5px !important;
	}
	.mb-5-sp {
		margin-bottom: 5px !important;
	}
	.ml-5-sp {
		margin-left: 5px !important;
	}
	.mr-5-sp {
		margin-right: 5px !important;
	}
	.mt-10-sp {
		margin-top: 10px !important;
	}
	.mb-10-sp {
		margin-bottom: 10px !important;
	}
	.ml-10-sp {
		margin-left: 10px !important;
	}
	.mr-10-sp {
		margin-right: 10px !important;
	}
	.mt-15-sp {
		margin-top: 15px !important;
	}
	.mb-15-sp {
		margin-bottom: 15px !important;
	}
	.ml-15-sp {
		margin-left: 15px !important;
	}
	.mr-15-sp {
		margin-right: 15px !important;
	}
	.mt-20-sp {
		margin-top: 20px !important;
	}
	.mb-20-sp {
		margin-bottom: 20px !important;
	}
	.ml-20-sp {
		margin-left: 20px !important;
	}
	.mr-20-sp {
		margin-right: 20px !important;
	}
	.mt-25-sp {
		margin-top: 25px !important;
	}
	.mb-25-sp {
		margin-bottom: 25px !important;
	}
	.ml-25-sp {
		margin-left: 25px !important;
	}
	.mr-25-sp {
		margin-right: 25px !important;
	}
	.mt-30-sp {
		margin-top: 30px !important;
	}
	.mb-30-sp {
		margin-bottom: 30px !important;
	}
	.ml-30-sp {
		margin-left: 30px !important;
	}
	.mr-30-sp {
		margin-right: 30px !important;
	}
	.mt-35-sp {
		margin-top: 35px !important;
	}
	.mb-35-sp {
		margin-bottom: 35px !important;
	}
	.ml-35-sp {
		margin-left: 35px !important;
	}
	.mr-35-sp {
		margin-right: 35px !important;
	}
	.mt-40-sp {
		margin-top: 40px !important;
	}
	.mb-40-sp {
		margin-bottom: 40px !important;
	}
	.ml-40-sp {
		margin-left: 40px !important;
	}
	.mr-40-sp {
		margin-right: 40px !important;
	}
	.mt-45-sp {
		margin-top: 45px !important;
	}
	.mb-45-sp {
		margin-bottom: 45px !important;
	}
	.ml-45-sp {
		margin-left: 45px !important;
	}
	.mr-45-sp {
		margin-right: 45px !important;
	}
	.mt-50-sp {
		margin-top: 50px !important;
	}
	.mb-50-sp {
		margin-bottom: 50px !important;
	}
	.ml-50-sp {
		margin-left: 50px !important;
	}
	.mr-50-sp {
		margin-right: 50px !important;
	}
	.mt-55-sp {
		margin-top: 55px !important;
	}
	.mb-55-sp {
		margin-bottom: 55px !important;
	}
	.ml-55-sp {
		margin-left: 55px !important;
	}
	.mr-55-sp {
		margin-right: 55px !important;
	}
	.mt-60-sp {
		margin-top: 60px !important;
	}
	.mb-60-sp {
		margin-bottom: 60px !important;
	}
	.ml-60-sp {
		margin-left: 60px !important;
	}
	.mr-60-sp {
		margin-right: 60px !important;
	}
	.mt-65-sp {
		margin-top: 65px !important;
	}
	.mb-65-sp {
		margin-bottom: 65px !important;
	}
	.ml-65-sp {
		margin-left: 65px !important;
	}
	.mr-65-sp {
		margin-right: 65px !important;
	}
	.mt-70-sp {
		margin-top: 70px !important;
	}
	.mb-70-sp {
		margin-bottom: 70px !important;
	}
	.ml-70-sp {
		margin-left: 70px !important;
	}
	.mr-70-sp {
		margin-right: 70px !important;
	}
	.mt-75-sp {
		margin-top: 75px !important;
	}
	.mb-75-sp {
		margin-bottom: 75px !important;
	}
	.ml-75-sp {
		margin-left: 75px !important;
	}
	.mr-75-sp {
		margin-right: 75px !important;
	}
	.mt-80-sp {
		margin-top: 80px !important;
	}
	.mb-80-sp {
		margin-bottom: 80px !important;
	}
	.ml-80-sp {
		margin-left: 80px !important;
	}
	.mr-80-sp {
		margin-right: 80px !important;
	}
	.mt-85-sp {
		margin-top: 85px !important;
	}
	.mb-85-sp {
		margin-bottom: 85px !important;
	}
	.ml-85-sp {
		margin-left: 85px !important;
	}
	.mr-85-sp {
		margin-right: 85px !important;
	}
	.mt-90-sp {
		margin-top: 90px !important;
	}
	.mb-90-sp {
		margin-bottom: 90px !important;
	}
	.ml-90-sp {
		margin-left: 90px !important;
	}
	.mr-90-sp {
		margin-right: 90px !important;
	}
	.mt-95-sp {
		margin-top: 95px !important;
	}
	.mb-95-sp {
		margin-bottom: 95px !important;
	}
	.ml-95-sp {
		margin-left: 95px !important;
	}
	.mr-95-sp {
		margin-right: 95px !important;
	}
	.mt-100-sp {
		margin-top: 100px !important;
	}
	.mb-100-sp {
		margin-bottom: 100px !important;
	}
	.ml-100-sp {
		margin-left: 100px !important;
	}
	.mr-100-sp {
		margin-right: 100px !important;
	}
	.pt-0-sp {
		padding-top: 0px !important;
	}
	.pb-0-sp {
		padding-bottom: 0px !important;
	}
	.pl-0-sp {
		padding-left: 0px !important;
	}
	.pr-0-sp {
		padding-right: 0px !important;
	}
	.pt-5-sp {
		padding-top: 5px !important;
	}
	.pb-5-sp {
		padding-bottom: 5px !important;
	}
	.pl-5-sp {
		padding-left: 5px !important;
	}
	.pr-5-sp {
		padding-right: 5px !important;
	}
	.pt-10-sp {
		padding-top: 10px !important;
	}
	.pb-10-sp {
		padding-bottom: 10px !important;
	}
	.pl-10-sp {
		padding-left: 10px !important;
	}
	.pr-10-sp {
		padding-right: 10px !important;
	}
	.pt-15-sp {
		padding-top: 15px !important;
	}
	.pb-15-sp {
		padding-bottom: 15px !important;
	}
	.pl-15-sp {
		padding-left: 15px !important;
	}
	.pr-15-sp {
		padding-right: 15px !important;
	}
	.pt-20-sp {
		padding-top: 20px !important;
	}
	.pb-20-sp {
		padding-bottom: 20px !important;
	}
	.pl-20-sp {
		padding-left: 20px !important;
	}
	.pr-20-sp {
		padding-right: 20px !important;
	}
	.pt-25-sp {
		padding-top: 25px !important;
	}
	.pb-25-sp {
		padding-bottom: 25px !important;
	}
	.pl-25-sp {
		padding-left: 25px !important;
	}
	.pr-25-sp {
		padding-right: 25px !important;
	}
	.pt-30-sp {
		padding-top: 30px !important;
	}
	.pb-30-sp {
		padding-bottom: 30px !important;
	}
	.pl-30-sp {
		padding-left: 30px !important;
	}
	.pr-30-sp {
		padding-right: 30px !important;
	}
	.pt-35-sp {
		padding-top: 35px !important;
	}
	.pb-35-sp {
		padding-bottom: 35px !important;
	}
	.pl-35-sp {
		padding-left: 35px !important;
	}
	.pr-35-sp {
		padding-right: 35px !important;
	}
	.pt-40-sp {
		padding-top: 40px !important;
	}
	.pb-40-sp {
		padding-bottom: 40px !important;
	}
	.pl-40-sp {
		padding-left: 40px !important;
	}
	.pr-40-sp {
		padding-right: 40px !important;
	}
	.pt-45-sp {
		padding-top: 45px !important;
	}
	.pb-45-sp {
		padding-bottom: 45px !important;
	}
	.pl-45-sp {
		padding-left: 45px !important;
	}
	.pr-45-sp {
		padding-right: 45px !important;
	}
	.pt-50-sp {
		padding-top: 50px !important;
	}
	.pb-50-sp {
		padding-bottom: 50px !important;
	}
	.pl-50-sp {
		padding-left: 50px !important;
	}
	.pr-50-sp {
		padding-right: 50px !important;
	}
	.pt-55-sp {
		padding-top: 55px !important;
	}
	.pb-55-sp {
		padding-bottom: 55px !important;
	}
	.pl-55-sp {
		padding-left: 55px !important;
	}
	.pr-55-sp {
		padding-right: 55px !important;
	}
	.pt-60-sp {
		padding-top: 60px !important;
	}
	.pb-60-sp {
		padding-bottom: 60px !important;
	}
	.pl-60-sp {
		padding-left: 60px !important;
	}
	.pr-60-sp {
		padding-right: 60px !important;
	}
	.pt-65-sp {
		padding-top: 65px !important;
	}
	.pb-65-sp {
		padding-bottom: 65px !important;
	}
	.pl-65-sp {
		padding-left: 65px !important;
	}
	.pr-65-sp {
		padding-right: 65px !important;
	}
	.pt-70-sp {
		padding-top: 70px !important;
	}
	.pb-70-sp {
		padding-bottom: 70px !important;
	}
	.pl-70-sp {
		padding-left: 70px !important;
	}
	.pr-70-sp {
		padding-right: 70px !important;
	}
	.pt-75-sp {
		padding-top: 75px !important;
	}
	.pb-75-sp {
		padding-bottom: 75px !important;
	}
	.pl-75-sp {
		padding-left: 75px !important;
	}
	.pr-75-sp {
		padding-right: 75px !important;
	}
	.pt-80-sp {
		padding-top: 80px !important;
	}
	.pb-80-sp {
		padding-bottom: 80px !important;
	}
	.pl-80-sp {
		padding-left: 80px !important;
	}
	.pr-80-sp {
		padding-right: 80px !important;
	}
	.pt-85-sp {
		padding-top: 85px !important;
	}
	.pb-85-sp {
		padding-bottom: 85px !important;
	}
	.pl-85-sp {
		padding-left: 85px !important;
	}
	.pr-85-sp {
		padding-right: 85px !important;
	}
	.pt-90-sp {
		padding-top: 90px !important;
	}
	.pb-90-sp {
		padding-bottom: 90px !important;
	}
	.pl-90-sp {
		padding-left: 90px !important;
	}
	.pr-90-sp {
		padding-right: 90px !important;
	}
	.pt-95-sp {
		padding-top: 95px !important;
	}
	.pb-95-sp {
		padding-bottom: 95px !important;
	}
	.pl-95-sp {
		padding-left: 95px !important;
	}
	.pr-95-sp {
		padding-right: 95px !important;
	}
	.pt-100-sp {
		padding-top: 100px !important;
	}
	.pb-100-sp {
		padding-bottom: 100px !important;
	}
	.pl-100-sp {
		padding-left: 100px !important;
	}
	.pr-100-sp {
		padding-right: 100px !important;
	}
	.text-center-sp {
		text-align: center !important;
	}
	.text-left-sp {
		text-align: left !important;
	}
	.text-right-sp {
		text-align: right !important;
	}
	.pc-content {
		display: none !important;
	}
	.sp-content {
		display: block !important;
	}
	/* width(px) 5-150 */
	.w-5-sp {
		width: 5px !important;
	}
	.w-10-sp {
		width: 10px !important;
	}
	.w-15-sp {
		width: 15px !important;
	}
	.w-20-sp {
		width: 20px !important;
	}
	.w-25-sp {
		width: 25px !important;
	}
	.w-30-sp {
		width: 30px !important;
	}
	.w-35-sp {
		width: 35px !important;
	}
	.w-40-sp {
		width: 40px !important;
	}
	.w-45-sp {
		width: 45px !important;
	}
	.w-50-sp {
		width: 50px !important;
	}
	.w-55-sp {
		width: 55px !important;
	}
	.w-60-sp {
		width: 60px !important;
	}
	.w-65-sp {
		width: 65px !important;
	}
	.w-70-sp {
		width: 70px !important;
	}
	.w-75-sp {
		width: 75px !important;
	}
	.w-80-sp {
		width: 80px !important;
	}
	.w-85-sp {
		width: 85px !important;
	}
	.w-90-sp {
		width: 90px !important;
	}
	.w-95-sp {
		width: 95px !important;
	}
	.w-100-sp {
		width: 100px !important;
	}
	.w-105-sp {
		width: 105px !important;
	}
	.w-110-sp {
		width: 110px !important;
	}
	.w-115-sp {
		width: 115px !important;
	}
	.w-120-sp {
		width: 120px !important;
	}
	.w-125-sp {
		width: 125px !important;
	}
	.w-130-sp {
		width: 130px !important;
	}
	.w-135-sp {
		width: 135px !important;
	}
	.w-140-sp {
		width: 140px !important;
	}
	.w-145-sp {
		width: 145px !important;
	}
	.w-150-sp {
		width: 150px !important;
	}
	/* width(%) 5-100 */
	.w-5per-sp {
		width: 5% !important;
	}
	.w-10per-sp {
		width: 10% !important;
	}
	.w-15per-sp {
		width: 15% !important;
	}
	.w-20per-sp {
		width: 20% !important;
	}
	.w-25per-sp {
		width: 25% !important;
	}
	.w-30per-sp {
		width: 30% !important;
	}
	.w-35per-sp {
		width: 35% !important;
	}
	.w-40per-sp {
		width: 40% !important;
	}
	.w-45per-sp {
		width: 45% !important;
	}
	.w-50per-sp {
		width: 50% !important;
	}
	.w-55per-sp {
		width: 55% !important;
	}
	.w-60per-sp {
		width: 60% !important;
	}
	.w-65per-sp {
		width: 65% !important;
	}
	.w-70per-sp {
		width: 70% !important;
	}
	.w-75per-sp {
		width: 75% !important;
	}
	.w-80per-sp {
		width: 80% !important;
	}
	.w-85per-sp {
		width: 85% !important;
	}
	.w-90per-sp {
		width: 90% !important;
	}
	.w-95per-sp {
		width: 95% !important;
	}
	.w-100per-sp {
		width: 100% !important;
	}
	/* width(em) 5-10 */
	.w-1em-sp {
		width: 1em !important;
	}
	.w-2em-sp {
		width: 2em !important;
	}
	.w-3em-sp {
		width: 3em !important;
	}
	.w-4em-sp {
		width: 4em !important;
	}
	.w-5em-sp {
		width: 5em !important;
	}
	.w-6em-sp {
		width: 6em !important;
	}
	.w-7em-sp {
		width: 7em !important;
	}
	.w-8em-sp {
		width: 8em !important;
	}
	.w-9em-sp {
		width: 9em !important;
	}
	.w-10em-sp {
		width: 10em !important;
	}
}

@media screen and (min-width: 768px) {
	a:hover {
		text-decoration: underline;
	}
	.header-logo a:hover:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.header-hamburger:hover .header-hamburger-line::before,
	.header-hamburger:hover .header-hamburger-line::after {
		-webkit-transform: translateX(180%);
		-webkit-transition: all 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86);
		transform: translateX(180%);
		transition: all 0.8s cubic-bezier(0.785, 0.135, 0.15, 0.86);
	}
	.header-hamburger:hover .header-hamburger-line:nth-child(2)::before,
	.header-hamburger:hover .header-hamburger-line:nth-child(2)::after {
		-webkit-transition-delay: 0.08s;
		transition-delay: 0.08s;
	}
	.header-hamburger:hover .header-hamburger-line:nth-child(3)::before,
	.header-hamburger:hover .header-hamburger-line:nth-child(3)::after {
		-webkit-transition-delay: 0.16s;
		transition-delay: 0.16s;
	}
	.header-hamburger:hover.is-opened .header-hamburger-line:nth-child(3)::before,
	.header-hamburger:hover.is-opened .header-hamburger-line:nth-child(3)::after {
		-webkit-transform: translateX(-180%);
		transform: translateX(-180%);
	}
	.header-nav-inner {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-direction: column;
	}
	.header-nav-container {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-direction: column;
		flex-grow: 1;
		height: calc(100% - 246px);
		overflow: hidden;
	}
	.header-search {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		width: 100%;
		max-width: 76.39485%;
		margin-left: auto;
		padding-right: 200px;
	}
	.header-search-tags {
		-ms-flex-negative: 0;
		flex-shrink: 0;
	}
	.header-search-keyword {
		width: 342px;
		margin-right: 30px;
	}
	.header-contents {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-direction: row-reverse;
		flex-grow: 1;
		justify-content: space-between;
		height: calc(100% - 84px);
	}
	.header-menu {
		-ms-flex-negative: 0;
		-ms-overflow-style: none;
		/* IE, Edge 対応 */
		scrollbar-width: none;
		flex-shrink: 0;
		width: 270px;
		margin-right: 15px;
		padding-bottom: 60px;
		overflow-y: auto;
		border-right: 1px solid #ebebeb;
		/* Firefox 対応 */
	}
	.header-menu::-webkit-scrollbar {
		/* Chrome, Safari 対応 */
		display: none;
	}
	.header-menu-item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.header-menu-item a.is-not-hover {
		color: #888888;
	}
	.header-menu-item a {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		z-index: 2;
		align-items: center;
		width: 100%;
		height: 100%;
		min-height: 57px;
		border-left: 3px solid transparent;
	}
	.header-menu-item a:hover,
	.header-menu-item a.is-current {
		border-left-color: #000000;
		background-color: #efefef;
		text-decoration: none;
	}
	.header-menu-item a.is-not-hover::after {
		background-image: url("../images/5f1cf08b926e4e569882f3cd9ad7b5d7.gif)%22%20fill%3D%22none%22%20stroke%3D%22%23888%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%20stroke-width%3D%221%22%2F%3E%3C%2Fsvg%3E");
	}
	.header-dropdown {
		max-height: 100%;
		margin-left: 269px;
		border-left: 1px solid #ebebeb;
	}
	.header-dropdown.-lv1 {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-direction: column;
	}
	.header-dropdown.-lv1 > .header-dropdown-title,
	.header-dropdown.-lv1 > .header-dropdown-menu {
		width: 269px;
	}
	.header-dropdown.-lv1 .header-dropdown-menu-item a {
		padding-left: 2.2em;
	}
	.header-dropdown.-lv1.is-size-min {
		z-index: 3;
		margin-left: 0;
		border-left: 0;
	}
	.header-dropdown.-lv2 .header-dropdown-menu {
		-ms-flex-wrap: wrap;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-wrap: wrap;
		max-height: calc(100% - 57px);
		margin-left: 40px;
	}
	.header-dropdown.-lv2 .header-dropdown-menu-item {
		display: inline-block;
		width: calc(50% - 17px);
		margin-left: 30px;
	}
	.header-dropdown.-lv2 .header-dropdown-menu-item:nth-child(2n + 1) {
		margin-left: 0;
	}
	.header-dropdown.-lv2 .header-dropdown-menu-item a {
		padding-left: 1em;
	}
	.header-dropdown-menu {
		-ms-overflow-style: none;
		/* IE, Edge 対応 */
		scrollbar-width: none;
		overflow-y: auto;
		/* Firefox 対応 */
	}
	.header-dropdown-menu::-webkit-scrollbar {
		/* Chrome, Safari 対応 */
		display: none;
	}
	.header-dropdown-menu-item {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.header-topics {
		-ms-overflow-style: none;
		scrollbar-width: none;
		-webkit-backdrop-filter: blur(6px);
		width: 100%;
		max-width: 63.51931%;
		height: 100%;
		padding: 0 60px 50px 0;
		overflow-y: auto;
		backdrop-filter: blur(6px);
	}
	.header-topics::-webkit-scrollbar {
		/* Chrome, Safari 対応 */
		display: none;
	}
	.header-topics-banner:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.header-topics-box:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.header-link-list {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}
	.header-link-list.-logo li:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.header-links {
		-webkit-box-align: center;
		-ms-flex-align: center;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.header-links .header-link-list {
		margin-right: 12px;
	}
	.header.is-fixed {
		height: 80px;
	}
	.header.is-fixed .header-logo {
		/* margin: 15px 40px; */
	}
	.header.is-fixed .header-logo a {
		width: 105px;
		width: 140px;
		padding: 9px 10px 7px;
	}
	.header.is-fixed .header-hamburger {
		width: 52px;
		height: 42px;
		margin: 20px 50px 18px;
		padding: 10px;
	}
	.header.is-fixed .header-hamburger-line {
		right: 10px;
		width: 32px;
	}
	.header.is-fixed .header-hamburger-line:nth-child(1) {
		top: 10px;
	}
	.header.is-fixed .header-hamburger-line:nth-child(3) {
		bottom: 10px;
	}

	.header.is-fixed.is-opened  .header-hamburger-line:nth-child(1){
top: 2px;
	}
	.header-information-inner {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	.header-information-head {
		-ms-flex-negative: 0;
		flex-shrink: 0;
		margin-right: 15px;
		line-height: 1.4;
	}
	.header-information-close:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.footer-links > li a:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.pagetop a:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.column.-gap-sm-v {
		margin: -19px -26px;
	}
	.column.-gap-sm-v .column-col,
	.column.-gap-sm-v .column-col-auto,
	.column.-gap-sm-v .column-col-1,
	.column.-gap-sm-v .column-col-2,
	.column.-gap-sm-v .column-col-3,
	.column.-gap-sm-v .column-col-4,
	.column.-gap-sm-v .column-col-5,
	.column.-gap-sm-v .column-col-6 {
		padding: 19px 26px;
	}
	.content-narrow-sm [target="_blank"] .information-title {
		flex-grow: 0;
	}
	.content-narrow-sm [target="_blank"] .information-title::after {
		display: none;
	}
	.content-narrow-sm [target="_blank"] .information-title + .information-icon {
		align-self: center;
		flex-shrink: 0;
	}
	.content-narrow-sm [target="_blank"] .information-title + .information-icon::after {
		display: inline-block;
		width: 16px;
		height: 16px;
		margin-left: 0.6em;
		background: url(../images/icon_blank.svg) no-repeat 50% 50%;
		background-size: contain;
		content: "";
	}
	.heading-lv5 {
		font-size: 1.6rem;
	}
	.text-ellipsis-pc {
		overflow: hidden;
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.text-telephone {
		pointer-events: none;
	}
	.button-list.-column,
	.button-list.-column-2,
	.button-list.-column-3,
	.button-list.-column-4 {
		-ms-flex-wrap: wrap;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		margin-right: -19px;
		margin-left: -19px;
	}
	.button-list.-column .button-list-item,
	.button-list.-column-2 .button-list-item,
	.button-list.-column-3 .button-list-item,
	.button-list.-column-4 .button-list-item {
		padding-right: 19px;
		padding-left: 19px;
	}
	.button-list.-column .button-list-item .button,
	.button-list.-column-2 .button-list-item .button,
	.button-list.-column-3 .button-list-item .button,
	.button-list.-column-4 .button-list-item .button {
		min-width: 0;
	}
	.button-list.-column .button-list-item {
		width: 260px;
	}
	.button-list.-column-2 .button-list-item {
		width: 50%;
	}
	.button-list.-column-3 .button-list-item {
		width: 33.33333%;
	}
	.button-list.-column-4 .button-list-item {
		width: 25%;
	}
	.link-list-inside {
		padding: 0 28px;
	}
	.link-anchor-list {
		font-size: 1.6rem;
	}
	.link-rss:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.definition-list-contact dd {
		margin-left: 7em;
	}
	.list-annotation,
	.list-decimal,
	.article-post ol,
	.list-disc,
	.article-post ul {
		font-size: 1.6rem;
	}
	.social-list-item a:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.social-list-item.-sm img {
		height: 24px;
	}
	.tag-button:hover {
		background-color: #bbbbbb;
	}
	.filtering-button.-toggle.is-active {
		-webkit-box-shadow: none;
		z-index: 2;
		border-radius: 15px;
		border-color: transparent;
		background-color: transparent;
		box-shadow: none;
	}
	.filtering-button.-toggle.is-active::before {
		content: none;
	}
	.filtering-button.-toggle.is-active::after {
		-webkit-transform: rotate(-135deg) translate(-2px, -2px);
		transform: rotate(-135deg) translate(-2px, -2px);
	}
	.filtering-button.-toggle.is-active .filtering-button-inner {
		background-color: transparent;
	}
	.filtering-group .filtering-button-list {
		margin-right: 23px;
		margin-left: 23px;
	}
	.filtering-button-list-item {
		max-width: calc((100% - 58px) / 2);
	}
	.filtering-group .filtering-button-list-item:not(:first-child) {
		margin-left: 24px;
	}
	.filtering-selectbox-option.is-not-hover {
		color: #888888;
	}
	.filtering-selectbox-option.is-hover .filtering-selectbox-option-inner {
		-webkit-transform: translateX(4px);
		transform: translateX(4px);
	}
	.filtering.-toggle .filtering-content-close {
		top: 29px;
		right: 41px;
	}
	.filtering-link-block a:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.filtering-link-block a:hover {
		text-decoration: none;
	}
	.filtering-clear:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.information[href] {
		-webkit-transition: opacity 0.3s ease-in-out;
		transition: opacity 0.3s ease-in-out;
	}
	.information-list.-emergency .information-data {
		font-size: 1.3rem;
	}
	.information-list:not(.-emergency) .information-title {
		font-size: 1.6rem;
	}
	.information-content {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
	}
	.information-list.-multiple .information-content {
		width: calc(100% - 248px);
	}
	.information-content .information-data,
	.information-content .information-label {
		width: 76px;
		float: left;
	}
	.information-content .information-data ~ * {
		margin-left: 96px;
	}
	.information-tags {
		margin-left: 96px;
	}
	.card-title {
		line-height: 1.19048;
	}
	.card-title.-sm {
		line-height: 1.5625;
	}
	.card.-horizontal {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-direction: row;
		flex-grow: 1;
		padding: 35px;
	}
	.card.-horizontal.-center {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.card.-horizontal.-reverse {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
	.card.-horizontal.-reverse .card-content {
		margin: 0 35px 0 0;
	}
	.card.-horizontal .card-content {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
		margin: 0 0 0 35px;
		overflow: hidden;
	}
	.card.-horizontal .card-pict {
		-ms-flex-negative: 0;
		-ms-flex-item-align: start;
		flex-shrink: 0;
		align-self: flex-start;
		width: 59.26871%;
		margin-bottom: 0;
		padding-top: 33.33333%;
	}
	.card.-horizontal .card-pict.-sm {
		width: 26.19048%;
		padding-top: 14.71088%;
	}
	.card.-horizontal .card-pict.-logo {
		max-width: 32.54113%;
		padding-top: 32.54113%;
	}
	.column-col-2 .card,
	.column-col-3 .card {
		padding: 35px;
	}
	.column-col-2 .card.-horizontal {
		padding: 25px 25px 27px;
	}
	.column-col-2 .card.-horizontal .card-pict {
		width: 50.27523%;
		padding-top: 28.25688%;
	}
	.column-col-2 .card.-horizontal .card-pict.-logo {
		padding-top: 32.54113%;
	}
	.column-col-2 .card.-horizontal .card-pict.-square {
		width: 25.68807%;
		padding-top: 25.68807%;
	}
	.column-col-2 .card.-horizontal .card-content {
		margin-left: 25px;
	}
	.column-col-2 .card.-horizontal.-reverse .card-content {
		margin: 0 25px 0 0;
	}
	.column-col-3 .card.-horizontal .card-pict {
		width: 43.77104%;
	}
	.column-col-3 .card.-horizontal .card-pict + .card-content {
		margin-left: 20px;
	}
	.column-col-3 .card.-horizontal .card-pict.-square {
		padding-top: 43.77104%;
	}
	.column-col-4 .card {
		padding: 25px;
	}
	.column-col-4 .card-title {
		font-size: 1.6rem;
		line-height: 1.5625;
	}
	.relation-book .card {
		padding: 25px;
	}
	.relation-book .card-title {
		font-size: 1.6rem;
		line-height: 1.5625;
	}
	.card-list-item:not(.-wide) .card.-horizontal {
		padding: 25px;
	}
	.card-list-item:not(.-wide) .card.-horizontal .card-content {
		margin-left: 25px;
	}
	.card-list-item:not(.-wide) .card.-horizontal.-reverse .card-content {
		margin: 0 25px 0 0;
	}
	.card-list-item:not(.-wide) .card.-horizontal .card-pict {
		width: 30.88954%;
		padding-top: 17.3998%;
	}
	.card-list-item.-wide {
		margin-bottom: 58px;
	}
	.card-slider-list[data-slider-col="1"] .card-slider-list-item {
		max-width: 984px;
	}
	.card-slider-list[data-slider-col="1"]:not(.slick-initialized) .card-slider-list-item:nth-child(n + 2) {
		margin-top: 50px;
	}
	.card-slider-list[data-slider-col="1"] .card {
		padding: 30px 30px 38px;
	}
	.card-slider-list[data-slider-col="1"] .card-pict {
		width: 53.08924%;
		padding-top: 29.74828%;
	}
	.card-slider-list[data-slider-col="3"] .card-slider-list-item {
		max-width: 426px;
	}
	.card-slider-list[data-slider-col="3"]:not(.slick-initialized) .card-slider-list-item:nth-child(n + 4) {
		margin-top: 50px;
	}
	.card-slider-list[data-slider-col="3"] .card {
		padding: 28px 23px;
	}
	.card-slider-list[data-slider-col="4"] .card-slider-list-item {
		max-width: 320px;
	}
	.card-slider-list[data-slider-col="4"]:not(.slick-initialized) .card-slider-list-item:nth-child(n + 5) {
		margin-top: 50px;
	}
	.card-slider-list[data-slider-col="4"] .card {
		padding: 28px 23px;
	}
	.card-slider-list.if-few .slick-track {
		-webkit-transform: translate3d(0px, 0px, 0px) !important;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		justify-content: center;
		width: auto !important;
		transform: translate3d(0px, 0px, 0px) !important;
	}
	.box[href] {
		-webkit-transition: opacity 0.3s ease-in-out;
		transition: opacity 0.3s ease-in-out;
	}
	.box-tags ul {
		margin-top: 15px;
	}
	.box.-horizontal .box-pict:last-child,
	.box.-float .box-pict:last-child {
		margin-right: 0;
	}
	.box.-horizontal .box-pict.-md,
	.box.-float .box-pict.-md {
		width: 47.99358%;
	}
	.box.-horizontal .box-pict.-sm,
	.box.-float .box-pict.-sm {
		width: 16.21359%;
		margin-right: 25px;
	}
	.box.-horizontal .box-content:last-child,
	.box.-float .box-content:last-child {
		margin-right: 0;
	}
	.-reverse.box.-horizontal .box-pict,
	.-reverse.box.-float .box-pict {
		margin-right: 0;
	}
	.box.-horizontal {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
	.box.-horizontal.-bottom {
		-webkit-box-align: end;
		-ms-flex-align: end;
		align-items: flex-end;
	}
	.box.-horizontal.-center {
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	.box.-horizontal.-reverse {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-ms-flex-direction: row-reverse;
		flex-direction: row-reverse;
	}
	.box.-horizontal .box-pict {
		-ms-flex-negative: 0;
		flex-shrink: 0;
		margin-right: 50px;
		margin-bottom: 0;
	}
	.box.-horizontal .box-content {
		width: 100%;
		margin-right: 50px;
	}
	.box.-horizontal.-reverse .box-pict {
		margin-left: 50px;
	}
	.box.-float {
		display: block;
	}
	.box.-float .box-pict {
		margin-right: 40px;
		float: left;
	}
	.box.-float .box-content {
		display: block;
		margin-right: 40px;
	}
	.box.-float.-reverse .box-pict {
		margin-left: 40px;
		float: right;
	}
	.column-col-2 .box.-horizontal .box-pict {
		margin-right: 25px;
	}
	.-sm.form-control,
	.-sm.form-control-radius,
	.-sm.form-control-select,
	.-sm.form-control-select-outline {
		max-width: 120px;
	}
	.-md.form-control,
	.-md.form-control-radius,
	.-md.form-control-select,
	.-md.form-control-select-outline {
		max-width: 300px;
	}
	.form-group-head {
		width: 196px;
		padding: 0.75em 0.5em 0.75em 0;
	}
	.form-group-body {
		width: calc(100% - 196px);
		margin-left: auto;
	}
	.error-message {
		margin-left: 196px;
	}
	.more-button:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.more-button {
		font-size: 1.6rem;
	}
	.heading-lv2 + .slider-arrows,
	.article-post h2 + .slider-arrows {
		margin-top: -30px;
	}
	.tab-button:hover {
		color: #aaa;
	}
	.is-active .tab-button:hover {
		color: #000000;
	}
	.modal-button {
		position: absolute;
		right: -70px;
		bottom: 0;
	}
	.contact-list {
		-webkit-box-align: start;
		-ms-flex-align: start;
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		max-width: 675px;
	}
	.unit-case .box-content {
		z-index: 1;
		position: absolute;
		right: 0;
		bottom: 0;
		left: 0;
		padding: 0 60px 30px;
		color: #ffffff;
	}
	.unit-case .box-content::after {
		z-index: -1;
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		margin: 0 auto;
		background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.5)));
		background: linear-gradient(180deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.5));
		content: "";
	}
	.unit-case .box-content > * {
		min-width: 69.23653%;
		max-width: 925px;
	}
	.unit-case .box-content > .box-hashtags {
		min-width: 0;
	}
	.unit-case.-reverse .box-content {
		text-align: right;
	}
	.unit-case.-reverse .box-content > * {
		margin-left: auto;
	}
	.unit-message {
		max-width: 575px;
	}
	.search-control {
		-webkit-box-pack: justify;
		-ms-flex-pack: justify;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		justify-content: space-between;
	}
	.search-control-count {
		margin-right: auto;
	}
	body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute label:hover ._label {
		background-color: #bbbbbb;
	}
	body.search ._popfind_sitesearch .tag-field ._attributegroup ._attributes ._attribute._disable ._label:hover {
		background-color: #ffffff;
	}
	body.search ._popfind_sitesearch .search-control ._countselector,
	body.search ._popfind_sitesearch .search-control ._sortorderselector,
	body.search ._popfind_sitesearch .search-control ._attributegroup {
		-webkit-box-align: center;
		-ms-flex-align: center;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		align-items: center;
	}
	body.search ._popfind_sitesearch .search-control ._countselector ._label,
	body.search ._popfind_sitesearch .search-control ._countselector ._group,
	body.search ._popfind_sitesearch .search-control ._sortorderselector ._label,
	body.search ._popfind_sitesearch .search-control ._sortorderselector ._group,
	body.search ._popfind_sitesearch .search-control ._attributegroup ._label,
	body.search ._popfind_sitesearch .search-control ._attributegroup ._group {
		padding-right: 15px;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._layoutgroup1 {
		-ms-flex-negative: 0;
		flex-shrink: 0;
		margin-right: 20px;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._layoutgroup2 {
		-webkit-box-flex: 1;
		-ms-flex-positive: 1;
		flex-grow: 1;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail a {
		-webkit-transition: opacity 0.3s ease-in-out;
		transition: opacity 0.3s ease-in-out;
	}
	body.search ._popfind_sitesearch ._pagenator ._nav._page a:hover {
		background-color: #bbbbbb;
	}
	.home-topics-list-main-item .card.-horizontal .card-content {
		max-width: 344px;
		margin-left: 4.77002%;
	}
	.home-topics-list-main-item .card.-horizontal.-reverse .card-content {
		margin-right: 4.77002%;
		margin-left: auto;
	}
	.home-topics-list-main-item:first-child .card-pict {
		width: 62.07483%;
		padding-top: 34.86395%;
	}
	.home-topics-list-main-item:first-child .card-description {
		-webkit-line-clamp: 4;
	}
	.home-topics-list-main-item:first-child .card-heading {
		font-size: 5rem;
		line-height: 1;
	}
	.home-topics-list-main-item:not(:first-child) {
		max-width: 1074px;
		margin-right: auto;
		margin-left: 3.21285%;
	}
	.home-topics-list-main-item:not(:first-child) .card-heading {
		font-size: 4rem;
		line-height: 1;
	}
	.home-topics-list-main-item:nth-child(even) {
		margin-right: 3.21285%;
		margin-left: auto;
	}
	.home-topics-list-sub {
		-ms-flex-wrap: wrap;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		flex-wrap: wrap;
	}
	.home-topics-list-sub-item {
		width: 25%;
		max-width: 314px;
		padding: 1px 5px;
	}
	.-first .home-topics-list-sub-item:nth-child(odd) {
		padding: 28px 45px 22px;
	}
	.-first .home-topics-list-sub-item:nth-child(odd) .card {
		padding: 20px 20px 25px;
	}
	.-second .home-topics-list-sub-item:nth-child(even) {
		padding: 28px 45px 22px;
	}
	.-second .home-topics-list-sub-item:nth-child(even) .card {
		padding: 20px 20px 25px;
	}
	.capabilities-model .heading-lv2,
	.capabilities-model .article-post h2,
	.article-post .capabilities-model h2 {
		margin-bottom: 20px;
	}
	.capabilities-article {
		padding-left: 31.16505%;
	}
	.capabilities-article-avatar {
		position: absolute;
		top: 0;
		left: 0;
	}
	.capabilities-article-avatar:nth-of-type(2) {
		top: 311px;
		top: min(30.19417vw, 311px);
	}
	.-capabilities .box-pict {
		max-width: 207px;
		margin-right: 40px;
		margin-bottom: 1em;
	}
	.box.-capabilities .box-pict {
		max-width: 207px;
		margin: 0 auto;
		margin-bottom: 1em;
	}
	.box.-horizontal.-capabilities .box-pict {
		max-width: 207px;
		margin-right: 40px;
		margin-bottom: 1em;
	}
	.pt-0per-pc {
		padding-top: 0% !important;
	}
	.pt-5per-pc {
		padding-top: 5% !important;
	}
	.pt-10per-pc {
		padding-top: 10% !important;
	}
	.pt-15per-pc {
		padding-top: 15% !important;
	}
	.pt-20per-pc {
		padding-top: 20% !important;
	}
	.pt-25per-pc {
		padding-top: 25% !important;
	}
	.pt-30per-pc {
		padding-top: 30% !important;
	}
	.pt-35per-pc {
		padding-top: 35% !important;
	}
	.pt-40per-pc {
		padding-top: 40% !important;
	}
	.pt-45per-pc {
		padding-top: 45% !important;
	}
	.pt-50per-pc {
		padding-top: 50% !important;
	}
	.pt-55per-pc {
		padding-top: 55% !important;
	}
	.pt-60per-pc {
		padding-top: 60% !important;
	}
	.pt-65per-pc {
		padding-top: 65% !important;
	}
	.pt-70per-pc {
		padding-top: 70% !important;
	}
	.pt-75per-pc {
		padding-top: 75% !important;
	}
	.pt-80per-pc {
		padding-top: 80% !important;
	}
	.pt-85per-pc {
		padding-top: 85% !important;
	}
	.pt-90per-pc {
		padding-top: 90% !important;
	}
	.pt-95per-pc {
		padding-top: 95% !important;
	}
	.pt-100per-pc {
		padding-top: 100% !important;
	}
	.text-center-pc {
		text-align: center !important;
	}
	.text-left-pc {
		text-align: left !important;
	}
	.text-right-pc {
		text-align: right !important;
	}
	.hover-opacity:hover {
		text-decoration: none;
		opacity: 0.5;
	}
}

@media screen and (max-width: 1201px) {
	.header-contents.is-lv2 .header-menu-item {
		border: none;
	}
	.header-contents.is-lv2 .header-menu-item > a {
		-webkit-transition: none;
		opacity: 0;
		transition: none;
	}
	.header-contents.is-lv2 .header-dropdown-back-button {
		display: block;
	}
}

@media screen and (max-width: 1101px) {
	.header.is-opened {
		width: 100%;
		min-width: 0;
	}
}

@media all and (-ms-high-contrast: none) {
	.text-line-camp-1,
	.text-line-camp-2,
	.text-line-camp-3,
	.text-line-camp-4,
	.text-line-camp-5 {
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.text-line-camp-1 br,
	.text-line-camp-2 br,
	.text-line-camp-3 br,
	.text-line-camp-4 br,
	.text-line-camp-5 br {
		display: none;
	}
	.button {
		min-height: 0;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	.hashtag-list {
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.hashtag-list br {
		display: none;
	}
	.card-description {
		text-overflow: ellipsis;
		white-space: nowrap;
	}
	.card-description br {
		display: none;
	}
	.home-mainvisual-pict img {
		min-height: 0;
	}
	[data-capabilities-category] .capabilities-business-card-title-en,
	[data-capabilities-category] .capabilities-section-category-en,
	[data-capabilities-category] .capabilities-tab .tab-button > em,
	.capabilities-tab [data-capabilities-category] .tab-button > em {
		background-image: none;
	}
}

@media screen and (min-width: 768px) and (min-width: 768px) {
	.information[href]:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.card-slider-list[data-slider-col="4"] .card-title {
		font-size: 1.6rem;
		line-height: 1.5625;
	}
	.box[href]:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	body.search ._popfind_sitesearch ._items ._item ._wrap ._thumbnail a:hover {
		text-decoration: none;
		opacity: 0.5;
	}
	.home-topics-list-sub:not([data-slider-link])
		.home-topics-list-sub-item:nth-child(n + 5):nth-child(-n + 8):nth-child(even) {
		padding: 28px 45px 22px;
	}
	.home-topics-list-sub:not([data-slider-link])
		.home-topics-list-sub-item:nth-child(n + 5):nth-child(-n + 8):nth-child(even)
		.card {
		padding: 20px 20px 25px;
	}
	.home-topics-list-sub:not([data-slider-link]) .home-topics-list-sub-item:nth-child(-n + 4):nth-child(odd),
	.home-topics-list-sub:not([data-slider-link])
		.home-topics-list-sub-item:nth-child(n + 9):nth-child(-n + 13):nth-child(odd) {
		padding: 28px 45px 22px;
	}
	.home-topics-list-sub:not([data-slider-link]) .home-topics-list-sub-item:nth-child(-n + 4):nth-child(odd) .card,
	.home-topics-list-sub:not([data-slider-link])
		.home-topics-list-sub-item:nth-child(n + 9):nth-child(-n + 13):nth-child(odd)
		.card {
		padding: 20px 20px 25px;
	}
}

@media screen and (min-width: 768px) and (max-width: 767px) {
	.card-slider-list[data-slider-col="1"]:not(.slick-initialized) .card-slider-list-item:nth-child(n + 2) {
		margin-top: 24px;
	}
	.card-slider-list[data-slider-col="3"]:not(.slick-initialized) .card-slider-list-item:nth-child(n + 4) {
		margin-top: 24px;
	}
	.card-slider-list[data-slider-col="4"]:not(.slick-initialized) .card-slider-list-item:nth-child(n + 5) {
		margin-top: 24px;
	}
}

@media screen and (min-width: 768px) and (max-width: 960px) {
	.home-topics-list-sub-item .card-title {
		font-size: 1.6rem;
	}
	.home-topics-list-sub-item .card-description {
		display: none;
	}
}

.home-mainvisual-lead {
	width: 100%;
	padding: 0 10%;
	font-size: 3rem;
	line-height: 4.4rem;
	font-weight: 700;
	color: #ffffff;
	position: absolute;
	top: 68%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}
.home-mainvisual-lead.-ad {
	font-size: 2rem;
	line-height: 3rem;
	color: #000000;
	top: 89%;
}
.home-img-bg {
	/*
  background: url(../images/top_button_area_bg_pc.jpg) no-repeat center center;
  background-size: cover;*/
	padding: 20px 0;
}
.home-img-bg-title {
	font-size: 2.6rem;
	font-weight: 700;
	text-align: center;
}
.home-img-button-column-4.-ad {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 20px 180px 140px;
}
.home-img-button-column-4.-dx {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 20px 24%;
}
.home-img-button-column-4-item.-ad {
	width: 30%;
	position: relative;
}
.home-img-button-column-4-item.-dx {
	width: 46%;
	border: 2px solid #666666;
	box-shadow: 4px 6px 6px #bbb;
	transition: all 0.2s;
	position: relative;
}
.home-img-button-column-4-item.-dx:hover {
	box-shadow: 6px 8px 14px #bbb;
}
.home-img-button-column-4-item.-dx a {
	text-decoration: none !important;
	display: block;
	height: 100%;
}
.home-img-button-column-4-item.-dx .dx_button_icon {
	width: 20%;
	position: absolute;
	left: 10%;
	bottom: 6%;
}
.home-img-button-shadow.-ad {
	display: block;
	filter: drop-shadow(6px 8px 8px #666);
	transition: all 0.2s;
}
.home-img-button-shadow.-ad:hover {
	filter: drop-shadow(4px 6px 4px #666);
}
.home-img-button-shadow.-ad img {
	opacity: 0.8;
}
.home-img-button-text.-ad {
	width: 100%;
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 2.8rem;
	color: #ffffff;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}
.home-img-button-text.-dx {
	font-family: verdana;
	letter-spacing: -0.03em;
	width: 80%;
	font-size: 2.1rem;
	font-weight: bold;
	line-height: 3rem;
	color: #000000;
	margin: 0 auto;
	padding: 14px 0;
}
.home-img-button-lead.-ad {
	font-size: 1.4rem;
	line-height: 2rem;
	font-weight: 500;
	color: #000000;
	text-align: center;
	position: absolute;
	top: 108%;
	left: 50%;
	transform: translate(-50%, 0);
	-webkit-transform: translate(-50%, 0);
	-ms-transform: translate(-50%, 0);
	width: 104%;
}
.home-img-button-lead.-dx {
	font-family: verdana;
	letter-spacing: -0.03em;
	width: 80%;
	font-size: 1.4rem;
	line-height: 2rem;
	font-weight: lighter;
	color: #000000;
	margin: 0 auto;
	padding-bottom: 34%;
}

@media screen and (max-width: 1200px) {
	.home-mainvisual-lead {
		padding: 0 5%;
		font-size: 1.6rem;
		line-height: 2.6rem;
	}
	.home-mainvisual-lead.-ad {
		font-size: 1.6rem;
		line-height: 2.6rem;
		top: 89%;
	}
	.home-img-bg-title {
		font-size: 2rem;
	}
	.home-img-button-column-4.-ad {
		margin: 20px 12% 110px;
		padding-bottom: 20px;
	}
	.home-img-button-text.-ad {
		font-size: 1.4rem;
		line-height: 2rem;
	}
	.home-img-button-lead.-ad {
		font-size: 1.2rem;
		line-height: 1.6rem;
		top: 110%;
		width: 104%;
	}
}

@media screen and (max-width: 767px) {
	.home-mainvisual-lead {
		padding: 0 5%;
		font-size: 1.4rem;
		line-height: 2.6rem;
		top: 70%;
	}
	.home-mainvisual-lead.-ad {
		font-size: 1.4rem;
		line-height: 2.6rem;
		top: 85%;
	}
	.home-img-bg {
		/*
    background: url(../images/top_button_area_bg_sp.jpg) no-repeat center center;
    background-size: cover;*/
		padding: 30px 0 60px;
	}
	.home-img-bg-title {
		font-size: 2rem;
	}
	.home-img-button-column-4.-ad {
		margin: 4% 6%;
		padding-bottom: 4%;
	}
	.home-img-button-column-4.-dx {
		margin: 2% 2% 0;
		padding-bottom: 4%;
	}
	.home-img-button-column-4-item.-ad {
		width: 47%;
		margin-bottom: 120px;
	}
	.home-img-button-column-4-item.-dx {
		width: 47%;
		margin-bottom: 6%;
	}
	.home-img-button-shadow.-ad {
		filter: drop-shadow(4px 5px 7px #666);
	}
	.home-img-button-text.-ad {
		font-size: 1.6rem;
		line-height: 2.4rem;
	}
	.home-img-button-text.-dx {
		font-size: 1.8rem;
		line-height: 2.6rem;
		padding: 9px 0;
	}
	.home-img-button-lead.-ad {
		font-size: 1.2rem;
		line-height: 1.8rem;
		top: 106%;
		width: 100%;
	}
	.home-img-button-lead.-dx {
		font-size: 1.3rem;
		padding-bottom: 35%;
	}
}

@media screen and (max-width: 560px) {
	.home-img-button-text.-ad {
		font-size: 1.2rem;
		line-height: 1.8rem;
	}
	.home-img-button-lead.-ad {
		font-size: 1.2rem;
		line-height: 1.8rem;
		top: 106%;
		width: 110%;
	}
	.home-img-button-column-4.-ad {
		margin: 4% 2% -100px;
	}
	.home-img-button-column-4-item.-ad {
		width: 47%;
		margin-bottom: 160px;
	}
}

.button.link-text.-file-link {
	padding: 17px 40px 46px 40px;
}

.button.link-text.-file-link::after {
	display: table;
	position: absolute;
	top: 36%;
	left: 25%;
	margin-left: 0;
	background-size: 13.5px 18px;
	line-height: 1.2;
}
.fs-lg2 {
	font-size: 1.85rem !important;
}

@-moz-document url-prefix() {
	.button.link-text.-file-link::after {
		display: table;
		position: absolute;
		top: 52%;
		left: 27%;
		margin-left: 0;
		background-size: 13.5px 18px;
		line-height: 1.2;
	}
}

@media screen and (max-width: 767px) {
	.button.link-text.-file-link {
		padding: 3px 20px 5px;
		padding-inline-end: 124px;
	}
	.button.link-text.-file-link::after {
		top: 3px;
		left: 51%;
		margin-left: 0;
		line-height: 1.4;
	}
	.fs-lg2 {
		font-size: 1.6rem !important;
	}
	@-moz-document url-prefix() {
		.button.link-text.-file-link::after {
			top: 12px;
		}
	}
}


.article-post video{
	max-width: 100%;
}