@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Poppins&display=swap");
* {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	box-sizing: border-box;
}

html {
	font-size: 16px;
	overflow-y: scroll;
}
html.sp {
	font-size: 16px !important;
}

body, th, main .contents .format > table td, td, input, select, textarea {
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
	font-family: "Noto Sans JP", sans-serif;
}

body {
	margin: 0px auto;
	color: #373A3C;
	background: #ffffff;
	overflow: hidden;
}

img {
	border: 0px;
}

a {
	text-decoration: none;
}

dl, ul, ol {
	margin: 0px;
	padding: 0px;
	list-style: none;
}

p {
	margin: 0px;
}

.clear {
	clear: both;
}

.sp .view_pc {
	display: none !important;
}

.view_sp {
	display: none !important;
}
.sp .view_sp {
	display: block !important;
}

main .contents .text ul > li a[target="_blank"]:not(.noicon):after, main .contents .text ol > li a[target="_blank"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[target="_blank"]:not(.noicon):after, main .contents .image p a[target="_blank"]:not(.noicon):after, main .contents .table > table a[target="_blank"]:not(.noicon):after, main .contents .table > p a[target="_blank"]:not(.noicon):after, .faq dd a[target="_blank"]:not(.noicon):after, .linklist a[target="_blank"]:not(.noicon):after, .simpletable a[target="_blank"]:not(.noicon):after, .dl dd a[target="_blank"]:not(.noicon):after, .download .title a[target="_blank"]:not(.noicon):after, .reportindex ul a[target="_blank"]:not(.noicon):after, main .contents .table.th_fix a[target="_blank"]:not(.noicon):after, main .contents a[target="_blank"].addlinkicon:not(.noicon):after, .regulations_list a[target="_blank"]:not(.noicon):after {
	content: "";
	position: relative;
	display: inline-block;
	top: -2px;
	width: 29px;
	height: 20px;
	vertical-align: middle;
	background: url(../images/blank.svg) no-repeat center center;
}
main .contents .text ul > li a[href$=".pdf"]:not(.noicon):after, main .contents .text ol > li a[href$=".pdf"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[href$=".pdf"]:not(.noicon):after, main .contents .image p a[href$=".pdf"]:not(.noicon):after, main .contents .table > table a[href$=".pdf"]:not(.noicon):after, main .contents .table > p a[href$=".pdf"]:not(.noicon):after, .faq dd a[href$=".pdf"]:not(.noicon):after, .linklist a[href$=".pdf"]:not(.noicon):after, .simpletable a[href$=".pdf"]:not(.noicon):after, .dl dd a[href$=".pdf"]:not(.noicon):after, .download .title a[href$=".pdf"]:not(.noicon):after, .reportindex ul a[href$=".pdf"]:not(.noicon):after, main .contents .table.th_fix a[href$=".pdf"]:not(.noicon):after, main .contents a[href$=".pdf"].addlinkicon:not(.noicon):after, .regulations_list a[href$=".pdf"]:not(.noicon):after {
	content: "";
	position: relative;
	display: inline-block;
	top: -2px;
	width: 27px;
	height: 20px;
	vertical-align: middle;
	background: url(../images/pdf.svg) no-repeat center center;
}
main .contents .text ul > li a[href$=".doc"]:not(.noicon):after, main .contents .text ol > li a[href$=".doc"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[href$=".doc"]:not(.noicon):after, main .contents .image p a[href$=".doc"]:not(.noicon):after, main .contents .table > table a[href$=".doc"]:not(.noicon):after, main .contents .table > p a[href$=".doc"]:not(.noicon):after, .faq dd a[href$=".doc"]:not(.noicon):after, .linklist a[href$=".doc"]:not(.noicon):after, .simpletable a[href$=".doc"]:not(.noicon):after, .dl dd a[href$=".doc"]:not(.noicon):after, .download .title a[href$=".doc"]:not(.noicon):after, .reportindex ul a[href$=".doc"]:not(.noicon):after, main .contents .table.th_fix a[href$=".doc"]:not(.noicon):after, main .contents a[href$=".doc"].addlinkicon:not(.noicon):after, .regulations_list a[href$=".doc"]:not(.noicon):after, main .contents .text ul > li a[href$=".docx"]:not(.noicon):after, main .contents .text ol > li a[href$=".docx"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[href$=".docx"]:not(.noicon):after, main .contents .image p a[href$=".docx"]:not(.noicon):after, main .contents .table > table a[href$=".docx"]:not(.noicon):after, main .contents .table > p a[href$=".docx"]:not(.noicon):after, .faq dd a[href$=".docx"]:not(.noicon):after, .linklist a[href$=".docx"]:not(.noicon):after, .simpletable a[href$=".docx"]:not(.noicon):after, .dl dd a[href$=".docx"]:not(.noicon):after, .download .title a[href$=".docx"]:not(.noicon):after, .reportindex ul a[href$=".docx"]:not(.noicon):after, main .contents .table.th_fix a[href$=".docx"]:not(.noicon):after, main .contents a[href$=".docx"].addlinkicon:not(.noicon):after, .regulations_list a[href$=".docx"]:not(.noicon):after {
	content: "";
	position: relative;
	display: inline-block;
	top: -2px;
	width: 30px;
	height: 20px;
	vertical-align: middle;
	background: url(../images/doc.svg) no-repeat center center;
}
main .contents .text ul > li a[href$=".ppt"]:not(.noicon):after, main .contents .text ol > li a[href$=".ppt"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[href$=".ppt"]:not(.noicon):after, main .contents .image p a[href$=".ppt"]:not(.noicon):after, main .contents .table > table a[href$=".ppt"]:not(.noicon):after, main .contents .table > p a[href$=".ppt"]:not(.noicon):after, .faq dd a[href$=".ppt"]:not(.noicon):after, .linklist a[href$=".ppt"]:not(.noicon):after, .simpletable a[href$=".ppt"]:not(.noicon):after, .dl dd a[href$=".ppt"]:not(.noicon):after, .download .title a[href$=".ppt"]:not(.noicon):after, .reportindex ul a[href$=".ppt"]:not(.noicon):after, main .contents .table.th_fix a[href$=".ppt"]:not(.noicon):after, main .contents a[href$=".ppt"].addlinkicon:not(.noicon):after, .regulations_list a[href$=".ppt"]:not(.noicon):after, main .contents .text ul > li a[href$=".pptx"]:not(.noicon):after, main .contents .text ol > li a[href$=".pptx"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[href$=".pptx"]:not(.noicon):after, main .contents .image p a[href$=".pptx"]:not(.noicon):after, main .contents .table > table a[href$=".pptx"]:not(.noicon):after, main .contents .table > p a[href$=".pptx"]:not(.noicon):after, .faq dd a[href$=".pptx"]:not(.noicon):after, .linklist a[href$=".pptx"]:not(.noicon):after, .simpletable a[href$=".pptx"]:not(.noicon):after, .dl dd a[href$=".pptx"]:not(.noicon):after, .download .title a[href$=".pptx"]:not(.noicon):after, .reportindex ul a[href$=".pptx"]:not(.noicon):after, main .contents .table.th_fix a[href$=".pptx"]:not(.noicon):after, main .contents a[href$=".pptx"].addlinkicon:not(.noicon):after, .regulations_list a[href$=".pptx"]:not(.noicon):after {
	content: "";
	position: relative;
	display: inline-block;
	top: -2px;
	width: 30px;
	height: 20px;
	vertical-align: middle;
	background: url(../images/ppt.svg) no-repeat center center;
}
main .contents .text ul > li a[href$=".xls"]:not(.noicon):after, main .contents .text ol > li a[href$=".xls"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[href$=".xls"]:not(.noicon):after, main .contents .image p a[href$=".xls"]:not(.noicon):after, main .contents .table > table a[href$=".xls"]:not(.noicon):after, main .contents .table > p a[href$=".xls"]:not(.noicon):after, .faq dd a[href$=".xls"]:not(.noicon):after, .linklist a[href$=".xls"]:not(.noicon):after, .simpletable a[href$=".xls"]:not(.noicon):after, .dl dd a[href$=".xls"]:not(.noicon):after, .download .title a[href$=".xls"]:not(.noicon):after, .reportindex ul a[href$=".xls"]:not(.noicon):after, main .contents .table.th_fix a[href$=".xls"]:not(.noicon):after, main .contents a[href$=".xls"].addlinkicon:not(.noicon):after, .regulations_list a[href$=".xls"]:not(.noicon):after, main .contents .text ul > li a[href$=".xlsx"]:not(.noicon):after, main .contents .text ol > li a[href$=".xlsx"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[href$=".xlsx"]:not(.noicon):after, main .contents .image p a[href$=".xlsx"]:not(.noicon):after, main .contents .table > table a[href$=".xlsx"]:not(.noicon):after, main .contents .table > p a[href$=".xlsx"]:not(.noicon):after, .faq dd a[href$=".xlsx"]:not(.noicon):after, .linklist a[href$=".xlsx"]:not(.noicon):after, .simpletable a[href$=".xlsx"]:not(.noicon):after, .dl dd a[href$=".xlsx"]:not(.noicon):after, .download .title a[href$=".xlsx"]:not(.noicon):after, .reportindex ul a[href$=".xlsx"]:not(.noicon):after, main .contents .table.th_fix a[href$=".xlsx"]:not(.noicon):after, main .contents a[href$=".xlsx"].addlinkicon:not(.noicon):after, .regulations_list a[href$=".xlsx"]:not(.noicon):after {
	content: "";
	position: relative;
	display: inline-block;
	top: -2px;
	width: 30px;
	height: 20px;
	vertical-align: middle;
	background: url(../images/xls.svg) no-repeat center center;
}
main .contents .text ul > li a[href$=".zip"]:not(.noicon):after, main .contents .text ol > li a[href$=".zip"]:not(.noicon):after, main .contents .text p:not(.image):not(.caption) a[href$=".zip"]:not(.noicon):after, main .contents .image p a[href$=".zip"]:not(.noicon):after, main .contents .table > table a[href$=".zip"]:not(.noicon):after, main .contents .table > p a[href$=".zip"]:not(.noicon):after, .faq dd a[href$=".zip"]:not(.noicon):after, .linklist a[href$=".zip"]:not(.noicon):after, .simpletable a[href$=".zip"]:not(.noicon):after, .dl dd a[href$=".zip"]:not(.noicon):after, .download .title a[href$=".zip"]:not(.noicon):after, .reportindex ul a[href$=".zip"]:not(.noicon):after, main .contents .table.th_fix a[href$=".zip"]:not(.noicon):after, main .contents a[href$=".zip"].addlinkicon:not(.noicon):after, .regulations_list a[href$=".zip"]:not(.noicon):after {
	content: "";
	position: relative;
	display: inline-block;
	top: -2px;
	width: 27px;
	height: 20px;
	vertical-align: middle;
	background: url(../images/zip.svg) no-repeat center center;
}

.loading * {
	-webkit-transition: 0ms !important;
	transition: 0ms !important;
}
.loading *:before, .loading *:after {
	-webkit-transition: 0ms !important;
	transition: 0ms !important;
}

body {
	margin-top: 170px;
}
.tablet body {
	margin-top: 70px !important;
}

header {
	display: block;
	position: fixed;
	width: 100%;
	height: 120px;
	top: 0px;
	background: #ffffff;
	z-index: 1000;
	transition: height 600ms;
}
.shortheader:not(.searchopen) header {
	height: 70px;
}
.tablet header {
	height: 70px !important;
}

#logo {
	position: fixed;
	display: flex;
	flex-direction: column;
	justify-content: center;
	gap: 15px;
	top: 0px;
	left: 30px;
	height: 120px;
	transition: height 600ms, gap 600ms;
	z-index: 1010;
}
.shortheader:not(.searchopen) #logo {
	gap: 0px;
	height: 70px;
}
.spc #logo {
	left: 20px;
}
.tablet #logo {
	left: 10px;
	width: 40%;
	max-width: 200px;
	height: 70px !important;
	gap: 0px !important;
}
#logo a {
	display: block;
	width: 220px;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#logo a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.tablet #logo a {
	width: 100%;
	max-width: 200px;
}
#logo a img {
	display: block;
	width: 100%;
	height: auto;
}
#logo p {
	height: 13px;
	font-size: 12.8px;
	font-size: 0.8rem;
	line-height: 12.8px;
	line-height: 0.8rem;
	font-weight: 500;
	text-align: center;
	transition: height 600ms, opacity 600ms;
}
.shortheader:not(.searchopen) #logo p, .tablet #logo p {
	height: 0px;
	opacity: 0;
}

#globalnavi {
	position: absolute;
	bottom: 0px;
	right: 90px;
	z-index: 895;
}
.tablet #globalnavi {
	display: none;
}
#globalnavi ul {
	display: flex;
	height: 50px;
	transition: height 600ms;
}
.shortheader:not(.searchopen) #globalnavi ul {
	height: 70px;
}
#globalnavi ul li {
	position: relative;
	display: flex;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 19.8px;
	line-height: 1.2375rem;
}
#globalnavi ul li a {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	color: #373A3C;
	font-weight: 700;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#globalnavi ul li a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#globalnavi ul li a span {
	display: block;
	padding: 3px 30px;
}
.pc #globalnavi ul li a span {
	padding: 3px 20px;
}
#globalnavi ul li:after {
	content: "";
	display: block;
	position: absolute;
	width: calc(100% - 60px);
	height: 0px;
	bottom: 0px;
	left: 30px;
	background: #2790B7;
	transition: 200ms 0ms;
}
.pc #globalnavi ul li:after {
	width: calc(100% - 40px);
	left: 20px;
}
.megamenuopen:not(.menuopen) #globalnavi ul li.mmcurrent:after {
	height: 8px;
	transition: 300ms 100ms;
}
#globalnavi ul li + li:before {
	content: "";
	display: block;
	position: absolute;
	width: 2px;
	height: 30px;
	top: 50%;
	left: 0px;
	margin-top: -15px;
	background: #CDD6DD;
}

#submenu {
	position: absolute;
	display: flex;
	align-items: flex-end;
	bottom: 65px;
	right: 120px;
	z-index: 895;
	transform: translateY(50%);
	transition: bottom 600ms;
}
.shortheader:not(.searchopen) #submenu {
	bottom: 90px;
}
.tablet #submenu {
	bottom: 35px;
	right: 90px;
}
#submenu div + div {
	margin-left: 10px;
}
#submenu > ul {
	display: flex;
	align-items: center;
	gap: 20px;
	height: 30px;
	margin-right: 10px;
}
.tablet #submenu > ul {
	display: none;
}
#submenu > ul a {
	padding: 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
	color: #373A3C;
	font-weight: 500;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#submenu > ul a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#submenu > ul li + li {
	position: relative;
}
#submenu > ul li + li:before {
	content: "";
	display: block;
	position: absolute;
	width: 1px;
	height: 18px;
	top: 50%;
	left: -10px;
	margin-top: -9px;
	background: #CDD6DD;
}
#submenu .language {
	position: relative;
}
#submenu .language > a {
	position: relative;
	display: block;
	width: 37px;
	height: 30px;
	text-indent: -10000px;
	background: url(../images/language.svg) no-repeat center center #004B9E;
	background-size: 18px;
	border-radius: 5px;
	overflow: hidden;
	z-index: 1010;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#submenu .language > a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#submenu .language .languagelist {
	position: absolute;
	min-width: 100px;
	padding: 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
	font-weight: 500;
	color: #98A6B5;
	background: #ffffff;
	top: 47px;
	right: -12px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
	z-index: 1000;
	opacity: 0;
	pointer-events: none;
	transition: transform 400ms, opacity 400ms;
	transform: scale(0);
	transform-origin: 70px top;
}
.languageopen #submenu .language .languagelist {
	opacity: 1;
	transform: scale(1);
	pointer-events: auto;
}
#submenu .language .languagelist:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 15px;
	top: -15px;
	left: 0px;
	background: transparent;
}
#submenu .language .languagelist:after {
	content: "";
	display: block;
	position: absolute;
	width: 32px;
	height: 20px;
	top: -20px;
	right: 13px;
	background: url(../images/popwindowhead.png) no-repeat center center;
}
#submenu .language .languagelist a {
	color: #373A3C;
}
#submenu .language .languagelist a:hover {
	border-bottom: 1px solid #2790B7;
}
#submenu .language .languagelist li {
	padding: 10px 0px;
}
#submenu .language .languagelist li + li {
	border-top: 1px dotted #CDD6DD;
}
#submenu .contact a {
	position: relative;
	display: block;
	width: 37px;
	height: 30px;
	text-indent: -10000px;
	background: url(../images/contact.svg) no-repeat center center #004B9E;
	border-radius: 5px;
	overflow: hidden;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#submenu .contact a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#submenu .search a {
	position: relative;
	display: block;
	width: 37px;
	height: 30px;
	text-indent: -10000px;
	background: none no-repeat center center #004B9E;
	border-radius: 5px;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#submenu .search a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#submenu .search a:before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0%;
	left: 0%;
	background: url(../images/searchw.svg) no-repeat center center;
	background-size: 18px;
	opacity: 1;
	transform: scale(1);
	transition: 400ms 200ms;
}
#submenu .search a:after {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0%;
	left: 0%;
	background: url(../images/close.svg) no-repeat center center;
	background-size: 18px;
	opacity: 0;
	transform: scale(0.25);
	transition: 400ms;
}
#submenu .search a.open:before {
	opacity: 0;
	transform: scale(1.25);
	transition: 400ms;
}
#submenu .search a.open:after {
	opacity: 1;
	transform: scale(1);
	transition: 400ms 200ms;
}

#menu {
	position: fixed;
	right: 0px;
	top: 0px;
	z-index: 1010;
}
#menu a {
	position: relative;
	display: block;
	width: 70px;
	height: 70px;
	text-indent: -10000px;
	background: #004B9E;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	overflow: hidden;
}
#menu a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#menu a:before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0%;
	left: 0%;
	background: url(../images/menu.svg) no-repeat center center;
	opacity: 1;
	transform: scale(1);
	transition: 400ms 200ms;
}
#menu a:after {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	top: 0%;
	left: 0%;
	background: url(../images/close.svg) no-repeat center center;
	opacity: 0;
	transform: scale(0.25);
	transition: 400ms;
}
#menu a.open:before {
	opacity: 0;
	transform: scale(1.25);
	transition: 400ms;
}
#menu a.open:after {
	opacity: 1;
	transform: scale(1);
	transition: 400ms 200ms;
}

#quicklink {
	position: fixed;
	display: flex;
	right: 0px;
	top: 170px;
	background: #004B9E;
	border-radius: 20px 0px 0px 20px;
	transition: transform 400ms;
	z-index: 100;
}
.sp #quicklink {
	width: 100%;
	top: auto;
	bottom: 0px;
	border-radius: 0px;
}
#quicklink .title {
	position: relative;
	display: flex;
	width: 85px;
	z-index: 10;
}
.sp #quicklink .title {
	display: none;
}
#quicklink .title a {
	display: flex;
	justify-content: center;
	width: 100%;
	padding: 10px 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 16px;
	line-height: 1rem;
	font-weight: 700;
	color: #fff;
	writing-mode: vertical-rl;
	border-radius: 20px 0px 0px 20px;
	transition: background 400ms;
}
.sp #quicklink .title a {
	padding-bottom: 20px;
	writing-mode: inherit;
}
#quicklink .title a:hover {
	background: rgba(0, 0, 0, 0.2);
}
#quicklink .title a:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	margin-top: -7.5px;
	left: 20px;
	border: 7.5px solid transparent;
	border-right: 0px;
	border-left: 10px solid #fff;
	transition: transform 600ms;
}
.sp #quicklink .title a:before {
	top: auto;
	bottom: 5px;
	left: 50%;
	margin-left: -5px;
	margin-top: 0px;
	transform: rotate(90deg);
}
#quicklink.close {
	transform: translateX(calc(100% - 85px));
}
.sp #quicklink.close {
	transform: translateX(0);
}
#quicklink.close .title a:before {
	transform: rotateY(180deg);
}
#quicklink .link {
	position: relative;
}
.sp #quicklink .link {
	width: 100%;
}
#quicklink .link:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(55, 58, 60, 0.3);
	mix-blend-mode: multiply;
}
#quicklink .link ul {
	display: flex;
	flex-direction: column;
	height: 100%;
}
.sp #quicklink .link ul {
	flex-direction: row;
}
#quicklink .link ul li {
	height: 100%;
}
.sp #quicklink .link ul li {
	width: 100%;
}
#quicklink .link ul li + li {
	position: relative;
}
#quicklink .link ul li + li:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 1px;
	top: 0px;
	left: 30px;
	background: #fff;
}
.sp #quicklink .link ul li + li:before {
	width: 1px;
	height: 100%;
	left: 0px;
}
#quicklink .link ul a {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 60px;
	padding: 5px 65px 5px 30px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: bold;
	color: #fff;
	transition: background 400ms;
}
.sp #quicklink .link ul a {
	justify-content: center;
	padding: 5px;
	text-align: center;
}
#quicklink .link ul a:before {
	content: "";
	display: block;
	position: absolute;
	right: 40px;
	width: 18px;
	height: 100%;
	background: url(../images/more.svg) no-repeat center center;
	background-size: 18px;
}
.sp #quicklink .link ul a:before {
	display: none;
}
#quicklink .link ul a:hover {
	background: #4C81BB;
}

#searchpanel {
	position: fixed;
	top: 120px;
	right: 0px;
	width: 100%;
	max-height: calc(100vh - 120px);
	padding: 10px 0px 40px;
	background: #2790B7;
	z-index: 1000;
	opacity: 0;
	transform: scale(1.1);
	transition: 600ms;
	pointer-events: none;
	overflow: auto;
}
.tablet #searchpanel {
	top: 70px;
	max-height: calc(100vh - 70px);
}
.searchopen #searchpanel {
	transform: scale(1);
	opacity: 1;
	pointer-events: auto;
}
#searchpanel > div {
	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 0px 20px;
}
.sp #searchpanel > div {
	padding: 0px 10px;
}
#searchpanel > div > div {
	padding: 30px 0px 0px;
}
#searchpanel > div .keywordsearch {
	position: relative;
	display: table;
	width: 100%;
}
.sp #searchpanel > div .keywordsearch {
	display: block;
}
#searchpanel > div .keywordsearch > * {
	display: table-cell;
	vertical-align: middle;
}
.sp #searchpanel > div .keywordsearch > * {
	display: block;
}
#searchpanel > div .keywordsearch .title {
	width: calc(5rem + 30px);
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 26.4px;
	line-height: 1.65rem;
	font-family: 'Poppins', sans-serif;
	color: #ffffff;
}
.sp #searchpanel > div .keywordsearch .title {
	margin-bottom: 5px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
}
#searchpanel > div .keywordsearch .input {
	position: relative;
	background: #ffffff;
}
#searchpanel > div .keywordsearch input {
	width: 100%;
	height: 60px;
	padding: 0px 60px 0px 15px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 60px;
	border: 0px;
}
.tablet #searchpanel > div .keywordsearch input {
	height: 40px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 40px;
}
#searchpanel > div .keywordsearch input::placeholder {
	color: #CDD6DD;
}
#searchpanel > div .keywordsearch input:-ms-input-placeholder {
	color: #CDD6DD;
}
#searchpanel > div .keywordsearch input::-ms-input-placeholder {
	color: #CDD6DD;
}
#searchpanel > div .keywordsearch button {
	position: absolute;
	width: 60px;
	height: 60px;
	right: 0px;
	top: 0px;
	text-indent: -10000px;
	background: url(../images/search.svg) no-repeat center center;
	background-size: 24px;
	border: 0px;
	cursor: pointer;
}
.tablet #searchpanel > div .keywordsearch button {
	height: 40px;
}
#searchpanel > div .keywordsearch button:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: url(../images/searchon.svg) no-repeat center center;
	background-size: 24px;
	opacity: 0;
	z-index: 1;
	transition: opacity 200ms;
}
#searchpanel > div .keywordsearch button:hover:before {
	opacity: 1;
}
#searchpanel > div .tagsearch {
	margin-left: calc(5rem + 30px);
}
.sp #searchpanel > div .tagsearch {
	margin-left: 0px;
}
#searchpanel > div .tagsearch .tagcloud a {
	color: #2790B7;
	background: #ffffff;
}
#searchpanel > div .tagsearch .tagcloud a:hover {
	color: #ffffff;
	background: #004B9E;
}
#searchpanel > div .searchpanelmenu {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 20px;
	padding: 0px;
}
#searchpanel > div .searchpanelmenu .index {
	width: calc((100% - 20px) / 2);
	margin-top: 20px;
	padding: 20px 20px 10px;
	background: #ffffff;
}
.sp #searchpanel > div .searchpanelmenu .index {
	width: 100%;
	padding: 15px 10px 10px;
}
#searchpanel > div .searchpanelmenu .index.size2 {
	width: 100%;
}
#searchpanel > div .searchpanelmenu .index.size2 li {
	width: calc((100% - 137px) / 4);
}
#searchpanel > div .searchpanelmenu .index .title {
	margin-bottom: 20px;
	padding-bottom: 15px;
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 26.4px;
	line-height: 1.65rem;
	font-weight: 500;
	text-align: center;
	border-bottom: 1px solid #98A6B5;
}
.sp #searchpanel > div .searchpanelmenu .index .title {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 19.8px;
	line-height: 1.2375rem;
}
#searchpanel > div .searchpanelmenu .index ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0px -5px 0px 0px;
}
.sp #searchpanel > div .searchpanelmenu .index ul {
	display: block;
}
#searchpanel > div .searchpanelmenu .index li {
	margin-bottom: 20px;
	width: calc((100% - 71px) / 2);
	margin-left: 33px;
	text-indent: -33px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
}
.sp #searchpanel > div .searchpanelmenu .index li {
	margin-bottom: 10px;
	width: auto;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
#searchpanel > div .searchpanelmenu .index li:before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 1px;
	margin-left: 20px;
	margin-right: 8px;
	background: #373A3C;
	vertical-align: middle;
}
#searchpanel > div .searchpanelmenu .index li * {
	text-indent: 0px;
}
#searchpanel > div .searchpanelmenu .index a {
	color: #373A3C;
}
#searchpanel > div .searchpanelmenu .index a:hover {
	border-bottom: 1px solid #2790B7;
}

#fullmenu {
	position: fixed;
	right: 0px;
	width: 100%;
	top: 120px;
	height: calc(100vh - 120px);
	background: #ffffff;
	border-top: 1px solid #CDD6DD;
	z-index: 1001;
	opacity: 0;
	-webkit-transform: translateX(40%);
	transform: translateX(40%);
	-webkit-transition: opacity 600ms, -webkit-transform 600ms;
	transition: opacity 600ms, transform 600ms, top 600ms, height 600ms;
	pointer-events: none;
	overflow: auto;
}
.shortheader #fullmenu {
	top: 70px;
	height: calc(100vh - 70px);
}
.tablet #fullmenu {
	top: 70px;
	height: calc(100vh - 70px);
}
.sp #fullmenu {
	color: #ffffff;
	background: #707F89;
}
.menuopen #fullmenu {
	-webkit-transform: translateX(0%);
	transform: translateX(0%);
	opacity: 1;
	pointer-events: auto;
}
#fullmenu .main {
	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 40px 20px 20px;
}
.sp #fullmenu .main {
	padding: 20px 10px 10px;
}
.sp #fullmenu .main {
	padding: 0px;
}
#fullmenu .menu > div {
	display: flex;
	flex-wrap: wrap;
	margin: -40px -5px 0px -40px;
}
.sp #fullmenu .menu > div {
	display: block;
	margin: 0px;
}
#fullmenu .menu dl {
	width: calc((100% - 125px) / 3);
	margin-top: 40px;
	margin-left: 40px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.sp #fullmenu .menu dl {
	width: 100%;
	margin: 0px;
}
#fullmenu .menu dt {
	font-weight: bold;
}
.sp #fullmenu .menu dt {
	display: flex;
	flex-wrap: wrap;
	margin-top: 0px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 25.2px;
	line-height: 1.575rem;
	font-weight: 500;
	border-bottom: 1px solid #ffffff;
}
#fullmenu .menu dt + dt {
	margin-top: 20px;
}
#fullmenu .menu dd {
	margin: 10px 0px 0px 1em;
	padding: 0px;
}
.sp #fullmenu .menu dd {
	display: none;
	margin: 0px;
	background: #98A6B5;
	border-bottom: 1px solid #ffffff;
}
.sp #fullmenu .menu dd li {
	display: flex;
	flex-wrap: wrap;
	margin-top: 0px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 25.2px;
	line-height: 1.575rem;
	font-weight: 500;
	border-bottom: 1px dotted #ffffff;
}
.sp #fullmenu .menu dd li:last-child {
	border-bottom: 0px;
}
.sp #fullmenu .menu dd li a:not(.sw) {
	padding-left: 30px;
}
html:not(.sp) #fullmenu .menu dd {
	display: block !important;
}
#fullmenu .menu a {
	color: #373A3C;
}
#fullmenu .menu a:hover {
	border-bottom: 1px solid #2790B7;
}
#fullmenu .menu .sw {
	display: none;
}
.sp #fullmenu .menu a:not(.sw) {
	display: block;
	flex-grow: 1;
	padding: 15px 10px;
	color: #ffffff;
}
.sp #fullmenu .menu a:not(.sw):hover {
	color: #ffffff;
	font-weight: 500;
	border-bottom: 0px;
}
.sp #fullmenu .menu .sw {
	position: relative;
	display: block;
	width: 60px;
	cursor: pointer;
	overflow: hidden;
}
.sp #fullmenu .menu .sw:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0%;
	background: url(../images/plus.svg) no-repeat center center;
	transition: top 400ms;
}
.sp #fullmenu .menu .sw:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: -100%;
	background: url(../images/minus.svg) no-repeat center center;
	transition: top 400ms;
}
.sp #fullmenu .menu .sw.open:before {
	top: 100%;
}
.sp #fullmenu .menu .sw.open:after {
	top: 0%;
}
#fullmenu .menu ul ul {
	display: none;
}
html:not(.sp) #fullmenu .menu ul ul {
	display: none !important;
}
.sp #fullmenu .menu ul ul {
	width: 100%;
	border-top: 1px solid #ffffff;
}
.sp #fullmenu .fullmenufooter {
	width: 100%;
	max-width: 800px;
	margin-top: 40px;
	padding: 0px 10px 10px;
}
#fullmenu .fullmenufooter > div + div {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #CDD6DD;
}
.sp #fullmenu .fullmenufooter > div + div {
	padding-top: 0px;
	border-top: 0px;
}
#fullmenu .fullmenufooter .fullmenufootersearch dl {
	display: flex;
}
.sp #fullmenu .fullmenufooter .fullmenufootersearch dl {
	display: block;
}
#fullmenu .fullmenufooter .fullmenufootersearch dt {
	font-size: 16px;
	font-size: 1rem;
	line-height: 50px;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
}
.sp #fullmenu .fullmenufooter .fullmenufootersearch dt {
	line-height: 1;
}
#fullmenu .fullmenufooter .fullmenufootersearch dd {
	margin-left: 20px;
	width: 100%;
}
.sp #fullmenu .fullmenufooter .fullmenufootersearch dd {
	margin-top: 10px;
	margin-left: 0px;
}
#fullmenu .fullmenufooter .fullmenufootersearch .tagcloud {
	margin-top: 30px !important;
}
.sp #fullmenu .fullmenufooter .fullmenufootersearch .tagcloud {
	margin-top: 20px !important;
}
#fullmenu .fullmenufooter .fullmenufooterutility {
	padding: 40px 0px;
}
.sp #fullmenu .fullmenufooter .fullmenufooterutility {
	padding: 20px 0px;
}
#fullmenu .fullmenufooter .fullmenufooterutility .list > ul {
	display: flex;
	justify-content: space-around;
}
.sp #fullmenu .fullmenufooter .fullmenufooterutility .list > ul {
	flex-wrap: wrap;
}
#fullmenu .fullmenufooter .fullmenufooterutility .list > ul > li {
	margin-left: 15px;
	margin-right: 15px;
}
.sp #fullmenu .fullmenufooter .fullmenufooterutility .list > ul > li {
	margin-left: 5px;
	margin-right: 5px;
}
#fullmenu .fullmenufooter .fullmenufooterutility li:not(.spfacebook):not(.border) a {
	display: inline-block;
}
#fullmenu .fullmenufooter .fullmenufooterutility li:not(.spfacebook):not(.border) a .image {
	display: block;
}
#fullmenu .fullmenufooter .fullmenufooterutility li:not(.spfacebook):not(.border) a .image img {
	width: 100%;
	max-width: 120px;
	height: auto;
	margin: auto;
	transition: transform 400ms;
}
.sp #fullmenu .fullmenufooter .fullmenufooterutility li:not(.spfacebook):not(.border) a .image img {
	max-width: 80px;
}
#fullmenu .fullmenufooter .fullmenufooterutility li:not(.spfacebook):not(.border) a:hover .image img {
	transform: scale(1.15);
}
#fullmenu .fullmenufooter .fullmenufooterutility li:not(.spfacebook):not(.border) a .title {
	display: block;
	margin-top: 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
	color: #373A3C;
	text-align: center;
}
.sp #fullmenu .fullmenufooter .fullmenufooterutility li:not(.spfacebook):not(.border) a .title {
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 18px;
	line-height: 1.125rem;
	color: #ffffff;
}
#fullmenu .fullmenufooter .fullmenufooterutility li.border {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28.8135593220339%;
	padding: 15px;
	border: 1px solid #CDD6DD;
}
.sp #fullmenu .fullmenufooter .fullmenufooterutility li.border {
	width: 80%;
	margin-top: 20px;
	padding: 20px 15px;
	background: #ffffff;
}
#fullmenu .fullmenufooter .fullmenufooterutility li.border dl {
	display: flex;
}
#fullmenu .fullmenufooter .fullmenufooterutility li.border dl dt {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: bold;
	color: #373A3C;
}
#fullmenu .fullmenufooter .fullmenufooterutility li.border dl dd {
	margin: 0px;
}
#fullmenu .fullmenufooter .fullmenufooterutility li.border ul {
	display: flex;
}
#fullmenu .fullmenufooter .fullmenufooterutility li.border ul > li {
	margin-left: 20px;
}
#fullmenu .fullmenufooter .fullmenufooterutility li.border a {
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#fullmenu .fullmenufooter .fullmenufooterutility li.border a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#fullmenu .fullmenufooter .fullmenufootertools {
	overflow: hidden;
}
.sp #fullmenu .fullmenufooter .fullmenufootertools {
	color: #ffffff;
}
#fullmenu .fullmenufooter .fullmenufootertools ul {
	float: left;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	font-weight: 500;
}
#fullmenu .fullmenufooter .fullmenufootertools ul li {
	position: relative;
	float: left;
}
.sp #fullmenu .fullmenufooter .fullmenufootertools ul li {
	float: none;
}
#fullmenu .fullmenufooter .fullmenufootertools ul li + li {
	margin-left: 80px;
}
.sp #fullmenu .fullmenufooter .fullmenufootertools ul li + li {
	margin-top: 10px;
	margin-left: 0px;
}
#fullmenu .fullmenufooter .fullmenufootertools ul li + li:before {
	position: absolute;
	content: "";
	display: block;
	width: 1px;
	height: 1em;
	top: 50%;
	margin-top: -0.5em;
	left: -40px;
	background: #373A3C;
}
#fullmenu .fullmenufooter .fullmenufootertools ul a {
	color: #373A3C;
}
#fullmenu .fullmenufooter .fullmenufootertools ul a:hover {
	border-bottom: 1px solid #2790B7;
}
.sp #fullmenu .fullmenufooter .fullmenufootertools ul a {
	color: #ffffff;
}
#fullmenu .fullmenufooter .fullmenufootertools p {
	float: right;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 20px;
	color: #707F89;
	font-family: 'Poppins', sans-serif;
}
.sp #fullmenu .fullmenufooter .fullmenufootertools p {
	color: #ffffff;
	margin-top: 15px;
}

