@charset "UTF-8";

/*========================================================================

  reset

========================================================================*/

body {
	/* overflow-x: hidden; */
}

.pbPage * {
	box-sizing: border-box;
	margin: 0;
	padding: 0;
	line-height: 1.6;
	vertical-align: top;
}

.pbHeaderArea,
.pbFooterArea {
	overflow: visible;
}

:focus {
	outline: none;
}

:root ol,
:root ul {
	margin: 0;
	padding: 0;
}

.pbNested {
	clear: none;
	overflow: visible;
	min-width: 10px;
	overflow: visible;
}

.pb-layout {
	outline: 1px dotted #ccc !important;
	box-shadow: none !important;
}

.pb-handle {
	display: block !important;
	width: auto !important;
	border: 1px solid #999 !important;
	font-weight: normal !important;
	letter-spacing: normal;
	text-indent: 0;
	line-height: 1.6;
}

.pb-handle:before,
.pb-handle:after {
	display: none;
}

.pbNotEditable {
	min-width: 200px !important;
	background: rgba(32, 32, 32, 0.5) !important;
}

.pbZero td {
	vertical-align: middle;
}

div.pbPage,
div.pbFooterArea {
	font-size: 100%;
	font-family: 'ヒラギノ角ゴ ProN',
		'Hiragino Kaku Gothic ProN',
		'メイリオ',
		Meiryo,
		'ＭＳ Ｐゴシック',
		'MS PGothic',
		sans-serif;
	color: #004297;
}

@media screen and (min-width: 768px) {

	body.top,
	div.pbPage,
	.pbHeaderArea,
	.pbMainArea {
		overflow: visible;
		min-width: 1024px;
		margin: 0 auto;
	}
}


/*========================================================================

  page

========================================================================*/
.pbMainArea {
	margin-top: 225px;
}

@media screen and (max-width: 767px) {
	.pbMainArea {
		margin-top: 51px;
	}
}

div.pbPage {
	position: relative;
	overflow: hidden !important;
	-webkit-text-size-adjust: 100%;
	-webkit-print-color-adjust: exact;
	background: #fff;
	/* font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif; */
	color: #000;
	font-size: 100%;
}

@media print {
	.pbPage {
		min-width: 1000px;
	}
}

/* @media screen and (max-width: 1024px) { */

@media screen and (max-width: 767px) {
	div.pbPage {
		/* font-size: 75%; */
	}

	div.pbPage--open {
		position: fixed;
		z-index: 9999;
	}
}

/*========================================================================

  base

========================================================================*/

/*  title
------------------------------------------------*/

h1,
h2,
h3,
h4,
h5 {
	font-weight: bold;
}

h1 {
	font-size: 230%;
}

h2 {
	font-size: 180%;
}

h3 {
	font-size: 150%;
}

h4 {
	font-size: 140%;
}

h5 {
	font-size: 140%;
}

@media screen and (max-width: 767px) {
	h1 {
		font-size: 160%;
	}

	h2 {
		font-size: 150%;
	}

	h3 {
		font-size: 120%;
	}

	h4 {
		font-size: 120%;
	}

	h5 {
		font-size: 120%;
	}
}

/*  link
------------------------------------------------*/

.pbPage a {
	color: #000;
	transition: all .3s;
	text-decoration: underline;
}

@media screen and (min-width: 768px) {
	.pbPage a:hover {
		text-decoration: none;
	}
}

@media screen and (min-width: 768px) {

	.pbPage a img {
		transition: all .3s;
	}
}

@media screen and (min-width: 768px) {
	.pbPage a:hover img {
		opacity: .7;
	}
}

.pbPage a,
.pbFooterArea a {
	text-decoration: none;
}

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

.pbPage ul,
.pbPage ol,
.pbFooterArea ul,
.pbFooterArea ol {
	list-style: none;
}

.pbMainArea ul li {
	position: relative;
	padding-left: 1.3em;
}

.pbMainArea ul li:not(:first-child) {
	margin-top: 5px;
}

.pbMainArea ul li:before {
	content: '';
	position: absolute;
	top: .55em;
	left: 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #ccc;
	border-right: 2px solid #ccc;
	transform: rotate(45deg);
}

.pbMainArea ol {
	padding-left: 1.3em;
	list-style-type: decimal;
}

.pbMainArea ol li:not(:first-child) {
	margin-top: 5px;
}

/*  img
------------------------------------------------*/

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

/*  table
------------------------------------------------*/

.pbMainArea table {
	width: 100%;
	border-spacing: 1px;
	border: none;
}

.pbMainArea table th,
.pbMainArea table td {
	padding: 15px 10px;
	background: rgba(0, 0, 0, .03);
	text-align: left;
	border: none;
	vertical-align: middle;
}
.pbMainArea table th.text-center,
.pbMainArea table td.text-center{
	text-align: center;
}
.pbMainArea table th.text-right,
.pbMainArea table td.text-right {
	text-align: right;
}

.pbMainArea table th {
	width: 30%;
	background: rgba(0, 0, 0, .8);
	color: #fff;
	font-weight: bold;
	text-align: center;
	vertical-align: top;
}

@media screen and (max-width: 767px) {
	.pbMainArea table {
		font-size: 90%;
		display: block;
		height: auto !important;
	}

	.pbMainArea table tbody,
	.pbMainArea table tr,
	.pbMainArea table th,
	.pbMainArea table td {
		display: block;
		width: 100%;
		height: auto !important;
	}

	.pbMainArea table th {
		padding: 8px 10px;
	}

	.pbMainArea table td {
		padding: 10px;
	}
}

/*========================================================================

  publis block

========================================================================*/

/*  pbCorner
========================================================================*/

.contact-step {
	text-align: center;
	margin-bottom: 30px;
}

.contact-step .list {
	display: flex;
}

.contact-step .item {
	width: 33.33%;
	padding: 5px;
	background: rgba(0, 0, 0, .03);
	border-right: none;
	counter-increment: contact-step;
}

.contact-step .item:nth-child(2) {
	border-left: 3px solid #fff;
	border-right: 3px solid #fff;
}

.contact-step .item:before {
	content: 'STEP'counter(contact-step)'.';
	display: inline-block;
}

.contact-step .item.active {
	background: #333;
	color: #fff;
}

.contact-step p {
	margin-top: 30px;
}

.contact-step .button {
	margin-top: 30px;
}

.contact-step .button a {
	display: inline-block;
	position: relative;
	padding: .6em 2em .6em 1em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.contact-step .button a:hover {
	background: #000;
}

.contact-step .button a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 1em;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

.pbArticleButtonBlock img {
	max-width: none;
}

.pbCorner td * {
	vertical-align: middle;
}

.pbCorner td.pbLabel {
	width: 35%;
	background: #333;
	color: #fff;
	font-weight: bold;
}

.pbCorner td.pbLabel:only-child {
	background: none;
	color: #333;
	font-size: 150%;
	text-align: center;
}

.pbCorner table table {
	width: auto;
}

.pbCorner table table th,
.pbCorner table table td {
	padding: 0;
	background: none;
}

.pbCorner table table td {
	display: flex;
	flex-wrap: wrap;
}

.pbCorner .pbCornerQueryLabelRequired {
	float: right;
	margin-left: 10px;
	color: #cc3300;
}

.pbCorner td.pbErrorMsg {
	background: none;
	padding: 0 0 10px;
	color: #cc3300;
}

.pbCorner input[type="text"],
.pbCorner select,
.pbCorner textarea,
.pbCorner input[type="button"],
.pbCorner input[type="submit"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif;
}

.pbCorner input[type="text"],
.pbCorner select,
.pbCorner textarea {
	max-width: 100%;
	padding: 8px 10px;
	border: 1px solid #eee;
	border-radius: 0;
}

.pbCorner input[type="text"] {
	width: 100%;
}

.pbCorner .half input[type="text"] {
	width: 50%;
}

.pbCorner input:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px white inset;
}

.pbCorner input[id*="query_name_last_"],
.pbCorner input[id*="query_name_first_"] {
	width: calc(50% - 5px);
}

.pbCorner input[id*="query_name_first_"] {
	float: right;
}

.pbCorner select {
	margin: 5px 0;
	padding-right: 40px;
	background: url(../images/arrow_select.png) no-repeat right center #fff;
}

.pbCorner .graduate label,
.pbCorner .graduate label+select {
	display: none;
}

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

.pbCorner select+label {
	margin: 0 15px 0 5px;
}

.pbCorner textarea {
	width: 100%;
	resize: none;
}

.pbCorner .forTdCellCenter {
	padding: 30px 0 0;
	background: none;
}

.pbCorner .forTdCellCenter input {
	display: table;
	min-width: 200px;
	margin: 0 auto;
	padding: 10px 20px;
	background: #333;
	color: #fff;
	font-size: 110%;
	letter-spacing: 2px;
	border: none;
	border-radius: 0;
	cursor: pointer;
	transition: all .3s;
}

.pbCorner .forTdCellCenter input:hover {
	background: #000;
}

.pbCorner .forTdCellCenter input.pbQueryCancel {
	margin-top: 10px;
	padding: 9px 20px;
	background: #ccc;
	color: #000;
	border: 1px solid #ccc;
}

.pbCorner .forTdCellCenter input.pbQueryCancel:hover {
	background: #fff;
}

.pbCorner input[type=radio],
.pbCorner input[type=checkbox] {
	display: none;
}

.pbCorner input[type=radio]+label,
.pbCorner input[type=checkbox]+label {
	display: inline-block;
	position: relative;
	margin: 5px 20px 5px 0;
	padding-left: 25px;
	cursor: pointer;
}

.pbCorner input[type=radio]+label:before,
.pbCorner input[type=radio]+label:after,
.pbCorner input[type=checkbox]+label:before,
.pbCorner input[type=checkbox]+label:after {
	content: '';
	position: absolute;
}

.pbCorner input[type=radio]+label:before,
.pbCorner input[type=radio]+label:after {
	border-radius: 50%;
	transition: all .3s;
}

.pbCorner input[type=radio]+label:before {
	top: 2px;
	left: 0;
	width: 18px;
	height: 18px;
	background: #fff;
	border: 1px solid #eee;
}

.pbCorner input[type=radio]:checked+label:after {
	top: 7px;
	left: 5px;
	width: 10px;
	height: 10px;
	background: #000;
}

.pbCorner input[type=checkbox]+label:before {
	top: 4px;
	left: 0;
	width: 14px;
	height: 14px;
	background: #fff;
	border: 1px solid #eee;
	border-radius: 2px;
}

.pbCorner input[type=checkbox]:checked+label:after {
	top: -1px;
	left: 7px;
	width: 5px;
	height: 15px;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
	.contact-step .item:before {
		display: block;
	}

	.pbCorner table {
		font-size: 100%;
	}

	.pbCorner .half input[type="text"] {
		width: 100%;
	}

	.pbCorner select+label {
		margin: 0 5px 0 0;
	}

	.pbCorner input[type=radio]+label:before {
		top: 0;
	}

	.pbCorner input[type=radio]:checked+label:after {
		top: 5px;
	}

	.pbCorner input[type=checkbox]+label:before {
		top: 2px;
	}

	.pbCorner input[type=checkbox]:checked+label:after {
		top: -2px;
	}
}

/*  pbBlockSearchResult
========================================================================*/

.publisSearchResultFormInner {
	position: relative;
	overflow: hidden;
	max-width: 700px;
	margin: 0 auto 20px;
}

.publisSearchResultFormInner:before {
	content: '検索';
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	right: 0;
	width: 70px;
	height: 100%;
	background: #333;
	color: #fff;
	letter-spacing: 2px;
	border-radius: 2px;
	transition: all .3s;
}

.publisSearchResultFormText {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: calc(100% - 80px);
	float: left;
	padding: 8px 10px;
	font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif;
	font-size: 100%;
	border: 1px solid #ccc;
	border-radius: 2px;
}

.publisSearchResultFormText:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px white inset;
}

.publisSearchResultFormButton {
	position: absolute;
	right: 0;
	width: 70px;
	height: 100%;
	opacity: 0;
}

.publisSearchResultSeparator {
	margin: 0 !important;
}

div.publisSearchResultPager {
	overflow: hidden !important;
	width: 100% !important;
}

.publisSearchResultPager>div {
	min-height: 1px;
}

.publisSearchResultPagerInfo {
	width: calc(100% - 110px) !important;
}

.publisSearchResultPagerPrev {
	text-align: left;
	width: 55px !important;
}

.publisSearchResultPagerPrev a {
	position: relative;
	padding-left: 1.5em;
}

.publisSearchResultPagerPrev a:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: .4em;
	width: .4em;
	height: .4em;
	border-bottom: 2px solid #ccc;
	border-left: 2px solid #ccc;
	transform: rotate(45deg);
}

.publisSearchResultPagerPrev a:first-child {
	display: none;
}

.publisSearchResultPagerNext {
	text-align: right;
	width: 55px !important;
}

.publisSearchResultPagerNext a {
	position: relative;
	padding-right: 1.5em;
}

.publisSearchResultPagerNext a:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: .4em;
	width: .4em;
	height: .4em;
	border-top: 2px solid #ccc;
	border-right: 2px solid #ccc;
	transform: rotate(45deg);
}

.publisSearchResultPagerNext a:first-child {
	display: none;
}

.publisSearchResultNotFound br {
	display: none;
}

div.publisSearchResultList {
	margin: 15px 0;
}

.publisSearchResultItemTitle {
	float: none !important;
	padding: 15px 0 0 1em;
}

.publisSearchResultItemTitle:first-child {
	border-top: 1px solid #ccc;
}

.publisSearchResultItemTitle a {
	position: relative;
}

.publisSearchResultItemTitle a:before {
	content: '';
	position: absolute;
	top: .55em;
	left: -1em;
	width: .4em;
	height: .4em;
	border-top: 2px solid #ccc;
	border-right: 2px solid #ccc;
	transform: rotate(45deg);
}

.publisSearchResultItemText {
	float: none !important;
	margin: 3px 0 0 !important;
	padding-bottom: 15px;
	color: #999;
	border-bottom: 1px solid #ccc;
}

@media screen and (max-width: 767px) {
	.publisSearchResultItemTitle {
		padding: 10px 0 0 1em;
	}

	.publisSearchResultItemText {
		padding-bottom: 10px;
	}
}

/*  pbBlockMenu
========================================================================*/

.pbBlockMenu {
	position: relative;
	margin-top: 20px;
	padding-left: 1.3em;
}

.pbBlockMenu+.pbBlockMenu {
	margin-top: 0;
}

.pbBlockMenu:before {
	content: '';
	position: absolute;
	top: .5em;
	left: 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #ccc;
	border-right: 2px solid #ccc;
	transform: rotate(45deg);
}

/*  pbBlockSearch
========================================================================*/

div.pbBlockSearch {
	position: relative;
	overflow: hidden !important;
	margin-top: 20px;
	padding: 0 !important;
}

.pbBlockSearch input[type="text"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: calc(100% - 80px);
	float: left;
	padding: 8px 10px;
	font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif;
	border: 1px solid #ccc;
	border-radius: 2px;
}

.pbBlockSearch input[type="text"]:-webkit-autofill {
	-webkit-box-shadow: 0 0 0 1000px white inset;
}

.pbBlockSearch input[type="submit"] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: absolute;
	right: 0;
	width: 70px;
	height: 100%;
	background: #333;
	color: #fff;
	font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif;
	font-size: 100%;
	letter-spacing: 2px;
	border: none;
	border-radius: 2px;
	transition: all .3s;
	cursor: pointer;
}

.pbBlockSearch input[type="submit"]:hover {
	background: #000;
}

/*========================================================================

  header

========================================================================*/
.header {
	border-bottom: 1px solid #f1f4f6;
}

.header>div:not(.pb-handle) {
	display: flex;
	position: relative;
	z-index: 5;
	width: 1024px;
	margin: 0 auto;
	max-width: 100%;
}

.header a {
	text-decoration: none;
	color: #333;
}

.headerBtn {
	width: 50px;
	height: 50px;
}

.headerNav {
	display: flex;
	align-items: center;
}

.headerNav li {
	margin-right: 9px;
}

.headerNav li:last-child {
	margin-right: 0;
}


.headerNav a {
	color: #004297;
	font-size: 0.875rem;
}

.headerNav .heading {
	padding: 21px 13px 21px 5px;
}

.headerNav .heading a:hover {
	text-decoration: underline;
}

.pbPage .headerNavBtn {
	width: 120px;
	padding: .7em 0 .7em 1.4em;
	text-align: center;
	border-radius: 5px;
	font-weight: bold;
	color: #fff;
	position: relative;
	display: inline-block;
	padding-left: 1.5em;
}

.pbPage .headerNavBtn::before {
	content: '';
	position: absolute;
	left: 5px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	background-size: contain;
}

.headerNavBtn.openAccount {
	background-color: #de5500;
}

.headerNavBtn.openAccount::before {
	width: 20px;
	height: 19px;
	background-image: url(../images/header_ico_01_pc.png);
	left: 1.1em;
}

.headerNavBtn.login {
	background-color: #004297;
}

.headerNavBtn.login::before {
	width: 16px;
	height: 20px;
	background-image: url(../images/header_ico_02_pc.png);
	left: 1.3em;
}

.headerNav .heading a {
	font-size: 0.875rem;
	position: relative;
	display: block;
}


.headerNav .sp-nav,
.headerNav ul {
	display: none;
}


.headerNav>li>ul {
	padding: 0px 20px 3px;
	margin-top: -6px;
}

.headerNav>li>ul>li {
	margin-bottom: 14px;
}

.pbHeaderArea .header .headerGnav {
	color: #004297;
	font-size: 1.125rem;
	margin-top: 17px;
}

.pbHeaderArea .header .headerGnav ul {
	display: flex;
	width: 95%;
	margin: 0 auto;
}

.pbHeaderArea .header .headerGnav li {
	box-sizing: border-box;
	text-align: center;
	border-bottom: 3px solid rgba(0, 0, 0, 0);
	padding: 0 1.375rem;
}

.pbHeaderArea .header .headerGnav li:hover,
.pbHeaderArea .header .headerGnav li.active {
	border-bottom: 3px solid #004297;
}

.pbHeaderArea .header .headerGnav a {
	color: #004297;
	font-weight: bold;
	padding-bottom: 26px;
	display: inline-block;
}

#headerArea {
	position: fixed;
	z-index: 9999;
	background: #fff;
	left: 0;
	right: 0;
}

#headerArea.pb-of-visible {
	position: inherit;
}

@media screen and (max-width: 767px) {
	:not(.top) .header {
		padding-bottom: 0;
		border-bottom: 1px solid #f1f4f6;
	}

	/* @media screen and (max-width: 1024px) { */
	.header>div:not(.pb-handle) {
		padding: 0 3px 0 15px;
	}

	.headerNav {
		flex-direction: column;
		align-items: inherit;
	}

	.headerNav .sp-nav,
	.headerNav ul {
		display: block;
	}

	/* 
	.headerNav>li:nth-of-type(n+6) {
		display: none;
	} */

	.headerNav .heading a {
		font-size: 1.125rem;
		font-weight: bold;
	}

	.headerNav .heading a::after {
		content: '';
		display: inline-block;
		margin: 0 10px 2px 0;
		width: .4em;
		height: .4em;
		border-top: 2px solid #fff;
		border-right: 2px solid #fff;
		transform: rotate(45deg);
		position: absolute;
		right: 0;
		top: -5px;
		bottom: 0;
		margin: auto 0;
		border-top: 2px solid #004297;
		border-right: 2px solid #004297;
	}

	.pbHeaderArea .header .headerGnav {
		display: none;
	}
}

/*  left
------------------------------------------------*/

.header .left {
	display: flex;
}

.header .left>div {
	display: flex;
	align-items: center;
	padding: 15px 0;
	background: #fff;
}

.header .logo img {
	display: block;
	width: 270px;
}

.header .text {
	margin-left: 15px;
	font-family: 'Roboto Condensed', sans-serif;
	display: none;
}


/* @media screen and (max-width: 1024px) { */

@media screen and (max-width: 767px) {
	.header .logo img {
		margin-top: 0;
	}

	.header .left {
		width: 100%;
	}

	.header .left>div {
		padding: 0;
		z-index: 9999;
		width: 100%;
		justify-content: space-between;
	}

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

	.header .text {
		margin-left: auto;
		display: flex;
		margin-right: 3px;
		width: 50%;
		justify-content: flex-end;
	}
}

/*  sp-menu
------------------------------------------------*/

.header .sp-menu {
	display: none;
	position: relative;
	top: 0;
	bottom: 0;
	margin: auto 0;
	z-index: 2;
	width: 50px;
	height: 50px;
	margin-left: auto;
	background-image: url(../images/header_btn_open.png);
	background-size: cover;
	background-position: 50% 50%;
}

.pbPage--open .header .sp-menu {
	background-image: url(../images/header_btn_close.png);
}

.header .sp-menu span {
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	width: 20px;
	height: 2px;
	background: #000;
}

.headerNav ul a {
	position: relative;
}

.headerNav ul a::after {
	content: '';
	display: inline-block;
	width: .4em;
	height: .4em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: -1em;
	bottom: 7px;
}

.headerNav ul a[target="_blank"]::after {
	border: none;
	width: 14px;
	height: 14px;
	background-image: url(../images/blank_ico_01.png);
	transform: none;
	background-size: contain;
	right: -1.5em;
	background-repeat: no-repeat;
}

/* .header .sp-menu span:nth-of-type(1) {
	top: 15px;
	-webkit-animation: menu-bar01 .75s forwards;
	animation: menu-bar01 .75s forwards;
}
@-webkit-keyframes menu-bar01 {
	0% {-webkit-transform: translateY(9px) rotate(45deg);}
	50% {-webkit-transform: translateY(9px) rotate(0);}
	100% {-webkit-transform: translateY(0) rotate(0);}
}
@keyframes menu-bar01 {
	0% {transform: translateY(9px) rotate(45deg);}
	50% {transform: translateY(9px) rotate(0);}
	100% {transform: translateY(0) rotate(0);}
}
.header .sp-menu span:nth-of-type(2) {
	top: 24px;
	transition: all .25s .25s;
	opacity: 1;
}
.header .sp-menu span:nth-of-type(3) {
	bottom: 15px;
	-webkit-animation: menu-bar03 .75s forwards;
	animation: menu-bar03 .75s forwards;
}
@-webkit-keyframes menu-bar03 {
	0% {-webkit-transform: translateY(-9px) rotate(-45deg);}
	50% {-webkit-transform: translateY(-9px) rotate(0);}
	100% {-webkit-transform: translateY(0) rotate(0);}
}
@keyframes menu-bar03 {
	0% {transform: translateY(-9px) rotate(-45deg);}
	50% {transform: translateY(-9px) rotate(0);}
	100% {transform: translateY(0) rotate(0);}
}

.pbPage--open .sp-menu span:nth-of-type(1) {
	-webkit-animation: active-menu-bar01 .75s forwards;
	animation: active-menu-bar01 .75s forwards;
}
@-webkit-keyframes active-menu-bar01 {
	0% {-webkit-transform: translateY(0) rotate(0);}
	50% {-webkit-transform: translateY(9px) rotate(0);}
	100% {-webkit-transform: translateY(9px) rotate(45deg);}
}
@keyframes active-menu-bar01 {
	0% {transform: translateY(0) rotate(0);}
	50% {transform: translateY(9px) rotate(0);}
	100% {transform: translateY(9px) rotate(45deg);}
}
.pbPage--open .sp-menu span:nth-of-type(2) {
	opacity: 0;
}
.pbPage--open .sp-menu span:nth-of-type(3) {
	-webkit-animation: active-menu-bar03 .75s forwards;
	animation: active-menu-bar03 .75s forwards;
}
@-webkit-keyframes active-menu-bar03 {
	0% {-webkit-transform: translateY(0) rotate(0);}
	50% {-webkit-transform: translateY(-9px) rotate(0);}
	100% {-webkit-transform: translateY(-9px) rotate(-45deg);}
}
@keyframes active-menu-bar03 {
	0% {transform: translateY(0) rotate(0);}
	50% {transform: translateY(-9px) rotate(0);}
	100% {transform: translateY(-9px) rotate(-45deg);}
} */
@media screen and (max-width: 767px) {

	/* @media screen and (max-width: 1024px) { */
	.headerNav>li {
		border-bottom: 1px solid #004297;
	}

	.header .pc-nav {
		display: none;
	}

	.header .sp-menu {
		display: block;
	}
}

/*  right
------------------------------------------------*/

.header .right {
	display: flex;
	margin-left: auto;
	padding-top: 5px;
}

.header .right>div {
	display: flex;
}

.header .list {
	display: flex;
}

.header .list>div {
	display: flex;
}

.header .list-item {
	display: flex;
	margin-left: 20px;
}

.header .list-item>div {
	display: flex;
}

.header .list-title {
	display: flex;
	align-items: center;
}

.header .list-title a {
	display: block;
	padding: 3px 10px;
}

.header .list-item:hover .list-title a {
	background: rgba(0, 0, 0, .1);
}

.header .list-text {
	opacity: 0;
	position: absolute;
	z-index: 1;
	top: 100%;
	width: 100%;
	left: 0;
	transition: all .3s;
	transform: rotateX(90deg);
	transform-origin: left top;
}

.header .list-item:hover .list-text {
	opacity: 1;
	transform: none;
}

.header .list-text>div {
	padding: 15px;
	background: rgba(0, 0, 0, .9);
}

.header .list-text ul {
	display: flex;
	justify-content: flex-end;
}

.header .list-text li {
	min-width: 250px;
	padding: 5px 20px;
	border-left: 1px solid #fff;
}

.header .list-text li a {
	display: inline-block;
	color: #fff;
}

.header .list-text li a:hover {
	color: #ccc;
}

.header .button {
	display: flex;
	align-items: center;
	margin-left: 30px;
}

.header .button a {
	display: inline-block;
	min-width: 130px;
	padding: 5px 2em;
	background: #333;
	color: #fff;
	text-align: center;
}

.header .button a:hover {
	background: #000;
}

.header .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 1px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 1200px) {
	.header .list-item {
		margin-left: 5px;
	}

	.header .button {
		margin-left: 10px;
	}
}

