@charset "UTF-8";
/*
* project_name
* main.css
*
*/
/* ------------------------
	Foundation
------------------------ */
html,
body {
	height: 100%;
}

*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	        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 Settings
------------------------ */
html {
	font-size: 16px;
}

body {
	background-color: #fff;
	word-wrap: break-word; 
	color: #000;
	font-family: Noto Sans Japanese, YuGothic, "ヒラギノ角ゴ ProN W3", "Lucida Grande", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
	line-height: 1.75;

	-webkit-font-smoothing: antialiased;
	        font-smoothing: antialiased;
	-webkit-text-size-adjust: 100%;
}

a {
	text-decoration: none; 
	color: #c71629;
}
a:visited {
	color: #c71629;
}
a:hover {
	text-decoration: none; 
	color: #c71629;
}
a:active {
	text-decoration: none; 
	color: #ff8000;
}
a[href^="tel:"] {
	cursor: text; 
	text-decoration: none;
}

::-moz-selection {
	background-color: #c71629;
	color: #fff;
	text-shadow: none;
}

::selection {
	background-color: #c71629;
	color: #fff;
	text-shadow: none;
}

/* ------------------------
	utilities Classes
------------------------ */
.hidden {
	display: none !important;
	visibility: hidden;
}

@media screen and (min-width: 736px) {
	.show-sp {
		display: none !important;
		visibility: hidden;
	}
}

@media screen and (max-width: 736px) {
	.hidden-sp {
		display: none;
	}
}

@media screen and (min-width: 736px) {
	.hidden-tb {
		display: none;
	}
}

.visuallyhidden {
	overflow: hidden;
	clip: rect(0 0 0 0);
	position: absolute;
	margin: -1px;
	padding: 0;
	border: 0;
	width: 1px; 
	height: 1px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	overflow: visible;
	clip: auto;
	position: static;
	margin: 0;
	width: auto; 
	height: auto;
}

.invisible {
	visibility: hidden;
}

.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

.clearfix {
	*zoom: 1;
}

/* ------------------------
	余白 調整用class
------------------------ */
.mt-0 {
	margin-top: 0px !important;
}

.mb-0 {
	margin-bottom: 0px !important;
}

.mt-5 {
	margin-top: 5px !important;
}

.mb-5 {
	margin-bottom: 5px !important;
}

.mt-10 {
	margin-top: 10px !important;
}

.mb-10 {
	margin-bottom: 10px !important;
}

.mt-15 {
	margin-top: 15px !important;
}

.mb-15 {
	margin-bottom: 15px !important;
}

.mt-20 {
	margin-top: 20px !important;
}

.mb-20 {
	margin-bottom: 20px !important;
}

.mt-25 {
	margin-top: 25px !important;
}

.mb-25 {
	margin-bottom: 25px !important;
}

/* ------------------------
	text-align 調整用class
------------------------ */
.align-center {
	text-align: center !important;
}

.align-left {
	text-align: left !important;
}

.align-right {
	text-align: right !important;
}

/* ------------------------
  layout
------------------------ */
/* トップ以外のcover ------------ */
.l-cover {
	background: url(/assets/sp/ilm/img/common/cover_bg.png) repeat-x left top;
}

.cover_inner {
	padding: 30px 0 20px;
}

.cover_logo {
	margin: 0 auto;
	width: 410px;
	height: 165px;
	background: url(/assets/sp/ilm/img/common/cover_logo.png) no-repeat;
	background-size: 100% auto;
}
.cover_logo > a {
	display: block;
	width: 100%;
	height: 100%;
}
.cover_logo span {
	display: block;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%; 
	font-size: 0;
}

