@charset "UTF-8";
#pid-index .w-line-btn-blank .is-en, #pid-index .w-line-btn.is-gray .is-en {
	font-family: Helvetica, Verdana, sans-serif
}

#pid-index .pic-sec-1:after, #pid-index .sec-incident .sec-news-content:after, #pid-index .top-sec-news-pr .sec-news-content:after {
	content: " ";
	clear: both;
	visibility: hidden
}

#pid-index .top-sec-3 .sec-inner.is-hover, #pid-index .top-sec-4 [class^=col-].is-hover {
	box-shadow: 0 3px 18px 3px rgba(0, 0, 0, .1), 0 3px 5.5px 2px rgba(0, 0, 0, .05)
}

#pid-index .top-sec-3 .sec-inner.is-hover [class^=sec-img-]:before, #pid-index .top-sec-4 [class^=col-].is-hover .sec-inner [class^=sec-img-]:before, .no-touch #pid-index .pic-sec-1 [class^=pic-sec-box-]:hover:before, .no-touch #pid-index .pic-sec-3 [class^=pic-sec-box-]:hover:before, .no-touch #pid-index .top-sec-3 .sec-inner [class^=sec-img-]:hover:before, .no-touch #pid-index .top-sec-4 .sec-inner [class^=sec-img-]:hover:before {
	-webkit-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05)
}

.no-touch #pid-index .pic-sec-1 [class^=pic-sec-box-]:hover .bg-mesh, .no-touch #pid-index .pic-sec-3 [class^=pic-sec-box-]:hover .bg-mesh, .no-touch #pid-index .top-sec-3 .sec-inner [class^=sec-img-]:hover .bg-mesh, .no-touch #pid-index .top-sec-4 .sec-inner [class^=sec-img-]:hover .bg-mesh {
	opacity: 0
}

@font-face {
	font-family: jal-icon-font;
	src: url(/assets/fonts/jal-icon-font.eot);
	src: url(/assets/fonts/jal-icon-font.eot?#iefix) format("eot"), url(/assets/fonts/jal-icon-font.woff) format("woff"), url(/assets/fonts/jal-icon-font.ttf) format("truetype"), url(/assets/fonts/jal-icon-font.svg#jal-icon-font) format("svg");
	font-weight: 400;
	font-style: normal
}

@font-face {
	font-family: jal-icon-font;
	src: url(/assets/fonts/jal-icon-font.eot);
	src: url(/assets/fonts/jal-icon-font.eot?#iefix) format("eot"), url(/assets/fonts/jal-icon-font.woff) format("woff"), url(/assets/fonts/jal-icon-font.ttf) format("truetype"), url(/assets/fonts/jal-icon-font.svg#jal-icon-font) format("svg");
	font-weight: 400;
	font-style: normal
}

#pid-index .contents {
	position: relative;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden
}

#pid-index [class^=tp-sec-] {
	padding: 40px 0
}

/* レイアウト改修 180913変更 ここから */
#pid-index .w-line-btn.is-gray {
	display: block;
	width: 350px;
	margin: 5rem auto 0;
}

@media screen and (max-width:768px) {
	#pid-index .w-line-btn.is-gray {
		width: 280px;
		margin-top: 3rem;
	}
}
/* レイアウト改修 180913変更 ここまで */

#pid-index .w-line-btn.is-gray span .is-en {
	display: inline;
	padding: 0;
	border: 0;
	color: #686f7a
}

#pid-index .w-line-btn.is-gray:after {
	right: 1px;
	color: #888d94
}

#pid-index .w-line-btn-blank {
	width: 254px;
	margin-top: 50px
}

@media screen and (max-width:768px) {
	#pid-index .w-line-btn-blank {
		margin-top: 0
	}
	#pid-index .w-line-btn-blank span {
		padding-right: 3px
	}
}

#pid-index .w-line-btn-blank span .is-en {
	display: inline;
	padding: 0;
	border: 0;
	color: #686f7a
}

@media screen and (min-width:1280px) {
	#pid-index.container [class^=layout-col-] {
		width: 1020px
	}
}

#pid-index #movie, #pid-index #movie #video {
	width: 100%;
	height: 100%
}

#pid-index #movie {
	position: fixed;
	top: 0;
	left: 0;
	background-color: #f3f4f5
}

.no-video #pid-index #movie {
	display: none
}

#pid-index #movie img {
	width: auto;
	height: 100%
}

#pid-index #bg-fix-img {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url(/assets/img/top/bg_top_intro.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .intro-top {
	width: 100%;
	height: 73vh
}

@media screen and (max-width:768px) {
	#pid-index #bg-fix-img, #pid-index #movie {
		display: none
	}
	#pid-index .intro-top {
		width: 100%;
		height: 100vw;
		background: url(/assets/img/top/sp_bg_top_intro.jpg) center center no-repeat;
		background-size: cover
	}
}

#pid-index .intro-top:before {
	background-color: rgba(98, 102, 118, 0)
}

#pid-index .intro-top .intro-inner {
	overflow: visible;
	position: absolute;
	bottom: 16px;
	left: 24px;
	width: auto;
	height: auto
}

#pid-index .intro-top .intro-inner .intro-title {
	line-height: 1;
	letter-spacing: .02em;
	font-size: 48px;
	font-size: 3rem
}

@media screen and (max-width:768px) {
	#pid-index .intro-top .intro-inner {
		bottom: 8px;
		left: 12px
	}
	#pid-index .intro-top .intro-inner .intro-title {
		height: auto;
		background: 0 0;
		text-align: left;
		line-height: .95em;
		font-size: 32px;
		font-size: 2rem
	}
	#pid-index .intro-top .intro-inner .intro-title span.only-pc-tab {
		display: none
	}
	#pid-index .intro-top .intro-link {
		position: absolute;
		padding: 0
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .intro-top .intro-inner {
		left: 4%
	}
	#pid-index .intro-top .intro-inner .intro-title {
		font-size: 34px;
		font-size: 2.125rem
	}
	#pid-index .intro-top .intro-inner .intro-title span.only-pc-tab {
		display: inline
	}
}

#pid-index .intro-top .intro-inner .intro-title strong {
	font-family: HelveticaNeueLTW1G-UltLt, 'Helvetica Neue LT W1G 25 Ultra Light', 'Helvetica Neue', sans-serif;
	font-weight: 200
}

#pid-index .intro-top .intro-link {
	right: 12px;
	bottom: 12px;
	height: auto;
	border: 0
}

#pid-index .intro-top .intro-link a {
	margin-left: 8px;
	line-height: 2em;
	font-size: 16px;
	font-size: 1rem
}

#pid-index .intro-top .intro-link a:before {
	display: none
}

#pid-index .intro-top .intro-incident {
	display: none;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: auto;
	background-color: #fff
}

#pid-index .intro-top .intro-incident.is-visible {
	display: block
}

#pid-index .intro-top .intro-incident .incident-inner {
	position: absolute;
	top: 0;
	right: 148px;
	bottom: 0;
	left: 148px;
	max-width: 984px;
	height: 310px;
	margin: auto;
	text-align: left
}

@media screen and (max-width:768px) {
	#pid-index .intro-top .intro-link a {
		float: none;
		color: #fff;
		font-size: 13px;
		font-size: .8125rem
	}
	#pid-index .intro-top .intro-incident .incident-inner {
		right: 0;
		left: 0;
		min-width: 0;
		height: auto
	}
}

#pid-index .intro-top .intro-incident .incident-inner .incident-title {
	text-shadow: none;
	color: #222;
	text-align: left;
	font-family: '游ゴシック', YuGothic, 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	font-size: 18px;
	font-size: 1.125rem
}

@media screen and (max-width:768px) {
	#pid-index .intro-top .intro-incident .incident-inner .incident-title {
		padding: 46px 24px 0;
		font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
		font-size: 15px;
		font-size: .9375rem
	}
	#pid-index .intro-top .intro-incident .incident-inner .incident-title:lang(en) {
		font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-weight: 400
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .intro-top .intro-incident .incident-inner .incident-title {
		padding-top: 92px
	}
}

#pid-index .intro-top .intro-incident .incident-inner p {
	padding-top: 30.6px;
	padding-bottom: 0;
	text-shadow: none;
	color: #222;
	text-align: left;
	font-family: '游ゴシック', YuGothic, 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
	font-weight: 400
}

@media screen and (max-width:768px) {
	#pid-index .intro-top .intro-incident .incident-inner p {
		padding: 25.15px 24px 0;
		font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif
	}
	#pid-index .intro-top .intro-incident .incident-inner p:lang(en) {
		font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-weight: 400
	}
}

#pid-index .intro-top .intro-incident .incident-inner p.incident-signature {
	padding-top: 16.2px;
	text-align: right
}