@media screen and (max-width: 767px) {

	/* @media screen and (max-width: 1024px) { */
	.header .right {
		display: block;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		position: absolute;
		top: 0;
		left: 100%;
		z-index: 1;
		width: 100vw;
		height: 100vh;
		padding: 74px 10px 150px;
		background: #fff;
		transition: all .3s;
	}

	.pbPage--open .header .right {
		left: 0;
	}

	.header .right>div {
		display: block;
		/* max-width: 345px; */
		margin: 0 auto;
	}

	.header .list {
		display: block;
	}

	.header .list>div {
		display: block;
	}

	.header .list-item {
		display: block;
		margin-left: 0;
	}

	.header .list-item>div {
		display: block;
	}

	.header .list-title {
		display: block;
	}

	.header .list-title>div {
		border-top: 1px solid #999;
	}

	.header .list-title a {
		padding: 10px 0;
	}

	.header .list-item:hover .list-title a {
		background: none;
	}

	.header .list-text {
		transform: none;
		opacity: 1;
		position: static;
	}

	.header .list-text>div {
		border-top: 1px dotted #999;
		padding: 10px 0;
		background: none;
	}

	.header .list-text ul {
		display: block;
	}

	.header .list-text li {
		padding: 0;
		border-left: none;
	}

	.header .list-text li a {
		display: block;
		padding: 3px 0;
		color: #000;
	}

	.header .list-text li a:hover {
		color: #000;
	}

	.header .button {
		display: block;
		margin-left: 0;
		padding-top: 50px;
		border-top: 1px solid #999;
	}

	.header .button a {
		display: block;
		padding: 10px;
	}
}

/*========================================================================

  footer

========================================================================*/

.navigation {
	background: #333;
	font-size: 95%;
	color: #fff;
}

.navigation .pbBlockNavigation {
	width: calc(100% - 20px);
	max-width: 1000px;
	margin: 0 auto;
	padding: 10px 0;
}

.navigation a {
	display: inline-block;
	color: #fff;
}

.navigation a:after {
	content: '';
	display: inline-block;
	margin: 0 15px 1px;
	width: .4em;
	height: .4em;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
}

.magazine {
	background: #000;
	color: #fff;
}

.magazine>div {
	display: flex;
	align-items: center;
	width: calc(100% - 20px);
	max-width: 1000px;
	margin: 0 auto;
	background: url(../images/mail.png) no-repeat 10px center;
	background-size: auto 180px;
}

.magazine .textarea {
	width: 40%;
}

.magazine .textarea>div {
	position: relative;
	padding: 30px 20px 30px 50px;
	text-align: center;
}

.magazine .textarea>div:after {
	content: '';
	position: absolute;
	top: 20px;
	right: 0;
	width: 1px;
	height: calc(100% - 40px);
	background: #fff;
}

.magazine .title {
	font-size: 160%;
}

.magazine .text {
	margin-top: 15px;
}

.magazine .textarea+div {
	width: 60%;
	padding-left: 50px;
}

.magazine .pbCornerWrap {
	padding: 20px 0;
}

.magazine .pbCornerWrap.finish div {
	font-size: 110%;
}

.magazine .pbCorner:not(:first-child) {
	position: relative;
	padding-right: 110px;
	margin-top: 0;
}

.magazine .pbCorner>table,
.magazine .pbCorner tbody,
.magazine .pbCorner tr,
.magazine .pbCorner td {
	display: block;
}

.magazine .pbCorner td.pbLabel,
.magazine .pbCorner td.pbLabel+td {
	width: 100% !important;
	padding: 0;
	background: none;
}

.magazine .pbCorner td.pbLabel {
	color: #ccc;
	padding-bottom: 5px;
}

.magazine .pbCorner input[type="text"] {
	padding: 5px;
	background: #ccc;
	border: none;
	border-radius: 2px;
}

.magazine .pbCorner .forTdCellCenter {
	padding-top: 0;
	height: 0 !important;
}

.magazine .pbCorner .forTdCellCenter input {
	position: absolute;
	right: 0;
	bottom: 0;
	min-width: 100px;
	padding: 4px;
	background: #000;
	font-size: 100%;
	border: 1px solid #333;
	border-radius: 2px;
}

.magazine .pbCorner .forTdCellCenter input:hover {
	background: #333;
}

.magazine .error {
	padding: 5px;
	background: #faeae8;
	color: #ac3428;
	font-size: 90%;
}

.page-top {
	display: none;
	position: fixed;
	bottom: 0;
	right: 0;
	z-index: 1;
}

.page-top>div {
	margin: 20px;
}

.page-top>div>div {
	position: relative;
	width: 60px;
	height: 60px;
	background: rgba(0, 0, 0, .3);
	border-radius: 50%;
	cursor: pointer;
	transition: all .3s;
}

.page-top>div>div:before {
	content: '';
	position: absolute;
	right: 0;
	left: 0;
	margin: auto;
	top: 25px;
	width: 13px;
	height: 13px;
	border-top: 2px solid #fff;
	border-left: 2px solid #fff;
	transform: rotate(45deg);
}

.page-top>div>div:hover {
	background: #000;
}

.footer {
	background: #f7f7f7;
}

.footer a {
	text-decoration: none;
}

.footer>div {
	padding: 50px 0 0;
	font-size: 90%;
	text-align: center;
}

.footer .logo>div {
	padding: 0 10px;
}

.footer .list {
	margin-top: 30px;
}

.footer .list ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.footer .list li,
.footer .list li:not(:first-child) {
	margin: 0 10px;
	padding: 0;
}

.footer .list li a {
	display: inline-block;
	position: relative;
}

.footer .list li a:hover {
	color: #999;
}

.footer .list li a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 1px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	transform: rotate(45deg);
}

.footer .sns {
	margin-top: 30px;
}

.footer .sns>div {
	display: flex;
	justify-content: center;
}

.footer .sns>div>div {
	margin: 0 10px;
}

.footer .sns a {
	display: block;
	background: #333;
	border-radius: 50%;
	transition: all .3s;
}

.footer .sns a:hover {
	background: #000;
}

.footer .sns a:hover img {
	opacity: 1;
}

.footer .copyright {
	margin-top: 100px;
	padding: 10px;
	background: #000;
	color: #fff;
	font-family: 'Roboto Condensed', sans-serif;
}

div.pbFooterArea .footerInfo {
	color: #fff;
	background: #004297;
	padding: 17px 15px;
}

.footerText01 {
	font-weight: bold;
	margin-bottom: 5px;
}

.footerText02 {
	font-size: 0.75rem;
	margin-bottom: 21px;
}

.copyright {
	color: #fff;
	font-size: 0.625rem;
	opacity: 0.5;
	text-align: center;
}

/* ガイド欄 */
.guideArea {
	background: #f4f6f8;
	padding: 47px 15px 7px;
}

.mailMagazineBoxTtl,
.snsTtl,
.contactTtl {
	font-size: 1.25rem;
	color: #004297;
	text-align: center;
	margin-bottom: 7px;
}

.contactItem {
	border: 1px solid #dde4eb;
	border-radius: 5px;
	background: #fff;
	text-align: center;
	margin-bottom: 10px;
	padding: 16px 0 21px;
}

.contactText {
	font-size: 0.875rem;
}

.contactItemText01 {
	font-weight: bold;
	margin-bottom: 12px;
}

.contactMoreBtn {
	font-weight: bold;
}

.contactTel {
	font-size: 1.875rem;
	font-weight: bold;
	margin-top: -14px;
}

.contactTel img {
	width: 1.5em;
	vertical-align: middle;
}

.contactTel a {
	color: #004297;
}

.contactItemText02 {
	font-size: 0.687rem;
	margin-top: -0.2em;
}

.mailMagazineBox {
	border-bottom: 1px solid #dde4eb;
	padding-bottom: 26px;
}

.mailMagazineText {
	font-size: 0.875rem;
	margin-bottom: 9px;
}

.mailMagazineMoreBtn {
	text-align: center;
	font-weight: bold;
}


.mailMagazineBox .snsBox {
	border-bottom: 1px solid #dde4eb;
}

.snsItemWrap {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.snsBox {
	padding: 20px 0 16px;
	padding-top: 20px;
	border-bottom: 1px solid #dde4eb;
}

.snsItem {
	width: calc(50% - 5px);
	margin-bottom: 3px;
}

.snsItem img {
	width: 100%;
}

.contactBox {
	padding-top: 20px;
	margin-bottom: 14px;
}

.contactTtl {
	margin-bottom: 2px;
}

.contactText {
	margin-bottom: 11px;
}

.linkBox {
	width: 100%;
}

.linkBox .linkList {
	display: flex;
	justify-content: space-between;
	flex-direction: column;
}

.linkBox .linkList li {
	padding-left: 0;
	font-size: 0.875rem;
	margin-bottom: 5px;
}

.linkBox .linkList li:before {
	content: none;
}

.linkBox .linkList li a {
	position: relative;
	color: #004297;
	font-size: 0.875rem;
}

.linkBox .linkList li a.pdf-link:after {
	border: none;
	width: 14px;
	height: 18px;
	background-image: url(../images/pdf_ico_01.png);
	transform: none;
	background-size: contain;
	right: -1.5em;
	background-repeat: no-repeat;
}

.linkBox .linkList li a:hover {
	text-decoration: underline;
}

.linkBox .linkList li a:after {
	content: '';
	display: inline-block;
	width: .4em;
	height: .4em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: -.7em;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

.pbMainArea .linkBox ul li:not(:first-child) {
	margin-top: 2px;
}

.page-top-wrap {
	width: 1024px;
	position: fixed;
	bottom: 0;
	z-index: 9999;
	right: 0;
	height: 50px;
	left: 0;
	margin: 0 auto;
}

#page-top {
	position: fixed;
	/*top: 0;
	right: 0;*/
	background: #004297;
	border: 1px solid #fff;
	box-sizing: content-box;
	width: 45px;
	height: 45px;
	border-radius: 50%;
	cursor: pointer;
	transition: opacity .3s;
	z-index: 9999;
	/*top: -28px;
	right: 0;*/
	width: 50px;
	height: 50px;
	bottom: 20px;
}

@media screen and (min-width: 1110px) {
	#page-top {
		right: calc((100vw - 1024px) / 2 - 25px);
	}
}@media screen and (max-width: 1109px) and (min-width: 768px) {
	#page-top {
		position: fixed;
		right: 20px;
	}
}
@media screen and (max-width: 767px) {
	#page-top {
		right: 28px;
	}
}
@media screen and (min-width: 768px) {
	#page-top:hover {
		opacity: 0.6;
	}
}

#page-top:before {
	content: '';
	position: absolute;
	top: 5px;
	bottom: 0;
	margin: auto;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	opacity: 1;
	transform: rotate(135deg);
	left: 18px;
	width: 8px;
	height: 8px;
}

@media screen and (max-width: 1024px) {
	.page-top-wrap {
		width: 90%;
	}
}

@media screen and (max-width: 767px) {
	.page-top-wrap {
		width: 90%;
	}

	#page-top:before {
		left: 20px;
	}
}

.guideAreaInner {
	position: relative;
}

@media screen and (min-width: 768px) {
	.guideArea {
		padding: 77px 0 26px;
	}

	.guideAreaInner {
		width: 1024px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	#page-top {
		/*top: -98px;
		right: -27px;*/
		width: 50px;
		height: 50px;
	}

	#page-top:before {
		top: 5px;
		bottom: 0;
		left: 20px;
		width: 9px;
		height: 9px;
	}

	.mailMagazineBoxTtl,
	.snsTtl,
	.contactTtl {
		margin-bottom: 25px;
		border-bottom: 1px solid #dde4eb;
		padding-bottom: 11px;
		text-align: left;
	}

	.mailMagazineBox {
		width: calc(50% - 25px);
		border: none;
	}

	.mailMagazineText {
		font-size: 1rem;
		margin-bottom: 45px;
	}

	.snsBox {
		width: calc(50% - 25px);
		padding: 0;
		border: none;
	}

	.snsItemWrap {
		padding-top: 5px;
	}

	.snsItem {
		width: calc(50% - 7px);
		margin-bottom: 14px;
	}

	.contactBox {
		width: 100%;
		padding-top: 32px;
		margin-bottom: 26px;
	}

	.contactText {
		font-size: 1rem;
		margin-bottom: 26px;
	}

	.contactItemWrap {
		display: flex;
		border: 1px solid #dde4eb;
		border-radius: 5px;
		background: #fff;
	}

	.contactItem {
		width: 50%;
		border: none;
		border-radius: 0;
		margin-bottom: 0;
		padding: 0;
		margin: 26px 0 20px;
	}

	.contactItem:first-child {
		border-right: 1px dashed #dce4eb;
	}

	.contactItem:first-child .contactItemText01 {
		margin-bottom: 20px;
	}

	.contactItemText01 {
		font-size: 1.25rem;
		margin-bottom: 17px;
	}

	.contactTel {
		font-size: 2.125rem;
		pointer-events: none;
	}

	.contactTel img {
		width: 1.5em;
		margin-top: -4px;
		margin-right: -10px;
	}

	.contactItemText02 {
		font-size: 0.75rem;
	}

	.linkBox .linkList {
		flex-direction: row;
		padding-right: 35px;
	}

}


@media screen and (max-width: 900px) {
	.navigation a:after {
		margin: 0 8px 1px;
	}

	.magazine>div {
		display: block;
		max-width: 500px;
		padding: 30px 0 40px;
		background-position: 0 10px;
		background-size: auto 100px;
	}

	.magazine .textarea {
		width: 100%;
	}

	.magazine .textarea>div {
		padding: 0 0 20px;
	}

	.magazine .textarea>div:after {
		top: auto;
		bottom: 0;
		right: 0;
		width: 100%;
		height: 1px;
		background: #666;
	}

	.magazine .text {
		margin-top: 5px;
		color: #999;
	}

	.magazine .textarea+div {
		width: 100%;
		padding-left: 0;
	}

	.magazine .pbCornerWrap {
		padding: 20px 0 0;
	}

	.magazine .pbCornerWrap.finish div {
		float: none !important;
		text-align: center;
	}

	.magazine .pbCorner:not(:first-child) {
		padding-right: 70px;
	}

	.magazine .pbCorner .forTdCellCenter input {
		min-width: 65px;
	}

	.page-top>div {
		margin: 10px;
	}

	.page-top>div>div {
		width: 40px;
		height: 40px;
	}

	.page-top>div>div:before {
		top: 17px;
		width: 10px;
		height: 10px;
	}

	.footer .copyright {
		margin-top: 50px;
	}


}

@media screen and (min-width: 768px) {
	div.pbFooterArea {
		padding: 29px 0 0;
	}

	div.pbFooterArea .footerInfo {
		padding: 36px 15px 39px;
	}

	div.pbFooterArea .footerInfo>div {
		width: 1024px;
		margin: 0 auto;
	}

	div.pbFooterArea .footerText01 {
		font-size: 1.125rem;
		margin-bottom: 10px;
	}

	div.pbFooterArea .footerText02 {
		font-size: 0.75rem;
		margin-bottom: 43px;
	}
}

/*========================================================================

  component

========================================================================*/

/*  h1
========================================================================*/

.base-h1 {
	width: calc(100% - 20px);
	margin: 80px auto 0;
	text-align: left;
	border-bottom: 1px solid #dde4eb;
	font-weight: bold;
	color: #004297;
}

/*.base-h1+div {
	margin-top: 80px;
}*/

.base-h1>.base-inner {
	width: 1024px;
	margin: 0 auto;
	max-width: 100%;
}

.base-h1 h1 {
	position: relative;
	padding-bottom: 38px;
}

.base-h1 h1:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 120px;
	height: 2px;
	background: #c1d1e6;
}

@media screen and (max-width: 767px) {
	.base-h1 {
		width: 100%;
		margin-top: 40px;
		padding: 0 15px;
	}

	.base-h1 h1 {
		padding-bottom: 0;
		font-size: 23px;
	}

	.base-h1 h1::after {
		content: none;
	}

	/*.base-h1+div {
		margin-top: 40px;
	}*/

	.base-h1 h1 {
		padding-bottom: 20px;
	}

	.base-h1 h1:after {
		width: 50px;
	}
}

/*  h1-subtitle
------------------------------------------------*/

.h1-subtitle .subtitle {
	margin-top: 15px;
}

@media screen and (max-width: 767px) {
	.h1-subtitle .subtitle {
		margin-top: 10px;
	}
}

/*  h1box
========================================================================*/

div.base-h1box {
	overflow: hidden !important;
}

.base-h1box>div:not(.pb-handle) {
	display: flex;
	align-items: center;
	position: relative;
	padding: 70px 0;
}

.base-h1box .background {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100%;
	z-index: auto !important;
}

.base-h1box .background div:not(.pb-handle) {
	position: static !important;
}

.base-h1box .background .mce-resizehandle {
	display: none;
}

.base-h1box .background img {
	opacity: .4;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: none;
	min-width: 101%;
	min-height: 101%;
}

.base-h1box .inner {
	position: relative;
	width: calc(100% - 20px);
	max-width: 980px;
	margin: 0 auto;
	z-index: auto !important;
}

.base-h1box .inner>div>div:first-child {
	margin-top: 0;
}

@media screen and (max-width: 767px) {
	.base-h1box>div:not(.pb-handle) {
		padding: 40px 0;
	}

	.base-h1box .inner {
		max-width: 500px;
	}
}

/*  h1box-black
------------------------------------------------*/

.h1box-black {
	background: #000;
	color: #fff;
	text-shadow: 0px 0px 10px #3d3d3d;
}

.h1box-black h1:after {
	background: #fff;
}

.h1box-black a {
	color: #fff;
}

/*  h1area
========================================================================*/

.base-h1area>div {
	position: relative;
	padding: 200px 0 70px;
}

.base-h1area .background {
	position: absolute;
	top: 0;
	overflow: hidden !important;
	width: 100%;
	height: 300px;
	z-index: auto !important;
}

.base-h1area .background div:not(.pb-handle) {
	position: static !important;
}

.base-h1area .background img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: none;
	min-width: 101%;
	min-height: 101%;
}

.base-h1area .inner {
	position: relative;
	width: calc(100% - 20px);
	max-width: 1080px;
	margin: 0 auto;
	z-index: auto !important;
}

.base-h1area .inner>div {
	padding: 50px 40px 0;
	background: #fff;
}

.base-h1area .inner>div>div:first-child {
	margin-top: 0;
}

@media screen and (max-width: 767px) {
	.base-h1area>div {
		padding: 100px 0 40px;
	}

	.base-h1area .background {
		height: 200px;
	}

	.base-h1area .inner {
		max-width: 520px;
	}

	.base-h1area .inner>div {
		padding: 20px 10px 0;
	}
}

/*  h1area-black
------------------------------------------------*/

.h1area-black {
	background: #ebebeb;
}

.h1area-black>div {
	padding: 70px 0;
}

.h1area-black .inner {
	max-width: 1000px;
}

.h1area-black .inner>div {
	padding: 0;
	background: none;
}

.h1area-black .base-h1 {
	color: #fff;
}

.h1area-black .base-h1 h1:after {
	background: #fff;
}

.h1area-black .background {
	background: #000;
}

.h1area-black .background img {
	opacity: .3;
}

@media screen and (max-width: 767px) {
	.h1area-black>div {
		padding: 40px 0;
	}

	.h1area-black .inner>div {
		padding: 0;
	}
}

/*  section
========================================================================*/

.base-section>div {
	width: calc(100% - 20px);
	max-width: 1000px;
	margin: 0 auto;
	padding: 70px 0;
}
.base-section.no-padding>div{
	padding-top: 0;
	margin-top: 30px;
}
.base-section>div>div:first-child {
	margin-top: 0;
}
/*.base-section:last-child>div {
	padding-bottom: 100px;
}*/

@media screen and (max-width: 767px) {
	.base-section>div {
		width: calc(100% - 30px);
		max-width: 500px;
		padding: 40px 0;
	}

	.base-section.nav-page>div {
		width: 100%;
	}

	.base-section:last-child>div {
		/*padding-bottom: 60px;*/
	}

	.newsListWrapper .base-category {
		padding-top: 0 !important;
	}
}

/*  section-space
------------------------------------------------*/

.section-space>div {
	padding-top: 0;
}

/*  section-small
------------------------------------------------*/

.section-small>div {
	max-width: 800px;
}

@media screen and (max-width: 767px) {
	.section-small>div {
		max-width: 500px;
	}
}

/*  section-light
------------------------------------------------*/

.section-light {
	background: #f7f7f7;
}

/*  section-dark
------------------------------------------------*/

.section-dark {
	background: #ebebeb;
}

/*  section-stripe
------------------------------------------------*/

.section-stripe {
	background-color: #f2f2f2;
	background-image: linear-gradient(-45deg, #f2f2f2 25%, #e7e7e7 25%, #e7e7e7 50%, #f2f2f2 50%, #f2f2f2 75%, #e7e7e7 75%, #e7e7e7);
	background-size: 5px 5px;
}

/*  base-sectionArrow
========================================================================*/

.base-sectionArrow>div {
	overflow: hidden !important;
}

.base-sectionArrow .inner {
	position: relative;
	z-index: auto !important;
}

.base-sectionArrow .inner:nth-child(even) {
	background: #ebebeb;
}

.base-sectionArrow .inner:after {
	content: '';
	position: absolute;
	z-index: 1;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border: 50vw solid transparent;
	border-top: 70px solid #fff;
	pointer-events: none;
}

.base-sectionArrow .inner:nth-child(even):after {
	border-top-color: #ebebeb;
}

.base-sectionArrow .inner>div {
	width: calc(100% - 20px);
	max-width: 1000px;
	margin: 0 auto;
	padding: 130px 0 40px;
}

.base-sectionArrow .inner:first-child>div {
	padding-top: 70px;
}

.base-sectionArrow .inner:last-child>div {
	padding-bottom: 70px;
}


@media screen and (max-width: 767px) {
	.base-sectionArrow .inner:after {
		border-top: 30px solid #fff;
	}

	.base-sectionArrow .inner>div {
		max-width: 500px;
		padding: 60px 0 20px;
	}

	.base-sectionArrow .inner:first-child>div {
		padding-top: 40px;
	}

	.base-sectionArrow .inner:last-child>div {
		padding-bottom: 40px;
	}
}

/*  sectionArrow-reverse
------------------------------------------------*/

.sectionArrow-reverse {
	background: #ebebeb;
}

.sectionArrow-reverse .inner:nth-child(even) {
	background: #fff;
}

.sectionArrow-reverse .inner:after {
	border-top-color: #ebebeb;
}

.sectionArrow-reverse .inner:nth-child(even):after {
	border-top-color: #fff;
}

/*  base-lead
========================================================================*/

div.base-lead {
	overflow: hidden !important;
}

.base-lead>div:not(.pb-handle) {
	position: relative;
	overflow: hidden !important;
	padding: 70px 0;
}

.base-lead .background {
	position: absolute;
	top: 0;
	bottom: 0;
	width: 100%;
	background: #fff;
	z-index: auto !important;
}

.base-lead .background div:not(.pb-handle) {
	position: static !important;
}

.base-lead .background .mce-resizehandle {
	display: none;
}

.base-lead .background img {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: none;
	min-width: 101%;
	min-height: 101%;
	opacity: .3;
}

.base-lead .lead {
	position: relative;
	width: calc(100% - 20px);
	margin: 0 auto;
	font-size: 230%;
	font-family: 'Noto Serif JP', serif;
	text-align: center;
	z-index: auto !important;
}

@media screen and (max-width: 767px) {
	.base-lead>div:not(.pb-handle) {
		padding: 40px 0;
	}

	.base-lead .lead {
		font-size: 140%;
	}
}

/*  lead-black
------------------------------------------------*/

.lead-black {
	color: #fff;
}

.lead-black .background {
	background: #000;
}

/*  h2
========================================================================*/

.base-h2:not(:first-child) {
	margin-top: 80px;
}

.base-h2 {
	text-align: center;
}

@media screen and (max-width: 767px) {
	.base-h2:not(:first-child) {
		margin-top: 40px;
	}
}

/*  h2-subtitle
------------------------------------------------*/

.h2-subtitle .subtitle {
	margin-top: 10px;
}

.h2-subtitle .subtitle>div:not(.pb-handle) {
	position: relative;
	display: inline-block;
	/* padding: 0 40px; */
}

.h2-subtitle .subtitle>div:not(.pb-handle):before,
.h2-subtitle .subtitle>div:not(.pb-handle):after {
	/* content: ''; */
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	display: inline-block;
	width: 30px;
	height: 1px;
	background: #000;
}

.h2-subtitle .subtitle>div:before {
	left: 0;
}

.h2-subtitle .subtitle>div:after {
	right: 0;
}

@media screen and (max-width: 767px) {
	.h2-subtitle .subtitle>div:not(.pb-handle) {
		/* padding: 0 30px; */
	}

	.h2-subtitle .subtitle>div:not(.pb-handle):before,
	.h2-subtitle .subtitle>div:not(.pb-handle):after {
		width: 20px;
	}
}

/*  h3
========================================================================*/

.base-h3:not(:first-child) {
	margin-top: 50px;
}

.base-h3 h3 {
	padding: 5px 15px;
	background: rgba(0, 0, 0, .05);
}

@media screen and (max-width: 767px) {
	.base-h3:not(:first-child) {
		margin-top: 40px;
	}
  
}

/*  h3-subtitle
------------------------------------------------*/

.h3-subtitle .subtitle {
	margin-top: 5px;
	font-size: 80%;
	text-align: right;
}

.h3-subtitle .subtitle strong {
	color: #f00;
	font-weight: normal;
}

/*  h4
========================================================================*/

.base-h4:not(:first-child) {
	margin-top: 50px;
}

.base-h4 h4 {
	padding-bottom: 5px;
	border-bottom: 2px solid rgba(0, 0, 0, .1);
}

@media screen and (max-width: 767px) {
	.base-h4:not(:first-child) {
		margin-top: 40px;
	}
	.base-h4>div>div{
		width: 100%;
	}
}

/*  h4-subtitle
------------------------------------------------*/

.h4-subtitle .subtitle {
	margin-top: 5px;
	font-size: 80%;
	text-align: right;
}

/*  h5
========================================================================*/

.base-h5:not(:first-child) {
	margin-top: 50px;
}

.base-h5>div {
	position: relative;
	padding-left: 1em;
	border-left: 2px solid rgba(0, 0, 0, .2);
}

@media screen and (max-width: 767px) {
	.base-h5:not(:first-child) {
		margin-top: 40px;
	}
}

/*  h5-subtitle
------------------------------------------------*/

.h5-subtitle .subtitle {
	font-size: 80%;
}

/*  text
========================================================================*/

.base-text:not(:first-child) {
	margin-top: 30px;
}

.base-text a.pbOpenNewWindow:after,
.base-text a[href$=".pdf"]::after,
.base-text a[href$=".doc"]::after,
.base-text a[href$=".docx"]::after,
.base-text a[href$=".xls"]::after,
.base-text a[href$=".xlsx"]::after,
.base-text a[href$=".ppt"]::after,
.base-text a[href$=".pptx"]::after {
	content: '';
	display: inline-block;
	width: 13px;
	height: 13px;
	margin: 0 5px;
	padding-top: 3px;
	background: url(../images/icon_window.png) no-repeat center top;
	vertical-align: middle;
}

.base-text a[href$=".pdf"]::after {
	background: url(../images/icon_pdf.png) no-repeat center top;
}

.base-text a[href$=".doc"]::after,
.base-text a[href$=".docx"]::after {
	background: url(../images/icon_word.png) no-repeat center top;
}

.base-text a[href$=".xls"]::after,
.base-text a[href$=".xlsx"]::after {
	background: url(../images/icon_excel.png) no-repeat center top;
}

.base-text a[href$=".ppt"]::after,
.base-text a[href$=".pptx"]::after {
	background: url(../images/icon_powerpoint.png) no-repeat center top;
}

@media screen and (max-width: 767px) {
	.base-text:not(:first-child) {
		margin-top: 20px;
	}
	.wid-100-sp {
		width: 100%;
	}
	.text-center-sp {
		text-align: center;
	}
	.text-right-sp {
		text-align: right;
	}
	.text-left-sp {
		text-align: left;
	}
}

/*  width
------------------------------------------------*/

.wid-100 {
	width: 100%;
}

/*  text-center
------------------------------------------------*/

.text-center {
	text-align: center;
}

/*  text-right
------------------------------------------------*/

.text-right {
	text-align: right;
}

/*  text-bold
------------------------------------------------*/

.text-bold {
	font-weight: bold;
}

/*  text-lead
------------------------------------------------*/

.text-lead {
	font-weight: bold;
	font-size: 125%;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.text-lead {
		font-size: 105%;
		text-align: left;
		word-spacing: -.3em;
	}

	.text-lead br {
		display: none;
	}
}

/*  text-large
------------------------------------------------*/

.text-large {
	font-size: 120%;
}

/*  text-small
------------------------------------------------*/

.text-small {
	font-size: 90%;
}

/*  textbox
========================================================================*/

.base-textbox:not(:first-child) {
	margin-top: 30px;
}

.base-textbox .title:not(:first-child) {
	margin-top: 20px;
}

.base-textbox .title:not(:first-child)>div {
	padding-top: 20px;
	border-top: 1px solid rgba(0, 0, 0, .1);
}

.base-textbox .title {
	font-weight: bold;
	font-size: 120%;
}

.base-textbox .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-textbox .text:not(:first-child) {
	margin-top: 15px;
}

.base-textbox .list:not(:first-child) {
	margin-top: 15px;
}

.base-textbox .table:not(:first-child) {
	margin-top: 15px;
}

.base-textbox .button:not(:first-child) {
	margin-top: 20px;
}

.base-textbox .button {
	text-align: center;
}

.base-textbox .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.base-textbox .button a:hover {
	background: #000;
}

.base-textbox .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

/*  textbox-gray
------------------------------------------------*/

.textbox-gray>div {
	padding: 30px;
	background: #f5f6f8;
}

@media screen and (max-width: 767px) {
	.textbox-gray>div {
		padding: 20px 15px;
	}
}

/*  textbox-red
------------------------------------------------*/

.textbox-red>div {
	padding: 30px;
	background: #faeae8;
	border: 3px solid #ac3428;
	color: #ac3428;
}

.textbox-red a {
	color: #ac3428;
}

.textbox-red .title:not(:first-child)>div {
	border-color: #ac3428;
}

.textbox-red .title p:before {
	background: #ac3428;
}

.textbox-red .list li:before {
	border-color: #ac3428;
}

.textbox-red .table th {
	background: #ac3428;
}

.textbox-red .table td {
	background: rgba(255, 255, 255, .5);
}

.textbox-red .button a {
	background: #ac3428;
}

@media screen and (max-width: 767px) {
	.textbox-red>div {
		padding: 20px 15px;
	}
}

/*  textbox-border
------------------------------------------------*/

.textbox-border>div {
	padding: 30px;
	background: rgba(255, 255, 255, .5);
	border: 3px solid #ccc;
}

@media screen and (max-width: 767px) {
	.textbox-border>div {
		padding: 20px 15px;
	}
}

/*  textbox-small
------------------------------------------------*/

.textbox-small>div {
	padding: 20px;
	background: rgba(255, 255, 255, .5);
	border: 1px solid #ccc;
	font-size: 90%;
}

@media screen and (max-width: 767px) {
	.textbox-small>div {
		padding: 15px;
	}
}

/*  textbox-scroll
------------------------------------------------*/

.textbox-scroll>div {
	overflow: hidden !important;
	max-height: 200px;
	padding: 20px;
	background: rgba(255, 255, 255, .5);
	border: 1px solid #ccc;
}

@media screen and (max-width: 767px) {
	.textbox-scroll>div {
		padding: 14px;
	}
}

/*  imagebox
========================================================================*/

.base-imagebox:not(:first-child) {
	margin-top: 30px;
}

.base-imagebox .box:first-child {
	max-width: 45%;
	float: left;
	margin-right: 25px;
}

.base-imagebox .box:first-child>div {
	display: table;
}

.base-imagebox .box:last-child {
	overflow: hidden !important;
}

.base-imagebox .box:only-child {
	display: block;
	max-width: none;
	margin: auto !important;
}

.base-imagebox .image:not(:first-child) {
	margin-top: 10px;
}

.base-imagebox .image img {
	width: 100%;
}

.base-imagebox .caption {
	display: table-caption;
	caption-side: bottom;
	margin-top: 5px;
	color: #666;
	font-size: 90%;
}

.base-imagebox .title:not(:first-child) {
	margin-top: 20px;
}

.base-imagebox .title:not(:first-child)>div {
	padding-top: 20px;
	border-top: 1px solid rgba(0, 0, 0, .1);
}

.base-imagebox .title {
	font-weight: bold;
	font-size: 120%;
}

.base-imagebox .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-imagebox .text:not(:first-child) {
	margin-top: 15px;
}

.base-imagebox .list:not(:first-child) {
	margin-top: 15px;
}

.base-imagebox .table:not(:first-child) {
	margin-top: 15px;
}

.base-imagebox .button:not(:first-child) {
	margin-top: 20px;
}

.base-imagebox .button {
	text-align: center;
}

.base-imagebox .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.base-imagebox .button a:hover {
	background: #000;
}

.base-imagebox .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-imagebox .box:first-child {
		max-width: none;
		float: none;
		margin-right: 0;
	}

	.base-imagebox .box:first-child>div {
		margin: 0 auto;
	}

	.base-imagebox .box:last-child {
		margin-top: 15px;
	}
}