/* header ------------ */
.l-hdr {
	position: relative;
	z-index: 110; 
	width: 100%;
}
.l-hdr .hdr_body {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 50px;
	background-color: #000;
}
@media screen and (min-width: 736px) {
	.l-hdr .hdr_body {
		position: relative;
		border-bottom: none; 
		height: 40px;
		background-image: url(/assets/sp/ilm/img/common/hdr_bg.png);
		background-repeat: no-repeat;
		background-position: left top;
	}
}
@media screen and (min-width: 1000px) {
	.l-hdr .hdr_body {
		background-position: center top;
	}
}
.l-hdr .inner {
	-webkit-box-sizing: border-box;
	        box-sizing: border-box;
	position: relative;
	margin: 0 auto; 
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 736px) {
	.l-hdr .inner {
		padding: 0 10px;
	}
}
@media screen and (min-width: 1000px) {
	.l-hdr .inner {
		width: 1000px;
	}
}
.l-hdr .logo {
	position: absolute;
	top: 0;
	left: 0;
}
.l-hdr .logo > a {
	display: block;
	display: block;
	overflow: hidden;
	width: 110px;
	height: 50px;
	background-image: url(/assets/sp/ilm/img/common/hdr_logo_sp.png);
	background-size: cover; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
@media screen and (min-width: 736px) {
	.l-hdr .logo > a {
		display: block;
		overflow: hidden;
		margin-top: 6px;
		width: 130px;
		height: 27px;
		background-image: url(/assets/sp/ilm/img/common/hdr_logo.png); 
		white-space: nowrap;
		text-indent: 100%;
		font-size: 0;
	}
}
.l-hdr .menu {
	overflow: hidden;
	position: fixed;
	z-index: 1002; 
	top: 50px;
	left: -100%;
	width: 100%;
	height: 100vh;
	background-color: #000;
}
.l-hdr .menu.is-open {
	overflow-y: auto;
	left: 0;
	padding: 0 0 60px 0;
}
@media screen and (max-width: 736px) {
	.l-hdr .menu {
		height: 100%;
		min-height: calc(100vh - 50px);
		-webkit-transition: all 0.5s ease-in-out;
		transition: all 0.5s ease-in-out;
	}
}
@media screen and (min-width: 736px) {
	.l-hdr .menu {
		position: absolute;
		top: 0;
		right: 0;
		left: inherit;
		width: 570px;
		height: 40px;
	}
}
.l-hdr .menu ul {
	display: block;
	text-align: center;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu ul {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
	}
}
.l-hdr .menu li {
	border-bottom: 1px solid #443f37;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li {
		padding: 0 0 0 35px;
	}
}
.l-hdr .menu li > a {
	display: block;
	padding: 12px 0;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out; 
	text-align: center;
	text-decoration: none;
	color: #f5f5f5;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li > a {
		padding: 0;
		font-size: 11px; 
		line-height: 40px;
	}
}
.l-hdr .menu li > a:hover {
	color: #999;
}
.l-hdr .menu li:nth-child(2) {
	padding: 0;
	border-top: 1px solid #443f37;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li:nth-child(2) {
		padding: 0 0 0 38px;
		border-top: 0;
	}
}
.l-hdr .menu li.menu_access {
	display: none;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li.menu_access {
		display: block;
		padding: 0; 
		width: 118px;
	}
	.l-hdr .menu li.menu_access > a {
		display: block;
		padding: 0 12px 0 35px;
		width: 100%;
		height: 100%;
		background: url(/assets/sp/ilm/img/common/hdr_ico_access.png) no-repeat 15px 12px #c71629; 
		color: #fff;
	}
	.l-hdr .menu li.menu_access > a:hover {
		background-color: #316ba5;
	}
}
.l-hdr .menu li.is-sp {
	display: block;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li.is-sp {
		display: none;
	}
}
.l-hdr .menu li.is-tb-pc {
	display: block;
}
@media screen and (max-width: 736px) {
	.l-hdr .menu li.is-tb-pc {
		display: none;
	}
}
.l-hdr .menu li.menu_sns {
	padding: 34px 0 38px 0;
	border: none;
}
@media screen and (min-width: 736px) {
	.l-hdr .menu li.menu_sns {
		display: none;
	}
}
.l-hdr .menu li.menu_sns .sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	width: 205px; 

	-webkit-box-pack: justify; 

	    -ms-flex-pack: justify; 

	        justify-content: space-between;
}
.l-hdr .menu li.menu_sns .sns > li {
	display: block;
	overflow: hidden;
	border: none; 
	width: 45px;
	height: 45px;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
	background-image: url(/assets/sp/ilm/img/common/gnav_sns.png);
	background-size: 180px 45px;
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
.l-hdr .menu li.menu_sns .sns > li:hover {
	opacity: 0.75;
}
.l-hdr .menu li.menu_sns .sns > li > a {
	display: block;
	width: 100%;
	height: 100%;
}
.l-hdr .menu li.menu_sns .sns .sns_t {
	background-position: 0 0;
}
.l-hdr .menu li.menu_sns .sns .sns_f {
	background-position: -45px 0;
}
.l-hdr .menu li.menu_sns .sns .sns_y {
	background-position: -90px 0;
}
.l-hdr .menu li.menu_sns .sns .sns_i {
	background-position: -135px 0;
}
@media screen and (max-width: 736px) {
	.l-hdr .menu li.menu_question {
		display: inline-block;
		position: relative;
		padding: 0 6px 0 0;
		border: none; 
		vertical-align: top;
	}
	.l-hdr .menu li.menu_question > a {
		padding: 0;
		font-size: 14px;
	}
	.l-hdr .menu li.menu_question + .menu_question {
		padding: 0 0 0 14px;
	}
	.l-hdr .menu li.menu_question + .menu_question::before {
		content: "/";
		display: block;
		position: absolute;
		top: -3px;
		left: 0;
		color: #fff; 
		font-size: 14px;
	}
}
.l-hdr .menu li.menu_language {
	padding: 8px 0 0 0;
	border: none;
}
.l-hdr .menu li.menu_language .language li {
	display: inline-block;
	position: relative;
	padding: 0 6px 0 0;
	border: none; 
	vertical-align: top;
}
.l-hdr .menu li.menu_language .language li > a {
	padding: 0;
	font-size: 14px;
}
.l-hdr .menu li.menu_language .language li + li {
	padding: 0 0 0 14px;
}
.l-hdr .menu li.menu_language .language li + li::before {
	content: "/";
	display: block;
	position: absolute;
	top: -3px;
	left: 0;
	color: #fff; 
	font-size: 14px;
}
.l-hdr .sp-btn {
	float: right;
}
@media screen and (min-width: 736px) {
	.l-hdr .sp-btn {
		display: none;
	}
}
.l-hdr .sp-btn ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}
.l-hdr .sp-btn li {
	display: block;
	overflow: hidden;
	-webkit-box-sizing: content-box;
	        box-sizing: content-box;
	border-left: 1px solid #443f37;
	width: 50px;
	height: 50px;
	cursor: pointer;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	background-size: cover; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
.l-hdr .sp-btn li:last-child {
	border-left: none;
}
.l-hdr .sp-btn li a {
	display: block;
	width: 100%;
	height: 100%;
}
.l-hdr .sp-btn .btn_access,
.l-hdr .sp-btn .btn_museum,
.l-hdr .sp-btn .btn_exhibition {
	background-size: cover;
}
.l-hdr .sp-btn .btn_access {
	background-image: url(/assets/sp/ilm/img/common/hdr_nav_access_sp.png);
}
.l-hdr .sp-btn .btn_museum {
	background-image: url(/assets/sp/ilm/img/common/hdr_nav_museum_sp.png);
}
.l-hdr .sp-btn .btn_museum.is-open {
	background-image: url(/assets/sp/ilm/img/common/hdr_nav_museum_sp_close.png);
}
.l-hdr .sp-btn .btn_exhibition {
	background-image: url(/assets/sp/ilm/img/common/hdr_nav_exhibition_sp.png);
}
.l-hdr .sp-btn .btn_exhibition.is-open {
	background-image: url(/assets/sp/ilm/img/common/hdr_nav_exhibition_sp_close.png);
}
.l-hdr .sp-btn img {
	max-width: 100%;
}

/* globalnav ------------ */
.l-gnav {
	position: relative;
}
.l-gnav .gnav_mask {
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.l-gnav.is-open .gnav_mask {
	display: none;
}
@media screen and (min-width: 736px) {
	.l-gnav.is-open .gnav_mask {
		display: block;
		position: fixed;
		z-index: 1001;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: rgba(0, 0, 0, 0.6);
	}
}

.gnav_btn {
	display: none;
}
@media screen and (min-width: 736px) {
	.gnav_btn {
		display: block;
		position: fixed;
		z-index: 1000; 
		top: 60px;
		right: 20px;
		width: 74px;
		height: 74px;
		cursor: pointer;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
		background-color: #c71629;
	}
	.gnav_btn:hover {
		background-color: #316ba5;
	}
	.gnav_btn .btn_inner {
		position: absolute;
		top: 24px;
		right: 0;
		left: 0;
		margin: 0 auto;
		width: 42px;
	}
	.gnav_btn .btn_inner:after {
		content: "MENU";
		position: absolute;
		top: 24px;
		left: 50%;
		-webkit-transform: translate(-50%, 0);
		    -ms-transform: translate(-50%, 0);
		        transform: translate(-50%, 0);
		color: #fff;
		font-size: 12px;
		font-weight: bold;
		line-height: 1;
	}
	.gnav_btn .btn_inner .line {
		position: absolute;
		left: 50%;
		width: 28px;
		height: 2px;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out; 
		-webkit-transform: translate(-50%, 0); 
		    -ms-transform: translate(-50%, 0); 
		        transform: translate(-50%, 0);
		background: #fff;
	}
	.gnav_btn .btn_inner .line_01 {
		top: 0;
	}
	.gnav_btn .btn_inner .line_02 {
		top: 7px;
	}
	.gnav_btn .btn_inner .line_03 {
		top: 14px;
	}
}
@media screen and (min-width: 1000px) {
	.gnav_btn {
		top: 72px;
		right: 30px;
	}
}

.gnav_overlay {
	overflow-y: scroll; 
	position: fixed;
	z-index: 1002;
	top: 50px;
	right: -100%;
	width: 100%;
	height: 100vh;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
	background: #c71629;
}
.gnav_overlay.is-open {
	right: 0;
}
@media screen and (min-width: 736px) {
	.gnav_overlay {
		top: 0;
		width: 330px;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out;
	}
	.gnav_overlay .btn-close {
		position: absolute;
		top: 14px;
		right: 14px;
		width: 40px;
		height: 40px;
		cursor: pointer;
		-webkit-transition: all 0.2s ease-in-out;
		transition: all 0.2s ease-in-out;
	}
	.gnav_overlay .btn-close:after {
		content: "CLOSE";
		position: absolute;
		top: 27px;
		right: 4px;
		color: #fff;
		font-size: 10px;
		font-weight: bold;
		line-height: 1;
	}
	.gnav_overlay .btn-close:hover {
		opacity: 0.75;
	}
	.gnav_overlay .btn-close .line {
		position: absolute;
		right: 6px;
		width: 27px;
		height: 2px;
		-webkit-transition: all 0.3s ease-in-out;
		transition: all 0.3s ease-in-out; 
		background: #fff;
	}
	.gnav_overlay .btn-close .line_01 {
		top: 12px;
		-webkit-transform: rotate(45deg);
		    -ms-transform: rotate(45deg);
		        transform: rotate(45deg);
	}
	.gnav_overlay .btn-close .line_02 {
		top: 12px;
		-webkit-transform: rotate(-45deg);
		    -ms-transform: rotate(-45deg);
		        transform: rotate(-45deg);
	}
}

.gnav_content {
	padding: 0 0 100px; 
	width: 100%;
	text-align: center;
}
@media screen and (min-width: 736px) {
	.gnav_content {
		padding: 77px 0 30px;
	}
}
.gnav_content .title {
	padding: 22px 0;
	background: url(/assets/sp/ilm/img/common/gnav_logo_bg.png) repeat left top; 
	text-align: center;
}
.gnav_content .title img {
	display: inline-block;
	width: 260px;
	height: 116px;
}
.gnav_content .menu li {
	border-top: solid 1px #fff;
}
.gnav_content .menu li:last-child {
	border-bottom: solid 1px #fff;
}
.gnav_content .menu li > a {
	display: block;
	padding: 16px 0;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out; 
	text-align: center;
	text-decoration: none;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
}
.gnav_content .menu li > a:hover {
	opacity: 0.75;
}
.gnav_content .menu li > .not-link {
	display: block;
	opacity: 0.75; 
	padding: 16px 0;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
	text-align: center;
	text-decoration: none;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
}
.gnav_content .link {
	padding: 20px 0;
}
@media screen and (min-width: 736px) {
	.gnav_content .link {
		padding: 24px 0;
	}
}
.gnav_content .sns {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto;
	width: 205px; 

	-webkit-box-pack: justify; 

	    -ms-flex-pack: justify; 

	        justify-content: space-between;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns {
		width: 255px;
	}
}
.gnav_content .sns > li {
	display: block;
	overflow: hidden;
	width: 45px;
	height: 45px;
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out; 
	background-image: url(/assets/sp/ilm/img/common/gnav_sns.png);
	background-size: 180px 45px;
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
.gnav_content .sns > li:hover {
	opacity: 0.75;
}
.gnav_content .sns > li > a {
	display: block;
	width: 100%;
	height: 100%;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns > li {
		display: block;
		overflow: hidden;
		width: 56px;
		height: 56px;
		background-size: 224px 56px; 
		white-space: nowrap;
		text-indent: 100%;
		font-size: 0;
	}
}
.gnav_content .sns .sns_t {
	background-position: 0 0;
}
.gnav_content .sns .sns_f {
	background-position: -45px 0;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns .sns_f {
		background-position: -56px 0;
	}
}
.gnav_content .sns .sns_y {
	background-position: -90px 0;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns .sns_y {
		background-position: -112px 0;
	}
}
.gnav_content .sns .sns_i {
	background-position: -135px 0;
}
@media screen and (min-width: 736px) {
	.gnav_content .sns .sns_i {
		background-position: -168px 0;
	}
}
.gnav_content .logo {
	display: none;
}
@media screen and (min-width: 736px) {
	.gnav_content .logo {
		display: block;
		display: block;
		overflow: hidden;
		margin: 24px auto 0;
		width: 140px;
		height: 30px;
		background-image: url(/assets/sp/ilm/img/common/gnav_pola_logo.png);
		background-repeat: no-repeat;
		background-size: cover; 
		white-space: nowrap;
		text-indent: 100%;
		font-size: 0;
	}
}

/* main ------------ */
.l-main {
	position: relative;
	width: 100%;
	height: auto;
}

/* footer ------------ */
.l-ftr {
	position: relative;
	z-index: 1;
}

/* SNS share */
.ftr_share {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 auto 0; 
	width: 270px;

	-webkit-box-pack: justify;

	    -ms-flex-pack: justify;

	        justify-content: space-between;
}
@media screen and (min-width: 736px) {
	.ftr_share {
		margin: 30px auto 0; 
		width: 180px;
	}
}
.ftr_share .share_item.share_item-fb {
	margin: -3px 0 0 0;
}
@media screen and (min-width: 736px) {
	.ftr_share .share_item.share_item-line {
		display: none;
	}
}

/* body */
.ftr_body {
	position: relative;
}

.ftr_body .inner {
	position: relative;
	z-index: 101; 
	margin: 0 auto;
	width: 320px;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner {
		width: 640px;
	}
}
.ftr_body .inner .menu {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;

	-ms-flex-wrap: wrap;

	    flex-wrap: wrap;
	-webkit-box-pack: justify;
	    -ms-flex-pack: justify;
	        justify-content: space-between;
}
.ftr_body .inner .menu > li {
	width: 150px;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner .menu > li {
		width: 300px;
	}
}
.ftr_body .inner .menu > li:nth-child(odd) {
	text-align: right;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner .menu > li:nth-child(odd) {
		padding-right: 12px;
	}
}
.ftr_body .inner .menu > li:nth-child(even) {
	text-align: left;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner .menu > li:nth-child(even) {
		padding-left: 12px;
	}
}
.ftr_body .inner .menu > li:nth-child(odd):nth-last-child(2),
.ftr_body .inner .menu > li:last-child {
	border-bottom: none;
}
.ftr_body .inner .menu > li > a,
.ftr_body .inner .menu > li > .not-link {
	display: block;
	padding: 22px 0;
	width: 100%;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out; 
	text-decoration: none;
	color: #316ba5;
	font-size: 10px;
}
@media screen and (min-width: 736px) {
	.ftr_body .inner .menu > li > a,
	.ftr_body .inner .menu > li > .not-link {
		padding: 30px 0;
		font-size: 16px;
	}
}
.ftr_body .inner .menu > li > .not-link {
	color: #666;
}

.ftr_body.cover {
	position: relative;
	margin: 0 auto;
	padding: 108px 0 65px 0; 
	background: url(/assets/sp/ilm/img/common/footer_bg.png) repeat-x left top;
}
.ftr_body.cover .logo {
	display: block;
	overflow: hidden;
	margin: 0 auto;
	width: 570px;
	height: 208px;
	background: url(/assets/sp/ilm/img/common/footer_logo.png) no-repeat 0 0;
	background-size: cover; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
.ftr_body.cover .ftr_note {
	margin-top: 30px; 
	text-align: center;
	font-size: 14px;
	line-height: 1.38;
}
.ftr_body.cover .menu {
	padding: 40px 0 0;
}
.ftr_body.cover .menu > li {
	background: url(/assets/sp/ilm/img/common/footer_nav_bg_01.png) repeat-x right bottom;
	font-size: 10px; 
	font-weight: bold;
}
@media screen and (min-width: 736px) {
	.ftr_body.cover .menu > li {
		font-size: 16px;
	}
}
.ftr_body.cover .menu > li > a:hover {
	opacity: 0.75;
	color: #c71629;
}
.ftr_body.cover .menu > li:nth-child(2) {
	background-image: url(/assets/sp/ilm/img/common/footer_nav_bg_02.png);
	background-position: left bottom;
}
.ftr_body.cover .menu > li:nth-child(3) {
	background-image: url(/assets/sp/ilm/img/common/footer_nav_bg_03.png);
}
.ftr_body.cover .menu > li:nth-child(4) {
	background-image: url(/assets/sp/ilm/img/common/footer_nav_bg_04.png);
	background-position: left bottom;
}
.ftr_body.cover .menu > li:nth-child(5) {
	background: none;
}

/* pagetop */
.pagetop {
	position: absolute;
	z-index: 102; 
	top: -28px;
	right: 0;
	left: 0;
	margin: auto;
	width: 56px;
	height: 56px;
}
@media screen and (min-width: 1000px) {
	.pagetop {
		top: -28px;
		right: 0;
		left: 0;
		width: 56px;
		height: 56px;
	}
}
.pagetop a {
	display: block;
	position: relative;
	border-radius: 50%;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out; 
	background: #c71629;
}
.pagetop a .arrow {
	display: block;
}
.pagetop a .arrow:before,
.pagetop a .arrow:after {
	content: "";
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	width: 15px;
	height: 4px;
	background: #fff;
}
.pagetop a .arrow:before {
	left: 44%;
	width: 16px;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
	background: #316ba5;
}
.pagetop a .arrow:after {
	right: 44%;
	-webkit-transform: rotate(-45deg);
	    -ms-transform: rotate(-45deg);
	        transform: rotate(-45deg);
}
@media screen and (min-width: 1000px) {
	.pagetop a:hover {
		-webkit-transform: translateY(-3px);
		    -ms-transform: translateY(-3px);
		        transform: translateY(-3px);
		background-color: #316ba5;
	}
	.pagetop a:hover .arrow:before {
		background: #c71629;
	}
}

.ftr_body.uftr {
	padding: 40px 0 0 0;
	background-color: #333;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr {
		padding: 80px 0 0 0;
	}
}
.ftr_body.uftr .logo {
	display: block;
	overflow: hidden;
	margin: 0 auto;
	border-right: none;
	width: 80px;
	height: 22px;
	background-image: url(/assets/sp/ilm/img/common/ftr_uftr_logo.png);
	background-size: cover; 
	white-space: nowrap;
	text-indent: 100%;
	font-size: 0;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr .logo {
		display: block;
		overflow: hidden;
		width: 160px;
		height: 44px;
		white-space: nowrap;
		text-indent: 100%; 
		font-size: 0;
	}
}
.ftr_body.uftr .menu {
	padding: 15px 0 26px 0;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr .menu {
		padding: 12px 0 48px 0;
	}
}
.ftr_body.uftr .menu > li {
	border-bottom: 1px solid #252525;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr .menu > li {
		border-bottom: 2px solid #252525;
	}
}
.ftr_body.uftr .menu > li > a {
	padding: 15px 0;
	color: #fff; 
	font-weight: bold;
}
@media screen and (min-width: 736px) {
	.ftr_body.uftr .menu > li > a {
		padding: 30px 0;
	}
}
.ftr_body.uftr .menu > li > a:hover {
	color: #999;
}

/* copyright */
.l-ftr .copyright {
	height: 50px; 
	background-color: #000;
}
@media screen and (min-width: 736px) {
	.l-ftr .copyright {
		height: 60px;
	}
}
.l-ftr .copyright > p {
	text-align: center;
	color: #fff; 
	font-size: 8px;
	line-height: 50px;
}
@media screen and (min-width: 736px) {
	.l-ftr .copyright > p {
		font-size: 12px; 
		line-height: 60px;
	}
}

/* ------------------------
  Components
------------------------ */
/* btn ------------ */
.btn_wrapper {
	text-align: center;
}

.hover_op {
	display: block;
	width: 100%;
	height: 100%; 
	-webkit-transition: opacity 0.3s ease-in-out; 
	transition: opacity 0.3s ease-in-out;
}
.hover_op:hover {
	opacity: 0.9;
}

.hover_op_high:hover {
	opacity: 0.7;
}

.c-btn {
	display: inline-block; 
	background-color: #c71629;
	text-align: center;
	font-size: 22px;
}
.c-btn a {
	display: block;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.c-btn a span {
	display: inline-block;
	position: relative;
	font-weight: bold;
}
.c-btn a:hover {
	background-color: #316ba5;
}
.c-btn a:hover span:before {
	-webkit-transform: translateX(-5px);
	    -ms-transform: translateX(-5px);
	        transform: translateX(-5px);
}

.c-btn-main {
	display: inline-block;
	overflow: hidden;
}
.c-btn-main a {
	display: block;
	position: relative;
	padding: 14px 50px;
	width: 100%;
	height: 100%;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
	text-align: center;
	text-decoration: none; 
	font-size: 12px;
}
@media screen and (min-width: 736px) {
	.c-btn-main a {
		padding: 16px 70px 16px 80px;
		font-size: 15px;
	}
}
.c-btn-main a span {
	display: inline-block;
	position: relative;
	font-weight: bold;
}
.c-btn-main a:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: -10px;
	margin: auto;
	width: 54px;
	height: 8px;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out; 
	-webkit-transform: translate(0, -3px); 
	    -ms-transform: translate(0, -3px); 
	        transform: translate(0, -3px);
}
@media screen and (min-width: 736px) {
	.c-btn-main a:hover:after {
		-webkit-transform: translate(5px, -3px);
		    -ms-transform: translate(5px, -3px);
		        transform: translate(5px, -3px);
	}
}

.c-btnWrap-left {
	text-align: left;
}

.c-btnWrap-right {
	text-align: right;
}

.c-btnWrap-center {
	text-align: center;
}

.c-btnWrap-info {
	text-align: center;
}
.c-btnWrap-info .c-btnWrap-info_txt {
	font-size: 15px;
}

.c-btnWrap-info-left {
	text-align: left;
}
.c-btnWrap-info-left .c-btnWrap-info_txt {
	font-size: 15px;
}

.c-btnWrap-info-right {
	text-align: right;
}
.c-btnWrap-info-right .c-btnWrap-info_txt {
	font-size: 15px;
}

.mode_sp:not(.ilm_index) .c-btnWrap-info > .c-btnWrap-info_txt,
.mode_sp:not(.ilm_index) .c-btnWrap-info-left > .c-btnWrap-info_txt,
.mode_sp:not(.ilm_index) .c-btnWrap-info-right > .c-btnWrap-info_txt {
	font-size: 24px;
}

/* heading ------------ */
.c-h_wrap {
	text-align: center;
}

.c-h_wht {
	position: relative;
	z-index: 2; 
	text-align: center;
}
.c-h_wht img {
	display: inline-block;
	position: relative;
	z-index: 2;
}
.c-h_wht:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 31px;
	height: 50px;
	-webkit-transform: translate(-10px, -15px);
	    -ms-transform: translate(-10px, -15px);
	        transform: translate(-10px, -15px);
	background: url(/assets/sp/ilm/img/top/h_obj_wht.png) no-repeat 0 0;
	background-size: 31px 50px;
}
@media screen and (min-width: 736px) {
	.c-h_wht:before {
		width: 62px;
		height: 100px;
		-webkit-transform: translate(-26px, -26px);
		    -ms-transform: translate(-26px, -26px);
		        transform: translate(-26px, -26px);
		background-size: 62px 100px;
	}
}

.c-h_org {
	display: inline-block;
	position: relative;
	z-index: 2;
}
.c-h_org:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 25px;
	height: 40px;
	-webkit-transform: translate(-15px, -9px);
	    -ms-transform: translate(-15px, -9px);
	        transform: translate(-15px, -9px);
	background: url(/assets/sp/ilm/img/top/h_obj_org.png) no-repeat 0 0;
	background-size: contain;
}
@media screen and (min-width: 736px) {
	.c-h_org:before {
		width: 62px;
		height: 100px;
		-webkit-transform: translate(-22px, -22px);
		    -ms-transform: translate(-22px, -22px);
		        transform: translate(-22px, -22px);
		background-size: contain;
	}
}

