/*	reset */
a,
ab.sm_view,
acronym,
address,
applet,
article,
aside,
audio,
b,
big,
blockquote,
body,
canvas,
caption,
center,
cite,
code,
dd,
del,
details,
dfn,
dialog,
div,
dl,
dt,
em,
embed,
fieldset,
figcaption,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
main,
mark,
menu,
nav,
object,
ol,
output,
p,
pre,
q,
ruby,
s,
samp,
section,
small,
span,
strike,
strong,
sub,
summary,
sup,
table,
tbody,
td,
tfoot,
th,
thead,
time,
tr,
tt,
u,
ul,
var,
video {
	font-family: inherit;
	font-size: 100%;
	font-weight: inherit;
	font-style: inherit;
	vertical-align: baseline;
	white-space: normal;
	/*text-align:left;*/
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	background: 0 0
}

textarea {
	font-family: inherit;
	font-weight: inherit;
	font-style: inherit;
	vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section {
	display: block
}

ol,
ul {
	list-style: none
}

blockquote,
q {
	quotes: none
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box
}


/*	EXAMPLE STYLES */
body {
	font-family: 'Noto Sans JP', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'Meiryo', 'メイリオ', 'ＭＳ Ｐゴシック', Verdana, 'ＭＳ Ｐゴシック', Verdana, Geneva, Arial, Helvetica, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #000;
	text-align: center;
	word-break: break-all;
	word-wrap: break-word;
	-webkit-text-size-adjust: 100%;
	margin: 0;
}

/* link */
a:link {
	color: #0a8ce6;
	text-decoration: none;
}

a:visited {
	color: #0a8ce6;
	text-decoration: none;
}

a:hover {
	color: #36aff2;
	text-decoration: none;
}

a:active {
	color: #36aff2;
	text-decoration: none;
}

a {
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-ms-transition: 0.3s;
	transition: 0.3s;
}

a:hover img.rollover,
a.thinly:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	-ms-filter: "alpha( opacity=80 )";
}

a.rolloveri:hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-moz-opacity: 0.8;
	-ms-filter: "alpha( opacity=80 )";
}

/* img */
img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}

/* lisst */
dl,
dt,
dd,
ol,
ul,
li {
	margin: 0;
	padding: 0;
	list-style-type: none;
}


/* text tag */
h1,
h2 {
	font-size: 1.5em;
	line-height: 1.4;
}

h3 {
	font-size: 1.3em;
	line-height: 1.4;
}

h4 {
	font-size: 1.15em;
	line-height: 1.4;
}

h5,
h6 {
	font-size: 1em;
}

p {
	font-size: 1em;
}

p,
pre,
blockquote,
address,
table,
fieldset,
form {
	margin-bottom: .5em;
}


/* ----------------------------------------
  Layout base
  ---------------------------------------- */
.container {
	max-width: 1320px;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
}

.container.cnone {
	max-width: 1280px;
	padding-left: 0;
	padding-right: 0;
}

.row {
	width: 100%;
}

@media screen and (max-width: 479px) {
	.container {
		padding-left: 15px;
		padding-right: 15px;
	}

	.sm_full {
		padding-left: 0;
		padding-right: 0;
	}
}

/* ----------------------------------------
  _html Global Spec
  ---------------------------------------- */

/* layout spec */
.hp_cl {
	clear: both;
}

.hp_fln {
	float: none !important;
}

.hp_dn {
	display: none !important;
}

.hp_db {
	display: block !important;
}

.hp_dib {
	display: inline-block !important;
	float: none !important;
}

.hp_ov {
	overflow: hidden !important;
}

/* Text spec */
.hp_fwb {
	font-weight: 700 !important;
}

.hp_fwm {
	font-weight: 500 !important;
}

.hp_fwn {
	font-weight: 400 !important;
}

.hp_fzs1 {
	font-size: 0.938em;
}

/*15px*/
.hp_fzs2 {
	font-size: 0.875em;
}

/*14px*/
.hp_fzs3 {
	font-size: 0.813em;
}

/*13px*/
.hp_fzs4 {
	font-size: 0.75em;
}

/*12px*/
.hp_fzl1 {
	font-size: 1.063em;
}

/*17px*/
.hp_fzl2 {
	font-size: 1.125em;
}

/*18px*/
.hp_fzl3 {
	font-size: 1.188em;
}