/*  imagebox-gray
------------------------------------------------*/

.imagebox-gray>div {
	padding: 30px;
	background: rgba(0, 0, 0, .03);
}

@media screen and (max-width: 767px) {
	.imagebox-gray>div {
		padding: 20px 15px;
	}
}

/*  imagebox-flow
------------------------------------------------*/

.imagebox-flow .box .pbBlock {
	clear: none;
}

.imagebox-flow .box .pbNested:after {
	display: none;
}

.imagebox-flow .box:first-child {
	position: relative;
	z-index: 1;
	margin: 0 25px 10px 0;
}

.imagebox-flow .box:last-child {
	overflow: visible !important;
}

@media screen and (max-width: 767px) {
	.imagebox-flow .box:first-child {
		margin: 0;
	}
}

/*  imageboxR
========================================================================*/

.base-imageboxR:not(:first-child) {
	margin-top: 30px;
}

.base-imageboxR .box:first-child {
	max-width: 45%;
	float: right;
	margin-left: 25px;
}

.base-imageboxR .box:first-child>div {
	display: table;
}

.base-imageboxR .box:last-child {
	overflow: hidden !important;
}

.base-imageboxR .box:only-child {
	display: block;
	max-width: none;
	margin: auto !important;
}

.base-imageboxR .image:not(:first-child) {
	margin-top: 10px;
}

.base-imageboxR .image img {
	width: 100%;
}

.base-imageboxR .caption {
	display: table-caption;
	caption-side: bottom;
	margin-top: 5px;
	color: #666;
	font-size: 90%;
}

.base-imageboxR .title:not(:first-child) {
	margin-top: 20px;
}

.base-imageboxR .title:not(:first-child)>div {
	padding-top: 20px;
	border-top: 1px solid rgba(0, 0, 0, .1);
}

.base-imageboxR .title {
	font-weight: bold;
	font-size: 120%;
}

.base-imageboxR .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-imageboxR .text:not(:first-child) {
	margin-top: 15px;
}

.base-imageboxR .list:not(:first-child) {
	margin-top: 15px;
}

.base-imageboxR .table:not(:first-child) {
	margin-top: 15px;
}

.base-imageboxR .button:not(:first-child) {
	margin-top: 20px;
}

.base-imageboxR .button {
	text-align: center;
}

.base-imageboxR .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.base-imageboxR .button a:hover {
	background: #000;
}

.base-imageboxR .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-imageboxR .box:first-child {
		max-width: none;
		float: none;
		margin-left: 0;
	}

	.base-imageboxR .box:first-child>div {
		margin: 0 auto;
	}

	.base-imageboxR .box:last-child {
		margin-top: 15px;
	}
}

/*   imageboxR-gray
------------------------------------------------*/

.imageboxR-gray>div {
	padding: 30px;
	background: rgba(0, 0, 0, .03);
}

@media screen and (max-width: 767px) {
	.imageboxR-gray>div {
		padding: 20px 15px;
	}
}

/*  imageboxR-flow
------------------------------------------------*/

.imageboxR-flow .box .pbBlock {
	clear: none;
}

.imageboxR-flow .box .pbNested:after {
	display: none;
}

.imageboxR-flow .box:first-child {
	position: relative;
	z-index: 1;
	margin: 0 0 10px 25px;
}

.imageboxR-flow .box:last-child {
	overflow: visible !important;
}

@media screen and (max-width: 767px) {
	.imageboxR-flow .box:first-child {
		margin: 0;
	}
}

/*  step
========================================================================*/

.base-step:not(:first-child) {
	margin-top: 30px;
}

.base-step+.base-step {
	margin-top: 10px;
}

.base-step>div {
	display: flex;
	background: rgba(0, 0, 0, .02);
}

.base-step .step {
	width: 150px;
	background: #333;
	color: #fff;
	font-size: 150%;
	letter-spacing: 5px;
	font-weight: bold;
	font-family: 'Roboto Condensed', sans-serif;
	z-index: auto !important;
}

.base-step .step>div {
	width: 100%;
	padding: 20px 10px;
	text-align: center;
}

.base-step .textbox {
	position: relative;
	display: flex;
	align-items: center;
	width: calc(100% - 190px);
	margin: auto;
	z-index: auto !important;
}

.base-step .textbox>div {
	width: 100%;
	padding: 25px 0;
}

.base-step .textbox>div.pb-handle {
	top: 10px;
}

.base-step .title:not(:first-child) {
	margin-top: 20px;
}

.base-step .title:not(:first-child)>div {
	padding-top: 20px;
	border-top: 1px solid rgba(0, 0, 0, .1);
}

.base-step .title {
	font-weight: bold;
	font-size: 120%;
}

.base-step .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-step .text:not(:first-child) {
	margin-top: 15px;
}

.base-step .list:not(:first-child) {
	margin-top: 15px;
}

.base-step .table:not(:first-child) {
	margin-top: 15px;
}

.base-step .button:not(:first-child) {
	margin-top: 20px;
}

.base-step .button {
	text-align: center;
}

.base-step .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.base-step .button a:hover {
	background: #000;
}

.base-step .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-step>div {
		display: block;
	}

	.base-step .step {
		width: 100%;
	}

	.base-step .step>div {
		padding: 5px;
	}

	.base-step .textbox {
		width: 100%;
	}

	.base-step .textbox>div {
		width: 100%;
		padding: 20px 15px;
	}
}

/*  point
========================================================================*/

.base-point:not(:first-child) {
	margin-top: 30px;
}

.base-point>div {
	display: table;
	width: 100%;
	table-layout: fixed;
}

.base-point>div:after {
	display: none;
}

.base-point .box {
	display: table-cell;
}

.base-stepline .box:not(:first-child) {
	border-left: 1px solid #ccc;
}

.base-point .box>div {
	padding: 0 5% 15px;
}

.base-point .step {
	text-align: center;
}

.base-point .step>div {
	position: relative;
	display: inline-block;
	padding: 2px 15px 2px 35px;
	background: #ef6132;
	color: #fff;
	font-size: 120%;
	letter-spacing: 2px;
	font-family: 'Roboto Condensed', sans-serif;
	border-radius: 20px;
}

.base-point .step>div:before {
	content: '';
	position: absolute;
	top: calc(2px + .1em);
	left: 15px;
	width: .4em;
	height: .8em;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	transform: rotate(45deg);
}

.base-point .image:not(:first-child) {
	margin-top: 20px;
}

.base-point .image {
	text-align: center;
}

.base-point .title:not(:first-child) {
	margin-top: 20px;
}

.base-point .title {
	font-weight: bold;
	font-size: 120%;
	text-align: center;
}

.base-point .text:not(:first-child) {
	margin-top: 10px;
}

.base-point .list:not(:first-child) {
	margin-top: 15px;
}

.base-point .table:not(:first-child) {
	margin-top: 15px;
}

.base-point .table th,
.base-point .table td {
	padding: 10px;
}

.base-point .button:not(:first-child) {
	margin-top: 20px;
}

.base-point .button {
	text-align: center;
}

.base-point .button a {
	display: inline-block;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.base-point .button a:hover {
	background: #000;
}

.base-point .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-point>div {
		display: block;
	}

	.base-point .box {
		display: block;
	}

	.base-point .box:not(:first-child) {
		margin-top: 30px;
		padding-top: 30px;
		border: none;
		border-top: 1px solid #ccc;
	}

	.base-point .box>div {
		padding: 0;
	}

	.base-point .table th {
		padding: 8px 10px;
	}
}

/*  line
========================================================================*/

.base-line:not(:first-child),
.base-line+div:not(:first-child) {
	margin-top: 60px;
}

.base-line hr {
	border: 0;
	border-top: 1px solid #bbb;
}

@media screen and (max-width: 767px) {

	.base-line:not(:first-child),
	.base-line+div:not(:first-child) {
		margin-top: 40px;
	}
}

/*  line-dashed
------------------------------------------------*/

.line-dashed hr {
	border-top: 1px dashed #bbb;
}

/*  line-double
------------------------------------------------*/

.line-double hr {
	border-top: 3px double #bbb;
}

/*  base-arrow
========================================================================*/

.base-arrow:not(:first-child),
.base-arrow+div:not(:first-child) {
	margin-top: 40px;
}

.base-arrow>div:not(.pb-handle) {
	position: relative;
	height: 40px;
	text-align: center;
}

.base-arrow>div:not(.pb-handle):before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	left: 50%;
	transform: translateX(-50%);
	border: 40px solid transparent;
	border-top-color: rgba(0, 0, 0, .2);
}

@media screen and (max-width: 767px) {

	.base-arrow:not(:first-child),
	.base-arrow+div:not(:first-child) {
		margin-top: 20px;
	}

	.base-arrow>div:before {
		border-width: 20px;
	}
}

/*  arrow-light
------------------------------------------------*/

.arrow-light>div:not(.pb-handle):before {
	border-top-color: rgba(0, 0, 0, .6);
}

/*  arrow-dark
------------------------------------------------*/

.arrow-dark>div:not(.pb-handle):before {
	border-top-color: rgba(0, 0, 0, 1);
}

/*  image
========================================================================*/

.base-image:not(:first-child) {
	margin-top: 30px;
}

@media screen and (max-width: 767px) {
	.base-image:not(:first-child) {
		margin-top: 20px;
	}
}

/*  image-center
------------------------------------------------*/

.image-center {
	text-align: center;
}

/*  image-right
------------------------------------------------*/

.image-right {
	text-align: right;
}

/*  image-w100
------------------------------------------------*/

.image-w100 img {
	width: 100%;
}

/*  image-text
------------------------------------------------*/

.image-text .title:not(:first-child) {
	margin-top: 15px;
}

.image-text .title {
	/* font-weight: bold; */
	/* font-size: 125%; */
	/* text-align: center; */
}

.image-text .image:not(:first-child) {
	margin-top: 15px;
}

.image-text .image {
	text-align: center;
}

.image-text .text:not(:first-child) {
	margin-top: 15px;
}

@media screen and (max-width: 767px) {
	.image-text .title {
		font-size: 105%;
		text-align: left;
		word-spacing: -.3em;
	}

	.image-text .title br {
		display: none;
	}
}

/*  images
========================================================================*/

.base-images:not(:first-child) {
	margin-top: 30px;
}

.base-images>div {
	display: flex;
	flex-wrap: wrap;
	margin: -10px;
}

.base-images .image {
	width: calc(50% - 20px);
	min-height: 0%;
	margin: 10px;
	z-index: auto !important;
}

.base-images .image img {
	width: 100%;
}

@media screen and (max-width: 767px) {
	.base-images:not(:first-child) {
		margin-top: 20px;
	}

	.base-images>div {
		margin: -5px;
	}

	.base-images .image {
		width: 100%;
		margin: 5px;
	}
}

/*  images-3column
------------------------------------------------*/

.images-3column .image {
	width: calc(33.33% - 20px);
}

@media screen and (max-width: 767px) {
	.images-3column .image {
		width: 100%;
	}
}

/*  images-4column
------------------------------------------------*/

.images-4column>div {
	margin: -5px;
}

.images-4column .image {
	max-width: calc(25% - 10px);
	margin: 5px;
}

@media screen and (max-width: 767px) {
	.images-4column>div {
		margin: -3px;
	}

	.images-4column .image {
		max-width: calc(50% - 6px);
		margin: 3px;
	}
}

/*  images-5column
------------------------------------------------*/

.images-5column>div {
	margin: -3px;
}

.images-5column .image {
	max-width: calc(20% - 6px);
	margin: 3px;
}

@media screen and (max-width: 767px) {
	.images-5column .image {
		max-width: calc(50% - 6px);
	}
}

/*  background
========================================================================*/

.base-background:not(:first-child) {
	margin-top: 30px;
}

.base-background>div {
	position: relative;
}

div.base-background .image {
	overflow: hidden !important;
}

.base-background .image img {
	width: 100%;
}

.base-background .image a:hover img {
	transform: scale(1.1);
	opacity: 1;
}

.base-background .textbox {
	position: absolute;
	bottom: 0;
	width: 100%;
	background: rgba(0, 0, 0, .7);
	color: #fff;
	text-align: center;
	z-index: auto !important;
}

.pbPage:not(.pbPage--edit) .base-background .textbox {
	pointer-events: none;
}

.base-background .textbox>div {
	padding: 30px 20px;
}

.base-background .title>div {
	position: relative;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 130%;
}

.base-background .title>div:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	width: 50px;
	height: 2px;
	background: #fff;
}

.base-background .text:not(:first-child) {
	margin-top: 15px;
}

@media screen and (max-width: 767px) {
	.base-background .textbox {
		position: static;
	}

	.base-background .textbox>div {
		padding: 15px;
		background: #000;
	}
}

/*  background-left
------------------------------------------------*/

.background-left .textbox {
	display: flex;
	align-items: center;
	top: 0;
	width: 300px;
}

.background-left .textbox>div {
	padding: 20px 20px 30px;
}

.background-left .textbox>div.pb-handle {
	top: 10px;
}

@media screen and (max-width: 767px) {
	.background-left .textbox {
		display: block;
		width: 100%;
	}

	.background-left .textbox>div {
		padding: 15px;
	}
}

/*  background-right
------------------------------------------------*/

.background-right .textbox {
	display: flex;
	align-items: center;
	top: 0;
	right: 0;
	width: 300px;
}

.background-right .textbox>div {
	padding: 20px 20px 30px;
}

.background-right .textbox>div.pb-handle {
	top: 10px;
}

@media screen and (max-width: 767px) {
	.background-right .textbox {
		display: block;
		width: 100%;
	}

	.background-right .textbox>div {
		padding: 15px;
	}
}

/*  overlap
========================================================================*/

.base-overlap:not(:first-child) {
	margin-top: 30px;
}

.base-overlap>div {
	display: flex;
}

.base-overlap .image {
	width: 60%;
	margin-top: 50px;
	z-index: auto !important;
}

.base-overlap .image img {
	width: 100%;
}

.base-overlap .textbox {
	width: 60%;
	margin-left: -20%;
	z-index: 1 !important;
}

.base-overlap .textbox>div {
	padding: 30px;
	background: rgba(255, 255, 255, .8);
	box-shadow: 0 0 3px rgba(0, 0, 0, .1);
}

.base-overlap .title>div {
	position: relative;
	padding-bottom: 10px;
	font-weight: bold;
	font-size: 130%;
	text-align: center;
}

.base-overlap .title>div:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	width: 50px;
	height: 2px;
	background: #000;
}

.base-overlap .text:not(:first-child) {
	margin-top: 15px;
}

.base-overlap .button:not(:first-child) {
	margin-top: 15px;
}

.base-overlap .button {
	text-align: center;
}

.base-overlap .button a {
	display: inline-block;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.base-overlap .button a:hover {
	background: #000;
}

.base-overlap .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-overlap>div {
		flex-wrap: wrap;
	}

	.base-overlap .image {
		width: 100%;
		margin-top: 0;
	}

	.base-overlap .textbox {
		width: 93%;
		margin: -50px auto 0;
	}

	.base-overlap .textbox>div {
		padding: 20px 10px;
	}
}

/*  overlap-rb
------------------------------------------------*/

.overlap-rb .image {
	margin-top: 0;
}

.overlap-rb .textbox {
	margin: 50px 0 0 -20%;
}

@media screen and (max-width: 767px) {
	.overlap-rb .textbox {
		margin: -50px auto 0;
	}
}

/*  overlap-lt
------------------------------------------------*/

.overlap-lt .image {
	order: 1;
}

.overlap-lt .textbox {
	margin: 0 -20% 0 0;
}

@media screen and (max-width: 767px) {
	.overlap-lt .image {
		order: 0;
	}

	.overlap-lt .textbox {
		margin: -50px auto 0;
	}
}

/*  overlap-lb
------------------------------------------------*/

.overlap-lb .image {
	margin-top: 0;
	order: 1;
}

.overlap-lb .textbox {
	margin: 50px -20% 0 0;
}

@media screen and (max-width: 767px) {
	.overlap-lb .image {
		order: 0;
	}

	.overlap-lb .textbox {
		margin: -50px auto 0;
	}
}

/*  imagelist
========================================================================*/

.base-imagelist:not(:first-child) {
	margin-top: 30px;
}

.base-imagelist>div {
	display: flex;
}

.base-imagelist>div>div {
	z-index: auto !important;
}

.base-imagelist .image {
	width: 31%;
}

.base-imagelist .image img {
	width: 100%;
}
.autosize-img-left{
	text-align: left;
}
.autosize-img-center{
	text-align: center;
}
.autosize-img-right{
	text-align: right;
}
.base-imagelist .image[class*="autosize-img"] img {
	width: auto;
	max-width: 100%;
}
.base-imagelist .textbox {
	display: flex;
	align-items: center;
	position: relative;
	width: 70%;
}

.base-imagelist .textbox>div {
	width: 100%;
	padding: 5px 0 5px 25px;
}

.base-imagelist .textbox>div.pb-handle {
	top: 10px;
}

.base-imagelist .title {
	font-weight: bold;
	font-size: 120%;
}

.base-imagelist .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-imagelist .text:not(:first-child) {
	margin-top: 10px;
}

.base-imagelist .button {
	margin-top: 20px;
	text-align: center;
}

.base-imagelist .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-imagelist .button a:hover {
	background: #000;
}

.base-imagelist .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-imagelist:not(:first-child) {
		margin-top: 20px;
	}

	.base-imagelist>div {
		display: block;
	}

	.base-imagelist .image {
		width: 100%;
	}

	.base-imagelist .textbox {
		width: 100%;
	}

	.base-imagelist .textbox>div {
		padding: 15px 0 0 0;
	}
}

/*  imagelist-gray
------------------------------------------------*/

.imagelist-gray {
	background: rgba(0, 0, 0, .05);
}

.imagelist-gray .textbox>div {
	padding: 20px 25px;
}

@media screen and (max-width: 767px) {
	.imagelist-gray .textbox>div {
		padding: 15px;
	}
}

/*  imagelist-border
------------------------------------------------*/

.imagelist-border {
	background: #fff;
	border: 1px solid #ccc;
}

.imagelist-border .textbox>div {
	padding: 20px 25px;
}

@media screen and (max-width: 767px) {
	.imagelist-border .textbox>div {
		padding: 15px;
	}
}

/*  imagelistR
========================================================================*/

.base-imagelistR:not(:first-child) {
	margin-top: 30px;
}

.base-imagelistR>div {
	display: flex;
}

.base-imagelistR>div>div {
	z-index: auto !important;
}

.base-imagelistR .image {
	order: 1;
	width: 31%;
}

.base-imagelistR .image img {
	width: 100%;
}

.base-imagelistR .textbox {
	display: flex;
	align-items: center;
	position: relative;
	width: 70%;
}

.base-imagelistR .textbox>div {
	width: 100%;
	padding: 5px 25px 5px 0;
}

.base-imagelistR .textbox>div.pb-handle {
	top: 10px;
}

.base-imagelistR .title {
	font-weight: bold;
	font-size: 120%;
}

.base-imagelistR .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-imagelistR .text:not(:first-child) {
	margin-top: 10px;
}

.base-imagelistR .button {
	margin-top: 20px;
	text-align: center;
}

.base-imagelistR .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-imagelistR .button a:hover {
	background: #000;
}

.base-imagelistR .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-imagelistR:not(:first-child) {
		margin-top: 20px;
	}

	.base-imagelistR>div {
		display: block;
	}

	.base-imagelistR .image {
		width: 100%;
	}

	.base-imagelistR .textbox {
		width: 100%;
	}

	.base-imagelistR .textbox>div {
		padding: 15px 0 0 0;
	}
}

/*  imagelistR-gray
------------------------------------------------*/

.imagelistR-gray {
	background: rgba(0, 0, 0, .05);
}

.imagelistR-gray .textbox>div {
	padding: 20px 25px;
}

@media screen and (max-width: 767px) {
	.imagelistR-gray .textbox>div {
		padding: 15px;
	}
}

/*  imagelistR-border
------------------------------------------------*/

.imagelistR-border {
	background: #fff;
	border: 1px solid #ccc;
}

.imagelistR-border .textbox>div {
	padding: 20px 25px;
}

@media screen and (max-width: 767px) {
	.imagelistR-border .textbox>div {
		padding: 15px;
	}
}

/*  banner
========================================================================*/

.base-banner:not(:first-child) {
	margin-top: 30px;
}

.base-banner>div {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
}

.base-banner .image {
	margin: 15px;
	z-index: auto !important;
}