@media screen and (max-width:768px) {
	#pid-index .intro-top .intro-incident .incident-inner p.incident-signature {
		padding-top: 15.3px;
		padding-bottom: 40.15px
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .intro-top .intro-incident .incident-inner p.incident-signature {
		padding-bottom: 80px
	}
}

#pid-index .sec-incident {
	padding: 0;
	background-color: #fff
}

#pid-index .sec-incident .sec-news-content {
	position: relative;
	width: 100%
}

#pid-index .sec-incident .sec-news-content:after {
	display: block;
	font-size: 0;
	height: 0
}

@media screen and (max-width:768px) {
	#pid-index .sec-incident .sec-news-content {
		width: 92%;
		height: auto;
		padding: 0 4%
	}
	#pid-index .sec-incident .sec-news-inner {
		position: relative;
		right: auto;
		left: auto;
		min-width: 0
	}
}

#pid-index .sec-incident .sec-news-inner {
	width: auto;
	margin: 0;
	padding: 0
}

#pid-index .sec-incident .sec-news-inner .news-box {
	height: 81px;
	padding: 0;
	border-bottom: 0
}

@media screen and (max-width:768px) {
	#pid-index .sec-incident .sec-news-inner .news-box {
		height: auto;
		padding: 18px 0
	}
}

#pid-index .sec-incident .sec-news-inner .news-box .news-box-head {
	width: 104px;
	padding-left: 32px;
	-webkit-font-smoothing: subpixel-antialiased
}

#pid-index .sec-incident .sec-news-inner .news-box .news-box-body {
	width: auto;
	padding-right: 96px;
	font-weight: 300
}

@media screen and (max-width:768px) {
	#pid-index .sec-incident .sec-news-inner .news-box .news-box-head {
		width: auto;
		padding-left: 0
	}
	#pid-index .sec-incident .sec-news-inner .news-box .news-box-head .lead {
		margin: 0;
		background: 0 0
	}
	#pid-index .sec-incident .sec-news-inner .news-box .news-box-body {
		padding-right: 0
	}
}

#pid-index .sec-incident .sec-news-inner .news-box .news-box-body p {
	width: 100%;
	color: #c00;
	font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif
}

#pid-index .sec-incident .sec-news-inner .news-box .news-box-body p:lang(en) {
	font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400
}

@media screen and (max-width:768px) {
	#pid-index .sec-incident .sec-news-inner .news-box .news-box-body p {
		width: auto;
		padding-left: 20px;
		font-size: 13px;
		font-size: .8125rem
	}
}

#pid-index .top-sec-news-pr {
	padding: 0;
	background-color: rgba(243, 244, 245, .9)
}

#pid-index .top-sec-news-pr .sec-news-content {
	position: relative;
	width: 100%;
	height: 180px
}

#pid-index .top-sec-news-pr .sec-news-content:after {
	display: block;
	font-size: 0;
	height: 0
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-news-pr {
		padding: 14px 0 10px
	}
	#pid-index .top-sec-news-pr .sec-news-content {
		width: 92%;
		height: auto;
		padding: 0 4%
	}
}

/* レイアウト改修 180913変更 ここから */
#pid-index .top-sec-news-pr .sec-news-title {
	float: left;
	width: 210px;
	padding: 8px 0 0;
	border: 0;
	font-family: "游ゴシック", YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 18px;
	font-size: 1.13rem;
	font-weight: 400;
	line-height: 1.4;
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-news-pr .sec-news-title {
		float: none;
		width: 100%;
		padding: 12px 0 13px;
	}
}

#pid-index .pic-sec-1 .pic-sec-box-1, #pid-index .pic-sec-1 .pic-sec-box-2 {
	float: left;
	text-align: center
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-news-pr .sec-news-title {
		padding-top: 32px
	}
}

#pid-index .top-sec-news-pr .sec-news-title span {
	padding: 0 0 0 24px
}

#pid-index .top-sec-news-pr .sec-news-title span strong {
	margin-left:0;
    font-family: HelveticaNeueLTW1G-UltLt,'Helvetica Neue LT W1G 25 Ultra Light','Helvetica Neue',sans-serif;
	font-size: 12px;
	font-size: 0.8rem;
	font-weight: 600;
	letter-spacing: 0.1rem;
}
@media screen and (max-width:768px) {
	#pid-index .top-sec-news-pr .sec-news-title span {
		padding: 0
	}
	#pid-index .top-sec-news-pr .sec-news-title span strong {
		display:none;
	}
}
/* レイアウト改修 180913変更 ここまで */

#pid-index .top-sec-news-pr [class^=sec-news-inner-] {
	position: absolute;
	right: 210px;
	left: 210px;
	min-width: 860px;
	width: auto;
	margin: 0;
	padding: 0
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] {
		position: relative;
		right: auto;
		left: auto;
		min-width: 0;
		padding-bottom: 20px
	}
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper {
		padding: 0
	}
}

#pid-index .top-sec-news-pr [class^=sec-news-inner-] a:hover+a .news-box {
	border-top: solid 1px transparent
}

#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper {
	border-top: 1px solid #c0c5cc
}

#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box {
	position: relative;
	height: 59px;
	padding: 0;
	border-bottom: 0;
	-webkit-transition: none;
	transition: none
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box {
		height: auto;
		padding: 16px 0 12px;
		line-height: 1em
	}
}

.no-touch #pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box:hover {
	position: relative;
	z-index: 1;
	margin: -1px -20px;
	padding: 1px 20px;
	border-color: transparent;
	background-color: #fff
}

@media screen and (min-width:769px) {
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box.news-box-1 {
		border-top: 0
	}
}

@media screen and (min-width:769px) and (max-width:768px) {
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box.news-box-1 {
		border-top: 1px solid #c0c5cc
	}
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box.news-box-1:hover {
		border-color: transparent
	}
}

#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box .news-box-head {
	width: 104px;
	padding-left: 4px;
	-webkit-font-smoothing: subpixel-antialiased
}

html:lang(en) body, html:lang(ja) body {
	-webkit-font-smoothing: antialiased;
	color: #222
}

#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box .news-box-body {
	width: auto
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box .news-box-head {
		width: auto;
		padding-left: 0
	}
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box .news-box-head .lead {
		margin: 0;
		background: 0 0;
		letter-spacing: .09em
	}
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box .news-box-body {
		padding-right: 0
	}
}

#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box .news-box-body p {
	width: 100%
}

#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper:first-of-type {
	border-top: none
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper .news-box .news-box-body p {
		display: -webkit-box;
		overflow: hidden;
		width: auto;
		max-height: 42px;
		padding-left: 25px;
		line-height: 1.5em;
		text-overflow: ellipsis;
		font-size: 11px;
		font-size: .6875rem;
		-webkit-box-orient: vertical;
		-webkit-line-clamp: 2
	}
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper:first-of-type {
		border-top: 1px solid #c0c5cc
	}
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper:last-of-type {
		border-bottom: solid 1px #c00
	}
}

.no-touch #pid-index .top-sec-news-pr [class^=sec-news-inner-] .news-box-wrapper:first-of-type .news-box:hover {
	margin: 0 -20px -1px;
	padding: 0 20px 1px
}

#pid-index .top-sec-news-pr [class^=sec-news-inner-] .arrow-circle-r {
	position: absolute;
	right: 0;
	bottom: 0;
	height: 58px;
	padding: 0 0 0 27px;
	line-height: 58px
}

#pid-index .top-sec-news-pr .sec-news-inner-1 {
	border-bottom: solid 1px #c00
}

#pid-index .pic-sec-1 {
	width: 100%;
	height: 45.3125vw;
	background: rgba(40, 47, 58, .84)
}

#pid-index .pic-sec-1:after {
	display: block;
	font-size: 0;
	height: 0
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] .arrow-circle-r {
		position: relative
	}
	#pid-index .top-sec-news-pr .sec-news-inner-1 {
		padding-bottom: 0;
		border-bottom: none
	}
	#pid-index .top-sec-news-pr .sec-news-inner-2 .news-box-3 {
		border-bottom: solid 1px #c00
	}
	#pid-index .pic-sec-1 {
		width: 100%;
		height: 90.6666vw
	}
}

#pid-index .pic-sec-1 a {
	position: relative;
	width: 100%;
	height: 100%;
	padding: 0;
	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;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center
}

/* レイアウト改修 180913変更 ここから */

#pid-index .pic-sec-1 a:before {
  position: absolute;
  top: auto;
  right: 19px;
  bottom: 20px;
  left: auto;
  width: 18px;
  height: 18px
}

#pid-index .pic-sec-1 a:hover:before {
  color: #fff
}


#pid-index .pic-sec-1 a h3 {
	line-height: 1.15;
	color: #fff;
}

