@charset "UTF-8";
/*
* main.css
*
*/
/* ------------------------
	reset
------------------------ */
html,
body {
	height: 100%;
}

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

* {
	margin: 0;
	padding: 0;
	font-size: inherit;
	line-height: inherit;
}

pre,
textarea {
	overflow: auto;
}

[hidden],
audio:not([controls]),
template {
	display: none;
}

details,
main,
summary {
	display: block;
}

input[type=number] {
	width: auto;
}

input[type=search] {
	-webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
	-webkit-appearance: none;
}

progress {
	display: inline-block;
}

small {
	font-size: 75%;
}

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

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

textarea {
	resize: vertical;
}

audio,
canvas,
iframe,
img,
svg,
video {
	vertical-align: middle;
}

img {
	border: 0; 
	max-width: 100%;
	height: auto;
}

button,
input,
select,
textarea {
	min-height: 1.5em;
	color: inherit;
	font-family: inherit; 
	font-weight: inherit;
	font-style: inherit;
}

button {
	overflow: visible;
}

button,
select {
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
	cursor: pointer; 

	-webkit-appearance: button;
}

button[disabled],
html input[disabled] {
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
	padding: 0; 
	border: 0;
}

input {
	line-height: normal;
}

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

ol,
ul {
	list-style: none;
}

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

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

fieldset {
	border: 0;
}

/* ------------------------
	Base
------------------------ */
html {
	font-size: 62.5%;
}

body {
	min-width: 320px; 
	background-color: #f0f0e5;
	word-wrap: break-word;
	color: #000;
	font-family: YuGothic, "ヒラギノ角ゴ ProN W3", "Lucida Grande", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 1.4em;
	line-height: 1.8;

	-webkit-font-smoothing: antialiased;
	        font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}
@media print, screen and (min-width: 768px) {
	body {
		font-size: 1.6em;
	}
}

a {
	text-decoration: none; 
	color: #448ae0;
}

a:hover,
a:active {
	text-decoration: underline; 
	color: #448ae0;
}

::-moz-selection {
	background-color: #448ae0;
	color: #fff;
	text-shadow: none;
}

::selection {
	background-color: #448ae0;
	color: #fff;
	text-shadow: none;
}

/* ------------------------
	utilities Classes
------------------------ */
.u-hidden {
	display: none !important;
	visibility: hidden;
}

@media print, screen and (max-width: 599px) {
	.u-hidden-max-xs {
		display: none !important;
		visibility: hidden;
	}
}

@media print, screen and (max-width: 767px) {
	.u-hidden-max-sm {
		display: none !important;
		visibility: hidden;
	}
}

@media print, screen and (max-width: 1031px) {
	.u-hidden-max-md {
		display: none !important;
		visibility: hidden;
	}
}

@media print, screen and (min-width: 600px) {
	.u-hidden-min-sm {
		display: none !important;
		visibility: hidden;
	}
}

@media print, screen and (min-width: 768px) {
	.u-hidden-min-md {
		display: none !important;
		visibility: hidden;
	}
}

@media print, screen and (min-width: 1032px) {
	.u-hidden-min-lg {
		display: none !important;
		visibility: hidden;
	}
}

.u-visuallyhidden {
	overflow: hidden;
	clip: rect(0 0 0 0); 
	position: absolute;
	margin: -1px;
	padding: 0;
	border: 0;
	width: 1px;
	height: 1px;
}

.u-visuallyhidden.focusable:active,
.u-visuallyhidden.focusable:focus {
	overflow: visible;
	clip: auto; 
	position: static;
	margin: 0;
	width: auto;
	height: auto;
}

.u-invisible {
	visibility: hidden;
}

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

/* ------------------------
	display 調整用class
------------------------ */
.u-d-inline {
	display: inline !important;
}

.u-d-block {
	display: block !important;
}

.u-d-inline-block {
	display: inline-block !important;
}

.u-d-flex {
	display: -webkit-box !important;
	display: -webkit-flex !important;
	display: -ms-flexbox !important;
	display: flex !important;
}

/* ------------------------
	余白 調整用class
------------------------ */
.u-my-0 {
	margin-top: 0 !important;
	margin-bottom: 0 !important;
}

.u-my-1em {
	margin-top: 1em !important;
	margin-bottom: 1em !important;
}
.u-my-1em:first-child {
	margin-top: 0 !important;
}
.u-my-1em:last-child {
	margin-bottom: 0 !important;
}

.u-my-2em {
	margin-top: 2em !important;
	margin-bottom: 2em !important;
}
.u-my-2em:first-child {
	margin-top: 0 !important;
}
.u-my-2em:last-child {
	margin-bottom: 0 !important;
}

.u-my-3em {
	margin-top: 3em !important;
	margin-bottom: 3em !important;
}
.u-my-3em:first-child {
	margin-top: 0 !important;
}
.u-my-3em:last-child {
	margin-bottom: 0 !important;
}

.u-my-4em {
	margin-top: 4em !important;
	margin-bottom: 4em !important;
}
.u-my-4em:first-child {
	margin-top: 0 !important;
}
.u-my-4em:last-child {
	margin-bottom: 0 !important;
}

.u-mt-0 {
	margin-top: 0 !important;
}

.u-mt-05em {
	margin-top: 0.5em !important;
}

.u-mt-1em {
	margin-top: 1em !important;
}

.u-mt-2em {
	margin-top: 2em !important;
}

.u-mt-3em {
	margin-top: 3em !important;
}

.u-mt-4em {
	margin-top: 4em !important;
}

.u-mr-0 {
	margin-right: 0 !important;
}

.u-mr-05em {
	margin-right: 0.5em !important;
}

.u-mr-1em {
	margin-right: 1em !important;
}

.u-mr-2em {
	margin-right: 2em !important;
}

.u-mr-3em {
	margin-right: 3em !important;
}

.u-mr-4em {
	margin-right: 4em !important;
}

.u-mb-0 {
	margin-bottom: 0 !important;
}

.u-mb-05em {
	margin-bottom: 0.5em !important;
}

.u-mb-1em {
	margin-bottom: 1em !important;
}

.u-mb-2em {
	margin-bottom: 2em !important;
}

.u-mb-3em {
	margin-bottom: 3em !important;
}

.u-mb-4em {
	margin-bottom: 4em !important;
}

.u-ml-0 {
	margin-left: 0 !important;
}

.u-ml-05em {
	margin-left: 0.5em !important;
}

.u-ml-1em {
	margin-left: 1em !important;
}

.u-ml-2em {
	margin-left: 2em !important;
}

.u-ml-3em {
	margin-left: 3em !important;
}

.u-ml-4em {
	margin-left: 4em !important;
}

.u-pt-0 {
	padding-top: 0 !important;
}

.u-pt-05em {
	padding-top: 0.5em !important;
}

.u-pt-1em {
	padding-top: 1em !important;
}

.u-pt-2em {
	padding-top: 2em !important;
}

.u-pt-3em {
	padding-top: 3em !important;
}

.u-pt-4em {
	padding-top: 4em !important;
}

.u-pr-0 {
	padding-right: 0 !important;
}

.u-pr-05em {
	padding-right: 0.5em !important;
}

.u-pr-1em {
	padding-right: 1em !important;
}

.u-pr-2em {
	padding-right: 2em !important;
}

.u-pr-3em {
	padding-right: 3em !important;
}

.u-pr-4em {
	padding-right: 4em !important;
}

.u-pb-0 {
	padding-bottom: 0 !important;
}

.u-pb-05em {
	padding-bottom: 0.5em !important;
}

.u-pb-1em {
	padding-bottom: 1em !important;
}

.u-pb-2em {
	padding-bottom: 2em !important;
}

.u-pb-3em {
	padding-bottom: 3em !important;
}

.u-pb-4em {
	padding-bottom: 4em !important;
}

.u-pl-0 {
	padding-left: 0 !important;
}

.u-pl-05em {
	padding-left: 0.5em !important;
}

.u-pl-1em {
	padding-left: 1em !important;
}

.u-pl-2em {
	padding-left: 2em !important;
}

.u-pl-3em {
	padding-left: 3em !important;
}

.u-pl-4em {
	padding-left: 4em !important;
}

/* ------------------------
	text-align 調整用class
------------------------ */
.u-align-center {
	text-align: center !important;
}

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

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

/* ------------------------
	font-size 調整用class
------------------------ */
.u-font-xsmall {
	font-size: 12px !important;
	font-size: 1.2rem !important;
}

.u-font-small {
	font-size: 13px !important;
	font-size: 1.3rem !important;
}

.u-font-medium {
	font-size: 14px !important;
	font-size: 1.4rem !important;
}

.u-font-large {
	font-size: 15px !important;
	font-size: 1.5rem !important;
}

.u-font-xlarge {
	font-size: 16px !important;
	font-size: 1.6rem !important;
}

.u-font-xxlarge {
	font-size: 18px !important;
	font-size: 1.8rem !important;
}

.u-font-xxxlarge {
	font-size: 20px !important;
	font-size: 2rem !important;
}

@media print, screen and (min-width: 768px) {
	.u-font-small {
		font-size: 1.4rem !important;
	}
	.u-font-medium {
		font-size: 1.6rem !important;
	}
	.u-font-large {
		font-size: 1.8rem !important;
	}
	.u-font-xlarge {
		font-size: 2.2rem !important;
	}
	.u-font-xxlarge {
		font-size: 2.8rem !important;
	}
	.u-font-xxxlarge {
		font-size: 3.4rem !important;
	}
}

/* ------------------------
	テキストスタイル調整用class
------------------------ */
.u-text-notice {
	color: #fe0000 !important;
}

/* ------------------------
	背景色調整用class
------------------------ */
.u-bg-white {
	background-color: #fff !important;
}

/* ------------------------
	common style
------------------------ */
.font-ca {
	font-family: "CA Sans", YuGothic, "ヒラギノ角ゴ ProN W3", "Lucida Grande", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
	font-weight: normal;
}

a {
	-webkit-transition: color 0.25s cubic-bezier(0.23, 1, 0.58, 1);
	transition: color 0.25s cubic-bezier(0.23, 1, 0.58, 1);
}

/* ------------------------
	module
------------------------ */
/* icon ---------- */
.m-icon {
	position: relative;
	width: 1em;
	height: 1em;
	letter-spacing: -1em;
	line-height: 0;
}
.m-icon:before,
.m-icon:after {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	vertical-align: text-top;
	letter-spacing: normal;
}
.m-icon:after {
	opacity: 0; 
	position: absolute;
	top: 0;
	left: 0;
}

.m-icon-access:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_access.svg);
}

.m-icon-access:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_access_white.svg);
}

.m-icon-arrow_left:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left.svg);
}

.m-icon-arrow_left:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left_white.svg);
}

.is-disabled .m-icon-arrow_left:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left_gray.svg);
}

.m-icon-arrow_down:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_down.svg);
}

.m-icon-arrow_down:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_down_white.svg);
}

.m-icon-arrow_right:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right.svg);
}

.m-icon-arrow_right:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_white.svg);
}

.is-disabled .m-icon-arrow_right:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_gray.svg);
}

/**********************************
　　　　　　ARROW SET
**********************************/
.m-icon-arrow_up:before {
	content: url(https://www.proseek.co.jp/contents/special/s_webengineer/img/arrow_up.svg);
}

.m-icon-arrow_up:after {
	content: url(https://www.proseek.co.jp/contents/special/s_webengineer/img/arrow_up_white.svg);
}
/**********************************
　　　　　　ARROW END
**********************************/


.m-icon-back:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_back.svg);
}

.m-icon-back:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_back_white.svg);
}

.m-icon-download:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_download.svg);
}

.m-icon-download:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_download_white.svg);
}

.m-icon-ebook:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_ebook.svg);
}

.m-icon-ebook:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_ebook_white.svg);
}

.m-icon-external:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_external.svg);
}

.m-icon-external:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_external_white.svg);
}

.m-icon-feed:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_feed.svg);
}

.m-icon-feed:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_feed_white.svg);
}

.m-icon-home:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_home.svg);
}

.m-icon-home:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_home_white.svg);
}

.m-icon-html:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_html.svg);
}

.m-icon-html:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_html_white.svg);
}

.m-icon-link:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_link.svg);
}

.m-icon-link:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_link_white.svg);
}

.m-icon-mail:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_mail.svg);
}

.m-icon-mail:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_mail_white.svg);
}

.m-icon-pdf:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_pdf.svg);
}

.m-icon-pdf:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_pdf_white.svg);
}

.m-icon-play:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_play.svg);
}

.m-icon-play:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_play_white.svg);
}

.m-icon-print:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_print.svg);
}

.m-icon-print:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_print_white.svg);
}

.m-icon-search:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_search.svg);
}

.m-icon-search:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_search_white.svg);
}

.m-icon-video:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_video.svg);
}

.m-icon-video:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_video_white.svg);
}

.m-icon-twitter:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_twitter.svg);
}

.m-icon-twitter:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_twitter_white.svg);
}

.m-icon-facebook:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_facebook.svg);
}

.m-icon-facebook:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_facebook_white.svg);
}

.m-icon-youtube:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_youtube.svg);
}

.m-icon-youtube:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_youtube_white.svg);
}

.m-icon-fresh:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_fresh.svg);
}

.m-icon-fresh:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_fresh_white.svg);
}

.m-icon-wantedly:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_wantedly.svg);
}

.m-icon-wantedly:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_wantedly_white.svg);
}

.m-icon-textstart {
	margin-right: 10px;
}

/* iconBadge ---------- */
.m-iconBadge {
	display: inline-block;
	position: relative;
	border: 0; 
	border-radius: 50%;
	width: 38px;
	height: 38px;
	background: #f0f0ee;
	vertical-align: middle;
	font-size: 20px;
	font-size: 2rem;

	-webkit-appearance: none;
}
@media print, screen and (min-width: 768px) {
	.m-iconBadge {
		width: 42px;
		height: 42px;
		font-size: 2.4rem;
	}
}
.m-iconBadge:before {
	content: "";
	display: block;
	opacity: 1;
	position: absolute;
	top: 3px;
	right: 3px;
	bottom: 3px;
	left: 3px;
	margin: auto;
	border-radius: 50%;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
	background: #fff;

	will-change: transform;
}
.m-iconBadge .m-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}
.m-iconBadge .m-icon-fresh {
	width: 1.18em;
	height: 1.18em;
}
.m-iconBadge .m-icon-fresh:before,
.m-iconBadge .m-icon-fresh:after {
	width: 1.18em;
	height: 1.18em;
}
.no-touchevents .m-iconBadge:hover,
.no-touchevents a:hover .m-iconBadge,
.no-touchevents button:hover .m-iconBadge,
.touchevents .m-iconBadge.is-touched,
.touchevents a.is-touched .m-iconBadge,
.touchevents button.is-touched .m-iconBadge {
	background: #82be28;
}
.no-touchevents .m-iconBadge:hover.m-iconBadge-twitter,
.no-touchevents a:hover .m-iconBadge.m-iconBadge-twitter,
.no-touchevents button:hover .m-iconBadge.m-iconBadge-twitter,
.touchevents .m-iconBadge.is-touched.m-iconBadge-twitter,
.touchevents a.is-touched .m-iconBadge.m-iconBadge-twitter,
.touchevents button.is-touched .m-iconBadge.m-iconBadge-twitter {
	background-color: #55acee;
}
.no-touchevents .m-iconBadge:hover.m-iconBadge-facebook,
.no-touchevents a:hover .m-iconBadge.m-iconBadge-facebook,
.no-touchevents button:hover .m-iconBadge.m-iconBadge-facebook,
.touchevents .m-iconBadge.is-touched.m-iconBadge-facebook,
.touchevents a.is-touched .m-iconBadge.m-iconBadge-facebook,
.touchevents button.is-touched .m-iconBadge.m-iconBadge-facebook {
	background-color: #3b5998;
}
.no-touchevents .m-iconBadge:hover.m-iconBadge-youtube,
.no-touchevents a:hover .m-iconBadge.m-iconBadge-youtube,
.no-touchevents button:hover .m-iconBadge.m-iconBadge-youtube,
.touchevents .m-iconBadge.is-touched.m-iconBadge-youtube,
.touchevents a.is-touched .m-iconBadge.m-iconBadge-youtube,
.touchevents button.is-touched .m-iconBadge.m-iconBadge-youtube {
	background-color: #f00;
}
.no-touchevents .m-iconBadge:hover:before,
.no-touchevents a:hover .m-iconBadge:before,
.no-touchevents button:hover .m-iconBadge:before,
.touchevents .m-iconBadge.is-touched:before,
.touchevents a.is-touched .m-iconBadge:before,
.touchevents button.is-touched .m-iconBadge:before {
	opacity: 0;
	-webkit-transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), transform 0.6s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(0); 
	    -ms-transform: scale(0); 
	        transform: scale(0);
}
.no-touchevents .m-iconBadge:hover .m-icon:before,
.no-touchevents a:hover .m-iconBadge .m-icon:before,
.no-touchevents button:hover .m-iconBadge .m-icon:before,
.touchevents .m-iconBadge.is-touched .m-icon:before,
.touchevents a.is-touched .m-iconBadge .m-icon:before,
.touchevents button.is-touched .m-iconBadge .m-icon:before {
	opacity: 0;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
}
.no-touchevents .m-iconBadge:hover .m-icon:after,
.no-touchevents a:hover .m-iconBadge .m-icon:after,
.no-touchevents button:hover .m-iconBadge .m-icon:after,
.touchevents .m-iconBadge.is-touched .m-icon:after,
.touchevents a.is-touched .m-iconBadge .m-icon:after,
.touchevents button.is-touched .m-iconBadge .m-icon:after {
	opacity: 1;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
}

.m-iconBadge-border {
	background-color: #82be28;
}

.m-iconBadge_lines {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	margin: -2px auto 0;
	width: 14px;
	height: 3px;
	font-size: 0;
}
@media print, screen and (min-width: 768px) {
	.m-iconBadge_lines {
		width: 18px;
		height: 4px;
	}
}
.m-iconBadge_lines:before,
.m-iconBadge_lines:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 3px;
	width: 14px;
	height: 3px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #82be28;
}
@media print, screen and (min-width: 768px) {
	.m-iconBadge_lines:before,
	.m-iconBadge_lines:after {
		width: 18px;
		height: 4px;
	}
}
.no-touchevents a:hover .m-iconBadge_lines:before,
.no-touchevents button:hover .m-iconBadge_lines:before,
.touchevents a.is-touched .m-iconBadge_lines:before,
.touchevents button.is-touched .m-iconBadge_lines:before,
.no-touchevents a:hover .m-iconBadge_lines:after,
.no-touchevents button:hover .m-iconBadge_lines:after,
.touchevents a.is-touched .m-iconBadge_lines:after,
.touchevents button.is-touched .m-iconBadge_lines:after {
	background-color: #fff;
}