@media screen and (max-width: 767px) {
	.base-banner:not(:first-child) {
		margin-top: 20px;
	}

	.base-banner .image {
		max-width: 80px;
		margin: 3px;
	}
}

/*  banner-gray
------------------------------------------------*/

.banner-gray>div {
	padding: 15px;
	background: rgba(0, 0, 0, .03);
}

@media screen and (max-width: 767px) {
	.banner-gray>div {
		padding: 15px;
	}
}

/*  banner-border
------------------------------------------------*/

.banner-border>div {
	padding: 13px;
	background: rgba(255, 255, 255, .5);
	border: 1px solid #ccc;
}

@media screen and (max-width: 767px) {
	.banner-border>div {
		padding: 15px;
	}
}

/*  borderbanner
========================================================================*/

.base-borderbanner:not(:first-child) {
	margin-top: 30px;
}

.base-borderbanner>div {
	display: flex;
	flex-wrap: wrap;
	margin: -10px;
}

.base-borderbanner .image {
	width: calc(25% - 20px);
	height: 130px;
	margin: 10px;
	background: rgba(255, 255, 255, .5);
	border: 1px solid #ccc;
	z-index: auto !important;
}

.base-borderbanner .image>div:not(.pb-handle) {
	display: flex;
	align-items: center;
	height: 100%;
	padding: 10px;
	text-align: center;
}

.base-borderbanner .image>div>div {
	width: 100%;
}

.base-borderbanner .image img {
	max-height: 110px;
}

@media screen and (max-width: 767px) {
	.base-borderbanner:not(:first-child) {
		margin-top: 20px;
	}

	.base-borderbanner>div {
		margin: -3px;
	}

	.base-borderbanner .image {
		width: calc(50% - 6px);
		margin: 3px;
		height: 90px;
	}

	.base-borderbanner .image img {
		max-height: 70px;
	}
}

/*  borderbanner-center
------------------------------------------------*/

.borderbanner-center>div {
	justify-content: center;
}

/*  textbanner
========================================================================*/

.base-textbanner:not(:first-child) {
	margin-top: 30px;
}

.base-textbanner>div {
	display: flex;
	flex-wrap: wrap;
	margin: -10px;
}

.base-textbanner .box {
	width: calc(25% - 20px);
	margin: 10px;
	z-index: auto !important;
}

.base-textbanner .image {
	height: 130px;
	background: rgba(255, 255, 255, .5);
	border: 1px solid #ccc;
}

.base-textbanner .image>div:not(.pb-handle) {
	display: flex;
	align-items: center;
	height: 100%;
	padding: 10px;
	text-align: center;
}

.base-textbanner .image>div>div {
	width: 100%;
}

.base-textbanner .image img {
	max-height: 110px;
}

.base-textbanner .text {
	margin-top: 5px;
}

@media screen and (max-width: 767px) {
	.base-textbanner:not(:first-child) {
		margin-top: 20px;
	}

	.base-textbanner>div {
		margin: -3px;
	}

	.base-textbanner .box {
		width: calc(50% - 6px);
		margin: 3px;
	}

	.base-textbanner .image {
		height: 90px;
	}

	.base-textbanner .image img {
		max-height: 70px;
	}
}

/*  textbanner-center
------------------------------------------------*/

.textbanner-center>div {
	justify-content: center;
}

/*  link
========================================================================*/

.base-link:not(:first-child) {
	margin-top: 30px;
}

.base-link a {
	display: inline-block;
	position: relative;
	padding-left: 1.3em;
}

.base-link a:before {
	content: '';
	position: absolute;
	top: .5em;
	left: 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #ccc;
	border-right: 2px solid #ccc;
	transform: rotate(45deg);
}

/* .base-link a.pbOpenNewWindow:after,
.base-link a[href$=".pdf"]::after,
.base-link a[href$=".doc"]::after,
.base-link a[href$=".docx"]::after,
.base-link a[href$=".xls"]::after,
.base-link a[href$=".xlsx"]::after,
.base-link a[href$=".ppt"]::after,
.base-link a[href$=".pptx"]::after {
	content: '';
	display: inline-block;
	width: 13px;
	height: 13px;
	margin: 0 5px;
	padding-top: 3px;
	background: url(../images/icon_window.png) no-repeat center top;
	vertical-align: middle;
} */

.base-link a[href$=".pdf"]::after {
	background: url(../images/icon_pdf.png) no-repeat center top;
}

.base-link a[href$=".doc"]::after,
.base-link a[href$=".docx"]::after {
	background: url(../images/icon_word.png) no-repeat center top;
}

.base-link a[href$=".xls"]::after,
.base-link a[href$=".xlsx"]::after {
	background: url(../images/icon_excel.png) no-repeat center top;
}

.base-link a[href$=".ppt"]::after,
.base-link a[href$=".pptx"]::after {
	background: url(../images/icon_powerpoint.png) no-repeat center top;
}


/*  link-center
------------------------------------------------*/

.link-center {
	text-align: center;
}

/*  link-right
------------------------------------------------*/

.link-right {
	text-align: right;
}

/*  largelink
========================================================================*/

.base-largelink:not(:first-child) {
	margin-top: 30px;
}

.base-largelink a {
	display: inline-block;
	position: relative;
	padding-left: 1.3em;
	font-weight: bold;
	font-size: 110%;
}

.base-largelink a:before {
	content: '';
	position: absolute;
	top: .5em;
	left: 0;
	width: .4em;
	height: .4em;
	border-top: 3px solid #000;
	border-right: 3px solid #000;
	transform: rotate(45deg);
}

/*  largelink-center
------------------------------------------------*/

.largelink-center {
	text-align: center;
}

/*  largelink-right
------------------------------------------------*/

.largelink-right {
	text-align: right;
}

/*  anchor
========================================================================*/

.base-anchor:not(:first-child) {
	margin-top: 30px;
}

.base-anchor ul {
	display: flex;
	flex-wrap: wrap;
}

.base-anchor ul li {
	margin: 5px 10px;
}

.base-anchor ul li:before {
	top: .4em;
	transform: rotate(135deg);
}

/*  anchor-gray
------------------------------------------------*/

.anchor-gray>div {
	padding: 20px;
	background: rgba(0, 0, 0, .05);
}

@media screen and (max-width: 767px) {
	.anchor-gray>div {
		padding: 10px;
	}
}

/*  button
========================================================================*/

.base-button:not(:first-child) {
	margin-top: 30px;
}

.base-button a {
	display: inline-block;
	max-width: 100%;
	padding: .6em 2.2em;
	background: #333;
	color: #fff;
	text-align: center;
	text-decoration: none;
  
}

.base-section .base-button a:hover {
	background: none;
}

.base-button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

.button-hover:hover {
	opacity: 0.6;
}

/*  button-center
------------------------------------------------*/

.button-center {
	text-align: center;
}

/*  button-right
------------------------------------------------*/

.button-right {
	text-align: right;
}

/*  button-group
------------------------------------------------*/

.button-group>div {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: -5px;
}

.button-group .button {
	margin: 5px;
	z-index: auto !important;
}

/*  buttonRed
========================================================================*/

.base-buttonRed:not(:first-child) {
	margin-top: 30px;
}

.base-buttonRed a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	padding: .6em 2em;
	background: #cc3300;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.base-buttonRed a:hover {
	background: #000;
}

.base-buttonRed a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

/*  buttonRed-center
------------------------------------------------*/

.buttonRed-center {
	text-align: center;
}

/*  buttonRed-right
------------------------------------------------*/

.buttonRed-right {
	text-align: right;
}

/*  largebutton
========================================================================*/

.base-largebutton:not(:first-child) {
	margin-top: 30px;
}

.base-largebutton a {
	display: inline-block;
	position: relative;
	min-width: 50%;
	padding: 1em 2em;
	background: #333;
	color: #fff;
	font-size: 130%;
	text-align: center;
	text-decoration: none;
}

.base-largebutton a:hover {
	background: #000;
}

.base-largebutton a:before {
	content: '';
	display: inline-block;
	margin: 0 15px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}
.base-section .base-largebutton a[target="_blank"]::after {
	right: 8%;
	top: 0;
	bottom: 0;
	margin: auto 0;
	background-image: url(../images/blank_ico_02.png);
}

@media screen and (max-width: 767px) {
	.base-largebutton a {
		padding: 1em 1.5em;
		font-size: 120%;
	}
	.base-section .base-largebutton a[target="_blank"]::after {
		background-image: url(../images/blank_ico_02_2x.png);
	}
}

/*  largebutton-center
------------------------------------------------*/

.largebutton-center {
	text-align: center;
}

/*  largebutton-right
------------------------------------------------*/

.largebutton-right {
	text-align: right;
}

/*  largebutton-group
------------------------------------------------*/

.largebutton-group>div {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: -10px;
}

.largebutton-group .button {
	width: calc(50% - 20px);
	margin: 10px;
	z-index: auto !important;
}

.largebutton-group a {
	width: 100%;
}

@media screen and (max-width: 767px) {
	.largebutton-group>div {
		margin: -5px;
	}

	.largebutton-group .button {
		width: auto;
		margin: 5px;
	}
}

/*  imagelink
========================================================================*/

.base-imagelink:not(:first-child) {
	margin-top: 30px;
}

.base-imagelink>div {
	display: flex;
	flex-wrap: wrap;
	margin: -20px;
	text-shadow: 1px 2px 3px #fff;
}

.base-imagelink .box {
	position: relative;
	width: calc(50% - 40.5px);
	margin: 20px;
	z-index: auto !important;
}

.base-imagelink .box:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 2em;
	width: 1em;
	height: 1em;
	border-top: 2px solid #000;
	border-right: 2px solid #000;
	transform: rotate(45deg);
	transition: all .3s;
	pointer-events: none;
}

.base-imagelink .image>div {
	background: #fff;
}

.base-imagelink .image>div>div {
	opacity: .4;
	transition: all .3s;
}

.base-imagelink .image>div>div:hover {
	opacity: 1;
}

.base-imagelink .image img {
	width: 100%;
}

.base-imagelink .image a:hover img {
	opacity: 1;
}

.base-imagelink .textarea {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 100%;
	z-index: auto !important;
}

.pbPage:not(.pbPage--edit) .base-imagelink .textarea {
	pointer-events: none;
}

.base-imagelink .textarea>div {
	padding: 0 4em 0 30px;
}

.base-imagelink .title {
	font-size: 250%;
	font-weight: bold;
}

.base-imagelink .title>div {
	position: relative;
	padding-bottom: 5px;
}

.base-imagelink .title>div:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 50px;
	height: 1px;
	background: #000;
}

.base-imagelink .text {
	margin-top: 10px;
	font-size: 110%;
}

@media screen and (max-width: 767px) {
	.base-imagelink>div {
		margin: -5px -10px;
	}

	.base-imagelink .box {
		width: 100%;
		margin: 5px 10px;
	}

	.base-imagelink .textarea>div {
		padding: 0 4em 0 20px;
	}

	.base-imagelink .title {
		font-size: 200%;
	}
}

/*  imagelink-white
------------------------------------------------*/

.imagelink-white>div {
	color: #fff;
	text-shadow: 1px 2px 3px #000;
}

.imagelink-white .image>div {
	background: #000;
}

.imagelink-white .box:after {
	border-color: #fff;
}

.imagelink-white .title>div:after {
	background: #fff;
}

/*  list
========================================================================*/

.base-list:not(:first-child) {
	margin-top: 30px;
}

.base-list ul li:not(:first-child) {
	margin-top: 10px;
}

.base-list a.pbOpenNewWindow:after,
.base-list a[href$=".pdf"]::after,
.base-list a[href$=".doc"]::after,
.base-list a[href$=".docx"]::after,
.base-list a[href$=".xls"]::after,
.base-list a[href$=".xlsx"]::after,
.base-list a[href$=".ppt"]::after,
.base-list a[href$=".pptx"]::after {
	content: '';
	display: inline-block;
	width: 13px;
	height: 13px;
	margin: 0 5px;
	padding-top: 3px;
	background: url(../images/icon_window.png) no-repeat center top;
	vertical-align: middle;
}

.base-list a:after {
	content: '';
	display: inline-block;
	width: .5em;
	height: .5em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	right: -1em;
	bottom: 0.5em;
	margin-right: 0.5em;
	padding-top: 0;
	background: none;
}

.base-list a[href$=".pdf"]::after {
	background: url(../images/icon_pdf.png) no-repeat center top;
}

.base-list a[href$=".doc"]::after,
.base-list a[href$=".docx"]::after {
	background: url(../images/icon_word.png) no-repeat center top;
}

.base-list a[href$=".xls"]::after,
.base-list a[href$=".xlsx"]::after {
	background: url(../images/icon_excel.png) no-repeat center top;
}

.base-list a[href$=".ppt"]::after,
.base-list a[href$=".pptx"]::after {
	background: url(../images/icon_powerpoint.png) no-repeat center top;
}

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

.list-gray>div {
	padding: 30px;
	background: rgba(0, 0, 0, .05);
}

@media screen and (max-width: 767px) {
	.list-gray>div {
		padding: 15px;
	}
}

/*  linelist
========================================================================*/

.base-linelist:not(:first-child) {
	margin-top: 30px;
}

.base-linelist ul {
	display: flex;
	flex-wrap: wrap;
}

.base-linelist ul li {
	margin: 5px 10px;
}

/* .base-linelist a.pbOpenNewWindow:after,
.base-linelist a[href$=".pdf"]::after,
.base-linelist a[href$=".doc"]::after,
.base-linelist a[href$=".docx"]::after,
.base-linelist a[href$=".xls"]::after,
.base-linelist a[href$=".xlsx"]::after,
.base-linelist a[href$=".ppt"]::after,
.base-linelist a[href$=".pptx"]::after {
	content: '';
	display: inline-block;
	width: 13px;
	height: 13px;
	margin: 0 5px;
	padding-top: 3px;
	background: url(../images/icon_window.png) no-repeat center top;
	vertical-align: middle;
} */

.base-linelist a[href$=".pdf"]::after {
	background: url(../images/icon_pdf.png) no-repeat center top;
}

.base-linelist a[href$=".doc"]::after,
.base-linelist a[href$=".docx"]::after {
	background: url(../images/icon_word.png) no-repeat center top;
}

.base-linelist a[href$=".xls"]::after,
.base-linelist a[href$=".xlsx"]::after {
	background: url(../images/icon_excel.png) no-repeat center top;
}

.base-linelist a[href$=".ppt"]::after,
.base-linelist a[href$=".pptx"]::after {
	background: url(../images/icon_powerpoint.png) no-repeat center top;
}

/*  linelist-gray
------------------------------------------------*/

.linelist-gray>div {
	padding: 20px;
	background: rgba(0, 0, 0, .05);
}

@media screen and (max-width: 767px) {
	.linelist-gray>div {
		padding: 10px;
	}
}

/*  noteslist
========================================================================*/

.base-noteslist:not(:first-child) {
	margin-top: 10px;
}

.base-noteslist {
	color: #999;
	font-size: 90%;
}

.base-noteslist a {
	color: #999;
}

.base-noteslist ul li:not(:first-child) {
	margin-top: 5px;
}

.base-noteslist ul li:before {
	content: '※';
	top: 0;
	border: none;
	transform: none;
}

.base-noteslist a.pbOpenNewWindow:after,
.base-noteslist a[href$=".pdf"]::after,
.base-noteslist a[href$=".doc"]::after,
.base-noteslist a[href$=".docx"]::after,
.base-noteslist a[href$=".xls"]::after,
.base-noteslist a[href$=".xlsx"]::after,
.base-noteslist a[href$=".ppt"]::after,
.base-noteslist a[href$=".pptx"]::after {
	content: '';
	display: inline-block;
	width: 13px;
	height: 13px;
	margin: 0 5px;
	padding-top: 3px;
	background: url(../images/icon_window.png) no-repeat center top;
	vertical-align: middle;
}

.base-noteslist a[href$=".pdf"]::after {
	background: url(../images/icon_pdf.png) no-repeat center top;
}

.base-noteslist a[href$=".doc"]::after,
.base-noteslist a[href$=".docx"]::after {
	background: url(../images/icon_word.png) no-repeat center top;
}

.base-noteslist a[href$=".xls"]::after,
.base-noteslist a[href$=".xlsx"]::after {
	background: url(../images/icon_excel.png) no-repeat center top;
}

.base-noteslist a[href$=".ppt"]::after,
.base-noteslist a[href$=".pptx"]::after {
	background: url(../images/icon_powerpoint.png) no-repeat center top;
}

/*  noteslist-gray
------------------------------------------------*/

.noteslist-gray>div {
	padding: 15px;
	background: rgba(0, 0, 0, .05);
}

@media screen and (max-width: 767px) {
	.noteslist-gray>div {
		padding: 10px;
	}
}

/*  numberlist
========================================================================*/

.base-numberlist:not(:first-child) {
	margin-top: 30px;
}

.base-numberlist ol li:not(:first-child) {
	margin-top: 10px;
}

.base-numberlist a.pbOpenNewWindow:after,
.base-numberlist a[href$=".pdf"]::after,
.base-numberlist a[href$=".doc"]::after,
.base-numberlist a[href$=".docx"]::after,
.base-numberlist a[href$=".xls"]::after,
.base-numberlist a[href$=".xlsx"]::after,
.base-numberlist a[href$=".ppt"]::after,
.base-numberlist a[href$=".pptx"]::after {
	content: '';
	display: inline-block;
	width: 13px;
	height: 13px;
	margin: 0 5px;
	padding-top: 3px;
	background: url(../images/icon_window.png) no-repeat center top;
	vertical-align: middle;
}

.base-numberlist a[href$=".pdf"]::after {
	background: url(../images/icon_pdf.png) no-repeat center top;
}

.base-numberlist a[href$=".doc"]::after,
.base-numberlist a[href$=".docx"]::after {
	background: url(../images/icon_word.png) no-repeat center top;
}

.base-numberlist a[href$=".xls"]::after,
.base-numberlist a[href$=".xlsx"]::after {
	background: url(../images/icon_excel.png) no-repeat center top;
}

.base-numberlist a[href$=".ppt"]::after,
.base-numberlist a[href$=".pptx"]::after {
	background: url(../images/icon_powerpoint.png) no-repeat center top;
}

/*  numberlist-gray
------------------------------------------------*/

.numberlist-gray>div {
	padding: 30px;
	background: rgba(0, 0, 0, .05);
}

@media screen and (max-width: 767px) {
	.numberlist-gray>div {
		padding: 15px;
	}
}

/*  panel
========================================================================*/

.base-panel:not(:first-child) {
	margin-top: 30px;
}

.base-panel>div {
	display: flex;
	flex-wrap: wrap;
	margin: -20px -10px;
}

.base-panel .box {
	width: calc(50% - 20.5px);
	margin: 20px 10px;
	z-index: auto !important;
}

.base-panel .box>div:not(.pb-handle) {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.base-panel .box>div>div {
	z-index: auto !important;
}

.base-panel .image:not(:first-child) {
	margin-top: 20px;
}

.base-panel .image {
	min-height: 0%;
	text-align: center;
}

.base-panel .title:not(:first-child) {
	margin-top: 20px;
}

.base-panel .title {
	font-weight: bold;
	font-size: 120%;
}

.base-panel .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-panel .text:not(:first-child) {
	margin-top: 10px;
}

.base-panel .list:not(:first-child) {
	margin-top: 15px;
}

.base-panel .table:not(:first-child) {
	margin-top: 15px;
}

.base-panel .button {
	margin-top: auto;
	text-align: center;
}

.base-panel .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	margin-top: 20px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-panel .button a:hover {
	background: #000;
}

.base-panel .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-panel .box {
		width: 100%;
	}

	.base-panel .image:not(:first-child) {
		margin-top: 15px;
	}
}

/*  panel-3column
------------------------------------------------*/

.panel-3column .box {
	width: calc(33.33% - 20.5px);
}

.panel-3column .table th,
.panel-3column .table td {
	padding: 10px;
}

@media screen and (max-width: 767px) {
	.panel-3column .box {
		width: 100%;
	}

	.panel-3column .table th {
		padding: 8px 10px;
	}
}

/*  panel-4column
------------------------------------------------*/

.panel-4column>div {
	margin: -10px -5px;
}

.panel-4column .box {
	max-width: calc(25% - 10.5px);
	margin: 10px 5px;
	font-size: 90%;
}

.panel-4column .image:not(:first-child) {
	margin-top: 15px;
}

.panel-4column .title:not(:first-child) {
	margin-top: 15px;
}

.panel-4column .list:not(:first-child) {
	margin-top: 10px;
}

.panel-4column .table th,
.panel-4column .table td {
	padding: 8px;
}

@media screen and (max-width: 767px) {
	.panel-4column .box {
		max-width: calc(50% - 10px);
	}

	.panel-4column .table th {
		padding: 6px;
	}

	.panel-4column .button a {
		padding: .6em 1em;
	}

	.panel-4column .button a:before {
		margin: 0 8px 1px 0;
	}
}

/*  colorpanel
========================================================================*/

.base-colorpanel:not(:first-child) {
	margin-top: 30px;
}

.base-colorpanel>div {
	display: flex;
	flex-wrap: wrap;
	margin: -20px -10px;
}

.base-colorpanel .box {
	width: calc(50% - 20.5px);
	margin: 20px 10px;
	z-index: auto !important;
}

.base-colorpanel .box>div:not(.pb-handle) {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 20px;
	background: rgba(0, 0, 0, .05);
}

.base-colorpanel .box>div>div {
	z-index: auto !important;
}

.base-colorpanel .image:not(:first-child) {
	margin-top: 20px;
}

.base-colorpanel .image {
	min-height: 0%;
	text-align: center;
}

.base-colorpanel .title:not(:first-child) {
	margin-top: 20px;
}

.base-colorpanel .title {
	font-weight: bold;
	font-size: 120%;
}

.base-colorpanel .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-colorpanel .text:not(:first-child) {
	margin-top: 10px;
}

.base-colorpanel .list:not(:first-child) {
	margin-top: 15px;
}

.base-colorpanel .table:not(:first-child) {
	margin-top: 15px;
}

.base-colorpanel .button {
	margin-top: auto;
	text-align: center;
}

.base-colorpanel .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	margin-top: 20px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-colorpanel .button a:hover {
	background: #000;
}

.base-colorpanel .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-colorpanel .box {
		width: 100%;
	}

	.base-colorpanel .box>div:not(.pb-handle) {
		padding: 15px;
	}

	.base-colorpanel .image:not(:first-child) {
		margin-top: 15px;
	}
}

/*  colorpanel-3column
------------------------------------------------*/

.colorpanel-3column .box {
	width: calc(33.33% - 20.5px);
}

.colorpanel-3column .table th,
.colorpanel-3column .table td {
	padding: 10px;
}

@media screen and (max-width: 767px) {
	.colorpanel-3column .box {
		width: 100%;
	}

	.colorpanel-3column .table th {
		padding: 8px 10px;
	}
}

/*  colorpanel-4column
------------------------------------------------*/

.colorpanel-4column>div {
	margin: -10px -5px;
}

.colorpanel-4column .box {
	max-width: calc(25% - 10.5px);
	margin: 10px 5px;
	font-size: 90%;
}

.colorpanel-4column .box>div:not(.pb-handle) {
	padding: 10px;
}

.colorpanel-4column .image:not(:first-child) {
	margin-top: 15px;
}

.colorpanel-4column .title:not(:first-child) {
	margin-top: 15px;
}

.colorpanel-4column .list:not(:first-child) {
	margin-top: 10px;
}

.colorpanel-4column .table th,
.colorpanel-4column .table td {
	padding: 8px;
}

@media screen and (max-width: 767px) {
	.colorpanel-4column .box {
		max-width: calc(50% - 10px);
	}

	.colorpanel-4column .table th {
		padding: 6px;
	}

	.colorpanel-4column .button a {
		padding: .6em 1em;
	}

	.colorpanel-4column .button a:before {
		margin: 0 8px 1px 0;
	}
}

/*  iconpanel
========================================================================*/

.base-iconpanel:not(:first-child) {
	margin-top: 30px;
}

.base-iconpanel>div {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: -20px;
}

.base-iconpanel .box {
	width: calc(33.33% - 40.5px);
	margin: 20px;
	z-index: auto !important;
}

.base-iconpanel .box>div:not(.pb-handle) {
	display: flex;
	flex-direction: column;
	height: 100%;
	text-align: center;
}

.base-iconpanel .box>div>div {
	z-index: auto !important;
}

.base-iconpanel .image:not(:first-child) {
	margin-top: 15px;
}

.base-iconpanel .image {
	min-height: 0%;
}

.base-iconpanel .title:not(:first-child) {
	margin-top: 25px;
}

.base-iconpanel .title {
	font-weight: bold;
	font-size: 120%;
}

.base-iconpanel .text:not(:first-child) {
	margin-top: 15px;
}

.base-iconpanel .button {
	margin-top: auto;
}

.base-iconpanel .button a {
	display: inline-block;
	margin-top: 20px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-iconpanel .button a:hover {
	background: #000;
}

.base-iconpanel .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-iconpanel .box {
		width: 100%;
	}
}

/*  iconpanel-4column
------------------------------------------------*/

.iconpanel-4column .box {
	width: calc(25% - 40.5px);
}

@media screen and (max-width: 767px) {
	.iconpanel-4column .box {
		width: 100%;
	}
}

/*  linkpanel
========================================================================*/

.base-linkpanel:not(:first-child) {
	margin-top: 30px;
}

.base-linkpanel>div {
	display: flex;
	flex-wrap: wrap;
	margin: -20px -10px;
}

.base-linkpanel .box {
	width: calc(50% - 20.5px);
	margin: 20px 10px;
	z-index: auto !important;
}

.base-linkpanel .box>div:not(.pb-handle) {
	display: flex;
	flex-direction: column;
	position: relative;
	overflow: hidden;
	height: 100%;
	background: rgba(0, 0, 0, .05);
}

.base-linkpanel .box>div>div {
	z-index: auto !important;
}

.base-linkpanel .image {
	overflow: hidden !important;
	min-height: 0%;
}

.pbPage:not(.pbPage--edit) .base-linkpanel .image a:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	transition: all .3s;
	left: 0;
	right: 0;
	top: 0;
	margin: 0 auto;
}

.pbPage:not(.pbPage--edit) .base-linkpanel .image a:after {
	content: '';
	position: absolute;
	bottom: -10px;
	right: -10px;
	width: 0;
	height: 0;
	border: 20px solid transparent;
	border-right: 20px solid rgba(0, 0, 0, .3);
	border-bottom: 20px solid rgba(0, 0, 0, .3);
	pointer-events: none;
	transition: all .3s;
}