#pid-index .pic-sec-1 a h3 strong {
	display: block;
	letter-spacing: .065em;
	font-size: 40px;
	font-size: 2.5rem;
	font-family: HelveticaNeueLTW1G-UltLt, 'Helvetica Neue LT W1G 25 Ultra Light', 'Helvetica Neue', sans-serif;
	font-weight: 200
}

#pid-index .pic-sec-1 a h3 span {
	padding: 0 30px 0 0;
	font-size: 1.2rem;
	font-family: "游ゴシック", YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	color: #FFF;
}

#pid-index .pic-sec-1 a h3 span:before {
	right: 0;
	left: auto;
	width: 18px;
	height: 18px;
}

#pid-index .pic-sec-1 a:hover h3 span:before {
	color: #fff
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-1 a:before,
	#pid-index .pic-sec-1 a span:before {
		display: none
	}
	#pid-index .pic-sec-1 a h3 strong {
		font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
		font-weight: 400;
		font-size: 22px;
		font-size: 1.375rem
	}
	#pid-index .pic-sec-1 a h3 span {
		padding: 0;
		font-weight: 100;
		font-size: 44px;
		font-size: 0.75rem;
	}
}
/* レイアウト改修 180913変更 ここまで */

#pid-index .meshing-sec .meshing-en-title, #pid-index .top-sec-1 .sec-inner .sec-body .sec-text strong {
	font-family: HelveticaNeueLTW1G-UltLt, 'Helvetica Neue LT W1G 25 Ultra Light', 'Helvetica Neue', sans-serif
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .pic-sec-1 a h3 {
		line-height: 1.15
	}
	#pid-index .pic-sec-1 a h3 strong {
		font-weight: 100;
		font-size: 44px;
		font-size: 2.75rem
	}
}

#pid-index .pic-sec-1 [class^=pic-sec-box-] {
	overflow: hidden;
	position: relative
}

#pid-index .pic-sec-1 [class^=pic-sec-box-] .bg-mesh {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	background: rgba(46, 54, 66, .1)
}

#pid-index .pic-sec-1 [class^=pic-sec-box-]:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: -webkit-transform 125ms;
	transition: -webkit-transform 125ms;
	transition: transform 125ms;
	transition: transform 125ms, -webkit-transform 125ms
}

#pid-index .pic-sec-1 [class^=pic-sec-box-].s-size {
	width: 25%;
	height: 22.65625vw
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-1 [class^=pic-sec-box-].s-size {
		width: 50%;
		height: 45.3125vw
	}
}

#pid-index .pic-sec-1 [class^=pic-sec-box-].m-size {
	width: 50%;
	height: 22.65625vw
}

#pid-index .pic-sec-1 [class^=pic-sec-box-].l-size {
	width: 50%;
	height: 45.3125vw
}

#pid-index .pic-sec-1 .pic-sec-box-1:before {
	background: url(/assets/img/top/bg_pic_sec_1_1.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .pic-sec-1 .pic-sec-box-2:before {
	background: url(/assets/img/top/bg_pic_sec_1_2.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .pic-sec-1 .pic-sec-box-3 {
	float: right;
	text-align: center
}

#pid-index .pic-sec-1 .pic-sec-box-3:before {
	background: url(/assets/img/top/bg_pic_sec_1_3.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .pic-sec-1 .pic-sec-box-3 a h3 strong {
	font-size: 48px;
	font-size: 3rem
}

#pid-index .pic-sec-1 .pic-sec-box-4 {
	float: left
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-1 [class^=pic-sec-box-].l-size, #pid-index .pic-sec-1 [class^=pic-sec-box-].m-size {
		width: 50%;
		height: 45.3125vw
	}
	#pid-index .pic-sec-1 .pic-sec-box-3 a h3 strong {
		font-size: 22px;
		font-size: 1.375rem
	}
	#pid-index .pic-sec-1 .pic-sec-box-4 {
		text-align: center
	}
}

#pid-index .pic-sec-1 .pic-sec-box-4:before {
	background: url(/assets/img/top/bg_pic_sec_1_4.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .pic-sec-1 .pic-sec-box-4 a h3 {
	position: absolute;
	top: 0;
	right: 3%;
	left: auto;
	width: 50%;
	height: 100%;
	text-align: center;
	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;
	-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
}

#pid-index .meshing-sec {
	position: relative;
	width: 100%;
	height: 32.8125vw;
	background: 0 0;
	color: #fff;
	text-align: center
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-1 .pic-sec-box-4 a h3 {
		right: 0;
		left: 0;
		width: 100%
	}
	#pid-index .meshing-sec {
		height: 165px;
		padding: 0;
		background: #fff
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .pic-sec-1 .pic-sec-box-3 a h3 strong {
		font-size: 44px;
		font-size: 2.75rem
	}
	#pid-index .meshing-sec {
		height: 202px
	}
}

#pid-index .meshing-sec:before {
	display: block;
	position: absolute;
	z-index: 0;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(40, 47, 58, .84);
	content: " "
}

@media screen and (max-width:768px) {
	#pid-index .meshing-sec:before {
		display: none
	}
}

#pid-index .meshing-sec .meshing-sec-inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	height: 100%;
	-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;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column
}

#pid-index .meshing-sec .meshing-en-title {
	margin: 8px 0 0;
	padding: 0;
	text-transform: uppercase;
	z-index: 2;
	font-size: 68px;
	font-size: 4.25rem;
	font-weight: 200
}

@media screen and (max-width:768px) {
	#pid-index .meshing-sec .meshing-en-title {
		margin: -2px 0 0;
		color: #c00;
		line-height: 1;
		font-size: 44px;
		font-size: 2.75rem
	}
}

#pid-index .meshing-sec .meshing-subtitle {
	width: 100%;
	margin: 0;
	padding: 22px 0 0;
	text-align: center!important;
	line-height: 1;
	z-index: 2;
	letter-spacing: .4em;
	font-size: 18px;
	font-size: 1.125rem
}

@media screen and (max-width:768px) {
	#pid-index .meshing-sec .meshing-subtitle {
		padding: 20px 0 0;
		color: #c00;
		line-height: 1;
		font-size: 14px;
		font-size: .875rem
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .meshing-sec.meshing-sec-1 {
		height: 90px
	}
	#pid-index .meshing-sec.meshing-sec-1 .meshing-sec-inner {
		top: 0;
		padding-top: 60px
	}
	#pid-index .meshing-sec.meshing-sec-1 .meshing-sec-inner .meshing-subtitle {
		padding-bottom: 0
	}
}

@media screen and (max-width:768px) {
	#pid-index .meshing-sec.meshing-sec-2 {
		height: 206px
	}
	#pid-index .meshing-sec.meshing-sec-2 .meshing-sec-inner span.only-pc-tab {
		display: none
	}
	#pid-index .meshing-sec.meshing-sec-2 .meshing-sec-inner .meshing-subtitle {
		padding-top: 20px
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .meshing-sec.meshing-sec-2 {
		height: 202px
	}
	#pid-index .meshing-sec.meshing-sec-2 .meshing-sec-inner span.only-pc-tab {
		display: inline
	}
}

#pid-index .top-sec-1 {
	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;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	position: relative;
	width: 100%;
	height: 22.65625vw;
	background-color: #fff;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 120%;
	background-image: url(/assets/img/top/map.svg)
}

.no-svg #pid-index .top-sec-1 {
	background-image: url(/assets/img/top/svg.map.png)
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 {
		height: 72vw;
		padding-bottom: 11px;
		background-position: top center;
		background-size: 200%
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-1 {
		height: 45.834vw;
		padding-bottom: 0;
		background-color: transparent;
		background-position: top center
	}
}

#pid-index .top-sec-1 .top-sec-line {
	position: absolute;
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	content: ""
}

#pid-index .pic-sec-2:after, #pid-index .top-sec-1 .sec-content:after, #pid-index .top-sec-1 .sec-inner:after {
	content: " ";
	clear: both;
	visibility: hidden
}

#pid-index .top-sec-1 .sec-content {
	margin: 0 auto
}

#pid-index .top-sec-1 .sec-content:after {
	display: block;
	font-size: 0;
	height: 0
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-content {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin: 0 auto 32px;
		padding-left: 3px
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-1 .sec-content {
		margin: 34px auto 0
	}
}

#pid-index .top-sec-1 .sec-inner {
	margin: auto;
	color: #c00
}

#pid-index .top-sec-1 .sec-inner:after {
	display: block;
	font-size: 0;
	height: 0
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner {
		margin: 10px 16% 0
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner {
		top: 0;
		margin: auto
	}
}

#pid-index .top-sec-1 .sec-inner .sec-body {
	float: left;
	height: 88px;
	padding: 0 24px 0 0
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body {
		box-sizing: border-box;
		width: 50%;
		height: 54px;
		margin: 0 0 32px;
		padding: 0 0 0 3px
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body {
		width: auto
	}
}