#breadcrumbs {
	position: fixed;
	display: flex;
	top: 120px;
	width: 100%;
	background: #F0F3F5;
	transition: top 600ms;
	z-index: 995;
}
.shortheader #breadcrumbs {
	top: 70px;
}
.tablet #breadcrumbs {
	position: static;
	min-height: 40px;
}
#breadcrumbs > ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	min-height: 50px;
	align-items: center;
	width: 100%;
	padding: 6px 30px;
	font-size: 0;
}
.sp #breadcrumbs > ul {
	padding: 3px 10px;
	justify-content: flex-start;
}
#breadcrumbs > ul > li {
	position: relative;
	display: inline-block;
	margin: 2px 0px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
	font-weight: 500;
	color: #98A6B5;
	vertical-align: middle;
}
.sp #breadcrumbs > ul > li {
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 13.2px;
	line-height: 0.825rem;
}
#breadcrumbs > ul > li + li:before {
	content: "";
	position: relative;
	display: inline-block;
	width: 2px;
	height: 1em;
	margin: 0px 12px;
	background: #98A6B5;
	vertical-align: middle;
	transform: skew(-20deg);
}
#breadcrumbs > ul > li.home a {
	display: inline-block;
	width: 16px;
	height: 1em;
	text-indent: -10000px;
	background: url(../images/bchome.svg) no-repeat center center;
	background-size: auto 100%;
	vertical-align: middle;
	overflow: hidden;
}
.sp #breadcrumbs > ul > li.home a {
	width: 15px;
	height: 12px;
}
#breadcrumbs > ul > li:not(.home) a {
	color: #373A3C;
}
#breadcrumbs > ul > li:not(.home) a:hover {
	border-bottom: 1px solid #2790B7;
}
#breadcrumbs > ul > li.home a {
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#breadcrumbs > ul > li.home a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#breadcrumbs > ul > li.view .bcmenu > div {
	opacity: 1;
	transform: scale(1);
	pointer-events: auto;
}
#breadcrumbs > ul > li.bcmenusw {
	padding-right: 20px;
}
.sp #breadcrumbs > ul > li.bcmenusw {
	padding-right: 0px;
}
#breadcrumbs > ul > li.bcmenusw:after {
	content: "";
	position: absolute;
	display: block;
	width: 15px;
	height: 15px;
	right: 0px;
	bottom: 0px;
	background: url(../images/moreb.svg) center center;
	transform: rotateX(0deg) rotateZ(90deg);
	transition: transform 400ms;
}
.sp #breadcrumbs > ul > li.bcmenusw:after {
	display: none;
}
#breadcrumbs > ul > li.view.bcmenusw:after {
	transform: rotateX(180deg) rotateZ(90deg);
}
#breadcrumbs .bcmenu {
	position: relative;
}
#breadcrumbs .bcmenu > div {
	position: absolute;
	background: #ffffff;
	top: 10px;
	left: 20px;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
	z-index: 1000;
	opacity: 0;
	pointer-events: none;
	transition: transform 400ms, opacity 400ms;
	transform: scale(0);
	transform-origin: 30px top;
}
.sp #breadcrumbs .bcmenu > div {
	display: none;
}
#breadcrumbs .bcmenu > div:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 10px;
	top: -10px;
	left: 0px;
	background: transparent;
}
#breadcrumbs .bcmenu > div:after {
	content: "";
	display: block;
	position: absolute;
	width: 32px;
	height: 20px;
	top: -20px;
	left: 13px;
	background: url(../images/popwindowhead.png) no-repeat center center;
}
#breadcrumbs .bcmenu > div > ul {
	width: calc(17em + 20px);
	max-height: calc(100vh - 250px);
	padding: 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
	color: #98A6B5;
	background: #ffffff;
	overflow: auto;
}
#breadcrumbs .bcmenu > div > ul ul {
	display: none;
}
#breadcrumbs .bcmenu a {
	color: #373A3C;
}
#breadcrumbs .bcmenu a:hover {
	border-bottom: 1px solid #2790B7;
}
#breadcrumbs .bcmenu li {
	padding: 10px 0px;
}
#breadcrumbs .bcmenu li + li {
	border-top: 1px dotted #CDD6DD;
}

#megamenubg {
	position: fixed;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.2);
	pointer-events: none;
	z-index: 997;
	transition: 400ms;
	opacity: 0;
}
.sp #megamenubg {
	display: none;
}
.megamenuopen #megamenubg {
	opacity: 1;
	pointer-events: auto;
}

#megamenu {
	position: fixed;
	top: 120px;
	width: 100%;
	padding: 40px 20px;
	background: #2790B7;
	pointer-events: none;
	z-index: 998;
	transform: translateY(-50%);
	transition: 400ms, top 600ms;
	opacity: 0;
}
.shortheader #megamenu {
	top: 70px;
}
.sp #megamenu {
	display: none;
}
.megamenuopen #megamenu {
	opacity: 1;
	transform: translateY(0%);
	pointer-events: auto;
}
#megamenu .mm {
	position: absolute;
	display: flex;
	gap: 40px;
	width: calc(100% - min(200px, 200/1640*100vw));
	max-width: 1920px;
	margin: auto;
	left: 50%;
	top: 40px;
	opacity: 0;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: opacity 0ms, top 0ms;
	transition: opacity 200ms, top 0ms;
	pointer-events: none;
}
#megamenu .mm.show {
	opacity: 1;
	-webkit-transition: opacity 400ms 200ms;
	transition: opacity 400ms 200ms;
	z-index: 10;
	pointer-events: auto;
}
#megamenu .mm dl {
	width: 100%;
}
#megamenu .mm dl.related {
	flex-shrink: 0;
	width: 25%;
}
#megamenu .mm dt {
	position: relative;
	margin-top: 2rem;
	margin-bottom: 20px;
	padding-bottom: 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 700;
	color: #fff;
	border-bottom: 1px dotted #fff;
}
#megamenu .mm dt strong {
	position: absolute;
	bottom: calc(100% + 0.35rem);
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 26.4px;
	line-height: 1.65rem;
}
#megamenu .mm dt .en {
	font-family: 'Poppins', sans-serif;
}
#megamenu .mm dd {
	display: flex;
	gap: min(60px, 3.6585365854vw);
	margin: 0px;
	padding: 0px;
}
#megamenu .mm dd > * {
	flex: 1;
}
#megamenu .mm dd > * ul {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
#megamenu .mm dd > * ul > li {
	margin-left: 33px;
	text-indent: -33px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
}
#megamenu .mm dd > * ul > li:before {
	content: "";
	display: inline-block;
	width: 5px;
	height: 1px;
	margin-left: 20px;
	margin-right: 8px;
	background: #ffffff;
	vertical-align: middle;
}
#megamenu .mm dd > * ul > li * {
	text-indent: 0px;
}
#megamenu .mm dd > * ul + ul {
	margin-top: 20px;
}
#megamenu .mm dd p {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
	color: #fff;
}
#megamenu .mm dd > ul {
	display: flex;
	flex-direction: column;
	gap: 20px;
}
#megamenu .mm dd > ul > li a {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
	gap: 4px;
	padding: 10px 45px 10px 20px;
	min-height: 50px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
	color: #fff;
	background: url(../images/more.svg) no-repeat center right 20px;
	border: 1px solid #fff;
	border-radius: 10px;
	transition: background 400ms;
}
#megamenu .mm dd > ul > li a:hover {
	background-color: rgba(0, 0, 0, 0.2);
}
#megamenu .mm dd > ul > li a span {
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 15.6px;
	line-height: 0.975rem;
}
#megamenu .mm dd > ul > li a span + br {
	display: none;
}
#megamenu .mm a {
	color: #ffffff;
}
#megamenu .mm a:hover {
	border-bottom: 1px solid #ffffff;
}

#pagetitle {
	position: relative;
	background: none no-repeat center center;
	background-size: cover;
	border-bottom: 1px solid #CDD6DD;
}
#pagetitle.backimage {
	color: #ffffff;
	text-shadow: 0 0 6px rgba(0, 0, 0, 0.8);
}
#pagetitle.backimage:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: rgba(0, 0, 0, 0.2);
}
#pagetitle > div {
	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 0px 20px;
	display: flex;
}
.sp #pagetitle > div {
	padding: 0px 10px;
}
#pagetitle > div > div {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	width: 100%;
	max-width: 950px;
	min-height: 200px;
	padding: 20px 0px;
}
.sp #pagetitle > div > div {
	min-height: 100px;
}
#pagetitle.level2 > div > div, #pagetitle.image > div > div {
	min-height: 380px;
}
.tablet #pagetitle.level2 > div > div, .tablet #pagetitle.image > div > div {
	min-height: 300px;
}
.sp #pagetitle.level2 > div > div, .sp #pagetitle.image > div > div {
	min-height: 100px;
}
#pagetitle.image {
	background: url(../images/pagetitleimagebg.jpg) no-repeat center center;
	background-size: cover;
}
#pagetitle.image > div {
	background: none no-repeat right 20px center;
	background-size: auto 100%;
}
.spc #pagetitle.image > div {
	background-position: right center;
}
.sp #pagetitle.image > div:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: rgba(255, 255, 255, 0.6);
}
#pagetitle.image > div > div {
	width: calc(50% - 20px);
	z-index: 5;
}
.sp #pagetitle.image > div > div {
	width: 100%;
}
.sp #pagetitle.interview {
	background-image: none !important;
}
.sp #pagetitle.interview > div {
	background-image: none !important;
}
.sp #pagetitle.interview > div:before {
	display: none;
}
#pagetitle.interview .image {
	width: auto;
	height: 100%;
	right: 20px;
	padding: 0px;
	z-index: 0;
}
.spc #pagetitle.interview .image {
	right: 0px;
}
.sp #pagetitle.interview .image {
	display: none;
}
#pagetitle.interview .image:before {
	content: "";
	display: block;
	position: absolute;
	width: 200%;
	height: 100%;
	left: -50%;
	background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 30%, white 70%, rgba(255, 255, 255, 0) 100%);
	background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, white 30%, white 70%, rgba(255, 255, 255, 0) 100%);
	background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, white 30%, white 70%, rgba(255, 255, 255, 0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00ffffff', endColorstr='#00ffffff',GradientType=1 );
}
#pagetitle.interview .image img {
	position: relative;
	display: block;
	width: auto;
	height: 100%;
}
#pagetitle .sub {
	position: relative;
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 26.4px;
	line-height: 1.65rem;
	font-family: 'Poppins', sans-serif;
}
.sp #pagetitle .sub {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
#pagetitle h1 {
	position: relative;
	margin: 0px;
	padding: 0px;
}
#pagetitle h1:not(.catch) {
	font-size: 40px;
	font-size: 2.5rem;
	line-height: 52px;
	line-height: 3.25rem;
	font-weight: 500;
}
.sp #pagetitle h1:not(.catch) {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 31.2px;
	line-height: 1.95rem;
}
#pagetitle * + h1:not(.catch) {
	margin-top: 10px;
}
#pagetitle .subtitle {
	position: relative;
	margin-top: 10px;
	font-size: 26px;
	font-size: 1.625rem;
	line-height: 33.8px;
	line-height: 2.1125rem;
	font-weight: 500;
}
.sp #pagetitle .subtitle {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
#pagetitle .catch {
	position: relative;
	margin-top: 15px;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
	font-weight: bold;
}
.sp #pagetitle .catch {
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
#pagetitle .info {
	position: relative;
	margin-top: 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
}
.sp #pagetitle .info {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
}
#pagetitle .category {
	position: relative;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 40px;
	font-weight: 500;
	color: #ffffff;
}
.sp #pagetitle .category {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 30px;
}
#pagetitle .category span {
	display: inline-block;
	padding: 0px 25px;
	background: #2790B7;
	border-radius: 20px;
}
.sp #pagetitle .category span {
	padding: 0px 20px;
	border-radius: 15px;
}
#pagetitle .image {
	position: absolute;
	right: 0px;
	top: 0px;
}

#pagetitlebeforeimage {
	display: none;
}
.sp #pagetitlebeforeimage {
	display: block;
	padding-top: 77.34375%;
	background: none no-repeat center center;
	background-size: cover;
}

main {
	position: relative;
	display: block;
	background: #ffffff;
}
main:after {
	content: "";
	display: block;
	clear: both;
}

main #sidecolumn.contents {
	position: absolute;
	top: 80px;
	width: 100%;
	max-width: 1220px;
	right: 50%;
	transform: translateX(50%);
}
.sp main #sidecolumn.contents {
	position: static;
	transform: translateX(0%);
}
main #sidecolumn.contents > div {
	position: absolute;
	top: 0px;
	right: 20px;
	width: 260px;
	padding: 0;
}
main #sidecolumn.contents > div:before {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	left: -20px;
	width: calc(100% + 40px);
	height: 100%;
	background: rgba(255, 255, 255, 0.8);
	z-index: -1;
}
.pc main #sidecolumn.contents > div {
	width: calc((100% - 60px) * 0.2363636363636364);
}
.sp main #sidecolumn.contents > div {
	position: static;
	width: 100%;
	padding: 0px 10px 40px;
}

main .contents.sidecolumn > div:not(.bg) {
	max-width: 1220px;
	padding-right: 340px;
}
.pc main .contents.sidecolumn > div:not(.bg) {
	padding-right: calc((100% - 60px) * 0.2363636363636364 + 60px);
}
.sp main .contents.sidecolumn > div:not(.bg) {
	min-height: auto !important;
	padding-right: 10px;
}
main .contents.sidecolumn > div:not(.bg):before {
	content: "";
	position: absolute;
	display: block;
	width: 1px;
	height: calc(100% - 120px);
	top: 80px;
	right: 310px;
	background: #CDD6DD;
}
.pc main .contents.sidecolumn > div:not(.bg):before {
	right: calc((100% - 60px) * 0.2363636363636364 + 40px);
}
.sp main .contents.sidecolumn > div:not(.bg):before {
	display: none;
}

#siteutility .list > ul {
	display: flex;
	justify-content: space-around;
}
.sp #siteutility .list > ul {
	flex-wrap: wrap;
}
#siteutility .list > ul > li {
	margin-left: 15px;
	margin-right: 15px;
}
.sp #siteutility .list > ul > li {
	margin-left: 5px;
	margin-right: 5px;
}
#siteutility li:not(.spfacebook):not(.border) a {
	display: inline-block;
}
#siteutility li:not(.spfacebook):not(.border) a .image {
	display: block;
}
#siteutility li:not(.spfacebook):not(.border) a .image img {
	width: 100%;
	max-width: 120px;
	height: auto;
	margin: auto;
	transition: transform 400ms;
}
.sp #siteutility li:not(.spfacebook):not(.border) a .image img {
	max-width: 80px;
}
#siteutility li:not(.spfacebook):not(.border) a:hover .image img {
	transform: scale(1.15);
}
#siteutility li:not(.spfacebook):not(.border) a .title {
	display: block;
	margin-top: 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
	color: #373A3C;
	text-align: center;
}
.sp #siteutility li:not(.spfacebook):not(.border) a .title {
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 18px;
	line-height: 1.125rem;
}
#siteutility li.border {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 28.8135593220339%;
	padding: 15px;
	border: 1px solid #CDD6DD;
}
.sp #siteutility li.border {
	width: 80%;
	margin-top: 20px;
	padding: 20px 15px;
}
#siteutility li.border dl {
	display: flex;
}
#siteutility li.border dl dt {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: bold;
	color: #373A3C;
}
#siteutility li.border dl dd {
	margin: 0px;
}
#siteutility li.border ul {
	display: flex;
}
#siteutility li.border ul > li {
	margin-left: 20px;
}
#siteutility li.border a {
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#siteutility li.border a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}

.spfacebook {
	display: none;
}
.sp .spfacebook {
	display: block;
	width: 100%;
	margin-top: 20px;
	text-align: center;
}

#relatedlink .contents:nth-child(n + 2) {
	display: none;
}
#relatedlink .articlelist li:nth-child(n + 5) {
	display: none;
}
.sp #relatedlink .articlelist li:nth-child(n + 3) {
	display: none;
}

#ssftags {
	display: none;
}

main .contents.snsbuttonblock {
	z-index: 1;
}
main .contents.snsbuttonblock > div {
	padding-top: 20px !important;
	padding-bottom: 20px !important;
}

.snsbuttons ul {
	display: flex;
	justify-content: flex-start;
}
.snsbuttons li + li {
	margin-left: 10px;
}

#floatuchichalle {
	position: fixed;
	top: 50%;
	right: 0px;
	margin-top: -110px;
	z-index: 1000;
	transition: right 400ms;
}
.mobile #floatuchichalle, .sp #floatuchichalle {
	top: 35%;
	margin-top: -55px;
}
#floatuchichalle a {
	position: relative;
	display: block;
	width: 100px;
	height: 180px;
	text-indent: -1000px;
	background: url(../images/floatenquete20250303.png) no-repeat center center;
	overflow: hidden;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#floatuchichalle a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.mobile #floatuchichalle a, .sp #floatuchichalle a {
	width: 60px;
	height: 108px;
	background-size: 100%;
}

#totop {
	position: fixed;
	bottom: 40px;
	right: 20px;
	z-index: 30;
	opacity: 0;
	pointer-events: none;
	transition: opacity 600ms;
}
.shortheader #totop {
	opacity: 1;
	pointer-events: auto;
}
#totop.bottom {
	position: relative;
	bottom: 70px;
	right: 0px;
	width: 100%;
}
#totop.bottom a {
	position: absolute;
	right: 20px;
}
.sp #totop {
	display: none;
}
#totop a {
	display: block;
	position: relative;
	width: 60px;
	height: 60px;
	overflow: hidden;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#totop a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#totop a:before {
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	background: url(../images/totop.svg) no-repeat center center;
}
#totop a span {
	text-indent: -1000px;
	overflow: hidden;
}

footer {
	position: relative;
	display: block;
	background: #ffffff;
	border-top: 1px solid #707F89;
	z-index: 30;
}
footer .footersitemap {
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 40px 20px 0px;
}
.sp footer .footersitemap {
	display: none;
}
footer .footersitemap > div {
	display: flex;
	flex-wrap: wrap;
	margin: -40px -5px 0px -40px;
}
footer .footersitemap dl {
	width: calc((100% - 125px) / 3);
	margin-top: 40px;
	margin-left: 40px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
footer .footersitemap dt {
	font-weight: bold;
}
footer .footersitemap dt + dt {
	margin-top: 20px;
}
footer .footersitemap dd {
	margin: 10px 0px 0px 1em;
	padding: 0px;
}
footer .footersitemap a {
	color: #373A3C;
}
footer .footersitemap a:hover {
	border-bottom: 1px solid #2790B7;
}
footer .footerutility > div {
	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 40px 20px 0px;
}
.sp footer .footerutility > div {
	padding: 20px 10px 0px;
}
footer .footertext > div {
	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 40px 20px;
}
.sp footer .footertext > div {
	padding: 20px 10px;
}
footer .footertext .logo img {
	display: block;
}
footer .footertext p {
	margin-top: 15px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	color: #707F89;
}
.sp footer .footertext p {
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 18px;
	line-height: 1.125rem;
}
footer .footertools {
	border-top: 1px solid #707F89;
}
footer .footertools > div {
	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 20px 20px;
	overflow: hidden;
}
.sp footer .footertools > div {
	padding: 10px 10px;
}
footer .footertools ul {
	float: left;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	font-weight: 500;
}
footer .footertools ul li {
	position: relative;
	float: left;
}
.sp footer .footertools ul li {
	float: none;
}
footer .footertools ul li + li {
	margin-left: 80px;
}
.sp footer .footertools ul li + li {
	margin-top: 10px;
	margin-left: 0px;
}
footer .footertools ul li + li:before {
	position: absolute;
	content: "";
	display: block;
	width: 1px;
	height: 1em;
	top: 50%;
	margin-top: -0.5em;
	left: -40px;
	background: #373A3C;
}
footer .footertools ul a {
	color: #373A3C;
}
footer .footertools ul a:hover {
	border-bottom: 1px solid #2790B7;
}
footer .footertools p {
	float: right;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 20px;
	color: #707F89;
	font-family: 'Poppins', sans-serif;
}
.sp footer .footertools p {
	margin-top: 15px;
}

#oldcontents {
	display: none;
}

#oldcontentsframe {
	width: 100%;
	height: 500px;
	border: 0px;
}

main .contents * + .lead, main .contents * + .text, main .contents * + .image, main .contents * + .imagebox, main .contents * + .column, main .contents * + .button, main .contents * + .table, main .contents * + .format, main .contents .form * + .formbutton, main .contents * + .box, main .contents * + .googlemap, main .contents * + .youtube, * + .linklist, * + .simpletable, * + .headlabel, * + .dl, * + .download, * + .sldataGraph, main .contents .gsc-control-cse * + .gsc-above-wrapper-area, main .contents .gsc-control-cse .gsc-table-result * + .gsc-above-wrapper-area, * + .topsearchblock, * + .sideblock, * + .snsfollow, * + .contentsbox, * + .levelindex, * + .textblock, * + .aformblock, .aformsystem:not(.iframe) * + .aform, .aform * + #aform_confirm_msg, .aform * + .aform-button-area, .aform * + .head, .formarea * + .button {
	margin-top: 40px;
}
.sp main .contents * + .lead, main .contents .sp * + .lead, .sp main .contents * + .text, main .contents .sp * + .text, .sp main .contents * + .image, main .contents .sp * + .image, .sp main .contents * + .imagebox, main .contents .sp * + .imagebox, .sp main .contents * + .column, main .contents .sp * + .column, .sp main .contents * + .button, main .contents .sp * + .button, .sp main .contents * + .table, main .contents .sp * + .table, .sp main .contents * + .format, main .contents .sp * + .format, .sp main .contents .form * + .formbutton, main .contents .form .sp * + .formbutton, .sp main .contents * + .box, main .contents .sp * + .box, .sp main .contents * + .googlemap, main .contents .sp * + .googlemap, .sp main .contents * + .youtube, main .contents .sp * + .youtube, .sp * + .linklist, .sp * + .simpletable, .sp * + .headlabel, .sp * + .dl, .sp * + .download, .sp * + .sldataGraph, .sp main .contents .gsc-control-cse * + .gsc-above-wrapper-area, main .contents .gsc-control-cse .sp * + .gsc-above-wrapper-area, .sp main .contents .gsc-control-cse .gsc-table-result * + .gsc-above-wrapper-area, .sp * + .topsearchblock, .sp * + .sideblock, .sp * + .snsfollow, .sp * + .contentsbox, .sp * + .levelindex, .sp * + .textblock, .sp * + .aformblock, .sp .aformsystem:not(.iframe) * + .aform, .aformsystem:not(.iframe) .sp * + .aform, .sp .aform * + #aform_confirm_msg, .aform .sp * + #aform_confirm_msg, .sp .aform * + .aform-button-area, .aform .sp * + .aform-button-area, .sp .aform * + .head, .aform .sp * + .head, .sp .formarea * + .button, .formarea .sp * + .button {
	margin-top: 30px;
}

main .contents * + .layout, main .contents * + .form, * + .visualslide, * + .shorttab, * + .tab, * + .slideblock, * + .contentslist, * + .contentscolumn, * + .articlelist, * + .booklist, * + .faq, * + .pagenation, * + .pagenavi, * + .tagcloud, * + .filter, * + .anchor, * + .searchinput, * + .articlemeta, * + .eventlist, * + .reportindex, * + #searchresult, main .contents .gsc-control-cse * + .gsc-cursor-box, main .contents .gsc-control-cse .gsc-table-result * + .gsc-cursor-box, * + .imagelist, * + .dialog, * + .reportlist {
	margin-top: 80px;
}
.sp main .contents * + .layout, main .contents .sp * + .layout, .sp main .contents * + .form, main .contents .sp * + .form, .sp * + .visualslide, .sp * + .shorttab, .sp * + .tab, .sp * + .slideblock, .sp * + .contentslist, .sp * + .contentscolumn, .sp * + .articlelist, .sp * + .booklist, .sp * + .faq, .sp * + .pagenation, .sp * + .pagenavi, .sp * + .tagcloud, .sp * + .filter, .sp * + .anchor, .sp * + .searchinput, .sp * + .articlemeta, .sp * + .eventlist, .sp * + .reportindex, .sp * + #searchresult, .sp main .contents .gsc-control-cse * + .gsc-cursor-box, main .contents .gsc-control-cse .sp * + .gsc-cursor-box, .sp main .contents .gsc-control-cse .gsc-table-result * + .gsc-cursor-box, .sp * + .imagelist, .sp * + .dialog, .sp * + .reportlist {
	margin-top: 60px;
}

main .contents .text * + ul, .dl dd > * + ul, main .contents .text * + ol, .dl dd > * + ol, main .contents .lead * + p, main .contents .text * + p:not(.image):not(.caption), main .contents .text * + hr, main .contents .text * + dl, main .contents .text dl * + dt, main .contents .text * + .image, main .contents .image * + img, main .contents .image > * + a, main .contents .imagebox > .image * + img,
main .contents .imagebox > .image > * + a, * + .dlseparate, * + .ssfnews, .aform * + dl, .aform * + .aform-hdln {
	margin-top: 20px;
}

main .contents .text ul, .dl dd > ul {
	clear: left;
	margin-left: 20px;
	margin-right: 20px;
}
main .contents .text ul > li, .dl dd > ul > li {
	margin-left: 14px;
	text-indent: -14px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 27.2px;
	line-height: 1.7rem;
}
main .contents .text ul > li:before, .dl dd > ul > li:before {
	position: relative;
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	vertical-align: middle;
	top: -2px;
	margin-right: 4px;
	background: #707F89;
	border-radius: 50%;
}
main .contents .text ul > li + li, .dl dd > ul > li + li {
	margin-top: 20px;
}
main .contents .text ul > li *:not(li), .dl dd > ul > li *:not(li) {
	text-indent: 0px;
}
main .contents .text ul > li a, .dl dd > ul > li a {
	vertical-align: top;
	color: #2790B7;
}
main .contents .text ul > li a:hover, .dl dd > ul > li a:hover {
	border-bottom: 1px solid #2790B7;
}
main .contents .text ul > li > * + ul, .dl dd > ul > li > * + ul, main .contents .text ul > li > * + ol, .dl dd > ul > li > * + ol {
	margin-top: 20px;
}
main .contents .text ul > li ul > li:before, .dl dd > ul > li ul > li:before {
	background: #CDD6DD;
}
main .contents .text ul > li ul > li ul > li:before, .dl dd > ul > li ul > li ul > li:before {
	width: 4px;
	height: 4px;
	margin-left: 3px;
	margin-right: 7px;
	background: #373A3C;
}
main .contents .text ul.float, .dl dd > ul.float {
	margin-right: -40px;
}
main .contents .text ul.float li, .dl dd > ul.float li {
	display: inline-block;
	margin-left: calc(14px - 0.3em);
	margin-right: 40px;
}
main .contents .text ul.ib, .dl dd > ul.ib {
	margin-left: -36px;
	text-indent: 36px;
}
.sp main .contents .text ul.ib, main .contents .text .sp ul.ib, .sp .dl dd > ul.ib, .dl .sp dd > ul.ib {
	margin-left: 0px;
	text-indent: 0px;
}
main .contents .text ul.ib li, .dl dd > ul.ib li {
	display: inline-block;
}
.sp main .contents .text ul.ib li, main .contents .text .sp ul.ib li, .sp .dl dd > ul.ib li, .dl .sp dd > ul.ib li {
	display: block;
}
main .contents .text ul.ib li + li, .dl dd > ul.ib li + li {
	margin-left: 50px;
}
.sp main .contents .text ul.ib li + li, main .contents .text .sp ul.ib li + li, .sp .dl dd > ul.ib li + li, .dl .sp dd > ul.ib li + li {
	margin-left: 14px;
}
main .contents .text ul.col2, .dl dd > ul.col2 {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -30px;
	margin-left: -20px;
	margin-right: -5px;
}
main .contents .text ul.col2 > li, .dl dd > ul.col2 > li {
	margin-top: 0px;
	margin-bottom: 30px;
	margin-left: 34px;
	width: calc((100% - 73px) / 2);
}
.sp main .contents .text ul.col2 > li, main .contents .text .sp ul.col2 > li, .sp .dl dd > ul.col2 > li, .dl .sp dd > ul.col2 > li {
	width: calc(100% - 39px);
}

main .contents .text ol, .dl dd > ol {
	margin-left: 20px;
	margin-right: 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 27.2px;
	line-height: 1.7rem;
	counter-reset: number;
}
main .contents .text ol > li, .dl dd > ol > li {
	margin-left: 1.2em;
	text-indent: -0.63em;
}
main .contents .text ol > li:before, .dl dd > ol > li:before {
	counter-increment: number;
	content: " " counter(number) ".";
	display: inline-block;
	margin-right: 0.3em;
	color: #707F89;
	font-weight: bold;
}
main .contents .text ol > li + li, .dl dd > ol > li + li {
	margin-top: 20px;
}
main .contents .text ol > li *:not(li), .dl dd > ol > li *:not(li) {
	text-indent: 0px;
}
main .contents .text ol > li a, .dl dd > ol > li a {
	vertical-align: top;
	color: #2790B7;
}
main .contents .text ol > li a:hover, .dl dd > ol > li a:hover {
	border-bottom: 1px solid #2790B7;
}
main .contents .text ol > li > * + ul, .dl dd > ol > li > * + ul, main .contents .text ol > li > * + ol, .dl dd > ol > li > * + ol {
	margin-top: 20px;
}
main .contents .text ol.digit2 > li, .dl dd > ol.digit2 > li {
	margin-left: 1.5em;
	text-indent: -0.93em;
}
main .contents .text ol.digit2 > li:before, .dl dd > ol.digit2 > li:before {
	counter-increment: number;
	content: " " counter(number) ".";
	display: inline-block;
	margin-right: 0.3em;
	padding-left: 0.5em;
}
main .contents .text ol.digit2 > li:nth-of-type(n+10), .dl dd > ol.digit2 > li:nth-of-type(n+10) {
	margin-left: 1.5em;
	text-indent: -0.93em;
}
main .contents .text ol.digit2 > li:nth-of-type(n+10):before, .dl dd > ol.digit2 > li:nth-of-type(n+10):before {
	margin-right: 0.4em;
	padding-left: 0;
}
main .contents .text ol.col2, .dl dd > ol.col2 {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -30px;
	margin-left: -20px;
	margin-right: -5px;
}
main .contents .text ol.col2 > li, .dl dd > ol.col2 > li {
	margin-top: 0px;
	margin-bottom: 30px;
	margin-left: calc(20px + 1.2em);
	width: calc((100% - ((20px + 1.2em) * 2) - 5px) / 2);
}
.sp main .contents .text ol.col2 > li, main .contents .text .sp ol.col2 > li, .sp .dl dd > ol.col2 > li, .dl .sp dd > ol.col2 > li {
	width: calc(100% - (20px + 1.2em) - 5px);
}