/*19px*/
.hp_fzl4 {
	font-size: 1.25em;
}

/*20px*/

.hp_tar {
	text-align: right !important;
}

.hp_tal {
	text-align: left !important;
}

.hp_tac {
	text-align: center !important;
}

.hp_lts1 {
	letter-spacing: 1px !important;
}

.hp_lts3 {
	letter-spacing: 3px !important;
}

.hp_lts5 {
	letter-spacing: 5px !important;
}

.hp_lh15 {
	line-height: 1.5 !important;
}

.hp_fw5 {
	font-weight: 500;
}

.hp_fw7 {
	font-weight: bold;
}

/* SP switch */
@media screen and (min-width:768px),
print {
	.sm_view {
		display: none !important;
	}

	br.sm_br {
		display: none;
	}

	br.pc_br {
		display: block;
	}
}

@media screen and (max-width: 767px) {
	.sm_none {
		display: none !important;
	}

	.sm_view {
		display: block;
	}

	.sm_clear {
		clear: both;
	}

	br.sm_br {
		display: block;
	}

	br.pc_br {
		display: none;
	}

	.hpsm_tar {
		text-align: right !important;
	}

	.hpsm_tal {
		text-align: left !important;
	}

	.hpsm_tac {
		text-align: center !important;
	}
}

/* Space spec */
.hp_m0 {
	margin: 0;
}

.hp_mt0 {
	margin-top: 0px;
}

.hp_mt10 {
	margin-top: 10px;
}

.hp_mt15 {
	margin-top: 15px;
}

.hp_mt20 {
	margin-top: 20px;
}

.hp_mt25 {
	margin-top: 25px;
}

.hp_mt30 {
	margin-top: 30px;
}

.hp_mt35 {
	margin-top: 35px;
}

.hp_mt40 {
	margin-top: 40px;
}

.hp_mt45 {
	margin-top: 45px;
}

.hp_mt50 {
	margin-top: 50px;
}

.hp_mb0 {
	margin-bottom: 0px;
}

.hp_mb5 {
	margin-bottom: 5px;
}

.hp_mb10 {
	margin-bottom: 10px;
}

.hp_mb15 {
	margin-bottom: 15px;
}

.hp_mb20 {
	margin-bottom: 20px;
}

.hp_mb25 {
	margin-bottom: 25px;
}

.hp_mb30 {
	margin-bottom: 30px;
}

.hp_mb35 {
	margin-bottom: 35px;
}

.hp_mb40 {
	margin-bottom: 40px;
}

.hp_mb45 {
	margin-bottom: 45px;
}

.hp_mb50 {
	margin-bottom: 50px;
}

.hp_mb60 {
	margin-bottom: 60px;
}

.hp_mb70 {
	margin-bottom: 70px;
}

.hp_mb80 {
	margin-bottom: 80px;
}

.hp_mb90 {
	margin-bottom: 90px;
}

.hp_mb100 {
	margin-bottom: 100px;
}

.hp_p0 {
	padding: 0;
}

.hp_pt0 {
	padding-top: 0px;
}

.hp_pt5 {
	padding-top: 5px;
}

.hp_pt10 {
	padding-top: 10px;
}

.hp_pt15 {
	padding-top: 15px;
}

.hp_pt20 {
	padding-top: 20px;
}

.hp_pt25 {
	padding-top: 25px;
}

.hp_pt30 {
	padding-top: 30px;
}

.hp_pt35 {
	padding-top: 35px;
}

.hp_pt40 {
	padding-top: 40px;
}

.hp_pt45 {
	padding-top: 45px;
}

.hp_pt50 {
	padding-top: 50px;
}

.hp_pt60 {
	padding-top: 60px;
}

.hp_pt70 {
	padding-top: 70px;
}

.hp_pb0 {
	padding-bottom: 0px;
}

.hp_pb5 {
	padding-bottom: 5px;
}

.hp_pb10 {
	padding-bottom: 10px;
}

.hp_pb15 {
	padding-bottom: 15px;
}

.hp_pb20 {
	padding-bottom: 20px;
}

.hp_pb25 {
	padding-bottom: 25px;
}

.hp_pb30 {
	padding-bottom: 30px;
}

.hp_pb35 {
	padding-bottom: 35px;
}

.hp_pb40 {
	padding-bottom: 40px;
}

.hp_pb45 {
	padding-bottom: 45px;
}