#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(2n) {
	padding: 0 0 0 18px;
	border-left: 1px dashed #c0c5cc
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(2n) {
		box-sizing: border-box;
		width: 50%;
		padding: 0 0 0 20px;
		border-left: 1px dashed #c00
	}
}

#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(2n) .sec-title {
	padding-left: 6px
}

#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(3) {
	margin-left: 54px
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(2n) .sec-title {
		padding: 0
	}
	#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(3) {
		margin-left: 0
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(2n) {
		width: auto
	}
	#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(3) {
		width: 108px;
		margin-left: 25px
	}
}

#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(3) .sec-text .unit {
	margin: 48px 0 0 -10px
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body:nth-of-type(3) .sec-text .unit {
		margin: 48px 0 0
	}
}

#pid-index .top-sec-1 .sec-inner .sec-body .sec-title {
	margin: -2px 0 0;
	font-weight: 400;
	letter-spacing: .02em;
	text-transform: uppercase;
	font-size: 14px;
	font-size: .875rem
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body .sec-title {
		margin: 0;
		padding: 0 0 2px;
		letter-spacing: 0;
		font-size: 13px;
		font-size: .8125rem
	}
}

#pid-index .top-sec-1 .sec-inner .sec-body .sec-text {
	line-height: 1em;
	zoom: 1;
	font-size: 20px;
	font-size: 1.25rem
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body .sec-text {
		font-size: 13px;
		font-size: .8125rem
	}
}

#pid-index .top-sec-1 .sec-inner .sec-body .sec-text strong {
	line-height: 1;
	font-weight: 200;
	font-size: 72px;
	font-size: 4.5rem
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body .sec-text strong {
		margin-right: 1px;
		font-size: 44px;
		font-size: 2.75rem
	}
	#pid-index .top-sec-1 .sec-inner .sec-body .sec-text strong span {
		margin-left: -1px;
		letter-spacing: -5px
	}
}

#pid-index .top-sec-1 .sec-inner .sec-body .sec-text .unit {
	display: inline-block;
	margin: 46px 0 0 -2px
}

#pid-index .top-sec-1 .date {
	position: absolute;
	bottom: 45px;
	left: 20px;
	color: #888d94;
	letter-spacing: .08em;
	font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
	font-weight: 400;
	font-size: 10px;
	font-size: .625rem
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-inner .sec-body .sec-text .unit {
		display: inline;
		margin: 0
	}
	#pid-index .top-sec-1 .date {
		bottom: 70px;
		left: 15px
	}
}

#pid-index .top-sec-1 .annotation {
	position: absolute;
	bottom: 20px;
	left: 20px;
	color: #888d94;
	font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
	font-size: 12px;
	font-size: .75rem
}

#pid-index .top-sec-1 .annotation:lang(en) {
	font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .annotation {
		bottom: 51px;
		left: 15px;
		font-size: 10px;
		font-size: .625rem
	}
}

#pid-index .top-sec-1 .sec-link {
	position: absolute;
	right: 43px;
	bottom: 20px;
	height: 44px;
	padding: 0 0 0 28px;
	border-left: 1px solid rgba(192, 197, 204, .5)
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-1 .sec-link {
		right: 18px;
		bottom: 40px;
		height: auto;
		border: 0
	}
}

#pid-index [class^=text-section-] {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 410px;
	background-color: #f3f4f5;
	color: #222
}

@media screen and (max-width:768px) {
	#pid-index [class^=text-section-] {
		height: auto;
		padding: 50px 0 60px
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index [class^=text-section-] {
		padding-top: 60px
	}
}

#pid-index [class^=text-section-] .layout-col-2 {
	height: 100%
}

@media screen and (min-width:769px) and (max-width:1024px) {
	#pid-index .top-sec-news-pr [class^=sec-news-inner-] {
		min-width: 790px
	}
	#pid-index [class^=text-section-] .layout-col-2 .col-1.col-text {
		width: calc(50% - 60px);
		padding-left: 60px
	}
	#pid-index [class^=text-section-] .layout-col-2 .col-2.col-text {
		width: calc(50% - 60px);
		padding-right: 60px
	}
}

#pid-index [class^=text-section-] .layout-col-2 .col-1, #pid-index [class^=text-section-] .layout-col-2 .col-2 {
	position: relative;
	width: 50%;
	height: 100%;
	border-bottom: 0
}

#pid-index [class^=text-section-] .layout-col-2 .col-text .text-sec-body {
	text-align: left
}

@media screen and (max-width:768px) {
	#pid-index [class^=text-section-] .layout-col-2 .col-1, #pid-index [class^=text-section-] .layout-col-2 .col-2 {
		width: 100%;
		padding-top: 0
	}
	#pid-index [class^=text-section-] .layout-col-2 .col-text .text-sec-body {
		text-align: center
	}
}

#pid-index [class^=text-section-] .text-sec-inner {
	display: table;
	overflow: visible;
	position: relative;
	width: 100%
}

#pid-index [class^=text-section-] .text-sec-body {
	width: 100%;
	height: 100%;
	text-align: center
}

#pid-index [class^=text-section-] .text-sec-body svg {
	width: 61px;
	height: 61px;
	fill: #c00
}

#pid-index [class^=text-section-] .text-sec-body .text-sec-title {
	padding: 39px 0 0;
	color: #c00;
	font-weight: 400;
	line-height: 1;
	letter-spacing: .4em;
	font-size: 28px;
	font-size: 1.75rem
}

@media screen and (max-width:768px) {
	#pid-index [class^=text-section-] .text-sec-body svg {
		width: 53.5px;
		height: 53.5px
	}
	#pid-index [class^=text-section-] .text-sec-body .text-sec-title {
		padding: 21px 0 22px;
		line-height: 1;
		letter-spacing: .4em;
		font-size: 20px;
		font-size: 1.25rem
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index [class^=text-section-] .text-sec-body .text-sec-title {
		font-size: 1.5rem
	}
	#pid-index [class^=text-section-] .text-sec-body .text-sec-text {
		margin: 0 auto
	}
}

#pid-index [class^=text-section-] .text-sec-body .text-sec-text {
	overflow: hidden;
	text-align: left;
	line-height: 2.25;
	letter-spacing: .08em;
	zoom: 1;
	font-size: 16px;
	font-size: 1rem
}

@media screen and (max-width:768px) {
	#pid-index [class^=text-section-] .text-sec-body .text-sec-text {
		padding-bottom: 21px;
		line-height: 1.86;
		letter-spacing: .08em;
		font-size: 13px;
		font-size: .8125rem
	}
	#pid-index .text-section-1 {
		padding-top: 45px
	}
}

#pid-index .text-section-1 .layout-col-2 .col-1 {
	padding: 90px 0 0
}

#pid-index .text-section-1 .layout-col-2 .col-1 .text-sec-body svg {
	margin-left: 18px
}

@media screen and (max-width:768px) {
	#pid-index .text-section-1 .layout-col-2 .col-1 {
		padding: 0
	}
	#pid-index .text-section-1 .layout-col-2 .col-1 .text-sec-body svg {
		margin-left: 0
	}
}

#pid-index .text-section-1 .layout-col-2 .col-2 {
	padding-top: 108px
}

#pid-index .text-section-2 {
	height: 420px
}

@media screen and (max-width:768px) {
	#pid-index .text-section-1 .layout-col-2 .col-2 {
		padding-top: 0
	}
	#pid-index .text-section-2 {
		height: auto;
		padding-top: 41px
	}
}

#pid-index .text-section-2 .layout-col-2 .col-text {
	padding-top: 76px
}

@media screen and (max-width:768px) {
	#pid-index .text-section-2 .layout-col-2 .col-text {
		padding-top: 0;
		-webkit-box-ordinal-group: 3;
		-webkit-order: 2;
		-ms-flex-order: 2;
		order: 2
	}
}

#pid-index .text-section-2 .layout-col-2 .col-2 {
	box-sizing: border-box;
	padding-top: 97px
}

#pid-index .text-section-2 .layout-col-2 svg {
	margin-left: 22px
}

@media screen and (max-width:768px) {
	#pid-index .text-section-2 .layout-col-2 .col-2 {
		padding-top: 0;
		-webkit-box-ordinal-group: 2;
		-webkit-order: 1;
		-ms-flex-order: 1;
		order: 1
	}
	#pid-index .text-section-2 .layout-col-2 svg {
		margin: 0
	}
}

#pid-index .text-section-2 .layout-col-2 .text-sec-title {
	width: 320px;
	margin: 0 auto;
	padding: 4px 0 0 42px;
	text-align: left;
	line-height: 1.6em
}

#pid-index .text-section-3 {
	height: 440px
}