main .contents {
	position: relative;
	padding: 0px;
}
main .contents:after {
	content: "";
	display: block;
	clear: both;
}
main .contents.bg {
	overflow: hidden;
}
main .contents.accent1 {
	background: none no-repeat center center #F0F3F5;
	background-size: cover;
}
main .contents.accent2 {
	background: none no-repeat center center #ECECE4;
	background-size: cover;
}
main .contents > .bg {
	position: absolute;
	width: 100%;
	height: 150%;
	top: 0%;
	left: 0px;
	background: none no-repeat center center;
	background-size: cover;
}
main .contents > div:not(.bg) {
	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 80px 20px 80px;
}
.sp main .contents > div:not(.bg) {
	padding: 40px 10px 40px;
}
.sp main .contents > div:not(.bg) {
	width: auto;
}
main .contents.stack {
	margin-top: -40px;
}
.sp main .contents.stack {
	margin-top: -20px;
}
main .contents.paragraph {
	margin-top: -20px;
}
.sp main .contents.paragraph {
	margin-top: -10px;
}
main .contents.accent1 > div, main .contents.accent2 > div {
	position: relative;
	width: 100%;
	max-width: 1220px;
	margin: auto;
	padding: 40px 20px;
}
.sp main .contents.accent1 > div, .sp main .contents.accent2 > div {
	padding: 20px 10px;
}
main .contents.widesize > div {
	max-width: 100%;
}
main .contents.fullsize > div {
	padding: 0px;
	max-width: 100%;
}
.sp main .contents.fullsize > div {
	padding: 0px;
}
main .contents.withtopsnsbuttons {
	margin-top: -80px;
}
.sp main .contents.withtopsnsbuttons {
	margin-top: -40px;
}
main .contents h1 + *, main .contents h2 + *, main .contents h3 + *, main .contents h4 + *, main .contents h5 + *, main .contents h6 + * {
	margin-top: 0px !important;
}
main .contents h1 {
	clear: both;
	display: block;
	margin: 0px 0px 40px;
	padding: 0px;
	font-size: 40px;
	font-size: 2.5rem;
	line-height: 52px;
	line-height: 3.25rem;
	font-weight: normal;
}
main .contents * + h1 {
	margin-top: 160px;
}
main .contents h2 {
	position: relative;
	clear: both;
	display: block;
	margin: 0px 0px 80px;
	padding: 0px;
	font-size: 30px;
	font-size: 1.875rem;
	line-height: 45px;
	line-height: 2.8125rem;
	font-weight: 500;
	text-align: center;
}
main .contents h2.bottomhalf {
	margin-bottom: 40px;
}
main .contents h2.bottomquarter {
	margin-bottom: 20px;
}
main .contents h2.toph2 {
	margin-bottom: 40px;
}
.sp main .contents h2.toph2 {
	margin-bottom: 30px;
}
.sp main .contents h2 {
	margin-bottom: 60px;
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 33.6px;
	line-height: 2.1rem;
}
.sp main .contents h2.bottomhalf {
	margin-bottom: 20px;
}
.sp main .contents h2.bottomquarter {
	margin-bottom: 10px;
}
main .contents h2:last-child {
	margin-bottom: 0px !important;
}
main .contents h2 .sub {
	display: block;
	margin-top: 0.7em;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 27px;
	line-height: 1.6875rem;
	color: #707F89;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
}
main .contents h2.small {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 36px;
	line-height: 2.25rem;
}
.sp main .contents h2.small {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 30px;
	line-height: 1.875rem;
}
main .contents h2.small .sub {
	margin-top: 0.4em;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
main .contents h2.left {
	text-align: left;
}
main .contents h2 a {
	color: #2790B7;
}
main .contents h2 a:hover {
	border-bottom: 1px solid #2790B7;
}
main .contents * + h2 {
	margin-top: 80px;
}
main .contents .textblock h2,
main .contents .text h2 {
	text-align: left;
}
main .contents .textblock h2.center,
main .contents .text h2.center {
	text-align: center;
}
main .contents h3 {
	margin: 0px 0px 40px;
	padding: 0px;
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 28.6px;
	line-height: 1.7875rem;
	font-weight: bold;
}
main .contents h3.bottomhalf {
	margin-bottom: 20px;
}
main .contents h3.toph3 {
	text-align: center;
}
main .contents h3 .sub {
	display: inline-block;
	margin-left: 0.8em;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	color: #707F89;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	vertical-align: middle;
}
main .contents h3 a {
	color: #2790B7;
}
main .contents h3 a:hover {
	border-bottom: 1px solid #2790B7;
}
main .contents h3.center {
	text-align: center;
}
main .contents h3.white {
	color: #ffffff;
}
main .contents h3.white .sub {
	color: #ffffff;
}
main .contents h3.border {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #98A6B5;
}
main .contents * + h3 {
	margin-top: 60px;
}
.sp main .contents .column > div > h3:first-child {
	margin-top: 20px;
}
main .contents h4 {
	clear: both;
	display: block;
	margin: 0px 0px 20px;
	padding: 0px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: 500;
}
main .contents h4.bottomhalf {
	margin-bottom: 10px;
}
main .contents * + h4 {
	margin-top: 40px;
}
main .contents .text h4 {
	clear: none;
}
main .contents h5 {
	clear: both;
	display: block;
	margin: 0px 0px 20px;
	padding: 0px;
	font-size: 17px;
	font-size: 1.0625rem;
	line-height: 22.1px;
	line-height: 1.38125rem;
}
.sp main .contents h5 {
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
main .contents * + h5 {
	margin-top: 20px;
}
main .contents h6 {
	clear: both;
	display: block;
	margin: 0px 0px 20px;
	padding: 0px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
.sp main .contents h6 {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
main .contents * + h6 {
	margin-top: 20px;
}
main .contents sup {
	position: relative;
	vertical-align: top;
	font-size: 85%;
	top: -0.3em;
	margin-left: 0.2em;
	margin-right: 0.2em;
}
main .contents sub {
	position: relative;
	vertical-align: bottom;
	font-size: 85%;
	bottom: -0.3em;
	margin-left: 0.2em;
	margin-right: 0.2em;
}
main .contents .lead.center {
	text-align: center;
}
.sp main .contents .lead.center {
	text-align: left;
}
main .contents .lead p {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 30.6px;
	line-height: 1.9125rem;
}
.sp main .contents .lead p {
	font-size: 17px;
	font-size: 1.0625rem;
	line-height: 28.9px;
	line-height: 1.80625rem;
}
main .contents .lead p span {
	display: inline-block;
}
.sp main .contents .lead p span {
	display: inline;
}
main .contents .stack {
	margin-top: 0px !important;
}
main .contents .block {
	margin-top: 40px !important;
}
.sp main .contents .block {
	margin-top: 30px !important;
}
main .contents .section {
	margin-top: 80px !important;
}
.sp main .contents .section {
	margin-top: 60px !important;
}
main .contents .paragraph {
	margin-top: 20px !important;
}
main .contents .halfparagraph {
	margin-top: 7px !important;
}
main .contents .text {
	margin-left: auto;
	margin-right: auto;
	max-width: 900px;
}
main .contents .text:after {
	content: "";
	display: block;
	clear: both;
}
main .contents .text p:not(.image):not(.caption) {
	font-size: 16px;
	font-size: 1rem;
	line-height: 27.2px;
	line-height: 1.7rem;
}
main .contents .text p:not(.image):not(.caption) .required {
	color: #E93C36;
	margin-left: 4px;
	margin-right: 4px;
}
main .contents .text p:not(.image):not(.caption).error_mes {
	color: #E93C36;
}
main .contents .text p:not(.image):not(.caption) em.s {
	font-style: normal;
	color: #004B9E;
	font-size: 120%;
}
main .contents .text p:not(.image):not(.caption) a {
	color: #2790B7;
}
main .contents .text p:not(.image):not(.caption) a:hover {
	border-bottom: 1px solid #2790B7;
}
main .contents .text p:not(.image):not(.caption).center {
	text-align: center;
}
main .contents .text p:not(.image):not(.caption).right {
	text-align: right;
}
.sp main .contents .text p:not(.image):not(.caption).spleft {
	text-align: left;
}
main .contents .text p:not(.image):not(.caption).note {
	text-indent: -1em;
	margin-left: 1em;
}
main .contents .text p:not(.image):not(.caption).note * {
	text-indent: 0px;
}
main .contents .text p:not(.image):not(.caption).ularge,
main .contents .text p:not(.image):not(.caption) .ularge {
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 33px;
	line-height: 2.0625rem;
}
main .contents .text p:not(.image):not(.caption).large,
main .contents .text p:not(.image):not(.caption) .large {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 27px;
	line-height: 1.6875rem;
}
main .contents .text p:not(.image):not(.caption).small,
main .contents .text p:not(.image):not(.caption) .small {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 19.6px;
	line-height: 1.225rem;
}
main .contents .text p:not(.image):not(.caption).alert,
main .contents .text p:not(.image):not(.caption) .alert {
	color: #E93C36;
}
main .contents .text hr {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0px;
	width: 90%;
	height: 1px;
	border: 0px;
	background: #707F89;
}
main .contents .text dl dt {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: bold;
}
.sp main .contents .text dl dt {
	font-size: 17px;
	font-size: 1.0625rem;
	line-height: 22.1px;
	line-height: 1.38125rem;
}
main .contents .text dl dd {
	margin: 10px 0px 0px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 27.2px;
	line-height: 1.7rem;
}
.sp main .contents .text dl dd {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 23.8px;
	line-height: 1.4875rem;
}
main .contents .text .image.floatright {
	clear: right;
	float: right;
	margin-left: 20px;
	margin-bottom: 20px;
}
.sp main .contents .text .image.floatright {
	margin-left: 10px;
	margin-bottom: 10px;
}
main .contents .text .image.floatleft {
	clear: left;
	float: left;
	margin-right: 20px;
	margin-bottom: 20px;
}
.sp main .contents .text .image.floatleft {
	margin-right: 10px;
	margin-bottom: 10px;
}
.sp main .contents .text .image.spclear {
	float: none;
	width: auto !important;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0px;
}
main .contents .text .image p {
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
* + main .contents .text .image p {
	margin-top: 8px;
}
main .contents .text .image p.center {
	text-align: center;
}
main .contents .text .image p.right {
	text-align: right;
}
main .contents .image {
	text-align: center;
}
main .contents .image img {
	display: block;
	margin-left: auto;
	margin-right: auto;
	max-width: 100%;
	height: auto;
}
main .contents .image .view_pc + .view_sp {
	margin-top: 0px;
}
main .contents .image * + .view_pc + .view_sp {
	margin-top: 20px;
}
main .contents .image p {
	margin: auto;
	text-align: left;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
* + main .contents .image p {
	margin-top: 8px;
}
main .contents .image p a {
	color: #2790B7;
}
main .contents .image p a:hover {
	border-bottom: 1px solid #2790B7;
}
main .contents .image p.center {
	text-align: center;
}
main .contents .image p.right {
	text-align: right;
}
main .contents .image.left {
	text-align: left;
}
main .contents .image.left img {
	margin-left: 0px;
}
main .contents .image.left p {
	margin-left: 0px;
}
main .contents .image.right {
	text-align: right;
}
main .contents .image.right img {
	margin-right: 0px;
}
main .contents .image.right p {
	margin-right: 0px;
}
main .contents .image > a {
	display: inline-block;
	max-width: 100%;
	vertical-align: top;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
main .contents .image > a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
main .contents .image > a p {
	color: #2790B7;
}
main .contents .image > a.zoom {
	position: relative;
}
main .contents .image > a.zoom:after {
	content: "";
	display: block;
	position: absolute;
	width: 40px;
	height: 40px;
	top: auto;
	bottom: 0px;
	right: 0px;
	background: url(../images/searchw.svg) no-repeat center center rgba(0, 0, 0, 0.6);
}
main .contents .image > a.youtubepop {
	position: relative;
}
main .contents .image > a.youtubepop:hover:before {
	background: #DC000C;
}
main .contents .image > a.youtubepop:before {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: auto;
	right: auto;
	width: 66px;
	height: 46px;
	margin-top: -24px;
	margin-left: -34px;
	background: rgba(0, 0, 0, 0.7);
	border-radius: 10px;
}
main .contents .image > a.youtubepop:after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	bottom: auto;
	right: auto;
	margin-top: -10px;
	margin-left: -7px;
	border: 10px solid transparent;
	border-left: 18px solid #ffffff;
	border-right: 0px;
}
main .contents .imagebox {
	margin-left: auto;
	margin-right: auto;
	max-width: 900px;
	display: flex;
}
.sp main .contents .imagebox.spcol1 {
	display: block;
}
.sp main .contents .imagebox.spcol1 > * {
	display: block;
	width: auto !important;
}
.sp main .contents .imagebox.spcol1 > * + * {
	padding-top: 20px;
	padding-left: 0px !important;
	padding-right: 0px !important;
}
.sp main .contents .imagebox.spcol1 > .image img,
.sp main .contents .imagebox.spcol1 > .image > a {
	width: auto;
}
.sp main .contents .imagebox.spcol1 > .image > *:not(img),
.sp main .contents .imagebox.spcol1 > .image > *:not(a) {
	margin-left: auto;
	margin-right: auto;
}
.sp main .contents .imagebox.spcol1 > .image > *:not(img).text,
.sp main .contents .imagebox.spcol1 > .image > *:not(a).text {
	width: auto !important;
}
main .contents .imagebox > * {
	margin-top: 0px !important;
}
main .contents .imagebox > * + * {
	padding-left: 20px;
}
main .contents .imagebox.reverse {
	flex-direction: row-reverse;
}
main .contents .imagebox.reverse > * + * {
	padding-left: 0px;
	padding-right: 20px;
}
main .contents .imagebox > *:not(.image) {
	width: 100%;
}
main .contents .imagebox > .image {
	flex-shrink: 0;
}
main .contents .imagebox > .image img,
main .contents .imagebox > .image > a {
	display: block;
}
main .contents .imagebox > .image p {
	width: auto !important;
}
main .contents .column {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: -40px;
	margin-left: -20px;
	margin-right: -4px;
}
.sp main .contents .column {
	margin-left: -10px;
	margin-bottom: -20px;
}
main .contents .column > * {
	margin-bottom: 40px;
	margin-left: 20px;
}
.sp main .contents .column > * {
	margin-left: 10px;
	margin-bottom: 20px;
}
main .contents .column.col1 > * {
	width: calc((100% - 20px * 1 - 4px) / 1);
}
main .contents .column.col1 > *.size2 {
	width: calc(((100% - 20px * 1 - 4px) / 1) * 2 + 20px * 1);
}
main .contents .column.col1 > *.size1 {
	width: calc(((100% - 20px * 1 - 4px) / 1) * 1 + 20px * 0);
}
.sp main .contents .column.col1 > * {
	width: calc((100% - 10px * 1 - 4px) / 1);
}
.sp main .contents .column.spcol1 > * {
	width: calc((100% - 10px * 1 - 4px) / 1) !important;
}
main .contents .column.col2 > * {
	width: calc((100% - 20px * 2 - 4px) / 2);
}
main .contents .column.col2 > *.size2 {
	width: calc(((100% - 20px * 2 - 4px) / 2) * 2 + 20px * 1);
}
.sp main .contents .column.col2 > * {
	width: calc((100% - 10px * 2 - 4px) / 2);
}
.sp main .contents .column.spcol2 > * {
	width: calc((100% - 10px * 2 - 4px) / 2) !important;
}
main .contents .column.col3 > * {
	width: calc((100% - 20px * 3 - 4px) / 3);
}
main .contents .column.col3 > *.size2 {
	width: calc(((100% - 20px * 3 - 4px) / 3) * 2 + 20px * 1);
}
main .contents .column.col3 > *.size3 {
	width: calc(((100% - 20px * 3 - 4px) / 3) * 3 + 20px * 2);
}
.sp main .contents .column.col3 > * {
	width: calc((100% - 10px * 3 - 4px) / 3);
}
.sp main .contents .column.spcol3 > * {
	width: calc((100% - 10px * 3 - 4px) / 3) !important;
}
main .contents .column.col4 > * {
	width: calc((100% - 20px * 4 - 4px) / 4);
}
main .contents .column.col4 > *.size2 {
	width: calc(((100% - 20px * 4 - 4px) / 4) * 2 + 20px * 1);
}
main .contents .column.col4 > *.size3 {
	width: calc(((100% - 20px * 4 - 4px) / 4) * 3 + 20px * 2);
}
main .contents .column.col4 > *.size4 {
	width: calc(((100% - 20px * 4 - 4px) / 4) * 4 + 20px * 3);
}
.sp main .contents .column.col4 > * {
	width: calc((100% - 10px * 4 - 4px) / 4);
}
.sp main .contents .column.spcol4 > * {
	width: calc((100% - 10px * 4 - 4px) / 4) !important;
}
main .contents .column.col5 > * {
	width: calc((100% - 20px * 5 - 4px) / 5);
}
main .contents .column.col5 > *.size2 {
	width: calc(((100% - 20px * 5 - 4px) / 5) * 2 + 20px * 1);
}
main .contents .column.col5 > *.size3 {
	width: calc(((100% - 20px * 5 - 4px) / 5) * 3 + 20px * 2);
}
main .contents .column.col5 > *.size4 {
	width: calc(((100% - 20px * 5 - 4px) / 5) * 4 + 20px * 3);
}
main .contents .column.col5 > *.size5 {
	width: calc(((100% - 20px * 5 - 4px) / 5) * 5 + 20px * 4);
}
.sp main .contents .column.col5 > * {
	width: calc((100% - 10px * 5 - 4px) / 5);
}
.sp main .contents .column.spcol5 > * {
	width: calc((100% - 10px * 5 - 4px) / 5) !important;
}
main .contents .layout {
	display: table;
	width: calc(100% + 40px);
	margin-left: -20px;
	margin-right: -20px;
}
main .contents .layout > * {
	display: table-cell;
	height: 100%;
	text-align: center;
	vertical-align: middle;
}
main .contents .layout:after {
	content: "";
	display: block;
	clear: both;
}
.sp main .contents .layout {
	width: calc(100% + 20px);
	margin-left: -10px;
	margin-right: -10px;
}
main .contents .layout > * {
	padding: 0px 20px;
}
.sp main .contents .layout > * {
	padding: 0px 10px;
}
main .contents .layout > *.left {
	text-align: left;
}
main .contents .layout > *.right {
	text-align: right;
}
main .contents .layout > *.top {
	vertical-align: top;
}
main .contents .layout > *.bottom {
	vertical-align: bottom;
}
.sp main .contents .layout.spcol1 {
	display: block;
	width: auto;
	margin-left: 0px;
	margin-bottom: -40px;
	margin-right: 0px;
}
.sp main .contents .layout.spcol1 > * {
	display: block;
	margin-bottom: 40px;
	padding: 0px;
	width: auto !important;
}
main .contents .button {
	font-size: 0px;
}
.sp main .contents .button {
	text-align: center;
}
main .contents .button > div {
	display: inline-flex;
	vertical-align: middle;
}
.sp main .contents .button > div {
	display: block;
	max-width: 60vw;
	margin: auto;
}
main .contents .button > div + div {
	margin-left: 20px;
}
.sp main .contents .button > div + div {
	margin-top: 20px;
}
main .contents .button a {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 5px 10px;
	min-width: 120px;
	min-height: 44px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	color: #ffffff;
	background: #2790B7;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
main .contents .button a:hover {
	opacity: 1;
	border-bottom: 0px;
}
main .contents .button a:hover {
	background: #004B9E;
}
main .contents .button a:hover:before {
	border-color: #004B9E;
}
main .contents .button a.labelen {
	font-family: 'Poppins', sans-serif;
}
main .contents .button a:before {
	content: "";
	display: block;
	position: absolute;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	top: 50%;
	left: 50%;
	border: 1px solid #2790B7;
	transform: translate(-50%, -50%) scale(1);
	transition: 0ms;
}
main .contents .button a:hover:before {
	border-width: 3px;
	transform: translate(-50%, -50%) scale(1.3);
	opacity: 0;
	transition: 800ms;
}
main .contents .button.full > div {
	display: flex;
}
.sp main .contents .button.full > div {
	max-width: 100%;
}
main .contents .button.full a {
	width: 100%;
}
main .contents .button.center {
	text-align: center;
}
main .contents .button.right {
	text-align: right;
}
main .contents .imagebox .image .button a {
	min-width: 0px;
}
main .contents .table {
	overflow-x: auto;
	overflow-y: hidden;
}
main .contents .table > table {
	width: calc(100% - 2px);
	border-spacing: 0;
	empty-cells: show;
	border-top: 1px solid #CDD6DD;
	border-left: 1px solid #CDD6DD;
}
main .contents .table > table caption {
	text-align: left;
	margin-bottom: 10px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: 500;
}
.sp main .contents .table > table caption {
	margin-bottom: 15px;
}
main .contents .table > table caption .unit {
	margin-top: 5px;
	text-align: right;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
main .contents .table > table > thead > tr > th, main .contents .format.table > table > thead > tr > td, main .contents .table > table > thead > tr > td, main .contents .table > table > tbody > tr > th, main .contents .format.table > table > tbody > tr > td, main .contents .table > table > tbody > tr.head > th, main .contents .format.table > table > tbody > tr.head > td, main .contents .table > table > tr > th, main .contents .format.table > table > tr > td {
	position: relative;
	padding: 16px;
	vertical-align: middle;
	text-align: left;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
	color: #ffffff;
	background: #006ea0;
	border-right: 1px solid #006ea0;
	border-bottom: 1px solid #006ea0;
}
.sp main .contents .table > table > thead > tr > th, .sp main .contents .format.table > table > thead > tr > td,
.sp main .contents .table > table > thead > tr > td,
.sp main .contents .table > table > tbody > tr > th,
.sp main .contents .format.table > table > tbody > tr > td,
.sp main .contents .table > table > tbody > tr.head > th,
.sp main .contents .format.table > table > tbody > tr.head > td,
.sp main .contents .table > table > tr > th,
.sp main .contents .format.table > table > tr > td {
	padding: 8px;
}
.sp main .contents .table > table > thead > tr > th span, .sp main .contents .format.table > table > thead > tr > td span,
.sp main .contents .table > table > thead > tr > td span,
.sp main .contents .table > table > tbody > tr > th span,
.sp main .contents .format.table > table > tbody > tr > td span,
.sp main .contents .table > table > tbody > tr.head > th span,
.sp main .contents .format.table > table > tbody > tr.head > td span,
.sp main .contents .table > table > tr > th span,
.sp main .contents .format.table > table > tr > td span {
	display: block;
}
.sp main .contents .table > table > thead > tr > th * + span, .sp main .contents .format.table > table > thead > tr > td * + span,
.sp main .contents .table > table > thead > tr > td * + span,
.sp main .contents .table > table > tbody > tr > th * + span,
.sp main .contents .format.table > table > tbody > tr > td * + span,
.sp main .contents .table > table > tbody > tr.head > th * + span,
.sp main .contents .format.table > table > tbody > tr.head > td * + span,
.sp main .contents .table > table > tr > th * + span,
.sp main .contents .format.table > table > tr > td * + span {
	margin-top: 4px;
}
main .contents .table > table.smalltext > thead > tr > th, main .contents .format.table > table.smalltext > thead > tr > td, main .contents .table > table.smalltext > thead > tr > td, main .contents .table > table.smalltext > tbody > tr > th, main .contents .format.table > table.smalltext > tbody > tr > td, main .contents .table > table.smalltext > tbody > tr.head > th, main .contents .format.table > table.smalltext > tbody > tr.head > td, main .contents .table > table.smalltext > tr > th, main .contents .format.table > table.smalltext > tr > td {
	padding: 8px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
.sp main .contents .table > table.smalltext > thead > tr > th, .sp main .contents .format.table > table.smalltext > thead > tr > td,
.sp main .contents .table > table.smalltext > thead > tr > td,
.sp main .contents .table > table.smalltext > tbody > tr > th,
.sp main .contents .format.table > table.smalltext > tbody > tr > td,
.sp main .contents .table > table.smalltext > tbody > tr.head > th,
.sp main .contents .format.table > table.smalltext > tbody > tr.head > td,
.sp main .contents .table > table.smalltext > tr > th,
.sp main .contents .format.table > table.smalltext > tr > td {
	padding: 4px;
}
main .contents .table > table > thead > tr > th, main .contents .format.table > table > thead > tr > td,
main .contents .table > table > thead > tr > td,
main .contents .table > table > tbody > tr.head > th,
main .contents .format.table > table > tbody > tr.head > td {
	text-align: center;
	font-weight: bold;
	border-right: 1px solid #ffffff;
}
main .contents .table > table > thead > tr > th:last-child, main .contents .format.table > table > thead > tr > td:last-child,
main .contents .table > table > thead > tr > td:last-child,
main .contents .table > table > tbody > tr.head > th:last-child,
main .contents .format.table > table > tbody > tr.head > td:last-child {
	border-right: 1px solid #CDD6DD;
}
main .contents .table > table > thead > tr + tr > th, main .contents .format.table > table > thead > tr + tr > td,
main .contents .table > table > thead > tr + tr > td {
	border-top: 1px solid #ffffff;
}
main .contents .table > table > tbody > tr:not(.head) > th, main .contents .format.table > table > tbody > tr:not(.head) > td {
	color: #373A3C;
	background: #F0F3F5;
	border-right: 1px solid #F0F3F5;
	border-bottom: 1px solid #CDD6DD;
}
main .contents .table > table > tr > td, main .contents .table > table > * > tr > td {
	padding: 16px;
	vertical-align: middle;
	text-align: left;
	font-size: 16px;
	font-size: 1rem;
	line-height: 27.2px;
	line-height: 1.7rem;
	color: #373A3C;
	background: #ffffff;
	border-right: 1px solid #CDD6DD;
	border-bottom: 1px solid #CDD6DD;
}
.sp main .contents .table > table > tr > td,
.sp main .contents .table > table > * > tr > td {
	padding: 8px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 23.8px;
	line-height: 1.4875rem;
}
main .contents .table > table.smalltext > tr > td, main .contents .table > table.smalltext > * > tr > td {
	padding: 8px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 23.8px;
	line-height: 1.4875rem;
}
.sp main .contents .table > table.smalltext > tr > td,
.sp main .contents .table > table.smalltext > * > tr > td {
	padding: 4px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 23.8px;
	line-height: 1.4875rem;
}
main .contents .table > table .left {
	text-align: left;
}
main .contents .table > table .right {
	text-align: right;
}
main .contents .table > table .center {
	text-align: center;
}
main .contents .table > table .top {
	vertical-align: top;
}
main .contents .table > table .bottom {
	vertical-align: bottom;
}
main .contents .table > table .middle {
	vertical-align: middle;
}
main .contents .table > table .space {
	background: transparent !important;
}
main .contents .table > table .nowrap {
	white-space: nowrap;
}
.sp main .contents .table > table .nowrap {
	white-space: normal;
}
main .contents .table > table td.blank,
main .contents .table > table th.blank,
main .contents .table > table .format > table td.blank,
main .contents .format > table .table > table td.blank {
	border: 0px !important;
}
main .contents .table > table td.nb_top,
main .contents .table > table th.nb_top,
main .contents .table > table .format > table td.nb_top,
main .contents .format > table .table > table td.nb_top {
	position: relative;
}
main .contents .table > table td.nb_top:before,
main .contents .table > table th.nb_top:before,
main .contents .table > table .format > table td.nb_top:before,
main .contents .format > table .table > table td.nb_top:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 1px;
	background: #ffffff;
	top: -1px;
	left: 0px;
}
main .contents .table > table td.nb_left,
main .contents .table > table th.nb_left,
main .contents .table > table .format > table td.nb_left,
main .contents .format > table .table > table td.nb_left {
	position: relative;
}
main .contents .table > table td.nb_left:after,
main .contents .table > table th.nb_left:after,
main .contents .table > table .format > table td.nb_left:after,
main .contents .format > table .table > table td.nb_left:after {
	content: "";
	display: block;
	position: absolute;
	width: 1px;
	height: 100%;
	background: #ffffff;
	top: 0px;
	left: -1px;
}
main .contents .table > table td.nb_right,
main .contents .table > table th.nb_right,
main .contents .table > table .format > table td.nb_right,
main .contents .format > table .table > table td.nb_right {
	border-right: 0px !important;
}
main .contents .table > table td.nb_bottom,
main .contents .table > table th.nb_bottom,
main .contents .table > table .format > table td.nb_bottom,
main .contents .format > table .table > table td.nb_bottom {
	border-bottom: 0px !important;
}
main .contents .table > table th.gray, main .contents .table > table .format > table td.gray, main .contents .format > table .table > table td.gray {
	background: #98A6B5;
}
main .contents .table > table th.blue, main .contents .table > table .format > table td.blue, main .contents .format > table .table > table td.blue {
	background: #b2eef9;
	color: #373A3C;
}
main .contents .table > table th.green, main .contents .table > table .format > table td.green, main .contents .format > table .table > table td.green {
	background: #d2ffd2;
	color: #373A3C;
}
main .contents .table > table th.tan, main .contents .table > table .format > table td.tan, main .contents .format > table .table > table td.tan {
	background: #ffc4e1;
	color: #373A3C;
}
main .contents .table > table td.gray {
	background: #F0F3F5;
}
main .contents .table > table td.blue {
	background: #effdff;
}
main .contents .table > table td.green {
	background: #ecffec;
}
main .contents .table > table td.pink {
	background: #f9f2f5;
}
main .contents .table > table td.yellow {
	background: #fdffe4;
}
main .contents .table > table td.tan {
	background: #E9DAC6;
}
main .contents .table > table td.orange {
	background: #FFD8B1;
}
main .contents .table > table td.royalblue {
	background: #e6ecff;
}
main .contents .table > table a {
	color: #2790B7;
}
main .contents .table > table a:hover {
	border-bottom: 1px solid #2790B7;
}
main .contents .table > p {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 23.8px;
	line-height: 1.4875rem;
}
main .contents .table > p.right {
	text-align: right;
}
main .contents .table > p a {
	color: #2790B7;
}
main .contents .table > p a:hover {
	border-bottom: 1px solid #2790B7;
}
main .contents .table > * + p {
	margin-top: 8px;
}
main .contents .table > p + table {
	margin-top: 8px;
}
main .contents .format > table {
	width: 100%;
	border-collapse: collapse;
	empty-cells: show;
}
main .contents .format > table th, main .contents .format > table td {
	padding: 0px 0px 10px 0px;
	vertical-align: top;
	text-align: left;
	font-size: 16px;
	font-size: 1rem;
	line-height: 27.2px;
	line-height: 1.7rem;
	font-weight: bold;
	color: #373A3C;
}
.sp main .contents .format > table th, .sp main .contents .format > table td {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 23.8px;
	line-height: 1.4875rem;
}
main .contents .format > table td {
	padding: 0px 0px 10px 20px;
	font-weight: normal;
}
main .contents .format > table tr:last-child th, main .contents .format > table tr:last-child td,
main .contents .format > table tr:last-child td {
	padding-bottom: 0px;
}
.sp main .contents .format > table {
	display: block;
}
.sp main .contents .format > table tbody {
	display: block;
}
.sp main .contents .format > table tr {
	display: block;
}
.sp main .contents .format > table th, .sp main .contents .format > table td {
	display: block;
	padding-bottom: 0px;
}
.sp main .contents .format > table td {
	display: block;
	padding-bottom: 5px;
}
main .contents .form form {
	margin: 0px;
	padding: 0px;
}
main .contents .form p {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 36px;
	line-height: 2.25rem;
	color: #373A3C;
	font-weight: 500;
}
main .contents .form * + p {
	margin-top: 4px;
}
main .contents .form p + p {
	margin-top: 8px;
}
main .contents .form input + p,
main .contents .form label + p,
main .contents .form textarea + p {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
main .contents .form dt.required:after {
	content: "必須";
	color: #E93C36;
	margin-left: 16px;
	padding: 0px 10px;
	border: 1px solid #E93C36;
}
main .contents .form dt {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 27px;
	line-height: 1.6875rem;
}
main .contents .form * + dt {
	margin-top: 20px;
}
main .contents .form dd {
	margin: 0px;
}
main .contents .form * + dd {
	margin-top: 5px;
}
main .contents .form textarea {
	width: 100%;
	height: 160px;
	padding: 8px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	border: 1px solid #CDD6DD;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.sp main .contents .form textarea {
	font-size: 16px !important;
}
main .contents .form input[type="text"], main .contents .form input[type="email"], main .contents .form input[type="tel"], main .contents .form input[type="url"] {
	width: 100%;
	height: 40px;
	padding: 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 38px;
	border: 1px solid #CDD6DD;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.sp main .contents .form input[type="text"], .sp main .contents .form input[type="email"], .sp main .contents .form input[type="tel"], .sp main .contents .form input[type="url"] {
	font-size: 16px !important;
}
main .contents .form input[type="text"].withlabel, main .contents .form input[type="email"].withlabel, main .contents .form input[type="tel"].withlabel, main .contents .form input[type="url"].withlabel {
	padding-left: 4rem;
}
main .contents .form select {
	width: 100%;
	height: 50px;
	padding: 0px 50px 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 48px;
	border: 1px solid #CDD6DD;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: url(../images/select.svg) no-repeat right 10px center;
	cursor: pointer;
}
.sp main .contents .form select {
	font-size: 16px !important;
}
main .contents .form select::-ms-expand {
	display: none;
}
main .contents .form label {
	position: relative;
	display: inline-block;
	padding: 10px 0px 10px 40px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	cursor: pointer;
}
main .contents .form label input[type="radio"], main .contents .form label input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
main .contents .form label input[type="radio"]:focus + span:before, main .contents .form label input[type="checkbox"]:focus + span:before {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
main .contents .form label input[type="radio"] + span:before {
	content: "";
	display: block;
	position: absolute;
	width: 26px;
	height: 26px;
	top: 50%;
	left: 0px;
	margin-top: -15px;
	background: #ffffff;
	border: 2px solid #CDD6DD;
	border-radius: 50%;
	-webkit-transition: 200ms;
	transition: 200ms;
}
main .contents .form label input[type="radio"]:checked + span:before {
	width: 10px;
	height: 10px;
	border: 10px solid #004B9E;
}
main .contents .form label input[type="checkbox"] + span:before {
	content: "";
	display: block;
	position: absolute;
	width: 26px;
	height: 26px;
	top: 50%;
	left: 0px;
	margin-top: -15px;
	background: #ffffff;
	border: 2px solid #CDD6DD;
	border-radius: 10px;
	-webkit-transition: 200ms;
	transition: 200ms;
}
main .contents .form label input[type="checkbox"]:checked + span:before {
	background-color: #004B9E;
	border-color: #004B9E;
}
main .contents .form label input[type="checkbox"] + span:after {
	content: "";
	display: block;
	position: absolute;
	width: 30px;
	height: 30px;
	top: 50%;
	left: 0px;
	margin-top: -15px;
	background: url(../images/check.svg) no-repeat center center;
	-webkit-transform: scale(0);
	transform: scale(0);
	-webkit-transition: 200ms;
	transition: 200ms;
}
main .contents .form label input[type="checkbox"]:checked + span:after {
	-webkit-transform: scale(1);
	transform: scale(1);
}
main .contents .form .formbutton {
	text-align: center;
}
main .contents .form .formbutton button {
	position: relative;
	display: inline-block;
	width: 80%;
	max-width: 240px;
	height: 44px;
	padding: 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 48px;
	color: #ffffff;
	background: #2790B7;
	border: 0px;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
main .contents .form .formbutton button:hover {
	opacity: 1;
	border-bottom: 0px;
}
main .contents .form .formbutton button.alt {
	background: #98A6B5;
}
main .contents .form .formbutton button.alt:before {
	border: 1px solid #98A6B5;
}
main .contents .form .formbutton button:hover {
	background: #004B9E;
}
main .contents .form .formbutton button:hover:before {
	border-color: #004B9E;
}
.sp main .contents .form .formbutton button {
	display: block;
	margin: auto;
}
main .contents .form .formbutton button:before {
	content: "";
	display: block;
	position: absolute;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	top: 50%;
	left: 50%;
	border: 1px solid #2790B7;
	transform: translate(-50%, -50%) scale(1);
	transition: 0ms;
}
main .contents .form .formbutton button:hover:before {
	border-width: 3px;
	transform: translate(-50%, -50%) scale(1.3);
	opacity: 0;
	transition: 800ms;
}
main .contents .form .formbutton button + button {
	margin-left: 20px;
}
.sp main .contents .form .formbutton button + button {
	margin-left: auto;
	margin-top: 20px;
}
main .contents .box {
	margin-left: auto;
	margin-right: auto;
	max-width: 900px;
	padding: 20px;
	border: 1px solid #CDD6DD;
}
.sp main .contents .box {
	padding: 10px;
}
main .contents .googlemap {
	position: relative;
	padding-top: 50%;
}
.sp main .contents .googlemap {
	padding-top: 75%;
}
main .contents .googlemap iframe {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	-webkit-transition: opacity 400ms;
	transition: opacity 400ms;
}
main .contents .googlemap.googlemapview {
	background: url(../images/loading.gif) no-repeat center center;
}
main .contents .googlemap.googlemapview iframe {
	position: fixed;
	top: 90vh;
	opacity: 0;
	-webkit-transition: opacity 0ms;
	transition: opacity 0ms;
}
main .contents .youtube {
	max-width: 640px;
	margin-left: auto;
	margin-right: auto;
}
main .contents .youtube.w800 {
	max-width: 800px;
}
main .contents .youtube > div {
	position: relative;
	padding-top: 56.25%;
}
main .contents .youtube > div > iframe,
main .contents .youtube > div > video {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
}
main .contents .youtube p {
	margin: auto;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
* + main .contents .youtube p {
	margin-top: 8px;
}

.carousel {
	position: relative;
}
.carousel .carousel-prev {
	display: block;
	position: absolute;
	width: 50px;
	height: 50px;
	top: 50%;
	left: 20px;
	margin-top: -25px;
	background: url(../images/prev.svg) no-repeat center center;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	z-index: 30;
}
.carousel .carousel-prev:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.pc .carousel .carousel-prev {
	left: 10px;
}
.carousel .carousel-next {
	display: block;
	position: absolute;
	width: 50px;
	height: 50px;
	top: 50%;
	right: 20px;
	margin-top: -25px;
	background: url(../images/next.svg) no-repeat center center;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	z-index: 30;
}
.carousel .carousel-next:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.pc .carousel .carousel-next {
	right: 10px;
}

.visualslide .swiper-wrapper > a,
.visualslide .swiper-wrapper > span {
	position: relative;
}
.visualslide .swiper-wrapper > a .body, .visualslide .swiper-wrapper > span .body {
	position: absolute;
	display: flex;
	flex-direction: column;
	width: calc(100% - 180px);
	max-width: 920px;
	left: 50%;
	bottom: 20px;
	color: #373A3C;
	font-weight: 500;
	transform: translateX(-50%);
}
.sp .visualslide .swiper-wrapper > a .body,
.sp .visualslide .swiper-wrapper > span .body {
	width: calc(100% - 145px);
}
.visualslide .swiper-wrapper > a .title, .visualslide .swiper-wrapper > span .title {
	font-size: 40px;
	font-size: 2.5rem;
	line-height: 52px;
	line-height: 3.25rem;
}
.sp .visualslide .swiper-wrapper > a .title,
.sp .visualslide .swiper-wrapper > span .title {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 31.2px;
	line-height: 1.95rem;
}
.visualslide .swiper-wrapper > a .catch, .visualslide .swiper-wrapper > span .catch {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
	font-weight: bold;
}
.sp .visualslide .swiper-wrapper > a .catch,
.sp .visualslide .swiper-wrapper > span .catch {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
.visualslide .swiper-wrapper > a * + .catch,
.visualslide .swiper-wrapper > span * + .catch {
	margin-top: 10px;
}
.visualslide .swiper-wrapper > a .info, .visualslide .swiper-wrapper > span .info {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.sp .visualslide .swiper-wrapper > a .info,
.sp .visualslide .swiper-wrapper > span .info {
	display: none;
}
.visualslide .swiper-wrapper > a * + .info,
.visualslide .swiper-wrapper > span * + .info {
	margin-top: 10px;
}

.shorttab ul {
	display: flex;
	flex-wrap: wrap;
	margin-top: -20px;
	margin-right: -15px;
}
.sp .shorttab ul {
	margin-right: -10px;
}
.shorttab ul li {
	position: relative;
	max-width: 8em;
	margin-top: 20px;
	margin-right: 15px;
	flex-shrink: 2;
	flex-grow: 2;
}
.sp .shorttab ul li {
	margin-right: 10px;
}
.shorttab ul li.left a:after {
	left: 0px;
	right: auto;
}
.shorttab a {
	position: relative;
	display: block;
	padding-top: 13px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 19.6px;
	line-height: 1.225rem;
	font-weight: 500;
	color: #98A6B5;
	transition: opacity 200ms, color 600ms;
}
.shorttab a:hover {
	color: #004B9E;
	transition: color 200ms;
}
.shorttab a:hover:before {
	opacity: 0.5;
}
.shorttab a:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	top: 0px;
	left: 0px;
	background: #CDD6DD;
	transition: background 200ms, opacity 200ms;
}
.shorttab a:after {
	content: "";
	display: block;
	position: absolute;
	width: 0%;
	height: 2px;
	top: 0px;
	right: 0px;
	background: #004B9E;
	transition: 600ms;
}
.shorttab .current a {
	color: #004B9E;
}
.shorttab .current a:after {
	width: 100%;
}

.tab ul {
	display: flex;
	padding-bottom: 20px;
}
.tab ul li {
	position: relative;
	display: flex;
	width: 100%;
}
.tab ul li.left a:after {
	left: 0px;
	right: auto;
}
.tab ul li:before {
	content: "";
	display: block;
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -10px;
	border: 10px solid transparent;
	border-bottom: 0px;
	border-top: 0px solid #004B9E;
	transition: 600ms;
}
.tab ul li.current:before {
	border-top-width: 14px;
}
.tab a {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 12px 20px;
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 24.2px;
	line-height: 1.5125rem;
	font-weight: bold;
	color: #ffffff;
	background: transparent;
	-webkit-transition: opacity 200ms, color 600ms, background 200ms;
	transition: opacity 200ms, color 600ms, background 200ms;
}
.tab a.nolink {
	cursor: default;
}
.tab a:hover {
	background: #004B9E;
}
.tab a:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: #CDD6DD;
	z-index: -2;
}
.tab a:after {
	content: "";
	display: block;
	position: absolute;
	width: 0%;
	height: 100%;
	top: 0px;
	right: 0px;
	background: #004B9E;
	transition: 600ms;
	z-index: -1;
}
.tab a > span {
	text-align: center;
}
.tab a .sub {
	display: block;
	margin-top: 5px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	text-align: center;
}
.tab .current a:after {
	width: 100%;
}

.slideblock .slidebody {
	position: relative;
	margin-top: 15px;
	-webkit-transition: height 800ms;
	transition: height 800ms;
}
.slideblock .slidebody > div {
	position: absolute;
	left: 50%;
	top: 0px;
	width: 100%;
	opacity: 0;
	-webkit-transform: translateX(-160%);
	transform: translateX(-160%);
	-webkit-transition: -webkit-transform 1200ms, opacity 400ms 100ms;
	transition: transform 1200ms, opacity 400ms 100ms;
	pointer-events: none;
}
.slideblock .slidebody > div.left {
	-webkit-transform: translateX(60%);
	transform: translateX(60%);
}
.slideblock .slidebody > div.current {
	-webkit-transform: translateX(-50%) !important;
	transform: translateX(-50%) !important;
	opacity: 1;
	-webkit-transition: -webkit-transform 1200ms, opacity 1200ms 0ms;
	transition: transform 1200ms, opacity 1200ms 0ms;
	pointer-events: auto;
}
.slideblock .slidebody > div.slidebodyspace {
	position: relative;
	-webkit-transition: height 400ms;
	transition: height 400ms;
}
.slideblock .shorttab + .slidebody {
	margin-top: 40px;
}
.sp .slideblock .shorttab + .slidebody {
	margin-top: 30px;
}

.accent1 .contentslist > ul > li a {
	height: 100%;
	background: #ffffff;
}
.accent1 .contentslist > ul > li a .info {
	padding-left: 10px;
	padding-right: 10px !important;
}
.accent1 .contentslist > ul > li a .more {
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 10px;
}

.contentslist > ul {
	display: flex;
	flex-wrap: wrap;
	margin: -20px -5px 0px -20px;
}
.sp .contentslist > ul {
	margin-top: -10px;
	margin-left: -10px;
}
.contentslist > ul.col2 > li {
	width: calc((100% - 45px) / 2);
}
.contentslist > ul.col4 > li {
	width: calc((100% - 85px) / 4);
}
.contentslist > ul.center {
	justify-content: center;
	margin-left: -15px;
	margin-right: -15px;
}
.sp .contentslist > ul.center {
	margin-left: -10px;
	margin-right: -10px;
}
.contentslist > ul.center > li {
	width: calc((100% - 70px) / 3);
	margin-left: 10px;
	margin-right: 10px;
}
.sp .contentslist > ul.center > li {
	width: calc((100% - 30px) / 2);
	margin-left: 5px;
	margin-right: 5px;
}
.contentslist > ul.center.col1 {
	margin-left: 0px;
	margin-right: 0px;
}
.sp .contentslist > ul.center.col1 {
	margin-left: 0px;
	margin-right: 0px;
}
.contentslist > ul.center.col1 > li {
	width: 100%;
	max-width: 380px;
	margin-left: 0px;
	margin-right: 0px;
}
.sp .contentslist > ul.center.col1 > li {
	width: 100%;
	max-width: 380px;
	margin-left: 0px;
	margin-right: 0px;
}
.contentslist > ul > li {
	width: calc((100% - 65px) / 3);
	margin-top: 20px;
	margin-left: 20px;
}
.sp .contentslist > ul > li {
	width: calc((100% - 25px) / 2);
	margin-top: 10px;
	margin-left: 10px;
}
.contentslist > ul > li > a,
.contentslist > ul > li > div {
	display: flex;
	flex-direction: column;
}
.contentslist > ul > li > a > .visual,
.contentslist > ul > li > div > .visual {
	position: relative;
	overflow: hidden;
}
.contentslist > ul > li > a > .visual .title, .contentslist > ul > li > div > .visual .title {
	position: absolute;
	top: 50%;
	width: 100%;
	padding: 10px 20px;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
	color: #ffffff;
	text-align: center;
	font-weight: 500;
	text-shadow: 0 0 6px rgba(0, 0, 0, 0.8);
	transform: translateY(-50%);
	z-index: 10;
}
.sp .contentslist > ul > li > a > .visual .title,
.sp .contentslist > ul > li > div > .visual .title {
	padding: 5px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
.contentslist > ul > li > a > .visual .image img,
.contentslist > ul > li > div > .visual .image img {
	position: relative;
	display: block;
	width: 100%;
	height: auto;
	transition: 800ms;
}
.contentslist > ul > li > a > .visual:before,
.contentslist > ul > li > div > .visual:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.2);
	z-index: 5;
}
.contentslist > ul > li > a > .info,
.contentslist > ul > li > div > .info {
	padding-top: 10px;
	padding-bottom: 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
	color: #373A3C;
}
.contentslist > ul > li > a > .list,
.contentslist > ul > li > div > .list {
	padding-bottom: 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
	color: #373A3C;
}
.contentslist > ul > li > a > .list li,
.contentslist > ul > li > div > .list li {
	position: relative;
	margin-top: 10px;
	padding-left: 24px;
}
.contentslist > ul > li > a > .list li:before,
.contentslist > ul > li > div > .list li:before {
	content: "";
	display: block;
	position: absolute;
	width: 14px;
	height: 1.5em;
	left: 0px;
	background: url(../images/linkicon.svg) no-repeat center center;
}
.contentslist > ul > li > a > .list a,
.contentslist > ul > li > div > .list a {
	color: #373A3C;
}
.contentslist > ul > li > a > .list a:hover,
.contentslist > ul > li > div > .list a:hover {
	border-bottom: 1px solid #2790B7;
}
.contentslist > ul > li > a .more,
.contentslist > ul > li > div .more {
	margin-top: auto;
	padding-bottom: 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	color: #2790B7;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	transition: 400ms;
}
.contentslist > ul > li > a .more:before,
.contentslist > ul > li > div .more:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/more.svg) no-repeat center center #2790B7;
	border-radius: 50%;
	transition: 400ms;
}
.contentslist > ul > li > a .more:hover,
.contentslist > ul > li > div .more:hover {
	color: #004B9E;
}
.contentslist > ul > li > a .more:hover:before,
.contentslist > ul > li > div .more:hover:before {
	background-color: #004B9E;
}
.contentslist > ul > li a:hover .image img {
	transform: scale(1.15);
}

.contentscolumn > ul {
	display: flex;
	margin: 0px;
}
.sp .contentscolumn > ul {
	flex-wrap: wrap;
}
.contentscolumn > ul > li {
	width: 100%;
}
.contentscolumn > ul > li > a,
.contentscolumn > ul > li > div {
	position: relative;
	display: block;
}
.contentscolumn > ul > li > a .image, .contentscolumn > ul > li > div .image {
	position: relative;
	display: block;
	width: 100%;
	height: 384px;
	z-index: 0;
	overflow: hidden;
}
.spc .contentscolumn > ul > li > a .image,
.spc .contentscolumn > ul > li > div .image {
	height: 250px;
}
.sp .contentscolumn > ul > li > a .image, .sp .contentscolumn > ul > li > div .image {
	position: absolute;
	height: 100%;
}
.contentscolumn > ul > li > a .image span, .contentscolumn > ul > li > div .image span {
	position: relative;
	display: block;
	width: 100%;
	height: 384px;
	background: none no-repeat center center;
	background-size: cover;
	transition: transform 800ms;
}
.spc .contentscolumn > ul > li > a .image span, .spc .contentscolumn > ul > li > div .image span {
	height: 250px;
}
.sp .contentscolumn > ul > li > a .image span, .sp .contentscolumn > ul > li > div .image span {
	position: absolute;
	height: 100%;
}
.contentscolumn > ul > li > a .body, .contentscolumn > ul > li > div .body {
	position: absolute;
	display: flex;
	flex-direction: column;
	width: 100%;
	bottom: 0px;
	left: 0px;
	color: #ffffff;
	z-index: 15;
}
.sp .contentscolumn > ul > li > a .body,
.sp .contentscolumn > ul > li > div .body {
	justify-content: flex-end;
	position: relative;
	min-height: 200px;
	padding-top: 15px;
}
.contentscolumn > ul > li > a .body .title, .contentscolumn > ul > li > div .body .title {
	padding: 0px 30px 10px;
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 26.4px;
	line-height: 1.65rem;
	font-weight: 500;
}
.spc .contentscolumn > ul > li > a .body .title, .spc .contentscolumn > ul > li > div .body .title {
	padding: 0px 15px 10px;
}
.contentscolumn > ul > li > a .body .info, .contentscolumn > ul > li > div .body .info {
	padding: 0px 30px 10px;
	min-height: calc(3rem + 10px);
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
}
.spc .contentscolumn > ul > li > a .body .info, .spc .contentscolumn > ul > li > div .body .info {
	padding: 0px 15px 10px;
}
.contentscolumn > ul > li > a .body .more, .contentscolumn > ul > li > div .body .more {
	padding: 0px 30px 15px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	transition: 400ms;
}
.spc .contentscolumn > ul > li > a .body .more, .spc .contentscolumn > ul > li > div .body .more {
	padding: 0px 15px 15px;
}
.contentscolumn > ul > li > a .body .more:before, .contentscolumn > ul > li > div .body .more:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/moreb.svg) no-repeat center center #ffffff;
	border-radius: 50%;
	transition: 400ms;
}
.contentscolumn > ul > li > a .body .more:hover, .contentscolumn > ul > li > div .body .more:hover {
	opacity: 0.7;
}
.contentscolumn > ul > li > a:after, .contentscolumn > ul > li > div:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 60%;
	bottom: 0px;
	left: 0px;
	background: -moz-linear-gradient(top, rgba(2, 24, 43, 0) 0%, rgba(2, 24, 43, 0.7) 100%);
	background: -webkit-linear-gradient(top, rgba(2, 24, 43, 0) 0%, rgba(2, 24, 43, 0.7) 100%);
	background: linear-gradient(to bottom, rgba(2, 24, 43, 0) 0%, rgba(2, 24, 43, 0.7) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0002182b', endColorstr='#cc02182b',GradientType=0 );
}
.sp .contentscolumn > ul > li > a:after,
.sp .contentscolumn > ul > li > div:after {
	height: 90%;
}
.contentscolumn > ul > li a:hover .image span {
	transform: scale(1.15);
}

.accent1 .articlelist > ul > li a,
.accent1 .articlelist > ul > li div,
.accent2 .articlelist > ul > li a,
.accent2 .articlelist > ul > li div {
	background: #ffffff;
}
.accent1 .articlelist > ul > li a .body,
.accent1 .articlelist > ul > li div .body,
.accent2 .articlelist > ul > li a .body,
.accent2 .articlelist > ul > li div .body {
	padding: 0px 10px !important;
}
.accent1 .articlelist > ul > li a .more,
.accent1 .articlelist > ul > li div .more,
.accent2 .articlelist > ul > li a .more,
.accent2 .articlelist > ul > li div .more {
	margin-bottom: 10px;
}

.articlelist.ctrlpagenation > ul > li:nth-child(n+21) {
	display: none;
}
.articlelist > p {
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
}
.articlelist > ul > li {
	margin-bottom: 40px;
}
.sp .articlelist > ul > li {
	margin-bottom: 30px;
}
.articlelist > ul > li:last-child {
	margin-bottom: 0px;
}
.sp .articlelist > ul > li:last-child {
	margin-bottom: 0px;
}
.articlelist > ul > li > * {
	position: relative;
	display: flex;
	align-items: flex-start;
}
.sp .articlelist > ul > li > * {
	flex-direction: column;
}
.articlelist > ul > li > *.bgcolor {
	background: #F0F3F5;
}
.articlelist.col2 > ul {
	display: flex;
	flex-wrap: wrap;
	margin-left: -60px;
	margin-top: -60px;
	margin-right: -5px;
}
.sp .articlelist.col2 > ul {
	margin-left: 0px;
	margin-top: -30px;
	margin-right: 0px;
}
.articlelist.col2 > ul > li {
	display: flex;
	width: calc((100% - 125px) / 2);
	margin-left: 60px;
	margin-top: 60px;
	margin-bottom: 0px;
}
.sp .articlelist.col2 > ul > li {
	width: 100%;
	margin-left: 0px;
	margin-top: 30px;
}
.articlelist.col2 > ul > li > * {
	flex-direction: column;
	width: 100%;
}
.articlelist.col3 > ul, .articlelist.col4 > ul {
	display: flex;
	flex-wrap: wrap;
	margin-left: -20px;
	margin-top: -40px;
	margin-right: -5px;
}
.sp .articlelist.col3 > ul, .sp .articlelist.col4 > ul {
	margin-left: -10px;
	margin-top: -30px;
}
.articlelist.col3 > ul > li, .articlelist.col4 > ul > li {
	display: flex;
	width: calc((100% - 85px) / 4);
	margin-left: 20px;
	margin-top: 40px;
	margin-bottom: 0px;
}
.sp .articlelist.col3 > ul > li, .sp .articlelist.col4 > ul > li {
	width: calc((100% - 25px) / 2);
	margin-left: 10px;
	margin-top: 30px;
}
.articlelist.col3 > ul > li > *, .articlelist.col4 > ul > li > * {
	flex-direction: column;
	width: 100%;
}
.articlelist.col3 .image, .articlelist.col4 .image {
	display: block;
	align-self: center;
	max-width: 100%;
	padding-right: 0px;
}
.articlelist.col3 .body, .articlelist.col4 .body {
	margin-top: 15px;
	height: 100%;
}
.sp .articlelist.col3 .body, .sp .articlelist.col4 .body {
	margin-top: 0px;
}
.articlelist.col3 .image + .body, .articlelist.col4 .image + .body {
	padding-left: 0px;
}
.articlelist.col3 .bgcolor .image + .body, .articlelist.col4 .bgcolor .image + .body {
	padding-left: 10px;
}
.articlelist.col3 * + .info, .articlelist.col4 * + .info {
	margin-top: 10px;
}
.articlelist.col3.center > ul, .articlelist.col4.center > ul {
	justify-content: center;
	margin-left: -15px;
	margin-right: -15px;
}
.sp .articlelist.col3.center > ul, .sp .articlelist.col4.center > ul {
	margin-left: -10px;
	margin-right: -10px;
}
.articlelist.col3.center > ul > li, .articlelist.col4.center > ul > li {
	width: calc((100% - 90px) / 4);
	margin-left: 10px;
	margin-right: 10px;
}
.sp .articlelist.col3.center > ul > li, .sp .articlelist.col4.center > ul > li {
	width: calc((100% - 30px) / 2);
	margin-left: 5px;
	margin-right: 5px;
}
.sp .articlelist.col3 > ul {
	margin-left: 0px;
	margin-right: 0px;
}
.articlelist.col3 > ul > li {
	width: calc((100% - 65px) / 3);
}
.sp .articlelist.col3 > ul > li {
	width: 100%;
	margin-left: 0px;
}
.articlelist.col3.center > ul {
	margin-left: -15px;
	margin-right: -15px;
}
.sp .articlelist.col3.center > ul {
	margin-left: 0px;
	margin-right: 0px;
}
.articlelist.col3.center > ul > li {
	width: calc((100% - 70px) / 3);
}
.sp .articlelist.col3.center > ul > li {
	width: 100%;
	margin-left: 0px;
	margin-right: 0px;
}
.articlelist.border > ul > li {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #CDD6DD;
}
.sp .articlelist.border > ul > li {
	margin-bottom: 15px;
	padding-bottom: 15px;
}
.articlelist.border > ul > li:last-child {
	margin-bottom: 0px;
}
.sp .articlelist.border > ul > li:last-child {
	margin-bottom: 0px;
}
#sidecolumn .articlelist > ul > li {
	margin-bottom: 20px;
}
.sp #sidecolumn .articlelist > ul > li {
	margin-bottom: 20px;
}
#sidecolumn .articlelist > ul > li:last-child {
	margin-bottom: 0px;
}
.sp #sidecolumn .articlelist > ul > li:last-child {
	margin-bottom: 0px;
}
.sp #sidecolumn .articlelist > ul > li > * {
	flex-direction: row;
}
#sidecolumn .articlelist .image {
	width: 50% !important;
}
#sidecolumn .articlelist .body {
	padding-left: 0px;
}
#sidecolumn .articlelist .body .title {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
.sp #sidecolumn .articlelist .body .title {
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
.sp #sidecolumn .articlelist .body {
	padding-left: 0px;
}
#sidecolumn .articlelist .image + .body {
	padding-left: 15px;
}
.sp #sidecolumn .articlelist .image + .body {
	padding-left: 15px;
}
.articlelist a:hover .image img {
	transform: scale(1.15) rotate(0.001deg);
}
.articlelist a.hover {
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.articlelist a.hover:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.articlelist a.cover {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #ffffff;
	opacity: 0;
	z-index: 1;
	-webkit-transition: opacity 0.2s;
	transition: opacity 0.2s;
}
.articlelist a.cover:hover {
	opacity: 0.3;
}
.articlelist .image {
	position: relative;
	flex-shrink: 0;
	min-height: 0%;
	margin-left: auto;
	margin-right: auto;
	background: #CDD6DD;
	overflow: hidden;
}
.sp .articlelist .image {
	width: auto !important;
	margin-bottom: 15px;
}
.articlelist .image img {
	transition: 800ms;
}
.articlelist .image.margin {
	margin-top: 20px;
	margin-left: 20px;
	margin-right: 20px;
}
.articlelist .image:after {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	border: 1px solid #CDD6DD;
	z-index: 15;
}
.articlelist .bgcolor .image {
	width: 100% !important;
}
.articlelist .bgcolor .image img {
	width: 100% !important;
}
.articlelist .floatcategory {
	position: absolute;
	display: block;
	top: 10px;
	left: 10px;
	min-width: 90px;
	height: auto;
	padding: 3px 10px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
	font-weight: 500;
	color: #373A3C;
	text-align: center;
	border: 1px solid #CDD6DD;
	background: #F0F3F5;
	z-index: 18;
}
.articlelist .floatcategory.posi {
	color: #000000;
	border-color: #000000;
}
.articlelist .head {
	display: flex;
	align-items: center;
}
.sp .articlelist .head {
	display: flex;
	flex-wrap: wrap;
}
.articlelist .head .title {
	margin-top: 0px;
}
.sp .articlelist .head .title {
	margin-top: 10px;
}
.articlelist .atop {
	display: flex;
	align-items: center;
	align-self: flex-start;
	flex-shrink: 0;
}
.sp .articlelist .atop {
	display: flex;
	flex-wrap: wrap;
}
.articlelist * + .head {
	margin-top: 10px;
}
.articlelist .category {
	padding: 5px 10px;
	min-width: calc(11em + 20px);
	margin-right: 20px;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 15.6px;
	line-height: 0.975rem;
	font-weight: 500;
	color: #707F89;
	text-align: center;
	background: #CDD6DD;
}
.articlelist .category.none {
	background: transparent;
}
.articlelist .category.dark {
	color: #ffffff;
	background: #004B9E;
}
.articlelist .firstcategory {
	position: absolute;
	top: 8px;
	left: 8px;
	padding: 5px 10px;
	min-width: calc(6em + 20px);
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 15.6px;
	line-height: 0.975rem;
	font-weight: 500;
	color: #707F89;
	text-align: center;
	background: #CDD6DD;
	z-index: 50;
}
.articlelist .firstcategory + img {
	margin-top: 0px !important;
}
.articlelist .date {
	margin-right: 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
	color: #373A3C;
}
.articlelist .ltitle {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 31.2px;
	line-height: 1.95rem;
	font-weight: 500;
	color: #373A3C;
}
.sp .articlelist .ltitle {
	width: 100%;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
}
.sp .articlelist * + .ltitle {
	margin-top: 5px;
}
.articlelist .title + .ltitle {
	margin-top: 10px;
}
.articlelist .stitle {
	font-size: 16px;
	font-size: 1rem;
	line-height: 22.4px;
	line-height: 1.4rem;
	font-weight: bold;
	color: #373A3C;
}
.articlelist .head + .stitle {
	margin-top: 10px;
}
.articlelist .body {
	display: flex;
	flex-direction: column;
	padding-left: 0px;
	width: 100%;
}
.articlelist .body .title {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
}
.sp .articlelist .body .title {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
.sp .articlelist .body {
	padding-left: 0px;
}
.articlelist .image + .body {
	padding-left: 20px;
}
.sp .articlelist .image + .body {
	padding-left: 0px;
}
.articlelist .bgcolor .body {
	padding: 0px 10px 10px;
}
.articlelist .info {
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	font-weight: 400;
	color: #373A3C;
}
.articlelist * + .info {
	margin-top: 20px;
}
.articlelist .dl {
	display: block;
	color: #373A3C;
}
.articlelist * + .dl {
	margin-top: 20px;
}
.articlelist .title {
	display: block;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
	color: #373A3C;
}
.sp .articlelist .title {
	width: 100%;
}
.articlelist .title a {
	color: #2790B7;
	z-index: 2;
}
.articlelist .title a:hover {
	border-bottom: 1px solid #2790B7;
}
.articlelist .title .type {
	display: inline-block;
	margin-right: 5px;
	overflow: hidden;
}
.articlelist .title .type.pdf {
	width: 20px;
	vertical-align: top;
	text-indent: -1000px;
	background: url(../images/pdf.svg) no-repeat center center;
}
.articlelist * + .title {
	margin-top: 20px;
}
.articlelist .ltitle + .title {
	margin-top: 5px;
}
.articlelist .sub {
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	font-weight: 500;
	color: #707F89;
}
.articlelist * + .sub {
	margin-top: 10px;
}
.articlelist .more {
	margin-top: auto;
	padding-top: 15px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	color: #2790B7;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	transition: 400ms;
}
.articlelist .more:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/more.svg) no-repeat center center #2790B7;
	border-radius: 50%;
	transition: 400ms;
}
.articlelist .more:hover {
	color: #004B9E;
}
.articlelist .more:hover:before {
	background-color: #004B9E;
}
.articlelist .dl + .more {
	padding-top: 20px;
}
.articlelist .carousel {
	padding: 0px 80px;
}
.sp .articlelist .carousel {
	padding: 0px 70px;
}
.articlelist .carousel .carousel-prev {
	left: 0px;
}
.articlelist .carousel .carousel-next {
	right: 0px;
}
.articlelist .carousel .swiper-slide {
	height: auto;
}
.articlelist .carousel ul {
	text-align: left;
}
.articlelist .carousel li {
	width: calc((100% - 60px) / 4);
	margin-left: 0px;
	margin-right: 20px;
}
.sp .articlelist .carousel li {
	width: 100%;
	margin-right: 10px;
}
.articlelist .carousel li > * {
	display: block;
}
.articlelist .carousel li > a {
	display: flex;
	flex-direction: column;
	height: 100%;
}