.hp_pb50 {
	padding-bottom: 50px;
}

@media screen and (max-width: 767px) {
	.hpsm_mt10 {
		margin-top: 10px !important;
	}

	.hpsm_mb0 {
		margin-bottom: 0px !important;
	}

	.hpsm_mb5 {
		margin-bottom: 5px !important;
	}

	.hpsm_mb10 {
		margin-bottom: 10px !important;
	}

	.hpsm_mb15 {
		margin-bottom: 15px !important;
	}

	.hpsm_mb20 {
		margin-bottom: 20px !important;
	}

	.hpsm_mb25 {
		margin-bottom: 25px !important;
	}

	.hpsm_mb30 {
		margin-bottom: 30px !important;
	}

	.hpsm_mb35 {
		margin-bottom: 35px !important;
	}

	.hpsm_mb40 {
		margin-bottom: 40px !important;
	}

	.hpsm_mb45 {
		margin-bottom: 45px !important;
	}

	.hpsm_mb50 {
		margin-bottom: 50px !important;
	}

	.hpsm_mb60 {
		margin-bottom: 60px !important;
	}

	.hpsm_mb70 {
		margin-bottom: 70px !important;
	}

	.hpsm_mb80 {
		margin-bottom: 80px !important;
	}

	.hpsm_mb90 {
		margin-bottom: 90px !important;
	}

	.hpsm_mb100 {
		margin-bottom: 100px !important;
	}

	.hpsm_pt0 {
		padding-top: 0px !important;
	}

	.hpsm_pt5 {
		padding-top: 5px !important;
	}

	.hpsm_pt10 {
		padding-top: 10px !important;
	}

	.hpsm_pt15 {
		padding-top: 15px !important;
	}

	.hpsm_pt20 {
		padding-top: 20px !important;
	}

	.hpsm_pt25 {
		padding-top: 25px !important;
	}

	.hpsm_pt30 {
		padding-top: 30px !important;
	}

	.hpsm_pt35 {
		padding-top: 35px !important;
	}

	.hpsm_pt40 {
		padding-top: 40px !important;
	}

	.hpsm_pt45 {
		padding-top: 45px !important;
	}

	.hpsm_pt50 {
		padding-top: 50px !important;
	}

	.hpsm_pt60 {
		padding-top: 60px !important;
	}

	.hpsm_pt70 {
		padding-top: 70px !important;
	}
}

/* arrows */
.hp_arrow {
	position: relative;
	padding: 0;
	vertical-align: middle;
}