@media screen and (max-width:768px) {
	#pid-index .text-section-2 .layout-col-2 .text-sec-title {
		padding: 15px 0 17px;
		text-align: center;
		line-height: 1.6em;
		letter-spacing: .3em
	}
	#pid-index .text-section-3 {
		height: auto;
		padding: 43px 0 57px
	}
}

#pid-index .text-section-3 .layout-col-2 .col-1 {
	padding-top: 102px
}

@media screen and (max-width:768px) {
	#pid-index .text-section-3 .layout-col-2 .col-1 {
		padding-top: 0
	}
}

#pid-index .text-section-3 .layout-col-2 .col-text {
	padding-top: 98px
}

#pid-index .text-section-3 .layout-col-2 svg {
	margin-left: -17px
}

@media screen and (max-width:768px) {
	#pid-index .text-section-3 .layout-col-2 .col-text {
		padding-top: 0
	}
	#pid-index .text-section-3 .layout-col-2 svg {
		margin: 0
	}
}

#pid-index .text-section-3 .layout-col-2 .text-sec-title {
	width: 282px;
	margin: 9px auto 0;
	padding-top: 0;
	text-align: left;
	line-height: 1.6em
}

#pid-index .pic-sec-2 {
	width: 100%;
	height: 22.65625vw
}

#pid-index .pic-sec-2:after {
	display: block;
	font-size: 0;
	height: 0
}

#pid-index .pic-sec-2 h3 {
	z-index: 1;
	line-height: 1.25
}

#pid-index .pic-sec-2 h3 strong {
	color: #fff;
	letter-spacing: .15em;
	font-family: HelveticaNeueLTW1G-UltLt, 'Helvetica Neue LT W1G 25 Ultra Light', 'Helvetica Neue', sans-serif;
	font-weight: 200;
	font-size: 32px;
	font-size: 2rem
}

@media screen and (min-width:1280px) {
	#pid-index .pic-sec-2 h3 strong {
		font-size: 40px;
		font-size: 2.5rem
	}
}

@media screen and (max-width:768px) {
	#pid-index .text-section-3 .layout-col-2 .text-sec-title {
		width: 100%;
		margin: 12px 0 16px;
		padding: 0;
		text-align: center
	}
	#pid-index .pic-sec-2 {
		height: 44vw
	}
	#pid-index .pic-sec-2 h3 {
		display: none
	}
	#pid-index .pic-sec-2 h3 strong {
		letter-spacing: .1em;
		font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
		font-weight: 400
	}
}

#pid-index .pic-sec-2 h3 strong span {
	letter-spacing: .05em
}

#pid-index .pic-sec-2 [class^=pic-sec-box-] {
	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;
	-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;
	float: left;
	width: 25%;
	height: 22.65625vw;
	text-align: center;
	overflow: hidden;
	position: relative
}

#pid-index .pic-sec-2 [class^=pic-sec-box-] .bg-mesh {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background: rgba(46, 54, 66, .1)
}

#pid-index .pic-sec-2 [class^=pic-sec-box-]:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: ""
}

#pid-index .pic-sec-2 .pic-sec-box-1:before {
	background: url(/assets/img/top/bg_pic_sec_2_1.jpg) center center no-repeat;
	background-size: cover
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-2 [class^=pic-sec-box-] {
		height: 44vw
	}
	#pid-index .pic-sec-2 .pic-sec-box-1:before {
		background-image: url(/assets/img/top/sp_bg_pic_sec_2_1.jpg)
	}
}

#pid-index .pic-sec-2 .pic-sec-box-2:before {
	background: url(/assets/img/top/bg_pic_sec_2_2.jpg) center center no-repeat;
	background-size: cover
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-2 .pic-sec-box-2:before {
		background-image: url(/assets/img/top/sp_bg_pic_sec_2_2.jpg)
	}
}

#pid-index .pic-sec-2 .pic-sec-box-3:before {
	background: url(/assets/img/top/bg_pic_sec_2_3.jpg) center center no-repeat;
	background-size: cover
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-2 .pic-sec-box-3:before {
		background-image: url(/assets/img/top/sp_bg_pic_sec_2_3.jpg)
	}
}

#pid-index .pic-sec-2 .pic-sec-box-4:before {
	background: url(/assets/img/top/bg_pic_sec_2_4.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .pic-sec-3 {
	width: 100%;
	height: 22.65625vw
}

#pid-index .pic-sec-3:after {
	content: " ";
	clear: both;
	display: block;
	font-size: 0;
	height: 0;
	visibility: hidden
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-2 .pic-sec-box-4:before {
		background-image: url(/assets/img/top/sp_bg_pic_sec_2_4.jpg)
	}
	#pid-index .pic-sec-3 {
		height: 72vw
	}
}

#pid-index .pic-sec-3 a {
	display: block;
	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;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: relative;
	width: 100%;
	height: 100%;
	padding: 0
}

#pid-index .pic-sec-3 a:before {
	position: absolute;
	top: auto;
	right: 19px;
	bottom: 20px;
	left: auto;
	width: 18px;
	height: 18px
}

#pid-index .pic-sec-3 a:hover:before {
	color: #fff
}

#pid-index .pic-sec-3 a h3 {
	line-height: 1.1
}

#pid-index .pic-sec-3 a h3 strong {
	color: #fff;
	letter-spacing: .15em;
	font-family: HelveticaNeueLTW1G-UltLt, 'Helvetica Neue LT W1G 25 Ultra Light', 'Helvetica Neue', sans-serif;
	font-weight: 200;
	font-size: 32px;
	font-size: 2rem
}

@media screen and (min-width:1280px) {
	#pid-index .pic-sec-3 a h3 strong {
		font-size: 40px;
		font-size: 2.5rem
	}
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-3 a:before {
		display: none
	}
	#pid-index .pic-sec-3 a h3 strong {
		letter-spacing: .2em;
		font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
		font-weight: 400;
		font-size: 22px;
		font-size: 1.375rem
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .pic-sec-3 a h3 {
		line-height: 2em
	}
	#pid-index .pic-sec-3 a h3 strong {
		font-size: 36px;
		font-size: 2.25rem
	}
}

#pid-index .pic-sec-3 a span {
	position: absolute;
	right: 24px;
	bottom: 16px;
	left: 24px;
	color: #fff;
	text-align: left;
	font-size: 16px;
	font-size: 1rem
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-3 a span {
		right: 0;
		bottom: 11px;
		left: 0;
		text-align: center;
		font-size: 13px;
		font-size: .8125rem
	}
}

#pid-index .pic-sec-3 [class^=pic-sec-box-] {
	float: left;
	width: 25%;
	height: 22.65625vw;
	text-align: center;
	overflow: hidden;
	position: relative
}

#pid-index .pic-sec-3 [class^=pic-sec-box-] .bg-mesh {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	background: rgba(46, 54, 66, .2)
}

#pid-index .pic-sec-3 [class^=pic-sec-box-]:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: -webkit-transform 125ms;
	transition: -webkit-transform 125ms;
	transition: transform 125ms;
	transition: transform 125ms, -webkit-transform 125ms
}

@media screen and (max-width:768px) {
	#pid-index .pic-sec-3 [class^=pic-sec-box-] {
		width: 50%;
		height: 45.3125vw
	}
}

#pid-index .pic-sec-3 .pic-sec-box-1:before {
	background: url(/assets/img/top/bg_pic_sec_3_1.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .pic-sec-3 .pic-sec-box-1 a h3 sub {
	bottom: 0
}

#pid-index .pic-sec-3 .pic-sec-box-2:before {
	background: url(/assets/img/top/bg_pic_sec_3_2.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .pic-sec-3 .pic-sec-box-3:before {
	background: url(/assets/img/top/bg_pic_sec_3_3.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .pic-sec-3 .pic-sec-box-4:before {
	background: url(/assets/img/top/bg_pic_sec_3_4.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .top-sec-2 {
	position: relative;
	width: 100%;
	height: 45.3125vw;
	background: url(/assets/img/top/bg_sec_5.jpg) center center no-repeat;
	background-size: cover;
	text-align: center
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-2 {
		height: 450px;
		padding: 0;
		background-position: -70px center
	}
}

#pid-index .top-sec-2 .sec-inner {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	height: 276px;
	margin: auto
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-2 .sec-inner {
		height: 190px
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-2 .sec-inner {
		width: 68%;
		height: 214px
	}
}

#pid-index .top-sec-2 .sec-title {
	width: 100%;
	margin: 0;
	padding: 28px 0 0;
	color: #fff;
	text-align: center;
	letter-spacing: .2em;
	font-family: '游ゴシック', YuGothic, 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	text-transform: uppercase;
	font-size: 28px;
	font-size: 1.75rem
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-2 .sec-title {
		padding: 7px 4% 24.63px;
		text-align: left;
		letter-spacing: .4em;
		font-size: 20px;
		font-size: 1.25rem
	}
}

#pid-index .top-sec-2 .sec-body {
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 26px 0 50px;
	color: #fff;
	line-height: 2.25em;
	letter-spacing: .08em;
	zoom: 1;
	font-size: 16px;
	font-size: 1rem
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-2 .sec-body {
		display: block;
		padding: 0 4% 70px;
		text-align: left;
		line-height: 1.86;
		letter-spacing: .08em;
		font-size: 13px;
		font-size: .8125rem
	}
}

#pid-index .top-sec-2 .w-line-btn span {
	font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif
}

#pid-index .top-sec-2 .w-line-btn span:lang(en) {
	font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400
}

#pid-index .top-sec-3 {
	padding: 80px 0 76px;
	background-color: #f3f4f5
}

#pid-index .top-sec-3 [class^=col-] {
	width: 472px;
	border: 0
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-3 {
		padding: 50px 0 58.5px
	}
	#pid-index .top-sec-3 [class^=col-] {
		width: 100%
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-3 .layout-col-2 {
		padding: 0 4%
	}
	#pid-index .top-sec-3 [class^=col-] {
		width: 47.83%
	}
}