.m-iconBadge-close .m-iconBadge_lines:before {
	-webkit-transform: scaleY(1) rotate(-45deg);
	    -ms-transform: scaleY(1) rotate(-45deg);
	        transform: scaleY(1) rotate(-45deg);
}

.m-iconBadge-close .m-iconBadge_lines:after {
	-webkit-transform: scaleY(1) rotate(45deg);
	    -ms-transform: scaleY(1) rotate(45deg);
	        transform: scaleY(1) rotate(45deg);
}

/* iconBadgeText ---------- */
.m-iconBadgeText {
	display: table;
	border: 0;
	background: none; 
	font-weight: bold;
	line-height: 1.6;

	-webkit-appearance: none;
}
.m-iconBadgeText .m-iconBadge {
	margin: 0 12px 0 0;
}
@media print, screen and (min-width: 768px) {
	.m-iconBadgeText .m-iconBadge {
		margin-right: 14px;
	}
}

.m-iconBadgeText-inline .m-iconBadge {
	margin-top: -15px;
	margin-bottom: -15px;
}
@media print, screen and (min-width: 768px) {
	.m-iconBadgeText-inline .m-iconBadge {
		margin-top: -21px;
		margin-bottom: -21px;
	}
}

a.m-iconBadgeText,
button.m-iconBadgeText {
	color: inherit;
}
.no-touchevents a.m-iconBadgeText:hover,
.touchevents a.m-iconBadgeText.is-touched,
.no-touchevents
  button.m-iconBadgeText:hover,
.touchevents
  button.m-iconBadgeText.is-touched {
	text-decoration: none; 
	color: #82be28;
}

.m-iconBadgeText_col {
	display: table-cell;
}

/* iconBadgeTextList ---------- */
.m-iconBadgeTextList_item {
	margin: 6px 0;
}
@media print, screen and (min-width: 768px) {
	.m-iconBadgeTextList_item {
		margin: 16px 0;
	}
}

@media print, screen and (min-width: 768px) {
	.m-iconBadgeTextIndex-2col-md .m-iconBadgeTextList {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		margin-bottom: 16px; 
		width: 100%;

		-webkit-flex-wrap: wrap;

		    -ms-flex-wrap: wrap;

		        flex-wrap: wrap;
	}
	.m-iconBadgeTextIndex-2col-md .m-iconBadgeTextList_item {
		margin-bottom: 0;
		padding-right: 32px; 
		width: 50%;
	}
}

/* iconLink ---------- */
.m-iconLink {
	display: inline-block;
	overflow: hidden;
	padding-left: 1.6em;
	text-align: left;
	vertical-align: top;
	text-indent: -1.6em;
	color: #000;
}
.m-iconLink:hover {
	text-decoration: none;
}
.m-iconLink:before {
	content: "";
	display: inline-block;
	margin: -0.8em 0.3em -0.6em -0.1em;
	width: 1.4em;
	height: 1.4em;
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
	line-height: 0;
}

.m-iconLink-access:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_access.svg);
}

.m-iconLink-access.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_access_gray.svg);
}

.m-iconLink-arrow_left:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left.svg);
}

.m-iconLink-arrow_left.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left_gray.svg);
}

.m-iconLink-arrow_down:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_down.svg);
}

.m-iconLink-arrow_down.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_down_gray.svg);
}

.m-iconLink-arrow_right:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right.svg);
}

.m-iconLink-arrow_right.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_gray.svg);
}

.m-iconLink-arrow_up:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_up.svg);
}

.m-iconLink-arrow_up.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_up_gray.svg);
}

.m-iconLink-back:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_back.svg);
}

.m-iconLink-back.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_back_gray.svg);
}

.m-iconLink-download:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_download.svg);
}

.m-iconLink-download.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_download_gray.svg);
}

.m-iconLink-ebook:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_ebook.svg);
}

.m-iconLink-ebook.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_ebook_gray.svg);
}

.m-iconLink-html:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_html.svg);
}

.m-iconLink-html.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_html_gray.svg);
}

.m-iconLink-link:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_link.svg);
}

.m-iconLink-link.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_link_gray.svg);
}

.m-iconLink-mail:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_mail.svg);
}

.m-iconLink-mail.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_mail_gray.svg);
}

.m-iconLink-pdf:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_pdf.svg);
}

.m-iconLink-pdf.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_pdf_gray.svg);
}

.m-iconLink-print:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_print.svg);
}

.m-iconLink-print.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_print_gray.svg);
}

.m-iconLink-video:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_video.svg);
}

.m-iconLink-video.is-disabled:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_video_gray.svg);
}

/* bg ---------- */
/* .u-bg-white に統合可能 */
.m-bg-white {
	background-color: #fff;
}

/* container ---------- */
.m-container {
	padding: 0 20px;
}
@media print, screen and (min-width: 768px) {
	.m-container {
		padding-right: 30px;
		padding-left: 30px;
	}
}
@media print, screen and (min-width: 1032px) {
	.m-container {
		margin-right: auto;
		margin-left: auto;
		padding-right: 0;
		padding-left: 0; 
		max-width: 992px;
	}
}

/* pageBodyInner ---------- */
.m-pageBodyInner {
	padding-top: 28px;
	padding-bottom: 56px;
}
@media print, screen and (min-width: 768px) {
	.m-pageBodyInner {
		padding-top: 56px;
		padding-bottom: 84px;
	}
}

/* pageBody_headFunction ---------- */
.m-pageBody_headFunction {
	margin: 0 0 28px;
}
@media print, screen and (min-width: 768px) {
	.m-pageBody_headFunction {
		margin-bottom: 42px;
	}
}

/* categorySection ---------- */
.m-pageBodyInner > .m-categorySection:last-child {
	margin-bottom: -56px;
}
@media print, screen and (min-width: 768px) {
	.m-pageBodyInner > .m-categorySection:last-child {
		margin-bottom: -84px;
	}
}

.m-categorySectionInner {
	padding-top: 36px;
	padding-bottom: 78px;
}
@media print, screen and (min-width: 768px) {
	.m-categorySectionInner {
		padding-top: 78px;
		padding-bottom: 126px;
	}
}

.m-categorySection_heading {
	margin: 0 0 24px;
	text-align: center;
	line-height: 1.2;
}
@media print, screen and (min-width: 768px) {
	.m-categorySection_heading {
		margin-bottom: 50px;
	}
}

.m-categorySection_heading_en {
	font-size: 32px;
	font-size: 3.2rem;
}
.m-categorySection_heading_en.font-ca {
	font-weight: normal;
}
@media print, screen and (min-width: 768px) {
	.m-categorySection_heading_en {
		font-size: 5.2rem;
	}
}

.m-categorySection_heading_ja {
	margin: 6px 0 0;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	.m-categorySection_heading_ja {
		font-size: 1.8rem;
	}
}

.m-categorySection_figure {
	margin: 0 auto; 
	max-width: 900px;
}
.m-categorySection_figure img {
	width: 100%;
}

.m-categorySection_footBtn {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	margin: 35px 0 0; 

	-webkit-box-align: center; 

	-webkit-align-items: center; 

	    -ms-flex-align: center; 

	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
@media print, screen and (min-width: 768px) {
	.m-categorySection_footBtn {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		    -ms-flex-direction: row;
		        flex-direction: row;
		margin-top: 70px;
	}
}

.m-categorySection_footBtn_item:nth-child(n+2) {
	margin: 21px 0 0;
}
@media print, screen and (min-width: 768px) {
	.m-categorySection_footBtn_item:nth-child(n+2) {
		margin: 0 0 0 24px;
	}
}

/* section ---------- */
.m-section {
	position: relative;
	margin: 56px 0;
}
.m-section:first-child {
	margin-top: 0;
}
.m-section:last-child {
	margin-bottom: 0;
}
@media print, screen and (min-width: 768px) {
	.m-section {
		margin-top: 84px;
		margin-bottom: 84px;
	}
}
.m-roundBox_headFunction + .m-section {
	margin-top: 40px;
}
@media print, screen and (min-width: 768px) {
	.m-roundBox_headFunction + .m-section {
		margin-top: 10px;
	}
}

.m-section_heading {
	font-weight: bold;
	line-height: 1.6;
}

.m-section_heading-h2 {
	position: relative;
	margin: 0 0 24px;
	padding: 0 0 13px;
	font-size: 18px;
	font-size: 1.8rem;
}
.m-section_heading-h2:after {
	content: "";
	display: block;
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 4px; 
	width: 40px;
	height: 4px;
	background: #000;
}
@media print, screen and (min-width: 768px) {
	.m-section_heading-h2 {
		margin-bottom: 28px;
		padding-bottom: 18px;
		font-size: 2.8rem;
	}
	.m-section_heading-h2:after {
		width: 50px;
	}
}

.m-section_heading-h3 {
	margin: 42px 0 16px;
	padding: 0 0 8px;
	border-bottom: 2px solid #000;
	font-size: 17px;
	font-size: 1.7rem;
}
.m-section_heading-h3:first-child,
.m-section_heading-h2 + .m-section_heading-h3 {
	margin-top: 0;
}
.m-section_headFunction + .m-section_heading-h3 {
	margin-top: 28px;
}
@media print, screen and (min-width: 768px) {
	.m-section_heading-h3 {
		margin: 64px 0 21px;
		padding-bottom: 12px;
		font-size: 2.2rem;
	}
	.m-section_heading-h2 + .m-section_heading-h3,
	.m-section_headFunction + .m-section_heading-h3 {
		margin-top: 36px;
	}
}

.m-section_heading-mb0 {
	margin-bottom: 0;
}

.m-section_headFunction {
	margin: 0 0 20px;
}
@media print, screen and (min-width: 768px) {
	.m-section_headFunction.is-absolute {
		position: absolute;
		top: 10px;
		right: 0;
		margin: 0;
	}
}

.m-section_body p {
	margin: 1.2em 0;
}
.m-section_body p:first-child {
	margin-top: 0;
}
.m-section_body p:last-child {
	margin-bottom: 0;
}

.m-section_figure {
	margin: 2em auto; 
	max-width: 824px;
}
.m-section_figure:first-child {
	margin-top: 0;
}
.m-section_figure:last-child {
	margin-bottom: 0;
}
.m-section_figure img {
	width: 100%;
}

.m-section_figcaption {
	padding: 8px 0 0;
	font-size: 12px;
	font-size: 1.2rem;
}
@media print, screen and (min-width: 768px) {
	.m-section_figcaption {
		padding-top: 14px;
	}
}

.m-section_figure-2col .m-section_figure_item:nth-child(2) {
	margin: 1.2em 0 0;
}

@media print, screen and (min-width: 768px) {
	.m-section_figure-2col .m-section_figure_item:first-child {
		float: left;
		padding-right: 14px; 
		width: 50%;
	}
	.m-section_figure-2col .m-section_figure_item:nth-child(2) {
		float: right;
		margin: 0;
		padding-left: 14px; 
		width: 50%;
	}
	.m-section_figure-2col .m-section_figcaption {
		clear: both;
	}
}

/* bulletList ---------- */
.m-bulletList li {
	position: relative;
	padding-left: 1em;
	text-indent: -1em;
}
.m-bulletList li:before {
	content: "・";
}

/* noteList ---------- */
.m-noteList {
	margin: 1.2em 0;
	font-size: 12px;
	font-size: 1.2rem;
}
.m-noteList:first-child {
	margin-top: 0;
}
.m-noteList:last-child {
	margin-bottom: 0;
}
.m-noteList li {
	margin: 0.25em 0;
}
.m-noteList li:first-child {
	margin-top: 0;
}
.m-noteList li:last-child {
	margin-bottom: 0;
}

/* roundBorder ---------- */
.m-roundBorder {
	margin: 2em 0;
	padding: 1.4em 1.6em;
	border: 2px solid #f0f0ee;
	border-radius: 20px;
}
.m-roundBorder:first-child {
	margin-top: 0;
}
.m-roundBorder:last-child {
	margin-bottom: 0;
}

.m-roundBorder-wide {
	padding: 14px;
	border: 0;
	background: #f0f0ee;
}
.m-roundBorder-wide .m-roundBorderInner {
	padding: 16px 20px;
	border-radius: 10px;
	background: #fff;
}

.m-roundBorder_figure {
	overflow: hidden;
	border-radius: 10px;
}
.m-roundBorder_figure img {
	width: 100%;
}

/* newsList ---------- */
.m-newsList_item {
	border-bottom: 2px solid #f0f0ee;
}
.m-newsList_item a {
	display: block;
	position: relative;
	z-index: 1;
	padding: 16px 10px;
	text-decoration: none; 
	color: inherit;
}
.m-newsList_item a:before {
	content: "";
	display: block;
	opacity: 0;
	position: absolute;
	z-index: -1;
	top: 0;
	right: auto;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 0%;
	-webkit-transition: opacity 0.55s cubic-bezier(0.23, 1, 0.58, 1), width 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.55s cubic-bezier(0.23, 1, 0.58, 1), width 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #f7f7f6;
}
.no-touchevents .m-newsList_item a:hover:before,
.touchevents .m-newsList_item a.is-touched:before {
	opacity: 1;
	width: 100%;
}

.m-newsList_meta {
	margin: 0 0 8px;
	letter-spacing: -1em; 
	font-weight: bold;
}

.m-newsList_date {
	display: inline-block;
	letter-spacing: normal;
}

.m-newsList_badge {
	display: inline-block;
	margin: 0 0 0 1em;
	padding: 2px 0.6em;
	border-radius: 30px;
	background: #2d8c3c;
	text-align: center;
	letter-spacing: normal; 
	color: #fff;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.6;
}

a[href*=".pdf"] .m-newsList_text {
	position: relative;
	padding-right: 36px;
}
a[href*=".pdf"] .m-newsList_text:after {
	content: "";
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_pdf.svg); 
	display: block;
	position: absolute;
	top: 0;
	right: -4px;
	bottom: 0;
	margin: auto;
	width: 32px;
	height: 32px;
}

.no-touchevents a:hover .m-newsList_text,
.touchevents a.is-touched .m-newsList_text {
	text-decoration: none; 
	color: #82be28;
}

@media print, screen and (min-width: 768px) {
	.m-newsList_item {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;

		-webkit-box-align: center;

		-webkit-align-items: center;

		    -ms-flex-align: center;

		        align-items: center;
	}
	.m-newsList_item a {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		padding-top: 24px;
		padding-bottom: 24px; 

		-webkit-box-flex: 1; 

		-webkit-flex: 1; 

		    -ms-flex: 1; 

		        flex: 1;
		-webkit-box-align: center;
		-webkit-align-items: center;
		    -ms-flex-align: center;
		        align-items: center;
	}
	.m-newsList_meta {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		margin: 0; 

		-webkit-box-align: center; 

		-webkit-align-items: center; 

		    -ms-flex-align: center; 

		        align-items: center;
	}
	.m-newsList_date {
		width: 160px;
	}
	.m-newsList_badge {
		margin: 0;
		min-width: 8.2em;
		white-space: nowrap;
	}
	[lang="en"] .m-newsList_badge {
		min-width: 10.2em;
	}
	.m-newsList_text {
		padding-left: 20px; 

		-webkit-box-flex: 1; 

		-webkit-flex: 1; 

		    -ms-flex: 1; 

		        flex: 1;
	}
}

/* linkList ---------- */
.m-linkList_item {
	border-bottom: 2px solid #f0f0ee;
	line-height: 1.6;
}
.m-linkList_item a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	z-index: 1;
	padding: 16px 36px 16px 10px;
	height: 100%;
	text-decoration: none; 
	color: inherit;

	-webkit-box-align: center;

	-webkit-align-items: center;

	    -ms-flex-align: center;

	        align-items: center;
}
.m-linkList_item a:before {
	content: "";
	display: block;
	opacity: 0;
	position: absolute;
	z-index: -1;
	top: 0;
	right: auto;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 0%;
	-webkit-transition: opacity 0.55s cubic-bezier(0.23, 1, 0.58, 1), width 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.55s cubic-bezier(0.23, 1, 0.58, 1), width 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #f7f7f6;
}
.no-touchevents .m-linkList_item a:not(.is-current):hover,
.touchevents .m-linkList_item a:not(.is-current).is-touched {
	text-decoration: none; 
	color: #82be28;
}
.no-touchevents .m-linkList_item a:not(.is-current):hover:before,
.touchevents .m-linkList_item a:not(.is-current).is-touched:before {
	opacity: 1;
	width: 100%;
}
.m-linkList_item a .m-icon {
	position: absolute;
	top: 0;
	right: 5px;
	bottom: 0;
	margin: auto;
	font-size: 1.3em;
}
.m-linkList_item a .m-icon-pdf {
	font-size: 2em;
}
.m-linkList_item a.is-current {
	background-color: #82be28;
	text-decoration: none; 
	color: #fff;
}
.m-linkList_item a.is-current .m-icon:after {
	opacity: 1;
}

.m-linkList-em .m-linkList_item {
	font-weight: bold;
}

@media print, screen and (min-width: 768px) {
	.m-linkList_item a {
		padding: 26px 40px 26px 10px;
	}
	.m-linkList-em .m-linkList_item a {
		padding-left: 20px;
	}
	.m-linkList-2col {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;

		-webkit-flex-wrap: wrap;

		    -ms-flex-wrap: wrap;

		        flex-wrap: wrap;
	}
	.m-linkList-2col .m-linkList_item {
		width: calc(50% - 20px);
	}
	.m-linkList-2col .m-linkList_item:nth-child(2n-1) {
		margin-right: 40px;
	}
}

/* dataList ---------- */
.m-dataList_title {
	padding: 16px 20px 0 10px;
	font-weight: bold;
}

.m-dataList_data {
	padding: 0 0 0 20px;
	border-bottom: 2px solid #f0f0ee;
}

.m-dataList_dataInner {
	padding: 0 0 16px;
}

.m-dataList_fileList li:not(:first-child) {
	border-top: 2px solid #f0f0ee;
}

.m-dataList_fileList li .m-iconLink {
	display: block;
	padding: 16px 10px 16px 40px;
	text-indent: -2.4em;
}
.m-dataList_fileList li .m-iconLink:before {
	width: 2.2em;
	height: 2.2em;
}