h2 + .articlelist > ul {
	margin-top: -45px !important;
}
.sp h2 + .articlelist > ul {
	margin-top: -30px !important;
}
h2 + .articlelist.col4 > ul {
	margin-top: -90px !important;
}
.sp h2 + .articlelist.col4 > ul {
	margin-top: -60px !important;
}

h2.toph2 + .articlelist.col4 > ul {
	margin-top: -40px !important;
}
.sp h2.toph2 + .articlelist.col4 > ul {
	margin-top: -30px !important;
}

.booklist ul {
	display: flex;
	justify-content: space-between;
	margin-left: -10px;
	margin-right: -10px;
}
.sp .booklist ul {
	justify-content: space-around;
	flex-wrap: wrap;
	margin-top: -30px;
	margin-left: -5px;
	margin-right: -5px;
}
.booklist.center ul {
	justify-content: space-around;
}
.booklist li {
	display: flex;
	justify-content: center;
	margin: 0px 10px;
}
.sp .booklist li {
	max-width: calc((100% - 20px) / 2);
	margin-top: 30px;
	margin: 30px 5px 0px;
}
.booklist li > * {
	display: flex;
	flex-direction: column;
	width: 100%;
	max-width: 210px;
}
.booklist a {
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.booklist a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.booklist .image {
	position: relative;
	align-self: center;
	background: #ffffff;
}
.booklist .image:after {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	border: 1px solid #CDD6DD;
}
.booklist .body {
	display: flex;
	flex-direction: column;
	margin-top: 20px;
	padding: 10px;
	height: 100%;
	background: #F0F3F5;
}
.sp .booklist .body {
	margin-top: 10px;
}
.booklist .title {
	margin-bottom: 10px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 27px;
	line-height: 1.6875rem;
	font-weight: 500;
	color: #373A3C;
}
.booklist .sub {
	margin-top: auto;
	padding-top: 10px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	color: #707F89;
	border-top: 1px solid #707F89;
}
.booklist .more {
	position: relative;
	margin-top: auto;
	padding-top: 15px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	color: #2790B7;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	transition: 400ms;
}
.booklist .more:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	top: 15px;
	left: 0px;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/more.svg) no-repeat center center #2790B7;
	border-radius: 50%;
	transition: 400ms;
}
.booklist .more:hover {
	color: #004B9E;
}
.booklist .more:hover:before {
	background-color: #004B9E;
}
.booklist .sub + .more {
	margin-top: 0px;
}

.ssfbookimage {
	display: flex;
	flex-direction: column;
}
.ssfbookimage .image {
	position: relative;
	align-self: center;
	background: #ffffff;
}
.ssfbookimage .image:after {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	border: 1px solid #CDD6DD;
}

.faq {
	margin-left: auto;
	margin-right: auto;
	max-width: 900px;
}
.faq dt {
	position: relative;
	margin-left: 64px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: bold;
}
.faq dt > span:first-child {
	position: absolute;
	display: block;
	width: 44px;
	height: 44px;
	left: -64px;
	top: 0.75rem;
	margin-top: -22px;
	text-indent: -10000px;
	background: url(../images/q.svg) no-repeat center center;
	overflow: hidden;
}
.faq dd {
	position: relative;
	margin: 30px 0px 0px 64px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 27.2px;
	line-height: 1.7rem;
}
.faq dd > span:first-child {
	position: absolute;
	display: block;
	width: 44px;
	height: 44px;
	left: -64px;
	top: 0.85rem;
	margin-top: -22px;
	text-indent: -10000px;
	background: url(../images/a.svg) no-repeat center center;
	overflow: hidden;
}
.faq dd a {
	color: #2790B7;
}
.faq dd a:hover {
	border-bottom: 1px solid #2790B7;
}
.faq dd .text {
	margin-top: 0px;
}
.faq dd + dt {
	margin-top: 50px;
}