#pid-index .top-sec-3 .sec-inner {
	background-color: #fff
}

#pid-index .top-sec-3 .sec-inner.is-hover [class^=sec-img-] .bg-mesh {
	background: rgba(46, 54, 66, .25);
	opacity: 0
}

#pid-index .top-sec-3 .sec-inner.is-hover-animation {
	-webkit-transition: box-shadow 375ms cubic-bezier(.4, 0, .2, 1);
	transition: box-shadow 375ms cubic-bezier(.4, 0, .2, 1)
}

#pid-index .top-sec-3 .sec-inner .img-ripple {
	display: block;
	position: relative
}

#pid-index .top-sec-3 .sec-inner [class^=sec-img-] {
	width: 472px;
	height: 266px;
	-webkit-transition-duration: 125ms;
	transition-duration: 125ms;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	align-items: center;
	overflow: hidden;
	position: relative
}

#pid-index .top-sec-3 .sec-inner [class^=sec-img-] .bg-mesh {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	background: rgba(46, 54, 66, .3)
}

#pid-index .top-sec-3 .sec-inner [class^=sec-img-]:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: -webkit-transform 125ms;
	transition: -webkit-transform 125ms;
	transition: transform 125ms;
	transition: transform 125ms, -webkit-transform 125ms
}

#pid-index .top-sec-3 .sec-inner [class^=sec-img-] h3 {
	line-height: 1.75em;
	z-index: 2
}

#pid-index .top-sec-3 .sec-inner [class^=sec-img-] h3 strong {
	color: #fff;
	letter-spacing: .05em;
	font-size: 68px;
	font-size: 4.25rem;
	font-family: HelveticaNeueLTW1G-UltLt, 'Helvetica Neue LT W1G 25 Ultra Light', 'Helvetica Neue', sans-serif;
	font-weight: 200
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-3 .col-1 {
		padding-bottom: 18px
	}
	#pid-index .top-sec-3 .col-1 .sec-inner .sec-body .sec-text {
		padding: 16px 0 21px
	}
	#pid-index .top-sec-3 .sec-inner [class^=sec-img-] {
		width: 100%;
		height: 193px
	}
	#pid-index .top-sec-3 .sec-inner [class^=sec-img-] h3 strong {
		letter-spacing: .025em;
		font-size: 44px;
		font-size: 2.75rem
	}
}

#pid-index .top-sec-3 .sec-inner .sec-img-museum:before {
	background: url(/assets/img/top/sec_6_img_1.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .top-sec-3 .sec-inner .sec-img-ticket:before {
	background: url(/assets/img/top/sec_6_img_2.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .top-sec-3 .sec-inner .sec-body {
	position: relative;
	min-height: 209px;
	padding: 70px 40px 60px;
	text-align: center
}

#pid-index .top-sec-3 .sec-inner .sec-body .sec-title {
	font-weight: 300;
	text-align: center;
	letter-spacing: .31em;
	text-transform: uppercase;
	font-size: 20px;
	font-size: 1.25rem
}

#pid-index .top-sec-3 .sec-inner .sec-body .sec-title span {
	font-family: Helvetica, Verdana, sans-serif
}

#pid-index .top-sec-3 .sec-inner .sec-body .sec-title br.only-sp-tab {
	display: none
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-3 .sec-inner .sec-body {
		min-height: 0;
		padding: 47px 17px 24px
	}
	#pid-index .top-sec-3 .sec-inner .sec-body .sec-title {
		padding-top: 0;
		line-height: 1.5em;
		letter-spacing: .39em;
		font-size: 17px;
		font-size: 1.0625rem
	}
	#pid-index .top-sec-3 .sec-inner .sec-body .sec-title br.only-sp-tab {
		display: inline
	}
}

#pid-index .top-sec-3 .sec-inner .sec-body .sec-text {
	padding-top: 32px;
	font-weight: 300;
	text-align: left;
	line-height: 1.86;
	font-size: 14px;
	font-size: .875rem;
	font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif
}

#pid-index .top-sec-3 .sec-inner .sec-body .sec-text:lang(en) {
	font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400
}

#pid-index .top-sec-3 .sec-inner .sec-body [class^=sec-icon-] {
	position: absolute;
	top: 0;
	left: 50%;
	width: 68px;
	height: 68px;
	margin: -34px auto auto -34px;
	border-radius: 50%;
	background-color: #c00
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-3 .sec-inner .sec-body .sec-text {
		padding: 16px 0 22.13px;
		line-height: 1.9em;
		font-size: 13px;
		font-size: .8125rem
	}
	#pid-index .top-sec-3 .sec-inner .sec-body [class^=sec-icon-] {
		width: 50px;
		height: 50px;
		margin: -25px auto auto -25px
	}
}

#pid-index .top-sec-3 .sec-inner .sec-body [class^=sec-icon-] svg {
	width: 38px;
	height: 38px;
	margin: 13px 0 0;
	fill: rgba(255, 255, 255, .8)
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-3 .sec-inner .sec-body [class^=sec-icon-] svg {
		width: 30px;
		height: 30px;
		margin: 10px 0 0
	}
}

#pid-index .top-sec-3 .sec-inner .sec-body .w-line-btn-blank {
	position: absolute;
	bottom: 60px;
	left: 50%;
	margin-left: -127px
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-3 .sec-inner .sec-body .w-line-btn-blank {
		position: relative;
		bottom: auto;
		left: auto;
		margin-left: 0
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-3 .sec-inner .sec-body {
		min-height: 209px
	}
	#pid-index .top-sec-3 .sec-inner .sec-body .sec-title {
		min-height: 52px
	}
	#pid-index .top-sec-3 .sec-inner .sec-body .sec-title br.only-sp-tab {
		display: inline
	}
	#pid-index .top-sec-3 .sec-inner .sec-body .w-line-btn-blank {
		position: absolute;
		bottom: 30px;
		left: auto;
		margin-left: -132px
	}
}

#pid-index .top-sec-4 {
	padding: 0 0 80px;
	background-color: #f3f4f5
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-4 {
		padding-bottom: 37px
	}
}

#pid-index .top-sec-4 .top-sec-4-title {
	width: 984px;
	margin: 0 auto;
	padding-bottom: 19px;
	font-weight: 100;
	letter-spacing: .02em;
	font-size: 20px;
	font-size: 1.25rem;
	font-family: Helvetica, Verdana, sans-serif
}

@media screen and (min-width:1280px) {
	#pid-index .top-sec-4 .top-sec-4-title {
		width: 1020px
	}
}

#pid-index .top-sec-4 [class^=col-] {
	border: 0;
	background: #fff
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-4 .top-sec-4-title {
		width: 100%;
		padding-bottom: 28px;
		text-align: center;
		letter-spacing: .09em;
		font-size: 17px;
		font-size: 1.0625rem
	}
	#pid-index .top-sec-4 [class^=col-] {
		margin-bottom: 20px
	}
}

#pid-index .top-sec-4 [class^=col-].is-hover .sec-inner [class^=sec-img-] .bg-mesh {
	background: rgba(46, 54, 66, 0)
}

#pid-index .top-sec-4 [class^=col-].is-hover-animation {
	-webkit-transition: box-shadow 375ms cubic-bezier(.4, 0, .2, 1);
	transition: box-shadow 375ms cubic-bezier(.4, 0, .2, 1)
}

#pid-index .top-sec-4 .js-ripple {
	display: block;
	overflow: hidden;
	position: relative
}

#pid-index .top-sec-4 .sec-inner {
	background-color: #fff
}

#pid-index .top-sec-4 .sec-inner [class^=sec-img-] {
	width: 231px;
	height: 130px;
	overflow: hidden;
	position: relative
}