@media print, screen and (min-width: 768px) {
	.m-section_heading + .m-dataList {
		margin-top: -6px;
	}
	.m-dataList_item {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}
	.m-dataList_title {
		padding-top: 24px;
		padding-bottom: 24px;
		border-bottom: 2px solid #d7d7d5; 
		width: 220px;
	}
	.m-dataList_data {
		padding: 0; 

		-webkit-box-flex: 1; 

		-webkit-flex: 1; 

		    -ms-flex: 1; 

		        flex: 1;
	}
	.m-dataList_dataInner {
		padding: 24px 20px 24px 10px;
	}
	.m-dataList_fileList li .m-iconLink {
		padding-top: 24px;
		padding-bottom: 24px;
		text-indent: -2.3em;
	}
	.m-dataList_fileList li .m-iconLink:before {
		margin-right: 0.4em; 
		width: 2em;
		height: 2em;
	}
}

/* btn ---------- */
.m-btn {
	display: -webkit-inline-box;
	display: -webkit-inline-flex;
	display: -ms-inline-flexbox;
	display: inline-flex;
	overflow: hidden;
	position: relative;
	z-index: 1;
	padding: 0.6em 2.4em;
	border: 3px solid #82be28;
	border-radius: 50px;
	min-width: 206px;
	max-width: 100%;
	height: 100%;
	-webkit-transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #fff;
	vertical-align: middle;
	color: #82be28;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;

	-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;
}
.m-btn:hover {
	text-decoration: none;
}
.m-btn:before {
	content: "";
	display: block;
	opacity: 1;
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
	background: #fff;

	will-change: transform;
}
.m-btn .m-icon {
	position: absolute;
	top: 0;
	right: 0.5em;
	bottom: 0;
	margin: auto;
	width: 1em;
	height: 1em;
	font-size: 20px;
	font-size: 2rem;
}
.no-touchevents .m-btn:not(.is-disabled):hover,
.touchevents .m-btn:not(.is-disabled).is-touched,
.m-btn.is-current {
	-webkit-transition: background-color 0s;
	transition: background-color 0s; 
	background-color: #82be28;
	color: #fff;
}
.no-touchevents .m-btn:not(.is-disabled):hover:before,
.touchevents .m-btn:not(.is-disabled).is-touched:before,
.m-btn.is-current:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(0); 
	    -ms-transform: scale(0); 
	        transform: scale(0);
}
.no-touchevents .m-btn:not(.is-disabled):hover .m-icon:before,
.touchevents .m-btn:not(.is-disabled).is-touched .m-icon:before,
.m-btn.is-current .m-icon:before {
	opacity: 0;
}
.no-touchevents .m-btn:not(.is-disabled):hover .m-icon:after,
.touchevents .m-btn:not(.is-disabled).is-touched .m-icon:after,
.m-btn.is-current .m-icon:after {
	opacity: 1;
}
.no-touchevents .m-btn:not(.is-disabled):hover .m-icon-arrow_right:after,
.touchevents .m-btn:not(.is-disabled).is-touched .m-icon-arrow_right:after,
.m-btn.is-current .m-icon-arrow_right:after {
	-webkit-animation: hover-arrow-in 0.45s forwards cubic-bezier(0.175, 0.885, 0.47, 1.26);
	        animation: hover-arrow-in 0.45s forwards cubic-bezier(0.175, 0.885, 0.47, 1.26);
}
.m-btn.is-disabled {
	border-color: #d7d7d5;
	background-color: #d7d7d5;
	color: #d7d7d5;
}
@media print, screen and (min-width: 768px) {
	.m-btn {
		padding-right: 3em;
		padding-left: 3em;
		min-width: 246px;
		font-size: 1.8rem;
	}
	.m-btn .m-icon {
		right: 0.4em;
		font-size: 2.4rem;
	}
}

.m-btn-rev .m-icon {
	right: auto;
	left: 0.5em;
}

.no-touchevents .m-btn-rev:not(.is-disabled):hover .m-icon-arrow_left:after,
.touchevents .m-btn-rev:not(.is-disabled).is-touched .m-icon-arrow_left:after {
	-webkit-animation: hover-arrow-in-rev 0.45s forwards cubic-bezier(0.175, 0.885, 0.47, 1.26);
	        animation: hover-arrow-in-rev 0.45s forwards cubic-bezier(0.175, 0.885, 0.47, 1.26);
}

.m-btn-inverse {
    border-color: #2d8c3c;
	background-color: #2d8c3c;
	color: #fff;
}
.m-btn-inverse:hover {
	color: #fff;
}
.m-btn-inverse:before {
	background-color: #2d8c3c;
}
.m-btn-inverse .m-icon-arrow_right:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_white.svg);
}
.m-btn-inverse .m-icon-arrow_right:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_dg.svg);
}
.m-btn-inverse .m-icon-arrow_left:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left_white.svg);
}
.m-btn-inverse .m-icon-arrow_left:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left_dg.svg);
}
.no-touchevents .m-btn-inverse:not(.is-disabled):hover,
.touchevents .m-btn-inverse:not(.is-disabled).is-touched,
.m-btn-inverse.is-current {
	-webkit-transition: background-color 0s;
	transition: background-color 0s; 
	background-color: #fff;
	color: #2d8c3c;
}