.pbPage:not(.pbPage--edit) .base-linkpanel .image a:hover:after {
	bottom: 0;
	right: 0;
}

.base-linkpanel .image img {
	width: 100%;
}

/* .base-linkpanel .image a:hover img {
	opacity: 1;
	transform: scale(1.1);
} */

.base-linkpanel a:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	transition: all .3s;
}

.base-linkpanel .textbox>div {
	padding: 20px;
}

.base-linkpanel .title {
	font-weight: bold;
	font-size: 120%;
}

.base-linkpanel .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-linkpanel .text:not(:first-child) {
	margin-top: 10px;
}

@media screen and (max-width: 767px) {
	.base-linkpanel .box {
		width: 100%;
	}

	.base-linkpanel .textbox>div {
		padding: 15px;
	}
}

/*  linkpanel-3column
------------------------------------------------*/

.linkpanel-3column .box {
	width: calc(33.33% - 20.5px);
}

@media screen and (max-width: 767px) {
	.linkpanel-3column .box {
		width: 100%;
	}
}

/*  linkpanel-4column
------------------------------------------------*/

.linkpanel-4column>div {
	margin: -10px -5px;
}

.linkpanel-4column .box {
	max-width: calc(25% - 10.5px);
	margin: 10px 5px;
	font-size: 90%;
}

.linkpanel-4column .textbox>div {
	padding: 15px;
}

@media screen and (max-width: 767px) {
	.linkpanel-4column .box {
		max-width: calc(50% - 10px);
	}

	.linkpanel-4column .textbox>div {
		padding: 10px;
	}
}

/*  listpanel
========================================================================*/

.base-listpanel:not(:first-child) {
	margin-top: 30px;
}

.base-listpanel>div {
	display: flex;
	flex-wrap: wrap;
	margin: -10px;
}

.base-listpanel .box {
	width: 100%;
	margin: 10px 0;
	z-index: auto !important;
}
@media screen and (min-width: 768px) {
	.base-listpanel .box:nth-child(odd) {
		margin-right: 10px;
	}
	.base-listpanel .box:nth-child(even) {
		margin-left: 10px;
	}
}
.base-listpanel .box>div:not(.pb-handle) {
	display: flex;
	position: relative;
	overflow: hidden;
	height: 100%;
	justify-content: space-between;
}

.base-listpanel .box>div>div {
	z-index: auto !important;
}

.base-listpanel .image {
	width: 31%;
	min-height: 0%;
}

.base-listpanel .image>div {
	overflow: hidden !important;
}

.pbPage:not(.pbPage--edit) .base-listpanel .image a:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	transition: all .3s;
}

.pbPage:not(.pbPage--edit) .base-listpanel .image a:after {
	content: '';
	position: absolute;
	bottom: -10px;
	right: -10px;
	width: 0;
	height: 0;
	border: 20px solid transparent;
	border-right: 20px solid rgba(0, 0, 0, .3);
	border-bottom: 20px solid rgba(0, 0, 0, .3);
	pointer-events: none;
	transition: all .3s;
}

.pbPage:not(.pbPage--edit) .base-listpanel .image a:hover:after {
	bottom: 0;
	right: 0;
}

.base-listpanel .image img {
	width: 100%;
}

/* .base-listpanel .image a:hover img {
	opacity: 1;
	transform: scale(1.1);
} */

.base-listpanel .textbox {
	display: flex;
	align-items: center;
	width: 70%;
}

.base-listpanel .textbox>div {
	width: 100%;
	padding: 20px;
}

.base-listpanel .textbox>div.pb-handle {
	top: 10px;
}

.base-listpanel .title {
	font-weight: bold;
	font-size: 120%;
}

.base-listpanel .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-listpanel .text:not(:first-child) {
	margin-top: 10px;
}

@media screen and (max-width: 767px) {
	.base-listpanel .box>div:not(.pb-handle) {
		display: block;
	}

	.base-listpanel .image {
		width: 100%;
	}

	.base-listpanel .textbox {
		width: 100%;
	}

	.base-listpanel .textbox>div {
		padding: 15px;
	}
}

/*  listpanel-2column
------------------------------------------------*/

.listpanel-2column .box {
	width: calc(50% - 20.5px);
}

@media screen and (max-width: 767px) {
	.listpanel-2column>div {
		margin: -5px;
	}

	.listpanel-2column .box {
		width: 100%;
		margin: 5px 0;
	}

	.listpanel-2column .box>div:not(.pb-handle) {
		display: flex;
	}

	.listpanel-2column .image {
		width: 30%;
	}

	.listpanel-2column .textbox {
		width: 70%;
		font-size: 90%;
	}

	.listpanel-2column .textbox>div {
		padding: 10px;
	}

	.listpanel-2column .text:not(:first-child) {
		margin-top: 3px;
	}
}

/*  listpanel-3column
------------------------------------------------*/

.listpanel-3column>div {
	margin: -5px;
}

.listpanel-3column .box {
	width: calc(33.33% - 10.5px);
	margin: 5px;
	font-size: 90%;
}

.listpanel-3column .textbox>div {
	padding: 15px;
}

@media screen and (max-width: 767px) {
	.listpanel-3column .box {
		width: 100%;
	}

	.listpanel-3column .box>div:not(.pb-handle) {
		display: flex;
	}

	.listpanel-3column .image {
		width: 30%;
	}

	.listpanel-3column .textbox {
		width: 70%;
	}

	.listpanel-3column .textbox>div {
		padding: 10px;
	}
}

/*  videopanel
========================================================================*/

.base-videopanel:not(:first-child) {
	margin-top: 30px;
}

.base-videopanel>div {
	display: flex;
	flex-wrap: wrap;
	margin: -20px -10px;
}

.base-videopanel .box {
	width: calc(50% - 20.5px);
	margin: 20px 10px;
	z-index: auto !important;
}

.base-videopanel .box>div:not(.pb-handle) {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.base-videopanel .box>div>div {
	z-index: auto !important;
}

.base-videopanel .youtube:not(:first-child) {
	margin-top: 15px;
}

.base-videopanel .youtube {
	position: relative;
	padding-top: 0% !important;
	padding-bottom: 56.25% !important;
}

.base-videopanel .youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.base-videopanel .image:not(:first-child) {
	margin-top: 20px;
}

.base-videopanel .image {
	min-height: 0%;
	text-align: center;
}

.base-videopanel .title:not(:first-child) {
	margin-top: 20px;
}

.base-videopanel .title {
	font-weight: bold;
	font-size: 120%;
}

.base-videopanel .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-videopanel .text:not(:first-child) {
	margin-top: 10px;
}

.base-videopanel .list:not(:first-child) {
	margin-top: 15px;
}

.base-videopanel .table:not(:first-child) {
	margin-top: 15px;
}

.base-videopanel .button {
	margin-top: auto;
	text-align: center;
}

.base-videopanel .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	margin-top: 20px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-videopanel .button a:hover {
	background: #000;
}

.base-videopanel .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-videopanel .box {
		width: 100%;
	}

	.base-videopanel .image:not(:first-child) {
		margin-top: 15px;
	}
}

/*  videopanel-3column
------------------------------------------------*/

.videopanel-3column .box {
	width: calc(33.33% - 20.5px);
}

.videopanel-3column .table th,
.videopanel-3column .table td {
	padding: 10px;
}

@media screen and (max-width: 767px) {
	.videopanel-3column .box {
		width: 100%;
	}

	.videopanel-3column .table th {
		padding: 8px 10px;
	}
}

/*  mappanel
========================================================================*/

.base-mappanel:not(:first-child) {
	margin-top: 30px;
}

.base-mappanel>div {
	display: flex;
	flex-wrap: wrap;
	margin: -20px -10px;
}

.base-mappanel .box {
	width: calc(50% - 20.5px);
	margin: 20px 10px;
	z-index: auto !important;
}

.base-mappanel .box>div:not(.pb-handle) {
	display: flex;
	flex-direction: column;
	height: 100%;
}

.base-mappanel .box>div>div {
	z-index: auto !important;
}

.base-mappanel .map:not(:first-child) {
	margin-top: 15px;
}

.base-mappanel .map {
	position: relative;
	height: 250px;
}

.base-mappanel .map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.base-mappanel .image:not(:first-child) {
	margin-top: 20px;
}

.base-mappanel .image {
	min-height: 0%;
	text-align: center;
}

.base-mappanel .title:not(:first-child) {
	margin-top: 20px;
}

.base-mappanel .title {
	font-weight: bold;
	font-size: 120%;
}

.base-mappanel .title p:before {
	content: '';
	display: inline-block;
	margin: 0 .3em 0 0;
	width: .8em;
	height: .8em;
	background: rgba(0, 0, 0, .5);
}

.base-mappanel .text:not(:first-child) {
	margin-top: 10px;
}

.base-mappanel .list:not(:first-child) {
	margin-top: 15px;
}

.base-mappanel .table:not(:first-child) {
	margin-top: 15px;
}

.base-mappanel .button {
	margin-top: auto;
	text-align: center;
}

.base-mappanel .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	margin-top: 20px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-mappanel .button a:hover {
	background: #000;
}

.base-mappanel .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-mappanel .box {
		width: 100%;
	}

	.base-mappanel .image:not(:first-child) {
		margin-top: 15px;
	}
}

/*  mappanel-3column
------------------------------------------------*/

.mappanel-3column .box {
	width: calc(33.33% - 20.5px);
}

.mappanel-3column .table th,
.mappanel-3column .table td {
	padding: 10px;
}

@media screen and (max-width: 767px) {
	.mappanel-3column .box {
		width: 100%;
	}

	.mappanel-3column .table th {
		padding: 8px 10px;
	}
}

/*  overlappanel
========================================================================*/

.base-overlappanel:not(:first-child) {
	margin-top: 30px;
}

.base-overlappanel>div {
	display: flex;
	flex-wrap: wrap;
	margin: -20px -10px;
}

.base-overlappanel .box {
	width: calc(50% - 20.5px);
	margin: 20px 10px;
	z-index: auto !important;
}

.base-overlappanel .box>div:not(.pb-handle) {
	position: relative;
	top: -180px;
	height: 100%;
}

.base-overlappanel .box>div>div {
	z-index: auto !important;
}

.base-overlappanel .image {
	position: absolute;
}

.base-overlappanel .image img {
	width: 100%;
}

.base-overlappanel .textarea {
	position: relative;
	top: 180px;
	width: calc(100% - 60px);
	height: calc(100% - 180px);
	margin: 180px auto 0;
}

.base-overlappanel .textarea>div:not(.pb-handle) {
	display: flex;
	flex-direction: column;
	height: 100%;
	padding: 25px;
	background: #fff;
	box-shadow: 0 0 8px rgba(0, 0, 0, .2);
}

.base-overlappanel .textarea>div>div {
	z-index: auto !important;
}

.base-overlappanel .title>div {
	position: relative;
	padding-bottom: 15px;
	font-weight: bold;
	font-size: 130%;
	text-align: center;
}

.base-overlappanel .title>div:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	width: 50px;
	height: 2px;
	background: #000;
}

.base-overlappanel .text:not(:first-child),
.base-overlappanel .list:not(:first-child),
.base-overlappanel .table:not(:first-child) {
	margin-top: 20px;
}

.base-overlappanel .table th,
.base-overlappanel .table td {
	padding: 10px;
}

.base-overlappanel .button {
	margin-top: auto;
	text-align: center;
}

.base-overlappanel .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	margin-top: 20px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-overlappanel .button a:hover {
	background: #000;
}

.base-overlappanel .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-overlappanel .box {
		width: 100%;
		border: 1px solid #ccc;
	}

	.base-overlappanel .box>div:not(.pb-handle) {
		position: static;
	}

	.base-overlappanel .image {
		position: static;
	}

	.base-overlappanel .textarea {
		position: static;
		width: 100%;
		height: auto;
		margin: 0 auto;
	}

	.base-overlappanel .textarea>div:not(.pb-handle) {
		padding: 20px 15px;
		box-shadow: none;
	}

	.base-overlappanel .table th {
		padding: 8px 10px;
	}
}

/*  overlappanel-3column
------------------------------------------------*/

.overlappanel-3column .box {
	width: calc(33.33% - 20.5px);
}

.overlappanel-3column .box>div:not(.pb-handle) {
	top: -130px;
}

.overlappanel-3column .textarea {
	top: 130px;
	width: calc(100% - 30px);
	height: calc(100% - 130px);
	margin: 130px auto 0;
}

@media screen and (max-width: 767px) {
	.overlappanel-3column .box {
		width: 100%;
	}

	.overlappanel-3column .textarea {
		width: 100%;
		height: auto;
		margin: 0 auto;
	}
}

/*  mixpanel
========================================================================*/

.base-mixpanel:not(:first-child) {
	margin-top: 30px;
}
@media screen and (min-width: 768px) {
	[class^="base-h"] + .base-mixpanel .box,
	[class^="base-h"] + .base-mixpanel .box>div>div:first-child {
		margin-top: 0;
	}
}
@media screen and (max-width: 767px) {
	[class^="base-h"] + .base-mixpanel{
		margin-top: 0;
	}
}

.base-mixpanel>div {
	display: flex;
	flex-wrap: wrap;
	margin: -20px -15px;
}

.base-mixpanel .box {
	width: calc(50% - 30.5px);
	margin: 20px 15px;
	z-index: auto !important;
}

.base-mixpanel .title:not(:first-child) {
	margin-top: 15px;
}

.base-mixpanel .title>div {
	padding: 10px;
	background: #333;
	color: #fff;
	font-size: 120%;
	font-weight: bold;
	text-align: center;
}

.base-mixpanel .link:not(:first-child) {
	margin-top: 20px;
}

.base-mixpanel .link {
	font-size: 120%;
	font-weight: bold;
}

.base-mixpanel .link p:before {
	content: '';
	display: inline-block;
	width: .8em;
	height: .8em;
	margin: 0 .3em 0 0;
	background: rgba(0, 0, 0, 0.5);
}

.base-mixpanel .image:not(:first-child) {
	margin-top: 20px;
}

.base-mixpanel .image {
	text-align: center;
}

.base-mixpanel .text:not(:first-child) {
	margin-top: 20px;
}

.base-mixpanel .list:not(:first-child) {
	margin-top: 15px;
}

.base-mixpanel .table:not(:first-child) {
	margin-top: 15px;
}

.base-mixpanel .imagelist:not(:first-child) {
	margin-top: 20px;
}

.base-mixpanel .imagelist+.imagelist {
	margin-top: 0;
}

.base-mixpanel .imagelist>div {
	display: flex;
	padding: 10px 0;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
}

.base-mixpanel .imagelist+.imagelist>div {
	border-top: none;
}

.base-mixpanel .imagelist-image {
	width: 20%;
	z-index: auto !important;
}

.base-mixpanel .imagelist-image img {
	width: 100%;
}

.base-mixpanel .imagelist-text {
	display: flex;
	align-items: center;
	position: relative;
	width: calc(80% - 10px);
	margin-left: 10px;
	z-index: auto !important;
}

.base-mixpanel .imagelist-text>div.pb-handle {
	top: 10px;
}

.base-mixpanel .button:not(:first-child) {
	margin-top: 15px;
}

.base-mixpanel .button {
	text-align: center;
}

.base-mixpanel .button a {
	display: inline-block;
	width: 100%;
	max-width: 280px;
	padding: .6em 2em;
	background: #333;
	color: #fff;
	text-decoration: none;
}

.base-mixpanel .button a:hover {
	background: #000;
}

.base-mixpanel .button a:before {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	transition: all .3s;
}

@media screen and (max-width: 767px) {
	.base-mixpanel .box {
		width: 100%;
	}
}

/*  mixpanel-3column
------------------------------------------------*/

.mixpanel-3column .box {
	width: calc(33.33% - 30.5px);
}

.mixpanel-3column .table th,
.mixpanel-3column .table td {
	padding: 10px;
}

@media screen and (max-width: 767px) {
	.mixpanel-3column .box {
		width: 100%;
	}

	.mixpanel-3column .table th {
		padding: 8px 10px;
	}
}

/*  table
========================================================================*/

.base-table:not(:first-child) {
	margin-top: 30px;
}

.base-table table th {
	text-align: left;
	vertical-align: middle;
}

@media screen and (max-width: 767px) {
	.base-table table th {
		text-align: center;
	}
}

/*  base-smalltable
========================================================================*/

.base-smalltable:not(:first-child) {
	margin-top: 30px;
}

.base-smalltable table {
	width: auto;
}

.base-smalltable table td {
	text-align: center;
}

@media screen and (max-width: 767px) {
	.base-smalltable table {
		display: table;
	}

	.base-smalltable table tbody {
		display: table-row-group;
	}

	.base-smalltable table tr {
		display: table-row;
	}

	.base-smalltable table th,
	.base-smalltable table td {
		display: table-cell;
		width: auto !important;
	}
	.base-smalltable table tr>*:first-child{
		min-width: 7em;
	}
}

/*  base-swipetable
========================================================================*/

.base-swipetable:not(:first-child) {
	margin-top: 30px;
}

.base-swipetable table th {
	width: 20%;
	vertical-align: middle;
}

.base-swipetable table th+th {
	width: auto;
	background: rgba(0, 0, 0, .1);
	color: #000;
}

.base-swipetable table td {
	text-align: center;
}

@media screen and (max-width: 767px) {
	.base-swipetable>div {
		overflow: auto !important;
	}

	.base-swipetable>div::-webkit-scrollbar {
		height: 15px;
	}

	.base-swipetable>div::-webkit-scrollbar-thumb {
		background: #d9dcdf;
		border-radius: 10px;
	}

	.base-swipetable>div::-webkit-scrollbar-track {
		background: #f5f5f5;
		border-radius: 10px;
	}

	.base-swipetable table {
		display: table;
		width: 800px;
		max-width: none;
		margin-bottom: 3px;
	}

	.base-swipetable table tbody {
		display: table-row-group;
	}

	.base-swipetable table tr {
		display: table-row;
	}

	.base-swipetable table th,
	.base-swipetable table td {
		display: table-cell;
		width: auto !important;
	}
}

/*  category
========================================================================*/

.base-category:not(:first-child) {
	margin-top: 30px;
}

.base-category tr {
	display: block;
	position: relative;
	padding: 30px 4% 27px 0;
	background: rgba(255, 255, 255, .5);
	border-top: 1px solid #dde4eb;
	border-radius: 3px;
}

.base-category tr::after {
	position: absolute;
	content: "";
	width: 8px;
	height: 8px;
	border-top: 2px solid #004297;
	border-left: 2px solid #004297;
	top: calc(50% - 1px);
	right: 2.5%;
	margin: 0 auto;
	transform: rotate(135deg);
	pointer-events: none;
}

.base-category tr:last-child {
	border-bottom: 1px solid #eee;
}

.base-category tr:not(:first-child) {
	margin-top: 0;
}

.base-category .day {
	display: inline;
	width: auto !important;
	background: transparent;
	padding: 0;
	font-size: 15px;
	color: #004297;
}

.base-category .day>.category {
	margin-left: 1.7em;
	padding: 3px 10px;
	background: #333;
	color: #fff;
	font-size: 0.7em;
	vertical-align: middle;
	font-weight: bold;
}

.base-category .day>.category.category-01 {
	background: #009df2;
}

.base-category .day>.category.category-02 {
	background: #6d92c3;
}

.base-category .day>.category.category-03 {
	background: #df2727;
}

.base-category .day>.category.category-04 {
	background: #ea8f06;
}

.base-category .day>.category.category-05 {
	background: #194e9c;
}

.base-category .day>.category.category-06 {
	background: #00a59d;
}

.base-category .article {
	padding: 0;
	background: none;
}

.base-category .article a {
	display: block;
	margin-top: 10px;
	text-decoration: none;
	color: #004297;
	padding-left: 2px;
}

.base-category .article a:after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	transition: all .3s;
}

.base-category .article a:hover {
	text-decoration: underline;
}

.base-category .article img {
	position: absolute;
	top: 10px;
	right: 0;
	pointer-events: none;
}

@media screen and (max-width: 767px) {
	.base-category table {
		font-size: 100%;
	}

	.base-category tr {
		padding: 23px 0 10px;
	}

	.base-category .article a {
		margin-top: 4px;
		font-size: 0.8em;
		line-height: 1.9;
	}
}

/*  slider
========================================================================*/

.base-slider:not(:first-child) {
	margin-top: 30px;
}

.base-slider .list {
	opacity: 0;
	transition: all .3s;
}

.base-slider .list.slick-initialized {
	opacity: 1;
}

.base-slider .slick-dotted.slick-slider {
	margin: 0;
}

.base-slider .slick-arrow {
	left: 0;
	z-index: 1;
	width: 60px;
	height: 60px;
	margin-top: -15px;
	background: rgba(0, 0, 0, .1);
	transition: all .3s;
}

.base-slider .slick-next {
	left: auto;
	right: 0;
}

.base-slider .slick-arrow:focus {
	background: rgba(0, 0, 0, .1);
}

.base-slider .slick-arrow:hover {
	background: rgba(0, 0, 0, .3);
}

.base-slider .slick-arrow:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 25px;
	width: 20px;
	height: 20px;
	border-left: 3px solid #ccc;
	border-bottom: 3px solid #ccc;
	opacity: 1;
	transform: rotate(45deg);
}

.base-slider .slick-next:before {
	left: auto;
	right: 25px;
	border: none;
	border-top: 3px solid #ccc;
	border-right: 3px solid #ccc;
}

.base-slider .slick-dots {
	bottom: 20px;
	height: 5px;
	padding: 0 20px;
	text-align: right;
}

.base-slider .slick-dots li {
	width: 20px;
	height: 100%;
	margin-top: 0 !important;
	padding-left: 0;
}

.base-slider .slick-dots li:before {
	display: none;
}

.base-slider .slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0;
	background: rgba(0, 0, 0, .3);
}

.base-slider .slick-dots li.slick-active button {
	background: rgba(0, 0, 0, 1);
}

.base-slider .slick-dots li button:before {
	display: none;
}

.base-slider .item {
	position: relative;
}

.base-slider .image-pc img {
	width: 100%;
}

.base-slider .image-sp {
	display: none;
}

.base-slider .textarea {
	pointer-events: none;
}

.base-slider .title {
	position: absolute;
	top: 30px;
	right: 30px;
	padding: 10px 30px;
	background: #fff;
	font-weight: bold;
	font-size: 200%;
}

.base-slider .text {
	position: absolute;
	bottom: 30px;
	left: 30px;
	padding: 10px 20px;
	background: #fff;
	font-size: 150%;
}

@media screen and (max-width: 767px) {
	.base-slider .slick-dotted.slick-slider {
		padding: 0 0 30px;
	}

	.base-slider .slick-prev,
	.base-slider .slick-next {
		display: none !important;
	}

	.base-slider .slick-dots {
		bottom: 13px;
		padding: 0;
	}

	.base-slider .slick-dots li {
		margin: 0 2px;
	}

	.base-slider .image-pc {
		display: none;
	}

	.base-slider .image-sp {
		display: block;
	}

	.base-slider .image-sp img {
		width: 100%;
	}

	.base-slider .title {
		top: 5px;
		right: 5px;
		padding: 5px 15px;
		font-size: 120%;
	}

	.base-slider .text {
		max-width: 80%;
		bottom: 5px;
		left: 5px;
		padding: 5px 10px;
		background: #fff;
		font-size: 100%;
	}
}

/*  carousel
========================================================================*/

.base-carousel:not(:first-child) {
	margin-top: 30px;
}

.base-carousel {
	margin-left: -5px;
	margin-right: -5px;
}

.base-carousel .list {
	opacity: 0;
	transition: all .3s;
}

.base-carousel .list.slick-initialized {
	opacity: 1;
}

.base-carousel .slick-dotted.slick-slider {
	margin-bottom: 0;
	padding-bottom: 30px;
}

.base-carousel .slick-arrow {
	left: -70px;
	z-index: 1;
	width: 50px;
	height: 50px;
	margin-top: -15px;
	background: rgba(0, 0, 0, .3);
	border-radius: 50%;
	transition: all .3s;
}

.base-carousel .slick-next {
	left: auto;
	right: -70px;
}

.base-carousel .slick-arrow:focus {
	background: rgba(0, 0, 0, .3);
}

.base-carousel .slick-arrow:hover {
	background: rgba(0, 0, 0, 1);
}

.base-carousel .slick-arrow:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 22px;
	width: 10px;
	height: 10px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
	opacity: 1;
	transform: rotate(45deg);
}

.base-carousel .slick-next:before {
	left: auto;
	right: 22px;
	border: none;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

.base-carousel .slick-dots {
	left: 0;
	bottom: 0;
	height: 5px;
}

.base-carousel .slick-dots li {
	width: 40px;
	height: 100%;
	margin-top: 0 !important;
	padding-left: 0;
}

.base-carousel .slick-dots li:before {
	display: none;
}

.base-carousel .slick-dots li button {
	width: 100%;
	height: 100%;
	padding: 0;
	background: rgba(0, 0, 0, .3);
}

.base-carousel .slick-dots li.slick-active button {
	background: rgba(0, 0, 0, 1);
}

.base-carousel .slick-dots li button:before {
	display: none;
}

.base-carousel .slick-slide {
	padding: 0 8px;
}

.base-carousel .item img {
	width: 100%;
}

@media screen and (max-width: 767px) {
	.base-carousel .slick-slider {
		padding: 0 40px;
	}

	.base-carousel .slick-dotted.slick-slider {
		padding: 0 40px 20px;
	}

	.base-carousel .slick-arrow {
		left: 5px;
		width: 30px;
		height: 30px;
	}

	.base-carousel .slick-next {
		left: auto;
		right: 5px;
	}

	.base-carousel .slick-arrow:before {
		left: 13px;
		width: 8px;
		height: 8px;
		border-left: 1px solid #fff;
		border-bottom: 1px solid #fff;
	}

	.base-carousel .slick-next:before {
		left: auto;
		right: 13px;
		border: none;
		border-top: 1px solid #fff;
		border-right: 1px solid #fff;
	}

	.base-carousel .slick-dots {
		height: 3px;
	}

	.base-carousel .slick-dots li {
		width: 20px;
		margin: 0 2px;
	}
}

/*  carousel-panel
------------------------------------------------*/

.carousel-panel .slick-track {
	display: flex;
}

.carousel-panel .slick-slide {
	height: auto;
}

.carousel-panel .slick-slide>div {
	height: 100%;
}

.carousel-panel .item {
	height: 100%;
	background: rgba(0, 0, 0, .03);
}

.carousel-panel .item a {
	display: block;
	position: relative;
	height: 100%;
	text-decoration: none;
}

.carousel-panel .item a:hover {
	background: rgba(0, 0, 0, .02);
}

.carousel-panel .item a:after {
	content: '';
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 0;
	height: 0;
	border: 10px solid transparent;
	border-right: 10px solid #000;
	border-bottom: 10px solid #000;
	pointer-events: none;
}

.carousel-panel .item a:hover img {
	opacity: 1;
}

.carousel-panel .textarea {
	display: block;
	padding: 25px 20px 30px;
	text-align: center;
}

.carousel-panel .title {
	display: block;
	position: relative;
	padding-bottom: 30px;
	font-weight: bold;
	font-size: 130%;
}

.carousel-panel .title:after {
	content: '';
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 15px;
	width: 40px;
	height: 2px;
	background: #000;
}

.carousel-panel .text {
	display: block;
}

@media screen and (max-width: 767px) {
	.carousel-panel .slick-slide {
		height: 100%;
	}

	.carousel-panel .textarea {
		padding: 15px 10px;
	}

	.carousel-panel .title {
		padding-bottom: 20px;
	}

	.carousel-panel .title:after {
		bottom: 11px;
	}
}

/*  popup
========================================================================*/

.base-popup:not(:first-child) {
	margin-top: 30px;
}

.base-popup {
	text-align: center;
}

/*  youtubepopup
========================================================================*/

.base-youtubepopup:not(:first-child) {
	margin-top: 30px;
}

.base-youtubepopup {
	position: relative;
	text-align: center;
	z-index: auto !important;
}

.base-youtubepopup:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 2;
	width: 0;
	height: 0;
	border-top: 10px solid transparent;
	border-bottom: 10px solid transparent;
	border-left: 10px solid #fff;
	pointer-events: none;
}