.hp_arrow::before,
.hp_arrow::after {
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.hp_arrows li {
	position: relative;
	vertical-align: middle;
}

.hp_arrows li::before,
.hp_arrows li::after {
	position: absolute;
	margin: auto;
	content: "";
	vertical-align: middle;
}

/* flex */
.hp_flex {
	width: 100%;
	display: -webkit-box;
	display: -moz-box;
	display: box;
	display: -webkit-flex;
	display: flex;
	/*flex*/
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-ms-flex-direction: row;
	flex-direction: row;
	/*narabi*/
	-ms-flex-wrap: wrap;
	-moz-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	/*orikaesi*/
	-moz-box-pack: justify;
	-ms-box-pack: justify;
	box-pack: justify;
	/*child yokonarabi*/
	-ms-flex-pack: justify;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	/*yose*/
}

.hp_flex.hp_flex_rvr {
	flex-direction: row-reverse;
}

.hp_flex.hp_flex_nowrap {
	flex-wrap: nowrap;
	align-items: flex-start;
}

.hp_flex.hp_flex_acenter {
	justify-content: center;
}

.hp_flex.hp_flex_between {
	justify-content: space-between;
}

.hp_flex.hp_flex_vcenter {
	align-items: center;
}

@media screen and (max-width: 767px) {
	.hp_flextb_1clm .hp_flextb1clm_cld {
		width: 100%;
	}
}

@media screen and (max-width: 480px) {
	.hp_flexsp1clm .hp_flexsp1clm_cld {
		width: 100%;
	}
}



/* --------------------------------
	header
-------------------------------- */

.gl_h {
	padding: 37px 0 8px;
	background: url(../img/mainvl_back.jpg) no-repeat center top;
	background-size: auto;
}

.gl_hlogo {
	margin-bottom: 17px;
}

/* search */

form.gl_hsearch {
	width: 500px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0;
	padding-bottom: 5px;
	padding-left: 20px;
	padding-right: 20px;
}

.gl_hsearch_ipt {
	width: 460px;
	background: #fff;
	padding: 5px;
	border-bottom: 2px solid #1e1e3c;
}

.gl_hsearch_iptword {
	-webkit-appearance: none;
	width: 420px;
	background: #fff;
	padding: 5px .5em;
	border: none;
	font-size: 15px;
}

.gl_hsearch_iptsubmit {
	-webkit-appearance: none;
	text-indent: -9999px;
	width: 30px;
	min-height: 30px;
	background: #fff url(../img/i_search.png) no-repeat center center;
	padding: 0;
	border: none;
}

.gl_hsearch_txt {
	color: #fff;
	margin-bottom: 0;
}

/* tag */
.gl_tagsearch_wrap {
	text-align: center;
	margin-top: 20px;
	margin-left: 20px;
}

.gl_tagsearch {
	height: 40px;
	width: 350px;
	display: inline-flex;
	padding-left: 20px;
	align-items: center;
	border: 1px solid #ccc;
	background-color: #fff;
	padding: 5px;
}

.gl_tagsearch_iptword {
	flex: 1;
	padding: 5px .5em;
	height: 30px;
	width: 300px;
	border: none;
	font-size: 14px;
}

.gl_tagsearch_iptsubmit {
	-webkit-appearance: none;
	text-indent: -9999px;
	width: 30px;
	height: 30px;
	background: #fff url(../img/i_search.png) no-repeat center center;
	background-size: 16px 16px;
	border: none;
	cursor: pointer;
}

.tag-search-list-container {
	width: 1400px;
	/* 全体の幅を決める */
	margin: 0 auto;
	/* 左右中央寄せ */
	display: flex !important;
	align-items: flex-start;
	gap: 5px;
}

.gl_tagsearch_wrap {
	flex: 0 0 300px;
	margin-right: 8px;
}

.tag-search-list-container section {
	flex: 1;
	margin-left: 50px;
	max-width: 1000px;
}

.gl_tagsearch_iptsubmit {
	-webkit-appearance: none;
	text-indent: -9999px;
	width: 30px;
	height: 30px;
	background: #fff url(../img/i_search.png) no-repeat center center;
	background-size: 16px 16px;
	padding: 0;
	border: none;
	cursor: pointer;
}

.gl_tagsearch_txt {
	color: #fff;
	margin-bottom: 0;
}

/* パンくず */
.m_pankz {
	padding: 20px 0;
	line-height: 1;
	
}

.m_pankz_list {
	font-size: 0;
}

.m_pankz_list > a,
.m_pankz_list > span {
	font-size: 12px;
	display: inline-block;
}

.m_pankz_list > a:after {
	content: "＞";
}


/* nav */

#global-nav ul {
	padding-top: 17px;
	padding-bottom: 19px;
}

#global-nav ul li {
	width: 12.5%;
	padding: 0 1em;
}

#global-nav ul li::before {
	width: 1px;
	height: .9em;
	background: #fff;
	top: 0;
	bottom: 0;
	left: 0;
}

#global-nav ul li:last-child::after {
	width: 1px;
	height: .9em;
	background: #fff;
	top: 0;
	bottom: 0;
	right: 0;
}

#global-nav ul li a {
	color: #fff;
}

@media screen and (min-width: 1600px) {
	.gl_h {
		background-position: center center;
		background-size: cover;
	}
}

@media screen and (max-width: 1282px) {
	#global-nav ul li:last-child::after {
		display: none;
	}

	#global-nav ul li:first-child::before {
		display: none;
	}
}