@-webkit-keyframes hover-arrow-in {
	0%,
	30% {
		opacity: 0;
		-webkit-transform: translateX(-60%);
		        transform: translateX(-60%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

@keyframes hover-arrow-in {
	0%,
	30% {
		opacity: 0;
		-webkit-transform: translateX(-60%);
		        transform: translateX(-60%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

@-webkit-keyframes hover-arrow-in-rev {
	0%,
	30% {
		opacity: 0;
		-webkit-transform: translateX(60%);
		        transform: translateX(60%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

@keyframes hover-arrow-in-rev {
	0%,
	30% {
		opacity: 0;
		-webkit-transform: translateX(60%);
		        transform: translateX(60%);
	}
	100% {
		opacity: 1;
		-webkit-transform: translateX(0);
		        transform: translateX(0);
	}
}

.m-btnGroup {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	margin: 28px 0; 

	-webkit-box-align: center; 

	-webkit-align-items: center; 

	    -ms-flex-align: center; 

	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.m-btnGroup:first-child {
	margin-top: 0;
}
.m-btnGroup:last-child {
	margin-bottom: 0;
}
@media print, screen and (min-width: 768px) {
	.m-btnGroup {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		    -ms-flex-direction: row;
		        flex-direction: row;
		margin-top: 56px;
		margin-bottom: 56px;
	}
}

.m-btnGroup_item:nth-child(n+2) {
	margin: 21px 0 0;
}
@media print, screen and (min-width: 768px) {
	.m-btnGroup_item:nth-child(n+2) {
		margin: 0 0 0 24px;
	}
}

.m-btnList {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: -5px -5px; 

	-webkit-flex-wrap: wrap; 

	    -ms-flex-wrap: wrap; 

	        flex-wrap: wrap;
}
.m-btnList .m-btn {
	padding: 13px 16px;
	width: 100%;
	min-width: 0;
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.6;
}
.m-btnList .m-btn-icon {
	padding-right: 28px;
}
.m-btnList .m-btn-icon .m-icon {
	right: 0.4em;
}

.m-btnList-mono .m-btn {
	border: 0;
	color: #000;
}
.m-btnList-mono .m-btn.is-current {
	color: #fff;
}

.m-btnList_item {
	padding: 5px 5px; 
	width: 50%;
}

@media print, screen and (max-width: 767px) {
	.m-btnList-fluid .m-btnList_item {
		width: 100%;
	}
	.m-btnList-fluid .m-btn-icon {
		padding-left: 28px;
	}
}

@media print, screen and (max-width: 767px) {
	.m-btnList-4col .m-btnList_item {
		width: 25%;
		white-space: nowrap;
	}
	.m-btnList-4col .m-btn:not(.m-btn-icon) {
		padding-right: 6px;
		padding-left: 6px;
	}
}

@media print, screen and (min-width: 768px) {
	.m-btnList .m-btn {
		padding: 8px 22px;
		font-size: 1.4rem;
	}
	.m-btnList .m-btn-icon {
		padding-right: 42px;
	}
	.m-btnList_item {
		margin: 0; 
		width: auto;
	}
}

.m-btnListGroup_item:not(:first-child) {
	margin-top: 16px;
}

@media print, screen and (min-width: 768px) {
	.m-btnListGroup_item {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
	}
	.m-btnListGroup_item:not(:first-child) {
		margin-top: 20px;
	}
	.m-btnListGroup_item dd {
		-webkit-box-flex: 1;
		-webkit-flex: 1;
		    -ms-flex: 1;
		        flex: 1;
	}
}

.m-btnListGroup_title {
	margin: 0 0 6px;
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	.m-btnListGroup_title {
		margin: 5px 10px 0 0;
		white-space: nowrap;
	}
}

/* textBadge ---------- */
.m-textBadge {
	display: inline-block;
	padding: 2px 0.9em;
	border-radius: 30px;
	background: #2d8c3c;
	color: #fff;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 1.6;
}
.m-textBadge.is-disabled {
	background-color: #929292;
}

/* contentsNav ---------- */
.m-contentsNav {
	overflow: hidden; 
	position: relative;
}

.m-contentsNav_list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin-left: -2px; 

	-webkit-flex-wrap: wrap; 

	    -ms-flex-wrap: wrap; 

	        flex-wrap: wrap;
}

.m-contentsNav_item {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 150px;
	line-height: 1;
}
.m-contentsNav_item .m-icon {
	position: absolute;
	top: 0;
	right: 5px;
	bottom: 0;
	margin: auto;
	width: 1em;
	height: 1em;
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.4s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: translateX(0px); 
	    -ms-transform: translateX(0px); 
	        transform: translateX(0px);
	font-size: 18px;
	font-size: 1.8rem;
}
@media print, screen and (max-width: 767px) {
	.m-contentsNav-2col-sm .m-contentsNav_item {
		width: 50%;
	}
}
@media print, screen and (min-width: 768px) {
	.m-contentsNav_item {
		height: 350px;
	}
	.m-contentsNav-2col-md .m-contentsNav_item {
		width: 50%;
	}
	.m-contentsNav-3col-md .m-contentsNav_item {
		width: 33.333%;
	}
	.m-contentsNav-4col-md .m-contentsNav_item {
		width: 25%;
	}
	.m-contentsNav_item.m-contentsNav_item-2col-md {
		width: 50%;
	}
	.m-contentsNav_item .m-icon {
		right: 12px;
		font-size: 2.4rem;
	}
}
@media print, screen and (min-width: 1032px) {
	.m-contentsNav-2col-lg .m-contentsNav_item {
		width: 50%;
	}
	.m-contentsNav-3col-lg .m-contentsNav_item {
		width: 33.333%;
	}
	.m-contentsNav-4col-lg .m-contentsNav_item {
		width: 25%;
	}
}
.no-touchevents .m-contentsNav_item:hover .m-icon,
.touchevents .m-contentsNav_item.is-touched .m-icon {
	-webkit-transform: translateX(-10px);
	    -ms-transform: translateX(-10px);
	        transform: translateX(-10px);
}
@media print, screen and (min-width: 768px) and (max-width: 1031px) {
	.no-touchevents .m-contentsNav_item:hover .m-icon,
	.touchevents .m-contentsNav_item.is-touched .m-icon {
		opacity: 0;
	}
}
@media print, screen and (min-width: 768px) {
	.no-touchevents .m-contentsNav_item:hover .m-icon,
	.touchevents .m-contentsNav_item.is-touched .m-icon {
		-webkit-transform: translateX(-30px);
		    -ms-transform: translateX(-30px);
		        transform: translateX(-30px);
	}
}
.no-touchevents .m-contentsNav_item:hover .m-icon:before,
.touchevents .m-contentsNav_item.is-touched .m-icon:before {
	-webkit-animation: hover-arrow-in 0.45s forwards cubic-bezier(0.175, 0.885, 0.47, 1.26);
	        animation: hover-arrow-in 0.45s forwards cubic-bezier(0.175, 0.885, 0.47, 1.26);
}
.m-contentsNav_item a {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	height: 100%;
	text-decoration: none; 
	color: inherit;

	-webkit-box-align: center;

	-webkit-align-items: center;

	    -ms-flex-align: center;

	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.m-contentsNav_item_bg {
	position: absolute;
	z-index: -2;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}

.m-contentsNav_item_mask {
	content: "";
	display: block;
	opacity: 1;
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-bottom: 2px solid #f0f0ee;
	border-left: 2px solid #f0f0ee;
	border-radius: 0;
	/* for Safari */
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: perspective(0); 
	        transform: perspective(0);
	background: #fff;
}
.no-touchevents .m-contentsNav_item:hover .m-contentsNav_item_mask,
.touchevents .m-contentsNav_item.is-touched .m-contentsNav_item_mask {
	opacity: 0.8; 
	top: 10px;
	right: 10px;
	bottom: 10px;
	left: 10px;
	border-color: rgba(240, 240, 238, 0);
	border-radius: 20px 20px;
}
@media print, screen and (min-width: 768px) {
	.no-touchevents .m-contentsNav_item:hover .m-contentsNav_item_mask,
	.touchevents .m-contentsNav_item.is-touched .m-contentsNav_item_mask {
		opacity: 0.9; 
		top: 30px;
		right: 30px;
		bottom: 30px;
		left: 30px;
	}
}

.m-contentsNav_item_heading {
	padding-right: 30px;
	padding-left: 30px; 
	width: 100%;
}
@media print, screen and (min-width: 1032px) {
	.m-contentsNav_item_heading {
		padding-right: 42px;
		padding-left: 42px;
	}
}

.m-contentsNav_item_heading_en {
	width: 100%;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	text-align: center;
	color: black;
	font-size: 22px;
	font-size: 2.2rem;
}
@media print, screen and (min-width: 768px) {
	.m-contentsNav_item_heading_en {
		font-size: 5rem;
	}
}
.backgroundcliptext .m-contentsNav_item_heading_en {
	background-repeat: no-repeat;
	background-position: 50% 45%;
	background-size: cover;

	-webkit-background-clip: text;
}
.no-touchevents.backgroundcliptext .m-contentsNav_item:hover .m-contentsNav_item_heading_en,
.touchevents.backgroundcliptext .m-contentsNav_item.is-touched .m-contentsNav_item_heading_en {
	color: rgba(0, 0, 0, 0.4);
}

.m-contentsNav_item_heading_ja {
	margin: 8px 0 0;
	width: 100%;
	-webkit-transition: color 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: color 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	text-align: center;
	color: black;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	.m-contentsNav_item_heading_ja {
		margin-top: 5px;
		font-size: 1.8rem;
	}
}
.backgroundcliptext .m-contentsNav_item_heading_ja {
	background-repeat: no-repeat;
	background-position: 50% 55%;
	background-size: cover;

	-webkit-background-clip: text;
}
.no-touchevents.backgroundcliptext .m-contentsNav_item:hover .m-contentsNav_item_heading_ja,
.touchevents.backgroundcliptext .m-contentsNav_item.is-touched .m-contentsNav_item_heading_ja {
	color: rgba(0, 0, 0, 0.4);
}

/* pageHero ---------- */
.m-pageHero {
	background: #fff;
}

.m-pageHero_figure img {
	width: 100%;
	max-width: 992px;
}

@media print, screen and (min-width: 768px) {
	.m-pageHero_figure {
		padding: 0 30px;
		text-align: center;
	}
}

.m-pageHero_body {
	padding: 28px 0 56px;
	line-height: 2;
}
@media print, screen and (min-width: 768px) {
	.m-pageHero_body {
		padding: 4.7% 8.468% 11.6%;
	}
}
.m-pageHero_body p {
	margin: 1em 0;
}
.m-pageHero_body p:first-child {
	margin-top: 0;
}
.m-pageHero_body p:last-child {
	margin-bottom: 0;
}

/* media ---------- */
.m-media > a {
	text-decoration: none; 
	color: inherit;
}

.m-media_figure {
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.4s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
}
.m-media_figure a {
	display: block;
}
.m-media_figure img {
	width: 100%;
	-webkit-transition: -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.4s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.4s cubic-bezier(0.23, 1, 0.58, 1);
}
.no-touchevents a:hover .m-media_figure,
.no-touchevents .m-media_figure a:hover img,
.touchevents a.is-touched .m-media_figure,
.touchevents .m-media_figure a.is-touched img {
	-webkit-transition: all 0.45s cubic-bezier(0.175, 0.885, 0.57, 1.48);
	transition: all 0.45s cubic-bezier(0.175, 0.885, 0.57, 1.48); 
	-webkit-transform: scale(0.9); 
	    -ms-transform: scale(0.9); 
	        transform: scale(0.9);
}

.m-media_body {
	padding: 18px 0 0;
}

.m-media_title {
	margin: 0 0 8px;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
}

.m-media_desc {
	font-size: 13px;
	font-size: 1.3rem;
}

.m-media_note {
	margin: 8px 0 0;
	font-size: 12px;
	font-size: 1.2rem;
}

@media print, screen and (min-width: 768px) {
	.m-media,
	.m-media > a {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;

		-webkit-box-flex: 1;

		-webkit-flex: 1;

		    -ms-flex: 1;

		        flex: 1;
	}
	.m-media_figure {
		width: 250px;
	}
	.m-media_body {
		padding: 0 0 0 32px; 

		-webkit-box-flex: 1; 

		-webkit-flex: 1; 

		    -ms-flex: 1; 

		        flex: 1;
	}
	.m-media_title {
		font-size: 1.8rem;
	}
	.m-media_desc {
		font-size: 1.4rem;
	}
}

/* mediaList ---------- */
.m-mediaList .m-media {
	padding: 0 0 20px;
	border-bottom: 2px solid #f0f0ee;
}
.m-mediaList .m-media:not(:first-child) {
	padding-top: 20px;
}
@media print, screen and (min-width: 768px) {
	.m-mediaList .m-media {
		padding-bottom: 30px;
	}
	.m-mediaList .m-media:not(:first-child) {
		padding-top: 30px;
	}
}

/* dataTable ---------- */
.m-dataTable {
	width: 100%;
	table-layout: fixed;
}

.m-dataTable th,
.m-dataTable td {
	text-align: left;
	line-height: 1.6;
}

.m-dataTable_head {
	border-bottom: 2px solid #000;
	font-size: 15px;
	font-size: 1.5rem;
}
.m-dataTable_head th,
.m-dataTable_head td {
	padding: 10px 16px 10px 10px;
}
.m-dataTable_head th:not(:first-child),
.m-dataTable_head td:not(:first-child) {
	padding-left: 12px;
}
@media print, screen and (min-width: 768px) {
	.m-dataTable_head th,
	.m-dataTable_head td {
		padding-top: 16px;
		padding-right: 20px;
		padding-bottom: 16px;
	}
	.m-dataTable_head th:not(:first-child),
	.m-dataTable_head td:not(:first-child) {
		padding-left: 20px;
	}
}
@media print, screen and (min-width: 768px) {
	.m-dataTable_head {
		font-size: 1.8rem;
	}
}

.m-dataTable_body th,
.m-dataTable_body td {
	padding: 16px 16px 16px 10px; 
	border-bottom: 2px solid #f0f0ee;
}
.m-dataTable_body th:not(:first-child),
.m-dataTable_body td:not(:first-child) {
	padding-left: 12px;
}
@media print, screen and (min-width: 768px) {
	.m-dataTable_body th,
	.m-dataTable_body td {
		padding-top: 24px;
		padding-right: 20px;
		padding-bottom: 24px;
	}
	.m-dataTable_body th:not(:first-child),
	.m-dataTable_body td:not(:first-child) {
		padding-left: 20px;
	}
}

.m-dataTable_body td:not(:first-child) {
	position: relative;
}
.m-dataTable_body td:not(:first-child):before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 2px;
	height: 1.6em;
	background: #f0f0ee;
}

/* scrollableTable ---------- */
.m-scrollableTable {
	overflow: auto;
	white-space: nowrap;
}
.m-scrollableTable .m-dataTable {
	table-layout: auto;
}
.m-scrollableTable .m-dataTable_body th {
	min-width: 160px;
}
@media print, screen and (min-width: 768px) {
	.m-scrollableTable .m-dataTable_body th {
		min-width: 224px;
	}
}

.m-scrollableTable::-webkit-scrollbar {
	height: 5px;
}

.m-scrollableTable::-webkit-scrollbar-track {
	background: #f0f0ee;
}

.m-scrollableTable::-webkit-scrollbar-thumb {
	border-radius: 4px; 
	background: #d7d7d5;
}

/* accordionList ---------- */
.m-accordionList_item {
	border-bottom: 2px solid #f0f0ee;
}

.m-accordionList_header {
	position: relative;
	cursor: pointer;
	font-weight: bold;
	line-height: 1.6;
}
.m-accordionList_header a {
	display: block;
	padding: 18px 52px 18px 10px;
	text-decoration: none; 
	color: inherit;
}
@media print, screen and (min-width: 768px) {
	.m-accordionList_header a {
		padding: 24px 64px 24px 10px;
	}
}

.m-accordionList_body {
	display: none;
}

.m-accordionList_bodyInner {
	padding: 16px 20px 20px 10px;
}
@media print, screen and (min-width: 768px) {
	.m-accordionList_bodyInner {
		padding: 24px 32px 32px 10px;
	}
}

.m-accordionList_header_toggle {
	position: absolute;
	top: 0;
	right: 9px;
	bottom: 0;
	margin: auto;
	width: 34px;
	height: 34px;
}
@media print, screen and (min-width: 768px) {
	.m-accordionList_header_toggle {
		width: 42px;
		height: 42px;
	}
}

.m-accordionList_header_toggle_lines {
	position: absolute;
	top: 50%;
	right: 0;
	left: 0;
	margin: -2px auto 0;
	width: 14px;
	height: 3px;
	font-size: 0;
}
@media print, screen and (min-width: 768px) {
	.m-accordionList_header_toggle_lines {
		width: 18px;
		height: 4px;
	}
}
.m-accordionList_header_toggle_lines:before,
.m-accordionList_header_toggle_lines:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 3px;
	width: 14px;
	height: 3px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #82be28;
}
@media print, screen and (min-width: 768px) {
	.m-accordionList_header_toggle_lines:before,
	.m-accordionList_header_toggle_lines:after {
		width: 18px;
		height: 4px;
	}
}
.no-touchevents a:hover .m-accordionList_header_toggle_lines:before,
.no-touchevents a:hover .m-accordionList_header_toggle_lines:after {
	background-color: #fff;
}
.m-accordionList_header_toggle_lines:after {
	-webkit-transform: scaleY(1) rotate(90deg);
	    -ms-transform: scaleY(1) rotate(90deg);
	        transform: scaleY(1) rotate(90deg);
}
[aria-expanded="true"] .m-accordionList_header_toggle_lines:after {
	-webkit-transform: scaleY(0) rotate(90deg);
	    -ms-transform: scaleY(0) rotate(90deg);
	        transform: scaleY(0) rotate(90deg);
}

/* card ---------- */
.m-card {
	position: relative;
	width: 100%;
	max-width: 400px;
}
.m-card + .m-card {
	margin-top: 20px;
}
@media print, screen and (min-width: 768px) {
	.m-card + .m-card {
		margin-top: 31px;
	}
}
.m-card:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 20px;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	background: #fff;

	will-change: transform;
}
.m-card > a {
	display: block;
	position: relative;
	height: 100%;
	text-decoration: none; 
	color: inherit;
}
.m-card .m-iconLink {
	-webkit-transition: color 0.25s cubic-bezier(0.23, 1, 0.58, 1);
	transition: color 0.25s cubic-bezier(0.23, 1, 0.58, 1);
}
.no-touchevents .m-card:not(.m-card-noHover):hover:before,
.touchevents .m-card:not(.m-card-noHover).is-touched:before {
	top: 3.2%;
	right: 2.5%;
	bottom: 3.2%;
	left: 2.5%;
	-webkit-transition: all 0.55s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: all 0.55s cubic-bezier(0.175, 0.885, 0.47, 1.26);
}
.no-touchevents .m-card:not(.m-card-noHover):hover .m-iconLink,
.touchevents .m-card:not(.m-card-noHover).is-touched .m-iconLink {
	color: #82be28;
}

.m-card_img {
	overflow: hidden; 
	position: relative;
	border-radius: 20px 20px 0 0;
}

.m-card_imgWrapper {
	overflow: hidden;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(1) translateY(0%); 
	    -ms-transform: scale(1) translateY(0%); 
	        transform: scale(1) translateY(0%);
}
.m-card_imgWrapper img {
	display: block;
	border-radius: 20px 20px 0 0;
	width: 100%;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
}
.m-card_imgWrapper:after {
	content: "";
	display: block;
	opacity: 0;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 20px;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #000;
}
.no-touchevents .m-card:not(.m-card-noHover):hover .m-card_imgWrapper,
.touchevents .m-card:not(.m-card-noHover).is-touched .m-card_imgWrapper {
	-webkit-transition: all 0.55s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: all 0.55s cubic-bezier(0.175, 0.885, 0.47, 1.26); 
	-webkit-transform: scale(0.68) translateY(13%); 
	    -ms-transform: scale(0.68) translateY(13%); 
	        transform: scale(0.68) translateY(13%);
}
.no-touchevents .m-card:not(.m-card-noHover):hover .m-card_imgWrapper img,
.touchevents .m-card:not(.m-card-noHover).is-touched .m-card_imgWrapper img {
	border-radius: 30px;
	-webkit-transition: all 0.55s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: all 0.55s cubic-bezier(0.175, 0.885, 0.47, 1.26);
}
.no-touchevents .m-card:not(.m-card-noHover):hover .m-card_imgWrapper:after,
.touchevents .m-card:not(.m-card-noHover).is-touched .m-card_imgWrapper:after {
	opacity: 0.15;
	border-radius: 30px;
	-webkit-transition: all 0.55s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: all 0.55s cubic-bezier(0.175, 0.885, 0.47, 1.26);
}
.no-touchevents .m-card-noBg:not(.m-card-noHover):hover .m-card_img .m-card_imgWrapper,
.touchevents .m-card-noBg:not(.m-card-noHover).is-touched .m-card_img .m-card_imgWrapper {
	-webkit-transition: all 0.45s cubic-bezier(0.175, 0.885, 0.57, 1.48);
	transition: all 0.45s cubic-bezier(0.175, 0.885, 0.57, 1.48); 
	-webkit-transform: scale(0.84) translateY(4%); 
	    -ms-transform: scale(0.84) translateY(4%); 
	        transform: scale(0.84) translateY(4%);
}
.no-touchevents .m-card-noBg:not(.m-card-noHover):hover .m-card_img .m-card_imgWrapper img,
.touchevents .m-card-noBg:not(.m-card-noHover).is-touched .m-card_img .m-card_imgWrapper img {
	-webkit-transition: all 0.45s cubic-bezier(0.175, 0.885, 0.57, 1.48);
	transition: all 0.45s cubic-bezier(0.175, 0.885, 0.57, 1.48);
}

/* scroll animation */
@media print, screen and (min-width: 768px) {
	.m-cardGroup.js-inview .m-card:before {
		opacity: 0;
		-webkit-transform: scale(0.6);
		    -ms-transform: scale(0.6);
		        transform: scale(0.6);
	}
	.m-cardGroup.js-inview .m-card_img {
		opacity: 0;
		-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
		transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
		-webkit-transform: scale(0.6); 
		    -ms-transform: scale(0.6); 
		        transform: scale(0.6);
	}
	.m-cardGroup.js-inview .m-card_body {
		opacity: 0;
		-webkit-transition: all 0.4s 0.35s cubic-bezier(0.23, 1, 0.58, 1);
		transition: all 0.4s 0.35s cubic-bezier(0.23, 1, 0.58, 1); 
		-webkit-transform: translateY(10px); 
		    -ms-transform: translateY(10px); 
		        transform: translateY(10px);
	}
	.m-cardGroup.js-inview .m-card.is-inview:before {
		opacity: 1;
		-webkit-transform: scale(1);
		    -ms-transform: scale(1);
		        transform: scale(1);
	}
	.m-cardGroup.js-inview .m-card.is-inview .m-card_img {
		opacity: 1;
		-webkit-transform: scale(1);
		    -ms-transform: scale(1);
		        transform: scale(1);
	}
	.m-cardGroup.js-inview .m-card.is-inview .m-card_body {
		opacity: 1;
		-webkit-transform: translateY(0);
		    -ms-transform: translateY(0);
		        transform: translateY(0);
	}
}

.m-card_img_iconBadge {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border: 3px solid #fff;
	width: 50px;
	height: 50px;
	-webkit-transition: opacity 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	background: none;
	font-size: 28px;
	font-size: 2.8rem;
}
.m-card_img_iconBadge:before {
	display: none;
}
.m-card_img_iconBadge .m-icon-play:before,
.m-card_img_iconBadge .m-icon-play:after {
	-webkit-transition: none !important;
	transition: none !important;
}
.m-card_img_iconBadge .m-icon-play:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_play_white.svg);
}
.no-touchevents .m-card:hover .m-card_img_iconBadge,
.touchevents .m-card.is-touched .m-card_img_iconBadge {
	opacity: 0;
	background-color: transparent;
}
@media print, screen and (min-width: 768px) {
	.m-card_img_iconBadge {
		width: 70px;
		height: 70px;
		font-size: 3.6rem;
	}
}

.m-card_body {
	position: relative;
	padding: 25px 25px 30px;
}
@media print, screen and (min-width: 768px) {
	.m-card_body {
		padding: 30px 30px 45px;
	}
}

.m-card_meta {
	margin: 0 0 10px;
	font-size: 12px;
	font-size: 1.2rem;
}
.m-card_meta:after {
	content: "";
	display: block;
	clear: both;
}
@media print, screen and (min-width: 768px) {
	.m-card_meta {
		margin-bottom: 16px;
	}
}

.m-card_badge {
	display: inline-block;
	float: left;
	padding: 0 0.6em;
	border-radius: 20px; 
	background: #2d8c3c;
	color: #fff;
	font-weight: bold;
}

.m-card_badge + .m-card_date {
	float: right;
}

.m-card_date_category {
	color: #2d8c3c;
	font-weight: bold;
}

.m-card_text {
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	.m-card_text {
		font-size: 1.4rem;
	}
}

.m-card_title {
	margin: 0 0 10px;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.6;
}
.m-card_title:last-child {
	margin-bottom: 0;
}
@media print, screen and (min-width: 768px) {
	.m-card_title {
		margin-bottom: 12px;
		font-size: 1.8rem;
	}
}
.m-card_title .m-iconLink {
	margin-left: -0.2em;
}

.m-card-border:before {
	border: 2px solid #f0f0ee;
	border-radius: 22px;
}

.m-card-border:not(.m-card-noBg) .m-card_img {
	margin: 2px 2px 0;
}

.m-card-noHover .m-card_heading {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	padding: 0 20px;
	text-align: center;
	color: #fff; 

	-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;
}

.m-card-noHover .m-card_imgWrapper {
	overflow: hidden; 
	bottom: 0;
	border-radius: 20px 20px 0 0;
}

.m-card-noHover .m-card_heading_en {
	font-size: 24px;
	font-size: 2.4rem;
	line-height: 1.2;
}
@media print, screen and (min-width: 768px) {
	.m-card-noHover .m-card_heading_en {
		font-size: 3.6rem;
	}
}

.m-card-noHover .m-card_heading_en-small {
	font-size: 20px;
	font-size: 2rem;
}
@media print, screen and (min-width: 768px) {
	.m-card-noHover .m-card_heading_en-small {
		font-size: 2.8rem;
	}
}

.m-card-noHover .m-card_heading_ja {
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	.m-card-noHover .m-card_heading_ja {
		font-size: 1.6rem;
	}
}

.m-card-noHover .m-card_heading_ja-large {
	font-size: 16px;
	font-size: 1.6rem;
}
@media print, screen and (min-width: 768px) {
	.m-card-noHover .m-card_heading_ja-large {
		font-size: 2rem;
	}
}

.m-card-noHover .m-card_body {
	padding: 15px 15px;
}
@media print, screen and (min-width: 768px) {
	.m-card-noHover .m-card_body {
		padding: 20px 30px;
	}
}

.m-card-noHover .m-linkList_item:last-child {
	border-bottom: 0;
}

@media print, screen and (max-width: 767px) {
	.m-card-noHover .m-linkList_item {
		font-size: 1.3rem;
	}
}

@media print, screen and (min-width: 768px) {
	.m-card-noHover .m-linkList_item a {
		padding: 16px 36px 16px 16px;
	}
}

.m-card-nav .m-card_body {
	padding-top: 20px;
	padding-bottom: 20px;
}
@media print, screen and (min-width: 768px) {
	.m-card-nav .m-card_body {
		padding-top: 30px;
		padding-bottom: 30px;
	}
}

.m-card-nav .m-card_title {
	margin: 0;
	text-align: center;
}
.m-card-nav .m-card_title .m-iconLink {
	margin-left: -0.5em;
}

.m-card-nav .m-card_title-list {
	letter-spacing: -1em;
}
.m-card-nav .m-card_title-list li {
	display: inline-block;
	letter-spacing: normal;
}
.m-card-nav .m-card_title-list li + li {
	margin-left: 1.2em;
}

.m-card-noBg:before {
	display: none;
}

.m-card-noBg .m-card_img {
	border-radius: 20px;
}

.m-card-noBg .m-card_imgWrapper img {
	border-radius: 20px;
}

.m-card-noBg.m-card-border .m-card_imgWrapper img {
	border: 2px solid #f0f0ee;
}

.m-card-noBg .m-card_body {
	padding: 16px 10px 10px;
}
@media print, screen and (min-width: 768px) {
	.m-card-noBg .m-card_body {
		padding-top: 20px;
		padding-bottom: 20px;
	}
}

.m-cardGroup {
	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-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}
.m-cardGroup:after {
	content: "";
	display: block;
	clear: both;
}
.m-cardGroup + .m-cardGroup {
	margin-top: 20px;
}
@media print, screen and (min-width: 768px) {
	.m-cardGroup {
		margin: 0 auto; 
		width: 651px;

		-webkit-box-pack: start;

		-webkit-justify-content: flex-start;

		    -ms-flex-pack: start;

		        justify-content: flex-start;
	}
	.m-cardGroup + .m-cardGroup {
		margin-top: 31px;
	}
	.m-cardGroup .m-card {
		margin-right: 31px; 
		width: 310px;
	}
	.m-cardGroup .m-card:nth-child(-n+2) {
		margin-top: 0;
	}
	.m-cardGroup .m-card:nth-child(2n) {
		margin-right: 0;
	}
}
@media print, screen and (min-width: 1032px) {
	.m-cardGroup {
		width: 100%;
	}
	.m-cardGroup .m-card:nth-child(-n+3) {
		margin-top: 0;
	}
	.m-cardGroup .m-card:nth-child(2n) {
		margin-right: 31px;
	}
	.m-cardGroup .m-card:nth-child(3n) {
		margin-right: 0;
	}
}

@media print, screen and (max-width: 767px) {
	.m-cardGroup-2col-sm {
		margin: 0 -10px; 

		-webkit-box-pack: start; 

		-webkit-justify-content: flex-start; 

		    -ms-flex-pack: start; 

		        justify-content: flex-start;
	}
	.m-cardGroup-2col-sm .m-card {
		margin: 0 10px; 
		width: calc(50% - 20px);
	}
	.m-cardGroup-2col-sm .m-card:nth-child(n+3) {
		margin-top: 16px;
	}
	.m-cardGroup-2col-sm .m-card_body {
		padding: 12px 14px 14px;
	}
	.m-cardGroup-2col-sm .m-card_title {
		word-break: break-all;
		font-size: 1.2rem;
	}
}

@media print, screen and (min-width: 768px) {
	.m-cardGroup-2col-md {
		margin: -26px -26px; 
		width: auto;
	}
	.m-cardGroup-2col-md .m-card {
		margin: 26px 26px !important; 
		width: calc(50% - 52px);
		max-width: none;
	}
}

@media print, screen and (min-width: 768px) {
	.m-cardGroup-4col-md {
		width: 491px;
	}
	.m-cardGroup-4col-md .m-card {
		width: 230px;
	}
	.m-cardGroup-4col-md .m-card-nav .m-card_body {
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.m-cardGroup-4col-md .m-card-nav .m-card_title {
		font-size: 1.4rem;
	}
	.m-cardGroup-4col-md .m-card_img_iconBadge {
		width: 50px;
		height: 50px;
	}
}

@media print, screen and (min-width: 1032px) {
	.m-cardGroup-4col-md {
		width: 100%;
	}
	.m-cardGroup-4col-md .m-card {
		margin-top: 24px;
		margin-right: 24px;
	}
	.m-cardGroup-4col-md .m-card:nth-child(2n) {
		margin-right: 24px;
	}
	.m-cardGroup-4col-md .m-card:nth-child(3n) {
		margin-right: 24px;
	}
	.m-cardGroup-4col-md .m-card:nth-child(4n) {
		margin-right: 0;
	}
	.m-cardGroup-4col-md .m-card:nth-child(-n+4) {
		margin-top: 0;
	}
}

.m-cardGroup-fluid {
	width: auto; 

	-webkit-box-pack: center; 

	-webkit-justify-content: center; 

	    -ms-flex-pack: center; 

	        justify-content: center;
}
@media print, screen and (min-width: 768px) {
	.m-cardGroup-fluid {
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		    -ms-flex-pack: start;
		        justify-content: flex-start;
	}
}

@media print, screen and (max-width: 767px) {
	.m-cardGroup-fluid-2col-sm {
		margin: -10px -10px; 

		-webkit-box-pack: start; 

		-webkit-justify-content: flex-start; 

		    -ms-flex-pack: start; 

		        justify-content: flex-start;
	}
	.m-cardGroup-fluid-2col-sm .m-card {
		margin: 10px 10px !important; 
		width: calc(50% - 20px);
	}
}

@media print, screen and (min-width: 768px) {
	.m-cardGroup-fluid-3col {
		margin: -10px -18px;
	}
	.m-cardGroup-fluid-3col .m-card {
		margin: 10px 18px !important; 
		width: calc(33.333% - 36px);
	}
}

@media print, screen and (min-width: 768px) {
	.m-cardGroup-fluid-4col-md {
		margin: -10px -20px;
	}
	.m-cardGroup-fluid-4col-md .m-card {
		margin: 10px 20px !important; 
		width: calc(25% - 40px);
	}
}

/* pager ---------- */
.m-pager {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	font-weight: bold; 

	-webkit-box-pack: center; 

	-webkit-justify-content: center; 

	    -ms-flex-pack: center; 

	        justify-content: center;
}
@media print, screen and (max-width: 767px) {
	.m-pager {
		margin-right: -20px;
		margin-left: -20px;
	}
}
.m-pager a {
	color: inherit;
}
.m-pager a:hover {
	text-decoration: none; 
	color: #82be28;
}

.m-pager-foot {
	margin-top: 28px;
}
@media print, screen and (min-width: 768px) {
	.m-pager-foot {
		margin-top: 42px;
	}
}

.m-pager_prev,
.m-pager_next {
	position: relative;
	border: 3px solid #82be28;
	border-radius: 50%;
	width: 38px;
	height: 38px;
	background: #82be28;
	font-size: 20px;
	font-size: 2rem;
}
.m-pager_prev:before,
.m-pager_next:before {
	content: "";
	display: block;
	opacity: 1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50%;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(1); 
	    -ms-transform: scale(1); 
	        transform: scale(1);
	background: #fff;
}
.m-pager_prev a,
.m-pager_next a {
	display: block;
	position: relative;
	height: 100%;
	text-decoration: none;
}
.m-pager_prev .m-icon,
.m-pager_next .m-icon {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}
@media print, screen and (min-width: 768px) {
	.m-pager_prev,
	.m-pager_next {
		width: 42px;
		height: 42px;
		font-size: 2.4rem;
	}
}
.no-touchevents .m-pager_prev:hover:before,
.touchevents .m-pager_prev.is-touched:before,
.no-touchevents
  .m-pager_next:hover:before,
.touchevents
  .m-pager_next.is-touched:before {
	opacity: 0;
	-webkit-transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), transform 0.6s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(0); 
	    -ms-transform: scale(0); 
	        transform: scale(0);
}
.no-touchevents .m-pager_prev:hover .m-icon:before,
.touchevents .m-pager_prev.is-touched .m-icon:before,
.no-touchevents
  .m-pager_next:hover .m-icon:before,
.touchevents
  .m-pager_next.is-touched .m-icon:before {
	opacity: 0;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
}
.no-touchevents .m-pager_prev:hover .m-icon:after,
.touchevents .m-pager_prev.is-touched .m-icon:after,
.no-touchevents
  .m-pager_next:hover .m-icon:after,
.touchevents
  .m-pager_next.is-touched .m-icon:after {
	opacity: 1;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
}

.m-pager_num {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 0 0.5em; 

	-webkit-box-align: center; 

	-webkit-align-items: center; 

	    -ms-flex-align: center; 

	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.m-pager_num_item {
	position: relative;
	margin: 0 1.2em;
}
.m-pager_num_item .is-current {
	display: block;
	color: #fff;
}
.m-pager_num_item .is-current:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: -16px;
	right: -16px;
	bottom: -16px;
	left: -16px;
	margin: auto;
	border-radius: 50%; 
	width: 32px;
	height: 32px;
	background: #82be28;
}
@media print, screen and (min-width: 768px) {
	.m-pager_num_item .is-current:before {
		width: 42px;
		height: 42px;
	}
}

.m-pager_num_item-ellipsis {
	margin: 0 0.6em;
}

@media print, screen and (max-width: 767px) {
	.m-pager_num_item-first,
	.m-pager_num_item-last,
	.m-pager_num_item-ellipsis {
		display: none;
	}
}

.m-pager-text {
	padding-right: 10px;
	padding-left: 10px; 

	-webkit-box-pack: justify; 

	-webkit-justify-content: space-between; 

	    -ms-flex-pack: justify; 

	        justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
}
@media print, screen and (min-width: 768px) {
	.m-pager-text {
		padding-right: 56px;
		padding-left: 56px;
	}
}
.m-pager-text .m-pager_item-prev .m-iconBadge {
	margin-right: 12px;
}
.m-pager-text .m-pager_item-next .m-iconBadge {
	margin-left: 12px;
}
.touchevents .m-pager-text a.is-touched {
	color: #82be28;
}

/* detailPager ---------- */
.m-detailPager_btn {
	margin: 28px auto 0;
	text-align: center;
}

@media print, screen and (min-width: 768px) {
	.m-detailPager {
		position: relative;
	}
	.m-detailPager .m-pager {
		padding-top: 9px;
	}
	.m-detailPager .m-pager_item {
		position: relative;
		z-index: 2;
	}
	.m-detailPager_btn {
		position: absolute;
		z-index: 1;
		top: 0;
		right: 0;
		left: 0;
		margin-top: 0;
	}
}

/* embedResponsive ---------- */
.m-embedResponsive {
	position: relative;
	height: 0;
}
.m-embedResponsive iframe, .m-embedResponsive object {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 100%;
	height: 100%;
}

.m-embedResponsive-16by9 {
	padding-top: 56.25%;
}

.m-embedResponsive-4by3 {
	padding-top: 75%;
}

.m-embedResponsive-1by1 {
	padding-top: 100%;
}

/* roundBox ---------- */
.m-roundBox {
	position: relative;
	padding: 20px 20px;
	border-radius: 20px 20px;
	background: #fff;
}
@media print, screen and (min-width: 768px) {
	.m-roundBox {
		padding: 5.645% 8.468%;
	}
}
.m-roundBox + .m-roundBox {
	margin-top: 28px;
}
@media print, screen and (min-width: 768px) {
	.m-roundBox + .m-roundBox {
		margin-top: 56px;
	}
}

.m-roundBox-min-md {
	margin-right: -20px;
	margin-left: -20px;
	padding-top: 42px;
	padding-bottom: 42px;
	border-radius: 0;
}
@media print, screen and (min-width: 768px) {
	.m-roundBox-min-md {
		margin-right: auto;
		margin-left: auto;
		padding-top: 84px;
		padding-bottom: 84px;
		border-radius: 20px 20px;
	}
}

.m-roundBox_headFunction {
	position: absolute;
	top: 20px;
	right: 20px;
}
@media print, screen and (min-width: 768px) {
	.m-roundBox_headFunction {
		top: 40px;
		right: 8.468%;
	}
}

/* roundImg ---------- */
.m-roundImg {
	border-radius: 20px 20px;
}

@media print, screen and (min-width: 768px) {
	.m-roundImg-min-md {
		border-radius: 20px 20px;
	}
}

.m-roundImg-border {
	border: 2px solid #f0f0ee;
}

/* figureLink ---------- */
.m-figureLink a {
	display: block;
}
.m-figureLink a img {
	-webkit-transition: -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.58, 1);
	transition: -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.35s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.58, 1);
}
.no-touchevents .m-figureLink a:hover img,
.touchevents .m-figureLink a.is-touched img {
	-webkit-transition: -webkit-transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: -webkit-transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26), -webkit-transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26); 
	-webkit-transform: scale(0.96); 
	    -ms-transform: scale(0.96); 
	        transform: scale(0.96);
}

/* carousel ---------- */
.m-carousel {
	position: relative;
	padding: 42px 0 56px;
	background: #fff;
}
.m-carousel:after {
	content: "";
	display: block;
	visibility: visible;
	opacity: 1;
	position: absolute;
	z-index: 100;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	-webkit-transition: all 1s;
	transition: all 1s; 
	background: #fff;
}
@media print, screen and (min-width: 768px) {
	.m-carousel {
		padding: 72px 0;
	}
}
.m-carousel.is-initialized:after {
	visibility: hidden; 
	opacity: 0;
}

.m-carouselInner {
	position: relative;
	padding: 0 0 44px;
}
.is-singleImgMode .m-carouselInner {
	padding-bottom: 0;
}

.m-carousel_item {
	margin: 0 20px; 
	width: 900px;
}
@media print, screen and (min-width: 940px) {
	.m-carousel_item {
		margin-right: 10px;
		margin-left: 10px;
	}
}
.m-carousel_item a {
	display: block;
	-webkit-transition: color 0.25s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.4, 0, 0.22, 1);
	transition: color 0.25s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.4, 0, 0.22, 1);
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.22, 1), color 0.25s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.5s cubic-bezier(0.4, 0, 0.22, 1), color 0.25s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.4, 0, 0.22, 1); 
	-webkit-transform: scale(0.8); 
	    -ms-transform: scale(0.8); 
	        transform: scale(0.8);
	text-decoration: none;
	color: inherit;
}
.m-carousel_item a img {
	width: 100%;
	-webkit-transition: -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.58, 1);
	transition: -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.35s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.35s cubic-bezier(0.23, 1, 0.58, 1);
}
.no-touchevents .m-carousel_item a:hover,
.touchevents .m-carousel_item a.is-touched {
	color: #82be28;
}
.no-touchevents .m-carousel_item a:hover img,
.touchevents .m-carousel_item a.is-touched img {
	-webkit-transition: -webkit-transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: -webkit-transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26), -webkit-transform 0.35s cubic-bezier(0.175, 0.885, 0.47, 1.26); 
	-webkit-transform: scale(0.96); 
	    -ms-transform: scale(0.96); 
	        transform: scale(0.96);
}
.m-carousel_item.is-current a {
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
}