#pid-index .top-sec-4 .sec-inner [class^=sec-img-] .bg-mesh {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	background: rgba(46, 54, 66, .2)
}

#pid-index .top-sec-4 .sec-inner [class^=sec-img-]:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: -webkit-transform 125ms;
	transition: -webkit-transform 125ms;
	transition: transform 125ms;
	transition: transform 125ms, -webkit-transform 125ms
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-4 .sec-inner [class^=sec-img-] {
		width: 100%;
		height: 92px
	}
	#pid-index .top-sec-4 .sec-inner [class^=sec-img-] h3 {
		display: none
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-4 .layout-col-4 {
		padding: 0 4%
	}
	#pid-index .top-sec-4 [class^=col-] {
		margin-bottom: 32px
	}
	#pid-index .top-sec-4 .sec-inner [class^=sec-img-] {
		height: 25.1385vw
	}
}

#pid-index .top-sec-4 .sec-inner [class^=sec-img-] h3 {
	padding-top: 21%;
	text-align: center
}

#pid-index .top-sec-4 .sec-inner [class^=sec-img-] h3 strong {
	color: #fff;
	font-size: 26px;
	font-size: 1.625rem;
	font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
	font-weight: 400
}

#pid-index .top-sec-4 .sec-inner .sec-img-4-1:before {
	background: url(/assets/img/top/sec_7_img_1.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .top-sec-4 .sec-inner .sec-img-4-2:before {
	background: url(/assets/img/top/sec_7_img_2.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .top-sec-4 .sec-inner .sec-img-4-3:before {
	background: url(/assets/img/top/sec_7_img_3.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .top-sec-4 .sec-inner .sec-img-4-4:before {
	background: url(/assets/img/top/sec_7_img_4.jpg) center center no-repeat;
	background-size: cover
}

#pid-index .top-sec-4 .sec-inner .sec-body {
	position: relative;
	padding: 18px;
	color: #222
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-4 .sec-inner .sec-body {
		padding: 5px 12px
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .top-sec-4 .sec-inner .sec-body {
		padding: 5px 16px
	}
}

#pid-index .top-sec-4 .sec-inner .sec-body .sec-title {
	font-weight: 600;
	letter-spacing: .02em;
	font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
	font-size: 14px;
	font-size: .875rem
}

#pid-index .top-sec-4 .sec-inner .sec-body .sec-title:lang(en) {
	font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-4 .sec-inner .sec-body .sec-title {
		letter-spacing: .05em
	}
}

#pid-index .top-sec-4 .sec-inner .sec-body .sec-title span {
	font-family: Helvetica, Verdana, sans-serif
}

#pid-index .top-sec-4 .sec-inner .sec-body .sec-text {
	padding-top: 12px;
	font-weight: 300;
	text-align: left;
	line-height: 1.86;
	letter-spacing: .02em;
	font-size: 12px;
	font-size: .75rem;
	font-family: 'Hiragino Sans', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif
}

#pid-index .top-sec-4 .sec-inner .sec-body .sec-text:lang(en) {
	font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
	font-weight: 400
}

@media screen and (max-width:768px) {
	#pid-index .top-sec-4 .sec-inner .sec-body .sec-text {
		padding-top: 8px;
		line-height: 1.75em;
		font-size: 11px;
		font-size: .6875rem
	}
	#pid-index .top-sec-4 .col-3 .sec-body .sec-title span {
		letter-spacing: .03em
	}
}

@font-face {
	font-family: jal-icon-font;
	src: url(/assets/fonts/jal-icon-font.eot);
	src: url(/assets/fonts/jal-icon-font.eot?#iefix) format("eot"), url(/assets/fonts/jal-icon-font.woff) format("woff"), url(/assets/fonts/jal-icon-font.ttf) format("truetype"), url(/assets/fonts/jal-icon-font.svg#jal-icon-font) format("svg");
	font-weight: 400;
	font-style: normal
}

[class^=icon-] {
	display: inline-block;
	font-family: jal-icon-font;
	font-style: normal;
	font-weight: 400;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	zoom: 1
}

.icon-lg {
	font-size: 1.3333333333333333em;
	line-height: .75em;
	vertical-align: -15%
}

.icon-2x {
	font-size: 2em
}

.icon-3x {
	font-size: 3em
}

.icon-4x {
	font-size: 4em
}

.icon-5x {
	font-size: 5em
}

.icon-fw {
	width: 1.2857142857142858em;
	text-align: center
}

.icon-arrow-circle-center:before {
	content: "\EA01"
}

.icon-arrow-circle-left:before {
	content: "\EA02"
}

.icon-arrow-circle-right:before {
	content: "\EA03"
}

.icon-arrow-circle-up:before {
	content: "\EA04"
}

.icon-arrow-left:before {
	content: "\EA05"
}

.icon-blank-circle-center:before {
	content: "\EA06"
}

.icon-blank-circle-left:before {
	content: "\EA07"
}

.icon-blank-circle-right:before {
	content: "\EA08"
}

.icon-download:before {
	content: "\EA09"
}

.icon-menu-close:before {
	content: "\EA0A"
}

.icon-menu-minus:before {
	content: "\EA0B"
}

.icon-menu-plus:before {
	content: "\EA0C"
}

.icon-rss:before {
	content: "\EA0D"
}

.icon-toggle:before {
	content: "\EA0E"
}

html:lang(ja) body {
	font-family: "游ゴシック", YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	-webkit-text-size-adjust: none;
	font-weight: 300
}

html:lang(en) body {
	font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', TeXGyreHerosRegular, Helvetica, Tahoma, Geneva, Arial, sans-serif;
	-webkit-text-size-adjust: none
}

.desktop.ie p:lang(en) {
	font-family: 'Helvetica Light', Helvetica, Tahoma, Geneva, Arial, sans-serif;
	font-weight: 400
}

.ie .u-bold, .ie .u-hdg-4 {
	font-family: HelveticaNeueRagular, HelveticaNeue-Ragular, 'Helvetica Neue Ragular', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif!important;
	font-weight: 700!important
}

h1, h2, h3, h4, h5 {
	margin: 0;
	padding: 0;
	font-weight: 400
}

.is-en {
	font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
	font-weight: 400
}

#pid-index.lang-en .text-section-2 .w-line-btn {
	width: 267px
}

@media screen and (min-width:769px) {
	#pid-index.lang-en .meshing-sec .meshing-subtitle {
		font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-weight: 400;
		font-size: 18px;
		font-size: 1.125rem;
		line-height: 1.44444;
		letter-spacing: .08em
	}
	#pid-index.lang-en [class^=text-section-] .text-sec-body .text-sec-title {
		font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
		font-weight: 400;
		font-size: 32px;
		font-size: 2rem;
		line-height: 1.57;
		letter-spacing: .2em;
		letter-spacing: .08em
	}
	#pid-index.lang-en [class^=text-section-] .text-sec-body .text-sec-text {
		font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-weight: 400;
		font-size: 16px;
		font-size: 1rem;
		line-height: 1.5;
		letter-spacing: .04em
	}
	#pid-index.lang-en .text-section-2 .layout-col-2 .col-text {
		padding-top: 0;
		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;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		-ms-flex-pack: center;
		justify-content: center
	}
	#pid-index.lang-en .text-section-2 .layout-col-2 .text-sec-title {
		width: 323px
	}
	#pid-index.lang-en .top-sec-2 .sec-title {
		font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
		font-weight: 400;
		font-size: 32px;
		font-size: 2rem;
		line-height: 1.57;
		letter-spacing: .2em
	}
	#pid-index.lang-en .top-sec-1 .sec-inner .sec-body .sec-text .unit {
		margin-left: 0
	}
	#pid-index.lang-en .top-sec-3 .sec-inner .sec-body .sec-title {
		font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-weight: 400;
		font-size: 22px;
		font-size: 1.375rem;
		line-height: 1.36364;
		letter-spacing: .08em
	}
	#pid-index.lang-en .top-sec-3 .sec-inner .sec-body {
		min-height: 244px
	}
	#pid-index.lang-en .top-sec-3 .sec-inner .sec-body .w-line-btn-blank {
		margin-bottom: 0
	}
}