@media screen and (max-width: 767px) {
	.gl_h {
		padding-top: 26px;
		padding-bottom: 14px;
	}

	.gl_hlogo {
		width: calc(100% - 50px);
		margin-left: 2px;
		text-align: left;
	}

	/* search */
	form.gl_hsearch {
		width: 100%;
	}

	.gl_hsearch_ipt {
		width: 100%;
	}

	.gl_hsearch_iptword {
		width: calc(100% - 30px);
	}

	/* Toggle Button open */
	#nav-toggle {
		position: absolute;
		right: 0;
		top: 0;
		width: 62px;
		height: 62px;
		cursor: pointer;
		z-index: 51;
		padding: 0;
	}

	#nav-toggle div {
		position: relative;
	}

	#nav-toggle span {
		display: block;
		position: absolute;
		height: 2px;
		width: 34px;
		background: #fff;
		right: 13px;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
	}

	#nav-toggle span:nth-child(1) {
		top: 18px;
	}

	#nav-toggle span:nth-child(2) {
		top: 30px;
	}

	#nav-toggle span:nth-child(3) {
		top: 42px;
	}

	/* #nav-toggle close */
	.open #nav-toggle span:nth-child(1) {
		top: 32px;
		left: 14px;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	.open #nav-toggle span:nth-child(2) {
		width: 0;
		right: 0;
	}

	.open #nav-toggle span:nth-child(3) {
		top: 32px;
		right: 14px;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}

	/* #global-nav */
	#global-nav {
		position: absolute;
		top: -515px;
		width: 100%;
		-webkit-transition: .5s ease-in-out;
		-moz-transition: .5s ease-in-out;
		transition: .5s ease-in-out;
		z-index: 50;
	}

	#global-nav ul {
		padding-top: 0;
		padding-bottom: 0;
	}

	#global-nav ul li {
		width: 100%;
		padding: 0;
		text-align: left;
	}

	#global-nav ul li::before,
	#global-nav ul li::after {
		display: none;
	}

	#global-nav ul li a {
		position: relative;
		display: block;
		border-top: 1px solid rgba(255, 255, 255, 0.60);
		padding: 15px 2em 15px 1.5em;
		font-size: .92em;
	}

	/* #global-nav open */
	.open #global-nav {
		-moz-transform: translateY(515px);
		-webkit-transform: translateY(515px);
		transform: translateY(515px);
	}

	.open #global-nav ul {
		height: 100%;
		-webkit-overflow-scrolling: touch;
		padding-top: 60px;
	}


}


/* ----------------
	footer
---------------- */

/* link */

.f_link li {
	display: inline-block;
	padding: 0 15px 30px;
}

/* footer */

#gl_footer {
	color: #fff;
	background: #1E1E64;
	background: linear-gradient(106deg, rgba(30, 30, 100, 1) 1%, rgba(30, 30, 60, 1) 100%);
	padding-top: 50px;
}

#gl_footer a {
	color: #fff;
}

.gl_flogo {
	flex: 1;
	font-size: 40px;
	line-height: 1.2;
}

.gl_flogo span {
	display: inline-block;
	font-size: 20px;
}

.gl_fnav {
	width: 16%;
	margin-left: 20px;
}

.gl_fnav::before {
	width: 1px;
	height: 95%;
	background: #fff;
	left: 0;
	top: 0;
}

.gl_fnav ul {
	padding-left: 1.2em;
	margin-top: -10px;
}

.gl_fnav ul li {
	padding: 8px 0;
}

@media screen and (max-width: 767px) {
	#gl_footer {
		background: linear-gradient(180deg, rgba(30, 30, 100, 1) 1%, rgba(30, 30, 60, 1) 100%);
		padding-top: 30px;
	}

	.gl_flogo {
		width: 100%;
		font-size: 32px;
		margin-bottom: 30px;
		padding-left: 10px;
	}

	.gl_flogo span {
		display: block;
		font-size: 16px;
		margin-top: 10px;
	}

	.gl_fnav {
		width: 100%;
		margin-left: 20px;
	}

	.gl_fnav::before {
		display: none;
	}

	.gl_fnav ul {
		margin-top: 0;
	}
}

@media screen and (max-width: 767px) {
	.tag-search-list-container {
		width: 100%;
		flex-direction: column;
	}

	.gl_tagsearch_wrap,
	.tag-search-list-container section {
		flex: none;
		width: 100%;
		margin-left: 0px;
	}

	/* 順番を入れ替える */
	.gl_tagsearch_wrap {
		order: 2;
	}

	.tag-list {
		order: 1;
	}

	.gl_tagsearch {
		margin-bottom: 25px;
	}

}


/* ----------------------------------------
  print
  ---------------------------------------- */
@media print {
	body {
		width: 1280px;
		/* zoom: .8;*/
		transform: scale(0.8);
		-moz-transform: scale(0.8);
		-webkit-transform: scale(0.8);
		transform-origin: 0 0;
	}

	.gl_contents {
		width: 100%;
	}
}