.base-youtubepopup a {
	position: relative;
	display: inline-block;
}

.base-youtubepopup a:before {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 1;
	width: 60px;
	height: 40px;
	background: #000;
	border-radius: 10px;
	pointer-events: none;
	transition: all .3s;
}

.base-youtubepopup a:hover:before {
	background: #f00;
}

/*  switching
========================================================================*/

.base-switching:not(:first-child) {
	margin-top: 30px;
}

.base-switching .tab ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.base-switching .tab ul li {
	margin: 5px;
	padding: 5px 30px;
	background: #ccc;
	color: #fff;
	border-radius: 30px;
	cursor: pointer;
	transition: all .3s;
}

.base-switching .tab ul li:before {
	display: none;
}

.base-switching .tab ul li:hover,
.base-switching .tab ul li.active {
	background: #000;
}

.base-switching .panel {
	margin-top: 15px;
}

.base-switching .panel>div {
	padding: 50px;
	background: rgba(255, 255, 255, .5);
	border: 1px solid #ccc;
}

.base-switching .panel>div>.box+.box {
	display: none;
}

.pbPage.pbPage--edit .base-switching .panel>div>.box+.box {
	display: block;
}

.base-switching .edit {
	display: none;
}

.pbPage.pbPage--edit .base-switching .edit {
	display: block;
}

.base-switching .edit>div {
	margin: 0 0 10px;
	padding: 10px;
	background: #f8f8f8;
}

.base-switching .edit>div:before {
	content: 'タブ切り替えボタンに表示させる内容を入力してください(編集画面用テキスト)';
	color: #ccc;
}

.base-switching .edit+div {
	margin-top: 0;
}

.pbPage.pbPage--edit .base-switching .edit+div {
	margin-top: 30px;
}

@media screen and (max-width: 767px) {
	.base-switching .tab ul li {
		margin: 2px;
		padding: 5px 15px;
	}

	.base-switching .panel>div {
		padding: 15px;
	}
}

/*  accordion
========================================================================*/

.base-accordion:not(:first-child) {
	margin-top: 30px;
}

.base-section .base-accordion+.base-accordion {
	margin-top: 30px;
}

.base-section .base-accordion02+.base-accordion02 {
	margin-top: 0;
	border-top: none;
}

.base-accordion>div {
	overflow: hidden;
}

.base-accordion .trigger {
	position: relative;
	z-index: auto !important;
}

.base-accordion .trigger:before,
.base-accordion .trigger:after {
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
	width: 16px;
	height: 2px;
	background: #000;
	transition: all 0.3s;
}

.base-accordion .trigger:after {
	transform: rotate(90deg);
}

.base-accordion .trigger.active:after {
	transform: rotate(360deg);
}

.base-accordion .trigger>div {
	padding: 30px 40px 30px 30px;
	background: rgba(0, 0, 0, 0.02);
	font-weight: bold;
	border: 1px solid #ccc;
	cursor: pointer;
}

.base-accordion .content {
	display: none;
}

.base-accordion .content>div {
	position: relative;
	padding: 30px;
	background: rgba(255, 255, 255, 0.5);
	border: 1px solid #ccc;
	border-top: none;
}

.base-accordion.base-block .trigger>div:not(.pb-handle) {
	background: #fff;
	padding: 38px 30px 34px 62px !important;
	position: relative;
	border: none;
}

.base-accordion.base-block .trigger>div:not(.pb-handle):before {
	content: "";
	position: absolute;
	width: 40px;
	height: 40px;
	background-size: contain;
	background-image: url(/library/images/faq_ico_01.png);
	top: 0;
	bottom: 0;
	margin: auto 0;
	left: 12px;
}

.base-accordion.base-block .trigger>div:not(.pb-handle):not(.pb-handle)>div:not(.pb-handle):not(.pb-handle) {
	padding: 0;
}

.base-accordion.base-block .content>div:not(.pb-handle) {
	border: none;
}

.base-accordion.base-block .trigger>div:not(.pb-handle)>div:not(.pb-handle):before {
	display: none;
}

.base-accordion.base-block .trigger:before {
	z-index: 1;
}

@media screen and (max-width: 767px) {

	.base-accordion .trigger:before,
	.base-accordion .trigger:after {
		right: 10px;
	}

	.base-accordion .trigger>div:not(.pb-handle) {
		padding: 10px 30px 10px 10px;
	}

	.base-accordion .content>div:not(.pb-handle) {
		padding: 10px;
	}

	.base-accordion.base-block .trigger>div:not(.pb-handle) {
		padding: 12px 30px 13px 60px !important;
	}

}

/*  youtube
========================================================================*/

.base-youtube:not(:first-child) {
	margin-top: 30px;
}

.base-youtube {
	position: relative;
	padding-top: 0% !important;
	padding-bottom: 56.25% !important;
	z-index: auto !important;
}

.base-youtube iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*  map
========================================================================*/

.base-map:not(:first-child) {
	margin-top: 30px;
}

.base-map {
	position: relative;
	height: 250px;
	padding: 0;
	z-index: auto !important;
}

.base-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*  button
========================================================================*/
a.buttonArrow {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
}

a.roundBtn {
	display: inline-block;
	min-width: 110px;
	padding: 5px 2em;
	border-radius: 17px;
	border: 2px solid #004297;
	color: #004297;
	background: #fff;
	font-size: 0.937rem;
}

a.buttonArrow::after {
	content: '';
	display: inline-block;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	right: 9%;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

a.roundBtn.buttonArrow::after {
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
}

.contactMoreBtn a.roundBtn {
	background: #004297;
	color: #fff;
	min-width: auto;
	font-size: 0.937rem;
}

.contactMoreBtn a.roundBtn.buttonArrow::after {
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
}

@media screen and (min-width: 768px) {
	.mailMagazineMoreBtn a.roundBtn {
		min-width: 185px;
	}

	a.roundBtn {
		padding: 5px 1.5em;
		border-radius: 20px;
		min-width: 135px;
	}

	.contactMoreBtn a.roundBtn {
		margin-right: 24px;
		padding-left: 14px;
		min-width: 170px;
		font-size: 1rem;
	}
}

.voiceCarousel .slick-prev.slick-arrow:hover,
.voiceCarousel .slick-next.slick-arrow:hover {
	/* opacity: 0.6; */
}

.voiceArea .base-carousel .slick-arrow:hover {
	opacity: 0.6;
}

/* .breadcrumbs-list */

.base-section .breadcrumbs-list {
	display: flex;
  flex-wrap: wrap;
	font-size: 0.812rem;
}

.base-section .breadcrumbsWrap .breadcrumbs-list li {
	margin-top: 0;
	padding-left: 0;
}

.base-section .breadcrumbsWrap .breadcrumbs-list li a {
	color: #004297;
}

.base-section .breadcrumbsWrap .breadcrumbs-list li a:hover {
	text-decoration: underline;
}

.pbMainArea .base-section .breadcrumbsWrap {
	max-width: 1024px;
	/*padding-top: 135px;*/
	padding-bottom: 0;
}

.base-section .breadcrumbs-list li:before {
	content: none;
}

.base-section .breadcrumbs-list li:after {
	content: "\3e";
	margin: 0 14px 0;
}

.base-section .breadcrumbs-list li:last-child:after {
	content: none;
}

@media screen and (max-width: 767px) {
	.pbMainArea .base-section .breadcrumbsWrap {
		/*padding-top: 35px;*/
		padding-bottom: 10px;
		width: calc(100% - 30px);
	}

	.base-section .breadcrumbs-list {
		font-size: 0.75rem;
	}
}

/*========================================================================

	component

========================================================================*/

.base-section .component-ttl {
	display: flex;
	align-items: center;
	color: #3c506a;
	font-size: 20px;
	padding: 5px 15px;
	background: rgba(0, 0, 0, .05);
}

.base-section .component-ttl:after {
	content: none;
}

.component-ttl .num {
	margin-left: auto;
	font-weight: normal;
	font-size: 16px;
}

.conponentMain {
	margin-top: 0;
}

.base-section>div {
	max-width: 1024px;
	padding-bottom: 0;
}

.section-light {
	background: none;
}

.pc-only {
	display: block;
}

.sp-only {
	display: none;
}

.text-normal {
	font-weight: normal;
}

.color-red {
	color: #df2727;
}

@media screen and (max-width: 767px) {
	.pc-only {
		display: none;
	}

	.sp-only {
		display: block;
	}
}

.base-section a {
	color: #004297;
	position: relative;
}

.base-section a[target="_blank"]::after,
.base-section a[href$=".pdf"]::after,
.base-section a[href$=".pptx"]::after,
.base-section a[href$=".docx"]::after,
.base-section a[href$=".xlsx"]::after {
	content: '';
	display: inline-block;
	border: none;
	transform: none;
	background-size: contain;
	right: -1.5em;
	background-repeat: no-repeat;
	bottom: 7px;
	margin: 0 5px;
}

.base-section a[target="_blank"]::after {
	width: 14px;
	height: 14px;
	background-image: url(../images/blank_ico_01.png);
	bottom: 7px;
}

.base-section a[href$=".pdf"]::after {
	content: "";
	width: 14px;
	height: 18px;
	background-image: url(../images/pdf_ico_01.png);
}

.base-section a[href$=".ppt"]::after,
.base-section a[href$=".pptx"]::after {
	width: 14px;
	height: 18px;
	background-image: url(../images/pptx_ico_01.png);
}

.base-section a[href$=".doc"]::after,
.base-section a[href$=".docx"]::after {
	width: 14px;
	height: 18px;
	background-image: url(../images/docx_ico_01.png);
}

.base-section a[href$=".xls"]::after,
.base-section a[href$=".xlsx"]::after {
	width: 14px;
	height: 18px;
	background-image: url(../images/xlsx_ico_01.png);
}

@media screen and (min-width: 768px) {
	.base-section a:hover {
		text-decoration: underline;
	}
}



@media only screen and (-webkit-min-device-pixel-ratio: 2) {
	.base-section a[target="_blank"]::after {
		background-image: url(../images/blank_ico_01_2x.png);
	}

	.base-section a[href$=".pdf"]::after {
		background-image: url(../images/pdf_ico_01_2x.png);
	}

	.base-section a[href$=".ppt"]::after,
	.base-section a[href$=".pptx"]::after {
		background-image: url(../images/pptx_ico_01_2x.png);
	}

	.base-section a[href$=".doc"]::after,
	.base-section a[href$=".docx"]::after {
		background-image: url(../images/docx_ico_01_2x.png);
	}

	.base-section a[href$=".xls"]::after,
	.base-section a[href$=".xlsx"]::after {
		background-image: url(../images/xlsx_ico_01_2x.png);
	}

}

/*
    title
---------------------------------*/
/* 0100 */
.base-h1 h1 {
	font-size: 40px;
	position: relative;
	padding-bottom: 38px;
	font-weight: bold;
	color: #004297;
	width: 1024px;
	margin: 0 auto;
}

.base-h1 h1:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 120px;
	height: 3px;
	background: #b8cae2;
}

/* 0111 */
.base-h2 {
	width: 100%;
	margin: 40px auto 0;
	text-align: left;
	border-bottom: 3px solid #f1f4f6;
	font-weight: bold;
	color: #004297;
}

.base-h2 h2 {
	font-size: 28px;
	position: relative;
}

.base-h2>div {
	display: flex;
	align-items: flex-end;

}

.base-h2 h2:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: -3px;
	width: 120px;
	height: 3px;
	background: #b8cae2;
}



/* 0112 */
.h2-subtitle .subtitle {
	font-size: 16px;
	margin-left: 26px;
	margin-bottom: 0.1em;

}

/* 0121 */
.base-h3 {
	width: 100%;
	margin: 40px auto 0;
	text-align: left;
	font-weight: bold;
	color: #004297;
}

.base-h3>div {
	display: flex;
	align-items: flex-end;
}

.base-h3 h3 {
	font-size: 22px;
	background: none;
	padding-left: 24px;
	padding-right: 0;
	position: relative;
}

.base-h3 h3:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 4px;
	height: calc(100% - 23px);
	background: #b8c2d9;
	bottom: 0;
	margin: auto;
}

/* 0122 */
.base-h3 .subtitle {
	font-size: 16px;
	margin-left: 26px;
	margin-bottom: 0.1em;
}


/* 0131 */
.base-h4 {
	width: 100%;
	margin: 40px auto 0;
	text-align: left;
	font-weight: bold;
	color: #004297;
}

.base-h4>div {
	display: flex;
	border: none;
}

.base-h4 h4 {
	font-size: 20px;
	background: none;
	padding-left: 10px;
	padding-right: 0;
	position: relative;
	border: none;

}

/* 0132 */
.base-h4 .subtitle {
	font-size: 16px;
	margin-left: 26px;
	margin-bottom: 0.1em;
}


/* 0141 */
.base-h5 {
	width: 100%;
	margin: 40px auto 0;
	text-align: left;
	font-weight: bold;
	color: #004297;
}

.base-h5>div {
	display: flex;
	align-items: flex-end;
}

.base-h5 h5 {
	font-size: 18px;
	background: none;
	padding-left: 10px;
	padding-right: 0;
	position: relative;
	border: none;
}

/* 0142 */
.base-h5 .subtitle {
	font-size: 16px;
	margin-left: 26px;
	margin-bottom: 0.1em;
}

.base-h5>div {
	padding-left: 0;
	border-left: none;
}


/*
    text
---------------------------------*/
/* 0211 */
.base-text {
	color: #3c506a;
}

/* 0215 */
.text-lead {
	text-align: left;
	font-size: 16px;
}

/* 0216 */
.text-large {
	font-size: 18px;
	color: #004297;
}

/* 0217 */
.text-small {
	font-size: 13px;
}

/* 0224 */
.base-textbox {
	color: #3c506a;
}

.textbox-border>div {
	padding: 34px 38px 29px;
	background: none;
	border: 1px solid #dde4eb;
	border-radius: 5px;
}

.base-textbox .title {
	font-weight: bold;
	font-size: 120%;
	margin-bottom: 28px;
}

.base-textbox .title p {
	font-size: 22px;
	color: #004297;
	text-align: center;
}

.base-textbox .title p:before {
	content: none;
}

.base-textbox .list-ttl {
	font-weight: bold;
}

.base-textbox ul li {
	padding-left: 0;
}

.base-textbox ul li:not(:first-child) {
	margin-top: 2px;
}

.base-textbox ul li:before {
	content: none;
}

.base-textbox .text:last-child {
	color: #004297;
	border-top: 1px solid #dde4eb;
	margin-top: 33px;
	padding: 36px 0px 0px;
}

/* 0261 */
.base-point>div {
	display: flex;
	justify-content: space-between;
}

.base-point .box {
	display: block;
	margin-bottom: 38px;
	padding: 0 40px;
	flex: 1;
}

.base-point .column2 .box {
	display: block;
	width: 46%;
}

.base-point .column3 {
	margin-top: 16px;
}

.base-point .column3 .box {
	width: 30%;
}

.base-point .box>div {
	padding: 0;
	display: flex;
	flex-direction: column;
	position: relative;
}

.base-point .point-num {
	position: absolute;
	top: 0;
	left: 0;
}

.base-point .image {
	margin-top: 0;
}

.base-point .image:not(:first-child) {
	margin-top: 0;
}

.base-point .title {
	font-weight: bold;
	font-size: 24px;
	color: #004297;
	text-align: left;
}

.base-point .title:not(:first-child) {
	margin-top: 16px;
}

.base-point .text {
	color: #004297;
}

.base-point .text:not(:first-child) {
	margin-top: 0px;
}

/* 0281 */
.base-arrow>div:not(.pb-handle):before {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	left: 50%;
	transform: translateX(-50%);
	border: 10px solid transparent;
	border-top-color: #004297;
}

.base-arrow>div:not(.pb-handle):after {
	content: '';
	position: absolute;
	width: 5px;
	height: 25px;
	left: 0;
	background: #004297;
	top: -25px;
	right: 0;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {

	.base-arrow>div:not(.pb-handle):before{
		top: 10px;
	}
	.base-arrow>div:not(.pb-handle):after{
		top: -15px;
	}
}

/*
    image
---------------------------------*/
/* 0351 */
.base-imagelist>div,
.base-imagelistR>div {
	align-items: flex-start;
}

.base-imagelist .title,
.base-imagelistR .title {
	font-weight: bold;
	font-size: 20px;
	color: #004297;
}

.base-imagelist .title p:before,
.base-imagelistR .title p:before {
	content: none;
}

.base-imagelist .textbox {
	padding-left: 50px;
}

/* 0313 */
.base-imagelistR .textbox {
	padding-right: 50px;
	color: #3c506a;
}

.base-imagelist .textbox>div,
.base-imagelistR .textbox>div {
	padding: 0px;
}

.base-imagelist .text:not(:first-child),
.base-imagelistR .text:not(:first-child) {
	margin-top: 10px;
	color: #3c506a;
}

.base-imagelist .image,
.base-imagelistR .image {
	width: 30%;
}

/* 0315 */
.base-image.image-text .text p {
	color: #3c506a;
	font-size: 13px;

}

.image-text .text:not(:first-child) {
	margin-top: 29px;
}

.image-text .title p {
	font-size: 22px;
	background: none;
	padding-left: 24px;
	padding-right: 0;
	position: relative;
	text-align: left;
	font-weight: bold;
	color: #004297;
}

.image-text .title p:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	width: 4px;
	height: calc(100% - 10px);
	background: #b8c2d9;
	bottom: 0;
	margin: auto;
}

/* 0321 */
.base-images>div {
	justify-content: space-between;
	margin: 0;
}

.base-images .image {
	margin: 0 0 30px;
	width: calc(50% - 25px);
}

.base-images .pbNested:after {
	content: none;
}

/* 0322 */
.images-3column .image {
	width: calc(33.33% - 34px);
}

/* 0323 */
.images-4column .image {
	max-width: calc(25% - 30px);
}

/* 0324 */
.images-5column .image {
	max-width: calc(20% - 28px);
}


/*
    link
---------------------------------*/
/* 0411 */
.base-link a {
	padding-left: 0;
	margin-bottom: 3px;
}

.base-link a:before {
	content: none;
}

.base-link a:after {
	content: '';
	border: none;
	display: inline-block;
	transform: none;
	background-repeat: no-repeat;
	background-size: contain;
	right: -1.5em;
	bottom: 7px;
	margin: 0 8px;
}

.base-link a {
	display: inline;
}

.base-link a:after {
	width: .5em;
	height: .5em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: -1em;
	bottom: 0.5em;
	margin: auto 0;
	padding-top: 0;
	background: none;
}
@media screen and (max-width: 767px) {
	.base-link a:after {
		display: inline-block;
		vertical-align: baseline;
		position: relative;
		bottom: auto;
		right: -.5em;
	}
}

/* 0412 */
.base-link.link-right a {
	margin-right: 19px;
}

/* 0431 */
.base-anchor ul li {
	margin: 5px 48px 15px 10px;
	padding-left: 0;
	padding-right: 1.3em;
}

.base-anchor ul a {
	display: inline;
}

.base-anchor ul a:before {
	content: '';
	position: absolute;
	width: .4em;
	height: .4em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	bottom: 0.6em;
	transform: rotate(135deg);
	right: -1em;
}

.base-anchor ul li {
	padding-right: 0;
}

.base-anchor ul li:before {
	content: none;
}

/* 0441 */
.base-button a {
	border: 2px solid #004297;
	color: #004297;
	background: #fff;
	border-radius: 9999px;
	font-weight: bold;
	padding: 0.3em 2.2em;
	width: auto;

}

/* 0451 */
.base-buttonRed a {
	border: 2px solid #004297;
	padding: 0.3em 2.2em;
	background: #004297;
	color: #fff;
	border-radius: 9999px;
	font-weight: bold;
	width: auto;
	display: inline-flex;
	justify-content: center;
}

.base-section .base-button a:before,
.base-section .base-buttonRed a:before {
	content: '';
	display: inline-block;
	width: .4em;
	height: .4em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: 6%;
	top: 0;
	bottom: 0;
	margin: auto 0;
}
.base-section .base-button a[target="_blank"]::before,
.base-section .base-button a[href$=".pdf"]::before,
.base-section .base-button a[href$=".pptx"]::before,
.base-section .base-button a[href$=".docx"]::before,
.base-section .base-button a[href$=".xlsx"]::before,
.base-section .base-buttonRed a[target="_blank"]::before,
.base-section .base-buttonRed a[href$=".pdf"]::before,
.base-section .base-buttonRed a[href$=".pptx"]::before,
.base-section .base-buttonRed a[href$=".docx"]::before,
.base-section .base-buttonRed a[href$=".xlsx"]::before{
	display: none;
}
.base-section .base-button a[target="_blank"]::after,
.base-section .base-button a[href$=".pdf"]::after,
.base-section .base-button a[href$=".pptx"]::after,
.base-section .base-button a[href$=".docx"]::after,
.base-section .base-button a[href$=".xlsx"]::after,
.base-section .base-buttonRed a[target="_blank"]::after,
.base-section .base-buttonRed a[href$=".pdf"]::after,
.base-section .base-buttonRed a[href$=".pptx"]::after,
.base-section .base-buttonRed a[href$=".docx"]::after,
.base-section .base-buttonRed a[href$=".xlsx"]::after{
	position: absolute;
  right: .5em;
  top: .1em;
  bottom: 0;
  margin: auto;
}


.base-buttonRed a:before {
	border-color: #fff;
}

.base-button a:hover {
	background: #fff;
	opacity: 0.6;
	text-decoration: none;
}

.base-buttonRed a:hover {
	background: #004297;
	opacity: 0.6;
	text-decoration: none;
}

.base-section .base-button a:hover:before {
	border-color: #004297;
}

/* 0444 */
.button-group>div {
	justify-content: space-around;
}

.button-group .pbNested:after {
	content: none;
}
@media screen and (min-width: 768px) {
	.button-group.button-justify-center>div {
		display: block;
		text-align: center;
	}
	.button-group.button-justify-center .pbNested .button{
		display: inline-block;
		margin: 5px 20px;
	}
}
/* 0452 */
.base-buttonRed.buttonRed-center a {
	margin-right: auto;
	margin-left: auto;
}

/* 0453 */
.base-buttonRed.buttonRed-right a {
	margin-right: 0;
	margin-left: auto;
}

/* 0461 */
.base-largebutton a {
	background-color: #de5500;
	color: #fff;
	text-align: center;
	border-radius: 5px;
	position: relative;
	width: 290px;
	max-width: 100%;
	font-size: 1.125rem;
	padding: 0.9em 2em;
	margin-bottom: 14px;
	font-weight: bold;
	min-width: auto;
	border: none;
	display: flex;
	justify-content: center;
}

.base-largebutton a:before {
	content: none;
}

.base-largebutton a:after {
	content: '';
	display: inline-block;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	right: 8%;
	top: -0.1em;
	bottom: 0;
	margin: auto 0;
}

.base-largebutton a:hover {
	text-decoration: none;
	background: #de5500;
	opacity: 0.6;
}

/* 0462 */
.base-largebutton.largebutton-center a {
	margin-right: auto;
	margin-left: auto;
}

/* 0463 */
.base-largebutton.largebutton-right a {
	margin-right: 0;
	margin-left: auto;
}

/* 0464 */
.largebutton-group .pbNested:after {
	content: none;
}

.largebutton-group .button:first-child {
	text-align: right;
}

.largebutton-group .button:nth-child(2) a {
	background-color: #004297;
}

.largebutton-group .button {
	width: calc(50% - 32px);
	margin: 16px;
}


/*
    list
---------------------------------*/
/* 0511 */
.pbMainArea .base-list ul li:before,
.pbMainArea .base-linelist ul li:before {
	content: none;
}

.base-list ul li:before {
	content: none;
}

.base-list ul li:first-child {
	padding-left: 0;
}

.base-list ul li:not(:first-child) {
	margin-top: 0;
	padding-left: 0;
}

.pbMainArea .base-list ul li {
	font-size: 16px;
	color: #000;
	text-indent: -1em;
	padding-left: 1em;
}

.pbMainArea .base-list ul li:before {
	content: "・";
	border: none;
	top: 0;
	bottom: 0;
	margin: auto 0;
	transform: none;
	position: static;
}

/* 0521 */
.base-linelist ul li {
	margin: 0 0 11px;
	width: 36.7%;
	padding-left: 0;
	font-size: 14px;
	padding-right: 20px;
}

.base-linelist ul li:not(:first-child) {
	margin-top: 0;
}

.base-linelist a {
	display: inline-block;
}

.base-linelist a {
	display: inline;
}

.base-linelist a:after {
	content: '';
	display: inline-block;
	width: .5em;
	height: .5em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: -1em;
	bottom: 0.5em;
	margin: auto 0;
	padding-top: 0;
	background: none;
}

/* 0531 */
.base-noteslist {
	color: #3c506a;
	font-size: 13px;
}

.base-noteslist ul li {
	padding-left: 1.1em;
}

.base-noteslist ul li:not(:first-child) {
	margin-top: 2px;
}

/* 0534 */
.base-noteslist ol {
	counter-reset: number;
	list-style: none;
	padding-left: 0;
}

.base-noteslist ol li {
	padding-left: 2em;
	text-indent: -2em;
}