.linklist ul {
	display: flex;
	flex-wrap: wrap;
	margin-top: -20px;
	margin-left: -20px;
	margin-right: -5px;
}
.sp .linklist ul {
	margin-top: -15px;
	margin-left: -10px;
}
.linklist ul.col1 > * {
	width: calc((100% - 20px * 1 - 5px) / 1);
}
.linklist ul.col1 > *.size2 {
	width: calc(((100% - 20px * 1 - 5px) / 1) * 2 + 20px * 1);
}
.linklist ul.col1 > *.size1 {
	width: calc(((100% - 20px * 1 - 5px) / 1) * 1 + 20px * 0);
}
.sp .linklist ul.col1 > * {
	width: calc((100% - 10px * 1 - 5px) / 1);
}
.sp .linklist ul.spcol1 > * {
	width: calc((100% - 10px * 1 - 5px) / 1) !important;
}
.linklist ul.col2 > * {
	width: calc((100% - 20px * 2 - 5px) / 2);
}
.linklist ul.col2 > *.size2 {
	width: calc(((100% - 20px * 2 - 5px) / 2) * 2 + 20px * 1);
}
.sp .linklist ul.col2 > * {
	width: calc((100% - 10px * 2 - 5px) / 2);
}
.sp .linklist ul.spcol2 > * {
	width: calc((100% - 10px * 2 - 5px) / 2) !important;
}
.linklist ul.col3 > * {
	width: calc((100% - 20px * 3 - 5px) / 3);
}
.linklist ul.col3 > *.size2 {
	width: calc(((100% - 20px * 3 - 5px) / 3) * 2 + 20px * 1);
}
.linklist ul.col3 > *.size3 {
	width: calc(((100% - 20px * 3 - 5px) / 3) * 3 + 20px * 2);
}
.sp .linklist ul.col3 > * {
	width: calc((100% - 10px * 3 - 5px) / 3);
}
.sp .linklist ul.spcol3 > * {
	width: calc((100% - 10px * 3 - 5px) / 3) !important;
}
.linklist ul.col4 > * {
	width: calc((100% - 20px * 4 - 5px) / 4);
}
.linklist ul.col4 > *.size2 {
	width: calc(((100% - 20px * 4 - 5px) / 4) * 2 + 20px * 1);
}
.linklist ul.col4 > *.size3 {
	width: calc(((100% - 20px * 4 - 5px) / 4) * 3 + 20px * 2);
}
.linklist ul.col4 > *.size4 {
	width: calc(((100% - 20px * 4 - 5px) / 4) * 4 + 20px * 3);
}
.sp .linklist ul.col4 > * {
	width: calc((100% - 10px * 4 - 5px) / 4);
}
.sp .linklist ul.spcol4 > * {
	width: calc((100% - 10px * 4 - 5px) / 4) !important;
}
.linklist ul.col5 > * {
	width: calc((100% - 20px * 5 - 5px) / 5);
}
.linklist ul.col5 > *.size2 {
	width: calc(((100% - 20px * 5 - 5px) / 5) * 2 + 20px * 1);
}
.linklist ul.col5 > *.size3 {
	width: calc(((100% - 20px * 5 - 5px) / 5) * 3 + 20px * 2);
}
.linklist ul.col5 > *.size4 {
	width: calc(((100% - 20px * 5 - 5px) / 5) * 4 + 20px * 3);
}
.linklist ul.col5 > *.size5 {
	width: calc(((100% - 20px * 5 - 5px) / 5) * 5 + 20px * 4);
}
.sp .linklist ul.col5 > * {
	width: calc((100% - 10px * 5 - 5px) / 5);
}
.sp .linklist ul.spcol5 > * {
	width: calc((100% - 10px * 5 - 5px) / 5) !important;
}
.linklist ul.line {
	margin-right: 0px;
}
.linklist ul.line li {
	width: auto;
}
.linklist li {
	position: relative;
	width: calc((100% - 20px - 5px) / 1);
	margin-top: 20px;
	margin-left: 20px;
	padding-left: 24px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 27.2px;
	line-height: 1.7rem;
	font-weight: 400;
}
.sp .linklist li {
	width: calc((100% - 10px - 5px) / 1);
	margin-top: 15px;
	margin-left: 10px;
}
.linklist li:before {
	content: "";
	display: block;
	position: absolute;
	width: 14px;
	height: 1.7em;
	left: 0px;
	background: url(../images/linkicon.svg) no-repeat center center;
}
.linklist a {
	font-weight: 500;
	color: #373A3C;
}
.linklist a:hover {
	border-bottom: 1px solid #2790B7;
}

.pagenation {
	text-align: center;
}
.pagenation.first .prev {
	display: none;
}
.pagenation.first li:nth-child(n+7) {
	display: none;
}
.pagenation.first li.next {
	display: block;
}
.pagenation ul {
	position: relative;
	display: inline-block;
	padding: 0px 70px;
	font-size: 0;
}
.pagenation li {
	display: inline-block;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 50px;
}
.pagenation .current {
	color: #004B9E;
}
.pagenation .current a {
	color: #004B9E;
}
.pagenation a {
	display: block;
	width: 2em;
	color: #98A6B5;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.pagenation a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.pagenation .next {
	position: absolute;
	right: 0px;
	top: 0px;
}
.pagenation .next a {
	width: 50px;
	text-indent: -10000px;
	background: url(../images/next.svg) no-repeat center center;
	overflow: hidden;
}
.pagenation .prev {
	position: absolute;
	left: 0px;
	top: 0px;
}
.pagenation .prev a {
	width: 50px;
	text-indent: -10000px;
	background: url(../images/prev.svg) no-repeat center center;
	overflow: hidden;
}

.pagenavi ul {
	position: relative;
	display: block;
	overflow: hidden;
}
.pagenavi li {
	margin: 5px 0px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.pagenavi a {
	display: flex;
	align-items: center;
	min-height: 50px;
	padding: 5px 0px;
	color: #373A3C;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.pagenavi a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.pagenavi .next {
	float: right;
}
.pagenavi .next a {
	padding-right: 70px;
	background: url(../images/next.svg) no-repeat right center;
}
.pagenavi .prev {
	float: left;
}
.pagenavi .prev a {
	padding-left: 70px;
	background: url(../images/prev.svg) no-repeat left center;
}

.themesearch {
	display: flex;
	justify-content: space-between;
}
.themesearch > div {
	width: calc((100% - 30px) / 2);
}
.pc .themesearch > div {
	width: calc((100% - 20px) / 2);
}
.sp .themesearch > div {
	width: 100%;
}
.themesearch > .visual {
	position: relative;
	z-index: 10;
	background: #CDD6DD;
}
.sp .themesearch > .visual {
	display: none;
}
.themesearch > .visual > div {
	position: absolute;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity 500ms;
	z-index: 0;
}
.themesearch > .visual > div.show {
	opacity: 1;
}
.themesearch > .visual > div .image {
	position: absolute;
	width: 100%;
	height: 100%;
	background: none no-repeat center center;
	background-size: cover;
	z-index: 5;
	transition: opacity 1s, transform 1s;
}
.themesearch > .visual > div .body {
	position: absolute;
	display: flex;
	flex-direction: column;
	width: 100%;
	bottom: 0px;
	left: 0px;
	color: #ffffff;
	z-index: 15;
}
.themesearch > .visual > div .body .title {
	padding: 0px 30px 10px;
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 26.4px;
	line-height: 1.65rem;
	font-weight: 500;
}
.themesearch > .visual > div .body .info {
	padding: 0px 30px 30px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
}
.themesearch > .visual > div:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 50%;
	bottom: 0px;
	left: 0px;
	background: -moz-linear-gradient(top, rgba(2, 24, 43, 0) 0%, rgba(2, 24, 43, 0.8) 100%);
	background: -webkit-linear-gradient(top, rgba(2, 24, 43, 0) 0%, rgba(2, 24, 43, 0.8) 100%);
	background: linear-gradient(to bottom, rgba(2, 24, 43, 0) 0%, rgba(2, 24, 43, 0.8) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0002182b', endColorstr='#cc02182b',GradientType=0 );
	z-index: 10;
}
.themesearch .menu ul {
	display: flex;
	flex-wrap: wrap;
	margin-left: -35px;
	margin-right: -5px;
	margin-top: -30px;
}
.pc .themesearch .menu ul {
	margin-left: -20px;
	margin-top: -20px;
}
.sp .themesearch .menu ul {
	margin-left: -10px;
}
.themesearch .menu li {
	position: relative;
	display: flex;
	width: calc((100% - 110px) / 3);
	margin-left: 35px;
	margin-top: 30px;
	transition: box-shadow 400ms;
}
.pc .themesearch .menu li {
	width: calc((100% - 65px) / 3);
	margin-left: 20px;
	margin-top: 20px;
}
.sp .themesearch .menu li {
	width: calc((100% - 25px) / 2);
	margin-left: 10px;
}
.themesearch .menu li:before {
	content: "";
	display: block;
	position: absolute;
	width: calc(100% + 20px);
	height: 1px;
	top: -15px;
	left: -10px;
	background: #CDD6DD;
}
.pc .themesearch .menu li:before {
	width: calc(100% + 10px);
	top: -10px;
	left: -5px;
}
.sp .themesearch .menu li:before {
	display: none;
}
.themesearch .menu li:after {
	content: "";
	display: block;
	position: absolute;
	width: 1px;
	height: calc(100% + 20px);
	top: -10px;
	left: -18px;
	background: #CDD6DD;
}
.pc .themesearch .menu li:after {
	height: calc(100% + 10px);
	top: -5px;
	left: -10px;
}
.sp .themesearch .menu li:after {
	display: none;
}
.themesearch .menu li:nth-child(1):before, .themesearch .menu li:nth-child(2):before, .themesearch .menu li:nth-child(3):before {
	display: none;
}
.themesearch .menu li:nth-child(2):after, .themesearch .menu li:nth-child(3):after {
	top: 0px;
	height: calc(100% + 10px);
}
.pc .themesearch .menu li:nth-child(2):after, .pc .themesearch .menu li:nth-child(3):after {
	height: calc(100% + 5px);
}
.themesearch .menu li:nth-child(3n+1):before {
	left: 0px;
	width: calc(100% + 10px);
}
.pc .themesearch .menu li:nth-child(3n+1):before {
	width: calc(100% + 5px);
}
.themesearch .menu li:nth-child(3n+1):after {
	display: none;
}
.themesearch .menu li:nth-child(3n+3):before {
	width: calc(100% + 10px);
}
.pc .themesearch .menu li:nth-child(3n+3):before {
	width: calc(100% + 5px);
}
.themesearch .menu li.last:after {
	height: calc(100% + 10px);
}
.pc .themesearch .menu li.last:after {
	height: calc(100% + 5px);
}
.themesearch .menu .themesearchtitle {
	margin-top: 20px;
	margin-bottom: 15px;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 22px;
	line-height: 1.375rem;
	font-weight: bold;
	text-align: center;
}
.themesearch .menu .panel {
	position: relative;
	display: flex;
	padding: 5px;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-height: 74px;
	text-align: center;
	background: #CDD6DD;
	transition: background 400ms, color 400ms;
	overflow: hidden;
}
.tablet .themesearch .menu .panel {
	min-height: 60px;
}
.themesearch .menu .panel.large {
	min-height: 150px;
}
.themesearch .menu .panel.large .title {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 31.2px;
	line-height: 1.95rem;
}
.tablet .themesearch .menu .panel.large {
	min-height: 120px;
}
.themesearch .menu .panel .title {
	width: 100%;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: 700;
	color: #373A3C;
}
.themesearch .menu .panel .title span {
	display: inline-block;
}
.pc .themesearch .menu .panel .title {
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
.themesearch .menu .panel .info {
	width: 100%;
	margin-top: 0px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 25.2px;
	line-height: 1.575rem;
	font-weight: 500;
	color: #ffffff;
	height: 0px;
	overflow: hidden;
	opacity: 0;
	transition: 400ms;
}
.themesearch .menu .panel .info span {
	display: inline-block;
}
.pc .themesearch .menu .panel .info {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.sp .themesearch .menu .panel .info {
	margin-top: 10px;
	color: #373A3C;
	height: auto;
	opacity: 1;
}
.themesearch .menu .panel .more {
	position: absolute;
	display: block;
	bottom: 50%;
	right: -28px;
	margin-bottom: -9px;
	padding: 0px;
	width: 18px;
	height: 18px;
	text-indent: -10000px;
	text-align: left;
	overflow: hidden;
	background: url(../images/moreb.svg) no-repeat center center #ffffff;
	border-radius: 50%;
	transition: right 400ms;
}
.sp .themesearch .menu .panel .more {
	display: none;
}
.themesearch .menu .panel:before {
	content: "";
	display: block;
	position: absolute;
	width: 0px;
	height: 100%;
	bottom: 0px;
	right: 0px;
	background: -moz-linear-gradient(left, rgba(0, 75, 158, 0) 0%, #004b9e 100%);
	background: -webkit-linear-gradient(left, rgba(0, 75, 158, 0) 0%, #004b9e 100%);
	background: linear-gradient(to right, rgba(0, 75, 158, 0) 0%, #004b9e 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00004b9e', endColorstr='#004b9e',GradientType=1 );
	transition: width 400ms;
}
.themesearch .menu .current {
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.3);
}
.sp .themesearch .menu .current {
	box-shadow: 0 0 0px rgba(0, 0, 0, 0);
}
.themesearch .menu .current .panel {
	background: #004B9E;
}
.sp .themesearch .menu .current .panel {
	background: #CDD6DD;
}
.themesearch .menu .current .panel:before {
	width: 80px;
}
.sp .themesearch .menu .current .panel:before {
	width: 0px;
}
.themesearch .menu .current .panel .title {
	color: #ffffff;
}
.sp .themesearch .menu .current .panel .title {
	color: #373A3C;
}
.themesearch .menu .current .panel .info {
	margin-top: 10px;
	height: auto;
	opacity: 1;
}
.sp .themesearch .menu .current .panel .info {
	color: #373A3C;
}
.themesearch .menu .current .panel .more {
	right: 10px;
}
.themesearch .menu .visual {
	display: none;
}

.reportsearchseparate {
	display: flex;
	justify-content: center;
}
.tablet .reportsearchseparate {
	display: block;
}
.reportsearchseparate .searchbox {
	width: 100%;
	padding: 25px 10px 20px;
	background: #ffffff;
	border: 1px solid #CDD6DD;
}
.tablet .reportsearchseparate .searchbox {
	padding: 10px 10px 5px;
}
.reportsearchseparate .searchbox.keywordbox {
	min-width: 25%;
	max-width: 35%;
}
.reportsearchseparate .searchbox.keywordbox.width50 {
	max-width: 50%;
}
.reportsearchseparate .searchbox.keywordbox.width40 {
	max-width: 40%;
}
.tablet .reportsearchseparate .searchbox.keywordbox {
	max-width: 100%;
}
.reportsearchseparate .searchbox .searchele {
	padding: 0px 20px;
}
.tablet .reportsearchseparate .searchbox .searchele {
	padding: 10px 0px 5px;
}
.reportsearchseparate .searchbox .searchmulti {
	align-self: flex-end;
	align-items: center;
	flex-direction: row !important;
	justify-content: center;
	width: auto !important;
	height: 50px;
	font-size: 24px;
	font-weight: bold;
}
.tablet .reportsearchseparate .searchbox .searchmulti {
	padding-top: 10px;
	height: auto;
}
.reportsearchseparate .searchbox .fixedcolumn {
	display: flex;
}
.tablet .reportsearchseparate .searchbox .fixedcolumn {
	display: block;
}
.reportsearchseparate .searchbox .fixedcolumn > div {
	display: flex;
	flex-direction: column;
	width: 100%;
}
.reportsearchseparate .searchbox .searchbutton {
	margin-top: 20px;
	margin-bottom: 5px;
}
.reportsearchseparate .searchbox .searchbutton .formbutton {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: auto;
	padding: 5px 10px;
	width: 50%;
	min-width: 200px;
	min-height: 44px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	color: #ffffff;
	background: #2790B7;
	border: 0px;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.reportsearchseparate .searchbox .searchbutton .formbutton:hover {
	opacity: 1;
	border-bottom: 0px;
}
.reportsearchseparate .searchbox .searchbutton .formbutton:hover {
	background: #004B9E;
}
.reportsearchseparate .searchbox .searchbutton .formbutton:hover:before {
	border-color: #004B9E;
}
.reportsearchseparate .searchbox .searchbutton .formbutton.labelen {
	font-family: 'Poppins', sans-serif;
}
.reportsearchseparate .searchbox .searchbutton .formbutton:before {
	content: "";
	display: block;
	position: absolute;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	top: 50%;
	left: 50%;
	border: 1px solid #2790B7;
	transform: translate(-50%, -50%) scale(1);
	transition: 0ms;
}
.reportsearchseparate .searchbox .searchbutton .formbutton:hover:before {
	border-width: 3px;
	transform: translate(-50%, -50%) scale(1.3);
	opacity: 0;
	transition: 800ms;
}
.reportsearchseparate .searchbox + .searchbox {
	margin-left: 20px;
}
.tablet .reportsearchseparate .searchbox + .searchbox {
	margin-top: 15px;
	margin-left: 0px;
}
.reportsearchseparate .title {
	margin: 0px 0px 20px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: 400;
}
.tablet .reportsearchseparate .title {
	margin-bottom: 10px;
}
.reportsearchseparate .title .sub {
	display: inline-block;
	margin-left: 0.8em;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	color: #707F89;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	vertical-align: middle;
}
.reportsearchseparate .selectbox {
	margin-top: auto;
}
.reportsearchseparate form {
	display: block;
}

.reportsearch {
	display: flex;
	justify-content: center;
	padding: 25px 10px 20px;
	background: #ffffff;
	border: 1px solid #CDD6DD;
}
.tablet .reportsearch {
	display: block;
	padding: 10px 10px 5px;
}
.reportsearch > div {
	width: 25%;
	padding: 0px 20px;
}
.tablet .reportsearch > div {
	width: 100%;
	max-width: 100%;
	padding: 10px 0px 5px;
}
.reportsearch > div:first-child {
	width: auto;
	min-width: 25%;
	max-width: 35%;
}
.reportsearch > div:first-child.width75 {
	max-width: 75%;
}
.reportsearch > div:first-child.width50 {
	max-width: 50%;
}
.tablet .reportsearch > div:first-child {
	width: 100%;
	max-width: 100%;
}
.reportsearch .title {
	margin: 0px 0px 20px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: 500;
}
.tablet .reportsearch .title {
	margin-bottom: 10px;
}
.reportsearch .title .sub {
	display: inline-block;
	margin-left: 0.8em;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	color: #707F89;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	vertical-align: middle;
}
.reportsearch form {
	display: block;
}

.tagcloud ul {
	display: flex;
	flex-wrap: wrap;
	margin-left: -10px;
	margin-top: -12px;
}
.tagcloud li {
	margin-left: 10px;
	margin-top: 12px;
}
.tagcloud a {
	display: block;
	padding: 0px 15px;
	height: 30px;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 30px;
	color: #ffffff;
	background: #2790B7;
	overflow: hidden;
	border-radius: 14px;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.tagcloud a:hover {
	opacity: 1;
	border-bottom: 0px;
}
.tagcloud a:hover {
	background: #004B9E;
}

.filter form {
	display: inline-block;
}
.tablet .filter form {
	display: block;
}
.filter > div, .filter form > div {
	font-size: 0;
	margin-left: -25px;
	margin-top: -20px;
}
.tablet .filter > div, .tablet .filter form > div {
	margin-top: -15px;
}
.filter dl {
	display: inline-flex;
	align-items: center;
	margin-top: 20px;
	margin-left: 25px;
}
.tablet .filter dl {
	display: block;
	margin-top: 15px;
}
.filter dt {
	margin-right: 15px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
}
.tablet .filter dt {
	margin-right: 0px;
	margin-bottom: 5px;
}
.filter dd {
	margin: 0px;
	padding: 0px;
	width: 280px;
}
.pc .filter dd {
	width: 260px;
}
.spc .filter dd {
	width: 240px;
}
.tablet .filter dd {
	width: 100%;
}
.filter.short dd {
	width: 260px;
}
.pc .filter.short dd {
	width: 220px;
}
.spc .filter.short dd {
	width: 200px;
}
.tablet .filter.short dd {
	width: 100%;
}

.freewordinput {
	position: relative;
	border: 1px solid #CDD6DD;
}
.freewordinput input {
	width: 100%;
	height: 48px;
	padding: 0px 60px 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 48px;
	border: 0px;
}
.sp .freewordinput input {
	font-size: 16px;
}
.freewordinput.nobutton input {
	padding-right: 10px;
}
.freewordinput input::placeholder {
	color: #CDD6DD;
}
.freewordinput input:-ms-input-placeholder {
	color: #CDD6DD;
}
.freewordinput input::-ms-input-placeholder {
	color: #CDD6DD;
}
.freewordinput button {
	position: absolute;
	width: 60px;
	height: 48px;
	right: 0px;
	top: 0px;
	text-indent: -10000px;
	background: url(../images/search.svg) no-repeat center center;
	background-size: 24px;
	border: 0px;
	cursor: pointer;
}
.freewordinput button:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: url(../images/searchon.svg) no-repeat center center;
	background-size: 24px;
	opacity: 0;
	z-index: 1;
	transition: opacity 200ms;
}
.freewordinput button:hover:before {
	opacity: 1;
}

.selectbox select {
	width: 100%;
	height: 50px;
	padding: 0px 50px 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 48px;
	border: 1px solid #CDD6DD;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: url(../images/select.svg) no-repeat right 10px center;
	cursor: pointer;
}
.selectbox select::-ms-expand {
	display: none;
}

.simpletable dl {
	display: flex;
	flex-wrap: wrap;
	margin-right: -5px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 27px;
	line-height: 1.6875rem;
	font-weight: 500;
}
.sp .simpletable dl {
	display: block;
}
.simpletable dt {
	padding: 20px;
	width: calc((100% - 5px) * 0.25);
	background: #F0F3F5;
	border-bottom: 1px solid #CDD6DD;
	border-left: 1px solid #CDD6DD;
}
.sp .simpletable dt {
	width: calc((100% - 5px));
	padding: 5px 10px;
	border: 0px;
}
.simpletable dd {
	width: calc((100% - 5px) * 0.75);
	margin: 0px;
	padding: 20px;
	border-bottom: 1px solid #CDD6DD;
	border-right: 1px solid #CDD6DD;
}
.sp .simpletable dd {
	width: calc((100% - 5px));
	padding: 5px 10px 20px 20px;
	border: 0px;
}
.simpletable dt:first-child, .simpletable dt:first-child + dd {
	border-top: 1px solid #CDD6DD;
}
.sp .simpletable dt:first-child,
.sp .simpletable dt:first-child + dd {
	border-top: 0px;
}
.sp .simpletable dd:last-child {
	border-bottom: 1px solid #CDD6DD;
}
.simpletable a {
	color: #2790B7;
}
.simpletable a:hover {
	border-bottom: 1px solid #2790B7;
}

.anchor {
	padding: 5px 0px 25px;
	border: 1px solid #CDD6DD;
}
.sp .anchor {
	padding-bottom: 20px;
}
.anchor ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.sp .anchor ul {
	flex-direction: column;
}
.anchor li {
	position: relative;
	margin: 20px 25px 0px;
	padding-left: 25px;
}
.sp .anchor li {
	margin: 15px 15px 0px;
}
.anchor li:after {
	content: "";
	position: absolute;
	display: block;
	top: 0px;
	left: 0px;
	width: 20px;
	height: 1.4625rem;
	background: url(../images/anchor.svg) no-repeat center center;
}
.anchor a {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: 500;
	color: #373A3C;
}
.anchor a:hover {
	border-bottom: 1px solid #2790B7;
}

.searchinput form {
	display: block;
}

.articlemeta {
	display: flex;
	align-items: center;
}
.sp .articlemeta {
	flex-wrap: wrap;
}
.articlemeta .category {
	padding: 5px 10px;
	min-width: calc(11em + 20px);
	margin-right: 20px;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 15.6px;
	line-height: 0.975rem;
	font-weight: 500;
	color: #707F89;
	text-align: center;
	background: #CDD6DD;
}
.articlemeta .date {
	margin-right: 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
	color: #373A3C;
}

.headlabel span {
	display: inline-block;
	min-width: 260px;
	padding: 6px 20px;
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 28.6px;
	line-height: 1.7875rem;
	font-weight: bold;
	text-align: center;
	border: 1px solid #CDD6DD;
}
#sidecolumn .headlabel span {
	width: 100%;
	min-width: 0px;
}

.dl dl {
	padding-top: 17px;
}
.dl.col dl {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	margin-right: -5px;
	margin-left: -20px;
	margin-top: -34px;
}
.dl.col.col2 dl > div {
	width: calc((100% - 45px) / 2);
	margin-left: 20px;
	margin-top: 34px;
}
.sp .dl.col.col2 dl > div {
	width: calc((100% - 25px) / 1);
}
.dl.col.col2 dl > div.size2 {
	width: calc((100% - 25px) / 1);
}
.dl dt {
	position: relative;
	clear: both;
	float: left;
	width: calc(7.5rem + 40px);
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.9999994px;
	line-height: 1.4999999625rem;
	text-align: center;
	color: #004B9E;
	font-weight: 500;
}
.sp .dl dt {
	width: calc(7.5rem + 20px);
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.dl dt:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: calc(100% + 12px);
	top: -7px;
	border: 1px solid #004B9E;
	border-radius: 5px;
}
.dl * + dt {
	margin-top: 34px;
}
.dl dd {
	margin-left: calc(7.5rem + 40px + 20px);
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.dl dd.break {
	clear: left;
	margin-left: 0px;
	margin-top: 0px;
	padding-top: 15px;
}
.sp .dl dd.break {
	margin-left: 0px;
}
.sp .dl dd {
	margin-left: calc(7.5rem + 20px + 10px);
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.sp .dl dd.spbreak {
	clear: left;
	margin-left: 0px;
	margin-top: 0px;
	padding-top: 15px;
}
.dl dd > ul {
	clear: none;
}
.dl dd > ol {
	clear: none;
}
.dl dd a {
	color: #2790B7;
}
.dl dd a:hover {
	border-bottom: 1px solid #2790B7;
}
.dl * + dt + dd {
	margin-top: 34px;
}

.dlseparate {
	padding-top: 20px;
	border-top: 2px dotted #98A6B5;
}
.dlseparate dt {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
	color: #707F89;
	font-weight: 500;
}
.dlseparate dd {
	margin-top: 5px;
	margin-left: 0px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
	color: #373A3C;
}

.eventlist ul {
	margin: -40px 0px 0px;
}
.eventlist li {
	margin-top: 40px;
}
.eventlist a {
	position: relative;
	display: flex;
}
.sp .eventlist a {
	flex-wrap: wrap;
	justify-content: space-between;
}
.eventlist a .image {
	width: calc((100% - 80px) / 5);
	margin-right: 20px;
	overflow: hidden;
}
.sp .eventlist a .image {
	width: calc((100% - 20px) / 2);
	margin-right: 0px;
}
.eventlist a .image img {
	transition: 800ms;
}
.eventlist a .date {
	width: calc((100% - 80px) / 5);
	margin-right: 20px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 30.6px;
	line-height: 1.9125rem;
	color: #373A3C;
	font-weight: 500;
}
.sp .eventlist a .date {
	width: calc((100% - 20px) / 2);
	margin-right: 0px;
}
.eventlist a .date .headding {
	margin-bottom: 15px;
	padding: 4px 10px;
	color: #004B9E;
	text-align: center;
	border: 1px solid #004B9E;
	border-radius: 5px;
}
.eventlist a .date span {
	display: block;
}
.eventlist a .body {
	display: flex;
	flex-direction: column;
	width: calc((100% - 80px) / 5 * 3 + 40px);
	color: #373A3C;
	font-weight: 500;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.sp .eventlist a .body {
	width: 100%;
	margin-top: 20px;
}
.eventlist a .body span {
	display: block;
}
.eventlist a .body .sub {
	margin-bottom: 5px;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
}
.sp .eventlist a .body .sub {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
.eventlist a .body .title {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 31.2px;
	line-height: 1.95rem;
}
.sp .eventlist a .body .title {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
}
.eventlist a .body .info {
	margin-top: 20px;
	padding-top: 20px;
	border-top: 1px solid #CDD6DD;
}
.eventlist a .body .info .headding {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
.sp .eventlist a .body .info {
	padding-top: 0px;
	border-top: 0px;
}
.eventlist a .body .more {
	padding-top: 15px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	color: #2790B7;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	transition: 400ms;
}
.eventlist a .body .more:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/more.svg) no-repeat center center #2790B7;
	border-radius: 50%;
	transition: 400ms;
}
.eventlist a .body .more:hover {
	color: #004B9E;
}
.eventlist a .body .more:hover:before {
	background-color: #004B9E;
}
.eventlist a:hover .image img {
	transform: scale(1.15);
}

.hr {
	display: block;
	width: 100%;
	height: 1px;
	margin-top: 40px;
	margin-bottom: 40px;
	background: #CDD6DD;
	border: 0px;
}
.sp .hr {
	margin-top: 30px;
	margin-bottom: 30px;
}
.hr.dotted {
	background: transparent;
	border-top: 1px dotted #CDD6DD;
}
.hr.stack {
	margin-bottom: 0px;
}
.hr.block {
	margin-bottom: 40px;
}
.sp .hr.block {
	margin-bottom: 30px;
}
.hr.section {
	margin-bottom: 80px;
}
.sp .hr.section {
	margin-bottom: 60px;
}
.hr.paragraph {
	margin-bottom: 20px;
}
.hr.halfparagraph {
	margin-bottom: 7px;
}

.download {
	position: relative;
	padding: 0px 20px 0px 75px;
	background: #F0F3F5;
}
.download > *:not(.title):last-child {
	padding-bottom: 20px;
}
.download:before {
	content: "";
	display: block;
	position: absolute;
	width: 50px;
	height: 50px;
	top: 0px;
	left: 0px;
	background: url(../images/download.svg) no-repeat center center #2790B7;
}
.download .title {
	display: flex;
	align-items: center;
	min-height: 50px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: bold;
}
.download .title > span {
	padding: 5px 0px;
}
.download .title a {
	color: #373A3C;
}
.download .title a:hover {
	border-bottom: 1px solid #2790B7;
}
.download .linklist ul {
	margin-top: -10px;
}
.download .linklist ul li {
	margin-top: 10px;
}

.reportindex {
	padding: 20px;
	background: #F0F3F5;
}
.sp .reportindex {
	padding: 20px 10px;
}
.reportindex .title {
	margin: -20px -20px 20px;
	padding: 15px 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	color: #ffffff;
	font-weight: 500;
	background: #004B9E;
}
.sp .reportindex .title {
	margin: -20px -10px 15px;
	padding: 15px 10px;
}
.reportindex ul {
	margin-top: -5px;
}
.reportindex ul li {
	margin-top: 8px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
}
.reportindex ul li span {
	margin-left: 5px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	font-weight: 400;
}
.reportindex ul li li {
	margin-top: 5px;
	margin-left: 20px;
}
.reportindex ul ul {
	margin-top: 3px;
}
.reportindex ul a {
	color: #373A3C;
}
.reportindex ul a:hover {
	border-bottom: 1px solid #2790B7;
}

#searchresult .fs-loading img {
	display: block;
	margin: auto;
}

#sitesearchresult .loading img,
#reportsearchresult .loading img {
	display: block;
	margin: auto;
}
#sitesearchresult .info em,
#reportsearchresult .info em {
	font-style: normal;
	margin: 0px 2px;
	padding: 0px 4px;
	font-weight: normal;
	color: #ffffff;
	background: #004B9E;
	background: linear-gradient(transparent 10%, #004B9E 10%);
}
#sitesearchresult .image,
#reportsearchresult .image {
	width: 180px;
	max-width: 180px;
}

main .contents .gsc-control-cse {
	padding: 0px;
}
main .contents .gsc-control-cse, main .contents .gsc-control-cse .gsc-table-result {
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
	font-family: "Noto Sans JP", sans-serif;
}
main .contents .gsc-control-cse .info b, main .contents .gsc-control-cse .gsc-table-result .info b {
	margin: 0px 2px;
	padding: 0px 4px;
	font-weight: normal;
	color: #ffffff;
	background: #004B9E;
	background: linear-gradient(transparent 10%, #004B9E 10%);
}
main .contents .gsc-control-cse .gsc-cursor-box, main .contents .gsc-control-cse .gsc-table-result .gsc-cursor-box {
	text-align: center;
}
main .contents .gsc-control-cse .gsc-cursor-box > div, main .contents .gsc-control-cse .gsc-table-result .gsc-cursor-box > div {
	position: relative;
	display: inline-block;
	padding: 0px 70px;
	font-size: 0;
}
main .contents .gsc-control-cse .gsc-cursor-box > div > div, main .contents .gsc-control-cse .gsc-table-result .gsc-cursor-box > div > div {
	display: inline-block;
	margin: 0px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 50px;
	width: 2em;
	color: #98A6B5;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
main .contents .gsc-control-cse .gsc-cursor-box > div > div:hover, main .contents .gsc-control-cse .gsc-table-result .gsc-cursor-box > div > div:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
main .contents .gsc-control-cse .gsc-cursor-box > div > div.gsc-cursor-current-page, main .contents .gsc-control-cse .gsc-table-result .gsc-cursor-box > div > div.gsc-cursor-current-page {
	color: #004B9E;
}
main .contents .gsc-control-cse .gsc-cursor-box > div > div:hover, main .contents .gsc-control-cse .gsc-table-result .gsc-cursor-box > div > div:hover {
	text-decoration: none;
}
main .contents .gsc-control-cse .gcsc-more-maybe-branding-root, main .contents .gsc-control-cse .gsc-table-result .gcsc-more-maybe-branding-root {
	display: none;
}
main .contents .gsc-control-cse .gsc-tabsArea, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea {
	margin-top: 40px;
	border: 0px;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock {
	display: flex;
	flex-wrap: wrap;
	margin-top: -20px;
	margin-right: -15px;
}
.sp main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock, .sp main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock {
	margin-right: -10px;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > div, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > div {
	position: relative;
	max-width: 9em;
	margin-top: 20px;
	margin-right: 15px;
	flex-shrink: 2;
	flex-grow: 2;
	display: block;
	padding: 13px 0px 0px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 19.6px;
	line-height: 1.225rem;
	font-weight: 500;
	text-align: left;
	color: #98A6B5;
	transition: opacity 200ms, color 600ms;
}
.sp main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > div, .sp main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > div {
	margin-right: 10px;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > div:hover, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > div:hover {
	color: #004B9E;
	transition: color 200ms;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > div:hover:before, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > div:hover:before {
	opacity: 0.5;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > div:before, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > div:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	top: 0px;
	left: 0px;
	background: #CDD6DD;
	transition: background 200ms, opacity 200ms;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > div:after, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > div:after {
	content: "";
	display: block;
	position: absolute;
	width: 0%;
	height: 2px;
	top: 0px;
	right: 0px;
	background: #004B9E;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > div.gsc-tabhActive, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > div.gsc-tabhActive {
	color: #004B9E;
	border-bottom: 0px;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > div.gsc-tabhActive:after, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > div.gsc-tabhActive:after {
	width: 100%;
}
main .contents .gsc-control-cse .gsc-tabsArea .gsc-refinementBlock > span, main .contents .gsc-control-cse .gsc-table-result .gsc-tabsArea .gsc-refinementBlock > span {
	display: none;
}
main .contents .gsc-control-cse .gsc-orderby-label, main .contents .gsc-control-cse .gsc-table-result .gsc-orderby-label {
	padding: 0px 10px 0px 0px;
	vertical-align: middle;
}
main .contents .gsc-control-cse .gsc-option-menu-container,
main .contents .gsc-control-cse .gsc-orderby-container, main .contents .gsc-control-cse .gsc-table-result .gsc-option-menu-container,
main .contents .gsc-control-cse .gsc-table-result .gsc-orderby-container {
	vertical-align: middle;
}
main .contents .gsc-control-cse .gsc-selected-option-container, main .contents .gsc-control-cse .gsc-table-result .gsc-selected-option-container {
	min-width: 8.5em;
}
main .contents .gsc-control-cse .gsc-result-info-container, main .contents .gsc-control-cse .gsc-table-result .gsc-result-info-container {
	vertical-align: middle;
}
main .contents .gsc-control-cse .gsc-result-info, main .contents .gsc-control-cse .gsc-table-result .gsc-result-info {
	padding: 0px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
	color: #373A3C;
}

.topsearchblock {
	display: flex;
	justify-content: space-between;
}
.tablet .topsearchblock {
	flex-direction: column;
}
.topsearchblock > div:first-child {
	position: relative;
	width: 48.30508474576271%;
	padding: 20px 40px;
	z-index: 0;
	background: #F0F3F5;
}
.tablet .topsearchblock > div:first-child {
	margin-top: 20px;
	padding: 20px;
}
.topsearchblock > div:last-child {
	width: 48.30508474576271%;
	padding: 20px 0px;
	border-top: 1px solid #CDD6DD;
	border-bottom: 1px solid #CDD6DD;
}
.tablet .topsearchblock > div {
	width: 100%;
}
.topsearchblock > div.center {
	text-align: center;
}

.sideblock {
	display: flex;
	justify-content: space-between;
}
.tablet .sideblock {
	flex-direction: column;
}
.sideblock > div:first-child {
	width: 69.49152542372881%;
}
.sideblock > div:last-child {
	position: relative;
	width: 27.11864406779661%;
	z-index: 0;
	background: rgba(255, 255, 255, 0.8);
}
.tablet .sideblock > div:last-child {
	margin-top: 40px;
}
.tablet .sideblock > div {
	width: 100%;
}
.sideblock > div.center {
	text-align: center;
}
.sideblock.fix > div:first-child {
	width: calc(100% - 320px - 40px);
}
.sideblock.fix > div:last-child {
	width: 320px;
}
.tablet .sideblock.fix > div {
	width: 100%;
}

.snsfollow .list > ul {
	display: flex;
	justify-content: space-around;
}
.sp .snsfollow .list > ul {
	flex-wrap: wrap;
}
.snsfollow .list > ul > li {
	margin-left: 15px;
	margin-right: 15px;
}
.sp .snsfollow .list > ul > li {
	margin-left: 5px;
	margin-right: 5px;
}
.snsfollow li.border {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 320px;
	height: 80px;
	padding: 15px;
	border: 1px solid #CDD6DD;
}
.sp .snsfollow li.border {
	width: 80%;
	margin-top: 20px;
	padding: 20px 15px;
}
.snsfollow li.border dl {
	display: flex;
}
.snsfollow li.border dl dt {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: bold;
	color: #373A3C;
}
.snsfollow li.border dl dd {
	margin: 0px;
}
.snsfollow li.border ul {
	display: flex;
}
.snsfollow li.border ul > li {
	margin-left: 20px;
}
.snsfollow li.border a {
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.snsfollow li.border a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}

.ssfnews {
	margin-left: 15px;
	margin-right: 15px;
}
.ssfnews a {
	display: block;
	max-width: 320px;
	margin: auto;
	padding: 15px 10px 15px 90px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	color: #373A3C;
	text-align: left;
	background: url(../images/ssfnews.svg) no-repeat 15px center;
	background-size: 60px auto;
	border: 1px solid #CDD6DD !important;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.ssfnews a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}

.topabout:before {
	content: "";
	position: absolute;
	display: block;
	width: 100%;
	height: 100%;
	background: #2790B7;
}
.topabout > .bg {
	display: none;
}
.tablet .topabout > .bg {
	display: block;
}
.topabout > div:not(.bg) {
	padding-bottom: 240px !important;
}
.topabout h2 {
	margin-bottom: 30px !important;
	color: #ffffff;
}
.topabout h2 .sub {
	color: #ffffff !important;
}
.topabout .catch {
	color: #ffffff;
	text-align: center;
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 36px;
	line-height: 2.25rem;
	font-weight: 500;
}
.topabout .column {
	align-items: center;
	margin-left: 0px !important;
}
.topabout .column > div {
	width: calc((100% - 4px) / 2);
	margin-left: 0px;
}
.sp .topabout .column > div {
	width: calc(100% - 4px);
	margin-left: 0px;
}
.sp .topabout .column .image img {
	margin-right: auto;
}
.topabout .list {
	max-width: 365px;
	margin-left: 40px;
}
.sp .topabout .list {
	max-width: 100%;
	margin-left: 0px;
	margin-top: 40px;
}
.topabout .list ul {
	border-top: 1px solid #ffffff;
}
.topabout .list li {
	display: flex;
	border-bottom: 1px solid #ffffff;
}
.topabout .list a {
	position: relative;
	display: flex;
	align-items: center;
	width: 100%;
	min-height: 80px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: 500;
	color: #ffffff;
}
.sp .topabout .list a {
	min-height: 60px;
}
.topabout .list a .image {
	position: relative;
	width: 80px;
}
.topabout .list a .title {
	position: relative;
	margin-left: 10px;
}
.topabout .list a:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	background: #004B9E;
	opacity: 0;
	z-index: 0;
	transition: 400ms;
	transform: rotate(-30deg) scale(0.5);
	pointer-events: none;
	z-index: 0;
}
.topabout .list a:hover:before {
	opacity: 0.4;
	transform: rotate(0deg) scale(1);
}

.topresearcher {
	margin-top: -180px;
}
.topresearcher:before {
	content: "";
	display: block;
	position: absolute;
	top: 180px;
	width: 100%;
	height: 100%;
	background: #ffffff;
}
.topresearcher > div {
	padding-top: 0px !important;
}

.imagelist ul {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	margin-left: -20px;
	margin-top: -20px;
}
.imagelist ul li {
	margin-top: 20px;
	margin-left: 20px;
}
.imagelist.top ul {
	align-items: flex-start;
}
.imagelist.center ul {
	margin-left: -10px;
	margin-right: -10px;
	justify-content: center;
}
.imagelist.center ul li {
	margin-left: 10px;
	margin-right: 10px;
}
.imagelist.right ul {
	margin-left: 0px;
	margin-right: -20px;
	justify-content: flex-end;
}
.imagelist.right ul li {
	margin-left: 0px;
	margin-right: 20px;
}
.imagelist.narrow ul {
	margin-top: -10px;
	margin-left: -10px;
}
.imagelist.narrow ul li {
	margin-top: 10px;
	margin-left: 10px;
}
.imagelist.narrow.center ul {
	margin-left: -5px;
	margin-right: -5px;
}
.imagelist.narrow.center ul li {
	margin-left: 5px;
	margin-right: 5px;
}
.imagelist.narrow.right ul {
	margin-left: 0px;
	margin-right: -10px;
}
.imagelist.narrow.right ul li {
	margin-left: 0px;
	margin-right: 10px;
}
.imagelist a {
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.imagelist a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.imagelist a:before, .imagelist a:after {
	display: none !important;
}

.contentsbox {
	background: #F0F3F5;
}
.contentsbox > div {
	margin: 0px !important;
	padding: 15px;
}
.contentsbox .title {
	font-size: 30px;
	font-size: 1.875rem;
	line-height: 39px;
	line-height: 2.4375rem;
	font-weight: 500;
	color: #ffffff;
	background: #004B9E;
}
.sp .contentsbox .title {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 31.2px;
	line-height: 1.95rem;
}

.levelindex > ul > li {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 30px;
	line-height: 1.875rem;
	font-weight: bold;
}
.levelindex > ul ul {
	margin-top: 8px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
}
.levelindex > ul ul li {
	text-indent: -0.8em;
	margin-left: 0.8em;
}
.levelindex > ul li {
	text-indent: -1.2em;
	margin-left: 1.2em;
}
.levelindex > ul li * {
	text-indent: 0;
}
.levelindex li + li {
	margin-top: 8px;
}

.textblock {
	margin-left: auto;
	margin-right: auto;
	max-width: 900px;
}

.dialog {
	max-width: 900px;
	margin-left: auto;
	margin-right: auto;
	padding: 20px;
	border: 1px solid #004B9E;
}
.dialog .title {
	margin: -20px -20px 20px;
	padding: 15px 20px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
	font-weight: bold;
	color: #ffffff;
	background: #004B9E;
}
.dialog .button {
	padding: 20px 0px;
	background: #F0F3F5;
}

#mainvisual {
	position: relative;
	display: block;
	width: 100%;
	height: 480px;
}
.tablet #mainvisual {
	height: 350px;
}
.sp #mainvisual {
	height: 250px;
}
#mainvisual #slidetext {
	position: absolute;
	width: 100%;
	max-width: 1330px;
	bottom: 20px;
	left: 50%;
	transform: translateX(-50%);
}
.sp #mainvisual #slidetext {
	bottom: 10px;
}
#mainvisual #slidetext .panel {
	position: absolute;
	width: 100%;
	left: 0px;
	bottom: 0px;
	padding: 0px 75px;
	color: #ffffff;
	font-weight: 500;
	transform: translateX(-7%);
	opacity: 0;
	transition: opacity 1000ms, transform 0ms 1200ms;
}
#mainvisual #slidetext .panel.nega {
	color: #373A3C;
}
.sp #mainvisual #slidetext .panel {
	padding: 0px 50px;
}
#mainvisual #slidetext .panel.show {
	transform: translateX(0%);
	opacity: 1;
	transition: opacity 1500ms 800ms, transform 1500ms 800ms;
}
#mainvisual #slidetext .panel .title {
	display: block;
	font-size: 30px;
	font-size: 1.875rem;
	line-height: 33px;
	line-height: 2.0625rem;
}
.sp #mainvisual #slidetext .panel .title {
	font-size: 18px;
	line-height: 1;
}
#mainvisual #slidetext .panel .lead {
	display: block;
	margin-top: 5px;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
}
#mainvisual #slidetext .panel .lead span {
	display: inline-block;
}
.sp #mainvisual #slidetext .panel .lead {
	font-size: 13px;
	line-height: 1.5;
}
#mainvisual #slidetext .panel .option {
	display: block;
	margin-top: 25px;
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 28.6px;
	line-height: 1.7875rem;
	font-weight: 700;
}
#mainvisual #slidetext .panel .text {
	display: block;
	margin-top: 10px;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 30.6px;
	line-height: 1.9125rem;
	font-weight: 500;
}
#mainvisual #slidetext .panel .more {
	display: block;
	margin-top: 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
}
#mainvisual #slidetext .panel .more:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/moreb.svg) no-repeat center center #ffffff;
	border-radius: 50%;
	transition: 400ms;
}
#mainvisual #slidetext .panel.nega .more {
	color: #2790B7;
}
#mainvisual #slidetext .panel.nega .more:before {
	background: url(../images/more.svg) no-repeat center center #2790B7;
}
#mainvisual #slideswitch a {
	display: block;
	position: absolute;
	width: 40px;
	height: 70px;
	top: 50%;
	margin-top: 15px;
	text-indent: -10000px;
	overflow: hidden;
	z-index: 10;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#mainvisual #slideswitch a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.sp #mainvisual #slideswitch a {
	top: 0%;
	height: 100%;
	margin-top: 0px;
}
#mainvisual #slideswitch a:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: url(../images/carousel.svg) no-repeat center center;
	transition: opacity 600ms;
	opacity: 0;
}
.sp #mainvisual #slideswitch a:before {
	background-size: 20px auto;
}
#mainvisual #slideswitch a:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	background: url(../images/carouselw.svg) no-repeat center center;
	transition: opacity 600ms;
	opacity: 1;
}
.sp #mainvisual #slideswitch a:after {
	background-size: 20px auto;
}
#mainvisual #slideswitch .next a {
	right: 25px;
}
.sp #mainvisual #slideswitch .next a {
	right: 0px;
}
#mainvisual #slideswitch .prev a {
	left: 25px;
	transform: rotate(180deg);
}
.sp #mainvisual #slideswitch .prev a {
	left: 0px;
}
#mainvisual.overlaychange #slideswitch a:before {
	opacity: 1;
}
#mainvisual.overlaychange #slideswitch a:after {
	opacity: 0;
}
#mainvisual #topcatch {
	position: fixed;
	top: 485px;
	left: 50%;
	height: 30px;
	text-align: center;
	transform: translateX(-50%);
}
.shortheader #mainvisual #topcatch {
	opacity: 0;
}
.tablet #mainvisual #topcatch {
	top: 380px;
	height: 20px;
}
.sp #mainvisual #topcatch {
	top: 290px;
	height: 15px;
}
#mainvisual #topcatch .message {
	position: relative;
	display: flex;
	align-items: center;
	height: 30px;
	transition: opacity 400ms;
}
.tablet #mainvisual #topcatch .message {
	height: 20px;
}
.sp #mainvisual #topcatch .message {
	height: 15px;
}
#mainvisual #topcatch .message img {
	display: block;
	margin: auto;
	width: auto;
	height: 100%;
	max-height: 30px;
	opacity: 1;
	transition: opacity 500ms;
}
.tablet #mainvisual #topcatch .message img {
	width: 75%;
	max-width: 455px;
	height: auto;
	opacity: 1 !important;
}
#mainvisual #topcatchlink a {
	position: absolute;
	width: 100%;
	height: 100%;
	text-indent: -10000px;
	overflow: hidden;
	z-index: 5;
}