.m-carousel_text {
	padding: 10px 10px 0;
	min-height: 58px;
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.6;
}
@media print, screen and (min-width: 940px) {
	.m-carousel_text {
		padding-top: 20px;
		min-height: 96px;
		font-size: 2.4rem;
	}
}

.m-carousel_control {
	position: absolute;
	z-index: 3;
	right: 30px;
	bottom: 0;
	left: 30px;
	height: 44px;
}
@media print, screen and (min-width: 940px) {
	.m-carousel_control {
		right: 0;
		left: 0;
		margin: 0 auto; 
		width: 100%;
		max-width: 880px;
	}
}
.is-singleImgMode .m-carousel_control {
	display: none;
}

.m-carousel_toggleSwitch {
	position: absolute;
	top: 0;
	left: 0;
	border: 0;
	width: 24px;
	height: 44px;
	background: none; 

	-webkit-appearance: none;
}
.m-carousel_toggleSwitch svg {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 5px;
	margin: auto; 
	height: 14px;
}

.m-carousel_pagerContainer {
	position: absolute;
	top: 0;
	right: 0;
	left: 38px;
}
.m-carousel_pagerContainer:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 100%;
	height: 2px;
	background: #f0f0ee;
}
@media print, screen and (min-width: 940px) {
	.m-carousel_pagerContainer {
		left: 50px;
	}
	.m-carousel_pagerContainer:before {
		height: 3px;
	}
}

.m-carousel_pager_progress {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 100%;
	height: 2px;
	-webkit-transform: scaleX(0);
	    -ms-transform: scaleX(0);
	        transform: scaleX(0);
	-webkit-transform-origin: left;
	    -ms-transform-origin: left;
	        transform-origin: left; 
	background: #82be28;
}
@media print, screen and (min-width: 940px) {
	.m-carousel_pager_progress {
		height: 3px;
	}
}

.m-carousel_pager {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	color: #fff; 

	-webkit-box-pack: center; 

	-webkit-justify-content: center; 

	    -ms-flex-pack: center; 

	        justify-content: center;
}

.m-carousel_pager_item {
	position: relative;
	width: 50%;
	height: 44px; 
	cursor: pointer;
}

.m-carousel_pager_item_progress {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 100%;
	height: 2px;
	-webkit-transform: scaleX(0);
	    -ms-transform: scaleX(0);
	        transform: scaleX(0);
	-webkit-transform-origin: left;
	    -ms-transform-origin: left;
	        transform-origin: left; 
	background: #82be28;
}
@media print, screen and (min-width: 940px) {
	.m-carousel_pager_item_progress {
		height: 3px;
	}
}

.m-carousel_pager_item_dot {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	border: 3px solid #82be28;
	border-radius: 50%;
	width: 12px;
	height: 12px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(1); 
	    -ms-transform: scale(1); 
	        transform: scale(1);
	background: #fff;
	font-size: 0;

	-webkit-appearance: none;
}
@media print, screen and (min-width: 940px) {
	.m-carousel_pager_item_dot {
		width: 15px;
		height: 15px;
	}
}
.m-carousel_pager_item.is-current .m-carousel_pager_item_dot {
	-webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.47, 1.26); 
	-webkit-transform: scale(1.4); 
	    -ms-transform: scale(1.4); 
	        transform: scale(1.4);
	background-color: #82be28;
}
@media print, screen and (min-width: 940px) {
	.m-carousel_pager_item.is-current .m-carousel_pager_item_dot {
		-webkit-transform: scale(1.46);
		    -ms-transform: scale(1.46);
		        transform: scale(1.46);
	}
}

/* modal ---------- */
.m-modal_close {
	position: absolute;
	top: 8px;
	right: 0;
}

.m-modal_arrow {
	display: block;
	position: absolute;
	z-index: 2000;
	top: 0;
	bottom: 0;
	margin: auto;
	cursor: pointer;
}
.m-modal_arrow .m-icon {
	pointer-events: none;
}

.m-modal_arrow-left {
	left: 6px;
}
@media print, screen and (min-width: 768px) {
	.m-modal_arrow-left {
		left: 16px;
	}
}

.m-modal_arrow-right {
	right: 6px;
}
@media print, screen and (min-width: 768px) {
	.m-modal_arrow-right {
		right: 16px;
	}
}

/* ------------------------
	importantNotice
------------------------ */
.l-importantNotice {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
	position: relative;
	background: #fff;
}
@media print, screen and (min-width: 768px) {
	.l-importantNotice {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		    -ms-flex-direction: row;
		        flex-direction: row;
	}
}

.l-importantNotice_title {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding: 14px 20px;
	background: #f0f0ee;
	font-weight: bold; 

	-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;
}
@media print, screen and (min-width: 768px) {
	.l-importantNotice_title {
		width: 220px;
	}
}

.l-importantNotice_body {
	padding: 16px 20px;
}
@media print, screen and (min-width: 768px) {
	.l-importantNotice_body {
		padding: 24px 40px;

		-webkit-box-flex: 1;

		-webkit-flex: 1;

		    -ms-flex: 1;

		        flex: 1;
	}
}

.l-importantNotice_list_item {
	padding: 10px 0;
	border-top: 2px solid #f0f0ee;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: bold;
}
[lang="en"] .l-importantNotice_list_item {
	word-break: break-all;
}
.l-importantNotice_list_item:first-child {
	padding-top: 0;
	border-top: 0;
}
.l-importantNotice_list_item:last-child {
	padding-bottom: 0;
}
.l-importantNotice_list_item a {
	display: block;
}
.l-importantNotice_list_item a:before {
	margin-left: -0.3em;
}
@media print, screen and (min-width: 768px) {
	.l-importantNotice_list_item {
		padding: 12px 0;
		font-size: 1.4rem;
	}
}

.l-importantNotice_list_item-emergency {
	color: #b32222;
	font-weight: bold;
}
.l-importantNotice_list_item-emergency a {
	color: inherit;
}
.l-importantNotice_list_item-emergency a:hover {
	text-decoration: underline;
	color: inherit;
}
.l-importantNotice_list_item-emergency a:before {
	content: "";
	display: inline-block;
	margin: -11px 5px -10px -3px;
	width: 21px;
	height: 21px;
	background: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_emergency.svg) no-repeat;
	background-size: cover; 
	vertical-align: middle;
}
@media print, screen and (min-width: 768px) {
	.l-importantNotice_list_item-emergency a:before {
		margin: -15px 5px -13px -5px; 
		width: 28px;
		height: 28px;
	}
}

/* ------------------------
	header
------------------------ */
.view-nav body,
.view-sitemap body,
.view-search body {
	overflow: hidden;
}

.l-container {
	position: relative;
	z-index: 2;
}

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

.l-main {
	-webkit-box-flex: 1;
	-webkit-flex: 1 0 auto;
	    -ms-flex: 1 0 auto;
	        flex: 1 0 auto;
}

/* footer fixed layout */
.l-header {
	position: absolute;
	z-index: 10000;
	top: 0;
	left: 0;
	width: 100%;
	height: 75px;
	-webkit-transition: -webkit-transform 0.45s cubic-bezier(0.23, 1, 0.58, 1);
	transition: -webkit-transform 0.45s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.45s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.45s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.45s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: translateY(0); 
	    -ms-transform: translateY(0); 
	        transform: translateY(0);
}
.l-header.is-fixed {
	position: fixed;
}
.l-header.is-hidden {
	-webkit-transform: translateY(-100%);
	    -ms-transform: translateY(-100%);
	        transform: translateY(-100%);
}
@media print, screen and (min-width: 1032px) {
	.l-header {
		height: 112px;
	}
}

.l-header_bar {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: absolute;
	top: 15px;
	right: 15px;
	left: 15px;
	border-radius: 45px 45px;
	height: 45px;
	-webkit-transition: box-shadow 0.5s;
	transition: box-shadow 0.5s; 
	background: #fff;

	-webkit-box-align: center;

	-webkit-align-items: center;

	    -ms-flex-align: center;

	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}