.c-h_org_lg {
	display: inline-block;
	position: relative;
	z-index: 2;
}
.c-h_org_lg:before {
	content: "";
	display: block;
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 55px;
	height: 80px;
	-webkit-transform: translate(-23px, -32px);
	    -ms-transform: translate(-23px, -32px);
	        transform: translate(-23px, -32px);
	background: url(/assets/sp/ilm/img/top/h_obj_org.png) no-repeat 0 0;
	background-size: contain;
}
@media screen and (min-width: 736px) {
	.c-h_org_lg:before {
		width: 130px;
		height: 194px;
		-webkit-transform: translate(-40px, -40px);
		    -ms-transform: translate(-40px, -40px);
		        transform: translate(-40px, -40px);
		background-size: contain;
	}
}

.c-bg_triangle_gry {
	background: url(/assets/sp/ilm/img/top/bg_repeat_triangle_gry_sp.jpg) repeat center 0;
	background-size: 27.5px auto;
}
@media screen and (min-width: 736px) {
	.c-bg_triangle_gry {
		background: url(/assets/sp/ilm/img/top/bg_repeat_triangle_gry.jpg) repeat center 0;
		background-size: auto auto;
	}
}

/* ------------------------
	Print Styles
------------------------ */
@media print {
	*,
	*:before,
	*:after {
		background: transparent !important;
		color: #000 !important;
		-webkit-box-shadow: none !important;
		        box-shadow: none !important;
		text-shadow: none !important;
	}
	a,
	a:visited {
		text-decoration: underline;
	}
	tr,
	img {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	p,
	h2,
	h3 {
		orphans: 3;
		widows: 3;
	}
	h2,
	h3 {
		page-break-after: avoid;
	}
}