#slidenavi {
	position: relative;
	padding: 20px;
	background: #ffffff;
}
#slidenavi ul {
	display: flex;
	justify-content: center;
}
#slidenavi li {
	margin: 0px 5px;
}
#slidenavi a {
	display: block;
	width: 8px;
	height: 8px;
	text-indent: -10000px;
	background: #CDD6DD;
	border-radius: 50%;
	overflow: hidden;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
#slidenavi a:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#slidenavi .current a {
	background: #DC000C;
}

#visualstage {
	position: fixed;
	width: 100%;
	height: 480px !important;
	left: 0px;
	top: 120px;
	background: #ffffff;
	z-index: -2;
}
.tablet #visualstage {
	top: 70px;
	height: 350px !important;
}
.sp #visualstage {
	height: 250px !important;
}
.shortheader #visualstage {
	height: calc(100% - 70px) !important;
}
#visualstage:before {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 50%;
	bottom: 0px;
	left: 0px;
	background: -moz-linear-gradient(top, rgba(0, 0, 0, 0) 0%, black 100%);
	background: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, black 100%);
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, black 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#00000000', endColorstr='#000000',GradientType=0 );
	transition: opacity 2000ms;
	opacity: 0.4;
	z-index: 1;
}
.shortheader #visualstage:before {
	opacity: 0 !important;
}
#visualstage:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: url(../../images/topslidecover2.svg) no-repeat center center rgba(0, 75, 158, 0.3);
	background-size: auto 100%;
	transition: opacity 2000ms;
	opacity: 0;
	z-index: 2;
}
.shortheader #visualstage:after {
	opacity: 0 !important;
}
#visualstage.overlaychange:before {
	opacity: 0;
}
#visualstage.overlaychange:after {
	opacity: 0.85;
}
#visualstage.overlaychange .vegas-wrapper {
	opacity: 0;
}
#visualstage.overlay:after {
	opacity: 0.7;
}
#visualstage.overlayhide:after {
	transition: opacity 4000ms 2000ms;
	opacity: 1;
}
#visualstage .vegas-wrapper {
	transition: opacity 2000ms;
	background: rgba(0, 0, 0, 0.1);
	opacity: 1;
	z-index: 2;
}
.shortheader #visualstage .vegas-wrapper {
	opacity: 0 !important;
}

#visualstage + main {
	background-color: transparent;
}

.aformsystem:not(.iframe) .aform-header {
	display: none;
}