.has-shadow .l-header_bar {
	box-shadow: 0 0 12px rgba(0, 0, 0, 0.08);
}
.view-gnav .l-header_bar {
	box-shadow: none;
}
@media print, screen and (min-width: 1032px) {
	.l-header_bar {
		top: 20px;
		right: 20px;
		left: 20px;
		padding: 0 14px;
		height: 72px;

		-webkit-box-pack: justify;

		-webkit-justify-content: space-between;

		    -ms-flex-pack: justify;

		        justify-content: space-between;
	}
}

.l-header_logo {
	display: block;
	overflow: hidden;
	width: 140px;
	height: 45px;
	background: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/logo.svg) no-repeat center center;
	background-size: contain; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
.l-header_logo a {
	display: block;
	height: 100%;
}
@media print, screen and (min-width: 1032px) {
	.l-header_logo {
		margin-left: 8px; 
		width: 190px;
		height: 72px;
	}
	.l-header-minimum .l-header_logo {
		margin: 0 auto;
	}
}

.l-header_function {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.l-header_nav {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;

	-webkit-box-align: center;

	-webkit-align-items: center;

	    -ms-flex-align: center;

	        align-items: center;
}
@media print, screen and (max-width: 1031px) {
	.l-header_nav {
		display: none;
	}
}

.l-header_nav_items {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding-right: 24px;
	padding-bottom: 1px; 

	-webkit-box-pack: start; 

	-webkit-justify-content: flex-start; 

	    -ms-flex-pack: start; 

	        justify-content: flex-start;
	-webkit-box-align: center;
	-webkit-align-items: center;
	    -ms-flex-align: center;
	        align-items: center;
}

.l-header_nav_item {
	cursor: pointer; 
	font-size: 14px; 
	font-size: 1.4rem;
	font-weight: bold;
}
.l-header_nav_item:not(:first-child) {
	margin-left: 36px;
}
.l-header_nav_item.is-current {
	color: #82be28;
}
.l-header_nav_item a {
	text-decoration: none; 
	color: inherit;
}
.l-header_nav_item a:hover {
	color: #82be28;
}

.l-header_toggleSearch {
	position: absolute;
	top: 0;
	left: 0;
	width: 45px;
	height: 45px;
}
@media print, screen and (min-width: 1032px) {
	.l-header_toggleSearch {
		position: static;
	}
}

.l-header_toggleSearch_btn {
	position: relative;
	border: 0;
	width: 100%;
	height: 100%;
	background: none;
	font-size: 26px;
	font-size: 2.6rem; 

	-webkit-appearance: none;
}
.view-search .l-header_toggleSearch_btn {
	pointer-events: none;
}
@media print, screen and (min-width: 1032px) {
	.l-header_toggleSearch_btn {
		font-size: 2.4rem;
	}
}
.l-header_toggleSearch_btn .m-icon {
	overflow: hidden;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
}
.l-header_toggleSearch_btn .m-icon:before,
.l-header_toggleSearch_btn .m-icon:after {
	-webkit-transition: opacity 0.25s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.25s cubic-bezier(0.23, 1, 0.58, 1);
}
.l-header_toggleSearch_btn .m-icon:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_search_black.svg);
}
.l-header_toggleSearch_btn .m-icon:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_search.svg);
}
.l-header_toggleSearch_btn:hover .m-icon:before {
	opacity: 0;
}
.l-header_toggleSearch_btn:hover .m-icon:after {
	opacity: 1;
}

.l-header_toggleDrawer {
	position: absolute;
	top: 0;
	right: 0;
	width: 45px;
	height: 45px;
}
@media print, screen and (min-width: 1032px) {
	.l-header_toggleDrawer {
		display: none;
	}
}

.l-header_toggleDrawer_btn {
	position: relative;
	border: 0;
	width: 100%;
	height: 100%;
	background: none; 

	-webkit-appearance: none;
}

.l-header_toggleDrawer_line {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 3px;
	width: 17px;
	height: 3px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #000;
	font-size: 0;
}
.l-header_toggleDrawer_line:nth-child(1) {
	-webkit-transform: translateY(-7px);
	    -ms-transform: translateY(-7px);
	        transform: translateY(-7px);
}
.l-header_toggleDrawer_line:nth-child(3) {
	-webkit-transform: translateY(7px);
	    -ms-transform: translateY(7px);
	        transform: translateY(7px);
}
.view-nav .l-header_toggleDrawer_line:nth-child(1) {
	-webkit-transform: translateY(0) rotate(45deg);
	    -ms-transform: translateY(0) rotate(45deg);
	        transform: translateY(0) rotate(45deg);
}
.view-nav .l-header_toggleDrawer_line:nth-child(2) {
	opacity: 0;
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}
.view-nav .l-header_toggleDrawer_line:nth-child(3) {
	-webkit-transform: translateY(0) rotate(-45deg);
	    -ms-transform: translateY(0) rotate(-45deg);
	        transform: translateY(0) rotate(-45deg);
}

.l-header_toggleSitemap {
	width: 46px;
	height: 46px;
	background-color: #f0f0ee;
}
@media print, screen and (max-width: 1031px) {
	.l-header_toggleSitemap {
		display: none;
	}
}
@media print, screen and (min-width: 1032px) {
	.l-header_toggleSitemap {
		margin-left: 20px;
	}
}
@media print, screen and (min-width: 1100px) {
	.l-header_toggleSitemap {
		margin-left: 76px;
	}
}
.l-header_toggleSitemap:before {
	background-color: #f0f0ee;
}
.l-header_toggleSitemap .m-iconBadge_lines:before,
.l-header_toggleSitemap .m-iconBadge_lines:after {
	background-color: #000;
}
.l-header_toggleSitemap .m-iconBadge_lines:before {
	-webkit-transform: translateY(-8px);
	    -ms-transform: translateY(-8px);
	        transform: translateY(-8px);
}
.no-touchevents .l-header_toggleSitemap:hover {
	background-color: #000;
}

.l-header_toggleSitemap_label {
	position: absolute;
	top: 29px;
	left: 0;
	width: 100%;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1;
}
.l-header_toggleSitemap:hover .l-header_toggleSitemap_label {
	color: #fff;
}

.l-header_overlay {
	visibility: hidden;
	opacity: 0;
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.5s cubic-bezier(0.4, 0, 0.22, 1);
	transition: all 0.5s cubic-bezier(0.4, 0, 0.22, 1); 
	background: rgba(0, 0, 0, 0.15);
}
.view-gnav .l-header_overlay {
	visibility: visible;
	opacity: 1;
	-webkit-transition: all 0.7s cubic-bezier(0.4, 0, 0.22, 1);
	transition: all 0.7s cubic-bezier(0.4, 0, 0.22, 1);
}

/* globalNav ---------- */
.l-globalNav {
	position: absolute;
	z-index: -1;
	top: 37px;
	left: 0;
	width: 100%;
}

.l-globalNavInner {
	position: relative;
	border-radius: 0 0 30px 30px;
	height: 0;
	background: #fff;
}
.l-globalNavInner:before {
	content: "";
	display: block;
	opacity: 0;
	position: absolute;
	top: 35px;
	right: 16px;
	bottom: auto;
	left: 16px;
	margin: auto;
	border-radius: 4px;
	height: 4px;
	-webkit-transition: opacity 0.2s 0s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.2s 0s cubic-bezier(0.23, 1, 0.58, 1); 
	background-color: #000;
}
.view-gnav .l-globalNavInner:before {
	opacity: 1;
	-webkit-transition: opacity 0.3s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.3s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
}

.l-globalNav_item {
	visibility: hidden;
	position: absolute;
	top: 100px;
	right: 16px;
	left: 16px;
	margin: 0 auto;
	padding: 0 68px;
}
.l-globalNav_item.is-visible {
	visibility: visible;
}

.l-globalNav_heading {
	margin: 0 0 34px;
	text-align: center;
}
.l-globalNav_heading a {
	display: inline-block;
	position: relative;
	text-decoration: none; 
	color: inherit;
}
.l-globalNav_heading a:hover {
	color: #82be28;
}
.l-globalNav_heading a .m-icon {
	position: absolute;
	top: 0;
	right: -45px;
	bottom: 0;
	margin: auto;
	font-size: 22px;
	font-size: 2.2rem;
}

.l-globalNav_title {
	font-size: 50px;
	font-size: 5rem;
	line-height: 1;
}

.l-globalNav_title_small {
	margin-top: 6px;
	font-size: 18px;
	font-size: 1.8rem;
	font-weight: bold;
	line-height: 1;
}

.l-globalNav_list .m-linkList_item .m-icon {
	font-size: 22px;
	font-size: 2.2rem;
}

.l-globalNav_list {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 0 -20px; 

	-webkit-box-flex: 1; 

	-webkit-flex: 1; 

	    -ms-flex: 1; 

	        flex: 1;
	-webkit-box-pack: start;
	-webkit-justify-content: flex-start;
	    -ms-flex-pack: start;
	        justify-content: flex-start;
	-webkit-flex-wrap: wrap;
	    -ms-flex-wrap: wrap;
	        flex-wrap: wrap;
}

.l-globalNav_list li {
	margin: 0 20px; 
	width: calc(33.333% - 40px);
}

.l-globalNav_list a {
	padding-top: 18px;
	padding-bottom: 18px;
	font-weight: bold;
}

.l-globalNav_contact {
	position: absolute;
	top: -40px;
	right: 16px;
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold;
}

/* ------------------------
	drawer
------------------------ */
.l-drawer_viewport {
	position: fixed;
	z-index: 3;
	top: 0;
	right: 0;
	width: 275px;
	height: 100%;
	min-height: 100vh;
	-webkit-transform: translateX(275px);
	    -ms-transform: translateX(275px);
	        transform: translateX(275px);
}

.l-drawer_container {
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.l-drawer_directory {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

.l-drawer_directory-lv1 {
	z-index: 13;
	background: #f0f0ee;
}

.l-drawer_directory-lv2 {
	z-index: 12;
	background: #d0d0d0;
}

.l-drawer_directory_item {
	visibility: hidden;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	pointer-events: none;
}
.l-drawer_directory-lv1 .l-drawer_directory_item {
	visibility: visible;
	z-index: 2;
	pointer-events: auto;
}
.l-drawer_directory-lv1 .l-drawer_directory_item .l-drawer_directoryInner {
	overflow: scroll;

	-webkit-overflow-scrolling: touch;
}

.l-drawer_directory_item.is-active {
	visibility: visible;
	z-index: 2;
	pointer-events: auto;
}
.l-drawer_directory_item.is-active .l-drawer_directoryInner {
	overflow: scroll;

	-webkit-overflow-scrolling: touch;
}

.l-drawer_directory-lv3 {
	z-index: 11;
	background: #878787;
	color: #fff;
}

.l-drawer_directoryInner {
	overflow: hidden; 
	padding: 0 10px 75px 20px;
	height: 100%;
}

.l-drawer_directory_header {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	position: relative;
	height: 160px; 

	-webkit-box-align: center; 

	-webkit-align-items: center; 

	    -ms-flex-align: center; 

	        align-items: center;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	    -ms-flex-pack: center;
	        justify-content: center;
}

.l-drawer_directory_heading {
	padding: 0 0 24px;
	text-align: center;
	line-height: 1.6; 

	-webkit-box-flex: 1; 

	-webkit-flex: 1; 

	    -ms-flex: 1; 

	        flex: 1;
}
.l-drawer_directory-lv1 .l-drawer_directory_heading {
	padding: 0;
}
.l-drawer_directory_heading a {
	color: inherit;
}
.l-drawer_directory_heading a:hover {
	text-decoration: none;
}

.l-drawer_directory_title {
	font-size: 20px;
	font-size: 2rem;
	font-weight: bold;
}
.l-drawer_directory_title.font-ca {
	font-size: 27px;
	font-size: 2.7rem;
	font-weight: normal;
	line-height: 1;
}

.l-drawer_directory_title_small {
	margin: 6px 0 0;
	font-weight: bold;
}

.l-drawer_back {
	position: absolute;
	bottom: 20px;
	left: 8px;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: bold;
}
.l-drawer_back .m-iconLink-back:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_back_black.svg);
}
.l-drawer_directory-lv3 .l-drawer_back .m-iconLink-back {
	color: #fff;
}
.l-drawer_directory-lv3 .l-drawer_back .m-iconLink-back:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_back_white.svg);
}

.l-drawer_list {
	padding: 0 0 6px;
}
.l-drawer_list li {
	opacity: 0;
	position: relative;
	border-top: 1px solid #fff;
	-webkit-transition: opacity 0.3s 0s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0s 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.3s 0s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0s 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.3s 0s cubic-bezier(0.23, 1, 0.58, 1), transform 0s 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.3s 0s cubic-bezier(0.23, 1, 0.58, 1), transform 0s 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0s 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: translateY(-15px);
	    -ms-transform: translateY(-15px);
	        transform: translateY(-15px);
	font-size: 15px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.6;
}
.l-drawer_directory-lv1 .l-drawer_list li {
	opacity: 1;
	-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	        transform: translateY(0);
}
.l-drawer_directory-lv2 .l-drawer_list li {
	border-color: #e3e3e3;
}
.l-drawer_directory-lv3 .l-drawer_list li {
	border-color: #a3a3a3;
}
.l-drawer_list li a,
.l-drawer_list li .l-drawer_next {
	display: block;
	cursor: pointer;
	color: inherit;
}
.l-drawer_list li a {
	padding: 13px 10px 13px 10px;
}
.l-drawer_list li a:hover {
	text-decoration: none;
}
.l-drawer_list li a.is-current {
	background-color: #82be28;
	color: #fff;
}
.l-drawer_list li .l-drawer_next {
	padding: 13px 36px 13px 10px;
}
.l-drawer_list li .m-icon {
	position: absolute;
	top: 0;
	right: 5px;
	bottom: 0;
	margin: auto;
	width: 1em;
	height: 1em;
	font-size: 20px;
	font-size: 2rem;
}
.l-drawer_list li .l-drawer_next .m-icon-arrow_right:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_black.svg);
}
.l-drawer_directory-lv3 .l-drawer_list li .l-drawer_next .m-icon-arrow_right:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_white.svg);
}
.l-drawer_directory.is-active .l-drawer_list li {
	opacity: 1;
	-webkit-transition: all 0.4s 0.35s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s 0.35s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: translateY(0); 
	    -ms-transform: translateY(0); 
	        transform: translateY(0);
}

/* ------------------------
	printHeader
------------------------ */
.l-printHeader {
	padding: 20px 0;
}
@media print {
	.l-printHeader {
		display: none;
	}
}

.l-printHeader_function {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;

	-webkit-box-pack: end;

	-webkit-justify-content: flex-end;

	    -ms-flex-pack: end;

	        justify-content: flex-end;
}
.l-printHeader_function li {
	margin-left: 28px;
}

.l-printHeader_logo {
	overflow: hidden;
	margin: 0 0 42px;
}

.l-printHeader_logo_ca {
	float: left;
}

.l-printHeader_logo_service {
	float: right;
}

/* ------------------------
	main
------------------------ */
.l-pageBody {
	position: relative;
	z-index: 1;
	background: #f0f0ee;
}

/* categoryHero ---------- */
body.page-categoryTop:before {
	opacity: 0;
	-webkit-transition: opacity 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.4s cubic-bezier(0.23, 1, 0.58, 1);
}

body.page-categoryTop.is-loaded:before {
	opacity: 1;
}

.l-categoryHero {
	position: relative;
	padding: 120px 0 0; 
	height: 280px;
}
@media print, screen and (min-width: 768px) {
	.l-categoryHero {
		padding-top: 166px; 
		height: 440px;
	}
}

.l-categoryHero-fluid {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	padding-top: 0; 
	height: 100vh;

	-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;
}
@media print, screen and (min-width: 768px) {
	.l-categoryHero-fluid {
		padding-top: 35px;
	}
}

.l-categoryHero_title {
	opacity: 0;
	position: relative;
	width: 100%;
	height: 95px;
	-webkit-transition: opacity 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1), opacity 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: transform 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1), opacity 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.4s 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: translateY(10px); 
	    -ms-transform: translateY(10px); 
	        transform: translateY(10px);
}
.is-loaded .l-categoryHero_title {
	opacity: 1; 
	-webkit-transform: translateY(0); 
	    -ms-transform: translateY(0); 
	        transform: translateY(0);
}
.l-categoryHero_title:before {
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	top: 10px;
	right: 0;
	bottom: 10px;
	left: 0;
	margin: auto;
	width: 0;
	background: rgba(0, 0, 0, 0.3);
}
@media print, screen and (min-width: 768px) {
	.l-categoryHero_title {
		height: 180px;
	}
}

.l-categoryHero_title_label {
	display: block;
	overflow: hidden; 
	position: relative;
	z-index: 2;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	white-space: nowrap;
	text-indent: 100%;
}

/* pageHeader ---------- */
.l-pageHeader {
	padding: 80px 20px 40px;
	background: #fff;
	text-align: center;
}
@media print, screen and (min-width: 768px) {
	.l-pageHeader {
		padding-top: 116px;
		padding-bottom: 60px;
	}
}

.l-pageHeader_title {
	position: relative;
	padding: 0 0 16px;
	font-size: 20px;
	font-size: 2rem;
	line-height: 1.6;
}
.l-pageHeader_title:after {
	content: "";
	display: block;
	position: absolute;
	top: auto;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 4px; 
	width: 48px;
	height: 4px;
	background: #000;
}
@media print, screen and (min-width: 768px) {
	.l-pageHeader_title {
		padding-bottom: 20px;
		font-size: 3.4rem;
	}
	.l-pageHeader_title:after {
		width: 60px;
	}
}

.l-pageHeader_subTitle {
	font-size: 14px;
	font-size: 1.4rem;
	font-weight: bold;
}
@media print, screen and (min-width: 768px) {
	.l-pageHeader_subTitle {
		font-size: 2rem;
	}
}

/* localNav ---------- */
.l-localNav {
	padding: 42px 0;
	background: #fff;
}
@media print, screen and (min-width: 768px) {
	.l-localNav {
		padding: 84px 0;
	}
}

/* ------------------------
	breadcrumb
------------------------ */
.l-breadcrumb {
	padding: 16px 0;
	min-height: 0%;
	background: #fff; 

	-webkit-box-flex: 1; 

	-webkit-flex: 1 0 auto; 

	    -ms-flex: 1 0 auto; 

	        flex: 1 0 auto;
}
.l-breadcrumb a {
	color: inherit;
}
.l-breadcrumb a:hover {
	text-decoration: none; 
	color: #82be28;
}

.l-breadcrumb_list {
	letter-spacing: -1em;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 2.25;
}