.base-noteslist ol li:nth-child(n + 10) {
	padding-left: 3em;
	text-indent: -3em;
}

.base-noteslist ol li:before {
	counter-increment: number;
	content: "※"counter(number) " ";
}

.base-noteslist ol li:not(:first-child) {
	margin-top: 2px;
}

/* 0541 */
.base-numberlist {
	font-size: 16px;
	color: #3c506a;
}

.base-numberlist:not(:first-child) {
	margin-top: 34px;
}

.base-numberlist ol li:not(:first-child) {
	margin-top: 2px;
}


/*
    panel
---------------------------------*/
/* 0611 */
.base-panel .box {
	border: 1px solid #dde4eb;
	border-radius: 5px;
	margin: 0 0 30px;
	width: calc(50% - 26px);
	padding: 46px 30px 40px;
}

.base-panel>div {
	margin: 0;
	justify-content: space-between;
}

.base-panel>.pbNested:after {
	content: none;
}

.base-panel .image {
	min-height: 111px;
}

.base-panel .title {
	color: #004297;
	font-weight: bold;
	font-size: 20px;
	border-top: 1px solid #dde4eb;
	padding-top: 26px;
}

.base-panel .title:not(:first-child) {
	margin-top: 44px;
}

.base-panel .title p:before {
	content: none;
}

.base-panel .text {
	color: #004297;
}

.base-panel .text:not(:first-child) {
	margin-top: 8px;
}

.base-panel .button a {
	border: 2px solid #004297;
	color: #004297;
	background: #fff;
	border-radius: 9999px;
	font-weight: bold;
	max-width: 189px;
	padding: 0.3em 2.2em;
	width: auto;
}