@media screen and (max-width:768px) {
	#pid-index.lang-en .meshing-sec .meshing-subtitle {
		font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-weight: 400;
		font-size: 15px;
		font-size: .9375rem;
		line-height: 1.53333;
		letter-spacing: .08em
	}
	#pid-index.lang-en .top-sec-1 .sec-inner .sec-body .sec-text strong span {
		letter-spacing: 0
	}
	#pid-index.lang-en .top-sec-1 .sec-inner {
		margin-left: 4%;
		margin-right: 4%
	}
	#pid-index.lang-en [class^=text-section-] .text-sec-body .text-sec-title {
		font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
		font-weight: 400;
		font-size: 24px;
		font-size: 1.5rem;
		line-height: 1.33333;
		letter-spacing: .2em;
		letter-spacing: .08em
	}
	#pid-index.lang-en .top-sec-3 .sec-inner .sec-body .sec-text, #pid-index.lang-en .top-sec-3 .sec-inner .sec-body .sec-title, #pid-index.lang-en [class^=text-section-] .text-sec-body .text-sec-text {
		font-family: HelveticaNeueLight, HelveticaNeue-Light, 'Helvetica Neue Light', HelveticaNeue, 'Helvetica Neue', Helvetica, Arial, sans-serif;
		font-weight: 400
	}
	#pid-index.lang-en [class^=text-section-] .text-sec-body .text-sec-text {
		font-size: 13px;
		font-size: .8125rem;
		line-height: 1.65;
		letter-spacing: .04em
	}
	#pid-index.lang-en .top-sec-3 .sec-inner .sec-body .sec-title {
		font-size: 18px;
		font-size: 1.125rem;
		line-height: 1.44444;
		letter-spacing: .08em
	}
	#pid-index.lang-en .top-sec-3 .sec-inner .sec-body .sec-text {
		font-size: 13px;
		font-size: .8125rem;
		line-height: 1.65;
		letter-spacing: .04em
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index.lang-en .top-sec-1 .sec-inner {
		margin-left: 25.9%;
		margin-right: 25.9%
	}
	#pid-index.lang-en .top-sec-1 .sec-inner .sec-body {
		width: 50%;
		margin-left: 0
	}
	#pid-index.lang-en .top-sec-3 .sec-inner .sec-body {
		min-height: 253px
	}
}




/* レイアウト改修 180913追記 */

#pid-index #top-sec-outline, #pid-index #top-sec-csr, #pid-index #top-sec-flight, #pid-index #top-sec-investor {
	padding: 5rem 0;
}

@media screen and (max-width:768px) {
	#pid-index #top-sec-outline, #pid-index #top-sec-csr, #pid-index #top-sec-flight, #pid-index #top-sec-investor {
		padding: 3rem 0;
	}
}

#pid-index #top-sec-outline, #pid-index #top-sec-flight {
	background: #f3f4f5;
}

#pid-index #top-sec-csr, #pid-index #top-sec-investor {
	background: #fff;
}

#pid-index #top-sec-outline h2, #pid-index #top-sec-csr h2, #pid-index #top-sec-flight h2, #pid-index #top-sec-investor h2 {
	text-align: center;
	font-size: 28px;
	font-size: 1.8rem;
	color: #cc0000;
}

@media screen and (max-width:768px) {
	#pid-index #top-sec-outline h2, #pid-index #top-sec-csr h2, #pid-index #top-sec-flight h2, #pid-index #top-sec-investor h2 {
		font-size: 22px;
		font-size: 1.4rem;
	}
}

.no-touch #pid-index .pic-menu [class^=pic-sec-box-]:hover:before {
	-webkit-transform: scale(1.05);
	-ms-transform: scale(1.05);
	transform: scale(1.05)
}

.no-touch #pid-index .pic-menu [class^=pic-sec-box-]:hover .bg-mesh {
	opacity: 0
}

#pid-index .pic-menu {
	width: 100%;
	height: 22.65625vw;
	margin-top: 5rem;
}

#pid-index .pic-menu:after {
	content: " ";
	clear: both;
	display: block;
	font-size: 0;
	height: 0;
	visibility: hidden
}

@media screen and (max-width:768px) {
	#pid-index .pic-menu {
		height: 90vw;
		margin-top: 3rem;
	}
}

#pid-index .pic-menu a {
	display: block;
	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;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	-ms-flex-pack: center;
	justify-content: center;
	position: relative;
	width: 100%;
	height: 100%;
	padding: 0
}

#pid-index .pic-menu a h3 {
	padding: 0;
	line-height: 1.2;
}

#pid-index .pic-menu a h3:before {
	position: absolute;
	top: auto;
	bottom: -30px;
	left: 50%;
	width: 18px;
	height: 18px;
	margin-left: -9px;
}

#pid-index .pic-menu a:hover h3:before {
	color: #fff
}

#pid-index .pic-menu a h3 strong {
	color: #fff;
	letter-spacing: .15em;
	font-family: "游ゴシック", YuGothic, "Hiragino Sans", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-weight: 200;
	font-size: 22px;
	font-size: 1.4rem
}

#pid-index .pic-menu a h3 strong:lang(en) {
	font-family: HelveticaNeueLTW1G-UltLt, 'Helvetica Neue LT W1G 25 Ultra Light', 'Helvetica Neue', sans-serif;
}

@media screen and (min-width:1280px) {
	#pid-index .pic-menu a h3 strong {
		font-size: 28px;
		font-size: 1.8rem
	}
}

@media screen and (max-width:768px) {
	#pid-index .pic-menu a h3:before {
		display: none
	}
	#pid-index .pic-menu a h3 strong {
		letter-spacing: .2em;
		font-weight: 400;
		font-size: 16px;
		font-size: 1rem
	}
	#pid-index .pic-menu a h3 strong:lang(en) {
		font-family: 'Helvetica Neue LT W1G 35 Thin', 'Helvetica Neue', sans-serif;
/*
		font-size: 22px;
		font-size: 1.375rem
*/
	}
	#pid-index .pic-menu a h3 strong .sub {
		font-size: 12px;
		font-size: 0.8rem
	}
}

@media screen and (min-width:645px) and (max-width:768px) {
	#pid-index .pic-menu a h3 {
		line-height: 2em
	}
	#pid-index .pic-menu a h3 strong {
		font-size: 36px;
		font-size: 2.25rem
	}
}

#pid-index .pic-menu [class^=pic-sec-box-] {
	float: left;
	width: 25%;
	height: 22.65625vw;
	text-align: center;
	overflow: hidden;
	position: relative
}

#pid-index .pic-menu [class^=pic-sec-box-] .bg-mesh {
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	transition: background 125ms cubic-bezier(.4, 0, .2, 1);
	background: rgba(46, 54, 66, .2)
}

#pid-index .pic-menu [class^=pic-sec-box-]:before {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	-webkit-transition: -webkit-transform 125ms;
	transition: -webkit-transform 125ms;
	transition: transform 125ms;
	transition: transform 125ms, -webkit-transform 125ms
}

@media screen and (max-width:768px) {
	#pid-index .pic-menu [class^=pic-sec-box-] {
		width: 50%;
		height: 45.3125vw
	}
}

#pid-index #top-sec-outline .pic-menu .pic-sec-box-1:before {
	background: url(/assets/img/top/bg_pic_sec_outline_1.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-outline .pic-menu .pic-sec-box-2:before {
	background: url(/assets/img/top/bg_pic_sec_outline_2.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-outline .pic-menu .pic-sec-box-3:before {
	background: url(/assets/img/top/bg_pic_sec_outline_3.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-outline .pic-menu .pic-sec-box-4:before {
	background: url(/assets/img/top/bg_pic_sec_outline_4.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-csr .pic-menu .pic-sec-box-1:before {
	background: url(/assets/img/top/bg_pic_sec_csr_1.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-csr .pic-menu .pic-sec-box-2:before {
	background: url(/assets/img/top/bg_pic_sec_csr_2.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-csr .pic-menu .pic-sec-box-3:before {
	background: url(/assets/img/top/bg_pic_sec_csr_3.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-csr .pic-menu .pic-sec-box-4:before {
	background: url(/assets/img/top/bg_pic_sec_csr_4.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-flight .pic-menu .pic-sec-box-1:before {
	background: url(/assets/img/top/bg_pic_sec_flight_1.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-flight .pic-menu .pic-sec-box-2:before {
	background: url(/assets/img/top/bg_pic_sec_flight_2.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-flight .pic-menu .pic-sec-box-3:before {
	background: url(/assets/img/top/bg_pic_sec_flight_3.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-flight .pic-menu .pic-sec-box-4:before {
	background: url(/assets/img/top/bg_pic_sec_flight_4.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-investor .pic-menu .pic-sec-box-1:before {
	background: url(/assets/img/top/bg_pic_sec_investor_1.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-investor .pic-menu .pic-sec-box-2:before {
	background: url(/assets/img/top/bg_pic_sec_investor_2.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-investor .pic-menu .pic-sec-box-3:before {
	background: url(/assets/img/top/bg_pic_sec_investor_3.jpg) center center no-repeat;
	background-size: cover;
}

#pid-index #top-sec-investor .pic-menu .pic-sec-box-4:before {
	background: url(/assets/img/top/bg_pic_sec_investor_4.jpg) center center no-repeat;
	background-size: cover;
}