.l-breadcrumb_list_item {
	display: inline-block;
	position: relative;
	margin-right: 12px; 
	letter-spacing: normal;
}
.l-breadcrumb_list_item:not(:last-child):after {
	content: "";
	display: inline-block;
	margin: -0.6em 0 -0.4em 0.6em;
	width: 1em;
	height: 1em;
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1em 1em;
	vertical-align: middle;
	font-size: 14px;
	font-size: 1.4rem;
}

.l-breadcrumb_list_item-top a span {
	font-size: 0;
}

.l-breadcrumb_list_item-top a:after {
	content: "";
	display: inline-block;
	margin: -0.6em 0 -0.4em 0;
	width: 1em;
	height: 1em;
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_home.svg);
	background-repeat: no-repeat;
	background-position: center;
	background-size: 1em 1em;
	vertical-align: middle;
	font-size: 14px;
	font-size: 1.4rem;
}
@media print, screen and (min-width: 768px) {
	.l-breadcrumb_list_item-top a:after {
		font-size: 1.8rem;
	}
}

/*------------------------
        TOP NAVI
------------------------*/
.l-utilityNav {
	visibility: visible;
	opacity: 1;
	position: fixed;
	z-index: 1000;
	right: 20px;
	bottom: 25px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
}
@media print, screen and (min-width: 768px) {
	.l-utilityNav {
		right: 30px;
		bottom: 30px;
	}
}
.view-nav .l-utilityNav {
	visibility: hidden; 
	opacity: 0;
}

.l-utilityNav_item {
	visibility: hidden;
	opacity: 0;
	position: relative;
	border-radius: 50%;
	width: 47px;
	height: 47px;
	-webkit-transition: all 0.3s cubic-bezier(0.175, 0.885, 0.47, 1.26);
	transition: all 0.3s cubic-bezier(0.175, 0.885, 0.47, 1.26); 
	-webkit-transform: translateY(20px); 
	    -ms-transform: translateY(20px); 
	        transform: translateY(20px);
	background: #2cbafc;
	font-size: 0;
}
.is-visible .l-utilityNav_item {
	visibility: visible;
	opacity: 1;
	-webkit-transform: translateY(0);
	    -ms-transform: translateY(0);
	        transform: translateY(0);
}
.is-visible .l-utilityNav_item:nth-child(2) {
	-webkit-transition-delay: 0.1s;
	        transition-delay: 0.1s;
}
.l-utilityNav_item:not(:first-child) {
	margin-top: 9px;
}
.l-utilityNav_item a {
	display: block;
	position: relative;
	height: 100%;
}
@media print, screen and (min-width: 768px) {
	.l-utilityNav_item {
		width: 62px;
		height: 62px;
	}
	.l-utilityNav_item:not(:first-child) {
		margin-top: 16px;
	}
}

/* AI messenger */
.l-utilityNav_item-pagetop:before {
	content: "";
	display: block;
	opacity: 1;
	position: absolute;
	z-index: 1;
	top: 3px;
	right: 3px;
	bottom: 3px;
	left: 3px;
	margin: auto;
	border-radius: 50%;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(1); 
	    -ms-transform: scale(1); 
	        transform: scale(1);
	background: #fff;
}

.l-utilityNav_item-pagetop a {
	overflow: hidden;
}

.l-utilityNav_item-pagetop .m-icon {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%);
	font-size: 28px;
	font-size: 2.8rem;
}
@media print, screen and (min-width: 768px) {
	.l-utilityNav_item-pagetop .m-icon {
		font-size: 3.6rem;
	}
}

.no-touchevents .l-utilityNav_item-pagetop:hover:before,
.touchevents .l-utilityNav_item-pagetop.is-touched:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.45s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.45s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.45s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.45s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.45s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(0); 
	    -ms-transform: scale(0); 
	        transform: scale(0);
}

.no-touchevents .l-utilityNav_item-pagetop:hover .m-icon:before,
.touchevents .l-utilityNav_item-pagetop.is-touched .m-icon:before {
	opacity: 0;
}

.no-touchevents .l-utilityNav_item-pagetop:hover .m-icon:after,
.touchevents .l-utilityNav_item-pagetop.is-touched .m-icon:after {
	opacity: 1;
}

/* ------------------------
	footer
------------------------ */
footer{
	background:#131723;
	padding:60px;
	color:#fff;
	text-align:center;
}

footer .sns{
	width:120px;
	margin:0 auto 15px auto;
}

footer .sns dt{
	margin-bottom:3px;
}

footer .sns dd{
	float:left;
	width:35px;
	margin-left:16px;
}
/* ------------------------
	sitemap
------------------------ */
.sitemap_headFunction {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	margin: 0 0 28px; 

	-webkit-box-align: center; 

	-webkit-align-items: center; 

	    -ms-flex-align: center; 

	        align-items: center;
}
@media print, screen and (min-width: 600px) {
	.sitemap_headFunction {
		margin-bottom: 44px;
	}
}

.sitemap_contact {
	margin: 0 20px 0 0;
	font-weight: bold;
	line-height: 1.6;
}
.sitemap_contact a {
	margin-left: -0.3em;
	padding: 6px 0 6px 1.9em; 
	color: inherit;
}
.sitemap_contact a:hover {
	color: #82be28;
}
.sitemap_contact a.is-current {
	padding-right: 10px;
	background: #82be28;
	color: #000;
}
.sitemap_contact a.is-current:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_mail_black.svg);
}
@media print, screen and (min-width: 600px) {
	.sitemap_contact {
		margin-right: 32px;
	}
}

.sitemap_lang {
	line-height: 1;
}
.sitemap_lang a {
	display: inline-block;
	position: relative;
	z-index: 1;
	padding: 8px 18px 7px;
	border: 3px solid #82be28;
	border-radius: 30px;
	-webkit-transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1);
	transition: background-color 0.1s 0.15s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #fff;
	text-decoration: none;
	color: #82be28;
}
@media print, screen and (min-width: 768px) {
	.sitemap_lang a {
		padding: 10px 18px 9px;
	}
}
.sitemap_lang a:before {
	content: "";
	display: block;
	opacity: 1;
	position: absolute;
	z-index: -1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 30px;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	-webkit-transform: scale(1);
	    -ms-transform: scale(1);
	        transform: scale(1);
	background: #fff;

	will-change: transform;
}
.no-touchevents .sitemap_lang a:hover,
.touchevents .sitemap_lang a.is-touched {
	-webkit-transition: background-color 0s;
	transition: background-color 0s; 
	background-color: #82be28;
	color: #fff;
}
.no-touchevents .sitemap_lang a:hover:before,
.touchevents .sitemap_lang a.is-touched:before {
	opacity: 0;
	-webkit-transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.35s cubic-bezier(0.23, 1, 0.58, 1), transform 0.5s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.5s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(0); 
	    -ms-transform: scale(0); 
	        transform: scale(0);
}
.l-sitemap .sitemap_lang a {
	border-color: #fff;
	color: #fff;
}
.l-sitemap .sitemap_lang a:before {
	background-color: #000;
}
.no-touchevents .l-sitemap .sitemap_lang a:hover,
.touchevents .l-sitemap .sitemap_lang a.is-touched {
	background-color: #fff;
	color: #000;
}

.sitemap_row {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	    -ms-flex-direction: column;
	        flex-direction: column;
}

.sitemap_section {
	margin: 24px 0 0;
	padding: 28px 0 0;
	border-top: 2px solid #f0f0ee;
}
.sitemap_col:first-child .sitemap_section:first-child {
	margin: 0;
	padding: 0;
	border-top: 0;
}

@media print, screen and (min-width: 600px) {
	.sitemap_row {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-direction: row;
		    -ms-flex-direction: row;
		        flex-direction: row;
		margin: 0 -20px; 

		-webkit-flex-wrap: wrap; 

		    -ms-flex-wrap: wrap; 

		        flex-wrap: wrap;
	}
	.sitemap_col {
		padding: 0 20px; 
		width: 50%;
	}
	.sitemap_col:nth-child(2) .sitemap_section:first-child {
		margin: 0;
		padding: 0;
		border-top: 0;
	}
}

@media print, screen and (min-width: 1032px) {
	.sitemap_row {
		margin: 0 -24px;
	}
	.sitemap_col {
		padding: 0 24px; 
		width: 25%;
	}
	[lang="en"] .sitemap_col {
		width: 33.333%;
	}
	.sitemap_section {
		margin-top: 38px;
		padding-top: 42px;
	}
	.sitemap_section:first-child {
		margin: 0;
		padding: 0;
		border-top: 0;
	}
}

.sitemap_heading {
	margin: 0 0 14px;
}

.sitemap_title {
	font-size: 32px;
	font-size: 3.2rem;
	line-height: 32px;
	line-height: 3.2rem;
}

.sitemap_title-way {
	font-size: 27px;
	font-size: 2.7rem;
}

.sitemap_title_small {
	margin: 2px 0 0;
	font-size: 12px;
	font-size: 1.2rem;
	font-weight: bold;
}

.sitemap_list a {
	text-decoration: none; 
	color: inherit;
}
.sitemap_list a:hover {
	color: #82be28;
}

.sitemap_list > li {
	margin: 4px 0 0;
	font-weight: bold;
	line-height: 1.6;
}
.sitemap_list > li > a {
	display: inline-block;
	overflow: hidden;
	margin-left: -0.3em;
	padding: 6px 0 6px 1.6em;
	vertical-align: top;
	text-indent: -1.6em;
}
.sitemap_list > li > a:before {
	content: "";
	display: inline-block;
	margin: -0.8em 0.3em -0.6em -0.1em;
	width: 1.4em;
	height: 1.4em;
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right.svg);
	background-repeat: no-repeat;
	background-position: center center;
	vertical-align: middle;
	line-height: 0;
}
.sitemap_list > li > a.is-current {
	padding-right: 10px;
	background-color: #82be28;
	color: #000;
}
.sitemap_list > li > a.is-current:before {
	background-image: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_black.svg);
}
.sitemap_list > li.u-font-xsmall a:before {
	margin-right: 0.6em;
}
@media print, screen and (min-width: 768px) {
	.sitemap_list > li.u-font-xsmall a:before {
		margin-left: 0.1em;
	}
}
.sitemap_list > li ul {
	margin: 0 0 20px;
	padding-left: 1em;
}
.sitemap_list > li ul li {
	margin: 6px 0 0;
	font-size: 13px;
	font-size: 1.3rem;
	font-weight: normal;
}
@media print, screen and (min-width: 768px) {
	.sitemap_list > li ul li {
		font-size: 1.4rem;
	}
}
.sitemap_list > li ul li a {
	display: inline-block;
	position: relative;
	padding: 2px 0 2px 24px;
}
.sitemap_list > li ul li a:before {
	content: "";
	display: block;
	position: absolute;
	top: 0.85em;
	left: 0.3em;
	width: 12px;
	height: 2px;
	background: #f0f0ee;
}
.sitemap_list > li ul li a.is-current {
	padding-right: 8px;
	background-color: #82be28;
	color: #000;
	font-weight: bold;
}
.sitemap_list > li ul li a.is-current:before {
	background-color: #000;
}

.l-sitemap {
	visibility: hidden;
	opacity: 0;
	position: fixed;
	z-index: 3;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #000;
}
.view-sitemap .l-sitemap {
	visibility: visible; 
	opacity: 1;
}

.l-sitemap_close {
	position: fixed;
	z-index: 2;
	top: 35px;
	right: 36px;
}

.l-sitemapInner {
	overflow: auto;
	position: relative;
	z-index: 1;
	padding: 84px 0 126px; 
	height: 100%;
}

.l-sitemap .sitemap {
	color: #fff;
}

.l-sitemap .sitemap_section {
	border-color: #313130;
}

.l-search {
	visibility: hidden;
	opacity: 0;
	position: fixed;
	z-index: 3;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1); 
	background: #fff;
}
.view-search .l-search {
	visibility: visible; 
	opacity: 1;
}

.l-search_close {
	position: fixed;
	z-index: 2;
	top: 19px;
	left: 19px;
}
@media print, screen and (min-width: 768px) {
	.l-search_close {
		top: 35px;
		right: 36px;
		left: auto;
	}
}

.l-search_heading {
	padding: 64px 0 0;
	text-align: center;
}

.l-search_title {
	font-size: 42px;
	font-size: 4.2rem;
	line-height: 1;
}

.l-search_title_small {
	font-weight: bold;
}

.l-search_body {
	padding: 28px 20px 64px;
}

@media print, screen and (min-width: 768px) {
	.l-search_title {
		font-size: 6rem;
	}
	.l-search_body {
		margin: 0 auto;
		padding-top: 56px; 
		max-width: 992px;
	}
}

/* --------------------------------
	search
-------------------------------- */
html .mf_finder_searchBox {
	margin-bottom: 2em;
	background: transparent;
}

.mf_finder_searchBox_items_wrapper {
	margin-bottom: 1em;
}

.mf_finder_searchBox_items {
	padding: 0;
}

html:lang(ja) .mf_finder_searchBox .mf_finder_searchBox_query_input,
html :lang(ja) .mf_finder_searchBox .mf_finder_searchBox_query_input,
html:lang(en) .mf_finder_searchBox .mf_finder_searchBox_query_input,
html :lang(en) .mf_finder_searchBox .mf_finder_searchBox_query_input {
	border: 0;
	border-bottom: 2px solid #000;
	font-size: 16px;
	font-size: 1.6rem;
}
@media print, screen and (min-width: 640px) {
	html:lang(ja) .mf_finder_searchBox .mf_finder_searchBox_query_input,
	html :lang(ja) .mf_finder_searchBox .mf_finder_searchBox_query_input,
	html:lang(en) .mf_finder_searchBox .mf_finder_searchBox_query_input,
	html :lang(en) .mf_finder_searchBox .mf_finder_searchBox_query_input {
		background-size: 300px auto;
	}
}

.mf_finder_searchBox_submit {
	padding-right: 0; 
	border-radius: 0;
	background: none;
}
.mf_finder_searchBox_submit:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_search_black.svg); 
	display: inline-block;
	width: 2em;
	height: 2em;
	letter-spacing: normal;
	line-height: 0;
}
@media print, screen and (min-width: 640px) {
	.mf_finder_searchBox_submit:before {
		margin-left: 0; 
		width: 2.4em;
		height: 2.4em;
	}
}

.mf_finder_searchBox_useSelects .mf_finder_searchBox_selects .mf_finder_searchBox_category {
	padding-left: 20px;
}
@media print, screen and (min-width: 640px) {
	.mf_finder_searchBox_useSelects .mf_finder_searchBox_selects .mf_finder_searchBox_category {
		margin-right: 1em;
		padding-left: 0;
	}
}

.mf_finder_searchBox_useSelects .mf_finder_searchBox_selects .mf_finder_searchBox_category:before {
	top: 3px;
	left: 0;
}

.mf_finder_searchBox_selects label {
	margin-right: 0.5em;
	margin-bottom: 1em;
}
.mf_finder_searchBox_selects label:after {
	top: 0;
	bottom: 0;
	margin: auto;
	height: 9px;
	line-height: 1;
}

.mf_finder_searchBox_selects select {
	font-size: 16px;
	font-size: 1.6rem;
}

@media print, screen and (max-width: 480px) {
	.mf_finder_searchBox_useToggle_show .mf_finder_searchBox_misc label select {
		width: auto;
	}
}

@media print, screen and (max-width: 480px) {
	.mf_finder_searchBox_useToggle_show .mf_finder_searchBox_misc label:after {
		top: 4px;
	}
}

.mf_finder_searchBox_selects label:before {
	margin-right: 8px;
	margin-left: 0;
	width: 12px;
	width: 1.2rem;
	font-size: 12px;
	font-size: 1.2rem;
}

.mf_finder_searchBox_useSelects .mf_finder_searchBox_category_select {
	width: 100%;
}
@media print, screen and (min-width: 640px) {
	.mf_finder_searchBox_useSelects .mf_finder_searchBox_category_select {
		width: auto;
	}
}

.mf_finder_organic_header_wrapper {
	margin-left: 0;
}

@media print, screen and (min-width: 640px) {
	html:lang(ja) .mf_finder_organic_header,
	html :lang(ja) .mf_finder_organic_header,
	html:lang(en) .mf_finder_organic_header,
	html :lang(en) .mf_finder_organic_header {
		-webkit-box-orient: horizontal;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: row-reverse;
		    -ms-flex-direction: row-reverse;
		        flex-direction: row-reverse;
	}
}

html:lang(ja) .mf_finder_query,
html :lang(ja) .mf_finder_query,
html:lang(en) .mf_finder_query,
html :lang(en) .mf_finder_query {
	font-size: 16px;
	font-size: 1.6rem;
}
html:lang(ja) .mf_finder_query:before,
html :lang(ja) .mf_finder_query:before,
html:lang(en) .mf_finder_query:before,
html :lang(en) .mf_finder_query:before {
	font-size: 16px;
	font-size: 1.6rem;
}
html:lang(ja) .mf_finder_query:after,
html :lang(ja) .mf_finder_query:after,
html:lang(en) .mf_finder_query:after,
html :lang(en) .mf_finder_query:after {
	font-size: 16px;
	font-size: 1.6rem;
}

html:lang(ja) .mf_finder_organic_total,
html :lang(ja) .mf_finder_organic_total,
html:lang(ja) .mf_finder_organic_range_from,
html :lang(ja) .mf_finder_organic_range_from,
html:lang(ja) .mf_finder_organic_range_to,
html :lang(ja) .mf_finder_organic_range_to,
html:lang(en) .mf_finder_organic_total,
html :lang(en) .mf_finder_organic_total,
html:lang(en) .mf_finder_organic_range_from,
html :lang(en) .mf_finder_organic_range_from,
html:lang(en) .mf_finder_organic_range_to,
html :lang(en) .mf_finder_organic_range_to {
	font-size: inherit;
}
html:lang(ja) .mf_finder_organic_total:before,
html :lang(ja) .mf_finder_organic_total:before,
html:lang(ja) .mf_finder_organic_range_from:before,
html :lang(ja) .mf_finder_organic_range_from:before,
html:lang(ja) .mf_finder_organic_range_to:before,
html :lang(ja) .mf_finder_organic_range_to:before,
html:lang(en) .mf_finder_organic_total:before,
html :lang(en) .mf_finder_organic_total:before,
html:lang(en) .mf_finder_organic_range_from:before,
html :lang(en) .mf_finder_organic_range_from:before,
html:lang(en) .mf_finder_organic_range_to:before,
html :lang(en) .mf_finder_organic_range_to:before {
	font-size: inherit;
}
html:lang(ja) .mf_finder_organic_total:after,
html :lang(ja) .mf_finder_organic_total:after,
html:lang(ja) .mf_finder_organic_range_from:after,
html :lang(ja) .mf_finder_organic_range_from:after,
html:lang(ja) .mf_finder_organic_range_to:after,
html :lang(ja) .mf_finder_organic_range_to:after,
html:lang(en) .mf_finder_organic_total:after,
html :lang(en) .mf_finder_organic_total:after,
html:lang(en) .mf_finder_organic_range_from:after,
html :lang(en) .mf_finder_organic_range_from:after,
html:lang(en) .mf_finder_organic_range_to:after,
html :lang(en) .mf_finder_organic_range_to:after {
	font-size: inherit;
}