.base-panel .button a:before {
	content: '';
	display: inline-block;
	width: .4em;
	height: .4em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: 9%;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

.base-panel .button a:hover {
	background: #fff;
	text-decoration: none;
	opacity: 0.6;
}

.base-panel .button a:hover:before {
	border-color: #004297;
}

/* 0631 */
.base-iconpanel>div {
	margin: 0;
	justify-content: flex-start;
}

.base-iconpanel .pbNested:after {
	content: none;
}

.base-iconpanel .box {
	border: 1px solid #dde4eb;
	border-radius: 5px;
	margin: 0 0 30px;
	width: calc(33.33% - 32px);
	padding: 42px 0px 30px;
	margin-right: calc(32px + 1.5%);
}

.base-iconpanel .box:nth-child(3n) {
	margin-right: 0;
}

.base-iconpanel .title,
.base-iconpanel .image,
.base-iconpanel .text {
	padding: 0 30px;
}

.base-iconpanel .title {
	font-weight: bold;
	font-size: 20px;
	color: #004297;
	text-align: left;
}

.base-iconpanel .text {
	color: #004297;
	text-align: left;
}

.base-iconpanel .text:not(:first-child) {
	margin-top: 7px;
}

.base-iconpanel .button a {
	border: 2px solid #004297;
	color: #004297;
	background: #fff;
	border-radius: 9999px;
	font-weight: bold;
	max-width: 96%;
	padding: 0.3em 2.2em;
	width: auto;
	margin-top: 24px;

}

.base-iconpanel .button a:hover {
	background: #fff;
	text-decoration: none;
	opacity: 0.6;
}

.base-iconpanel .button a:hover:before {
	border-color: #004297;
}

.base-iconpanel .button a:before {
	content: '';
	display: inline-block;
	width: .4em;
	height: .4em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: 9%;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

.base-iconpanel a {
	display: inline;
}

.base-iconpanel a:after {
	/* content: ''; */
	display: inline-block;
	width: .5em;
	height: .5em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: -1em;
	bottom: 0.5em;
	margin: auto 0;
	padding-top: 0;
	background: none;
}

/* 0632 */
.iconpanel-4column .box {
	width: calc(25% - 5.5px);
	padding: 42px 0px 30px;
	margin-right: calc(5px + 0.2%);
}

.base-iconpanel.iconpanel-4column .box:nth-child(3n) {
	margin-right: 0.7%;
}

.base-iconpanel.iconpanel-4column .box:nth-child(4n) {
	margin-right: 0;
}

.iconpanel-4column .image {
	min-height: 50px;
}

.iconpanel-4column .title,
.iconpanel-4column .image,
.iconpanel-4column .text {
	padding: 0 30px;
}

.iconpanel-4column .button a {
	margin-top: 25px;
	padding: 0.3em 1.2em;
	width: 185px;
	max-width: 96%;
}

.iconpanel-4column .button a:after {
	content: none;
}

.iconpanel-4column .title:not(:first-child) {
	margin-top: 20px;
}

/* 0641 */
.base-linkpanel a {
	position: static;
	display: block;
}

.base-linkpanel>div {
	justify-content: space-between;
}

.base-linkpanel .box {
	transition: all .3s;
}

.base-linkpanel .box:hover {
	text-decoration: none;
	opacity: 0.6;
}

.base-linkpanel>div {
	margin: 0;
}

.base-linkpanel .box.blank:after {
	border: none;
	width: 16px;
	height: 16px;
	background-image: url(../images/blank_ico_01.png);
	transform: none;
	background-size: contain;
	right: 1.1em;
	bottom: 1.4em;
	background-repeat: no-repeat;
}

@media only screen and (-webkit-min-device-pixel-ratio: 2) {
	.base-linkpanel .box.blank:after {
		background-image: url(../images/blank_ico_01_2x.png);
	}
}

.base-linkpanel .box {
	width: calc(50% - 25px);
	margin: 0 0 30px;
	border: 1px solid #dde4eb;
	border-radius: 5px;
	position: relative;
}

.base-linkpanel .box>div:not(.pb-handle) {
	background: none;
}

.pbPage:not(.pbPage--edit) .base-linkpanel .image a:after {
	content: none;
}

.base-linkpanel .pbNested:after {
	content: none;
}

.base-linkpanel .title p {
	font-size: 20px;
}

.base-linkpanel .title p:before {
	content: none;
}

.base-linkpanel .image {
	text-align: center;
	min-height: 112px;
	padding: 46px 30px 0;
}

.base-linkpanel .image img {
	width: auto;
}

.base-linkpanel .textbox {
	margin-top: 44px;
	color: #004297;
	padding: 0 30px 46px;
}

.base-linkpanel .textbox>div {
	padding: 26px 0;
	border-top: 1px solid #dde4eb;

}

.base-linkpanel .box:not(.pbOpenNewWindow)::after {
	content: '';
	display: inline-block;
	width: .5em;
	height: .5em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: 1.4em;
	bottom: 1.4em;
	margin: auto 0;
	padding-top: 0;
	background: none;
}
.base-linkpanel .box.pbOpenNewWindow::after {
	content: '';
	display: inline-block;
	width: 14px;
	height: 14px;
	position: absolute;
	right: 1.4em;
	bottom: 1.4em;
	margin: auto 0;
	padding-top: 0;
	background-image: url(../images/blank_ico_01.png);
  background-size: contain;
}
.base-linkpanel .box:hover::after {
	opacity: 0.6;
}

.base-linkpanel .text:not(:first-child) {
	margin-top: 7px;
}

.base-linkpanel .box>div:not(.pb-handle) {
	overflow: visible !important;
}

.base-linkpanel .image {
	overflow: visible !important;
}

/* 0642 */
.linkpanel-3column>div {
	justify-content: flex-start;
}

.linkpanel-3column .box {
	width: calc(33.33% - 32px);
	margin-right: calc(32px + 1.5%);

}

.linkpanel-3column .box:nth-child(3n) {
	margin-right: 0;
}

.linkpanel-3column .image {
	padding: 46px 30px 0;
}

.linkpanel-3column .textbox {
	padding: 0 30px 22px;
}

/* 0651 */
.base-listpanel {
	color: #004297;
}

.base-listpanel .pbNested:after {
	content: none;
}

.base-listpanel .box {
	border-top: 1px solid #dde4eb;
	border-bottom: 1px solid #dde4eb;
	position: relative;
	transition: all .3s;
}

.base-listpanel .box+.box {
	border-top: none;
}

.base-listpanel .box a {
	display: block;
	padding: 44px 0 61px;
	position: static;
}

.base-listpanel .pb-of-visible .box a{
    padding: 44px 0 42px;
    pointer-events: none;
}

.base-listpanel .box a:hover {
	text-decoration: none;

}
.base-listpanel .pb-of-visible .box a:hover {
    pointer-events: none;
}
@media screen and (min-width: 768px) {
	.base-listpanel .box:hover {
		text-decoration: none;
		opacity: 0.6;
	}
}

.base-section .base-listpanel .box:after {
	content: '';
	display: inline-block;
	width: .5em;
	height: .5em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: 1.4em;
	bottom: 2em;
	margin: auto 0;
	padding-top: 0;
	background: none;
}

.base-section .base-listpanel .box:hover::after {
	opacity: 0.6;
}

.base-listpanel>div {
	margin: 0;
}

.base-listpanel .box a>div {
	display: flex;
	background: none;
	align-items: flex-start;
	justify-content: space-between;
}

.base-listpanel .image {
	width: 39.2%;
	flex-shrink: 0;
	padding: 4px 0;
}

.pbPage:not(.pbPage--edit) .base-listpanel .image a:after {
	content: none;
}

.pbPage:not(.pbPage--edit) .base-listpanel .image a:before {
	content: '';
	position: absolute;
	width: 100%;
	height: 100%;
	transition: all .3s;
	top: 0;
}

.base-listpanel .title {
	font-weight: bold;
}

.base-listpanel .title p:before {
	content: none;
}

.base-listpanel .textbox>div {
	padding: 0;
	margin: 20px 0;
}

.base-listpanel .title-text {
	font-size: 24px;
	margin-bottom: 3px;
}

.base-listpanel .text {
	border-top: 1px solid #dde4eb;
	padding-top: 28px;
}
.base-listpanel .title + .text{
  border-top: none;
  margin-top: 0;
}
.base-listpanel .text:nth-child(n + 3) {
	margin-top: 22px;
}

.base-listpanel .textbox {
	width: 57%;
	padding-right: 34px;
}

/* 0652 */
.base-listpanel.listpanel-2column>div {
	justify-content: space-between;
}

.base-listpanel.listpanel-2column .textbox>div {
	margin: 0;
}

.base-listpanel.listpanel-2column .box>div:not(.pb-handle) {
	flex-direction: column;
	padding: 29px 30px 35px 29px;
}
@media all and (-ms-high-contrast: none) {
	.base-listpanel.listpanel-2column .box>div:not(.pb-handle) {
		display: block;
	}
}
.pbPage:not(.pbPage--edit) .base-listpanel.listpanel-2column .image a:before {
	top: -28px;
	transform: translate(-30px, 0px);
	height: calc(100% + 75px);
}

.base-listpanel.listpanel-2column .box {
	border: 1px solid #dde4eb;
	width: 48.1%;
	border-radius: 5px;
}

.base-listpanel.listpanel-2column .title {
	padding-left: 62px;
}

.base-listpanel.listpanel-2column .box a>div {
	flex-direction: column;
	position: relative;
}

.base-listpanel.listpanel-2column .image  {
	flex-shrink: 1;
	width: 100%;
	position: absolute;
	z-index: 9999;
	left: 29px;
	top: 29px;
}

.base-listpanel.listpanel-2column.pb-of-visible .image{
  width: 50px;
  height: 94px;
}

.base-listpanel.listpanel-2column .image img {
	position: absolute;
	width: 50px;
	top: 4px;
	left: 0;
}

.base-listpanel.listpanel-2column .textbox {
	width: 100%;
	padding-right: 0;
}

.base-listpanel.listpanel-2column .text {
	padding-top: 16px;
}

.base-listpanel.listpanel-2column .text:not(:first-child) {
	margin-top: 10px;
}

.base-listpanel.listpanel-2column .title p {
	display: flex;
	align-items: center;
	font-size: 20px;
	min-height: 3.2em;
}
@media all and (-ms-high-contrast: none) {
	.base-listpanel.listpanel-2column .title>div>div{
		display: table;
		width: 100%;
		min-height: 3.2em;
	}
	.base-listpanel.listpanel-2column .title p {
		display:table-cell;
		vertical-align: middle;
		min-height: auto;
	}
}

.base-listpanel.listpanel-2column .title .icon {
	margin-right: 14px;
}

.base-listpanel.listpanel-2column .box:after {
	bottom: 1.3em;
}

/* 0654 */
.base-listpanel.no-image-listpanel .box:after {
	border: none;
	width: 16px;
	height: 16px;
	background-image: url(../images/blank_ico_01.png);
	transform: none;
	background-size: contain;
	right: 1.1em;
	bottom: 1.4em;
	background-repeat: no-repeat;
}

.base-listpanel.listpanel-2column.no-image-listpanel .box>div:not(.pb-handle) {
	padding: 0;
}

.base-listpanel.listpanel-2column.no-image-listpanel .title {
	padding-left: 0;
}

.base-listpanel.no-image-listpanel .text {
	width: 100%;
	border: none;
	padding-top: 0;
}

.base-listpanel.no-image-listpanel .box a {
	padding: 25px 30px 76px 29px;
}
.base-listpanel.no-image-listpanel .box a:after{
	display: none;
}

.base-listpanel.no-image-listpanel .text:not(:first-child) {
	margin-top: 6px;
}

/* 0691 */
.base-mixpanel .pbNested:after {
	content: none;
}

.base-mixpanel>div {
	margin: 0;
	justify-content: space-between;
}

.base-mixpanel .box {
	margin: 0 0 20px;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
}

.base-mixpanel .box>div {
	width: 100%;
}

.base-mixpanel .inner {
	width: calc(50% - 25px);
}

.base-mixpanel .title:not(:first-child) {
	margin-top: 23px;
}

.base-mixpanel .title>div {
	color: #004297;
	font-size: 24px;
	background: none;
	text-align: left;
	padding: 0;
}

.base-mixpanel .text {
	color: #004297;
}

.base-mixpanel .text:not(:first-child) {
	margin-top: 0px;
}

.base-mixpanel .list {
	color: #004297;
}

.base-mixpanel .list:not(:first-child) {
	margin-top: 2px;
}

.base-mixpanel .list li {
	padding-left: 0;
}

.base-mixpanel ul li:not(:first-child) {
	margin-top: 0;
}

.base-mixpanel ul li:before {
	content: none;
}

.base-table:not(:first-child) {
	margin-top: 24px;
}

.base-mixpanel .box table {
	color: #3c506a;
	border-collapse: collapse;
}

.base-mixpanel .box th,
.base-mixpanel .box td {
	border: 1px solid #dde4eb;
	padding: 15px 20px 13px;
	font-weight: normal;
}

.base-mixpanel .box th {
	background: #f5f6f8;
	color: #3c506a;
	text-align: left;
	width: auto;
}

.base-mixpanel .box td {
	background: #fff;
	color: #3c506a;
	vertical-align: top;
}

.base-mixpanel .table+.text {
	color: #3c506a;
	font-size: 13px;
	margin-top: 28px;

}

.base-mixpanel .link {
	text-align: center;
}

.base-mixpanel .link p:before {
	content: none;
}

.base-mixpanel .link a {
	display: inline-block;
	max-width: 280px;
	border: 2px solid #004297;
	color: #004297;
	background: #fff;
	border-radius: 9999px;
	font-weight: bold;
	padding: 0.5em 2.6em 0.4em 2.5em;
	width: auto;
	transition: all .3s;
	font-size: 16px;
}

.base-mixpanel .link a:before {
	content: "";
	display: inline-block;
	position: absolute;
	right: 2%;
	top: 29%;
	width: 16px;
	height: 16px;
	border: none;
	background-image: url(../images/blank_ico_01.png);
	transform: none;
	background-size: contain;
	background-repeat: no-repeat;
	margin: 0 10px 2px 0;
}

.base-section .megane-icon {
	display: none;
}

/* 0692 */
.base-mixpanel.mixpanel-3column .box {
	width: calc(100% / 3 - 33px);
}

.base-mixpanel.mixpanel-3column .image {
	margin-bottom: 30px;
}

.base-mixpanel.mixpanel-3column .text {
	font-weight: bold;
}

/*
    table / category
---------------------------------*/
/* 0711 */
.base-table table {
	border-collapse: collapse;
}

.base-table table th,
.base-table table td {
	border: 1px solid #dde4eb;
	color: #3c506a;
}

.base-table table th {
	text-align: center;
	background: #f5f6f8;
	font-weight: normal;
}

.base-table.th-l table th {
	text-align: left;
}

.base-table table td {
	background: none;
}

.base-table .notes-text {
	font-size: 13px;
	margin-top: 25px;
	color: #3c506a;
	padding-left: 1em;
	text-indent: -2em;
	margin-left: 1em;
}

.base-category a:hover {
	text-decoration: none;
}

.base-category a:hover dd {
	text-decoration: underline;
}

/* 0721 */
.base-smalltable table {
	width: 486px;
	border-collapse: collapse;
}
.base-smalltable.wide-table table{
	width: 100%;
}
.base-smalltable.wide-table table th{
	width: 33.3%;
}

.base-smalltable table th,
.base-smalltable table td {
	border: 1px solid #dde4eb;
	color: #3c506a;
	font-weight: normal;
	padding: 14px 20px;
	text-align: left;
}

.base-smalltable table th {
	width: 41.3%;
	background: #f5f6f8;
}

.base-smalltable table td {
	background: none;
}

/* 0731 */
.base-swipetable table {
	border-collapse: collapse;
	max-width: 100%;
}

.base-swipetable table th,
.base-swipetable table td {
	border: 1px solid #dde4eb;
	color: #3c506a;
	font-weight: normal;
	padding: 14px 20px;
	text-align: left;
	vertical-align: top;

}

.base-swipetable table th {
	background: #f5f6f8;
	width: 25.5%;
	width: auto;
}

.base-swipetable table th+th {
	background: #004297;
	color: #fff;
	/* width: 33%; */
	/* width: 25.5%; */
	width: auto;


	text-align: center;
}

.base-swipetable table td {
	background: none;
}

/*
    special contents
---------------------------------*/
/* 0871 */
.base-youtube iframe {
	width: 78.9%;
	border: 4px solid #004297;
	left: 0;
	right: 0;
	margin: auto;
	height: 79.8%;
}

/* 0851 */
.base-imagebox .box:first-child {
	max-width: 100%;
}

.base-switching .tab ul li {
	flex: 1;
	background: #dde4eb;
	color: #004297;
	margin: 0;
	border-radius: 0;
	text-align: center;
	padding: 20px 30px;
	font-size: 18px;
	font-weight: bold;
}

.base-switching .tab ul li:not(:first-child) {
	border-left: 1px solid #fff;
}

.base-switching .tab ul li:hover,
.base-switching .tab ul li.active {
	background: #004297;
	color: #fff;
}

.base-switching .panel {
	margin-top: 0;
}

.base-switching .panel>div {
	border-top: none;
	border-color: #dde4eb;
	padding: 50px 50px 45px
}

/* 0861 */
.base-accordion .trigger>div {
	border: none;
	color: #fff;
	background: #004297;
	font-size: 18px;
	padding: 12px 40px 12px 30px;
}

.base-accordion .trigger:before,
.base-accordion .trigger:after {
	background: #fff;
}

.base-accordion .content>div {
	border-bottom: 1px solid #dde4eb;
	border-right: none;
	border-left: none;
	position: relative;
	padding: 26px 0 25px;
	margin-top: 0;
}
.base-section .base-section>div>.base-accordion02 {
	margin-left:-10px;
	margin-right:-10px;
}
.base-accordion:not(.base-accordion02):not(.base-block) .content:not(.blue-bg)>div::after {
	content: '';
	display: inline-block;
	margin: 0 10px 2px 0;
	width: .5em;
	height: .5em;
	transform: rotate(45deg);
	position: absolute;
	right: 2%;
	top: 0;
	bottom: 0;
	margin: auto 0;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
}

.base-accordion .content:not(.blue-bg)>div>div {
	padding-right: 80px;
}
.base-accordion .content.blue-bg>div>div {
	max-width: 920px;
	width: 100%;
}

.base-accordion02 .pbBlock.pbBlockBase {
	color: #004297;
	font-size: 18px;
	font-weight: bold;
}

.base-accordion02 .content .pbBlock.pbBlockBase>div {
	font-weight: normal;
}
/* 0863 */
	.base-accordion .content-free>div{
      border-bottom: inherit;
      padding: inherit;
     }
   .base-accordion .content-free:not(.blue-bg)>div>div {
	padding: inherit;
}
.base-accordion .content-free div::after{
  content:none !important;
}
.base-accordion .content-free a{
  width:100%;
  display: inline-block;
  padding: 26px 10px 25px;
}
.base-accordion .content-free>div>div {
	padding-right: 0;
	border-bottom: 1px solid #dde4eb;
	padding: inherit;
}
/* 0902 */
.base-accordion02 .trigger>div {
	padding: 38px 30px 34px 62px;
	border: 1px solid #dde4eb;
}

.base-accordion02 .trigger:before,
.base-accordion02 .trigger:after {
	background: #004297;
}

.base-accordion02 .content>div::after {
	content: none;
}

.base-accordion02 .trigger .pbBlock.pbBlockBase::before {
	content: '';
	position: absolute;
	width: 40px;
	height: 40px;
	background-size: contain;
	background-image: url(./../images/faq_ico_01.png);
	top: 0;
	bottom: 0;
	margin: auto 0;
	left: 0;
	background-repeat: no-repeat;
}

.base-accordion02 .pbBlock.pbBlockBase {
	border: none;
	background: none;
	padding: 29px 30px 24px 12px;
}

.base-accordion02 .accordion-ttl {
	color: #004297;
	font-size: 18px;
}

.base-accordion02+.base-accordion02 {
	margin-top: 0;
}

.base-accordion02:last-child {
	border-bottom: 1px solid #dde4eb;
}

.base-accordion02 {
	border-top: 1px solid #dde4eb;
	border-bottom: 1px solid #dde4eb;
}

.base-accordion02 .content {
	background: #f5f6f8;
	position: relative;
	color: #3c506a;
}

.base-accordion02 .content .pbBlock.pbBlockBase>div {
	padding: 0 26px 0 52px;
}

.base-accordion02 .content::before {
	position: absolute;
	content: '';
	width: 40px;
	height: 40px;
	background-size: contain;
	background-image: url(/library/images/faq_ico_02.png);
	top: 28px;
	left: 5%;
	background-repeat: no-repeat;
}

/* 0900 */
.person-imagelist .textbox {
	padding-left: 50px;
	display: flex;
	align-items: center;
	position: relative;
	width: 70%;
}

.person-imagelist {
	display: flex;
	width: 100%;
}

.person-imagelist>div:not(.pb-handle) {
	display: flex;
	width: 100%;
}

.person-imagelist .image {
	width: 30.2%;
}

.person-imagelist .textbox-ttl {
	color: #004297;
}

.person-imagelist .textbox-ttl .textbox-ttl-department {
	font-size: 16px;
}

.person-imagelist .textbox-ttl .textbox-ttl-name {
	font-size: 20px;
	font-weight: bold;
}

.person-imagelist .textbox-ttl .small {
	font-size: 13px;
	vertical-align: initial;
	margin-left: 7px;
}

.person-imagelist.base-panel .textbox-ttl .small {
	margin-left: 0;
}

.person-imagelist .textbox-txt {
	color: #3c506a;
}

.person-imagelist .text:not(:first-child) {
	margin-top: 0;
}

.person-imagelist.base-panel,
.person-imagelist.panel-3column {
	display: flex;
	width: 100%;
	justify-content: space-between;
	flex-direction: column;
	margin-top: 35px;
}

.person-imagelist.base-panel>div:not(.pb-handle),
.person-imagelist.panel-3column>div:not(.pb-handle) {
	display: flex;
	width: 100%;
	justify-content: space-between;
}

.person-imagelist.base-panel>div:not(.pb-handle):after,
.person-imagelist.panel-3column>div:not(.pb-handle):after {
	position: absolute;
}

.person-imagelist.base-panel .textbox-ttl .textbox-ttl-name,
.person-imagelist.panel-3column .textbox-ttl .textbox-ttl-name {
	line-height: 1;
}

.panel-3column .box {
	width: calc(100% / 3 - 33px);
	margin: 0;
	border: none;
	padding: 0;
	display: flex;
	flex-direction: column;
}

.person-imagelist.base-panel .box {
	width: calc(100% / 2 - 25px);
	margin: 0;
	border: none;
	padding: 0;
	display: flex;
	flex-direction: column;
}

.person-imagelist.base-panel .box:nth-child(n+3) {
	margin-top: 35px;
}

.person-imagelist.base-panel .image,
.panel-3column .image {
	width: 100%;
	margin-bottom: 30px;
}

.person-imagelist.base-panel .image {
	margin-bottom: 12px;
}

.person-imagelist.base-panel .small,
.panel-3column .small {
	display: block;
	margin: 0 !important;
}


/* 0901 */
.cv-textbox .table {
	display: flex;
	justify-content: space-between;
}

.pbMainArea .cv-textbox table th,
.pbMainArea .cv-textbox table td {
	background: none;
}

.cv-textbox .table>div:not(.pb-handle) {
	display: flex;
	justify-content: space-between;
	width: 100%;
}

.cv-textbox .table>div:not(.pb-handle):after {
	position: absolute;
}

.cv-textbox .table>div:not(.pb-handle)>div:not(.pb-handle) {
	padding: 0;
	box-sizing: border-box;
}

.cv-textbox .cv-ttl {
	font-size: 22px;
	font-weight: bold;
	color: #004297;
	text-align: center;
}

.cv-textbox .cv-button {
	background-color: #de5500;
	color: #fff;
	text-align: center;
	border-radius: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 290px;
	max-width: 100%;
	font-size: 1.125rem;
	padding: 0.9em 2em;
	margin-bottom: 14px;
	font-weight: bold;
}

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

.cv-textbox .cv-button:after {
	content: '';
	display: inline-block;
	width: 0.4em;
	height: 0.4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	right: 8%;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

.cv-textbox .cv-link.arrow {
	color: #004297;
	position: relative;
	font-size: 14px;
	font-weight: bold;
}

.cv-textbox .cv-link.arrow:hover {
	text-decoration: underline;
}

.cv-textbox .cv-link.arrow:after {
	content: '';
	display: inline-block;
	width: 0.4em;
	height: 0.4em;
	border-top: 2px solid #004297;
	border-right: 2px solid #004297;
	transform: rotate(45deg);
	position: absolute;
	right: -1.3em;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

.cv-textbox .cv-txt {
	color: #3c506a;
}

.cv-textbox>div {
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 36px 0 32px;
}

.cv-textbox .table {
	margin-top: 28px;
	width: 684px;
}

/* 0445 */
.base-button .parameter-button {
	background-color: #de5500;
	color: #fff;
	text-align: center;
	border-radius: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 290px;
	max-width: 100%;
	font-size: 1.125rem;
	padding: 0.9em 2em;
	margin-bottom: 14px;
	font-weight: bold;
}

.base-button .parameter-button:before {
	content: none;
}

.base-button .parameter-button:after {
	content: '';
	display: inline-block;
	width: .4em;
	height: .4em;
	border-top: 2px solid #fff;
	border-right: 2px solid #fff;
	transform: rotate(45deg);
	position: absolute;
	right: 8%;
	top: 0;
	bottom: 0;
	margin: auto 0;
}

/* nav page */
.base-h1+.base-section.nav-page {
	margin-top: 7px;
}

.base-section.nav-page>div {
	display: flex;
	justify-content: space-between;
	padding-bottom: 0;
}


.base-section.nav-page .side-nav {
	width: 254px;
	color: #004297;
}

.base-section.nav-page .side-nav a {
	text-decoration: none;
}

.base-section.nav-page .main-content {
	width: 720px;
}
@media screen and (min-width: 768px) {
	.base-section.nav-page .main-content>div>.base-section>div>:first-of-type {
		margin-top: 0;
	}
}

.main-content .base-section:first-child>div {
	padding-top: 0;
}

.base-section.nav-page .side-nav .nav-wrap {
	border: 1px solid #dde4eb;
	border-radius: 5px;
}

.base-section.nav-page .side-nav .nav-ttl {
	background: #004297;
	color: #fff;
	font-size: 18px;
	padding: 15px 18px 13px;
	border-radius: 5px 5px 0 0;
}

.base-section.nav-page .side-nav ul li {
	padding-left: 0;
}

.base-section.nav-page .side-nav ul li:not(:first-child) {
	margin-top: 0;
}

.base-section.nav-page .side-nav ul li:before {
	content: none;
}

.base-section.nav-page .side-nav .main_menu:hover,
.base-section.nav-page .side-nav .sub_menu li:hover,
.base-section.nav-page .side-nav .is_current{
	background: #e4ecf6;
}

.base-section.nav-page .side-nav .main_menu {
	position: relative;
	padding: 17px 17px 14px;
	cursor: pointer;
}

.base-section.nav-page .side-nav li:not(:first-child) .main_menu::after {
	content: '';
	position: absolute;
	left: 50%;
	display: inline-block;
	width: 92%;
	height: 1px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background-color: #dde4eb;
	bottom: 100%;
	border: none;
}

.base-section.nav-page .side-nav .sub_menu li {
	position: relative;
}

.base-section.nav-page .side-nav .sub_menu li a {
	display: block;
	padding: 10px 30px 11px;
}

.base-section.nav-page .side-nav .sub_menu li a span {
	position: relative;
}

.base-section.nav-page .side-nav .main_menu::before,
.base-section.nav-page .side-nav .sub_menu li a span::before {
	position: absolute;
	content: "";
	width: 8px;
	height: 8px;
	border-top: 2px solid #004297;
	border-left: 2px solid #004297;
	top: 0;
	bottom: 0;
	right: 8%;
	margin: auto;
	transform: rotate(135deg);
	pointer-events: none;
}
.base-section.nav-page .side-nav a[target="_blank"] .main_menu::before,
.base-section.nav-page .side-nav .sub_menu li a[target="_blank"] span::before{
	border: none;
	width: 14px;
	height: 14px;
	background-image: url(../images/blank_ico_01.png);
	transform: none;
	background-size: contain;
	background-repeat: no-repeat;
}
.base-section.nav-page .side-nav .sub_menu li a[target="_blank"] span{
  padding-right: 1em;
}
.base-section.nav-page .side-nav .sub_menu li a[target="_blank"] span::before{
  display: inline-block;
  right: -5px;
  bottom: 5px;
}
.base-section.nav-page .side-nav a[target="_blank"]::after{
  display: none;
}
.base-section.nav-page .side-nav .sub_menu li a span::before {
	width: 7px;
	height: 7px;
	right: -10px;
	top: auto;
	bottom: 0.5em;
}

.base-section.nav-page .side-nav .main_menu.open {
	background: #f5f6f8;
}
.base-section.nav-page .side-nav .main_menu.open:hover,
.base-section.nav-page .side-nav .main_menu.open.is_currnet {
	background: #e4ecf6;
}

.base-section.nav-page .side-nav .sub_menu {
	background: #f5f6f8;
	font-size: 14px;
	padding-bottom: 15px;
}



/*========================================================================

	component__SP

========================================================================*/
@media screen and (max-width: 767px) {
	.main-content > .pbNested > .base-section > .pbNested > :first-child{
		margin-top: 0;
	}

	/* 0100 */
	.base-h2>div,
	.base-h3>div,
	.base-h4>div,
	.base-h5>div {
		flex-direction: column;
		align-items: flex-start;
	}
	.base-h2>div>div{
		width: 100%
	}

	.base-h2 .subtitle,
	.base-h3 .subtitle,
	.base-h4 .subtitle,
	.base-h5 .subtitle {
		margin-left: 10px;
	}

	.base-h1 h1 {
		font-size: 23px;
		padding-bottom: 12px;
		width: 100%;
	}

	.base-t1 h1:after {
		content: none;
	}

	/* 0111 */
	.base-h2 {
		border: none;
	}
	.base-h2 h2,
	.base-h2.base-ttl h2 {
		font-size: 20px;
		padding-bottom: 15px;
		display: block;
	}

	.base-h2 h2:before {
		content: '';
		position: absolute;
		left: 0;
		bottom: -3px;
		width: 100%;
		height: 3px;
		background: #f1f4f6;
	}
	/* 0121 */
	.base-h3 h3,
	.base-ttl.base-h3 h3 {
		font-size: 18px;
		display: block;
	}
	.base-h3>div>div{
		width: 100%;
	}
	.base-h3 h3:after,
	.base-ttl.base-h3 h3:after {
		height: calc(100% - 20px);
	}

	/* 0211 */
	.base-text {
		font-size: 14px;
	}

	/* 0216 */
	.text-large {
		font-size: 15px;
	}

	/* 0217 */
	.text-small {
		font-size: 12px;
	}

	/* 0224 */
	.base-textbox .title {
		margin-bottom: 17px;
	}

	.base-textbox .title p {
		font-size: 18px;
	}

	.textbox-border>div {
		font-size: 14px;
		padding: 20px;
	}

	/* .base-textbox .text-box-footer .phone-number {
		font-size: 18px;
	}

	.textbox-list-wrap {
		margin-top: 17px;
	}

	.textbox-list-wrap .list {
		margin-bottom: 22px;
	}

	.base-textbox .text-box-footer {
		margin-top: 0;
		padding-top: 12px;
	} */

	/* 0261 */
	.base-point>div {
		flex-wrap: wrap;
	}

	/* 
	.base-point .column2 .box {
		width: 100%;
	} */

	.base-point .box {
		border: none;
		flex: auto;
		padding: 0;
	}

	.base-point .image img {
		width: 81%;
		margin: 13px auto 0;
	}

	.base-point .title {
		font-size: 18px;
	}

	.base-point .text {
		font-size: 14px;
	}

	.base-point .box:not(:first-child) {
		padding-top: 0;
		margin-top: 0;
		border: none;
	}

	/* 0312 */
	.base-image.image-w100 {
		position: relative;
	}

	/* 0315 */
	.image-text .text:not(:first-child) {
		margin-top: 15px;
	}

	.base-image.image-text .text p {
		font-size: 12px;
	}

	/* 0321 */
	.base-images .image {
		width: 100%;
		margin-bottom: 0;
	}

	.base-images .image:not(:first-child) {
		margin-top: 25px;
	}

	/* 0323 */
	.images-4column .image {
		max-width: calc(50% - 8px);
		margin-bottom: 15px;
	}

	.images-4column .image:not(:first-child) {
		margin-top: 0;
	}

	/* 0324 */
	.images-5column .image {
		max-width: calc(50% - 8px);
		margin-bottom: 15px;
	}

	.images-5column .image:not(:first-child) {
		margin-top: 0;
	}

	/* 0351 */
	.base-imagelist .image,
	.base-imagelistR .image {
		width: 88%;
		margin: 0 auto 24px;
	}

	.base-imagelist .textbox {
		padding-left: 0;
	}

	.base-imagelist .title,
	.base-imagelistR .title {
		font-size: 18px;
	}

	.base-imagelist .text,
	.base-imagelistR .text {
		font-size: 14px;
	}

	.base-imagelist .text:not(:first-child),
	.base-imagelistR .text:not(:first-child) {
		margin-top: 4px;
	}

	/* 0361 */
	.base-imagelistR>div {
		display: flex;
		flex-direction: column;
	}

	.base-imagelistR .textbox {
		padding-right: 0;
	}

	.base-imagelistR .textbox {
		margin-bottom: 24px;
	}

	/* 0411 */
	.base-link {
		font-size: 14px;
	}

	/* 0431 */
	.base-anchor ul li {
		font-size: 14px;
		margin: 0 0 16px;
		width: 50%;
		padding-left: 7px;
	}

	.base-anchor ul li:not(:first-child) {
		margin-top: 0px;
	}

	.base-anchor ul a:before {
		right: -1.2em;
	}

	/* 0441 */
	.base-button a {
		padding: 0.3em 1.9em;
	}

	/* 0451 */
	.base-buttonRed a {
		padding: 0.3em 1.9em;
	}

	/* 0445 */
	/* .base-button .parameter-button {
		min-width: 225px;
		font-size: 16px;
		margin: 0 auto;
	} */

	/* 0461 */
	.base-largebutton a {
		width: 225px;
		padding: 0.8em 1em;
		font-size: 16px;
	}

	/* 0464 */
	.largebutton-group .button {
		width: calc(50% - 10px);
		margin: 0;
	}

	.largebutton-group>div {
		margin: 0;
		justify-content: space-between;
	}

	/* 0511 */
	.base-list {
		font-size: 14px;
	}

	/* 0521 */
	.base-linelist ul li {
		width: 100%;
		margin-bottom: 2px;
	}

	/* 0531 */
	.base-noteslist {
		font-size: 12px;
	}

	/* 0534 */
	.base-noteslist ol li {
		padding-left: 2em;
		text-indent: -2em;
	}

	/* 0541 */
	.base-numberlist {
		font-size: 14px;
	}

	/* 0611 */
	.base-panel .box {
		width: 100%;
		padding: 46px 20px 18px;
		margin-bottom: 18px;
	}

	.base-panel .title {
		font-size: 18px;
		padding-top: 18px;
	}

	.base-panel .text {
		font-size: 14px;
	}

	.base-panel .text:not(:first-child) {
		margin-top: 1px;
	}

	.base-panel .button a {
		margin-top: 15px;
		padding: 0.3em 1.9em;
	}

	/* 0631 */
	.base-iconpanel .box>div:not(.pb-handle) {
		flex-direction: row;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.base-iconpanel .title:not(:first-child) {
		width: 70%;
		margin-top: 0;
	}

	.base-iconpanel .box {
		padding: 14px 27px 18px;
		width: 100%;
		margin-bottom: 15px;
		margin-right: 0;
	}

	.base-iconpanel .image {
		width: 21%;
		flex-shrink: 0;
	}

	.base-iconpanel .title {
		font-size: 15px;
	}

	.base-iconpanel .text {
		font-size: 14px;
		width: 70%;
		margin-left: auto;
	}

	.base-iconpanel .button {
		width: 100%;
	}

	.base-iconpanel .button a {
		padding: 0.3em 1.9em;
		margin-top: 10px;
	}

	.base-iconpanel .title,
	.base-iconpanel .image,
	.base-iconpanel .text {
		padding: 0;
	}

	/* 0632 */
	.base-iconpanel.iconpanel-4column .text:not(:first-child) {
		margin-top: 0;
	}

	.base-iconpanel.iconpanel-4column .button a {
		width: auto;
	}

	/* 0641 */
	.base-linkpanel .box {
		width: 100%;
		margin-bottom: 20px;
		padding: 0;
	}

	.base-linkpanel .image {
		padding: 48px 18px 0;
	}

	.base-linkpanel .textbox {
		padding: 0 18px 34px;
	}

	.base-linkpanel .textbox>div {
		padding: 14px 0;
	}

	.base-linkpanel .text:not(:first-child) {
		margin-top: 0px;
	}

	.base-linkpanel .title {
		font-size: 18px;
	}

	.base-linkpanel .text {
		font-size: 14px;
	}

	.linkpanel-3column .box {
		margin-right: 0;
	}

	/* 0651 */
	.base-listpanel .box a {
		padding: 15px 0 0;
	}

	.base-listpanel .textbox>div {
		margin: 0;
	}

	.base-listpanel .box a>div {
		flex-direction: column;
	}

	.base-listpanel .image {
		width: 100%;
	}

	.base-listpanel .textbox {
		width: 90%;
		padding-right: 0;
		margin: 15px auto 0;
		padding-bottom: 46px;
	}

	.base-listpanel .title {
		font-size: 14px;
	}

	.base-listpanel.listpanel-2column .title {
		padding-left: 50px;
	}

	.base-listpanel .text:not(:first-child) {
		margin-top: 12px;
	}

	.base-listpanel .text {
		padding-top: 12px;
		font-size: 14px;
	}

	.base-section .base-listpanel .box:after {
		bottom: 1.4em;
	}

	/* 0652 */
	.base-listpanel.listpanel-2column .box {
		width: 100%;
		margin-bottom: 5px;
	}

	.base-listpanel.listpanel-2column .box>div:not(.pb-handle) {
		padding: 10px 20px 38px 20px;
	}

	.base-listpanel.listpanel-2column .image {
		left: 20px;
		top: 10px;
		height: 100%;
	}

	.base-listpanel.listpanel-2column .textbox {
		margin-top: 2px;
		padding-bottom: 0;
	}

	.base-listpanel.listpanel-2column .image img {
		/*width: 10.7%;*/
		width: 40px;
	}

	.base-listpanel.listpanel-2column .title p {
		font-size: 15px;
		/*min-height: auto;*/
	}

	.pbPage:not(.pbPage--edit) .base-listpanel.listpanel-2column .image a:before {
		/*transform: translate(-20px, 0);*/
		top: -14px;
		height: 100%;
	}

	.base-listpanel.listpanel-2column .text:not(:first-child) {
		margin-top: 10px;
	}

	.base-listpanel.listpanel-2column .text {
		padding-top: 13px;
	}

	/* 0654 */
	.base-listpanel.listpanel-2column.no-image-listpanel .text:not(:first-child) {
		width: 100%;
		margin-top: 4px;
		padding-top: 0;
	}

	.base-listpanel.no-image-listpanel .box a {
		padding: 5px 20px 38px;
	}

	.base-listpanel.no-image-listpanel .box:after {
		bottom: 1.1em;
	}

	/* 0691 */
	.base-mixpanel .box {
		flex-direction: column;
		margin: 0;
	}
	.base-mixpanel .box + .box{
		flex-direction: column;
		margin: 40px 0 0;
	}
	.base-mixpanel .base-h3,
	.base-mixpanel .base-ttl.base-h3 {
		margin-top: 40px;
	}
	.base-mixpanel div+.base-h3{
		margin-top: 30px;
	}

	.base-mixpanel .title>div {
		font-size: 18px;
	}

	.base-mixpanel .title:not(:first-child) {
		margin-top: 12px;
	}

	.base-mixpanel .text,
	.base-mixpanel .list {
		font-size: 14px;
	}

	.base-mixpanel .text:not(:first-child),
	.base-mixpanel .list:not(:first-child) {
		margin-top: 15px;
	}

	.base-mixpanel .box:not(:first-child) {
		margin-top: 0;
	}
	.base-mixpanel .box:last-child {
		margin-bottom: 0;
	}

	.base-table:not(:first-child) {
		margin-top: 13px;
	}

	.base-mixpanel .image {
		position: relative;
	}

	.base-section .megane-icon {
		display: block;
		position: absolute;
		width: 35px;
		height: 35px;
		bottom: 0;
		right: 0;
	}

	.base-mixpanel .box tr {
		display: table-row;
	}

	.base-mixpanel .box th {
		display: table-cell;
		background: #f5f6f8;
		color: #3c506a;
		text-align: left;
		padding: 10px 10px 9px;
		width: 20% !important;
	}

	.base-mixpanel .box td {
		padding: 10px 10px 9px;
		width: 20% !important;
		background: #fff;
		color: #3c506a;
		vertical-align: top;
		display: table-cell;
	}

	/* 0692 */
	.base-mixpanel.mixpanel-3column .box {
		margin-top: 0;
		width: 100%;
		margin-bottom: 26px;
	}

	.base-mixpanel.mixpanel-3column>div {
		flex-direction: column;
	}

	.base-mixpanel.mixpanel-3column .box>div {
		display: flex;
		justify-content: space-between;
	}

	.base-mixpanel.mixpanel-3column .image {
		width: 44%;
		margin-bottom: 0;
	}

	.base-mixpanel.mixpanel-3column .text {
		width: 51%;
	}
	.base-mixpanel + .base-h3{
		margin-top: 30px;
	}

	/* 0711 */
	.base-table table {
		display: block;
		max-width: none;
		width: auto;
	}

	.base-table table td {}


	.base-table.th-l table {
		overflow: auto;
	}

	.base-smalltable table {
		width: 100%;
	}

	/* 0731 */

	.base-swipetable>div::-webkit-scrollbar {
		height: 5px;
	}

	.base-swipetable>div::-webkit-scrollbar-thumb {
		background: #b8cae2;
		border-radius: 5px;
	}

	.base-swipetable>div::-webkit-scrollbar-track {
		background: #f5f6f8;
		border-radius: 5px;
	}

	/* 0741 */
	.base-category tr {
		padding: 23px 40px 10px 0;
	}

	/* 0851 */
	.base-switching .tab ul li {
		font-size: 15px;
	}

	.base-table table th {
		/*border-top: none;*/
		border-bottom: none;
	}

	.base-table table tbody tr:first-child th {
		border-top: 1px solid #dde4eb;
	}

	.base-switching .tab ul li {
		flex: 1;
		background: #dde4eb;
		color: #004297;
		margin: 0;
		border-radius: 0;
		text-align: center;
		padding: 10px 30px;
	}

	.base-switching .panel>div {
		padding: 21px 19px 20px;
	}

	/* 0861 */
	.base-accordion .content:not(.blue-bg)>div>div {
		padding-right: 20px;
	}
	.base-section .base-section>div>.base-accordion02 {
		margin-left:-15px;
		margin-right:-15px;
	}
	.base-accordion.base-accordion02 .trigger>div:not(.pb-handle) {
		padding: 13px 50px 13px 55px;
		font-size: 15px;
	}

	.base-accordion02 .content .pbBlock.pbBlockBase>div {
		display: flex;
		flex-direction: column;
		justify-content: center;
		font-size: 14px;
		min-height: 3.2em;
		padding: 0 26px 0 50px;
		font-weight: normal;
	}

	.base-accordion02.base-accordion .content>div::after {
		content: none;
	}

	/* 0862 */
	.base-accordion .accordion-ttl {
		font-size: 15px;
	}

	/*.base-accordion .pbBlock.pbBlockBase {
		padding: 13px 50px 13px 55px;
	}*/

	.base-accordion .trigger .pbBlock.pbBlockBase::before {
		margin-top: 17px;
		left: 0;
		width: 35px;
		height: 35px;
	}

	.base-accordion .accordion-content::before {
		width: 35px;
		height: 35px;
		top: 12px;
		left: 4%;
	}

	.base-accordion .trigger:before,
	.base-accordion .trigger:after {
		right: 13px;
	}

	.base-accordion .accordion-content {
		font-size: 14px;
	}
	/* 0863 */
	.base-accordion .content-free:not(.blue-bg)>div>div {
		padding-right: inherit;
	}

	.base-accordion .content-free a  {
		padding: 26px 10px;
	}
    .base-accordion .content-free>div:not(.pb-handle){
      padding:inherit;
    }
    
	/* 0871 */
	.base-youtube iframe {
		width: 100%;
		height: 100%;
	}

	/* 0900 */
	.person-imagelist:not(.panel-3column):not(.base-panel)>div:not(.pb-handle) {
		flex-direction: column;
	}

	.person-imagelist .textbox>div {
		padding-left: 0;
	}

	.person-imagelist .image {
		width: 100%;
		padding-left: 0;
		margin: 0 0 17px;
	}

	.person-imagelist .image img {
		width: 100%;
	}

	.person-imagelist .textbox {
		width: 100%;
		margin: 0 auto;
		padding-left: 0;
	}

	.person-imagelist .textbox-ttl .textbox-ttl-department {
		font-size: 14px;
	}

	.person-imagelist .textbox-ttl .textbox-ttl-name .small {
		font-size: 12px;
		margin-left: 8px;
	}

	.person-imagelist.base-panel .textbox-ttl .textbox-ttl-name .small,
	.person-imagelist.panel-3column .textbox-ttl .textbox-ttl-name .small {
		margin-left: 0;
	}

	.person-imagelist .textbox-ttl .textbox-ttl-position {
		font-size: 14px;
	}

	.person-imagelist .textbox .textbox-ttl {
		margin-bottom: 13px;
	}

	.person-imagelist .textbox .textbox-txt {
		font-size: 14px;
	}

	.person-imagelist.base-panel,
	.person-imagelist.panel-3column {
		margin-top: 35px;
	}

	.person-imagelist.base-panel>div:not(.pb-handle),
	.person-imagelist.panel-3column>div:not(.pb-handle) {
		flex-direction: column;
	}

	.person-imagelist.base-panel .box,
	.person-imagelist.panel-3column .box {
		width: 100%;
		margin-top: 35px;
		padding: 0;
		margin-bottom: 0;
	}

	.person-imagelist.base-panel .box:first-child,
	.person-imagelist.panel-3column .box:first-child {
		margin-top: 0;
	}

	.person-imagelist.base-panel .box>div:not(.pb-handle),
	.person-imagelist.panel-3column .box>div:not(.pb-handle) {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
		margin: 0 auto;
		width: 100%;
	}

	.person-imagelist.base-panel .image,
	.person-imagelist.panel-3column .image {
		width: 44%;
		margin: 0;
	}

	.person-imagelist.panel-3column .textbox-ttl {
		width: 51%;
	}

	/* 0901 */
	.cv-textbox>div {
		padding: 20px 20px 16px;
	}

	.cv-textbox .cv-ttl {
		font-size: 17px;
	}

	.cv-textbox .table:not(:first-child) {
		margin-top: 16px;
		width: 100%;
	}

	.nav-page .cv-textbox .table:not(:first-child) {
		width: 100%;
	}

	.cv-textbox .table>div:not(.pb-handle) {
		flex-direction: column;
	}

	.cv-textbox .cv-button {
		width: 100%;
		margin: 0 auto 12px;
		min-width: 225px;
		padding: 0.7em 0 0.5em;
	}

	.cv-textbox table {
		padding-right: 0;
	}
	.base-section.fundPageWrap .cv-textbox table tbody,
	.base-section.fundPageWrap .cv-textbox table tr{
		display: block;
		width: 100%;
	}
	.cv-textbox table th {
		width: 73%;
		margin: 0 auto 11px;
		min-width: 245px;
	}

	.cv-textbox table td {
		padding-left: 0;
	}

	.cv-textbox .cv-link.arrow {
		font-size: 13px;
	}

	/* nav page */
	.base-section.nav-page>div {
		flex-direction: column-reverse;
	}

	.base-section.nav-page .side-nav {
		margin-top: 48px;
		margin-bottom: 48px;
	}

	.base-section.nav-page .main-content {
		width: 100%;
	}

	.base-section.nav-page .side-nav {
		width: calc(100% - 30px);
		margin-right: auto;
		margin-left: auto;
	}

	.base-section.nav-page .side-nav .main_menu {
		font-size: 15px;
	}

	.base-section.nav-page .side-nav .sub_menu br {
		display: none;
	}

	.base-section.nav-page .side-nav .nav-ttl {
		padding: 11px 18px 7px;
	}

	.base-section.nav-page .side-nav .main_menu {
		padding: 11px 17px 10px;
	}

	.base-section.nav-page .side-nav .sub_menu {
		padding-bottom: 14px;
	}

	.base-section.nav-page .side-nav .main_menu::before,
	.base-section.nav-page .side-nav .sub_menu li a span::before {
		right: 6.5%;
	}

	.base-section.nav-page .side-nav .sub_menu li a span::before {
		right: -10px;
	}
}

/* simplebox */
.cross {
	position: fixed;
	right: 0;
	top: 0;
	margin: 30px 55px 0 0;
	cursor: pointer;
	transition: 300ms all ease-in-out;
	z-index: 99;
	opacity: 1;
	will-change: transform;
}

.cross::after,
.cross::before {
	position: absolute;
	content: '';
	width: 35px;
	height: 2px;
	background: #ccc;
}

.cross::after {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.cross::before {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.cross--light::after,
.cross--light::before {
	background-color: black;
}

.cross--dark::after,
.cross--dark::before {
	background-color: white;
}

.slb {
	/* box-shadow: 2px 2px 12px 1px rgba(0, 0, 0, 0.2); */
	cursor: -webkit-zoom-in;
	cursor: zoom-in;
}

.slb--opened {
	cursor: auto;
}

.pop-in {
	-webkit-animation: pop-in 250ms;
	-moz-animation: pop-in 250ms;
	-ms-animation: pop-in 250ms;
}

.pop-out {
	-webkit-animation: pop-out 250ms;
	-moz-animation: pop-out 250ms;
	-ms-animation: pop-out 250ms;
}

#overlay {
	display: none;
	width: 100vw;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	pointer-events: none;
	cursor: pointer;
	will-change: transform;
	z-index: 1;
}

.center {
	max-height: 90%;
	max-width: 90%;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}
.zoomIcon{
  display: none;
}
@media screen and (max-width: 767px){
  .zoomImage {
    position: relative;
  }
  .pbPage .zoomImage .zoomIcon {
    display: block;
    position: absolute;
    width: 35px;
    height: 35px;
    bottom: 0;
    right: 0;
  }
}


@-webkit-keyframes pop-in {
	0% {
		opacity: 0;
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}

	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

@-webkit-keyframes pop-in {
	0% {
		opacity: 0;
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}

	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

@keyframes pop-in {
	0% {
		opacity: 0;
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}

	100% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}

@-webkit-keyframes pop-out {
	0% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}

	100% {
		opacity: 0;
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}
}

@keyframes pop-out {
	0% {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
	}

	100% {
		opacity: 0;
		-webkit-transform: scale(0.5);
		transform: scale(0.5);
	}
}