.aform .aform-header {
	clear: both;
	position: relative;
	margin: 0px 0px 20px;
	padding: 0px;
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 28.6px;
	line-height: 1.7875rem;
	font-weight: normal;
	text-align: center;
}
.sp .aform .aform-header {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
.aform .aform-required {
	color: #E93C36;
	margin-left: 8px;
}
.aform .aform-required:before {
	content: "（";
}
.aform .aform-required:after {
	content: "）";
}
.aform .aform-error {
	position: absolute;
	bottom: 5px;
	right: 5px;
	color: #E93C36;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 15.6px;
	line-height: 0.975rem;
}
.aform .aform-confirm {
	display: block;
	margin-top: 5px;
	padding-left: 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.aform #aform_confirm_msg {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
}
.aform dl dt {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 27px;
	line-height: 1.6875rem;
}
.aform dl * + dt {
	margin-top: 20px;
}
.aform dl dd {
	position: relative;
	margin: 0px;
}
.aform dl * + dd {
	margin-top: 5px;
}
.aform .aform-hdln {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 27px;
	line-height: 1.6875rem;
}
.aform .aform-input-example {
	margin-bottom: 4px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
.aform .aform-twice-note {
	display: block;
	margin-top: 10px;
	margin-bottom: 4px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 18.2px;
	line-height: 1.1375rem;
}
.aform textarea {
	width: 100%;
	height: 160px;
	padding: 8px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	border: 1px solid #CDD6DD;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.sp .aform textarea {
	font-size: 16px !important;
}
.aform input[type="text"], .aform input[type="email"], .aform input[type="tel"], .aform input[type="url"] {
	width: 100%;
	height: 40px;
	padding: 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 38px;
	border: 1px solid #CDD6DD;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.sp .aform input[type="text"], .sp .aform input[type="email"], .sp .aform input[type="tel"], .sp .aform input[type="url"] {
	font-size: 16px !important;
}
.aform input[type="text"].withlabel, .aform input[type="email"].withlabel, .aform input[type="tel"].withlabel, .aform input[type="url"].withlabel {
	padding-left: 4rem;
}
.aform select {
	width: 100%;
	height: 50px;
	padding: 0px 50px 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 48px;
	border: 1px solid #CDD6DD;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	background: url(../images/select.svg) no-repeat right 10px center;
	cursor: pointer;
}
.sp .aform select {
	font-size: 16px !important;
}
.aform select::-ms-expand {
	display: none;
}
.aform .aform-radio-ul li {
	display: block;
	padding: 10px 0px 10px 40px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
.aform .aform-radio-ul li label {
	position: relative;
	cursor: pointer;
}
.aform .aform-radio-ul li input[type="radio"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.aform .aform-radio-ul li input[type="radio"]:focus + label:before {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
.aform .aform-radio-ul li input[type="radio"] + label:before {
	content: "";
	display: block;
	position: absolute;
	width: 26px;
	height: 26px;
	top: 50%;
	left: -40px;
	margin-top: -15px;
	background: #ffffff;
	border: 2px solid #CDD6DD;
	border-radius: 50%;
	-webkit-transition: 200ms;
	transition: 200ms;
}
.aform .aform-radio-ul li input[type="radio"]:checked + label:before {
	width: 10px;
	height: 10px;
	border: 10px solid #004B9E;
}
.aform .aform-radio-ul.aform-horizontal-ul {
	margin-left: -40px;
}
.aform .aform-radio-ul.aform-horizontal-ul li {
	display: inline-block;
	vertical-align: top;
	margin-left: 40px;
}
.aform .aform-checkbox-ul li {
	display: block;
	padding: 10px 0px 10px 40px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
.aform .aform-checkbox-ul li label {
	position: relative;
	cursor: pointer;
}
.aform .aform-checkbox-ul li input[type="checkbox"] {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}
.aform .aform-checkbox-ul li input[type="checkbox"]:focus + label:before {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
}
.aform .aform-checkbox-ul li input[type="checkbox"] + label:before {
	content: "";
	display: block;
	position: absolute;
	width: 26px;
	height: 26px;
	top: 50%;
	left: -40px;
	margin-top: -15px;
	background: #ffffff;
	border: 2px solid #CDD6DD;
	border-radius: 10px;
	-webkit-transition: 200ms;
	transition: 200ms;
}
.aform .aform-checkbox-ul li input[type="checkbox"]:checked + label:before {
	background-color: #004B9E;
	border-color: #004B9E;
}
.aform .aform-checkbox-ul li input[type="checkbox"] + label:after {
	content: "";
	display: block;
	position: absolute;
	width: 30px;
	height: 30px;
	top: 50%;
	left: -40px;
	margin-top: -15px;
	background: url(../images/check.svg) no-repeat center center;
	-webkit-transform: scale(0);
	transform: scale(0);
	-webkit-transition: 200ms;
	transition: 200ms;
}
.aform .aform-checkbox-ul li input[type="checkbox"]:checked + label:after {
	-webkit-transform: scale(1);
	transform: scale(1);
}
.aform .aform-checkbox-ul.aform-horizontal-ul {
	margin-left: -40px;
}
.aform .aform-checkbox-ul.aform-horizontal-ul li {
	display: inline-block;
	vertical-align: top;
	margin-left: 40px;
}
.aform .aform-field-option-text {
	margin-top: 10px;
}
.aform .aform-note {
	margin-top: 10px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
}
.aform .aform-button-area {
	text-align: center;
}
.aform .aform-button-area input {
	position: relative;
	display: inline-block;
	width: 80%;
	max-width: 240px;
	height: 44px;
	padding: 0px 10px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 44px;
	color: #ffffff;
	background: #2790B7;
	border: 0px;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
.aform .aform-button-area input:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.sp .aform .aform-button-area input {
	display: block;
	margin: auto;
}
.aform .aform-button-area input + input {
	margin-left: 20px;
}
.sp .aform .aform-button-area input + input {
	margin-left: auto;
	margin-top: 20px;
}
.aform .head {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: bold;
}

.reportlist > p {
	font-size: 16px;
	font-size: 1rem;
	line-height: 17.6px;
	line-height: 1.1rem;
}
.reportlist > ul > li {
	margin-bottom: 40px;
}
.sp .reportlist > ul > li {
	margin-bottom: 30px;
}
.reportlist > ul > li:last-child {
	margin-bottom: 0px;
}
.sp .reportlist > ul > li:last-child {
	margin-bottom: 0px;
}
.reportlist > ul > li > * {
	position: relative;
	display: flex;
	align-items: flex-start;
}
.sp .reportlist > ul > li > * {
	flex-direction: column;
}
.reportlist > ul > li > *.bgcolor {
	background: #F0F3F5;
}
.reportlist > ul > li > *.hover .image img {
	transform: scale(1.15) rotate(0.001deg);
}
.reportlist .image {
	position: relative;
	flex-shrink: 0;
	min-height: 0%;
	margin-left: auto;
	margin-right: auto;
	background: #CDD6DD;
	overflow: hidden;
}
.sp .reportlist .image {
	width: auto !important;
	margin-bottom: 15px;
}
.reportlist .image a {
	opacity: 1 !important;
}
.reportlist .image img {
	transition: 800ms;
}
.reportlist .image.margin {
	margin-top: 20px;
	margin-left: 20px;
	margin-right: 20px;
}
.reportlist .image:after {
	content: "";
	display: block;
	position: absolute;
	top: 0px;
	left: 0px;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	border: 1px solid #CDD6DD;
	z-index: 15;
	pointer-events: none;
}
.reportlist .head {
	display: flex;
	align-items: center;
}
.sp .reportlist .head {
	display: flex;
	flex-wrap: wrap;
}
.reportlist .head .title {
	margin-top: 0px;
}
.sp .reportlist .head .title {
	margin-top: 10px;
}
.reportlist * + .head {
	margin-top: 10px;
}
.reportlist .category {
	padding: 5px 10px;
	min-width: calc(11em + 20px);
	margin-right: 20px;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 15.6px;
	line-height: 0.975rem;
	font-weight: 500;
	color: #707F89;
	text-align: center;
	background: #CDD6DD;
}
.reportlist .category.none {
	background: transparent;
}
.reportlist .category.dark {
	color: #ffffff;
	background: #004B9E;
}
.reportlist .date {
	margin-right: 20px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	font-weight: 500;
	color: #373A3C;
}
.reportlist .ltitle {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 31.2px;
	line-height: 1.95rem;
	font-weight: 500;
	color: #373A3C;
}
.sp .reportlist .ltitle {
	width: 100%;
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
}
.sp .reportlist * + .ltitle {
	margin-top: 5px;
}
.reportlist .title + .ltitle {
	margin-top: 10px;
}
.reportlist .body {
	display: flex;
	flex-direction: column;
	padding-left: 0px;
	width: 100%;
}
.reportlist .body .title {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 26px;
	line-height: 1.625rem;
}
.sp .reportlist .body .title {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 23.4px;
	line-height: 1.4625rem;
}
.sp .reportlist .body {
	padding-left: 0px;
}
.reportlist .image + .body {
	padding-left: 20px;
}
.sp .reportlist .image + .body {
	padding-left: 0px;
}
.reportlist .info {
	display: block;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	font-weight: 400;
	color: #373A3C;
}
.reportlist * + .info {
	margin-top: 20px;
}
.reportlist .title {
	display: block;
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	font-weight: 500;
	color: #373A3C;
}
.sp .reportlist .title {
	width: 100%;
}
.reportlist .title a {
	color: #2790B7;
	z-index: 2;
}
.reportlist .title a:hover {
	border-bottom: 1px solid #2790B7;
}
.reportlist * + .title {
	margin-top: 20px;
}
.reportlist .ltitle + .title {
	margin-top: 5px;
}
.reportlist .links {
	margin-top: 15px;
}
.reportlist .links a + a {
	margin-left: 20px;
}
.reportlist .more {
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	color: #2790B7;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	transition: 400ms;
}
.reportlist .more:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/more.svg) no-repeat center center #2790B7;
	border-radius: 50%;
	transition: 400ms;
}
.reportlist .more:hover {
	color: #004B9E;
}
.reportlist .more:hover:before {
	background-color: #004B9E;
}
.reportlist .pdfdownload {
	font-size: 16px;
	font-size: 1rem;
	line-height: 20px;
	color: #2790B7;
	font-family: 'Poppins', sans-serif;
	font-weight: normal;
	transition: 400ms;
}
.reportlist .pdfdownload:before {
	content: "";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/pdf.svg) no-repeat center center;
	transition: 400ms;
}
.reportlist .pdfdownload:hover {
	color: #004B9E;
}

h2 + .reportlist > ul {
	margin-top: -45px !important;
}
.sp h2 + .reportlist > ul {
	margin-top: -30px !important;
}

.alertbox {
	display: flex;
	align-items: center;
	padding: 15px 20px;
	border: 1px solid #98A6B5;
}
.sp .alertbox {
	flex-wrap: wrap;
	padding: 15px 15px;
}
.alertbox .headding {
	padding-right: 30px;
	min-width: 15%;
	max-width: 30%;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 15.4px;
	line-height: 0.9625rem;
	font-weight: bold;
	color: #004B9E;
}
.sp .alertbox .headding {
	padding-right: 0px;
	padding-bottom: 15px;
	width: 100%;
	max-width: 100%;
}
.alertbox .headding:before {
	content: "";
	display: inline-block;
	width: 22px;
	height: 22px;
	margin-right: 7px;
	margin-top: -2px;
	vertical-align: middle;
	background: url(../images/alert.svg) no-repeat center center;
}
.alertbox .body {
	padding-left: 20px;
	border-left: 1px solid #98A6B5;
}
.sp .alertbox .body {
	width: 100%;
	padding-top: 15px;
	padding-left: 0px;
	border-top: 1px solid #98A6B5;
	border-left: 0px;
}
.alertbox .body .text {
	margin-left: 0px;
	max-width: 1180px;
}

@font-face {
	font-family: "Garamond";
	src: url(../fonts/EBGaramond-VariableFont_wght.ttf);
}
p.more a:before {
	content: "";
	display: inline-block !important;
	position: static !important;
	width: 20px !important;
	height: 20px !important;
	margin-right: 5px;
	vertical-align: middle;
	background: url(../images/more.svg) no-repeat center center #2790B7 !important;
	border-radius: 50%;
	transition: 400ms;
	transform: scale(1) !important;
}
p.more a:hover {
	color: #004B9E !important;
}
p.more a:hover:before {
	background-color: #004B9E !important;
}

.mintyo {
	font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , serif;
}

main .contents.bg_gray {
	background: #ECECE4;
}
main .contents.bg_gray > div {
	padding-top: 40px;
	padding-bottom: 40px;
}
main .contents h2.h2_history {
	font-size: 40px;
	font-size: 2.5rem;
	line-height: 44px;
	line-height: 2.75rem;
}
.sp main .contents h2.h2_history {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 22px;
	line-height: 1.375rem;
}
main .contents h2.bg_wave {
	background: url(../images/h2_wave.png) center center no-repeat;
	background-size: 100% auto;
}
main .contents h2 .sub.mintyo {
	font-family: "游明朝" , "Yu Mincho" , "游明朝体" , "YuMincho" , "ヒラギノ明朝 Pro W3" , "Hiragino Mincho Pro" , "HiraMinProN-W3" , "HGS明朝E" , serif;
	font-weight: bold;
}
main .contents .box.color_gray {
	border: 1px solid #aaa;
}
main .contents .text ul.no_indent {
	margin-left: 0;
}
main .contents .text ul.ul_orange li:before {
	background: #ff6a24;
}
main .contents .table.th_fix > table > tbody > tr > th, main .contents .format.table.th_fix > table > tbody > tr > td {
	width: 220px;
}
.sp main .contents .table.th_fix > table > tbody > tr > th, .sp main .contents .format.table.th_fix > table > tbody > tr > td {
	width: auto;
}
main .contents .button a.pdf:after {
	content: "";
	width: 15px;
	height: 17px;
	background: url(../images/pdf_white.svg) no-repeat;
	background-size: 15px 17px;
	margin-left: 5px;
}
main .contents .imagebox > .image .pr {
	padding-right: 10px;
}
main .contents .imagebox > .text.pl {
	padding-left: 40px;
}
.sp main .contents .imagebox > .text.pl {
	padding-left: 0;
}
main .contents .img_border {
	border: 1px solid #ccc;
}
main .contents h3.theme_gradation {
	text-align: center;
	color: #fff;
	padding: 5px 0;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
}
main .contents h3.theme_gradation.red {
	background: linear-gradient(90deg, #c06050, #911c15);
}
main .contents h3.theme_gradation.blue {
	background: linear-gradient(90deg, #79b0d5, #23637d);
}

.color_main {
	color: #004B9E;
}

.color_black {
	color: #373A3C !important;
}

.bg_history {
	margin-top: 60px;
	width: 100%;
	height: 295px;
	display: table;
}
.bg_history.bg01 {
	background: url(../../about/images/bg_history01.png) center center no-repeat;
}
.bg_history.bg02 {
	background: url(../../about/images/bg_history02.png) center center no-repeat;
}
.bg_history.bg03 {
	background: url(../../about/images/bg_history03.png) center center no-repeat;
}
.sp .bg_history {
	margin-top: 30px;
	background-size: contain;
}
.bg_history > div {
	display: table-cell;
	vertical-align: middle;
}
.bg_history h2 {
	margin-bottom: 20px !important;
}

.history_event {
	margin: 30px auto 0;
	max-width: 900px;
}
.sp .history_event .column > div + div {
	margin-top: 20px;
}
.history_event .title {
	padding-bottom: 10px;
	margin-bottom: 10px;
	border-bottom: 1px solid #cdd6dd;
}

.year_area {
	margin-top: 40px;
	position: relative;
	padding-left: 17%;
	padding-top: 20px;
	transition: 1s;
	opacity: 1;
	transform: translateY(0%);
}
.year_area.fadein {
	opacity: 0;
	transform: translateY(-300px);
}
.year_area.center {
	padding-left: 0;
}
.sp .year_area {
	padding-left: 0;
}
.year_area .year {
	font-family: Garamond;
	font-size: 100px;
	font-size: 6.25rem;
	line-height: 70px;
	line-height: 4.375rem;
	position: absolute;
	left: 0;
	top: 0;
}
.sp .year_area .year {
	font-size: 50px;
	font-size: 3.125rem;
	line-height: 35px;
	line-height: 2.1875rem;
}
.year_area .tx {
	border-top: 1px solid #707F89;
	padding-top: 30px;
	margin-top: 20px;
}
.sp .year_area .tx {
	padding-top: 15px;
	margin-top: 30px;
}
.year_area .tx + .tx {
	border-top: none;
	margin-top: 0;
}
.year_area h3 {
	margin-bottom: 20px !important;
}

.directorslist {
	margin-top: 60px;
}
.directorslist > ul:after {
	content: "";
	display: block;
	clear: both;
}
.directorslist > ul > li {
	float: left;
	width: 49%;
	display: table;
	margin-bottom: 30px;
}
.sp .directorslist > ul > li {
	display: block;
	width: 100%;
}
.directorslist > ul > li:nth-of-type(2n+1) {
	clear: both;
	margin-right: 2%;
}
.sp .directorslist > ul > li:nth-of-type(2n+1) {
	margin-right: 0;
}
.directorslist > ul > li > span {
	display: table-cell;
	vertical-align: top;
}
.sp .directorslist > ul > li > span {
	display: block;
}
.directorslist > ul > li > span.image {
	width: 50%;
}
.sp .directorslist > ul > li > span.image {
	width: auto;
}
.directorslist > ul > li > span.image + .body {
	width: 50%;
	padding-left: 15px;
}
.sp .directorslist > ul > li > span.image + .body {
	width: auto;
}
.directorslist > ul > li > span.body {
	width: 100%;
}
.sp .directorslist > ul > li > span.body {
	padding-left: 0;
	margin-top: 15px;
}
.directorslist > ul > li > span.body span {
	display: block;
}
.directorslist > ul > li > span.body span.title {
	font-size: 20px;
	font-size: 1.25rem;
	line-height: 22px;
	line-height: 1.375rem;
	font-weight: bold;
}
.sp .directorslist > ul > li > span.body span.title {
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 19.8px;
	line-height: 1.2375rem;
}
.directorslist > ul > li > span.body span.en {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 15.4px;
	line-height: 0.9625rem;
	margin-top: 10px;
}
.directorslist > ul > li > span.body span.sub {
	font-size: 16px;
	font-size: 1rem;
	line-height: 24px;
	line-height: 1.5rem;
	margin-top: 15px;
}
.sp .directorslist > ul > li > span.body span.sub {
	margin-top: 10px;
}
.directorslist > ul > li > span.body span.info {
	margin-top: 25px;
	font-size: 15px;
	font-size: 0.9375rem;
	line-height: 25.5px;
	line-height: 1.59375rem;
}
.sp .directorslist > ul > li > span.body span.info {
	margin-top: 15px;
}

.articlelist .body .en {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 15.4px;
	line-height: 0.9625rem;
	margin-top: 10px;
}

h2 + .articlelist.researcher {
	padding-top: 30px;
}

.articlelist .title.pdf:after {
	content: "";
	position: relative;
	display: inline-block;
	top: -2px;
	width: 27px;
	height: 20px;
	vertical-align: middle;
	background: url(../images/pdf.svg) no-repeat center center;
}

.articlelist.researcher a .en, .articlelist.researcher span .en {
	color: #373A3C;
}
.articlelist.researcher a .note, .articlelist.researcher span .note {
	display: table;
	width: 100%;
	margin-top: 15px;
}
.sp .articlelist.researcher a .note, .sp .articlelist.researcher span .note {
	display: block;
}
.articlelist.researcher a .note > *, .articlelist.researcher span .note > * {
	display: table-cell;
	vertical-align: top;
}
.sp .articlelist.researcher a .note > *, .sp .articlelist.researcher span .note > * {
	display: block;
}
.articlelist.researcher a .note > *.tit, .articlelist.researcher span .note > *.tit {
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	border: 1px solid #004B9E;
	color: #004B9E;
	padding: 8px 0px;
	width: 140px;
	text-align: center;
}
.articlelist.researcher a .note > *.tx, .articlelist.researcher span .note > *.tx {
	padding: 8px 0 0 15px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
	color: #373A3C;
}
.sp .articlelist.researcher a .note > *.tx, .sp .articlelist.researcher span .note > *.tx {
	padding-left: 0;
}

.h3_info {
	border-bottom: 1px solid #aaa;
	padding-bottom: 10px !important;
	position: relative;
}
.h3_info span {
	display: block;
	position: absolute;
	right: 0;
	bottom: 5px;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 18px;
	line-height: 1.125rem;
	font-weight: normal;
}
.sp .h3_info span {
	position: static;
	margin-top: 10px;
}

.linklist.mt0 {
	margin-top: 0 !important;
}

.tablelike {
	display: table;
}
.sp .tablelike {
	display: block;
}
.sp .tablelike.sp_table {
	display: table;
}
.sp .tablelike.sp_table > div {
	display: table-row;
}
.sp .tablelike.sp_table > div > div {
	display: table-cell;
}
.tablelike.sp_table > div > div:first-child {
	padding-right: 15px;
}
.tablelike > div {
	display: table-row;
}
.tablelike > div:not(:first-child) > div {
	padding-top: 10px;
}
.sp .tablelike > div {
	display: block;
}
.tablelike > div > div {
	display: table-cell;
	vertical-align: top;
	font-size: 16px;
	font-size: 1rem;
	line-height: 32px;
	line-height: 2rem;
}
.sp .tablelike > div > div {
	display: block;
}
.tablelike > div > div:first-child {
	white-space: nowrap;
}
.tablelike > div > div.w {
	min-width: 100px;
}
.sp .tablelike > div > div.w {
	min-width: 0;
}
.tablelike > div > div + div {
	padding-left: 30px;
}
.sp .tablelike > div > div + div {
	padding-left: 0px;
}
.sp .tablelike.ib > div > div {
	display: inline-block;
}
.sp .tablelike.ib > div > div + div {
	padding-left: 20px;
}
.tablelike.mid > div > div {
	vertical-align: middle;
}
.tablelike.mid > div > div img {
	vertical-align: middle;
}

ol.article_incorporation {
	line-height: 2rem !important;
}
ol.article_incorporation li:first-child:before {
	opacity: 0;
}
ol.article_incorporation.pl {
	padding-left: 5rem;
}
.sp ol.article_incorporation.pl {
	padding-left: 0;
}
ol.article_incorporation.first_num li:first-child:before {
	opacity: 1;
}

.regulations_list dl {
	display: table;
	width: 100%;
}
.regulations_list dl + dl {
	margin-top: 15px;
	padding-top: 15px;
	border-top: 1px dotted #707F89;
}
.regulations_list dt {
	display: table-cell;
	vertical-align: top;
	min-width: 60px;
	line-height: 1.5;
}
.regulations_list dt.wide {
	min-width: 100px;
}
.regulations_list dt.wide span {
	min-width: 100px;
}
.regulations_list dt span {
	display: inline-block;
	min-width: 60px;
	text-align: center;
	background: #b9b9b9;
	color: #fff;
	padding: 3px 10px;
}
.regulations_list dd {
	display: table-cell;
	vertical-align: top;
	padding: 5px 0 5px 20px;
	width: 100%;
	line-height: 1.5;
}
.regulations_list a {
	color: #2790B7;
}
.regulations_list a:hover {
	border-bottom: 1px solid #2790B7;
}

.articlelist .head.agency {
	align-items: flex-start;
}
.articlelist .head.agency .date {
	white-space: nowrap;
}

.articlelist.books > ul > li {
	margin-bottom: 80px;
}
.sp .articlelist.books > ul > li {
	margin-bottom: 40px;
}
.articlelist.books > ul > li a.books_english {
	display: inline-block;
	margin: 1rem 0 0 calc(17% + 20px);
}
.sp .articlelist.books > ul > li a.books_english {
	margin-left: 20px;
}

.simpletable ul.ib li {
	display: inline-block;
	margin-right: 1rem;
}

main .contents h3 .small {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 15.4px;
	line-height: 0.9625rem;
}

.col2scroll {
	position: relative;
}
.col2scroll:after {
	content: "";
	display: block;
	clear: both;
}
.col2scroll.w3_7 > .image {
	width: 30%;
}
.sp .col2scroll.w3_7 > .image {
	width: auto;
}
.col2scroll.w3_7 > .text {
	width: 70%;
	left: 30%;
}
.sp .col2scroll.w3_7 > .text {
	width: auto;
}
.col2scroll > * {
	width: 50%;
}
.sp .col2scroll > * {
	width: auto;
}
.col2scroll > *.image {
	position: absolute;
	top: 0;
	left: 0;
}
.sp .col2scroll > *.image {
	position: static;
}
.col2scroll > *.image img {
	width: 100%;
	height: auto;
}
.col2scroll > *.text {
	position: relative;
	top: 0;
	left: 50%;
	padding-left: 50px;
	padding-right: 20px;
}
.sp .col2scroll > *.text {
	position: static;
	padding-left: 0;
	padding-right: 0;
	padding-top: 40px;
}

.accordion_btn {
	width: 500px;
	height: 40px;
	margin: 30px auto 0;
	position: relative;
	border: 1px solid #98A6B5;
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	cursor: pointer;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
}
.accordion_btn:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
.accordion_btn:hover {
	border-bottom: 1px solid #98A6B5 !important;
}
.sp .accordion_btn {
	width: 90%;
}
.accordion_btn:before, .accordion_btn:after {
	content: "";
	position: absolute;
	top: 50%;
	width: 12px;
	height: 2px;
	background-color: #98A6B5;
}
.accordion_btn:before {
	-moz-transform: rotateZ(35deg);
	-webkit-transform: rotateZ(35deg);
	transform: rotateZ(35deg);
	left: calc(50% - 5px);
}
.accordion_btn:after {
	-moz-transform: rotateZ(-35deg);
	-webkit-transform: rotateZ(-35deg);
	transform: rotateZ(-35deg);
	left: calc(50% + 5px);
}
.accordion_btn.close:before {
	-moz-transform: rotateZ(35deg);
	-webkit-transform: rotateZ(35deg);
	transform: rotateZ(35deg);
	left: calc(50% + 5px);
}
.accordion_btn.close:after {
	-moz-transform: rotateZ(-35deg);
	-webkit-transform: rotateZ(-35deg);
	transform: rotateZ(-35deg);
	left: calc(50% - 5px);
}

.accordion_area {
	display: none;
}
.accordion_area .linklist {
	margin-top: 20px;
}
.sp .accordion_area .linklist {
	margin-top: 15px;
}

ul.theme_list {
	font-size: 0;
	margin-top: 30px;
}
ul.theme_list li {
	display: inline-block;
	width: 25%;
	margin-bottom: 30px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 30px;
	text-align: center;
	border-right: 1px solid #ddd;
}
ul.theme_list li:nth-of-type(4n+1) {
	border-left: 1px solid #ddd;
}
.sp ul.theme_list li {
	border-left: 1px solid #ddd;
	display: block;
	width: 300px;
	margin: 0 auto;
	margin-bottom: 20px;
}

.theme_area > div {
	position: relative;
	transition: 1s;
	opacity: 1;
	transform: translateY(0%);
}
.theme_area > div:first-child {
	padding-right: 20px;
}
.sp .theme_area > div:first-child {
	padding-right: 0px;
}
.theme_area > div:last-child {
	padding-left: 20px;
}
.sp .theme_area > div:last-child {
	padding-left: 0px;
}
.theme_area > div.fadein {
	opacity: 0;
	transform: translateY(100px);
}

.formarea {
	margin-top: 50px;
}
.formarea > div + div {
	margin-top: 30px;
}
.formarea > div > .label span {
	display: inline-block;
	vertical-align: middle;
}
.formarea > div > .label span.must {
	border: 1px solid #E93C36;
	color: #E93C36;
	padding: 3px 10px;
	margin-left: 20px;
}
.formarea > div > .label.bold {
	font-weight: bold;
	margin-bottom: 10px;
}
.formarea > div > .input {
	margin-top: 5px;
}
.formarea > div > .input input[type="text"], .formarea > div > .input input[type="email"], .formarea > div > .input textarea {
	width: 100%;
	padding: 7px;
	border: 1px solid #CDD6DD;
}
.formarea > div > .input select {
	border: 1px solid #CDD6DD;
}
.formarea > div > .input p {
	margin-top: 5px;
}
.formarea > div > .input label {
	display: inline-block;
	width: 33%;
	margin-top: 20px;
}
.sp .formarea > div > .input label {
	display: block;
	width: auto;
	margin-top: 15px;
}
.formarea .button {
	font-size: 0px;
}
.sp .formarea .button > div {
	display: inline-block !important;
}
.formarea .button button {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	padding: 5px 10px;
	min-width: 120px;
	min-height: 44px;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
	color: #ffffff;
	background: #2790B7;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	border: none;
}
.formarea .button button:hover {
	opacity: 1;
	border-bottom: 0px;
}
.formarea .button button:hover {
	background: #004B9E;
}
.formarea .button button:hover:before {
	border-color: #004B9E;
}
.formarea .button button.labelen {
	font-family: 'Poppins', sans-serif;
}
.formarea .button button:before {
	content: "";
	display: block;
	position: absolute;
	width: calc(100% - 2px);
	height: calc(100% - 2px);
	top: 50%;
	left: 50%;
	border: 1px solid #2790B7;
	transform: translate(-50%, -50%) scale(1);
	transition: 0ms;
}
.formarea .button button:hover:before {
	border-width: 3px;
	transform: translate(-50%, -50%) scale(1.3);
	opacity: 0;
	transition: 800ms;
}
.formarea .button.center {
	text-align: center;
}
.formarea .alert {
	color: #E93C36;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 15.4px;
	line-height: 0.9625rem;
}
.formarea .notice {
	margin-top: 20px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 21px;
	line-height: 1.3125rem;
}

.tab a {
	background: #707F89;
}

.tab ul li.current a {
	background: #004B9E;
}

.vegas-overlay, .vegas-slide, .vegas-slide-inner, .vegas-timer, .vegas-wrapper {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	overflow: hidden;
	border: none;
	padding: 0;
	margin: 0;
}

.vegas-overlay {
	opacity: .5;
	background: url(overlays/02.png) center center;
}

.vegas-timer {
	top: auto;
	bottom: 0;
	height: 2px;
}

.vegas-timer-progress {
	width: 0;
	height: 100%;
	background: #fff;
	transition: width ease-out;
}

.vegas-timer-running .vegas-timer-progress {
	width: 100%;
}

.vegas-slide, .vegas-slide-inner {
	margin: 0;
	padding: 0;
	background: center center no-repeat;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	will-change: transform,opacity;
}

body .vegas-container {
	overflow: hidden !important;
	position: relative;
}

.vegas-video {
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
}

body.vegas-container {
	overflow: auto;
	position: static;
	z-index: -2;
}

body.vegas-container > .vegas-overlay, body.vegas-container > .vegas-slide, body.vegas-container > .vegas-timer {
	position: fixed;
	z-index: -1;
}

.vegas-transition-blur, .vegas-transition-blur2 {
	opacity: 0;
	-webkit-filter: blur(32px) brightness(1.01);
	filter: blur(32px) brightness(1.01);
}

.vegas-transition-blur-in, .vegas-transition-blur2-in {
	opacity: 1;
	-webkit-filter: blur(0) brightness(1.01);
	filter: blur(0) brightness(1.01);
}

.vegas-transition-blur2-out {
	opacity: 0;
}

.vegas-transition-burn, .vegas-transition-burn2 {
	opacity: 0;
	-webkit-filter: contrast(1000%) saturate(1000%);
	filter: contrast(1000%) saturate(1000%);
}

.vegas-transition-burn-in, .vegas-transition-burn2-in {
	opacity: 1;
	-webkit-filter: contrast(100%) saturate(100%);
	filter: contrast(100%) saturate(100%);
}

.vegas-transition-burn2-out {
	opacity: 0;
	-webkit-filter: contrast(1000%) saturate(1000%);
	filter: contrast(1000%) saturate(1000%);
}

.vegas-transition-fade, .vegas-transition-fade2 {
	opacity: 0;
}

.vegas-transition-fade-in, .vegas-transition-fade2-in {
	opacity: 1;
}

.vegas-transition-fade2-out {
	opacity: 0;
}

.vegas-transition-flash, .vegas-transition-flash2 {
	opacity: 0;
	-webkit-filter: brightness(25);
	filter: brightness(25);
}

.vegas-transition-flash-in, .vegas-transition-flash2-in {
	opacity: 1;
	-webkit-filter: brightness(1);
	filter: brightness(1);
}

.vegas-transition-flash2-out {
	opacity: 0;
	-webkit-filter: brightness(25);
	filter: brightness(25);
}

.vegas-transition-negative, .vegas-transition-negative2 {
	opacity: 0;
	-webkit-filter: invert(100%);
	filter: invert(100%);
}

.vegas-transition-negative-in, .vegas-transition-negative2-in {
	opacity: 1;
	-webkit-filter: invert(0);
	filter: invert(0);
}

.vegas-transition-negative2-out {
	opacity: 0;
	-webkit-filter: invert(100%);
	filter: invert(100%);
}

.vegas-transition-slideDown, .vegas-transition-slideDown2 {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

.vegas-transition-slideDown-in, .vegas-transition-slideDown2-in {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.vegas-transition-slideDown2-out {
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}

.vegas-transition-slideLeft, .vegas-transition-slideLeft2 {
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

.vegas-transition-slideLeft-in, .vegas-transition-slideLeft2-in {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

.vegas-transition-slideLeft2-out, .vegas-transition-slideRight, .vegas-transition-slideRight2 {
	-webkit-transform: translateX(-100%);
	transform: translateX(-100%);
}

.vegas-transition-slideRight-in, .vegas-transition-slideRight2-in {
	-webkit-transform: translateX(0);
	transform: translateX(0);
}

.vegas-transition-slideRight2-out {
	-webkit-transform: translateX(100%);
	transform: translateX(100%);
}

.vegas-transition-slideUp, .vegas-transition-slideUp2 {
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
}

.vegas-transition-slideUp-in, .vegas-transition-slideUp2-in {
	-webkit-transform: translateY(0);
	transform: translateY(0);
}

.vegas-transition-slideUp2-out {
	-webkit-transform: translateY(-100%);
	transform: translateY(-100%);
}

.vegas-transition-swirlLeft, .vegas-transition-swirlLeft2 {
	-webkit-transform: scale(2) rotate(35deg);
	transform: scale(2) rotate(35deg);
	opacity: 0;
}

.vegas-transition-swirlLeft-in, .vegas-transition-swirlLeft2-in {
	-webkit-transform: scale(1) rotate(0);
	transform: scale(1) rotate(0);
	opacity: 1;
}

.vegas-transition-swirlLeft2-out, .vegas-transition-swirlRight, .vegas-transition-swirlRight2 {
	-webkit-transform: scale(2) rotate(-35deg);
	transform: scale(2) rotate(-35deg);
	opacity: 0;
}

.vegas-transition-swirlRight-in, .vegas-transition-swirlRight2-in {
	-webkit-transform: scale(1) rotate(0);
	transform: scale(1) rotate(0);
	opacity: 1;
}

.vegas-transition-swirlRight2-out {
	-webkit-transform: scale(2) rotate(35deg);
	transform: scale(2) rotate(35deg);
	opacity: 0;
}

.vegas-transition-zoomIn, .vegas-transition-zoomIn2 {
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0;
}

.vegas-transition-zoomIn-in, .vegas-transition-zoomIn2-in {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 1;
}

.vegas-transition-zoomIn2-out, .vegas-transition-zoomOut, .vegas-transition-zoomOut2 {
	-webkit-transform: scale(2);
	transform: scale(2);
	opacity: 0;
}

.vegas-transition-zoomOut-in, .vegas-transition-zoomOut2-in {
	-webkit-transform: scale(1);
	transform: scale(1);
	opacity: 1;
}

.vegas-transition-zoomOut2-out {
	-webkit-transform: scale(0);
	transform: scale(0);
	opacity: 0;
}

.vegas-animation-kenburns {
	-webkit-animation: kenburns ease-out;
	animation: kenburns ease-out;
}

@-webkit-keyframes kenburns {
	0% {
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
	100% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
@keyframes kenburns {
	0% {
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
	100% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
}
.vegas-animation-kenburnsDownLeft {
	-webkit-animation: kenburnsDownLeft ease-out;
	animation: kenburnsDownLeft ease-out;
}

@-webkit-keyframes kenburnsDownLeft {
	0% {
		-webkit-transform: scale(1.5) translate(10%, -10%);
		transform: scale(1.5) translate(10%, -10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
@keyframes kenburnsDownLeft {
	0% {
		-webkit-transform: scale(1.5) translate(10%, -10%);
		transform: scale(1.5) translate(10%, -10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
.vegas-animation-kenburnsDownRight {
	-webkit-animation: kenburnsDownRight ease-out;
	animation: kenburnsDownRight ease-out;
}

@-webkit-keyframes kenburnsDownRight {
	0% {
		-webkit-transform: scale(1.5) translate(-10%, -10%);
		transform: scale(1.5) translate(-10%, -10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
@keyframes kenburnsDownRight {
	0% {
		-webkit-transform: scale(1.5) translate(-10%, -10%);
		transform: scale(1.5) translate(-10%, -10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
.vegas-animation-kenburnsDown {
	-webkit-animation: kenburnsDown ease-out;
	animation: kenburnsDown ease-out;
}

@-webkit-keyframes kenburnsDown {
	0% {
		-webkit-transform: scale(1.5) translate(0, -10%);
		transform: scale(1.5) translate(0, -10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
@keyframes kenburnsDown {
	0% {
		-webkit-transform: scale(1.5) translate(0, -10%);
		transform: scale(1.5) translate(0, -10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
.vegas-animation-kenburnsLeft {
	-webkit-animation: kenburnsLeft ease-out;
	animation: kenburnsLeft ease-out;
}

@-webkit-keyframes kenburnsLeft {
	0% {
		-webkit-transform: scale(1.5) translate(10%, 0);
		transform: scale(1.5) translate(10%, 0);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
@keyframes kenburnsLeft {
	0% {
		-webkit-transform: scale(1.5) translate(10%, 0);
		transform: scale(1.5) translate(10%, 0);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
.vegas-animation-kenburnsRight {
	-webkit-animation: kenburnsRight ease-out;
	animation: kenburnsRight ease-out;
}

@-webkit-keyframes kenburnsRight {
	0% {
		-webkit-transform: scale(1.5) translate(-10%, 0);
		transform: scale(1.5) translate(-10%, 0);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
@keyframes kenburnsRight {
	0% {
		-webkit-transform: scale(1.5) translate(-10%, 0);
		transform: scale(1.5) translate(-10%, 0);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
.vegas-animation-kenburnsUpLeft {
	-webkit-animation: kenburnsUpLeft ease-out;
	animation: kenburnsUpLeft ease-out;
}

@-webkit-keyframes kenburnsUpLeft {
	0% {
		-webkit-transform: scale(1.5) translate(10%, 10%);
		transform: scale(1.5) translate(10%, 10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
@keyframes kenburnsUpLeft {
	0% {
		-webkit-transform: scale(1.5) translate(10%, 10%);
		transform: scale(1.5) translate(10%, 10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
.vegas-animation-kenburnsUpRight {
	-webkit-animation: kenburnsUpRight ease-out;
	animation: kenburnsUpRight ease-out;
}

@-webkit-keyframes kenburnsUpRight {
	0% {
		-webkit-transform: scale(1.5) translate(-10%, 10%);
		transform: scale(1.5) translate(-10%, 10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
@keyframes kenburnsUpRight {
	0% {
		-webkit-transform: scale(1.5) translate(-10%, 10%);
		transform: scale(1.5) translate(-10%, 10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
.vegas-animation-kenburnsUp {
	-webkit-animation: kenburnsUp ease-out;
	animation: kenburnsUp ease-out;
}

@-webkit-keyframes kenburnsUp {
	0% {
		-webkit-transform: scale(1.5) translate(0, 10%);
		transform: scale(1.5) translate(0, 10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
@keyframes kenburnsUp {
	0% {
		-webkit-transform: scale(1.5) translate(0, 10%);
		transform: scale(1.5) translate(0, 10%);
	}
	100% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
}
.vegas-animation-kenburnsR {
	-webkit-animation: kenburnsR ease-out;
	animation: kenburnsR ease-out;
}

@-webkit-keyframes kenburnsR {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	100% {
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
}
@keyframes kenburnsR {
	0% {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	100% {
		-webkit-transform: scale(1.5);
		transform: scale(1.5);
	}
}
.vegas-animation-kenburnsRDownLeft {
	-webkit-animation: kenburnsRDownLeft ease-out;
	animation: kenburnsRDownLeft ease-out;
}

@-webkit-keyframes kenburnsRDownLeft {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(10%, -10%);
		transform: scale(1.5) translate(10%, -10%);
	}
}
@keyframes kenburnsRDownLeft {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(10%, -10%);
		transform: scale(1.5) translate(10%, -10%);
	}
}
.vegas-animation-kenburnsRDownRight {
	-webkit-animation: kenburnsRDownRight ease-out;
	animation: kenburnsRDownRight ease-out;
}

@-webkit-keyframes kenburnsRDownRight {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(-10%, -10%);
		transform: scale(1.5) translate(-10%, -10%);
	}
}
@keyframes kenburnsRDownRight {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(-10%, -10%);
		transform: scale(1.5) translate(-10%, -10%);
	}
}
.vegas-animation-kenburnsRDown {
	-webkit-animation: kenburnsRDown ease-out;
	animation: kenburnsRDown ease-out;
}

@-webkit-keyframes kenburnsRDown {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(0, -10%);
		transform: scale(1.5) translate(0, -10%);
	}
}
@keyframes kenburnsRDown {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(0, -10%);
		transform: scale(1.5) translate(0, -10%);
	}
}
.vegas-animation-kenburnsRLeft {
	-webkit-animation: kenburnsRLeft ease-out;
	animation: kenburnsRLeft ease-out;
}

@-webkit-keyframes kenburnsRLeft {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(10%, 0);
		transform: scale(1.5) translate(10%, 0);
	}
}
@keyframes kenburnsRLeft {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(10%, 0);
		transform: scale(1.5) translate(10%, 0);
	}
}
.vegas-animation-kenburnsRRight {
	-webkit-animation: kenburnsRRight ease-out;
	animation: kenburnsRRight ease-out;
}

@-webkit-keyframes kenburnsRRight {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(-10%, 0);
		transform: scale(1.5) translate(-10%, 0);
	}
}
@keyframes kenburnsRRight {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(-10%, 0);
		transform: scale(1.5) translate(-10%, 0);
	}
}
.vegas-animation-kenburnsRUpLeft {
	-webkit-animation: kenburnsRUpLeft ease-out;
	animation: kenburnsRUpLeft ease-out;
}

@-webkit-keyframes kenburnsRUpLeft {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(10%, 10%);
		transform: scale(1.5) translate(10%, 10%);
	}
}
@keyframes kenburnsRUpLeft {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(10%, 10%);
		transform: scale(1.5) translate(10%, 10%);
	}
}
.vegas-animation-kenburnsRUpRight {
	-webkit-animation: kenburnsRUpRight ease-out;
	animation: kenburnsRUpRight ease-out;
}

@-webkit-keyframes kenburnsRUpRight {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(-10%, 10%);
		transform: scale(1.5) translate(-10%, 10%);
	}
}
@keyframes kenburnsRUpRight {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(-10%, 10%);
		transform: scale(1.5) translate(-10%, 10%);
	}
}
.vegas-animation-kenburnsRUp {
	-webkit-animation: kenburnsRUp ease-out;
	animation: kenburnsRUp ease-out;
}

@-webkit-keyframes kenburnsRUp {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(0, 10%);
		transform: scale(1.5) translate(0, 10%);
	}
}
@keyframes kenburnsRUp {
	0% {
		-webkit-transform: scale(1) translate(0, 0);
		transform: scale(1) translate(0, 0);
	}
	100% {
		-webkit-transform: scale(1.5) translate(0, 10%);
		transform: scale(1.5) translate(0, 10%);
	}
}
/**
 * Swiper 4.3.5
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 * http://www.idangero.us/swiper/
 *
 * Copyright 2014-2018 Vladimir Kharlampidi
 *
 * Released under the MIT License
 *
 * Released on: July 31, 2018
 */
.swiper-container {
	margin: 0 auto;
	position: relative;
	overflow: hidden;
	list-style: none;
	padding: 0;
	z-index: 1;
}

.swiper-container-no-flexbox .swiper-slide {
	float: left;
}

.swiper-container-vertical > .swiper-wrapper {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
}

.swiper-wrapper {
	position: relative;
	width: 100%;
	height: 100%;
	z-index: 1;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	-o-transition-property: transform;
	transition-property: transform;
	transition-property: transform,-webkit-transform;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
}

.swiper-container-android .swiper-slide, .swiper-wrapper {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.swiper-container-multirow > .swiper-wrapper {
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.swiper-container-free-mode > .swiper-wrapper {
	-webkit-transition-timing-function: ease-out;
	-o-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
	margin: 0 auto;
}

.swiper-slide {
	-webkit-flex-shrink: 0;
	-ms-flex-negative: 0;
	flex-shrink: 0;
	width: 100%;
	height: 100%;
	position: relative;
	-webkit-transition-property: -webkit-transform;
	transition-property: -webkit-transform;
	-o-transition-property: transform;
	transition-property: transform;
	transition-property: transform,-webkit-transform;
}

.swiper-invisible-blank-slide {
	visibility: hidden;
}

.swiper-container-autoheight, .swiper-container-autoheight .swiper-slide {
	height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
	-webkit-box-align: start;
	-webkit-align-items: flex-start;
	-ms-flex-align: start;
	align-items: flex-start;
	-webkit-transition-property: height,-webkit-transform;
	transition-property: height,-webkit-transform;
	-o-transition-property: transform,height;
	transition-property: transform,height;
	transition-property: transform,height,-webkit-transform;
}

.swiper-container-3d {
	-webkit-perspective: 1200px;
	perspective: 1200px;
}

.swiper-container-3d .swiper-cube-shadow, .swiper-container-3d .swiper-slide, .swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top, .swiper-container-3d .swiper-wrapper {
	-webkit-transform-style: preserve-3d;
	transform-style: preserve-3d;
}

.swiper-container-3d .swiper-slide-shadow-bottom, .swiper-container-3d .swiper-slide-shadow-left, .swiper-container-3d .swiper-slide-shadow-right, .swiper-container-3d .swiper-slide-shadow-top {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	pointer-events: none;
	z-index: 10;
}

.swiper-container-3d .swiper-slide-shadow-left {
	background-image: -webkit-gradient(linear, right top, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-right {
	background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-top {
	background-image: -webkit-gradient(linear, left bottom, left top, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-3d .swiper-slide-shadow-bottom {
	background-image: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.5)), to(rgba(0, 0, 0, 0)));
	background-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: -o-linear-gradient(top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
	background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

.swiper-container-wp8-horizontal, .swiper-container-wp8-horizontal > .swiper-wrapper {
	-ms-touch-action: pan-y;
	touch-action: pan-y;
}

.swiper-container-wp8-vertical, .swiper-container-wp8-vertical > .swiper-wrapper {
	-ms-touch-action: pan-x;
	touch-action: pan-x;
}

.swiper-button-next, .swiper-button-prev {
	position: absolute;
	top: 50%;
	width: 27px;
	height: 44px;
	margin-top: -22px;
	z-index: 10;
	cursor: pointer;
	background-size: 27px 44px;
	background-position: center;
	background-repeat: no-repeat;
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
	opacity: .35;
	cursor: auto;
	pointer-events: none;
}

.swiper-button-prev, .swiper-container-rtl .swiper-button-next {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
	left: 10px;
	right: auto;
}

.swiper-button-next, .swiper-container-rtl .swiper-button-prev {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
	right: 10px;
	left: auto;
}

.swiper-button-prev.swiper-button-white, .swiper-container-rtl .swiper-button-next.swiper-button-white {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-next.swiper-button-white, .swiper-container-rtl .swiper-button-prev.swiper-button-white {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-prev.swiper-button-black, .swiper-container-rtl .swiper-button-next.swiper-button-black {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-next.swiper-button-black, .swiper-container-rtl .swiper-button-prev.swiper-button-black {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}

.swiper-button-lock {
	display: none;
}

.swiper-pagination {
	position: absolute;
	text-align: center;
	-webkit-transition: .3s opacity;
	-o-transition: .3s opacity;
	transition: .3s opacity;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
	opacity: 0;
}

.swiper-container-horizontal > .swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
	bottom: 10px;
	left: 0;
	width: 100%;
}

.swiper-pagination-bullets-dynamic {
	overflow: hidden;
	font-size: 0;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
	position: relative;
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
	-webkit-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
	-webkit-transform: scale(0.66);
	-ms-transform: scale(0.66);
	transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
	-webkit-transform: scale(0.66);
	-ms-transform: scale(0.66);
	transform: scale(0.66);
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
	-webkit-transform: scale(0.33);
	-ms-transform: scale(0.33);
	transform: scale(0.33);
}

.swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	display: inline-block;
	border-radius: 100%;
	background: #000;
	opacity: .2;
}

button.swiper-pagination-bullet {
	border: none;
	margin: 0;
	padding: 0;
	-webkit-box-shadow: none;
	box-shadow: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
	cursor: pointer;
}

.swiper-pagination-bullet-active {
	opacity: 1;
	background: #007aff;
}

.swiper-container-vertical > .swiper-pagination-bullets {
	right: 10px;
	top: 50%;
	-webkit-transform: translate3d(0, -50%, 0);
	transform: translate3d(0, -50%, 0);
}

.swiper-container-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 6px 0;
	display: block;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
	width: 8px;
}

.swiper-container-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	display: inline-block;
	-webkit-transition: .2s top,.2s -webkit-transform;
	transition: .2s top,.2s -webkit-transform;
	-o-transition: .2s transform,.2s top;
	transition: .2s transform,.2s top;
	transition: .2s transform,.2s top,.2s -webkit-transform;
}

.swiper-container-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 4px;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
	left: 50%;
	-webkit-transform: translateX(-50%);
	-ms-transform: translateX(-50%);
	transform: translateX(-50%);
	white-space: nowrap;
}

.swiper-container-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transition: .2s left,.2s -webkit-transform;
	transition: .2s left,.2s -webkit-transform;
	-o-transition: .2s transform,.2s left;
	transition: .2s transform,.2s left;
	transition: .2s transform,.2s left,.2s -webkit-transform;
}

.swiper-container-horizontal.swiper-container-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
	-webkit-transition: .2s right,.2s -webkit-transform;
	transition: .2s right,.2s -webkit-transform;
	-o-transition: .2s transform,.2s right;
	transition: .2s transform,.2s right;
	transition: .2s transform,.2s right,.2s -webkit-transform;
}

.swiper-pagination-progressbar {
	background: rgba(0, 0, 0, 0.25);
	position: absolute;
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	background: #007aff;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	-webkit-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
	-webkit-transform-origin: left top;
	-ms-transform-origin: left top;
	transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
	-webkit-transform-origin: right top;
	-ms-transform-origin: right top;
	transform-origin: right top;
}

.swiper-container-horizontal > .swiper-pagination-progressbar, .swiper-container-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
	width: 100%;
	height: 4px;
	left: 0;
	top: 0;
}

.swiper-container-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-container-vertical > .swiper-pagination-progressbar {
	width: 4px;
	height: 100%;
	left: 0;
	top: 0;
}

.swiper-pagination-white .swiper-pagination-bullet-active {
	background: #fff;
}

.swiper-pagination-progressbar.swiper-pagination-white {
	background: rgba(255, 255, 255, 0.25);
}

.swiper-pagination-progressbar.swiper-pagination-white .swiper-pagination-progressbar-fill {
	background: #fff;
}

.swiper-pagination-black .swiper-pagination-bullet-active {
	background: #000;
}

.swiper-pagination-progressbar.swiper-pagination-black {
	background: rgba(0, 0, 0, 0.25);
}

.swiper-pagination-progressbar.swiper-pagination-black .swiper-pagination-progressbar-fill {
	background: #000;
}

.swiper-pagination-lock {
	display: none;
}

.swiper-scrollbar {
	border-radius: 10px;
	position: relative;
	-ms-touch-action: none;
	background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal > .swiper-scrollbar {
	position: absolute;
	left: 1%;
	bottom: 3px;
	z-index: 50;
	height: 5px;
	width: 98%;
}

.swiper-container-vertical > .swiper-scrollbar {
	position: absolute;
	right: 3px;
	top: 1%;
	z-index: 50;
	width: 5px;
	height: 98%;
}

.swiper-scrollbar-drag {
	height: 100%;
	width: 100%;
	position: relative;
	background: rgba(0, 0, 0, 0.5);
	border-radius: 10px;
	left: 0;
	top: 0;
}

.swiper-scrollbar-cursor-drag {
	cursor: move;
}

.swiper-scrollbar-lock {
	display: none;
}

.swiper-zoom-container {
	width: 100%;
	height: 100%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	text-align: center;
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
	max-width: 100%;
	max-height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}

.swiper-slide-zoomed {
	cursor: move;
}

.swiper-lazy-preloader {
	width: 42px;
	height: 42px;
	position: absolute;
	left: 50%;
	top: 50%;
	margin-left: -21px;
	margin-top: -21px;
	z-index: 10;
	-webkit-transform-origin: 50%;
	-ms-transform-origin: 50%;
	transform-origin: 50%;
	-webkit-animation: swiper-preloader-spin 1s steps(12, end) infinite;
	animation: swiper-preloader-spin 1s steps(12, end) infinite;
}

.swiper-lazy-preloader:after {
	display: block;
	content: '';
	width: 100%;
	height: 100%;
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%236c6c6c'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
	background-position: 50%;
	background-size: 100%;
	background-repeat: no-repeat;
}

.swiper-lazy-preloader-white:after {
	background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20viewBox%3D'0%200%20120%20120'%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20xmlns%3Axlink%3D'http%3A%2F%2Fwww.w3.org%2F1999%2Fxlink'%3E%3Cdefs%3E%3Cline%20id%3D'l'%20x1%3D'60'%20x2%3D'60'%20y1%3D'7'%20y2%3D'27'%20stroke%3D'%23fff'%20stroke-width%3D'11'%20stroke-linecap%3D'round'%2F%3E%3C%2Fdefs%3E%3Cg%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(30%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(60%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(90%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(120%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.27'%20transform%3D'rotate(150%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.37'%20transform%3D'rotate(180%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.46'%20transform%3D'rotate(210%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.56'%20transform%3D'rotate(240%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.66'%20transform%3D'rotate(270%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.75'%20transform%3D'rotate(300%2060%2C60)'%2F%3E%3Cuse%20xlink%3Ahref%3D'%23l'%20opacity%3D'.85'%20transform%3D'rotate(330%2060%2C60)'%2F%3E%3C%2Fg%3E%3C%2Fsvg%3E");
}

@-webkit-keyframes swiper-preloader-spin {
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
@keyframes swiper-preloader-spin {
	100% {
		-webkit-transform: rotate(360deg);
		transform: rotate(360deg);
	}
}
.swiper-container .swiper-notification {
	position: absolute;
	left: 0;
	top: 0;
	pointer-events: none;
	opacity: 0;
	z-index: -1000;
}

.swiper-container-fade.swiper-container-free-mode .swiper-slide {
	-webkit-transition-timing-function: ease-out;
	-o-transition-timing-function: ease-out;
	transition-timing-function: ease-out;
}

.swiper-container-fade .swiper-slide {
	pointer-events: none;
	-webkit-transition-property: opacity;
	-o-transition-property: opacity;
	transition-property: opacity;
}

.swiper-container-fade .swiper-slide .swiper-slide {
	pointer-events: none;
}

.swiper-container-fade .swiper-slide-active, .swiper-container-fade .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}

.swiper-container-cube {
	overflow: visible;
}

.swiper-container-cube .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: 1;
	visibility: hidden;
	-webkit-transform-origin: 0 0;
	-ms-transform-origin: 0 0;
	transform-origin: 0 0;
	width: 100%;
	height: 100%;
}

.swiper-container-cube .swiper-slide .swiper-slide {
	pointer-events: none;
}

.swiper-container-cube.swiper-container-rtl .swiper-slide {
	-webkit-transform-origin: 100% 0;
	-ms-transform-origin: 100% 0;
	transform-origin: 100% 0;
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}

.swiper-container-cube .swiper-slide-active, .swiper-container-cube .swiper-slide-next, .swiper-container-cube .swiper-slide-next + .swiper-slide, .swiper-container-cube .swiper-slide-prev {
	pointer-events: auto;
	visibility: visible;
}

.swiper-container-cube .swiper-slide-shadow-bottom, .swiper-container-cube .swiper-slide-shadow-left, .swiper-container-cube .swiper-slide-shadow-right, .swiper-container-cube .swiper-slide-shadow-top {
	z-index: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.swiper-container-cube .swiper-cube-shadow {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	background: #000;
	opacity: .6;
	-webkit-filter: blur(50px);
	filter: blur(50px);
	z-index: 0;
}

.swiper-container-flip {
	overflow: visible;
}

.swiper-container-flip .swiper-slide {
	pointer-events: none;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	z-index: 1;
}

.swiper-container-flip .swiper-slide .swiper-slide {
	pointer-events: none;
}

.swiper-container-flip .swiper-slide-active, .swiper-container-flip .swiper-slide-active .swiper-slide-active {
	pointer-events: auto;
}

.swiper-container-flip .swiper-slide-shadow-bottom, .swiper-container-flip .swiper-slide-shadow-left, .swiper-container-flip .swiper-slide-shadow-right, .swiper-container-flip .swiper-slide-shadow-top {
	z-index: 0;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.swiper-container-coverflow .swiper-wrapper {
	-ms-perspective: 1200px;
}

/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
#colorbox, #cboxOverlay, #cboxWrapper {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9999;
	-webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
	max-width: none;
}

#cboxOverlay {
	position: fixed;
	width: 100%;
	height: 100%;
}

#cboxMiddleLeft, #cboxBottomLeft {
	clear: left;
}

#cboxContent {
	position: relative;
}

#cboxLoadedContent {
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}

#cboxTitle {
	margin: 0;
}

#cboxLoadingOverlay, #cboxLoadingGraphic {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
	cursor: pointer;
}

.cboxPhoto {
	float: left;
	margin: auto;
	border: 0;
	display: block;
	max-width: none;
	-ms-interpolation-mode: bicubic;
}

.cboxIframe {
	width: 100%;
	height: 100%;
	display: block;
	border: 0;
	padding: 0;
	margin: 0;
}

#colorbox, #cboxContent, #cboxLoadedContent {
	box-sizing: content-box;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
}

/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
#cboxOverlay {
	background: #333;
	opacity: 0.8;
	filter: alpha(opacity=80);
}

#colorbox {
	outline: 0;
}

#cboxContent {
	background: #fff;
}

.cboxIframe {
	background: #000000;
}

#cboxError {
	padding: 50px;
	border: 1px solid #ccc;
}

#cboxLoadedContent {
	border: 0px solid #000;
	background: #fff;
}

#cboxTitle {
	position: absolute;
	top: -20px;
	left: 0;
	color: #ccc;
}

#cboxCurrent {
	position: absolute;
	top: -10px;
	left: 50%;
	font-size: 18px;
	font-size: 1.125rem;
	line-height: 19.8px;
	line-height: 1.2375rem;
	font-weight: bold;
	color: #ffffff;
	-webkit-transform: translate(-50%, -100%);
	transform: translate(-50%, -100%);
	-webkit-transition: 400ms;
	transition: 400ms;
	opacity: 0;
}
#cboxCurrent.view {
	opacity: 1;
}

#cboxLoadingGraphic {
	background: url(../images/loading.gif) no-repeat center center;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
	border: 0;
	padding: 0;
	margin: 0;
	overflow: visible;
	width: auto;
	background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
	outline: 0;
}

#cboxSlideshow {
	position: absolute;
	top: -20px;
	right: 90px;
	color: #fff;
}

#cboxPrevious {
	display: block;
	position: absolute;
	width: 80px;
	height: 80px;
	top: 50%;
	left: -120px;
	margin-top: -40px;
	text-indent: -9999px;
	background: url(../images/carouselprev.svg) no-repeat center center #004B9E;
	border-radius: 50%;
	box-shadow: 0 0 10px -2px rgba(0, 0, 0, 0.3);
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	z-index: 30;
	-webkit-transition: 400ms;
	transition: 400ms;
	opacity: 0;
}
#cboxPrevious:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#cboxPrevious.view {
	opacity: 1;
}
.pc #cboxPrevious {
	width: 64px;
	height: 64px;
	left: -84px;
	margin-top: -32px;
}
.sp #cboxPrevious {
	width: 50px;
	height: 50px;
	left: -40px;
	margin-top: -25px;
}

#cboxNext {
	display: block;
	position: absolute;
	width: 80px;
	height: 80px;
	top: 50%;
	right: -120px;
	margin-top: -40px;
	text-indent: -9999px;
	background: url(../images/carouselnext.svg) no-repeat center center #004B9E;
	border-radius: 50%;
	box-shadow: 0 0 10px -2px rgba(0, 0, 0, 0.3);
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	z-index: 30;
	-webkit-transition: 400ms;
	transition: 400ms;
	opacity: 0;
}
#cboxNext:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#cboxNext.view {
	opacity: 1;
}
.pc #cboxNext {
	width: 64px;
	height: 64px;
	right: -84px;
	margin-top: -32px;
}
.sp #cboxNext {
	width: 50px;
	height: 50px;
	right: -40px;
	margin-top: -25px;
}

#cboxClose {
	position: absolute;
	display: block;
	top: -20px;
	right: -20px;
	width: 40px;
	height: 40px;
	text-indent: -9999px;
	background: #004B9E;
	border-radius: 50%;
	-webkit-transition: opacity 0.2s, background 0.2s;
	transition: opacity 0.2s, background 0.2s;
	cursor: pointer;
	-webkit-transition: 400ms;
	transition: 400ms;
	opacity: 0;
	z-index: 10;
}
#cboxClose:hover {
	opacity: 0.7;
	border-bottom: 0px;
}
#cboxClose.view {
	opacity: 1;
}
#cboxClose:before {
	content: "";
	position: absolute;
	display: block;
	width: 20px;
	height: 2px;
	top: 19px;
	left: 10px;
	background: #ffffff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
#cboxClose:after {
	content: "";
	position: absolute;
	display: block;
	width: 2px;
	height: 20px;
	top: 10px;
	left: 19px;
	background: #ffffff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

#colorbox #waiting {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	background: rgba(255, 255, 255, 0.7);
	z-index: 5;
}
#colorbox #waiting > div {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 0px;
	padding: 20px;
	font-size: 22px;
	font-size: 1.375rem;
	line-height: 37.4px;
	line-height: 2.3375rem;
	text-align: center;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
#colorbox #waiting > div span {
	display: block;
	margin: auto;
	width: 16px;
	height: 16px;
	background: url(../images/loading.gif) no-repeat center center;
}

@keyframes scroll-hint-appear {
	0% {
		transform: translateX(40px);
		opacity: 0;
	}
	10% {
		opacity: 1;
	}
	50%,
  100% {
		transform: translateX(-40px);
		opacity: 0;
	}
}
.scroll-hint.is-right-scrollable {
	background: linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-right-scrollable.is-left-scrollable {
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0)), linear-gradient(270deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint.is-left-scrollable {
	background: linear-gradient(90deg, rgba(0, 0, 0, 0.15) 0, rgba(0, 0, 0, 0) 16px, rgba(0, 0, 0, 0));
}

.scroll-hint-icon {
	position: absolute;
	top: calc(50% - 25px);
	left: calc(50% - 60px);
	box-sizing: border-box;
	width: 120px;
	height: 80px;
	border-radius: 5px;
	transition: opacity .3s;
	opacity: 0;
	background: rgba(0, 0, 0, 0.7);
	text-align: center;
	padding: 20px 10px 10px 10px;
}

.scroll-hint-icon-wrap {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-height: 100%;
	pointer-events: none;
}

.scroll-hint-text {
	font-size: 10px;
	color: #FFF;
	margin-top: 5px;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon {
	opacity: .8;
}

.scroll-hint-icon:before {
	display: inline-block;
	width: 40px;
	height: 40px;
	color: #FFF;
	vertical-align: middle;
	text-align: center;
	content: "";
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDM8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIiBmaWxsPSIjZmZmIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon:after {
	content: "";
	width: 34px;
	height: 14px;
	display: block;
	position: absolute;
	top: 10px;
	left: 50%;
	margin-left: -20px;
	background-repeat: no-repeat;
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDE8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIiBmaWxsPSIjZmZmIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIgZmlsbD0iI2ZmZiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIgZmlsbD0iI2ZmZiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiIGZpbGw9IiNmZmYiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiIGZpbGw9IiNmZmYiLz48L2c+PC9nPjwvc3ZnPg==);
	opacity: 0;
	transition-delay: 2.4s;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:after {
	opacity: 1;
}

.scroll-hint-icon-wrap.is-active .scroll-hint-icon:before {
	animation: scroll-hint-appear 1.2s linear;
	animation-iteration-count: 2;
}

.scroll-hint-icon-white {
	background-color: #FFF;
	box-shadow: 0 4px 5px rgba(0, 0, 0, 0.4);
}

.scroll-hint-icon-white:before {
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNS43NyIgaGVpZ2h0PSIzMC41MiIgdmlld0JveD0iMCAwIDI1Ljc3IDMwLjUyIj48dGl0bGU+44Ki44K744OD44OIIDQ8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxwYXRoIGQ9Ik0yMS4zMywzMC41Mkg3Ljg1QTEuNTUsMS41NSwwLDAsMSw2LjMsMjlhMTIuNDYsMTIuNDYsMCwwLDAtLjYzLTQuNDIsMjUuMTYsMjUuMTYsMCwwLDAtNC4yNS01bC0uMDYtLjA2QTUsNSwwLDAsMSwwLDE1Ljg2YTMuNjQsMy42NCwwLDAsMSwxLjE3LTIuNjIsMy42MywzLjYzLDAsMCwxLDUuMTQuMDdWMy43N2EzLjc3LDMuNzcsMCwxLDEsNy41NCwwVjguMzNhMy4zNSwzLjM1LDAsMCwxLDEuMjYsMCwzLDMsMCwwLDEsMiwxLjIyLDMuNSwzLjUsMCwwLDEsMi0uMDYsMy4yMSwzLjIxLDAsMCwxLDIsMS41NCwzLjc0LDMuNzQsMCwwLDEsMywuNDdBNC4yMSw0LjIxLDAsMCwxLDI1Ljc0LDE1YzAsLjExLDAsLjI3LDAsLjQ2YTE5LjI2LDE5LjI2LDAsMCwxLS44NCw3Yy0uMTQuMzgtLjM2LjgxLS41NiwxLjIybC0uMTEuMjJjMCwuMDctLjA5LjE0LS4xNC4yMWE3LjEzLDcuMTMsMCwwLDAtMS4xNywyLjE3Yy0uMDYuNTYtLjA2LDIuMTUtLjA1LDIuNzFBMS41NSwxLjU1LDAsMCwxLDIxLjMzLDMwLjUyWk04LjYxLDI4LjIxaDEyYzAtLjcxLDAtMS43MS4wNy0yLjIzYTguNzQsOC43NCwwLDAsMSwxLjU5LTMuMjVsLjA2LS4xMmExMCwxMCwwLDAsMCwuNDYtMSwxNi44LDE2LjgsMCwwLDAsLjctNi4xMmMwLS4yMywwLS40MSwwLS41NGgwYTIsMiwwLDAsMC0uNjQtMS41MiwxLjMzLDEuMzMsMCwwLDAtMS41NS4wOCwxLjEzLDEuMTMsMCwwLDEtMS4xOC4yOCwxLjE1LDEuMTUsMCwwLDEtLjc4LS45NCwxLjI2LDEuMjYsMCwwLDAtLjc1LTEuMTEsMSwxLDAsMCwwLTEuMTEuMjhsLS4xLjFhMS4xNSwxLjE1LDAsMCwxLTEuMTkuMjksMS4xNiwxLjE2LDAsMCwxLS43OC0uOTVjLS4wOS0uNjgtLjIxLS43Ny0uNy0uODdhLjgyLjgyLDAsMCwwLTEsLjQ4LDEuMTYsMS4xNiwwLDAsMS0yLjE2LS41OFYzLjc3YTEuNDYsMS40NiwwLDEsMC0yLjkyLDB2Ny44NWwwLDQuMzNhMS4xNywxLjE3LDAsMCwxLS44MywxLjExLDEuMTUsMS4xNSwwLDAsMS0xLjItLjM1bC0xLS45MWMtLjQ3LS40Mi0uNzMtLjY2LS44NC0uNzdhMS4zNSwxLjM1LDAsMCwwLTItLjEyTDIuNywxNWExLjMyLDEuMzIsMCwwLDAtLjM5LDFBMi41NywyLjU3LDAsMCwwLDMsMTcuODVsMCwwYTI3LjI0LDI3LjI0LDAsMCwxLDQuNyw1LjYyQTEyLjYzLDEyLjYzLDAsMCwxLDguNjEsMjguMjFaTTIzLjIsMjMuMzVaTTYuNTEsMTYuNTlaIi8+PC9nPjwvZz48L3N2Zz4=);
}

.scroll-hint-icon-white:after {
	background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIzMy4yOSIgaGVpZ2h0PSIxMi4wMiIgdmlld0JveD0iMCAwIDMzLjI5IDEyLjAyIj48dGl0bGU+44Ki44K744OD44OIIDI8L3RpdGxlPjxnIGlkPSLjg6zjgqTjg6Tjg7xfMiIgZGF0YS1uYW1lPSLjg6zjgqTjg6Tjg7wgMiI+PGcgaWQ9IuODrOOCpOODpOODvF8xLTIiIGRhdGEtbmFtZT0i44Os44Kk44Ok44O8IDEiPjxsaW5lIHgxPSIxLjg1IiB5MT0iNi4wMSIgeDI9IjEwLjQiIHkyPSI2LjAxIi8+PHBhdGggZD0iTTEwLjQsNy4xN0gxLjg1YTEuMTYsMS4xNiwwLDEsMSwwLTIuMzFIMTAuNGExLjE2LDEuMTYsMCwxLDEsMCwyLjMxWiIvPjxwYXRoIGQ9Ik03LjQsMTJhMS4xNSwxLjE1LDAsMCwxLS43Mi0uMjVsLTYuMjUtNUExLjIsMS4yLDAsMCwxLDAsNS44NywxLjE0LDEuMTQsMCwwLDEsLjQ2LDVMNi43LjIzQTEuMTYsMS4xNiwwLDAsMSw4LjEsMi4wOEwzLDUuOTEsOC4xMiwxMEExLjE2LDEuMTYsMCwwLDEsNy40LDEyWiIvPjxsaW5lIHgxPSIzMS40NSIgeTE9IjYuMDEiIHgyPSIyMi44OSIgeTI9IjYuMDEiLz48cGF0aCBkPSJNMzEuNDUsNy4xN0gyMi44OWExLjE2LDEuMTYsMCwxLDEsMC0yLjMxaDguNTZhMS4xNiwxLjE2LDAsMCwxLDAsMi4zMVoiLz48cGF0aCBkPSJNMjUuOSwxMmExLjE4LDEuMTgsMCwwLDEtLjkxLS40M0ExLjE3LDEuMTcsMCwwLDEsMjUuMTcsMTBsNS4wOS00LjA1TDI1LjIsMi4wOEExLjE2LDEuMTYsMCwwLDEsMjYuNTkuMjNMMzIuODQsNWExLjE2LDEuMTYsMCwwLDEsLjQ1LjkxLDEuMTQsMS4xNCwwLDAsMS0uNDMuOTJsLTYuMjQsNUExLjE3LDEuMTcsMCwwLDEsMjUuOSwxMloiLz48L2c+PC9nPjwvc3ZnPg==);
}

.scroll-hint-icon-white .scroll-hint-text {
	color: #000;
}

.ssfcssarea {
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 22.4px;
	line-height: 1.4rem;
	/* 年表 */
	/* ========================================================
	 330_都道府県のスポーツライフ・データ
	======================================================== */
	/* 北海道・東北地方 */
	/* 関東地方 */
	/* 中部地方 */
	/* 近畿地方 */
	/* 中国地方 */
	/* 四国地方 */
	/* 九州・沖縄地方 */
	/*　スポーツライフデータ　　2カードカラム
	---------------------------------------------------------------------------*/
}
.ssfcssarea p a {
	color: #2790B7;
}
.ssfcssarea p a:hover {
	border-bottom: 1px solid #2790B7;
}
.ssfcssarea ul.historyNenpyoList {
	margin: 10px 0 15px;
	padding: 0;
	float: right;
}
.ssfcssarea ul.historyNenpyoList .sp * {
	margin: 5px 0 10px;
	float: none;
}
.ssfcssarea ul.historyNenpyoList:before,
.ssfcssarea ul.historyNenpyoList:after {
	content: "";
	display: table;
}
.ssfcssarea ul.historyNenpyoList:after {
	clear: both;
}
.ssfcssarea ul.historyNenpyoList li {
	margin: 0 20px;
	padding: 0;
	list-style: none;
	float: left;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 17.99px;
	line-height: 1.124375rem;
}
.sp .ssfcssarea ul.historyNenpyoList li {
	margin: 0 20px 0 0;
	font-size: 12px;
	font-size: 0.75rem;
	line-height: 15.9996px;
	line-height: 0.999975rem;
}
.ssfcssarea ul.historyNenpyoList li:before {
	display: block;
	content: "";
	margin-right: 5px;
	width: 40px;
	height: 18px;
	background: #000;
	border-radius: 5px;
	float: left;
}
.sp .ssfcssarea ul.historyNenpyoList li:before {
	height: 16px;
}
.ssfcssarea ul.historyNenpyoList li.ryakureki:before {
	background: #DC000C;
}
.ssfcssarea ul.historyNenpyoList li.sesou:before {
	background: #707F89;
}
.ssfcssarea table.historyNenpyoTable {
	margin: 0 0 15px;
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	padding: 0;
	clear: both;
}
.ssfcssarea table.historyNenpyoTable th, .ssfcssarea table.historyNenpyoTable main .contents .format > table td, main .contents .format > table .ssfcssarea table.historyNenpyoTable td {
	padding: 18px 10px;
	width: 80px;
	text-align: center;
	vertical-align: top;
	background: #F0F3F5;
	border-top: 1px dotted #ccc;
	font-size: 16px;
	font-size: 1rem;
	line-height: 19.2px;
	line-height: 1.2rem;
	color: #373A3C;
}
.sp .ssfcssarea table.historyNenpyoTable th, .sp .ssfcssarea table.historyNenpyoTable main .contents .format > table td, main .contents .format > table .sp .ssfcssarea table.historyNenpyoTable td {
	padding: 12px 5px;
	width: 50px;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 16.8px;
	line-height: 1.05rem;
}
.ssfcssarea table.historyNenpyoTable th span, .ssfcssarea table.historyNenpyoTable main .contents .format > table td span, main .contents .format > table .ssfcssarea table.historyNenpyoTable td span {
	font-size: 11px;
	font-size: 0.6875rem;
	line-height: 13.2px;
	line-height: 0.825rem;
}
.ssfcssarea table.historyNenpyoTable td {
	padding: 15px 20px;
	text-align: left;
	vertical-align: top;
	border-top: 1px dotted #ccc;
	font-size: 14px;
	font-size: 0.875rem;
	line-height: 22.4px;
	line-height: 1.4rem;
}
.sp .ssfcssarea table.historyNenpyoTable td {
	padding: 10px 5px 10px 12px;
}
.ssfcssarea ul.ryakurekiList {
	margin: 0 0 15px;
	padding: 0;
}
.ssfcssarea ul.ryakurekiList li {
	margin: 0 0 5px;
	padding: 0 0 0 calc(2.5em + 15px);
	text-indent: calc(-2.5em - 16px);
	list-style: none;
	color: #DC000C;
}
.ssfcssarea ul.ryakurekiList li span {
	margin-right: 10px;
	padding: 1px 5px;
	width: 40px;
	background: #DC000C;
	color: #fff;
	border-radius: 5px;
}
.ssfcssarea ul.sesouList {
	margin: 0 0 15px;
	padding: 0;
}
.sp .ssfcssarea ul.sesouList {
	margin-left: 0;
}
.ssfcssarea ul.sesouList li {
	margin: 0 0 5px;
	padding: 0 0 0 calc(2.5em + 15px);
	text-indent: calc(-2.5em - 16px);
	list-style: none;
}
.ssfcssarea ul.sesouList li span {
	margin-right: 10px;
	padding: 1px 5px;
	width: 40px;
	background: #707F89;
	color: #fff;
	border-radius: 5px;
}
.ssfcssarea .sldataPrefMap {
	margin: auto;
	padding: 0;
	width: 770px;
	height: 600px;
	background: url(/Portals/0/resources/research/sldata/images/map_prefecture.gif) left center no-repeat #f1f1f1;
	position: relative;
}
.sp .ssfcssarea .sldataPrefMap {
	padding: 20px 10px;
	width: auto;
	height: auto;
	background-image: none;
	position: relative;
}
.ssfcssarea .sldataPrefMap p {
	position: absolute;
	top: 20px;
	left: 20px;
	font-weight: bold;
	font-size: 16px;
	font-size: 1rem;
	line-height: 20.8px;
	line-height: 1.3rem;
}
.ssfcssarea .sldataPrefMap p .alert {
	color: #E93C36;
}
.sp .ssfcssarea .sldataPrefMap p {
	position: static;
	padding: 0 0 10px;
}
.ssfcssarea .sldataPosition01 {
	top: 150px;
	left: 590px;
}
.ssfcssarea .sldataPosition02 {
	top: 320px;
	left: 560px;
}
.ssfcssarea .sldataPosition03 {
	top: 50px;
	left: 330px;
}
.ssfcssarea .sldataPosition04 {
	top: 380px;
	left: 390px;
}
.ssfcssarea .sldataPosition05 {
	top: 170px;
	left: 160px;
}
.ssfcssarea .sldataPosition06 {
	top: 410px;
	left: 220px;
}
.ssfcssarea .sldataPosition07 {
	bottom: 40px;
	left: 50px;
}
.ssfcssarea .sldataPrefMap dl {
	position: absolute;
}
.sp .ssfcssarea .sldataPrefMap dl {
	margin: 0 0 15px;
	position: static;
}
.ssfcssarea .sldataPrefMap dt {
	font-weight: bold;
}
.ssfcssarea .sldataPrefMap dd {
	width: 150px;
	margin: 0;
	padding: 0;
}
.sp .ssfcssarea .sldataPrefMap dd {
	width: auto;
}
.sp .ssfcssarea .sldataPrefMap ul:after {
	content: "";
	display: block;
	clear: both;
}
.ssfcssarea .sldataPrefMap li {
	float: left;
	width: 70px;
	margin-right: 5px;
}
.ssfcssarea .sldataPrefMap li a {
	width: 70px;
	background: #1b1208;
	color: #ffffff;
	display: block;
	text-align: center;
	margin-top: 5px;
	text-decoration: none;
	padding-bottom: 1px;
}
.ssfcssarea .sldataPrefMap li a:hover {
	background: #9d8463;
}
.ssfcssarea .scrollbox {
	overflow-x: auto;
}
.ssfcssarea.mediaTab {
	width: 100%;
	background-color: #ffffff;
	padding: 0px 30px;
}
.sp .ssfcssarea.mediaTab {
	padding: 0px;
}
.ssfcssarea.mediaTab > dl {
	overflow: hidden;
	border-bottom: solid 1px #e1e1e1;
	padding: 20px 0;
}
.ssfcssarea.mediaTab > dl:last-child {
	border-bottom: none;
}
.ssfcssarea.mediaTab > dl > dt {
	float: left;
	width: 79px;
	font-size: 129%;
	line-height: 1em;
	color: #777777;
	font-weight: bold;
	padding-top: 8px;
}
.sp .ssfcssarea.mediaTab > dl > dt {
	float: none;
	margin-bottom: 5px;
}
.ssfcssarea.mediaTab > dl > dd {
	float: left;
	width: calc(100% - 85px);
	border-left: solid 1px #e1e1e1;
	padding: 8px 0 0 30px;
	margin: 0px;
}
.sp .ssfcssarea.mediaTab > dl > dd {
	float: none;
	width: 100%;
	margin-left: 12px;
	padding-left: 15px;
}
.ssfcssarea.mediaTab > dl > dd h2 {
	font-size: 129%;
	line-height: 1em;
	font-weight: bold;
	margin: 25px 0 15px;
	text-align: left;
}
.ssfcssarea.mediaTab > dl > dd h2:first-child {
	margin-top: 0;
}
.ssfcssarea.mediaTab > dl > dd > dl {
	overflow: hidden;
	padding-bottom: 15px;
}
.ssfcssarea.mediaTab > dl > dd > dl:last-child {
	padding-bottom: 0;
}
.ssfcssarea.mediaTab > dl > dd > dl > dt {
	float: left;
	width: 120px;
}
.sp .ssfcssarea.mediaTab > dl > dd > dl > dt {
	float: none;
	margin-bottom: 2px;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd {
	float: left;
	width: calc(100% - 125px);
	margin: 0px;
}
.sp .ssfcssarea.mediaTab > dl > dd > dl > dd {
	float: none;
	width: 100%;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl {
	overflow: hidden;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt {
	float: left;
	width: 8em;
	font-size: 86%;
	line-height: 1em;
	color: #ffffff;
	text-align: center;
	padding: 2px 0 4px;
	margin-top: 3px;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate1 {
	background-color: #f97713;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate2 {
	background-color: #3a9c1c;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate3 {
	background-color: #af0718;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate4 {
	background-color: #e4638d;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate5 {
	background-color: #a327a2;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate6 {
	background-color: #2727a3;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate7 {
	background-color: #0079e9;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate8 {
	background-color: #444444;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dt.mediaCate9 {
	background-color: #adabab;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dd {
	float: left;
	width: calc(100% - 7em - 5px);
	margin: 0px;
	padding-left: 10px;
}
.ssfcssarea.mediaTab > dl > dd > dl > dd > dl > dd p {
	font-weight: bold;
}
.ssfcssarea .grantFlowTbl {
	margin: auto;
}
.ssfcssarea .grantFlowTbl img {
	display: block;
}
.sp .ssfcssarea .grantFlowTbl img {
	width: 100%;
	max-width: 520px;
	height: auto;
}
.ssfcssarea .grantFlowTbl th, .ssfcssarea .grantFlowTbl main .contents .format > table td, main .contents .format > table .ssfcssarea .grantFlowTbl td {
	clear: both;
	width: 200px;
	text-align: center;
	padding: 15px 10px;
}
.sp .ssfcssarea .grantFlowTbl th, .sp .ssfcssarea .grantFlowTbl main .contents .format > table td, main .contents .format > table .sp .ssfcssarea .grantFlowTbl td {
	width: 25%;
	font-size: 12px;
	line-height: 1.3;
}
.ssfcssarea .grantFlowTbl td {
	width: 520px;
	padding: 0;
}
.sp .ssfcssarea .grantFlowTbl td {
	width: 75%;
}
.ssfcssarea .grantFlowTbl ul li {
	width: 50%;
	text-align: center;
	font-weight: bold;
	padding: 15px 10px;
	float: left;
}
.sp .ssfcssarea .grantFlowTbl ul li {
	font-size: 12px;
	line-height: 1.3;
}
.ssfcssarea .gridcard {
	width: 100%;
	display: flex;
	padding: 10px;
	line-height: 1.6;
	justify-content: space-around;
}
.sp .ssfcssarea .gridcard {
	flex-wrap: wrap;
}
.ssfcssarea .gridcard_02 {
	width: 45%;
	margin: 0px 20px;
}
.ssfcssarea .gridcard_02 > p {
	text-align: center;
}
.sp .ssfcssarea .gridcard_02 {
	width: 80%;
	margin: 0px 10px;
}
.ssfcssarea .card_data {
	font-size: 60px;
	font-weight: bold;
	color: #2E659C;
	text-align: center;
}
.sp .ssfcssarea .card_data {
	font-size: 40px !important;
}
.ssfcssarea .card_data02 {
	font-size: 28px;
	font-weight: bold;
	color: #2E659C;
	text-align: left;
}
.sp .ssfcssarea .card_data02 {
	font-size: 18px;
	text-align: center;
}
.ssfcssarea .gridcard_font {
	font-size: 14px;
	font-weight: bold;
	color: #000000;
	text-align: center;
}
.ssfcssarea .box_BR {
	width: 80%;
	border-radius: 26px;
	-moz-border-radius: 26px;
	-webkit-border-radius: 26px;
	border: 8px solid #1e7db3;
	padding: 20px;
	margin: 10px auto;
}
.sp .ssfcssarea .box_BR {
	width: 100%;
	border-radius: 15px;
	-moz-border-radius: 15px;
	-webkit-border-radius: 15px;
	padding: 10px 15px 15px;
	margin: 15px auto;
}
.ssfcssarea .fontBlueBold {
	font-size: 18px;
	line-height: 1.3em;
	font-weight: bold;
	color: #0070c0;
}
.ssfcssarea .bg_slife01 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_01.png) no-repeat center;
}
.ssfcssarea .bg_slife02 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_02.png) no-repeat center;
}
.ssfcssarea .bg_slife03 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_03.png) no-repeat center;
}
.ssfcssarea .bg_slife04 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_04.png) no-repeat center;
}
.ssfcssarea .bg_slife05 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_05.png) no-repeat center;
}
.ssfcssarea .bg_slife06 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_06.png) no-repeat center;
}
.ssfcssarea .bg_slife07 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_07.png) no-repeat center;
}
.ssfcssarea .bg_slife08 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_08.png) no-repeat center;
}
.ssfcssarea .bg_slife09 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_09.png) no-repeat center;
}
.ssfcssarea .bg_slife10 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_10.png) no-repeat center;
}
.ssfcssarea .bg_slife11 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_11.png) no-repeat center;
}
.ssfcssarea .bg_slife12 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_12.png) no-repeat center;
}
.ssfcssarea .bg_slife13 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_13.png) no-repeat center;
}
.ssfcssarea .bg_slife14 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_14.png) no-repeat center;
}
.ssfcssarea .bg_slife15 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_15.png) no-repeat center;
}
.ssfcssarea .bg_slife16 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_16.png) no-repeat center;
}
.ssfcssarea .bg_slife17 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_17.png) no-repeat center;
}
.ssfcssarea .bg_slife18 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_18.png) no-repeat center;
}
.ssfcssarea .bg_slife19 {
	background: url(/Portals/0/resources/research/sldata/images/sldfM_19.png) no-repeat center;
}
/* SNSシェアボタン 20240307追加 */
.snsbuttons li{
	font-size:13px;
    color: #ffffff;
	display:inline-block;
	text-align:center;
	width:80px;
	margin-right:1%;
	margin-bottom:8px;
	border-radius:3px;
	list-style:none;
}
.snsbuttons svg {
    fill: #fff;
    }
.snsbuttons .ico {
	font-size: 1.3rem;
    }
.snsbuttons li.share-x{
	background:#111319;
}
.snsbuttons li.share-x:hover{
	background:#4a4f61;
}
.snsbuttons li.share-fb{
	background:#3b5998;
}
.snsbuttons li.share-fb:hover{
	background:#4c70ba;
}
.snsbuttons li.share-line{
	background:#5DB40F;
}
.snsbuttons li.share-line:hover{
	background:#6bc71b;
}
.snsbuttons a{
	display:block;
	height:26px;
	padding-top:2px;
    color:#ffffff;
	text-decoration:none;
}
.snsbuttons a:hover{
	text-decoration:none;
	color:#ffffff;
}