.mf_finder_organic_doc_contents {
	word-break: break-all;
}

.mf_finder_organic_doc {
	padding: 1.5em 0;
}
.mf_finder_organic_doc:hover {
	background-color: transparent;
}
@media print, screen and (min-width: 640px) {
	.mf_finder_organic_doc {
		padding-top: 2em;
		padding-bottom: 2em;
	}
}

.mf_finder_organic_doc_img img {
	border: 2px solid #f0f0ee;
	border-radius: 20px;
}

.mf_finder_organic_doc_title_wrapper {
	margin-bottom: 0.6em;
}
@media print, screen and (min-width: 640px) {
	.mf_finder_organic_doc_title_wrapper {
		font-size: 1.8rem;
		line-height: 1.6;
	}
}

@media print, screen and (max-width: 639px) {
	.mf_finder_organic_doc_body {
		height: 3rem;
	}
}

@media print, screen and (min-width: 640px) {
	.mf_finder_organic_doc_body {
		font-size: 1.4rem;
	}
}

.mf_finder_organic_doc_url {
	margin-top: 0.8em;
	color: #82be28;
	font-size: 14px;
	font-size: 1.4rem;
}
.mf_finder_organic_doc_url:before {
	display: none;
}

.mf_finder_organic_pager {
	margin: 2em 0 0;
}

.mf_finder_pager_items {
	font-weight: bold; 

	-webkit-box-align: center; 

	-webkit-align-items: center; 

	    -ms-flex-align: center; 

	        align-items: center;
}

.mf_finder_pager_items li {
	z-index: 1;
}

.mf_finder_pager_items li a {
	background-color: transparent; 
	color: #000;
}
.mf_finder_pager_items li a:hover {
	text-decoration: underline; 
	color: #82be28;
}

.mf_finder_pager_items .mf_finder_pager_item_first {
	display: none;
}

.mf_finder_pager_items .mf_finder_pager_item_first,
.mf_finder_pager_items .mf_finder_pager_item_prev,
.mf_finder_pager_items .mf_finder_pager_item_next {
	position: relative;
	margin: 0 0.1em; 
	border: 3px solid #82be28;
	border-radius: 50%;
	width: 38px;
	height: 38px;
	background: #82be28;
	font-size: 20px;
	font-size: 2rem;
}
.mf_finder_pager_items .mf_finder_pager_item_first:before,
.mf_finder_pager_items .mf_finder_pager_item_prev:before,
.mf_finder_pager_items .mf_finder_pager_item_next:before {
	content: "";
	display: block;
	opacity: 1;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	border-radius: 50%;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(1); 
	    -ms-transform: scale(1); 
	        transform: scale(1);
	background: #fff;
}
.mf_finder_pager_items .mf_finder_pager_item_first a,
.mf_finder_pager_items .mf_finder_pager_item_prev a,
.mf_finder_pager_items .mf_finder_pager_item_next a {
	display: block;
	position: relative;
	padding: 0; 
	height: 100%;
	background-color: transparent;
	text-decoration: none;
}
.mf_finder_pager_items .mf_finder_pager_item_first a span,
.mf_finder_pager_items .mf_finder_pager_item_prev a span,
.mf_finder_pager_items .mf_finder_pager_item_next a span {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 1em;
	height: 1em;
	-webkit-transform: translate(-50%, -50%);
	    -ms-transform: translate(-50%, -50%);
	        transform: translate(-50%, -50%); 
	letter-spacing: -1em;
	color: #82be28;
	line-height: 0;
}
.mf_finder_pager_items .mf_finder_pager_item_first a span:before,
.mf_finder_pager_items .mf_finder_pager_item_first a span:after,
.mf_finder_pager_items .mf_finder_pager_item_prev a span:before,
.mf_finder_pager_items .mf_finder_pager_item_prev a span:after,
.mf_finder_pager_items .mf_finder_pager_item_next a span:before,
.mf_finder_pager_items .mf_finder_pager_item_next a span:after {
	content: "";
	display: inline-block;
	width: 1em;
	height: 1em;
	vertical-align: text-top;
	letter-spacing: normal;
}
.mf_finder_pager_items .mf_finder_pager_item_first a span:after,
.mf_finder_pager_items .mf_finder_pager_item_prev a span:after,
.mf_finder_pager_items .mf_finder_pager_item_next a span:after {
	opacity: 0; 
	position: absolute;
	top: 0;
	left: 0;
}
@media print, screen and (min-width: 768px) {
	.mf_finder_pager_items .mf_finder_pager_item_first,
	.mf_finder_pager_items .mf_finder_pager_item_prev,
	.mf_finder_pager_items .mf_finder_pager_item_next {
		width: 42px;
		height: 42px;
		font-size: 2.4rem;
	}
}
.mf_finder_pager_items .mf_finder_pager_item_first:hover:before,
.mf_finder_pager_items .mf_finder_pager_item_prev:hover:before,
.mf_finder_pager_items .mf_finder_pager_item_next:hover:before {
	opacity: 0;
	-webkit-transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), transform 0.6s cubic-bezier(0.23, 1, 0.58, 1);
	transition: opacity 0.45s cubic-bezier(0.23, 1, 0.58, 1), transform 0.6s cubic-bezier(0.23, 1, 0.58, 1), -webkit-transform 0.6s cubic-bezier(0.23, 1, 0.58, 1); 
	-webkit-transform: scale(0); 
	    -ms-transform: scale(0); 
	        transform: scale(0);
}
.mf_finder_pager_items .mf_finder_pager_item_first:hover a span:before,
.mf_finder_pager_items .mf_finder_pager_item_prev:hover a span:before,
.mf_finder_pager_items .mf_finder_pager_item_next:hover a span:before {
	opacity: 0;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
}
.mf_finder_pager_items .mf_finder_pager_item_first:hover a span:after,
.mf_finder_pager_items .mf_finder_pager_item_prev:hover a span:after,
.mf_finder_pager_items .mf_finder_pager_item_next:hover a span:after {
	opacity: 1;
	-webkit-transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.3s cubic-bezier(0.23, 1, 0.58, 1);
}

.mf_finder_pager_items .mf_finder_pager_item_first a span:before,
.mf_finder_pager_items .mf_finder_pager_item_prev a span:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left.svg);
}

.mf_finder_pager_items .mf_finder_pager_item_first a span:after,
.mf_finder_pager_items .mf_finder_pager_item_prev a span:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_left_white.svg);
}

.mf_finder_pager_items .mf_finder_pager_item_next a span:before {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right.svg);
}

.mf_finder_pager_items .mf_finder_pager_item_next a span:after {
	content: url(https://d2utiq8et4vl56.cloudfront.net/files/user/img/common/icon_arrow_right_white.svg);
}

.mf_finder_pager_items li {
	position: relative;
	margin: 0 1.2em;
}

.mf_finder_pager_item_current,
.mf_finder_pager_items li a {
	padding: 0;
}

.mf_finder_pager_item_current span {
	display: block;
	color: #fff;
}
.mf_finder_pager_item_current span:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: -16px;
	right: -16px;
	bottom: -16px;
	left: -16px;
	margin: auto;
	border-radius: 50%; 
	width: 32px;
	height: 32px;
	background: #82be28;
}
@media print, screen and (min-width: 768px) {
	.mf_finder_pager_item_current span:before {
		width: 42px;
		height: 42px;
	}
}

/* ------------------------
	libs
------------------------ */
/* slick */
.slick-slider {
	display: block;
	box-sizing: border-box;
	position: relative;

	-webkit-user-select: none;
	   -moz-user-select: none;
	    -ms-user-select: none;
	        user-select: none;
	-webkit-touch-callout: none;
	 -khtml-user-select: none;
	-ms-touch-action: pan-y;
	    touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list {
	display: block;
	overflow: hidden;
	position: relative;
	margin: 0;
	padding: 0;
}

.slick-list:focus {
	outline: none;
}

.slick-list.dragging {
	cursor: pointer;
	cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	    -ms-transform: translate3d(0, 0, 0);
	        transform: translate3d(0, 0, 0);
}

.slick-track {
	display: block; 
	position: relative;
	top: 0;
	left: 0;
}

.slick-track:before,
.slick-track:after {
	content: ""; 
	display: table;
}

.slick-track:after {
	clear: both;
}

.slick-loading .slick-track {
	visibility: hidden;
}

.slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
}

[dir="rtl"] .slick-slide {
	float: right;
}

.slick-slide img {
	display: block;
}

.slick-slide.slick-loading img {
	display: none;
}

.slick-slide.dragging img {
	pointer-events: none;
}

.slick-initialized .slick-slide {
	display: block;
}

.slick-loading .slick-slide {
	visibility: hidden;
}

.slick-vertical .slick-slide {
	display: block;
	border: 1px solid transparent; 
	height: auto;
}

.slick-arrow.slick-hidden {
	display: none;
}

/* Magnific Popup */
.mfp-bg {
	overflow: hidden;
	opacity: 0.8; 
	position: fixed;
	z-index: 1042;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #0b0b0b;
}

.mfp-wrap {
	position: fixed;
	z-index: 1043;
	top: 0;
	left: 0;
	outline: none !important;
	width: 100%;
	height: 100%;

	-webkit-backface-visibility: hidden;
}

.mfp-container {
	box-sizing: border-box; 
	position: absolute;
	top: 0;
	left: 0;
	padding: 0 8px;
	width: 100%;
	height: 100%;
	text-align: center;
}

.mfp-container:before {
	content: "";
	display: inline-block;
	height: 100%;
	vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
	display: none;
}

.mfp-content {
	display: inline-block;
	position: relative;
	z-index: 1045; 
	margin: 0 auto;
	text-align: left;
	vertical-align: middle;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
	width: 100%;
	cursor: auto;
}

.mfp-ajax-cur {
	cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor:         zoom-out;
}

.mfp-zoom {
	cursor: pointer;
	cursor:         zoom-in;
}

.mfp-auto-cursor .mfp-content {
	cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
	-webkit-user-select: none;
	   -moz-user-select: none;
	        -ms-user-select: none;
	    user-select: none;
}

.mfp-loading.mfp-figure {
	display: none;
}

.mfp-hide {
	display: none !important;
}

.mfp-preloader {
	position: absolute;
	z-index: 1044; 
	top: 50%;
	right: 8px;
	left: 8px;
	margin-top: -0.8em;
	width: auto;
	text-align: center;
	color: #ccc;
}

.mfp-preloader a {
	color: #ccc;
}

.mfp-preloader a:hover {
	color: #fff;
}

.mfp-s-ready .mfp-preloader {
	display: none;
}

.mfp-s-error .mfp-content {
	display: none;
}

button.mfp-close,
button.mfp-arrow {
	display: block;
	overflow: visible;
	z-index: 1046;
	padding: 0;
	border: 0;
	outline: none;
	cursor: pointer;
	background: transparent;
	box-shadow: none;

	-webkit-appearance: none;
	-ms-touch-action: manipulation;
	    touch-action: manipulation;
}

button::-moz-focus-inner {
	padding: 0;
	border: 0;
}

.mfp-close {
	opacity: 0.65;
	position: absolute;
	top: 0;
	right: 0;
	padding: 0 0 18px 10px;
	width: 44px;
	height: 44px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	font-family: Arial, Baskerville, monospace; 
	font-size: 28px;
	font-style: normal;
	line-height: 44px;
}

.mfp-close:hover,
.mfp-close:focus {
	opacity: 1;
}

.mfp-close:active {
	top: 1px;
}

.mfp-close-btn-in .mfp-close {
	color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
	right: -6px;
	padding-right: 6px;
	width: 100%; 
	text-align: right;
	color: #fff;
}

.mfp-counter {
	position: absolute;
	top: 0;
	right: 0;
	white-space: nowrap; 
	color: #ccc;
	font-size: 12px;
	line-height: 18px;
}

.mfp-arrow {
	opacity: 0.65;
	position: absolute;
	top: 50%;
	margin: 0;
	margin-top: -55px;
	padding: 0;
	width: 90px;
	height: 110px;

	-webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
	margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
	opacity: 1;
}

.mfp-arrow:before,
.mfp-arrow:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	margin-top: 35px;
	margin-left: 35px;
	border: medium inset transparent; 
	width: 0;
	height: 0;
}

.mfp-arrow:after {
	top: 8px; 
	border-top-width: 13px;
	border-bottom-width: 13px;
}

.mfp-arrow:before {
	opacity: 0.7; 
	border-top-width: 21px;
	border-bottom-width: 21px;
}

.mfp-arrow-left {
	left: 0;
}

.mfp-arrow-left:after {
	margin-left: 31px; 
	border-right: 17px solid #fff;
}

.mfp-arrow-left:before {
	margin-left: 25px;
	border-right: 27px solid #3f3f3f;
}

.mfp-arrow-right {
	right: 0;
}

.mfp-arrow-right:after {
	margin-left: 39px; 
	border-left: 17px solid #fff;
}

.mfp-arrow-right:before {
	border-left: 27px solid #3f3f3f;
}

.mfp-iframe-holder {
	padding-top: 40px;
	padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
	width: 100%;
	max-width: 900px; 
	line-height: 0;
}

.mfp-iframe-holder .mfp-close {
	top: -40px;
}

.mfp-iframe-scaler {
	overflow: hidden;
	padding-top: 56.25%; 
	width: 100%;
	height: 0;
}

.mfp-iframe-scaler iframe {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #000; 
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}

/* Main image in popup */
img.mfp-img {
	display: block;
	box-sizing: border-box;
	margin: 0 auto; 
	padding: 40px 0 40px;
	width: auto;
	max-width: 100%;
	height: auto;
	line-height: 0;
}

/* The shadow behind the image */
.mfp-figure {
	line-height: 0;
}

.mfp-figure:after {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: 40px;
	right: 0;
	bottom: 40px;
	left: 0;
	width: auto;
	height: auto;
	background: #444; 
	box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
}

.mfp-figure small {
	display: block;
	color: #bdbdbd;
	font-size: 12px;
	line-height: 14px;
}

.mfp-figure figure {
	margin: 0;
}

.mfp-bottom-bar {
	position: absolute;
	top: 100%;
	left: 0;
	margin-top: -36px;
	width: 100%;
	cursor: auto;
}

.mfp-title {
	padding-right: 36px; 
	text-align: left;
	word-wrap: break-word;
	color: #f3f3f3;
	line-height: 18px;
}

.mfp-image-holder .mfp-content {
	max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
	cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/**
	* Remove all paddings around the image on small screen
	*/
	.mfp-img-mobile .mfp-image-holder {
		padding-right: 0; 
		padding-left: 0;
	}
	.mfp-img-mobile img.mfp-img {
		padding: 0;
	}
	.mfp-img-mobile .mfp-figure:after {
		top: 0;
		bottom: 0;
	}
	.mfp-img-mobile .mfp-figure small {
		display: inline;
		margin-left: 5px;
	}
	.mfp-img-mobile .mfp-bottom-bar {
		box-sizing: border-box; 
		position: fixed;
		top: auto;
		bottom: 0;
		margin: 0;
		padding: 3px 5px;
		background: rgba(0, 0, 0, 0.6);
	}
	.mfp-img-mobile .mfp-bottom-bar:empty {
		padding: 0;
	}
	.mfp-img-mobile .mfp-counter {
		top: 3px; 
		right: 5px;
	}
	.mfp-img-mobile .mfp-close {
		position: fixed;
		top: 0;
		right: 0;
		padding: 0; 
		width: 35px;
		height: 35px;
		background: rgba(0, 0, 0, 0.6);
		text-align: center;
		line-height: 35px;
	}
}

@media all and (max-width: 900px) {
	.mfp-arrow {
		-webkit-transform: scale(0.75);
		        -ms-transform: scale(0.75);
		    transform: scale(0.75);
	}
	.mfp-arrow-left {
		-webkit-transform-origin: 0;
		        -ms-transform-origin: 0;
		    transform-origin: 0;
	}
	.mfp-arrow-right {
		-webkit-transform-origin: 100%;
		        -ms-transform-origin: 100%;
		    transform-origin: 100%;
	}
	.mfp-container {
		padding-right: 6px; 
		padding-left: 6px;
	}
}

/* mfp上書き ---------- */
.mfp-container {
	margin: 0 auto;
	padding: 0 20px;
}

img.mfp-img {
	padding-top: 60px;
	padding-bottom: 60px;
}

.mfp-figure:after {
	top: 60px;
	bottom: 60px;
}

.mfp-bottom-bar {
	margin-top: -46px;
}

/* overlay at start */
.mfp-fade.mfp-bg {
	opacity: 0;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
}

/* overlay animate in */
.mfp-fade.mfp-bg.mfp-ready {
	opacity: 0.8;
}

/* overlay animate out */
.mfp-fade.mfp-bg.mfp-removing {
	opacity: 0;
}

/* content at start */
.mfp-fade.mfp-wrap .mfp-content {
	opacity: 0;
	-webkit-transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
	transition: all 0.4s cubic-bezier(0.23, 1, 0.58, 1);
}

/* content animate it */
.mfp-fade.mfp-wrap.mfp-ready .mfp-content,
.mfp-fade.mfp-wrap.mfp-ready .m-modal_close,
.mfp-fade.mfp-wrap.mfp-ready .m-modal_arrow {
	opacity: 1;
}

/* content animate out */
.mfp-fade.mfp-wrap.mfp-removing .mfp-content,
.mfp-fade.mfp-wrap.mfp-removing .m-modal_close,
.mfp-fade.mfp-wrap.mfp-removing .m-modal_arrow {
	opacity: 0;
}

@media print {
	body,
	.l-pageBody {
		background-color: #fff;
	}
	.l-footer_copyright {
		padding-top: 14px;
		padding-bottom: 14px;
	}
	tr,
	img {
		page-break-inside: avoid;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
	}
}