@charset "UTF-8";

/*===== STYLE LIST ==========================================================
 1: Custom Setting
 2: Layout
 3: Category Layout
 4: Module
 5: Abtest ADD
============================================================================= */

/* 1: Custom Setting
============================================================================= */
/* Base */
html {
	font-size: 62.5%; /* 10px */
	overflow-y: scroll;
}
body {
	background-color: #FFFFFF;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 1.6rem; /* Default 16px */
	line-height: 1.7;
}
*, *::before, *::after {
	box-sizing: border-box;
}
#document {
	width: 100%;
}
.spView {
	display: none!important;
}
.pcView {
	display: block!important;
}

@media screen and (max-width: 640px) {
	body {
		max-width: 640px;
		min-width: 320px;
		font-size: 1.4rem; /* 640 - 14px */
		line-height: 1.6;
		overflow: hidden;
	}
	.spView {
		display: block!important;
	}
	.pcView {
		display: none!important;
	}
}

/* Text
----------------------------------------------------------------------------- */
h1,
main > article > p.bg {
	margin-bottom: 2.5em;
	font-size: 3.2rem;
	font-weight: 500;
	line-height: 1.5;
}
h1 > span,
main > article > p.bg > span {
	display: block;
	width: 1000px;
	margin: 0 auto;
}
h1.category {
	padding: 0;
	background-position: center center;
	background-repeat: no-repeat;
}
h1.category > span {
	display: table;
	height: 250px;
	font-size: 4.8rem;
}
h1.category.h300-200 > span {
	height: 300px;
}
h1.category > span > span {
	display: table-cell;
	text-shadow: 0 0 10px #FFFFFF, 0 0 20px #FFFFFF, 0 0 30px #FFFFFF, 0 0 40px #FFFFFF, 0 0 50px #FFFFFF;
	vertical-align: middle;
}
h1.category > span > span span.read {
	display: block;
	margin-top: 1em;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.7;
}
main.cp h1.category {
	background-image: url(/grp/common/images/company/head-bg.jpg);
}
main.ab h1.category {
	background-image: url(/grp/common/images/company/about/head-bg.jpg);
}
main.ne h1.category {
	background-image: url(/grp/common/images/company/newsroom/head-bg.jpg);
}
main.re h1.category {
	background-image: url(/grp/common/images/company/recruit/head-bg.jpg);
}
main.br h1.category {
	background-image: url(/grp/common/images/company/brand/head-bg.jpg);
}
main.su h1.category {
	background-image: url(/grp/common/images/company/sustainability/head-bg.jpg);
}
main.ir h1.category {
	background-image: url(/grp/common/images/company/ir/head-bg.jpg);
}
main.pe h1.category {
	background-image: url(/grp/common/images/personal/head-bg.jpg);
}
main.bu h1.category {
	background-image: url(/grp/common/images/business/head-bg.jpg);
}
h1.bg,
main > article > p.bg {
	margin-bottom: 2em;
	padding: 25px 0;
	background-color: #EBF0FA;
	background-image: linear-gradient(180deg, #E8EFFF 0, #F6F9FF 100%);
}
h2 {
	margin-bottom: 1em;
	font-size: 2.6rem;
	font-weight: 500;
	line-height: 1.4;
}
h2.line {
	position: relative;
	padding-left: 24px;
}
h2.line::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 6px;
	height: 100%;
	background-image: linear-gradient(0deg, #1E4191 0, #7D1E69 35%, #CD1432 100%);
}
h2.bg {
	position: relative;
	width: 100%;
	margin-bottom: 1.5em;
	background-image: linear-gradient(90deg, #E2E8F7 0, #F3F6FC 51%);
	color: #1E4191;
	font-size: 3rem;
}
h2.bg > span {
	display: table-cell;
	width: 1000px;
	padding: 30px 510px 30px 30px;
	vertical-align: middle;
}
h2.bg > span > span {
	display: block;
	width: 100%;
	margin-top: 0.25em;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.2;
}
main.ir #finance h2.bg,
main.ir #maintenance h2.bg,
main.ir #estate h2.bg,
main.ir #investment h2.bg,
main.ir #retail h2.bg,
main.ir #overseas h2.bg {
	display: table;
	min-height: 150px;
	background-position: right top;
	background-repeat: no-repeat;
}
main.ir #finance h2.bg {
	background-image: url(/grp/common/images/company/ir/individual-what-img-bg-finance.jpg), linear-gradient(90deg, #E2E8F7 0, #F3F6FC 51%);
}
main.ir #maintenance h2.bg {
	background-image: url(/grp/common/images/company/ir/individual-what-img-bg-maintenance.jpg), linear-gradient(90deg, #E2E8F7 0, #F3F6FC 51%);
}
main.ir #estate h2.bg {
	background-image: url(/grp/common/images/company/ir/individual-what-img-bg-estate.jpg), linear-gradient(90deg, #E2E8F7 0, #F3F6FC 51%);
}
main.ir #investment h2.bg {
	background-image: url(/grp/common/images/company/ir/individual-what-img-bg-investment.jpg), linear-gradient(90deg, #E2E8F7 0, #F3F6FC 51%);
}
main.ir #retail h2.bg {
	background-image: url(/grp/common/images/company/ir/individual-what-img-bg-retail.jpg), linear-gradient(90deg, #E2E8F7 0, #F3F6FC 51%);
}
main.ir #overseas h2.bg {
	background-image: url(/grp/common/images/company/ir/individual-what-img-bg-overseas.jpg), linear-gradient(90deg, #E2E8F7 0, #F3F6FC 51%);
}
h3 {
	margin-bottom: 0.75em;
	font-size: 2.1rem;
	font-weight: 500;
	line-height: 1.4;
}
h3.icon {
	padding-left: 20px;
	background-image: url(/grp/common/images/icon-head3.gif);
	background-position: left 0.5em;
	background-repeat: no-repeat;
	background-size: 8px 8px;
}
h4 {
	margin-bottom: 0.75em;
	font-size: 2.1rem;
	font-weight: 500;
	line-height: 1.4;
}
h4.icon {
	padding-left: 20px;
	background-image: url(/grp/common/images/icon-head4.gif);
	background-position: left 0.6em;
	background-repeat: no-repeat;
}
h5 {
	margin-bottom: 0.75em;
	font-size: 2.0rem;
	font-weight: 500;
	line-height: 1.4;
}
h6 {
	margin-bottom: 0.75em;
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 1.4;
}
.basis {
	font-size: 1.6rem;
	line-height: 1.7;
}
h2 + div,
h2 + section,
h3 + div,
h3 + section,
h4 + div,
h4 + section,
h5 + div,
h5 + section,
h6 + div,
h6 + section {
	margin-top: 0!important;
	margin-bottom: 2em!important;
}
p {
	font-weight: 400;
}
article p {
	margin-bottom: 1.5em;
	line-height: 2;
}
div.section p {
	margin-bottom: 0.5em;
	line-height: 1.7;
}
strong, em {
	font-style: normal;
	font-weight: 500;
}
.searchResults em {
	background: #DAE5F3;
}
i {
	font-style: normal;
}
address, caption, cite, code {
	font-size: inherit;
	font-style: normal;
	font-weight: 400;
}
.textDate {
	margin-bottom: 0.5em;
	font-size: 1.4rem;
	text-align: right;
}
.txt-indent {
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 640px) {
	h1 {
		margin-bottom: 1.5em;
		font-size: 2rem;
	}
	h1 > span,
	main > article > p.bg > span {
		width: 100%;
		margin: 0;
	}
	h1.category {
		width: 100%;
		height: 100px;
		/*[2017/12/27 Adjust] height: 200px;*/
		margin-bottom: 1.5em;
		background-size: 600px 100px;
		/*[2017/12/27 Adjust] background-size: 1200px 200px;*/
		vertical-align: middle;
	}
	h1.category.h300-200 {
		width: 100%;
		height: auto;
		margin-bottom: 1.5em;
		background-size: 500px 100px;
		/*[2017/12/27 Adjust] background-size: 1000px 200px;*/
		background-position: center top;
	}
	h1.category > span {
		width: 100%;
		height: 100px;
		/*[2017/12/27 Adjust] height: 200px;*/
		font-size: 2.4rem;
	}
	h1.category > span > span {
		padding: 10px;
	}
	h1.category.h300-200 > span {
		height: 120px;
		/*[2017/12/27 Adjust] height: 240px;*/
	}
	h1.category > span > span span.title {
		display: block;
		line-height: 90px;
		/*[2017/12/27 Adjust] line-height: 180px;*/
		vertical-align: middle;
	}
	h1.category > span > span span.title + .read {
		display: block;
		margin-top: 2em;
		text-shadow: none;
	}
	main.hi h1.category,
	main.mi h1.category {
		background-size: auto;
	}
	h1.category + .formBlock {
		margin-top: 0;
	}
	h1.bg,
	main > article > p.bg {
		margin-bottom: 1.5em;
		padding: 15px 10px;
		font-size: 2rem;
	}
	h2 {
		font-size: 1.8rem;
	}
	h2.line {
		padding-left: 14px;
	}
	h2.line::after {
		width: 4px;
	}
	h2.bg {
		width: auto;
		min-height: inherit;
		margin-bottom: 1em;
		background-image: linear-gradient(90deg, #E2E8F7 0, #F3F6FC 100%);
	}
	h2.bg > span {
		display: block;
		width: auto;
		padding: 15px 10px;
		background-image: none;
		font-size: 2.2rem;
		line-height: 1.5;
	}
	h2.bg > span > span {
		width: auto;
		margin-top: 0.5em;
		font-size: 1.4rem;
		line-height: 1.6;
	}
	main.ir #finance h2.bg,
	main.ir #maintenance h2.bg,
	main.ir #estate h2.bg,
	main.ir #investment h2.bg,
	main.ir #retail h2.bg,
	main.ir #overseas h2.bg {
		display: block;
		min-height: inherit;
		background-image: linear-gradient(90deg, #E2E8F7 0, #F3F6FC 100%);
	}
	h3,
	h4 {
		font-size: 1.7rem;
	}
	h4.icon::after {
		top: 16px;
	}
	h5 {
		font-size: 1.6rem;
	}
	h6 {
		font-size: 1.5rem;
	}
	.basis {
		font-size: 1.4rem;
	}
	article p {
		margin-bottom: 1.25em;
		line-height: 1.7;
	}
	.textDate {
		margin: 0 10px 1.25em 10px;
	}
}

/* List
----------------------------------------------------------------------------- */
ol,
ul {
	margin: 0 0 2em 1.5em;
	list-style-position: outside;
}
ol li:not(:last-child),
ul li:not(:last-child) {
	margin-bottom: 0.5em;
}
dl {
	margin: 0 0 1.75em 0;
}
dt {
	margin: 0 0 0.5em 0;
	padding: 0;
}
dd:not(:last-child) {
	margin: 0 0 2em 0;
	padding: 0;
}
dd > *:last-child {
	margin-bottom: 0;
}
ol.nomark,
ul.nomark {
	margin-left: 0;
	list-style: none;
}
ul.itemlist {
	margin: 0 0 2em 0;
	list-style: none;
}
ul.itemlist li {
	padding-left: 1.25em;
	background-image: url(/grp/common/images/icon-itemlist01.png);
	background-position: left 0.7em;
	background-repeat: no-repeat;
}
ol.nomark li a:link,
ol.nomark li a:visited,
ul.nomark li a:link,
ul.nomark li a:visited,
.itemlist li a:link,
.itemlist li a:visited {
	color: #224392;
}
ol.list01,
dl.list01 dt {
	font-size: 1.8rem;
	font-weight: 500;
}
ol.list01 li > div,
dl.list01 dd {
	font-size: 1.6rem;
	font-weight: 400;
}
ol.notice,
ul.notice {
	margin-left: 0;
	list-style: none;
}
ol.notice li,
ul.notice li {
	position: relative;
	margin-bottom: 0.25em;
	padding-left: 1.5em;
	color: #777777;
	font-size: 1.4rem;
	line-height: 1.5;
}
ol.notice li::after,
ul.notice li::after {
	content: '※';
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	width: 1.5em;
}
ol.bracket,
ol.numeral {
	margin-left: 0;
	list-style: none;
}
ol.bracket li,
ol.numeral li {
	position: relative;
	margin-bottom: 0.25em;
	padding-left: 2.5em;
	color: #777777;
	counter-increment: cnt;
	font-size: 1.4rem;
	line-height: 1.5;
}
ol.bracket li::after {
	content: '(*' counter(cnt) ')';
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
}
ol.numeral li::after {
	content: '※' counter(cnt);
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
}

@media screen and (max-width: 640px) {
	ol,
	ul {
		margin: 0 0 2em 1.5em;
	}
	dd:not(:last-child) {
		margin: 0 0 1em 0;
	}
	ol.list01,
	dl.list01 dt {
		font-size: 1.6rem;
	}
	ol.list01 li > div,
	dl.list01 dd {
		font-size: 1.4rem;
	}
	ol.notice li,
	ul.notice li {
		font-size: 1.2rem;
	}
}

/* Table
----------------------------------------------------------------------------- */
.table01,
.table02,
.table03 {
	width: 1000px;
	margin: 0 auto 2em auto;
	overflow: visible;
}
.table01 table,
.table02 table,
.table03 table {
	width: 100%;
	border: none;
	background-color: #FFFFFF;
}
.table01 table th,
.table01 table td,
.table02 table th,
.table02 table td,
.table03 table th,
.table03 table td {
	padding: 20px;
}
.table01 table th *:last-child,
.table01 table td *:last-child,
.table02 table th *:last-child,
.table02 table td *:last-child,
.table03 table th *:last-child,
.table03 table td *:last-child {
	margin-bottom: 0;
}
.table01 caption,
.table02 caption,
.table03 caption {
	margin-bottom: 0.5em;
}
.table01 table + p.caption,
.table02 table + p.caption,
.table03 table + p.caption {
	margin-top: 0.5em;
}
.table01 caption.right,
.table02 caption.right,
.table03 caption.right {
	margin-bottom: 0.5em;
	font-size: 1.4rem;
	text-align: right;
}
.table01 table + p.caption.right,
.table02 table + p.caption.right,
.table03 table + p.caption.right {
	margin: 0.5em 0 0 0;
	font-size: 1.4rem;
	text-align: right;
}
.table01 table p,
.table02 table p,
.table03 table p {
	margin-bottom: 0.5em;
	line-height: 1.7;
}
.table01 table a,
.table02 table a,
.table03 table a {
	color: #234493;
}
.table01 table.vTop tr > th,
.table01 table.vTop tr > td,
.table02 table.vTop tr > th,
.table02 table.vTop tr > td,
.table03 table.vTop tr > th,
.table03 table.vTop tr > td {
	vertical-align: top;
}
.table01 table.vMiddle tr > th,
.table01 table.vMiddle tr > td,
.table02 table.vMiddle tr > th,
.table02 table.vMiddle tr > td,
.table03 table.vMiddle tr > th,
.table03 table.vMiddle tr > td {
	vertical-align: middle;
}
.table01 table.alignC tr > th,
.table01 table.alignC tr > td,
.table02 table.alignC tr > th,
.table02 table.alignC tr > td,
.table03 table.alignC tr > th,
.table03 table.alignC tr > td {
	text-align: center;
}
.table01 table thead.nowrap tr > th,
.table02 table thead.nowrap tr > th,
.table03 table thead.nowrap tr > th,
.table01 table tbody.nowrap tr > th,
.table02 table tbody.nowrap tr > th,
.table03 table tbody.nowrap tr > th,
table tr .nowrap {
	white-space: nowrap;
}
.table01 table + *,
.table02 table + *,
.table03 table + * {
	margin-top: 1em;
}
table + ol,
table + ul,
table + p {
	margin-left: 10px!important;
	margin-right: 10px!important;
}

/* Align */
table tbody.alignTh tr > th,
table tbody.align01 tr > td:first-child,
table tbody.align02 tr > td:nth-child(2),
table tbody.align03 tr > td:nth-child(3),
table tbody.align04 tr > td:nth-child(4),
table tbody.alignLast tr > td:last-child {
	text-align: center;
}

/* Color */
table .color01 {
	background-color: #E0E7F9!important;
}

/* Half */
.table01.half {
	width: 470px;
	margin: 0 0 2em 0!important;
}

/* Table 01 */
/*.table01 table tr:nth-child(odd) {
	background-color: #F5F8FF;
}*/
.table01 table thead tr th {
	background-color: #E0E7F9;
	text-align: center;
	vertical-align: middle;
}
.table01 table tr th {
	padding: 20px 30px;
	border: 1px solid #ccc;
	font-weight: 500;
	vertical-align: top;
	background: #F5F8FF;
}
.table01 table td {
	vertical-align: top;
	border: 1px solid #ccc;
}

/* Table 02 */
/*.table02 table tbody tr:nth-child(odd) {
	background-color: #F5F8FF;
}*/
.table02 table thead tr > th {
	background-color: #E0E7F9;
	font-weight: 500;
	text-align: center;
}
.table02 table tr > th,
.table02 table tr > td {
	vertical-align: middle;
	border: 1px solid #ccc;
}
/*.table02 table thead tr > th:not(:first-child),
.table02 table tbody tr > td:not(:first-child) {
	border-left: 2px solid #FFFFFF;
}*/

/* Table 03 */
.table03 table th {
	background-color: #E0E7F9;
	font-weight: 500;
}
.table03 table thead th {
	text-align: center;
}
.table03 table thead th:first-child {
	background-color: #C5D1F3;
}
/*.table03 table tbody tr:nth-child(odd) th {
	background-color: #D7E1F9;
}
.table03 table tbody tr:nth-child(odd) td {
	background-color: #F5F8FF;
}*/
.table03 table td,
.table03 table th {
	border: 1px solid #cccccc;
	vertical-align: middle;
}
/*.table03 table tr > *:first-child {
	border-left: none;
}*/

@media screen and (max-width: 640px) {
	.table01,
	.table02 {
		width: 100%;
		overflow-x: auto;
	}
	.table03 {
		width: 100%;
		margin: 0;
	}
	.table01 caption,
	.table02 caption,
	.table03 caption {
		margin-left: 10px;
		margin-right: 10px;
	}
	.table01 table th,
	.table01 table td,
	.table02 table th,
	.table02 table td {
		padding: 20px 10px;
	}

	/* Table 01 */
	/*.table01 table th:first-child,
	.table01 table td:first-child {
		border-top: 1px solid #ccc;
	}*/
	.table01 table tr th {
		border-top: none;
	}
	.table01 table tr td {
		border-top: none;
	}
	.table01 table tr:first-child th {
		border-top: 1px solid #ccc;
	}
	.scroll tr:first-child td {
		border-top: 1px solid #ccc;
	}

	/* Table 02 */
	.table02 table tbody td:first-child {
		font-size: 1.6rem;
		font-weight: 500;
	}
	.table02 table thead tr > th:not(:first-child),
	.table02 table tbody tr > td:not(:first-child) {
		border-left: none;
	}
	.table02 table tbody tr:nth-child(odd) {
		background-color: transparent;
	}
	.table02 table tbody td:first-child {
		background-color: #E0E7F9;
	}
	.table02 table tbody td:nth-child(2) {
		background-color: #F5F8FF;
	}
	.table02 .tbody {
		border-bottom: 1px solid #ccc;
	}

	/* Vertical */
	.vertical table,
	.vertical caption,
	.vertical tbody,
	.vertical thead,
	.vertical tfoot,
	.vertical tr,
	.vertical th,
	.vertical td {
		display: block;
		width: auto;
	}
	.vertical caption {
		margin: 0 10px 0.5em 10px;
	}
	.table01.vertical table th {
		padding: 15px 10px 15px 10px;
	}
	.table01.vertical table td:first-child {
		padding: 20px 10px 5px 10px;
	}
	.table01.vertical table td:last-child {
		padding: 5px 10px 20px 10px;
		/*border-left: none;*/
	}
	.table01.vertical table td {
		padding: 5px 10px;
	}
	.table02.vertical table th,
	.table02.vertical table td {
		padding: 20px 10px;
	}
	.table03.vertical table th {
		padding: 20px 10px;
		/*border-left: none;*/
		border-top: none;
		text-align: left;
	}
	.table03.vertical table th + td,
	.table03.vertical table td:first-child {
		padding: 20px 10px 10px 10px ;
	}
	.table03.vertical table td:last-child {
		padding: 10px 10px 20px 10px ;
	}
	.table03.vertical table td {
		padding: 10px;
		/*border-left: none;*/
		border-top: none;
	}
	.table03.vertical table tr:first-child th {
		border-top: 1px solid #ccc;
	}
	.table03 thead {
		border-top: 1px solid #ccc;
	}
	.table03 table thead th {
		border-top: none!important;
	}
	.table03 table thead th:last-child {
		border-bottom: none;
	}

	/* Scroll */
	.scroll {
		position: relative;
		max-width: 640px;
		width: 100vw;
		margin-bottom: 1.5em;
		overflow-x: scroll !important;
		/* [2018/02/06 Adjust #332] overflow-x: scroll;*/
		scrollbar-base-color: #F0F0F0;
		scrollbar-track-color: #F0F0F0;
		scrollbar-face-color: #224392;
		scrollbar-3dlight-color: #224392;
		scrollbar-highlight-color: #224392;
		scrollbar-shadow-color: #224392;
		scrollbar-darkshadow-color: #224392;
	}
	.scroll > div {
		margin-bottom: 0;
	}
	.scroll::-webkit-scrollbar {
		height: 10px;
	}
	.scroll::-webkit-scrollbar-track {
		background-color: #F0F0F0;
	}
	.scroll::-webkit-scrollbar-thumb {
		background-color: #224392;
	}
	.scroll .cover {
		position: relative;
	}
	.scroll .cover::after {
		content: '';
		position: absolute;
		top: 100px;
		left: 50%;
		width: 55px;
		height: 79px;
		margin-top: -30px;
		margin-left: -40px;
		background-image: url(/grp/common/images/sp-icon-hand01.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 55px 79px;
		/* [2018/02/06 Add #332] */
		display: none;
	}
	.scroll .cover:hover {
		cursor: pointer;
	}
	.scroll .cover table {
		position: relative;
		overflow: hidden;
	}
	.scroll table {
		width: 1000px;
	}
	.scroll .cover table::after {
		content: '';
		position: absolute;
		top: 0;
		left: 0;
		max-width: 1000px;
		width: 100%;
		height: 100%;
		background-image: url(/grp/common/images/sp-bg-hand01.png);
		background-position: top left;
		background-repeat: repeat-y;
		overflow: hidden;
		/* [2018/02/06 Add #332] */
		display: none;
	}

	/* Sort */
	.sort .table,
	.sort .tbody,
	.sort .row,
	.sort .column,
	.sort .column::before {
		display: block;
	}
	.sort .thead {
		position: absolute;
		top: -1000em;
		left: -1000em;
	}
	/*.sort .row .column:nth-child(1){ 
		border-left: none;
	}
	.sort .row .column:last-child {
		border-right: none;
	}*/
	.sort .column {
		padding: 20px 10px;
		border-top: 1px solid #ccc;
		border-right: 1px solid #ccc;
		border-left: 1px solid #ccc;
	}
	.sort .column:nth-child(odd) {
		font-size: 1.4rem;
	}
	/* [2018/03/14 Add Start] */
	.sort .column:first-child {
		background-color: #E0E7F9;
		font-size: 1.6rem;
		font-weight: 500;
	}
	/*.sort .column:last-child {
		border-bottom: 1px solid #ccc;
	}*/
	/* [2018/03/14 Add End] */
	.sort .column::before {
		content: ' 'attr(data-label)' ';
		margin-bottom: 0.25em;
		font-weight: 500;
	}

	/* Half */
	.table01.half {
		width: auto;
	}
	.table01.half tr td {
		border-top: 1px solid #ccc;
	}
}

/* Image
----------------------------------------------------------------------------- */
figure {
	display: inline-block;
}
figure img,
.figure img {
	display: inline-block;
	width: 100%;
	height: auto;
}
figure .line {
	margin-bottom: 0.5em!important;
	padding: 10px;
	border: 1px solid #F0F0F0;
	text-align: center;
}
figure > img + figcaption,
figure > p + figcaption {
	margin: 0.5em 0 0 0;
	font-size: 1.2rem;
	text-align: left;
}
figure figcaption {
	font-size: 1.2rem;
}
figure figcaption.right {
	text-align: right;
}

@media screen and (max-width: 640px) {
	figure {
		display: block;
	}
	figure .line {
		padding: 0;
		border: none!important;
	}
}

/* Link
----------------------------------------------------------------------------- */
a {
	text-decoration: none;
}
a:link {
	color: #000000;
}
a:visited {
	color: #000000;
}
a:hover {
	color: #000000;
	text-decoration: underline;
}
a:active {
	color: #000000;
	text-decoration: underline;
}
a:focus {
	color: #000000;
	text-decoration: underline;
}
/*article p:not([class]) a {
	color: #234493;
	text-decoration: none;
}*/
article p a {
	color: #234493!important;
	text-decoration: none;
}
article p a:hover,
article p a:focus {
	color: #234493!important;
	text-decoration: underline;
}
/*article p:not([class]) a:hover,
article p:not([class]) a:focus {
	color: #234493;
	text-decoration: underline;
}*/
a[href^='tel:'] {
	color: #000000;
	text-decoration: none!important;
}
a[href^='tel:']:hover {
	text-decoration: none;
}
a[href^='tel:'] {
	cursor: default;
	pointer-events: none;
}
a[href^='mailto:'] {
	color: #234493;
}
a.underline {
	text-decoration: underline;
}
a.underline:hover {
	text-decoration: none;
}
p.link01,
ul.link01 {
	margin-left: 0;
	padding-left: 1em;
	list-style: none;
}
p.link01 a,
ul.link01 a {
	padding-right: 20px;
	background-image: url(/grp/common/images/icon-arrow01.png);
	background-position: right center;
	background-repeat: no-repeat;
	color: #000000!important;
}

@media screen and (max-width: 640px) {
	a[href^='tel:'] {
		color: #234493;
		cursor: pointer;
		pointer-events: auto;
	}
	a[href^='tel:']:hover {
		text-decoration: none;
	}
}

/* Button */
.buttonBlock {
	margin: 2.5em 0;
	text-align: center;
}
.buttonBlock > a,
.buttonBlock > span {
	display: inline-block;
	min-width: 250px;
	max-width: 460px;
	font-size: 1.3rem;
	line-height: 1.2;
	text-align: center;
	vertical-align: top;
}
.buttonBlock > a:not([class]),
.buttonBlock > a:not([class]) span {
	min-width: 180px;
}
.buttonBlock > a span {
	color: #000;
	display: table-cell;
	min-width: 250px;
	vertical-align: middle;
	padding: 8px 50px 8px 65px;
}
.buttonBlock > a:not([class]) span {
	padding: 8px 50px;
}
a.popup {
	background-image: url(/grp/common/images/icon-popup01.png);
	background-position: 96% center;
	background-repeat: no-repeat;
}
a.back {
	background-image: url(/grp/common/images/icon-arrow05.png);
	background-position: 15px center;
	background-repeat: no-repeat;
}
.buttonBlock.oval > a,
a.oval {
	margin: 0 20px;
	background-color: #FFFFFF;
	border: 1px solid #CC1433;
	border-radius: 50px 50px;
}
.buttonBlock.oval > a + a {
	margin-left: 0;
}
.buttonBlock.oval > a:hover,
.buttonBlock.oval > a:focus,
a.oval:hover,
a.oval:focus {
	opacity: 0.7;
	text-decoration: none;
}

@media screen and (max-width: 640px) {
	.buttonBlock {
		margin: 2em 20px;
	}
	.buttonBlock > a:not([class]),
	.buttonBlock > a:not([class]) span {
		min-width: 270px;
	}
	.buttonBlock.oval > a,
	a.oval {
		display: inline-block;
		max-width: 560px;
		min-width: 68.3%;
		margin: 0;
	}
	.buttonBlock > a span {
		display: block;
		min-width: 100%;
		width: 100%;
	}
	a.zoom {
		background-color: #1E4191!important;
		border: none!important;
		color: #FFFFFF;
		background-image: url(/grp/common/images/icon-zoom01.png);
		background-position: 15px center;
		background-repeat: no-repeat;
		background-size: 16px 16px;
	}
	a.back {
		background-image: url(/grp/common/images/icon-arrow05.png);
		background-position: 15px center;
	}
	.buttonBlock.oval > a:first-child:nth-last-child(2),
	.buttonBlock.oval > a:first-child:nth-last-child(2) ~ a {
		display: inline-block;
		max-width: 48%;
		min-width: 48%;
		margin: 0 0 0 3%;
	}
	.buttonBlock.oval > a:first-child:nth-last-child(2) span,
	.buttonBlock.oval > a:first-child:nth-last-child(2) ~ a span {
		display: block;
		min-width: 100%;
		padding: 8px 10px;
	}
	.buttonBlock.oval > a:first-child {
		margin-left: 0!important;
	}
}
@media screen and (max-width: 320px) {
	.buttonBlock {
		margin: 2em 10px;
	}
}

/* Form
----------------------------------------------------------------------------- */
label {
	vertical-align: middle;
}
::-webkit-input-placeholder {
	color: #AAAAAA;
	opacity: 1;
}
::-moz-placeholder {
	color: #AAAAAA;
	opacity: 1;
}
button {
	padding: 0;
	border: none;
	background-color: transparent;
}
input::-ms-clear {
	visibility: hidden;
}
input::-ms-reveal {
	visibility: hidden;
}
select::-ms-expand {
	display: none;
}
select::-ms-expand {
	display: none;
}
input[type="text"]::-webkit-input-placeholder {
	color: #AAAAAA;
}
input[type="text"]::-moz-placeholder {
	color: #AAAAAA;
}
input[type="text"]:-ms-input-placeholder {
	color: #AAAAAA;
}
input[type="text"]:placeholder-shown {
	color: #AAAAAA;
}
input[type="text"]:focus:placeholder-shown {
	color: #000000;
}
input[type="text"]::placeholder {
	color: #AAAAAA;
}
input[type="text"].form-input01 {
	width: 100%;
	height: 60px;
	padding: 5px 20px 3px 20px;
	background-color: #FFFFFF;
	border: 1px solid #E0E0E0;
	border-radius: 0;
	font-size: 2.0rem;
	line-height: 30px;
	outline: none;
}
input[type="text"].form-input02 {
	width: 100%;
	height: 50px;
	padding: 5px 20px 3px 20px;
	background-color: #FFFFFF;
	border: 1px solid #E0E0E0;
	border-radius: 0;
	font-size: 1.7rem;
	line-height: 20px;
	outline: none;
}
input[type="text"]:focus:-moz-focusring {
	border: 3px solid #AAAAAA;
}
input[type="text"]:focus {
	border: 2px solid #AAAAAA;
}
input[type="submit"].btn-search {
	min-width: 250px;
	padding: 5px;
	background-color: #FFFFFF;
	background-image: url(/grp/common/images/icon-search02.png);
	background-position: 95% center;
	background-repeat: no-repeat;
	border: 1px solid #CC1433;
	border-radius: 25px;
	color: #000000;
	font-size: 1.3rem;
	line-height: 1;
	text-align: center;
}
input[type="submit"].btn-search:hover {
	opacity: 0.7;
}
input[type="submit"].btn-search.disabled {
	background-image: url(/grp/common/images/icon-search01.png);
	border: 1px solid #999999;
	color: #999999;
}
input[type="submit"].disabled {
	border: 1px solid #999999;
	color: #999999;
}
input[type="submit"].disabled:hover {
	opacity: 1;
}

/* Form Block */
.formBlock {
	margin: 4em auto 5em auto;
	width: 1000px;
}
.formBlock .formTable {
	display: table;
	width: 100%;
}
.formBlock .formTable dt,
.formBlock .formTable > dd  {
	display: table-cell;
	vertical-align: middle;
}
.formBlock .formTable > dt {
	padding-right: 30px;
	font-weight: 500;
	white-space: nowrap;
}
.formBlock .formTable + .btnBlock {
	margin-top: 2em;
}
.formBlock .btnBlock {
	text-align: center;
}

@media screen and (max-width: 640px) {
	input[type="text"].form-input01 {
		height: 50px;
		padding: 5px 20px 3px 20px;
		font-size: 1.8rem;
		line-height: 28px;
	}
	input[type="submit"].btn-search {
		padding: 10px 20px;
	}
	.formBlock {
		display: block;
		margin: 4em auto;
		width: auto;
		padding: 0 10px;
	}
	.formBlock .formTable dt,
	.formBlock .formTable > dd  {
		display: block;
	}
	.formBlock .formTable dt {
		width: auto;
		padding-right: 0;
		font-size: 1.6rem;
	}
}

/* Search Form
----------------------------------------------------------------------------- */
.formPannel {
	width: 100%;
	padding: 0;
	margin: 0 0 30px 0;
	border: 1px solid #E0E0E0;
}
.formPannel > a {
	display: block;
	text-decoration: none;
	cursor: pointer;
	padding: 1.5em;
	position: relative;
}
.formPannel > a h2 {
	margin-bottom: 0;
	line-height: 1;
	font-size: 1.6rem;
	font-weight: 500;
	text-decoration: none;
}
.formPannel > a h2.pannelIcon {
	padding-right: 40px;
	background-image: url(/grp/common/images/icon-plus01.png);
	background-position: 100% center;
	background-repeat: no-repeat;
}
.formPannel > a h2.pannelIcon.active {
	background-image: url(/grp/common/images/icon-minus01.png);
}
.formPannel .pannel {
	display: none;
	text-align: left;
	padding: 1.5em 1.5em 1em 1.5em;
}
.formPannel .pannel dl:last-child {
	margin-bottom: 0;
}
.formPannel .pannel dt {
	width: 9em;
	font-size: 1.7rem;
	vertical-align: top;
}
.formPannel .pannel .formCheck {
	position: relative;
	display: block;
	margin-bottom: 1.2rem;
}
.formPannel .pannel .formInline,
.formPannel .pannel .formInline span {
	display: inline-block;
}
.formPannel .pannel .formIndent {
	padding-left: 1.25em;
}
.formPannel .pannel .formTable + .btnBlock {
	margin: 0 0 1.25em 0;
}

@media screen and (max-width: 640px) {
	.formPannel > a h2 {
		font-size: 1.6rem;
	}
	.formPannel .pannel dt {
		width: 100%;
		padding-bottom: 0.2em;
		font-size: 1.6rem;
		margin-bottom: 0.75em;
		border-bottom: 1px solid #E5E5E5;
	}
	.formPannel .pannel dd label {
		display: inline-block;
		font-size: 1.6rem;
	}
}

/* Search Form Pannel Radio */
.radio01-input {
	opacity: 0;
	position: absolute;
	top: 15px;
	left: 15px;
	z-index: -1;
	-webkit-appearance: radio;
}
.radio01-input:focus {
	border: 2px solid #AAAAAA;
}
.radio01-input + label {
	position:relative;
	display: inline-block;
	padding-left: 44px;
	margin-right: 34px;
}
.radio01-input:hover + label {
	cursor: pointer;
}
.radio01-input + label::before {
	content: '';
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 24px;
	height: 24px;
	border: 1px solid #E3E3E3;
	border-radius: 50%;
}
.radio01-input:checked + label::after {
	content: '';
	display: inline-block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 7px;
	margin: auto;
	width: 10px;
	height: 10px;
	background: #C91937;
	border-radius: 50%;
}

/* Search Form Pannel Checkbox */
.checkbox01-input {
	opacity: 0;
	position: absolute;
	top: 15px;
	left: 15px;
	z-index: -1;
	-webkit-appearance: checkbox;
}
.checkbox01-parts {
	position:relative;
	padding-left: 44px;
	margin-right: 34px;
}
.checkbox01-parts:hover {
	cursor: pointer;
}
.checkbox01-parts::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	width: 30px;
	height: 30px;
	border: 1px solid #E3E3E3;
}
.checkbox01-input:checked + .checkbox01-parts::after {
	content: '';
	display: block;
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 12px;
	margin: auto;
	width: 9px;
	height: 15px;
	transform: rotate(40deg);
	border-bottom: 3px solid #C91937;
	border-right: 3px solid #C91937;
}

/* Form Select */
.formSelect {
	position: relative;
	display: block;
	margin-bottom: 1.2rem;
}
.formSelect > div + label{
	position:relative;
	margin: 0 34px 0 16px;
}
.formSelect > div {
	position: relative;
	display: inline-block;
	background-color: #FFFFFF;
	z-index: 0;
}
.formSelect > div::before {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 28px;
	height: 50px;
	background-color: #E0E0E0;
	pointer-events: none;
	z-index: -2;
}
.formSelect > div::after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	right: 9px;
	width: 0;
	height: 0;
	margin-top: -0.2em;
	border-width: 0.4em 0.35em;
	border-style: solid;
	border-color: #000000 transparent transparent;
	pointer-events: none;
	z-index: -1;
}
.form-select01 {
	position: relative;
	min-width: 180px;
	height: 50px;
	padding: 5px 48px 3px 20px;
	background-color: transparent;
	border: 1px solid #E0E0E0;
	border-radius: 0;
	font-size: 1.7rem;
	line-height: 20px;
	outline: none;
}
/* [2018/03/14 Add Start] */
select[disabled].form-select01 {
	position: relative;
	min-width: 180px;
	height: 50px;
	padding: 5px 48px 3px 20px;
	background-color: #efefef;
	border: 1px solid #E0E0E0;
	border-radius: 0;
	font-size: 1.7rem;
	line-height: 20px;
	outline: none;
}
/* [2018/03/14 Add End] */
.form-select01 option {
	background-color: #FFFFFF;
}
.form-select02 {
	position: relative;
	width: 100%;
	height: 50px;
	padding: 5px 48px 3px 20px;
	background-color: transparent;
	border: 1px solid #E0E0E0;
	border-radius: 0;
	font-size: 1.7rem;
	line-height: 20px;
	outline: none;
}
.formPannel .formSelect > div select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #000000;
	border: 3px solid #AAAAAA;
}
.formPannel input[type="radio"]:focus+label::before,
.formPannel input[type="checkbox"]:focus+label::before,
.formPannel .formSelect > div select:focus {
	border: 2px solid #AAAAAA;
}
.formSelect > div.stacked {
	display: block;
}
.hide {
	display: none;
}
.formSelect.subBox label{
	position:relative;
	display: block;
	margin-bottom: 0.2em;
}

@media all and (-ms-high-contrast:none) {
	*::-ms-backdrop,
	.radio01-input + label::before,
	.radio01-input:checked + label::after,
	.checkbox01-parts::before,
	.checkbox01-input:checked + .checkbox01-parts::after {
		bottom: 10px;
	}
}

/* Search Results */
.searchResultsBlock {
	width: 1000px;
	margin: 0 auto 4em;
}
.searchResultsBlock h2 {
	font-size: 1.9rem;
}
.searchResultsBlock h2 span {
	margin-left: 2em;
}
.searchResults {
	margin: 0 0 2em 0;
	list-style: none;
}
.searchResults > li {
	margin-bottom: 0!important;
	border-bottom: 1px solid #F0F0F0;
}
.searchResults > li a {
	display: block;
	padding: 20px 0;
	text-decoration: none;
}
.searchResults > li a::after {
	content: '';
	clear: both;
	display: block;
}
.searchResults > li dl {
	margin-bottom: 0;
}
.searchResults > li dt {
	float: left;
	width: 210px;
	margin-bottom: 0;
}
.searchResults > li dt img {
	width: 180px;
}
.searchResults > li a:hover h3,
.searchResults > li a:focus h3,
.searchResults > li a:hover p,
.searchResults > li a:focus p {
	text-decoration: underline;
}
.searchResults > li dd {
	width: 790px;
}
.searchResults > li dd h3 {
	margin-bottom: 0.25em;
	color: #224392;
	font-size: 1.9rem;
}
.searchResults > li dd h3 span {
	color: #000000;
}
.searchResults > li dd ul {
	margin: 0;
	letter-spacing: -0.4em;
	list-style: none;
}
.searchResults > li dd ul li {
	display: inline-block;
	width: 160px;
	margin: 0 0 5px 10px;
	border: 1px solid #D0D0D0;
	color: #656565;
	font-size: 1.2rem;
	line-height: 1.4;
	letter-spacing: normal;
	text-align: center;
}
.searchResults > li ul li:first-child {
	width: auto;
	margin-left: 0;
	text-align: left;
	border: none;
	color: #000000;
}
.searchResults > li .summary {
	display: block;
	width: 790px;
	margin-left: auto;
}
.searchResults > li .summary p {
	margin-bottom: 0;
}
.searchResults > li dd .summary p.link {
	font-size: 1.4rem;
	color: #224392;
	line-height: 1.6;
}

@media screen and (max-width: 640px) {
	.searchResultsBlock {
		width: auto;
		padding: 0 10px;
	}
	.searchResultsBlock h2 {
		font-size: 1.8rem;
	}
	.searchResultsBlock h2 span {
		display: block;
		margin-left: 0;
	}
	.searchResults > li dl {
		display: flex;
		flex-wrap: wrap;
	}
	.searchResults > li dt {
		width: 50%;
	}
	.searchResults > li dt img {
		width: 90%;
	}
	.searchResults > li dd {
		width: 50%;
	}
	.searchResults > li dd h3 {
		font-size: 1.6rem;
	}
	.searchResults > li dd h3 span {
		display: block;
	}
	.searchResults > li dd ul li {
		margin: 0;
	}
	.searchResults > li ul li:first-child {
		display: block;
	}
	.searchResults > li dd ul li:not(:first-child) {
		width: auto;
		padding: 0 1.5em;
		margin-bottom: 0.7em;
	}
	.searchResults > li dd ul li:last-child {
		margin-bottom: 0;
	}
	.searchResults > li .summary {
		width: 100%;
		margin-top: 1em;
	}
	.searchResults > li .summary p {
		font-size: 1.4rem;
		line-height: 1.4;
	}
	.searchResults > li .summary p.link {
		margin-top: 0.5em;
		font-size: 1.2rem;
		word-wrap: break-word;
	}
}

/* Search Results Not */
.searchResultsNot {
	margin: 4em auto 0;
	width: 1000px;
}
.searchResultsNot h2 {
	margin-bottom: 0.75em;
}
.searchResultsNot p {
	margin-bottom: 0;
}

@media screen and (max-width: 640px) {
	.searchResultsNot {
		width: auto;
		margin: 2.5em 10px;
	}
	.searchResultsNot h2 {
		font-size: 1.8rem;
	}
	.searchResultsNot p {
		font-size: 1.6rem;
	}
}

/* 2: Layout
============================================================================= */

/* Noscript Message
----------------------------------------------------------------------------- */
#njstext {
	display: block;
	width: 100%;
	background-color: #F0F0F0;
}
#njstext p {
	width: 1000px;
	margin: 0 auto;
	padding: 35px 0;
	font-size: 1.8rem;
}

/* Contents
----------------------------------------------------------------------------- */
.contents {
	min-width: 1000px;
	width: 100%;
	background-color: #FFFFFF;
}

@media screen and (max-width: 640px) {
	.contents {
		min-width: 100%;
	}
}

/* Nav Block
----------------------------------------------------------------------------- */
.navBlock {
	display: table;
	width: 1000px;
	margin: 0 auto;
	padding: 10px 0;
	color: #777777;
}

/* Breadcrumb  */
.navBlock .breadcrumb {
	display: table-cell;
	vertical-align: middle;
}
.navBlock .breadcrumb ul {
	margin: 0;
	letter-spacing: -0.4em;
	list-style: none;
}
.navBlock .breadcrumb ul li {
	position: relative;
	display: inline-block;
	margin: 0 1.25em 0 0;
	padding-right: 1.75em;
	font-size: 1.1rem;
	letter-spacing: normal;
	line-height: 1.4;
}
.navBlock .breadcrumb ul li::after {
	content: ' > ';
	position: absolute;
	top: 0;
	right: 0;
}
.navBlock .breadcrumb ul li:last-child::after {
	content: '';
}
.navBlock .breadcrumb ul li:last-child {
	margin-right: 0;
	padding-right: 0;
}
.navBlock .breadcrumb a {
	color: #777777;
}
.navBlock .button {
	display: table-cell;
	padding-left: 20px;
	text-align: right;
	vertical-align: middle;
}
.navBlock .button .print {
	display: inline-block;
	margin: 0;
	font-size: 1.2rem;
	line-height: 1;
}
.navBlock .button .print a {
	display: inline-block;
	padding: 5px 10px 5px 32px;
	background-image: url(/grp/common/images/icon-print01.png);
	background-position: 10px center;
	background-repeat: no-repeat;
	border: 1px solid #777777;
	border-radius: 25px 25px;
	color: #777777;
	white-space: nowrap;
}
.navBlock .button .print a:hover {
	opacity: 0.7;
	text-decoration: none;
}

@media screen and (max-width: 640px) {
	.navBlock {
		display: none;
	}
}

/* Main
----------------------------------------------------------------------------- */
main {
	min-width: 1000px;
	width: 100%;
}
main article {
	width: 100%;
	margin: 0 auto 6em auto;
}
main article section,
main article div.section {
	width: 1000px;
	margin: 4em auto;
}
main article section > section,
main article div.section > section {
	margin: 3em auto;
}
main + aside {
	width: 1000px;
	margin: 6em auto;
}
h2 + section {
	margin-top: 0!important;
}

@media screen and (max-width: 640px) {
	main {
		min-width: 100%;
	}
	main article {
		margin: 0 0 4.5em 0;
	}
	main article section,
	main article div.section {
		width: auto;
		margin: 2.5em 10px;
	}
	main article .side {
		width: auto;
		margin-left: 0!important;
		margin-right: 0!important;
	}
	main article .side h2 {
		margin: 0 10px 1.25em 10px;
	}
	main article .side > h3,
	main article .side > h4,
	main article .side section > h3,
	main article .side section > h4 {
		margin: 0 10px 0.75em 10px;
	}
	main article .side .addSide > h3,
	main article .side .addSide > h4,
	main article .side .addSide section > h3,
	main article .side .addSide section > h4 {
		margin: 0 0 0.75em 0;
	}
	main article .side > p,
	main article .side section > p {
		margin: 0 10px 1.25em 10px;
	}
	main article .side > ul,
	main article .side > ol {
		margin: 0 10px 2em 10px;
	}
	main article > section section,
	main article > section .section,
	main article > section section section {
		width: auto;
		margin: 2.5em 0;
	}
	main article .addSide {
		margin-right: 10px!important;
		margin-left: 10px!important;
	}
	main article .addSide h2,
	main article .addSide h3,
	main article .addSide h4,
	main article .side.contactBlock > * {
		margin-right: 0;
		margin-left: 0;
	}
	main + aside {
		width: 100%;
		margin: 2.5em 0;
	}
}

/* Related Nav
----------------------------------------------------------------------------- */
div.relatedNav {
	margin-bottom: 2em;
}
.relatedNav {
	position: relative;
}
aside.relatedNav {
	padding-top: 2em;
}
aside.relatedNav::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 3px;
	background-image: linear-gradient(90deg, #1E4191 0, #7D1E69 35%, #CD1432 100%);
}
.relatedNav > h2 {
	margin-bottom: 1.25em;
	font-size: 2.4rem;
}
.relatedNav > h2 span {
	margin-left: 0.25em;
	color: #9A9A9A;
	font-size: 1.6rem;
	font-weight: 400;
}
aside h3 {
	margin-top: 2.5em;
	font-size: 1.8rem;
}
.relatedNav > ul {
	margin: 0;
	list-style: none;
	letter-spacing: -0.4em;
}
.relatedNav > ul li {
	position: relative;
	display: inline-block;
	margin: 0;
	border-bottom: 1px solid #F0F0F0;
	font-size: 1.5rem;
	letter-spacing: normal;
	vertical-align: top;
}
.relatedNav > ul li a {
	display: block;
	width: 490px;
	padding-right: 30px;
	background-image: url(/grp/common/images/icon-arrow01.png);
	background-position: 98% center;
	background-repeat: no-repeat;
	color: #000000;
}
.relatedNav > ul li:nth-child(1),
.relatedNav > ul li:nth-child(2) {
	border-top: 1px solid #F0F0F0;
}
.relatedNav > ul li:nth-child(even) {
	margin-left: 20px;
}
.relatedNav ul.nav02 li a.popup,
.relatedNav ul.nav05 li a.popup {
	background-image: url(/grp/common/images/icon-popup01.png);
}

/* nav01 */
.relatedNav ul.nav01 li a {
	display: table;
}
.relatedNav ul.nav01 li a span:nth-child(1) {
	display:table-cell;
	width: 100px;
	vertical-align: middle;
}
.relatedNav ul.nav01 li a span:nth-child(1) img {
	width: 100px;
	height: 70px;
}
.relatedNav ul.nav01 li a span:nth-child(2) {
	display: table-cell;
	width: 100%;
	padding-left: 20px;
	vertical-align: middle;
}
aside .relatedNav ul.nav01 li a img:not([class]) {
	display: inline-block;
	width: 100px;
	height: 70px;
}
.relatedNav ul.nav01 li a:hover img,
.relatedNav ul.nav01 li a:focus img {
	opacity: 0.7;
}
.relatedNav ul.nav01 li.current a::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 3px;
	height: 70px;
	background-color: #CC1332;
}
article .relatedNav ul.nav01 li {
	font-size: 2.2rem;
}
article .relatedNav > ul li a {
	padding: 10px 30px 10px 0;
}
article .relatedNav > ul li a img:not([class]) {
	display: inline-block;
	width: 140px;
	height: 100px;
}

/* nav02 */
.relatedNav ul.nav02 {
	margin: 2em 0;
}
article .relatedNav ul.nav02 li {
	font-size: 2.0rem;
}
article .relatedNav ul.nav02.base li {
	font-size: 1.6rem;
}
.relatedNav ul.nav02 li a,
article .relatedNav ul.nav02.base li a {
	padding: 22px 30px 22px 10px;
}
.relatedNav ul.nav02 li.current a {
	border-left: 3px solid #CC1332;
}
article .relatedNav ul.nav02 li a {
	padding: 32px 30px 32px 20px;
}
article .relatedNav ul.nav02.note li a {
	display: table-cell;
	padding: 22px 30px 22px 10px;
	vertical-align: middle;
}
article .relatedNav ul.nav02.note li a span.text {
	display: block;
	padding: 0;
	color: #777777;
	font-size: 1.4rem;
	line-height: 1.7;
}
article .relatedNav ul.nav02.note li a span.text span {
	display: inline-block;
}
article .relatedNav ul.nav02.note li a:hover span.text span,
article .relatedNav ul.nav02.note li a:focus span.text span,
article .relatedNav ul.nav02.note li a:hover span.text,
article .relatedNav ul.nav02.note li a:focus span.text {
	text-decoration: none;
}
article .relatedNav ul.nav02 li a span.size {
	display: inline-block;
}
article .relatedNav ul.nav02 li a:hover span.size {
	text-decoration: none;
}
aside.relatedNav > h3 + .relatedNav .nav02 {
	margin-top: 1em;
}

/* nav03 */
.relatedNav ul.nav03 {
	margin: 2em 0;
}
.relatedNav ul.nav03 li {
	margin-left: 50px;
	border: none;
}
.relatedNav ul.nav03 li:first-child {
	margin-left: 0;
}
.relatedNav ul.nav03 li a {
	width: auto;
	padding-right: 25px;
}
.relatedNav ul.nav03 li.current a span {
	display: inline-block;
	padding-bottom: 5px;
	border-bottom: 2px solid #CC1332;
}
.relatedNav ul.nav03 + .buttonBlock {
	margin-top: 3em;
}

/* nav04 */
.relatedNav .nav04 {
	margin-bottom: 2em;
}
.relatedNav .nav04::after {
	content: '';
	clear: both;
	display: block;
}
.relatedNav .nav04 .left {
	float: left;
	width: 490px;
	margin-right: 20px;
}
.relatedNav .nav04 .right {
	float: left;
	width: 490px;
}
.relatedNav .nav04 dl {
	margin-bottom: 0;
}
.relatedNav .nav04 > dl {
	border-top: 1px solid #F0F0F0;
}
.relatedNav .nav04 dl > dt {
	margin-bottom: 0;
}
.relatedNav .nav04 dl > dt a {
	display: block;
	padding: 20px 40px 20px 10px;
	background-image: url(/grp/common/images/icon-plus01.png);
	background-position: 97% center;
	background-repeat: no-repeat;
	border-bottom: 1px solid #F0F0F0;
}
.relatedNav .nav04 dl > dt.open a {
	background-image: url(/grp/common/images/icon-minus01.png);
}
.relatedNav .nav04 > dl > dd {
	display: none;
	border-bottom: 1px solid #F0F0F0;
}
.relatedNav .nav04 dl dl dt {
	margin-bottom: 0;
	padding: 20px;
}
.relatedNav .nav04 dl dd {
	margin-bottom: 0;
	background-color: #F5F8FF;
}
.relatedNav .nav04 dl dd ul {
	margin: 0;
	list-style: none;
}
.relatedNav .nav04 dl dd ul li {
	margin-bottom: 0;
	font-size: 1.5rem;
}
.relatedNav .nav04 dl dd ul li:last-child {
	border-top: none;
}
.relatedNav .nav04 dl dd ul li a {
	display: block;
	margin: 0 5px;
	padding: 20px 30px 20px 2em;
	background-image: url(/grp/common/images/icon-arrow01.png);
	background-position: 99% center;
	background-repeat: no-repeat;
}
.relatedNav .nav04 dl dd ul li:not(:last-child) a {
	border-bottom: 1px solid #F0F0F0;
}

/* nav05 */
.relatedNav ul.nav05 li {
	font-size: 2.0rem;
}
.relatedNav ul.nav05 li a {
	padding: 30px 40px 30px 20px;
	line-height: 2;
}
.relatedNav ul.nav05 li a span {
	display: inline-block;
	text-decoration: none;
}
.relatedNav ul.nav05 li a.popup {
	background-image: url(/grp/common/images/icon-popup01.png);
}

/* nav06 */
.relatedNav ul.nav06 {
	display: table;
	width: 100%;
	margin: 0.5em 0;
	table-layout: fixed;
}
.relatedNav ul.nav06 li {
	display: table-cell;
	border: none;
	font-size: 1.4rem;
	vertical-align: middle;
}
.relatedNav ul.nav06 li a {
	display: inline-block;
	width: auto;
	padding: 4px 30px 4px 0;
	line-height: 1.6;
}

@media screen and (max-width: 640px) {
	aside.relatedNav {
		padding-top: 1.5em;
	}
	.relatedNav > h2 {
		margin: 0 10px 1.25em 10px;
		font-size: 1.8rem;
	}
	.relatedNav > h2 span {
		display: block;
		margin-left: 0;
		color: #9A9A9A;
		font-size: 1.2rem;
	}
	.relatedNav > h3 {
		margin: 2.5em 10px 0.75em 10px;
		font-size: 1.6rem;
	}
	.relatedNav > ul li {
		display: block;
		font-size: 1.4rem;
	}
	.relatedNav > ul li a {
		width: 100%;
		padding-right: 40px;
		background-position: 97% center;
	}
	.relatedNav > ul li:nth-child(2) {
		border-top: none;
	}
	.relatedNav > ul li:nth-child(even) {
		margin-left: 0;
	}

	/* nav01 */
	.relatedNav ul.nav01 li a span:nth-child(2) {
		padding-left: 10px;
	}
	.relatedNav ul.nav01 + ul.nav02 li:nth-child(1) {
		border-top: none;
	}
	article	.relatedNav ul.nav01 li {
		font-size: 1.4rem;
	}
	article	.relatedNav ul.nav01 a {
		padding: 0 40px 0 0;
		overflow: hidden;
	}
	article	.relatedNav > ul li a img:not([class]) {
		width: 100px;
		height: 70px;
	}

	/* nav02 */
	.relatedNav ul.nav02 {
		margin: 0;
	}
	.relatedNav ul.nav02 li a {
		padding: 15px 40px 15px 10px;
	}
	article .relatedNav ul.nav02 li a {
		padding: 15px 40px 15px 10px;
		font-size: 1.4rem;
	}
	article .relatedNav ul.nav02.note li a {
		display: block;
		padding: 15px 40px 15px 10px;
	}

	/* nav03 */
	.relatedNav ul.nav03 {
		margin: 0;
	}
	.relatedNav ul.nav03 li {
		display: inline-block;
		width: 48.5%;
		margin-left: 0;
		border-bottom: 1px solid #F0F0F0;
		vertical-align: middle;
	}
	.relatedNav ul.nav03 li:nth-child(even) {
		margin-left: 3%;
	}
	.relatedNav ul.nav03 li a {
		padding: 10px 40px 10px 10px;
		background-position: 94.5% center;
	}
	.relatedNav ul.nav03 li.current a span {
		padding-bottom: 0;
		border-bottom: none;
	}
	.relatedNav ul.nav03 li.current a {
		border-left: 3px solid #CC1332;
	}
	.relatedNav ul.nav03 + .buttonBlock {
		margin-top: 2em;
	}

	/* nav04 */
	.relatedNav .nav04 .left {
		float: none;
		width: auto;
		margin-right: 0;
	}
	.relatedNav .nav04 .right {
		float: none;
		width: auto;
	}
	.relatedNav .nav04 .right {
		border-top: none;
	}
	.relatedNav .nav04 dl > dt a {
		background-position: 96% center;
		background-size: 10px 10px;
	}
	.relatedNav .nav04 dl dd ul li a {
		background-position: 96.5% center;
	}

	/* nav05 */
	.relatedNav ul.nav05 li {
		font-size: 1.4rem;
	}
	.relatedNav ul.nav05 li a {
		padding: 20px 30px 20px 10px;
		line-height: 2;
	}

	/* nav06 */
	.relatedNav ul.nav06 {
		display: block;
		margin: 0;
		table-layout: auto;
	}
	.relatedNav ul.nav06 li {
		display: block;
		border-bottom: 1px solid #F0F0F0;
	}
	.relatedNav ul.nav06 li a {
		display: block;
		padding: 10px 40px 10px 10px;
	}
}

@media screen and (max-width: 320px) {
	.relatedNav ul.nav03 li a {
		padding: 10px 20px 10px 10px;
		background-position: 94.5% center;
	}
}

/* Page Top
----------------------------------------------------------------------------- */
.pageTop {
	min-width: 1000px;
	width: 100%;
	padding-bottom: 2em;
	background-color: #E8EFF4;
}
/*.pageTop.show{*/
	/*opacity: 1;*/
/*}*/
.pageTop p {
	width: 1000px;
	margin: 0 auto;
	font-size: 1rem;
	line-height: 1;
	text-align: right;
}
.pageTop p a {
	display: inline-block;
	width: 64px;
	height: 64px;
	padding-top: 27px;
	background-color: #FFFFFF;
	border-radius: 32px;
	text-align: center;
}
.pageTop p img {
	display: inline-block;
	width: 30px;
	height: 9px;
}
.sp-pageTop {
	display: none;
}

@media screen and (max-width: 640px) {
	.pageTop {
		display: none;
	}
	.sp-pageTop {
		display: block;
		text-align: center;
	}
	.sp-pageTop p {
		margin-bottom: 0;
		padding-bottom: 2em;
		line-height: 1;
	}
	.sp-pageTop p img {
		width: 30px;
		height: auto;
	}
}

/* Footer
----------------------------------------------------------------------------- */
footer {
	display: table;
	width: 1000px;
	margin: 0 auto;
	padding: 30px 0;
	background-color: #FFFFFF;
}
footer .footerMenu {
	display: table-cell;
	margin: 0;
	list-style: none;
	vertical-align: top;
}
footer .footerMenu::after {
	content: '';
	clear: both;
	display: block;
}
footer .footerMenu li {
	float: left;
	margin: 0 2.5em 0 0;
	font-size: 1.2rem;
}
footer small {
	display: table-cell;
	font-size: 1.2rem;
	text-align: right;
	vertical-align: top;
}

@media screen and (max-width: 640px) {
	footer {
		display: block;
		width: 100%;
		margin: 0;
		padding: 2em 20px 1.5em 20px;
	}
	footer .footerMenu {
		display: block;
		margin-bottom: 1em;
	}
	footer .footerMenu li {
		float: left;
		display: block;
		margin: 0 0 0.5em 0;
		padding-right: 20px;
		font-size: 1.2rem;
	}
	footer .footerMenu li:nth-child(even) {

		width: 60%;
		padding-right: 0;
	}
	footer .footerMenu li:nth-child(odd) {
		width: 40%;
	}
	footer small {
		display: block;
		font-size: 1rem;
		text-align: center;
	}
}

/* iframe�ݒ� */
.iframe-wrap {
position: relative;
width: 100%;
padding-top: 98.55%;
overflow:auto;
-webkit-overflow-scrolling:touch;
/*
border:2px solid #ccc;
*/
}
.iframe-wrap iframe {
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
border:none;
display:block;
}


/* 3: Category Layout
============================================================================= */
/* Top - Stories
----------------------------------------------------------------------------- */
.topStories {
	position: relative;
	min-width: 1000px;
	width: 100%;
	height: 360px;
	background-image: url(/grp/common/images/top/stories-photo.jpg);
	background-position: center center;
	background-repeat: no-repeat;
}
.topStories::after {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background-image: linear-gradient(90deg, #1E4191 0, #7D1E69 35%, #CD1432 100%);
}
.topStories::before {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
	height: 1px;
	background-image: linear-gradient(90deg, #1E4191 0, #7D1E69 35%, #CD1432 100%);
}
.topStories a {
	display: block;
	height: 360px;
}
.topStories a:hover {
	background-color: rgba(255, 255, 255, 0.7);
	opacity: 0.7;
	text-decoration: none;
}
.topStories a .inner {
	display: table;
	width: 1000px;
	height: 360px;
	margin: 0 auto;
}
.topStories a .inner > div {
	display: table-cell;
	padding-right: 610px; /* 調整箇所 現在は「Do you know ORIX?」 */
	padding-left: 40px;   /* 調整箇所 現在は「Do you know ORIX?」 */
	vertical-align: middle;
}
.topStories a h2 {
	margin: 0px 50px 1em 60px; /* 調整箇所 現在は「Do you know ORIX?」 */
	text-align: center;   /* 調整箇所 現在は「Do you know ORIX?」 */
}
.topStories a h2 img {
	max-width: 100%;
	width: 100%;          /* 調整箇所 現在は「Do you know ORIX?」 */
	height: auto;
}

@media screen and (max-width: 640px) {
	.topStories {
		display: block;
		min-width: 100%;
		height: auto;
		background-image: url(/grp/common/images/top/sp-stories-photo.jpg);
		background-position: bottom center;
		background-size: contain;
	}
	.topStories a {
		height: auto;
		padding: 20px 0 56% 0;
	}
	.topStories a .inner {
		width: 100%;
		height: auto;
		margin: 0 0 1.5em 0;
	}
	.topStories a .inner > div {
		padding-right: 0;
	}
	.topStories a h2 {
		/* margin: 0 10px 1em 0; */ /* 調整箇所 現在は「Do you know ORIX?」 */
		text-align: center;         /* 調整箇所 現在は「Do you know ORIX?」 */
	}
	.topStories a h2 img {
		max-width: 80%;
		width: 100%;
		height: auto;
	}
	.topStories a p {
		text-align: center;
	}
}

/* Top - News
----------------------------------------------------------------------------- */
.topNews {
	width: 1000px;
	margin: 6em auto;
}
.topNews dl {
	display: table;
	width: 940px;
	margin-bottom: 0;
}
.topNews dt {
	display: table-cell;
	width: 250px;
	padding-right: 60px;
	font-size: 2.0rem;
	font-weight: 500;
	white-space: nowrap;
	vertical-align: middle;
}
.topNews dd {
	display: table-cell;
	vertical-align: middle;
}
.topNews dd ul {
	margin: 0 0 0 1.5em;
}
.topNews dd ul li {
	margin-bottom: 1em;
	font-size: 1.4rem;
}
.topNews dd ul li:last-child {
	margin-bottom: 0;
}
.topNews dd ul li a {
	color: #224392;
}
.topNews dd ul li img.icon {
	display: inline-block;
	margin: 0 5px;
	vertical-align: middle;
}

/* Caution */
.topNews .caution {
	margin: 0 30px;
}
.topNews .caution dt i {
	display: inline-block;
	padding: 10px 0 10px 50px;
	background-image: url(/grp/common/images/icon-caution01.png);
	background-position: left center;
	background-repeat: no-repeat;
	color: #CC1433;
}

/* News */
.topNews .news {
	width: 100%;
	padding: 50px 0;
	border-top: 1px solid #F0F0F0;
	border-bottom: 1px solid #F0F0F0;
}
.topNews .news dt {
	letter-spacing: 0.4em;
}

@media screen and (max-width: 640px) {
	.topNews {
		width: 100%;
		margin: 5em auto;
		padding: 0 10px;
	}
	.topNews dl {
		display: block;
		width: auto;
	}
	.topNews dt {
		display: block;
		width: 100%;
		margin-bottom: 1.25em;
		padding-right: 0;
		font-size: 1.8rem;
		text-align: center;
	}
	.topNews dd {

		display: block;
	}

	/* Caution */
	.topNews .caution {
		margin: 0 5px;
	}
	.topNews .caution dt i {
		padding: 4px 0 4px 40px;
	}

	/* News */
	.topNews .news {
		padding: 40px 0;
	}
}

/* About, Sustainability, IR - Message
----------------------------------------------------------------------------- */
main.ab .signature,
main.su .signature,
main.ir .signature,
main.mi .signature {
	margin-top: 2em;
	text-align: right;
}
main.ab .signature span,
main.su .signature span,
main.ir .signature span,
main.mi .signature span {
	display: inline-block;
	margin-left: 30px;
}
main.ab .signature img,
main.su .signature img,
main.ir .signature img {
	width: auto;
	height: 42px;
	vertical-align: middle;
}
main.mi .signature img {
	width: auto;
	height: 36px;
	vertical-align: middle;
}

@media screen and (max-width: 640px) {
	main.ab .signature span,
	main.su .signature span,
	main.ir .signature span,
	main.mi .signature span {
		display: block;
		margin: 5px 0 0 0;
	}
}

/* About, Sustainability - Corporate Vision
----------------------------------------------------------------------------- */
main.ab .vision {
	text-align: center;
}
main.ab .vision dt,
main.su .vision dt {
	margin-bottom: 0.25em;
	font-size: 5.6rem;
	line-height: 1.2;
}
main.su .vision {
	margin-top: 3em;
}
main.su .vision dt {
	font-size: 3.6em;
	text-align: left;
}
main.ab .vision dd:not(:last-child),
main.su .vision dd:not(:last-child) {
	margin-bottom: 3em;
}

@media screen and (max-width: 640px) {
	main.ab .vision {
		text-align: left;
	}
	main.ab .vision dt,
	main.su .vision dt {
		margin-bottom: 0.5em;
		font-size: 3.2rem;
		text-align: center;
	}
	main.su .vision dt {
		font-size: 2.2em;
		text-align: left;
	}
	main.ab .vision dd br,
	main.su .vision dd br {
		display: none;
	}
}

/* About- - Brand Story
----------------------------------------------------------------------------- */
.brandStory {
	margin-bottom: 5em;
	background-image: url(/grp/common/images/company/about/brandStory-head-bg.jpg);
	background-position: center center;
	background-repeat: no-repeat;
}
.brandStory .inner {
	display: table;
	width: 1000px;
	height: 703px;
	margin: 0 auto;
}
.brandStory .inner > div {
	display: table-cell;
	vertical-align: middle;
}
.brandStory .inner > div:nth-child(2) {
	text-align: right;
}
.brandStory .inner h1 {
	display: inline-block;
	margin: 0;
	font-size: 4.6rem;
	text-shadow: 0 0 10px #FFFFFF, 0 0 20px #FFFFFF, 0 0 30px #FFFFFF, 0 0 40px #FFFFFF, 0 0 50px #FFFFFF, 0 0 60px #FFFFFF, 0 0 70px #FFFFFF, 0 0 80px #FFFFFF, 0 0 100px #FFFFFF, 0 0 120px #FFFFFF, 0 0 160px #FFFFFF;
}
.brandStory .inner .anchorNav {
	display: none;
}
.brandStory .inner .read {
	display: inline-block;
	width: 540px;
	padding: 40px 20px;
	background-color: #FFFFFF;
	opacity: 0.8;
	text-align: left;
}
.brandStory .inner .read h2 {
	display: none;
}
.brandStory .inner .read > *:last-child {
	margin-bottom: 0;
}
.brandStory .inner .read strong {
	font-size: 2.7rem;
}

@media screen and (max-width: 640px) {
	.brandStory {
		margin-bottom: 2em;
		background-image: none;
	}
	.brandStory .inner {
		display: block;
		width: auto;
		height: auto;
	}
	.brandStory .inner > div:nth-child(1) {
		display: table;
		width: 100%;
		height: 237px;
		padding: 0 10px;
		background-image: url(/grp/common/images/company/about/brandStory-head-bg.jpg);
		background-position: -80px -200px;
		background-size: 1100px 516px;
		text-align: left;
	}
	.brandStory .inner > div:nth-child(2) {
		display: block;
		text-align: left;
	}
	.brandStory .inner h1 {
		display: table-cell;
		font-size: 2.4rem;
		vertical-align: middle;
	}
	.brandStory .inner .anchorNav {
		display: block;
		margin: 2em 10px;
	}
	.brandStory .inner .read {
		width: auto;
		margin: 20px 10px;
		padding: 0;
	}
	.brandStory .inner .read h2 {
		display: block;
	}
	.brandStory .inner .read strong {
		font-size: 1.6rem;
	}
}

/* News Room - News Release
----------------------------------------------------------------------------- */
.newsDetail {
	width: 1000px;
	margin: 2.5em auto;
}
.newsDetail h1 {
	margin-bottom: 1.25em;
	font-size: 3.0rem;
}
.newsDetail .info {
	margin-bottom: 3.5em;
	text-align: right;
}
.newsDetail .info .date {
	margin-bottom: 0.25em;
	font-size: 1.3rem;
	line-height: 1.7;
}
.newsDetail .info .author {
	margin-bottom: 0;
	font-size: 1.2rem;
	line-height: 1.7;
}
.newsDetail p,
.newsDetail div.section p {
	margin-bottom: 2em;
	line-height: 2;
}
.newsDetail figure p {
	margin-bottom: 0.5em;
	border: 1px solid #F0F0F0;
	text-align: center;
}

@media screen and (max-width: 640px) {
	.newsDetail {
		width: auto;
		margin: 2.5em auto;
	}
	.newsDetail .box01,
	.newsDetail .box02,
	.newsDetail .box03,
	.newsDetail .box04 {
		padding: 0;
	}
	.newsDetail h1 {
		margin: 0 10px 1.25em 10px;
		font-size: 2.2rem;
	}
	.newsDetail .info {
		margin: 0 10px 3.5em 10px;
	}
	.newsDetail .info .date,
	.newsDetail .info .author {
		font-size: 1.2rem;
	}
}

/* Recruit - Interview
----------------------------------------------------------------------------- */
.interview {
	display: table;
	width: 1000px;
	height: 180px;
	background-image: url(/grp/common/images/company/recruit/photo-interview.jpg);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: contain;
	border: 1px solid #D0D0D0;
}
.interview a {
	display: table-cell;
	padding: 20px 40px 20px 450px;
	vertical-align: middle;
}
.interview a:hover {
	opacity: 0.7;
	background: rgba(255,255,255,0.3);
}
.interview a *:last-child {
	margin-bottom: 0;
}
.interview a h2 {
	display: inline-block;
	margin-bottom: 0.25em;
	padding-right: 30px;
	background-image: url(/grp/common/images/icon-arrow02.png);
	background-position: right center;
	background-repeat: no-repeat;
	font-size: 3.0rem;
}
.interview a p {
	font-size: 1.4rem;
	line-height: 1.7;
}

@media screen and (max-width: 640px) {
	.interview {
		display: block;
		width: auto;
		height: auto;
	}
	.interview > a {
		display: block;
		padding: 52% 20px 20px 20px;
		text-align: center;
	}
	.interview > a h2 {
		margin-bottom: 0.25em;
		font-size: 2.0rem;
	}
	.interview > a p {
		text-align: left;
	}
}

/* IR - IR Block
----------------------------------------------------------------------------- */
.irBlock {
	display: table;
	width: 1000px;
	margin: 4em auto;
}
.irBlock .tileMenu04 {
	display: table-cell;
	width:auto;
	/* [2018/01/24 Adjust] width: 640px; */
	margin: 0;
}
.irBlock .stockPrices {
	display: table-cell;
	width:318px;
	/* [2018/01/24 Adjust] width: 320px; */
	height:178px;
	/* [2018/01/24 Adjust] height: 180px; */
	border: 1px solid #CCCCCC;
	overflow: hidden;
	text-align: center;
	vertical-align: middle;
}
/* [2018/01/24 Add] */
.irBlock .stockPrices a {
	width:100%;
	height:178px;
	display:block;
}
.irBlock .stockPrices img {
	width:318px;
	/* [2018/01/24 Adjust] width: 300px; */
	height:178px;
	/* [2018/01/24 Adjust] height: auto; */
}
/* [2018/01/24 Delete]
   .irBlock .stockPrices a:hover img
*/

@media screen and (max-width: 640px) {
	.irBlock {
		display: block;
		width: auto;
	}
	.irBlock .tileMenu04 {
		display: block;
		width: auto;
		margin: 0;
		padding: 0 35px;
	}
	.irBlock .tileMenu04 ul {
		margin-bottom: 2em;
	}
	.irBlock .stockPrices {
		display: block;
		margin: 0 35px;
		/* [2018/01/24 Adjust] margin: 0 10px */
		width: auto;
		height: auto;
	}
	/* [2018/01/24 Add] */
	.irBlock .stockPrices a {
		width:100%;
		height:auto;
	}
	.irBlock .stockPrices img {
		width: 100%;
		height: auto;
	}
}

/* Accordion Block
----------------------------------------------------------------------------- */
.accoBlock {
	margin-bottom: 2em;
}
.accoBlock dl {
	margin-bottom: 0;
}
.accoBlock > dl {
	border-bottom: 1px solid #F0F0F0;
}
.accoBlock dl > dt.switch {
	margin-bottom: 0;
	border-top: 1px solid #F0F0F0;
}
.accoBlock dl > dt.switch a {
	display: block;
	padding: 20px 70px 20px 40px;
	background-image: url(/grp/common/images/icon-plus01.png);
	background-position: 97% center;
	background-repeat: no-repeat;
}
.accoBlock dl > dt.switch.open a {
	background-image: url(/grp/common/images/icon-minus01.png);
}
.accoBlock dl > dt.notlink {
	padding: 20px 70px 20px 40px;
}
.accoBlock dl > dd.detail {
	display: none;
	margin-bottom: 0;
	background-color: #F5F8FF;
}
.accoBlock dl dl > dd.detail {
	background-color: #E0E7F9;
}
.accoBlock dl dl dl > dd.detail {
	background-color: #D5DFF7;
}
.accoBlock dl dd.detail .inner {
	padding: 30px 40px;
}
.accoBlock dl dd.detail .inner .buttonBlock {
	margin: 0;
}
.accoBlock dl dd.detail .inner *:last-child {
	margin-bottom: 0;
}
.accoBlock dl + .inner,
.accoBlock .inner + .inner {
	border-top: 1px solid #F0F0F0;
}

/* IR - FAQ */
.accoBlock dl.faq dt.switch a {
	position: relative;
	padding-left: 70px;
	text-decoration: none;
}
.accoBlock dl.faq dt.switch a::after {
	content: 'Q';
	display: inline-block;
	position: absolute;
	top: 50%;
	left: 30px;
	width: 1em;
	margin-top: -18px;
	padding-right: 40px;
	font-size: 2.1rem;
	font-weight: 500;
}
.accoBlock dl.faq dt.switch a:hover span {
	text-decoration: underline;
}
.accoBlock dl.faq dd.detail .inner {
	position: relative;
	padding-left: 70px;
}
.accoBlock dl.faq dd.detail .inner::after {
	content: 'A';
	position: absolute;
	top: 50%;
	left: 30px;
	width: 1em;
	margin-top: -18px;
	padding-right: 40px;
	font-size: 2.1rem;
	font-weight: 500;
}

/* Brand - CM */
.accoBlock .cmList {
	margin: 0;
	list-style: none;
}
.accoBlock .cmList::after {
	content: '';
	clear: both;
	display: block;
}
.accoBlock .cmList li {
	float: left;
	width: 440px;
	margin: 0 0 2.5em 40px;
}
.accoBlock .cmList li:nth-child(2n+1) {
	margin-left: 0;
}
.accoBlock .cmList li figure {
	text-align: center;
}
.accoBlock .cmList li figcaption {
	margin-bottom: 1em;
	font-size: 1.8rem;
}
.accoBlock .cmList li .tmb {
	position: relative;
	display: block;
	width: 440px;
	height: 248px;
}
.accoBlock .cmList li .tmb .play {
	position: absolute;
	top: 50%;
	left: 50%;
	display: block;
	width: 70px;
	height: 70px;
	margin: -35px 0 0 -35px;
}

@media screen and (max-width: 640px) {
	.accoBlock dl > dt.switch a {
		padding: 20px 40px 20px 10px;
		background-position: 97% center;
	}
	.accoBlock dl > dt.notlink {
		padding:20px 40px 20px 10px;
	}
	.accoBlock dl dd.detail .inner {
		padding: 20px;
	}

	/* IR - FAQ */
	.accoBlock dl.faq dt.switch a {
		padding: 20px 40px;
	}
	.accoBlock dl.faq dt.switch a::after {
		left: 10px;
		margin-top: -14px;
		padding-right: 40px;
		font-size: 1.8rem;
	}
	.accoBlock dl.faq dd.detail .inner {
		padding-left: 40px;
	}
	.accoBlock dl.faq dd.detail .inner::after {
		left: 10px;
		width: 1em;
		margin-top: -14px;
		padding-right: 40px;
		font-size: 1.8rem;
	}

	/* Brand - CM */
	.accoBlock .cmList li {
		float: none;
		width: 100%;
		margin: 0 0 2em 0;
	}
	.accoBlock .cmList li figcaption {
		margin-bottom: 0.5em;
		font-size: 1.6rem;
	}
	.accoBlock .cmList li .tmb {
		width: auto;
		height: auto;
	}
	.accoBlock .cmList li .tmb .play {
		position: absolute;
		top: 50%;
		left: 50%;
		display: block;
		width: 50px;
		height: 50px;
		margin: -25px 0 0 -25px;
	}
	.accoBlock .cmList li .movie {
		position: relative;
		width: 100%;
		padding-top: 56.25%;
	}
	.accoBlock .cmList li .movie iframe {
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
	}
}

/* 4: Module
============================================================================= */

/* Tile Menu
----------------------------------------------------------------------------- */
.tileMenu02,
.tileMenu03,
.tileMenu04,
.tileMenu05,
.tileMenu06 {
	width: 1000px;
	margin: 2em auto;
}
.tileMenu01 ul,
.tileMenu02 ul,
.tileMenu03 ul,
.tileMenu04 ul,
.tileMenu05 ul,
.tileMenu06 ul {
	margin: 0;
	list-style: none;
}
.tileMenu01 ul::after,
.tileMenu02 ul::after,
.tileMenu03 ul::after,
.tileMenu04 ul::after,
.tileMenu05 ul::after,
.tileMenu06 ul::after {
	content: '';
	clear: both;
	display: block;
}
.tileMenu01 ul li:nth-child(3n+1),
.tileMenu02 ul li:nth-child(3n+1),
.tileMenu03 ul li:nth-child(4n+1),
.tileMenu04 ul li:nth-child(3n+1),
.tileMenu05 ul li:nth-child(4n+1),
.tileMenu06 ul li:nth-child(3n+1) {
	margin-left: 0;
}
.tileMenu01 ul li *:last-child,
.tileMenu04 ul li *:last-child {
	margin-bottom: 0;
}
.tileMenu02 ul li .image img,
.tileMenu03 ul li .image img,
.tileMenu06 ul li .image img {
	max-width: 100%;
	width: auto;
	height: auto;
}
.tileMenu02 ul li a:hover .image img,
.tileMenu02 ul li a:focus .image img,
.tileMenu03 ul li a:hover .image img,
.tileMenu03 ul li a:focus .image img,
.tileMenu06 ul li a:hover .image img,
.tileMenu06 ul li a:focus .image img {
	opacity: 0.7;
}

/* Tile Menu 01 */
.tileMenu01 {
	width: 1000px;
	margin: 4em auto;
}
.tileMenu01 ul li {
	float: left;
	width: 300px;
	margin: 0 0 0 50px;
}
.tileMenu01 ul li:nth-child(n+4) {
	margin-top: 3.75em;
}
.tileMenu01 ul li a {
	display: block;
	text-align: center;
}
.tileMenu01 ul li a:hover,
.tileMenu01 ul li a:focus {
	text-decoration: none;
}
.tileMenu01 ul li a .image {
	width: 300px!important;
	height: 160px!important;
	margin-bottom: 1.25em;
	line-height: 1;
	overflow: hidden;
}
.tileMenu01 ul li a .image img {
	width: 300px;
	height: 160px;
	transform: scale(1);
	transition: .2s ease-in-out;
}
.tileMenu01 ul li a:hover .image img {
	transform: scale(1.1);
}
.tileMenu01 ul li h2 {
	margin-bottom: 0;
	font-size: 2.4rem;
	line-height: 1.4;
}
.tileMenu01 ul li h2 span {
	display: inline-block;
	padding-right: 25px;
	background-image: url(/grp/common/images/icon-arrow02.png);
	background-position: right center;
	background-repeat: no-repeat;
}
.tileMenu01 ul li .subtitle {
	display: block;
	margin: 0 0 1em 0;
	color: #CCCCCC;
	font-size:1.1rem;
	font-weight: 400;
}
.tileMenu01 ul li .text {
	display: block;
	font-size: 1.4rem;
	line-height: 1.7;
	text-align: left;
}
.tileMenu01 ul li a:hover .text,
.tileMenu01 ul li a:focus .text {
	text-decoration: underline;
}
.tileMenu01 ul li h2 + .text {
	margin-top: 1em;
}

/* Tile Menu 02 */
.tileMenu02 ul li {
	float: left;
	width: 320px;
	margin: 0 0 2em 20px;
}
.tileMenu02 ul li a {
	display: block;
	padding: 19px;
	border: 1px solid #CCCCCC;
	text-decoration: none;
}
.tileMenu02 ul li .image {
	width: 280px;
	height: 104px;
	margin-bottom: 0.5em;
}
.tileMenu02 ul li h3 {
	margin-bottom: 2em;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.7;
}
.tileMenu02 ul li h3 .title {
	display: block;
	margin-bottom: 0.75em;
	color: #224392;
	line-height: 1.5;
}
.tileMenu02 ul li a:hover h3 .title,
.tileMenu02 ul li a:focus h3 .title {
	text-decoration: underline;
}
.tileMenu02 ul li h3 .text {
	display: block;
	font-size: 1.4rem;
	line-height: 1.4;
}
.tileMenu02 ul li .date {
	display: table;
	margin: 0;
	color: #333333;
	line-height: 1.5;
}
.tileMenu02 ul li .date dt {
	display: table-cell;
	white-space: nowrap;
}
.tileMenu02 ul li .date dd {
	display: table-cell;
}

/* Tile Menu 03 */
.tileMenu03 ul li {
	float: left;
	width: 235px;
	margin: 0 0 2em 20px;
}
.tileMenu03 ul li a {
	display: block;
	padding: 19px;
	border: 1px solid #CCCCCC;
	color: #224392;
}
.tileMenu03 ul li a:hover,
.tileMenu03 ul li a:focus {
	text-decoration: none;
}
.tileMenu03 ul li a:first-child {
	padding-bottom: 0;
	border-bottom: none;
}
.tileMenu03 ul li a + a {
	border-top: none;
}
.tileMenu03 ul li h3 {
	margin-bottom: 1em;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.7;
}
.tileMenu03 ul li a:hover h3,
.tileMenu03 ul li a:focus h3 {
	text-decoration: underline;
}
.tileMenu03 ul li .image {
	width: 195px;
	height: 86px;
	margin-bottom: 0.5em;
}
.tileMenu03 ul li .text {
	margin: 0;
	padding-bottom: 19px;
	border-bottom: 1px solid #F0F0F0;
	color: #000000;
}
.tileMenu03 ul li .offerInfo {
	margin: 0;
	color: #333333;
	font-size: 1.4rem;
	line-height: 1.4;
}
.tileMenu03 ul li .offerInfo span {
	color: #224392;
}
.tileMenu03 ul li a:hover .offerInfo span,
.tileMenu03 ul li a:focus .offerInfo span {
	text-decoration: underline;
}

/* Tile Menu 04 */
.tileMenu04 ul li {
	position: relative;
	float: left;
	width: 300px;
	margin: 0 0 0 40px;
	border: 1px solid #CCCCCC;
}
.tileMenu04 ul li:nth-child(n+4) {
	margin-top: 3.75em;
}
.tileMenu04 ul li a {
	display: block;
	text-align: center;
}
.tileMenu04 ul li a:hover {
	text-decoration: none;
}
.tileMenu04 ul li a .image {
	display: block;
	width: 298px;
	height: 178px;
	margin-bottom: 0;
	overflow: hidden;
}
.tileMenu04 ul li a .image img {
	width: 298px;
	height: auto;
	transform: scale(1);
	transition: .2s ease-in-out;
}
.tileMenu04 ul li a:hover .image img {
	transform: scale(1.1);
}
.tileMenu04 ul li h2 {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	margin: -9% 0 0 0;
	padding: 10px;
	background-color: #FFFFFF;
	font-size: 2.4rem;
	line-height: 1.4;
	opacity: 0.8;
}
.tileMenu04 ul li h2 span {
	display: inline-block;
	padding-right: 25px;
	background-image: url(/grp/common/images/icon-arrow02.png);
	background-position: right center;
	background-repeat: no-repeat;
	opacity: 1;
}

/* Tile Menu 05 */
.tileMenu05 ul {
	margin: 0 20px 5em 20px;
}
.tileMenu05 ul li {
	float: left;
	width: 195px;
	margin: 0 0 0 60px;
}
.tileMenu05 ul li:nth-child(n+5) {
	margin-top: 3.75em;
}
.tileMenu05 ul li a {
	display: block;
	text-align: center;
}
.tileMenu05 ul li a:hover {
	text-decoration: none;
}
.tileMenu05 ul li a .image {
	display: block;
	width: 195px;
	height: 120px;
	margin-bottom: 1em;
	overflow: hidden;
}
.tileMenu05 ul li a .image img {
	width: 195px;
	height: auto;
	transform: scale(1);
	transition: .2s ease-in-out;
}
.tileMenu05 ul li a:hover .image img {
	transform: scale(1.1);
}
.tileMenu05 ul li h2 {
	margin-bottom: 0;
	font-size: 1.8rem;
	line-height: 1.4;
}
.tileMenu05 ul li h2 span {
	display: inline-block;
	padding-right: 25px;
	background-image: url(/grp/common/images/icon-arrow02.png);
	background-position: right center;
	background-repeat: no-repeat;
}

/* Tile Menu 06 */
.tileMenu06 {
	margin-bottom: 5em;
}
.tileMenu06 ul li {
	float: left;
	width: 320px;
	margin: 2em 0 0 20px;
	background-color: #FFFFFF;
	border: 1px solid #CCCCCC;
}
.tileMenu06 ul li:nth-child(-n+3) {
	margin-top: 0;
}
.tileMenu06 ul li > a {
	display: block;
	padding: 19px 19px 0 19px;
	text-decoration: none;
}
.tileMenu06 ul li h3 {
	margin-bottom: 1em;
	color: #224392;
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.7;
}
.tileMenu06 ul li > a:hover h3,
.tileMenu06 ul li > a:focus h3 {
	text-decoration: underline;
}
.tileMenu06 ul li .image {
	width: 280px;
	height: 102px;
	margin-bottom: 0.5em;
	overflow: hidden;
}
.tileMenu06 ul li .text {
	margin: 0;
	padding-bottom: 0.5em;
	font-size: 1.4rem;
	color: #000000;
}
.tileMenu06 ul li .tag {
	padding: 12px 0 19px 0;
	line-height: 1;
}
.tileMenu06 ul li .tag span {
	display: inline-block;
	width: 160px;
	border: 1px solid #D0D0D0;
	color: #656565;
	font-size: 1.2rem;
	line-height: 1.4;
	text-align: center;
}
.tileMenu06 ul li > a:only-child {
	height: 100%;
	padding-bottom: 20px;
}
.tileMenu06 ul li .offerInfo {
	margin: 0;
	border-top: 1px solid #F0F0F0;
	padding: 19px;
	color: #333333;
	font-size: 1.4rem;
	line-height: 1.4;
}
.tileMenu06 ul li .offerInfo a {
	color: #224392;
}

/* Tile Menu 06 - Accordion */
.accoBlock .tileMenu06 {
	width: 920px;
	margin: 0;
}
.accoBlock .tileMenu06 ul li {
	width: 293px;
}
.accoBlock .tileMenu06 ul li h3 + div {
	margin-bottom: 0!important;
}
.accoBlock .tileMenu06 ul li .image {
	width: 253px;
	height: 93px;
}
.accoBlock .tileMenu06 ul li .tag {
	border-bottom: 1px solid #F0F0F0;
}
.accoBlock .tileMenu06 ul li .offerInfo {
	border-top: none;
}

/* Tile Menu 07 */
.tileMenu07 {
	width: 1000px;
	margin: 4em auto;
}
.tileMenu07 ul {
    display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
}
.tileMenu07 ul li {
	width: 490px;
	position: relative;
	overflow: hidden;
	margin: 0;
}
.tileMenu07 .tileMenu-outer {
	background: rgba(255,255,255,0.9);
	position: absolute;
	bottom: 0;
	width: 100%;
	padding: 25px 10px;
}
.tileMenu07 .tileMenu-ttl {
	background: url(/grp/common/images/icon-arrow06.png) no-repeat right center;
	font-size: 2rem;
}
.tileMenu07 p {
	margin: 0;
	line-height: 1;
	font-weight: bold;
}
.tileMenu07 img{
	transform: scale(1);
	-webkit-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}
.tileMenu07 img:hover{
	transform: scale(1.1);
	-webkit-transition: .2s ease-in-out;
	-ms-transition: .2s ease-in-out;
	transition: .2s ease-in-out;
}

@media screen and (max-width: 640px) {
	.tileMenu01 ul,
	.tileMenu02 ul,
	.tileMenu03 ul,
	.tileMenu04 ul,
	.tileMenu05 ul {
		float: none;
		width: 100%;
		margin: 0 auto 3em auto;
	}
	.tileMenu01 ul li:nth-child(3n+1),
	.tileMenu02 ul li:nth-child(3n+1),
	.tileMenu03 ul li:nth-child(4n+1) {
		margin-left: auto;
	}
	.tileMenu01 ul li a .image img,
	.tileMenu02 ul li a .image img,
	.tileMenu03 ul li a .image img,
	.tileMenu04 ul li a .image img,
	.tileMenu05 ul li a .image img {
		width: 100%!important;
		height: auto!important;
	}

	/* Tile Menu 01 */
	.tileMenu01 {
		width: 100%;
		margin: 2.5em 0;
		padding: 0 35px;
	}
	.tileMenu01 ul li {
		float: none;
		width: 100%;
		margin: 0 auto 3em auto;
	}
	.tileMenu01 ul li a {
		width: 100%;
		height: 100%;
		background-size: 100% auto;
	}
	.tileMenu01 ul li a .image {
		width: auto!important;
		height: auto!important;
		margin-bottom: 1em;
	}
	.tileMenu01 ul li h2 {
		font-size: 2.0rem;
	}
	.tileMenu01 ul li .subtitle {
		margin-bottom: 0.75em;
		font-size: 1.0rem;
		line-height: 1.2;
	}
	.tileMenu01 ul li .text {
		font-size: 1.4rem;
	}
	.tileMenu01 ul li h2 + .text {
		margin-top: 0.5em;
	}

	/* Tile Menu 02 */
	.tileMenu02 {
		width: 100%;
		margin: 2.5em 0;
		padding: 0 10px;
	}
	.tileMenu02 ul li {
		float: none;
		width: auto;
		margin: 0 auto 1.5em auto;
	}
	.tileMenu02 ul li a {
		padding: 15px;
	}
	.tileMenu02 ul li .image {
		width: auto;
		height: auto;
		margin-bottom: 0.5em;
	}
	.tileMenu02 ul li h3 {
		margin-bottom: 1.5em;
		font-size: 1.4rem;
	}

	/* Tile Menu 03 */
	.tileMenu03 {
		width: 100%;
		margin: 2.5em 0;
		padding: 0 10px;
	}
	.tileMenu03 ul li {
		float: none;
		width: auto;
		margin: 0 auto 1.5em auto;
	}
	.tileMenu03 ul li a {
		padding: 15px;
	}
	.tileMenu03 ul li h3 {
		margin-bottom: 1em;
		color: #224392;
		font-size: 1.6rem;
	}
	.tileMenu03 ul li .image {
		width: auto;
		height: auto;
		margin-bottom: 1em;
	}
	.tileMenu03 ul li .text {
		padding-bottom: 12px;
	}
	.tileMenu03 ul li .offerInfo {
		font-size: 1.3rem;
	}

	/* Tile Menu 03 - Accordion */
	.accoBlock .tileMenu03 {
		width: auto;
		margin: 0;
	}
	.accoBlock .tileMenu03 ul li {
		width: auto;
	}
	.accoBlock .tileMenu03 ul li:first-child {
		margin-top: 0!important;
	}
	.accoBlock .tileMenu03 ul li .image {
		width: auto;
		height: auto;
	}

	/* Tile Menu 04 */
	.tileMenu04 {
		width: 100%;
		margin: 2.5em 35px;
	}
	.tileMenu04 ul li {
		float: none;
		width: 100%;
		margin: 0 0 2em 0;
	}
	.tileMenu04 ul li a {
		width: 100%;
		height: 100%;
		background-size: 100% auto;
	}
	.tileMenu04 ul li a .image {
		width: auto;
		height: auto;
	}
	.tileMenu04 ul li h2 {
		margin: -7% 0 0 0;
		padding: 3% 10px;
		font-size: 2.0rem;
	}

	/* Tile Menu 05 */
	.tileMenu05 {
		width: 100%;
		margin: 0 0 2.5em 0;
		padding: 0 70px;
	}
	.tileMenu05 ul {
		margin: 0;
	}
	.tileMenu05 ul li {
		float: none;
		width: auto;
		margin: 2.5em 0 0 0!important;
	}
	.tileMenu05 ul li a .image {
		width: auto;
		height: auto;
		margin-bottom: 1em;
	}
	.tileMenu05 ul li h2 {
		font-size: 2.0rem;
	}

	/* Tile Menu 06 */
	.tileMenu06 {
		width: auto;
		margin: 2.5em 10px;
	}
	.tileMenu06 ul li {
		float: none;
		width: auto;
		margin: 1.5em 0 0 0!important;
	}
	.tileMenu06 ul li > a {
		display: block;
		padding: 15px 15px 0 15px;
	}
	.tileMenu06 ul li h3 {
		font-size: 1.4rem;
	}
	.tileMenu06 ul li .image {
		width: auto;
		height: auto;
		overflow: visible;
	}
	.tileMenu06 ul li .offerInfo {
		padding: 15px;
	}
	.tileMenu05 + .tileMenu06 {
		margin-top: 3.5em;
	}

	/* Tile Menu 06 - Accordion */
	.accoBlock .tileMenu06 {
		width: auto;
	}
	.accoBlock .tileMenu06 ul li {
		width: auto;
	}
	.accoBlock .tileMenu06 ul li .image {
		width: auto;
		height: auto;
	}
	
	/* Tile Menu 07 */
	.tileMenu07 ul {
		width: 100%;
		margin: 0 auto 3em auto;
	}
	.tileMenu07 ul li a img {
		width: 100%!important;
		height: auto!important;
	}
	.tileMenu07 {
		width: 100%;
		margin: 2.5em 0;
		padding: 0 35px;
	}
	.tileMenu07 ul li {
		width: 100%;
		margin: 0 auto 3em auto;
	}
	.tileMenu07 .tileMenu-ttl {
		font-size: 1.8rem;
	}
}

/* Read Block
----------------------------------------------------------------------------- */
.readBlock {
	width: 1000px;
	margin: 4em auto;
}
.readBlock .date {
	margin-bottom: 1em;
	font-size: 1.4rem;
	text-align: right;
}
.readBlock p a {
	color: #224392;
	text-decoration: underline;
}

@media screen and (max-width: 640px) {
	.readBlock {
		width: auto;
		margin: 2em 10px;
	}
}

/* Message Block
----------------------------------------------------------------------------- */
.messageBlock {
	margin: 6em auto;
	width: 1000px;
	text-align: center;
}
.messageBlock *:last-child {
	margin-bottom: 0
}
.messageBlock .inner {
	display: inline-block;
}
.messageBlock h1 {
	margin-bottom: 1em;
}
.messageBlock .inner .notice li {
	display: inline-block;
}
main.sp article {
	margin-bottom: 0;
}
main.sp .messageBlock {
	display: table;
	text-align: center;
}
main.sp .messageBlock .inner {
	display: table-cell;
	height: 60vh;
	vertical-align: middle;
}

@media screen and (max-width: 640px) {
	.messageBlock {
		width: auto;
		margin: 2.5em 10px;
		text-align: left;
	}
	main.sp article {
		margin-bottom: 0;
	}
	main.sp .messageBlock {
		margin: 0 10px;
		height: auto;
	}
	main.sp .messageBlock h1 {
		margin-top: 1.5em;
		text-align: center;
	}
	main.sp .messageBlock .inner {
		height: 40vh;
	}
}

/* Read More
----------------------------------------------------------------------------- */
.readMore {
	position: relative;
	width: 1000px;
}
.readMore .fullText *:last-child {
	margin-bottom: 0!important;
}
.readMore a.readmore {
	display: block;
	width: 250px;
	margin: 0 auto;
	padding: 8px 50px;
	background-color: #FFFFFF;
	background-image: url(/grp/common/images/icon-plus01.png);
	background-position: 96% center;
	background-repeat: no-repeat;
	background-size: 9px 9px;
	border: 1px solid #CC1433;
	border-radius: 25px 25px;
	font-size: 1.3rem;
	line-height: 1;
	text-align: center;
}
.readMore a.readmore:hover,
.readMore a.readmore:focus {
	opacity: 0.7;
	text-decoration: none;
}
.readMore .wrapText {
	position: relative;
}
.readMore .wrapText::after {
	content: '';
	position: absolute;
	display: block;
	height: 180px;
	width: 100%;
	bottom: 0;
	background: linear-gradient(180deg, rgba(255,255,255,0) 0, rgba(255,255,255,0.7) 80%, rgba(255,255,255,1) 100%);
}

@media screen and (max-width: 640px) {
	.readMore {
		width: auto;
	}
}

/* Map Block - Google Map API -
----------------------------------------------------------------------------- */
.mapBlock .inner {
	position: relative;
	width: 1000px;
	height: 470px;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}
.mapBlock .inner #map_canvas {
	max-width: 1000px;
	width: 1000px;
	height: 470px;
}
.mapBlock .buttonBlock {
	margin-bottom: 4em;
}

@media screen and (max-width: 640px) {
	.mapBlock {
		padding: 0 10px;
	}
	.mapBlock .inner {
		width: 100%;
		height: 0;
		margin: 0;
		padding-top: 56.25%;
	}
	.mapBlock .inner #map_canvas {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}
	.mapBlock .buttonBlock {
		margin-bottom: 3em;
	}
}

/* Tab Block
----------------------------------------------------------------------------- */
.tabBlock {
	position: relative;
	margin-bottom: 6em;
}
.tabBlock .bg {
	min-width: 1000px;
	width: 100%;
	padding-top: 90px;
	background-color: #EBF0FA;
	background-image: linear-gradient(180deg, #F5F8FD 0, #EBF0FA 100%);
}
.tabBlock .titleBlock {
	display: table;
	width: 1000px;
	margin: 0 auto 1.5em auto;
}
.tabBlock .titleBlock .title {
	display: table-cell;
	padding-left: 200px;
}
.tabBlock .titleBlock .title h2 {
	margin-bottom: 0;
	color: #224392;
	font-size: 3.0rem;
	line-height: 1.2;
	text-align: center;
}
.tabBlock .titleBlock .title h2 + p {
	margin-bottom: 0;
	color: #AEB8D2;
	font-size: 1.1rem;
	font-weight: normal;
	line-height: 1.4;
	text-align: center;
}
.tabBlock .titleBlock .rssNav {
	display: table-cell;
	width: 200px;
	margin: 0;
	list-style: none;
	text-align: right;
	white-space: nowrap;
}
.tabBlock .titleBlock .rssNav li {
	display: inline-block;
	font-size: 1.3rem;
}
.tabBlock .titleBlock .rssNav .rss {
	padding-right: 36px;
}
.tabBlock .titleBlock .rssNav .rss a {
	padding-left: 20px;
	background-image: url(/grp/common/images/icon-rss01.png);
	background-position: left center;
	background-repeat: no-repeat;
}
.tabBlock .tabList {
	width: 1000px;
	margin: 0 auto;
	font-size: 1.8rem;
	list-style: none;
}
.tabBlock .tabList::after {
	content: '';
	clear: both;
	display: block;
}
.tabBlock .tabList > li {
	float: left;
	display: table;
	width: 500px;
	min-height: 60px;
	margin-bottom: 0;
	line-height: 1.4;
	text-align: center;
}
.tabBlock .tabList > li a {
	display: table-cell;
	padding: 10px;
	color: #234493;
	vertical-align: middle;
}
.tabBlock :not(.bg) .tabList > li a {
	background-image: linear-gradient(180deg, #F5F8FD 0, #EBF0FA 100%);
}
.tabBlock .tabList > li a.active {
	position: relative;
	background-color: #FFFFFF;
	background-image: none;
	pointer-events: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.tabBlock .tabList > li a.active:hover,
.tabBlock .tabList > li a.active:focus {
	cursor: default;
	text-decoration: none;
	outline: none;
}
.tabBlock .tabList > li a.active::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 500px;
	height: 1px;
	background-image: linear-gradient(90deg, #1E4191 0, #7D1E69 35%, #CD1432 100%);
}
.tabBlock .tabList > li a span {
	display: block;
	font-size: 1.3rem;
	text-align: center;
}
.tabBlock .tabPanel {
	width: 1000px;
	margin: 0 auto;
	padding-top: 30px;
	background-color: #FFFFFF;
}
.tabBlock .tabPanel *:last-child {
	margin-bottom: 0;
}
.tabBlock .tabPanel div a.active {
	display: block;
}

.tabPanel > div:not([class]) {
	display: none;
}
.tabPanel > div.show {
	display: block;
}

@media screen and (max-width: 640px) {
	.tabBlock {
		margin-bottom: 5em;
	}
	.tabBlock .bg {
		min-width: 100%;
		width: 100%;
		padding-top: 50px;
		background-image: linear-gradient(180deg, #F5F8FD 0, #EBF0FA 100%);
	}
	.tabBlock .titleBlock {
		display: block;
		width: 100%;
		margin: 0 0 1em 0;
	}
	.tabBlock .titleBlock .title {
		display: block;
		padding-left: 0;
	}
	.tabBlock .titleBlock .title h2 {
		margin-bottom: 0;
		font-size: 2.0rem;
	}
	.tabBlock .titleBlock .title h2 + p {
		margin-bottom: 3em;
		font-size: 1.0rem;
	}
	.tabBlock .titleBlock .rssNav {
		display: none;
	}
	.tabBlock .tabList {
		width: 100%;
		margin: 0;
		font-size: 1.4rem;
		font-weight: 500;
	}
	.tabBlock .tabList > li {
		width: 50%;
		line-height: 1.2;
	}
	.tabBlock .tabList > li a {
		padding: 5px 10px;
	}
	.tabBlock .tabList > li a.active::before {
		width: 100%;
	}
	.tabBlock .tabList > li a span {
		display: block;
		font-size: 1.0rem;
		text-align: center;
	}
	.tabBlock .tabPanel {
		width: 100%;
		margin: 0;
		padding: 5px 0 0 0;
	}
	.tabBlock .tabPanel > div {
		padding: 0 10px;
	}
	.tabBlock .tabPanel .buttonBlock {
		margin: 2em 10px;
	}
}

/* Top & Company Top - News Release
   IR - IR News
----------------------------------------------------------------------------- */
.newsRelease + h3 {
	margin-top: 2.5em;
}
.newsRelease {
	margin: 0 0 2em 0;
	list-style: none;
}
.newsRelease > li {
	margin-bottom: 0!important;
	border-bottom: 1px solid #F0F0F0;
}
.newsRelease > li a {
	display: block;
	padding: 20px 0;
	color: #224392;
	text-decoration: none;
}
.newsRelease > li dl {
	display: table;
	margin-bottom: 0;
}
.newsRelease > li dt {
	display: table-cell;
	width: 130px;
	padding-right: 20px;
	color: #333333;
	font-size: 1.3rem;
	white-space: nowrap;
}
.newsRelease > li a:hover p,
.newsRelease > li a:focus p {
	text-decoration: underline;
}
.newsRelease > li dd {
	display: table-cell;
}
.newsRelease > li dl dd p {
	margin-top: 0.25em;
	line-height: 1.6;
}
.newsRelease > li a:hover dl dd p {
	text-decoration: none;
}
.newsRelease > li a:hover dl dd p span {
	text-decoration: underline;
}
.newsRelease > li dl dd ul {
	margin: 0;
	letter-spacing: -0.4em;
	list-style: none;
}
.newsRelease > li dl dd ul li {
	display: inline-block;
	width: 160px;
	margin: 0 10px 5px 0;
	border: 1px solid #D0D0D0;
	color: #656565;
	font-size: 1.2rem;
	line-height: 1.4;
	letter-spacing: normal;
	text-align: center;
}
.newsRelease > li dl dd ul.tag li {
	border: 1px solid #D0D0D0;
}
.newsRelease > li ul:not(.tag) li:last-child {
	width: auto;
	margin-right: 0;
	border: none;
	color: #000000;
}

@media screen and (max-width: 640px) {
	.newsRelease {
		margin: 0 0 1.5em 0;
	}
	.newsRelease > li a {
		padding: 30px 0;
	}
	.newsRelease > li dl {
		display: block;
	}
	.newsRelease > li dl::after {
		content: '';
		clear: both;
		display: block;
	}
	.newsRelease > li dt {
		display: inline-block;
		min-width: 28%;
		width: 28%;
		margin: 0 0 1em 0;
		padding-right: 2%;
		font-size: 1.0rem;
		vertical-align: top;
	}
	.newsRelease > li dl dd {
		display: inline;
	}
	.newsRelease > li dl dd p {
		margin-top: 0.5em;
	}
	.newsRelease > li dl dd ul {
		display: inline-block;
		font-size: 0;
		width: 70%;
		vertical-align: top;
	}
	.newsRelease > li dl dd ul li {
		width: 48.5%;
		margin: 0 3% 2.5% 0;
		font-size: 1.0rem;
		letter-spacing: normal;
		white-space: nowrap;
	}
	.newsRelease > li dl dd ul li:nth-child(even) {
		margin-right: 0;
	}
}

/* News Room - Partner Release
----------------------------------------------------------------------------- */
.partnerRelease {
	width: 1000px;
	margin: 0;
	list-style: none;
}
.partnerRelease > li {
	margin-bottom: 0;
	border-bottom: 1px solid #F0F0F0;
}
.partnerRelease > li > a {
	display: block;
	padding: 15px 0;
}
.partnerRelease li a:hover {
	text-decoration: none;
}
.partnerRelease li dl {
	display: table;
	width: 100%;
	margin-bottom: 0;
}
.partnerRelease li dl dt {
	display: table-cell;
	width: 130px;
	padding-right: 20px;
	color: #333333;
	font-size: 1.3rem;
	vertical-align: middle;
}
.partnerRelease li dl dd {
	display: table-cell;
	vertical-align: middle;
}
.partnerRelease li dl dd .tag {
	display: table-cell;
	width: 140px;
	padding-right: 30px;
	color: #656565;
	font-size: 1.2rem;
	line-height: 1.4;
	vertical-align: middle;
}
.partnerRelease li dl dd .text {
	display: table-cell;
	vertical-align: middle;
}
.partnerRelease li dl dd .text span {
	color: #224392;
}
.partnerRelease li a:hover dl dd .text span {
	text-decoration: underline;
}
.partnerRelease + h3 {
	margin: 1.25em 0 0.25em 0;
}

@media screen and (max-width: 640px) {
	.partnerRelease {
		width: auto;
	}
	.partnerRelease li a dl {
		display: block;
	}
	.partnerRelease li a dl dt {
		display: block;
		width: auto;
		padding-right: 0;
		font-size: 1.2rem;
	}
	.partnerRelease li a dl dd {
		display: block;
	}
	.partnerRelease li a dl dd .tag {
		display: block;
		width: auto;
		margin-bottom: 0.5em;
		padding-right: 0;
		font-size: 1.2rem;
	}
	.partnerRelease + h3 {
		margin-top: 1.25em;
	}
}

/* IR - IR Calendar
----------------------------------------------------------------------------- */
.irCalendar {
	width: 1000px;
	margin: 0;
	list-style: none;
}
.irCalendar > li {
	margin-bottom: 0!important;
	padding: 15px 0;
	border-bottom: 1px solid #F0F0F0;
}
.irCalendar > li > a {
	display: block;
	padding: 15px 0;
}
.irCalendar li a:hover {
	text-decoration: none;
}
.irCalendar li dl {
	display: table;
	width: 100%;
	margin-bottom: 0;
}
.irCalendar li dl dt {
	display: table-cell;
	width: 130px;
	padding-right: 20px;
	color: #333333;
	font-size: 1.3rem;
	line-height: 2.2;
	vertical-align: top;
}
.irCalendar li dl dd {
	display: table-cell;
	vertical-align: middle;
}
.irCalendar li dl dd *:last-child {
	margin-bottom: 0!important;
}
.irCalendar li dl dd .text {
	margin-bottom: 0.25em;
	line-height: 1.7;
}
.irCalendar li dl dd .link {
	margin: 0;
	list-style: none;
}
.irCalendar li dl dd .link li {
	margin-bottom: 0.25em;
	line-height: 1.7;
}
.irCalendar li dl dd .link li a {
	color: #224392;
}
.irCalendar li dl dd .link li a:hover {
	text-decoration: underline;
}

@media screen and (max-width: 640px) {
	.irCalendar {
		width: auto;
	}
	.irCalendar > li dl {
		display: block;
	}
	.irCalendar > li dl dt {
		display: block;
		width: auto;
		margin-bottom: 0.5em;
		padding-right: 0;
		font-size: 1.2rem;
	}
	.irCalendar > li dl dd {
		display: block;
	}
}

/* IR - IR Hotel
----------------------------------------------------------------------------- */
#hotel .accoBlock dl dd.detail .inner {
	padding-bottom: 0;
}
#hotel .hotelList,
#shunpanro .hotelList {
	display: flex;
	flex-flow: wrap;
	margin: 0;
	list-style: none;
}
#hotel .hotelList::after,
#shunpanro .hotelList::after {
	content: '';
	clear: both;
	display: block;
}
#hotel .hotelList li {
	width: 460px;
	padding: 0 30px;
	margin-bottom: 2em;
}
#shunpanro .hotelList li {
	width: 500px;
	padding: 0 30px;
	margin-bottom: 2em;
}
#hotel .hotelList li:nth-child(even),
#shunpanro .hotelList li:nth-child(even) {
	border-left: 1px solid #F0F0F0;
}
#hotel .hotelList li h5 {
	margin-bottom: 0.3em;
	font-size: 1.8rem;
}
#hotel .hotelList li p,
#shunpanro .hotelList li p {
	margin-bottom: 0.4em;
	line-height: 1.4;
}
#hotel .hotelList li p.tag {
	display: inline-block;
	width: 160px;
	margin-bottom: 0.6em;
	border: 1px solid #D0D0D0;
	color: #656565;
	background-color: #FFFFFF;
	font-size: 1.2rem;
	line-height: 1.4;
	letter-spacing: normal;
	text-align: center;
}

@media screen and (max-width: 640px) {
	#hotel .hotelList li {
		width: 100%;
		padding: 0 10px;
		margin-bottom: 20px;
	}
	#shunpanro .hotelList li {
		width: 100%;
		padding: 0 1em;
	}

	#hotel .hotelList li:nth-child(even),
	#shunpanro .hotelList li:nth-child(even) {
		border-left: none;
	}
	#hotel .hotelList li:not(:first-child),
	#shunpanro .hotelList li:not(:first-child) {
		padding-top: 20px;
		border-top: 1px solid #F0F0F0;
	}
	#hotel .hotelList li h5 {
		display: inline-block;
		margin-right: 10px;
		font-size: 1.6rem;
	}
	#hotel .hotelList li p.tag {
		width: 120px;
		font-size: 1.4rem;
	}
}

/* Banner Block
----------------------------------------------------------------------------- */
.bnrBlock {
	width: 1000px;
	margin: 2em auto 1.5em auto;
}
.bnrBlock ul {
	margin: 0;
	list-style: none;
	letter-spacing: -0.4em;
}
.bnrBlock ul li {
	display: inline-block;
	width: 495px;
	margin-bottom: 10px;
	letter-spacing: normal;
	vertical-align: top;
}
.bnrBlock ul li:only-child {
	display: block;
	width: 495px;
	margin: 0 auto;
}
.bnrBlock ul li a img {
	width: 495px;
	height: auto;
}
.bnrBlock a:hover img,
.bnrBlock a:focus img {
	opacity: 0.7;
}
.bnrBlock ul li:nth-child(even) {
	margin-left: 10px;
}

/* Campaign */
.bnrBlock ul li > .campaign {
	display: table;
	width: 100%;
	height: 100px;
	border: 1px solid #CCCCCC;
}
.bnrBlock ul li > .campaign a {
	position: relative;
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.bnrBlock ul li > .campaign a::before {
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 80px;
	height: 80px;
	background-image: url(/grp/common/images/personal/bnr-bg-campaign01.jpg);
	background-position: left top;
	background-repeat: no-repeat;
	background-size: 80px 80px;
}
.bnrBlock ul li > .campaign a::after {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	width: 54px;
	height: 54px;
	background-image: url(/grp/common/images/personal/bnr-bg-campaign02.jpg);
	background-position: right bottom;
	background-repeat: no-repeat;
	background-size: 54px 54px;
}
.bnrBlock ul li > .campaign a:hover,
.bnrBlock ul li > .campaign a:focus {
	text-decoration: none;
	background-color: rgba(255, 255, 255, 0.7);
	opacity: 0.7;
}
.bnrBlock ul li > .campaign a dl {
	display: inline-block;
	margin: 0 90px;
	text-align: left;
}
.bnrBlock ul li > .campaign a dl dt {
	margin-bottom: 0.25em;
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.4;
}
.bnrBlock ul li > .campaign a dl dd {
	font-size: 1.3rem;
	line-height: 1.4;
}

@media screen and (max-width: 640px) {
	.bnrBlock {
		width: auto;
		margin: 2.5em 0;
		padding: 0 10px;
	}
	section .bnrBlock,
	div.section .bnrBlock {
		padding: 0
	}
	.bnrBlock ul li {
		display: block;
		width: auto;
		margin-bottom: 10px;
		letter-spacing: normal;
	}
	.bnrBlock ul li:only-child {
		width: auto;
		margin: 0;
	}
	.bnrBlock a img,
	.bnrBlock ul li a img {
		width: 100%;
		height: auto;
	}
	.bnrBlock ul li:nth-child(even) {
		margin-left: 0;
	}

	/* Campaign */
	.bnrBlock ul li > .campaign {
		height: auto;
	}
	.bnrBlock ul li > .campaign a::before {
		width: 60px;
		height: 60px;
		background-size: 60px 60px;
	}
	.bnrBlock ul li > .campaign a::after {
		width: 30px;
		height: 30px;
		background-size: 30px 30px;
	}
	.bnrBlock ul li > .campaign a dl {
		margin: 20px 40px 20px 70px;
	}
	.bnrBlock ul li > .campaign a dl dt {
		font-size: 1.8rem;
	}
	.bnrBlock ul li > .campaign a dl dd br {
		display: none;
	}
}

/* PDF Block
----------------------------------------------------------------------------- */
/* PDF Plugin */
.pdfBlock {
	width: 800px;
	margin: 2em auto;
	padding: 15px 30px;
	border: 1px solid #EEEEEE;
}
.pdfBlock dl {
	display: table;
	margin: 0;
}
.pdfBlock dl dt {
	display: table-cell;
	width: 158px;
	vertical-align: middle;
}
.pdfBlock dl dd {
	padding-left: 20px;
	color: #666666;
	font-size: 1.2rem;
	vertical-align: middle;
}
.pdfBlock a {
	color: #1E3C91;
}

/* PDF List */
.pdfView {
	width: 1000px;
	margin: 4em auto;
}
.pdfView dt {
	font-size: 2.0rem;
	font-weight: 500;
}
.pdfView dd li a:link,
.pdfView dd li a:visited {
	color: #224392;
}

@media screen and (max-width: 640px) {
	.pdfBlock {
		display: none;
	}
	.pdfView {
		width: auto;
		margin: 4em 10px;
	}
	.pdfView dt {
		font-size: 1.8rem;
	}
}

/* Recommended Block
----------------------------------------------------------------------------- */
.recommendedBlock {
	width: 1000px;
	margin: 4em auto;
	padding: 20px;
	border: 1px solid #E5E5E5;
}
.recommendedBlock.borderNon {
	padding: 0;
	border: none;
}
.recommendedBlock dl {
	display: table;
	margin: 0;
}
.recommendedBlock dl dt {
	display: table-cell;
	padding-right: 30px;
	vertical-align: middle;
	font-weight: 500;
	border-right: 1px solid #E5E5E5;
}
.recommendedBlock dl dd {
	padding-left: 20px;
	vertical-align: middle;
}
.recommendedBlock dl dd .itemlist {
	margin-bottom: 0;
}

@media screen and (max-width: 640px) {
	.recommendedBlock {
		width: auto;
		margin: 4em 10px;
	}
	.recommendedBlock.borderNon {
		margin: 4em 0;
	}
	.recommendedBlock dl {
		display: block;
	}
	.recommendedBlock dl dt {
		display: block;
		margin-bottom: 0.75em;
		padding-bottom: 0.75em;
		font-size: 1.7rem;
		border-right: none;
		border-bottom: 1px solid #E5E5E5;
	}
	.recommendedBlock dl dd {
		padding-left: 0;
		font-size: 1.6rem;
	}
}

/* Sitemap Block
----------------------------------------------------------------------------- */
.sitemapBlock h3 {
	margin-bottom: 1.25em;
	font-size: 1.6rem;
}
.sitemapBlock h3 a,
.sitemapBlock .siteList02 > ul > li a {
	color: #1E3C91;
}
.sitemapBlock > div {
	display: table;
	width: 1000px;
	margin: 4em 0;
}
.sitemapBlock ul {
	margin: 0;
	list-style: none;
}
.sitemapBlock > div > dl,
.sitemapBlock > div > ul {
	display: table-cell;
	vertical-align: top;
}
.sitemapBlock > div > dl:not(:last-child),
.sitemapBlock > div > ul:not(:last-child) {
	padding-right: 30px;
}
.sitemapBlock > div > dl:not(:first-child),
.sitemapBlock > div > ul:not(:first-child)  {
	padding-left: 30px;
	border-left: 1px solid #F0F0F0;
}
.sitemapBlock > div > ul > li a,
.sitemapBlock > div > dl dt a {
	color: #1E3C91;
	font-weight: 500;
}
.sitemapBlock .siteList01 > dl dd ul li {
	font-size: 1.3rem;
	line-height: 1.5;

}
.sitemapBlock .siteList01 > ul li:not(:last-child),
.sitemapBlock .siteList02 > ul li:not(:last-child) {
	margin-bottom: 1em;
}
.sitemapBlock .siteList03 > ul li {
	margin-bottom: 0.75em;
	font-size: 1.3rem;
	line-height: 1.5;
}
.sitemapBlock .siteList03 > ul > li a {
	color: #000000!important;
}
.sitemapBlock .equal {
	table-layout: fixed;
}

@media screen and (max-width: 640px) {
	.sitemapBlock h3 {
		margin-bottom: 0.5em;
		font-size: 1.4rem;
		line-height: 1.7;
	}
	.sitemapBlock > div {
		display: block;
		width: auto;
		margin: 2em 0;
	}
	.sitemapBlock > div > dl,
	.sitemapBlock > div > ul {
		display: block;
		padding: 0!important;
		border: none!important;
	}
	.sitemapBlock > div > dl,
	.sitemapBlock > div > dl dd + dt,
	.sitemapBlock .siteList01 > ul,
	.sitemapBlock .siteList01 > ul li {
		margin-top: 1.5em;
	}
	.sitemapBlock .siteList01 > dl dd ul li,
	.sitemapBlock .siteList02 > ul li,
	.sitemapBlock .siteList03 > ul li {
		font-size: 1.2rem;
	}
	.sitemapBlock .equal {
		table-layout: auto;
	}
}

/* Contact Block
----------------------------------------------------------------------------- */
.contactBlock {
	width: 1000px;
	margin: 0 auto;
	padding: 20px 30px;
	background-color: #FFFFFF;
	border: 1px solid #CCCCCC;
}
.contactBlock + .contactBlock {
	margin-top: 2.5em;
}
.contactBlock *:last-child {
	margin-bottom: 0!important;
}
.contactBlock h2 {
	margin-bottom: 1.25em;
	font-size: 2.3rem;
}
.contactBlock h3 {
	margin-bottom: 1em;
	font-size: 1.6rem;
}
.contactBlock p {
	margin-bottom: 1.5em;
}
.contactBlock dl.contact {
	display: table;
	width: 100%;
	margin-bottom: 1em;
}
.contactBlock *:last-child {
	margin-bottom: 0;
}
.contactBlock dl.contact > dt {
	display: table-cell;
	width: 100px;
	padding-right: 30px;
	font-weight: 500;
	line-height: 1.8;
	vertical-align: middle;
}
.contactBlock dl.contact > dd {
	display: table-cell;
	padding-left: 30px;
	border-left: 1px solid #F0F0F0;
	line-height: 1.8;
	vertical-align: middle;
}
.contactBlock .clmLayout {
	display: table;
	width: 100%;
}
.contactBlock .clmLayout > div {
	display: table-cell;
	width: 50%;
}
.contactBlock .clmLayout > div h4 {
	margin-bottom: 0.5em;
	font-size: 1.6rem;
}
.contactBlock .clmLayout > div:first-child {
	padding-right: 20px;
}
.contactBlock .clmLayout > div:last-child {
	padding-left: 20px;
}
.contactBlock.inline {
	width: 100%;
}
.contactBlock dl.contact + h3 {
	margin-top: 2em;
}

@media screen and (max-width: 640px) {
	.contactBlock {
		width: auto;
		margin: 0 10px;
		padding: 15px;
	}
	section .contactBlock {
		margin: 0;
	}
	.contactBlock.side + .contactBlock.side {
		margin-top: 1.5em;
	}
	.contactBlock.side {
		margin: 0;
	}
	.contactBlock h2 {
		margin-bottom: 0.75em!important;
		font-size: 1.8rem;
	}
	.contactBlock h3 {
		margin-bottom: 1em!important;
		font-size: 1.4rem;
	}
	.contactBlock dl.contact {
		width: auto;
		margin-bottom: 1em;
	}
	.contactBlock dl.contact > dt {
		width: 90px;
		padding-right: 20px;
	}
	.contactBlock dl.contact > dd {
		padding-left: 20px;
	}
	.contactBlock .clmLayout {
		display: block;
	}
	.contactBlock .clmLayout > div {
		display: block;
		width: auto;
	}
	.contactBlock .clmLayout > div h4 {
		font-size: 1.4rem;
	}
	.contactBlock .clmLayout > div:first-child {
		margin-bottom: 1.5em;
		padding: 0;
	}
	.contactBlock .clmLayout > div:last-child {
		padding: 0;
	}
	.contactBlock.inline {
		margin: 0 0 2em 0;
	}
	.contactBlock.inline h3 {
		margin: 0 0 0.5em 0!important;
	}
}

/* SNS Block
----------------------------------------------------------------------------- */
.snsBlock {
	margin: 2em auto;
}
.buttonBlock + .snsBlock {
	margin-top: 4em;
}
.snsBlock dl {
	display: table;
	margin: 0 auto;
	border: 1px solid #F0F0F0;
}
.snsBlock dl dt {
	display: table-cell;
	font-size: 1.4rem;
	padding: 20px 40px;
	vertical-align: middle;
}
.snsBlock dl dd {
	display: table-cell;
	vertical-align: middle;
	padding: 20px 30px 20px 0;
}
.snsBlock dl dd ul {
	margin: 0;
	list-style: none;
	letter-spacing: -0.4em;
}
.snsBlock dl dd ul li {
	display: inline-block;
	width: 44px;
	height: 24px;
	margin: 0;
	padding: 0 10px;
	letter-spacing: normal;
}
.snsBlock dl dd ul li.spView {
	display: none!important;
}
.snsBlock ul li a {
	display: block;
}
.snsBlock ul li a:hover,
.snsBlock ul li a:focus {
	opacity: 0.7;
}
.snsBlock ul li img {
	display: inline-block;
	max-width: 100%;
	width: auto;
	height: auto
}

@media screen and (max-width: 640px) {
	.snsBlock {
		margin: 2em 10px;
	}
	.buttonBlock + .snsBlock {
		margin-top: 3em;
	}
	.snsBlock dl {
		width: 100%;
	}
	.snsBlock dl dt {
		padding: 15px;
	}
	.snsBlock dl dd {
		width: 137px;
		padding: 15px 0 15px 5px;
	}
	.pc640 .snsBlock dl dd {
		width: 98px;
	}
	.snsBlock dl dd ul li.spView {
		display: inline-block!important;
	}
}

/* Slider Block ( Set slick.min.js )
----------------------------------------------------------------------------- */
/* Slider Common */
.slideList .prev {
	left: 0;
}
.slideList .next {
	right: 0;
}
.slideList .prev:hover,
.slideList .next:hover,
.slideList .prev:focus,
.slideList .next:focus,
.slideList .slick-current > a:hover p.image img {
	opacity: 0.7;
}
.slideList .dotsNav {
	width: 100%;
	margin: 0;
	padding: 0;
	list-style: none;
	line-height: 1;
	text-align: center;
	word-spacing: 0.4em;
}
.slideList .dotsNav li {
	position: relative;
	display: inline-block;
	width: 16px;
	height: 16px;
	margin: 0 2px;
	padding: 0;
	cursor: pointer;
	line-height: 1;
	word-spacing: normal;
}
.slideList .dotsNav li button {
	display: block;
	width: 16px;
	height: 16px;
	padding: 4px;
	border: 0;
	cursor: pointer;
	font-size: 0;
	line-height: 0;
	outline: none;
}
.slideList .dotsNav li button:hover,
.slideList .dotsNav li button:focus {
	outline: none;
	opacity: 0.7;
}
.slideList .dotsNav li button::before {
	content: '';
	position: absolute;
	top: 4px;
	left: 4px;
	width: 8px;
	height: 8px;
	background-color: #CCCCCC;
	border-radius: 4px;
	font-size: 1px;
	line-height: 1;
	overflow: hidden;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
.slideList .dotsNav li.slick-active button::before {
	background-color: #CC1433;
}
.slideList .slick-track,
.slideList .slick-list {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.slideList .slick-list {
	position: relative;
	display: block;
	overflow: hidden;
	margin: 0;
	padding: 0;
}
.slideList ..slick-list:focus {
	outline: none;
}
.slideList .slick-track {
	position: relative;
	top: 0;
	left: 0;
	display: block;
}
.slideList .slick-track::before,
.slideList .slick-track::after {
	content: '';
	display: table;
}
.slideList .slick-track::after {
	clear: both;
}
.slick-loading .slick-track {
	visibility: hidden;
}
.slideList .slick-slide {
	display: none;
	float: left;
	height: 100%;
	min-height: 1px;
	outline: none;
}
.slideList .slick-slide a:hover {
	text-decoration: none;
}
.slideList .slideList [dir='rtl'] .slick-slide {
	float: right;
}
.slideList .slick-slide img {
	display: block;
}
.slideList .slick-slide.slick-loading img {
	display: none;
}
.slideList.slick-initialized .slick-slide {
	display: block;
}
.slick-loading .slick-slide {
	visibility: hidden;
}
.slideList .slick-arrow.slick-hidden {
	display: none;
}

@media screen and (max-width: 640px) {
	.slideList .prev img,
	.slideList .next img {
		display: block;
		width: auto;
		height: 22px;
	}
}

/* Slider Top */
.slideTop {
	position: relative;
	width: 100%;
	/* 20180214 add */
	margin: 0 auto 4em auto;
	overflow: hidden;
}
.slideTop .slideList {
	position: relative;
	display: block;
	margin-left: 0;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}
.slideTop .slideList .slick-arrow {
	position: absolute;
	top: 50%;
	height: 64px;
	margin-top: -32px;
	padding: 10px;
	z-index: 1;
}
.slideTop .slideList > div {
	/* display: block; 20180214 out */
	max-height: 480px;
	/* height: 32vw; 20180214 out */
	outline: none;
	/* overflow: hidden; 20180214 out */
}
.slideTop .slideList .movie .pcView,
.slideTop .slideList .image .photo {
	position: relative;
	max-height: 480px;
	/* min-height: 200px; 20180214 change */
	min-height: 320px;
	height: 32vw;
}
.slideTop .slideList .image .photo {
	text-align: center;
}
.slideTop .slideList .movie video,
.slideTop .slideList .photo img {
	display: block;
	position: absolute;
	top: 0;
	left: 50%;
	max-width: 100%;
	/* min-width: 640px; 20180214 change */
	min-width: 1000px;
	/* 20180214 add */
	min-height: 320px;
	width: auto;
	height: auto;
	transform: translate(-50%, 0);
}
.slideTop .slideList .photo img {
	display: inline-block;
}
.slideTop .slideList .movie .soundBtn {
	position: relative;
	top: 80%;
	left: 80%;
	width: 40px;
	height: 40px;
	background-image: url(/grp/common/images/slide-sound-off.png);
	background-position: center center;
	background-repeat: no-repeat;
	text-indent: 100%;
	overflow: hidden;
	white-space: nowrap;
	z-index: 510;
}
.slideTop .slideList .movie .soundBtn:focus {
	outline: none;
}
.slideTop .slideList .movie .soundBtn.on {
	background-image: url(/grp/common/images/slide-sound-on.png);
}
.pc .slideTop .slideList .photo {
	background-image: none!important;
	background-repeat: no-repeat;
	background-position: left top;
}

@media screen and (max-width: 1000px) {
	_:-webkit-any(x)::-webkit-full-screen, .slideTop .slideList > div {
		height: 38vw;
	}
}

@media screen and (max-width: 640px) {
	.slideTop {
		width: auto;
		margin: 0 0 2.5em 0;
	}
	.slideTop .slideList > div {
		max-height: 150px;
		/*[2017/12/27 Adjust] max-height: 200px;*/
		height: 150px;
		/*[2017/12/27 Adjust] height: 200px;*/
	}
	.slideTop .slideList .slick-arrow {
		top: 32px;
		height: 150px;
		/*[2017/12/27 Adjust] height: 200px;*/
	}
	.slideTop .slideList .next {
		padding: 66px 10px 70px 20px;
		/*[2017/12/27 Adjust] padding: 89px 10px 89px 20px;*/
	}
	.slideTop .slideList .prev {
		padding: 66px 20px 70px 10px;
		/*[2017/12/27 Adjust] padding: 89px 20px 89px 10px;*/
	}
	.slideTop .slideList .movie .pcView {
		max-height: 150px;
		/*[2017/12/27 Adjust] max-height: 200px;*/
		height: auto;
	}
	.slideTop .slideList .photo img {
		position: relative;
		top: 0;
		left: 0;
		min-width: auto;
		width: auto;
		height: 150px;
		/*[2017/12/27 Adjust] height: 200px;*/
		transform: translate(0, 0);
	}
	#document:not(.pc) .slideTop .slideList .photo img {
		opacity: 0;
	}
	.slideTop .slideList .photo {
		background-position: center top;
		background-repeat: no-repeat;
		background-size: auto 150px;
		/*[2017/12/27 Adjust] background-size: auto 200px;*/
	}
	.slideTop .slideList .photo img {
		width: auto;
		height: 150px;
		/*[2017/12/27 Adjust] height: 200px;*/
	}
}

/* Slider Main */
.slideMain {
	position: relative;
	width: 1000px;
	margin: 0 auto 4em auto;
}
.slideMain .slideList {
	position: relative;
	display: block;
	margin-left: 0;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}
.slideMain .slideList .slick-arrow {
	position: absolute;
	top: 30%;
	height: 64px;
	margin-top: -32px;
	padding: 10px;
	z-index: 10;
}
.slideMain .slideList > div {
	display: block;
	outline: none;
}
.slideMain .slideList > div > a {
	display: block;
}
.slideMain .slideList > div span.oval {
	display: inline-block;
	margin: 0 20px;
	padding: 8px 50px;
	background-color: #FFFFFF;
	border: 1px solid #CC1433;
	border-radius: 25px 25px;
}
.slideMain .slideList a:hover span.oval,
.slideMain .slideList a:focus span.oval {
	opacity: 0.7;
	text-decoration: none;
}
.slideMain .slideList p.image {
	margin-bottom: 1.5em;
}
.slideMain .slideList dl.detail {
	margin-bottom: 0;
}
.slideMain .slideList dl.detail > dt {
	margin-bottom: 0.75em;
	font-size: 2.4rem;
	font-weight: 500;
	line-height: 1.6;
}
.slideMain .slideList a:hover dl.detail > dt {
	text-decoration: underline;
}
.slideMain .slideList dl.detail > dd {
	font-size: 1.6rem;
	line-height: 2;
}
.slideMain .slideList dl.detail > dd .buttonBlock {
	margin-bottom: 1.5em;
}

@media screen and (max-width: 640px) {
	.slideMain {
		width: auto;
		margin: 0 10px 4em 10px;
	}
	.slideMain .slideList .slick-arrow {
		top: 32px;
		max-height: 240px;
	}
	.slideMain .slideList .next {
		padding: 20% 10px 20% 20px;
	}
	.slideMain .slideList .prev {
		padding: 20% 20px 20% 10px;
	}
	.slideMain .slideList dl.detail > dt {
		margin-bottom: 0.5em;
		font-size: 2.0rem;
	}
	.slideMain .slideList dl.detail > dd {
		font-size: 1.4rem;
	}
	.slideMain .slideList dl.detail > dd .buttonBlock {
		margin: 1.5em 0;
	}
	.slideMain .slideList p.image {
		margin-bottom: 1em;
	}
	.slideMain .slick-slide img {
		max-width: 100%;
		width: auto;
		height: auto;
	}
}

/* Exclusive Layout
----------------------------------------------------------------------------- */
.ex {
	min-height: calc(100vh);
	height: calc(100%);
}
.ex header {
	position: relative;
}
.ex header::after,
.ex header::before,
.ex header > div::after {
	content: '';
	position: absolute;
	bottom: 0;
	width: 50%;
	height: 8px;
	z-index: -1;
}
.ex header::after {
	left: 0;
	background-color: #CD1432;
}
.ex header::before {
	right: 0;
	background-color: #1E4191;
}
.ex header div {
	position: relative;
	width: 1000px;
	margin: 0 auto;
	padding: 30px 0 36px 0;
}
.ex header > div::after {
	content: '';
	position: absolute;
	left: 0;
	width: 100%;
	background-image: linear-gradient(-90deg, #1E4191 0, #7D1E69 35%, #CD1432 100%);
	z-index: 1;
}
.ex .contents {
	height: calc(100vh - 200px);
}
.ex main {
	display: table;
	width: 1000px;
	min-height: calc(100vh - 200px);
	height: calc(100%);
	margin: 0 auto;
}
.ex main article {
	display: table-cell;
	margin-bottom: 0;
	padding: 30px 10px;
	text-align: center;
	vertical-align: middle;
}
.ex main article:last-child {
	margin-bottom: 0;
}
.ex main h1,
.ex main p {
	margin-bottom: 1em;
}
.ex footer {
	padding: 0;
}
.ex footer small {
	display: block;
	line-height: 80px;
}
@media screen and (max-width: 640px) {
	.ex header::after,
	.ex header::before {
		width: 100%;
		background-color: transparent;
	}
	.ex header div {
		width: 100%;
		height: 108px;
		margin: 0;
		padding: 20px 10px;
	}
	.ex main {
		width: 100%;
		min-height: calc(100vh - 168px);
		margin: 0;
	}
	.ex main p:not([class]) {
		text-align: left;
	}
	.ex footer {
		width: 100%;
		margin: 0 10px;
	}
	.ex footer small {
		font-size: 1rem;
		line-height: 60px;
		text-align: center;
	}
}

/* Design Parts
----------------------------------------------------------------------------- */
.box01 *:last-child,
.box02 *:last-child,
.box03 *:last-child,
.box04 *:last-child,
.box06 *:last-child,
.box07 *:last-child,
.box08 *:last-child,
.box09 *:last-child {
	margin-bottom: 0;
}

/* Box 01 */
.box01 {
	display: table;
	width: 1000px;
	margin: 0 auto 2em auto;
}
.box01 > .left {
	display: table-cell;
	width: 470px;
	vertical-align: top;
}
.box01 > .left:only-child {
	display: table-cell;
	width: 1000px;
	padding-right: 530px;
	vertical-align: top;
}
.box01 > .right {
	display: table-cell;
	padding-left: 60px;
	vertical-align: top;
}
.box01 img {
	display: block;
}

/* Box 02 */
.box02 {
	width: 1000px;
	margin: 0 auto;
}
.box02::after {
	content: '';
	clear: both;
	display: block;
}
.box02 > .left {
	float: left;
	width: 470px;
	margin: 0 60px 40px 0;
}
.box02 > .right {
	float: right;
	width: 470px;
	margin: 0 0 40px 60px;
}

/* Box 03 */
.box03 {
	width: 1000px;
	margin: 0 auto;
	letter-spacing: -0.4em;
}
.box03 > div {
	display: inline-block;
	width: 500px;
	margin: 0;
	letter-spacing: normal;
	vertical-align: top;
}
.box03 > div a {
	display: table;
	width: 100%;
	padding: 30px 50px 30px 30px;
	background-image: url(/grp/common/images/icon-arrow02.png);
	background-position: 96% center;
	background-repeat: no-repeat;
	border-bottom: 1px solid #F0F0F0;
	text-decoration: none;
}
.box03 > div:nth-child(1) a,
.box03 > div:nth-child(2) a {
	border-top: 1px solid #F0F0F0;
}
.box03 > div:nth-child(odd) a {
	border-right: 1px solid #F0F0F0;
}
.box03 > div figure {
	display: table-cell;
	width: 170px;
	padding-right: 30px;
	vertical-align: top;
}
.box03 > div .text {
	display: table-cell;
	width: 270px;
	vertical-align: top;
}
.box03 > div .text dt {
	display: block;
	margin-bottom: 0.5em;
	font-size: 1.8rem;
}
.box03 > div a:hover .text dt {
	text-decoration: underline;
}

/* Box 04 */
.box04 {
	display: table;
	width: 1000px;
	margin: 0 auto;
}
.box04 > .left {
	display: table-cell;
	width: 290px;
	padding-right: 30px;
	vertical-align: top;
}
.box04 > .right {
	display: table-cell;
	vertical-align: top;
}
.box04 h2 {
	margin-bottom: 0.5em
}

/* Box 05 */
.box05 {
	width: 1000px;
	margin: 0 auto;
}
.box05::after {
	content:" ";
	display:block;
	clear:both;
}
.box05 > .right {
	float: right;
	display: flex;
	flex-wrap: wrap;
	width: 490px;
	margin-left: 60px;
}
.box05.narrow .right {
	width: 250px;
}

.box05 > .right figure {
	width: 240px;
	margin: 0.5em 0 1em 0;
}
.box05 > .right figure img {
	width: 100%;
	height: auto;
}
.box05 > .right figure + figure:nth-child(even) {
	margin-left: 10px;
}

.box05.narrow_l .left {
	float: left;
	display: flex;
	flex-wrap: wrap;
	margin-right: 60px;
	width: 250px;
}
.box05.narrow_l .right {
	width: auto;
	margin: auto;
	float: none;
	display: inherit;
}

.box05 > .left figure {
	width: 240px;
	margin: 0.5em 0 1em 0;
}
.box05 > .left figure img {
	width: 100%;
	height: auto;
}
.box05 > .left figure + figure:nth-child(even) {
	margin-right: 10px;
}

/* Box 06 */
.box06 {
	width: 1000px;
	margin: 0 auto;
}
.box06::after {
	content: '';
	clear: both;
	display: block;
}
.box06 > .right {
	float: right;
	width: 440px;
	margin-left: 60px;
}
.box06 > .right figure {
	margin-bottom: 0;
	padding: 20px;
}

/* Box 07 */
.box07 {
	width: 1000px;
	margin: 4em auto;
}
.box07 p.date {
	margin-bottom: 0.25em;
	line-height: 1.7;
	text-align: right;
}
.box07 > dl {
	display: table;
	width: 1000px;
	margin: 0 auto;
	background-color: #F5F8FF;
}
.box07 > dl dt,
.box07 > dl dd {
	display: table-cell;
	padding: 20px 30px;
	vertical-align: middle;
}
.box07 > dl dt {
	width: 40%;
	border-right: 1px solid #FFFFFF;
	font-weight: 500;
}
.box07 > dl dd {
	text-align: center;
}
.box07 > dl dd .emphasis {
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1.4;
}
.box07 > dl dd .emphasis span {
	font-size: 1.8rem;
}

/* Box 08 */
.box08 {
	display: table;
	width: 1000px;
	margin: 6em auto 4em auto;
	border: 1px solid #D0D0D0;
}
.box08 > .left {
	display: table-cell;
	width: 300px;
	vertical-align: top;
}
.box08 > .right {
	display: table-cell;
	padding: 2em;
	vertical-align: top;
}
.box08 figure {
	position: relative;
	display: block;
	width: 300px;
	height: 320px;
	overflow: hidden;
}
.box08 figure img {
	position: absolute;
	max-width: inherit;
	width: auto;
	height: 320px;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.box08 > right h3 {
	margin-bottom: 0.5em;
}
.box08 > .right p {
	margin-bottom: 1em;
	line-height: 1.6;
}

/* Box 09 */
.box09 {
	display: table;
	width: 1000px;
	margin: 0 auto;
}
.box09 > .left {
	display: table-cell;
	width: 510px;
	vertical-align: top;
}
.box09 > .right {
	display: table-cell;
	width: 490px;
	padding-left: 60px;
	vertical-align: top;
}

/* Box 10 */
.box10 {
	width: 1000px;
	margin: 0 auto;
	text-align: center;
}
.box10 figure p {
	margin-bottom: 0.5em;
}
.box10 figcaption {
	text-align: left;
}
.box10 p {
	text-align: left;
}

@media screen and (max-width: 640px) {
	.box01 figure,
	.box02 figure,
	.box06 figure,
	.box09 figure {
		margin-bottom: 1.5em;
	}
	.box01 figure + .spView,
	.box02 figure + .spView,
	.box06 figure + .spView,
	.box09 figure + .spView {
		margin-top: 1.5em;
	}

	/* Box 01 */
	.box01 {
		display: block;
		width: auto;
		margin: 2em 10px;
	}
	.box01 > .left {
		display: block;
		width: auto;
		margin: 0 0 2em 0;
	}
	.box01 > .left:only-child {
		display: block;
		width: auto;
		padding-right: 0;
	}
	.box01 > .left figure {
		width: auto;
		height: auto;
	}
	.box01 > .right {
		display: block;
		padding-left: 0;
	}
	section > .box01 {
		margin: 2em 0;
	}
	section.side .box01,
	section.side .box02,
	section .table01 + .box01 {
		margin: 2em 10px;
	}

	/* Box 02 */
	.box02 {
		width: auto;
		margin: 2em 0;
	}
	.box02 > .left,
	.box02 > .right {
		float: none;
		width: 100%;
		margin: 0 0 20px 0;
	}
	.box02 section {
		margin: 2.5em 0!important;
	}
	section.side .box02 {
		margin: 2em 10px;
	}
	/* Box 03 */
	.box03 {
		width: auto;
		margin: 2em 0;
	}
	.box03 > div {
		width: 100%;
	}
	.box03 > div a {
		padding: 10px 40px 10px 10px;
		background-position: 97% center;
	}
	.box03 > div:last-child a {
		border-bottom: none;
	}
	.box03 > div:nth-child(1) a,
	.box03 > div:nth-child(2) a {
		border-top: none;
	}
	.box03 > div:nth-child(odd) a {
		border-right: none;
	}
	.box03 > div figure {
		width: 120px;
		padding-right: 20px;
	}
	.box03 > div .text {
		width: auto;
	}

	/* Box 04 */
	.box04 {
		width: 100%;
		margin: 2em 0;
	}
	.box04 > .left {
		width: 130px;
		padding-right: 20px;
	}

	/* Box 05 */
	.box05 {
		width: auto;
		margin: 0 auto;
		display: flex;
		flex-direction: column-reverse;
	}
	.box05 > .left {
		width: 100%;
	}
	.box05 > .right {
		float: none;
		flex-wrap: no-wrap;
		width: auto;
		margin-left: 0;
	}
	.box05.narrow .right {
		width: auto;
	}
	.box05 > .right figure {
		width: 100%;
		margin: 0.5em 0 1em 0!important;
	}

	.box05.narrow_l .left {
		width: auto;
		margin-right: 0;
	}

	.box05 > .left figure {
		width: 100%;
		margin: 0.5em 0 1em 0!important;
	}

	/* Box 06 */
	.box06 {
		display: block;
		width: auto;
		margin: 0;
	}
	.box06 > .right {
		float: none;
		width: auto;
		margin: 0 0 20px 0;
		padding-left: 0;
	}
	.box06 > .right figure {
		padding: 20px 23%;
		border: 1px solid #CCCCCC;
	}
	.box06 > .left {
	}

	/* Box 07 */
	.box07 {
		width: auto;
		margin: 2em auto;
	}
	.box07 > dl {
		display: block;
		width: auto;
		margin: 0;
	}
	.box07 > dl dt,
	.box07 > dl dd {
		display: block;
		margin: 0;
		padding: 0;
	}
	.box07 > dl dt {
		width: auto;
		border-right: none;
		padding: 20px 10px 5px 10px;
	}
	.box07 > dl dd {
		padding: 5px 10px 20px 10px;
		text-align: left;
	}
	.box07 > dl dd .emphasis {
		font-size: 2.0rem;
	}
	.box07 > dl dd .emphasis span {
		font-size: 1.4rem;
	}
	.box07 .date {
		margin-left: 10px;
		margin-right: 10px;
	}

	/* Box 08 */
	.box08 {
		width: auto;
		margin: 2em 0;
	}
	.box08 figure {
		max-width: 100%;
		width: 100%;
		height: auto;
		overflow: auto;
	}
	.box08 figure img {
		position:relative;
		height: auto;
		top: 0%;
		left: 0%;
		-webkit-transform: translate(-50%, -50%);
		-ms-transform: translate(-50%, -50%);
		transform: translate(0%, 0%);
	}
	.box08 > .left,
	.box08 > .right {
		display: block;
		width: auto;
	}
	.box08 > .right {
		padding: 1em;
	}
	.box08 > .right h3 {
		margin-left: 0;
	}

	/* Box 09 */
	.box09 {
		display: block;
		width: auto;
		margin: 2em 10px;
	}
	.box09 > .left {
		display: block;
		width: auto;
		margin-bottom: 1.5em;
	}
	.box09 > .right {
		display: block;
		width: auto;
		padding-left: 0;
	}
	section section .box09 {
		margin: 2em 0;
	}

	/* Box10 */
	.box10 {
		display: block;
		width: auto;
		margin: 2em 0;
	}
}

/* Anchor Nav */
.anchorNav {
	position: relative;
	width: 1000px;
	margin: 2em auto;
	padding-bottom: 5px;
}
.anchorNav::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	width: 1000px;
	height: 2px;
	background-image: linear-gradient(90deg, #CD1432 0, #7D1E69 35%, #1E4191 100%);
}
.anchorNav ul {
	margin: 0;
	list-style: none;
	font-size: 1.4rem;
}
.anchorNav ul::after {
	content: '';
	clear: both;
	display: block;
}
.anchorNav ul li {
	float: left;
	width: 333px;
	margin-bottom: 1em!important;
	line-height: 1.4;
}
.anchorNav ul li:nth-child(3n) {
	width: 334px;
}
.anchorNav ul li a {
	display: block;
	padding: 1px 50px 1px 26px;
	background-image: url(/grp/common/images/icon-arrow03.png);
	background-position: left 0.5em;
	background-repeat: no-repeat;
}
.anchorNav ul.column {
	display: table;
	table-layout: fixed;
}
.anchorNav ul.column li {
	float: none;
	display: table-cell;
	padding-bottom: 0.75em;
	vertical-align: middle;
}

@media screen and (max-width: 640px) {
	.anchorNav {
		width: auto;
		margin: 0 10px;
		padding-bottom: 0;
	}
	.tabBlock .anchorNav {
		margin: 0;
	}
	.anchorNav::after {
		width: auto;
		height: auto;
		background-image: none;
	}
	.anchorNav ul {
		margin: 0;
		list-style: none;
		font-size: 1.4rem;
	}
	.anchorNav ul li {
		float: none;
		width: auto;
		margin-bottom: 0!important;
		border-bottom: 1px solid #F0F0F0;
	}
	.anchorNav ul li:nth-child(3n) {
		width: auto;
	}
	.anchorNav ul li a {
		padding: 10px 40px 10px 10px;
		background-position: 97% 1.3em;
	}
	.anchorNav ul.column {
		display: block;
		table-layout: auto;
	}
	.anchorNav ul.column li {
		display: block;
		padding-bottom: 0;
	}
	section .anchorNav {
		margin-left: 0;
		margin-right: 0;
	}
}

/* Page Nav */
.pageNav {
	width: 1000px;
	margin: 0 auto;
}
.pageNav ul {
	display: table;
	margin: 0 auto;
	list-style: none;
}
.pageNav ul li {
	display: table-cell;
	font-size: 1.3rem;
	line-height: 1;
	vertical-align: middle;
}
.pageNav ul li a,
.pageNav ul li span {
	display: block;
	padding: 10px 14px;
	border: 1px solid #CCCCCC;
	border-right: none;
	text-align: center;
}
.pageNav ul li a:hover {
	text-decoration: underline;
}
.pageNav ul li span.current {
	border-bottom: 2px solid #CC1433;
	color: #CC1433;
	text-decoration: none;
}
.pageNav ul li:first-child a,
.pageNav ul li:last-child a {
	width: 50px;
	background-position: center center;
	background-repeat: no-repeat;
	text-indent: 200%;
	overflow: hidden;
	white-space: nowrap;
}
.pageNav ul li:first-child a {
	border-left: 1px solid #CCCCCC;
	border-radius: 25px 0 0 25px;
	background-image: url(/grp/common/images/icon-arrow05.png);
	border-right: none;
}
.pageNav ul li:last-child a {
	border-right: 1px solid #CCCCCC;
	border-radius: 0 25px 25px 0;
	background-image: url(/grp/common/images/icon-arrow01.png);
}

@media screen and (max-width: 640px) {
	.pageNav {
		width: auto;
		padding: 0 10px;
	}
	.pageNav ul {
		max-width: 640px;
		width: 100%;
		table-layout: fixed;
		border: 1px solid #E5E5E5;
	}
	.pageNav ul li {
		display: table-cell;
		font-size: 1.2rem;
	}
	.pageNav ul li a,
	.pageNav ul li span {
		padding: 8%;
		border: none;
	}
	.pageNav ul li span.current {
		border-bottom: none;
		color: #000000;
		white-space: nowrap;
	}
	.pageNav ul li:first-child a,
	.pageNav ul li:last-child a {
		width: auto;
		border: none;
		border-radius: 0 0;
	}
}

/* Paginate Nav */
.paginateNav {
	display: table;
	width: 1000px;
	margin: 4em auto;
}
.paginateNav .prev {
	display: table-cell;
	margin-bottom: 0;
	vertical-align: middle;
}
.paginateNav .next {
	display: table-cell;
	margin-bottom: 0;
	text-align: right;
	vertical-align: middle;
}
.paginateNav .prev a {
	display: inline-block;
	padding: 1px 0 1px 26px;
	background-image: url(/grp/common/images/icon-arrow05.png);
	background-position: left center;
	background-repeat: no-repeat;
	line-height: 1.2;
}
.paginateNav .next a {
	display: inline-block;
	padding: 1px 26px 1px 0;
	background-image: url(/grp/common/images/icon-arrow01.png);
	background-position: right center;
	background-repeat: no-repeat;
	line-height: 1.2;
}

@media screen and (max-width: 640px) {
	.paginateNav {
		display: block;
		width: auto;
		margin: 2.5em 10px;
		border-top: 1px solid #F0F0F0;
		border-bottom: 1px solid #F0F0F0;
	}
	.paginateNav .prev {
		display: block;
		border-bottom: 1px solid #F0F0F0;
	}
	.paginateNav .next {
		display: block;
		text-align: left;
	}
	.paginateNav .prev a,
	.paginateNav .next a {
		display: block;
		padding: 10px 40px 10px 10px;
		background-image: url(/grp/common/images/icon-arrow01.png);
		background-position: 97% center;
	}
}

/* Tag List */
ul.tagList {
	width: 1000px;
	margin: 0 auto;
	letter-spacing: -0.4em;
	line-height: 1;
	list-style: none;
	text-align: right;
}
ul.tagList li {
	display: inline-block;
	width: 160px;
	margin: 0 10px 5px 0;
	border: 1px solid #D0D0D0;
	color: #656565;
	font-size: 1.2rem;
	line-height: 1.4;
	letter-spacing: normal;
	text-align: center;
}
ul.tagList + .anchorNav {
	margin-top: 1em;
}

@media screen and (max-width: 640px) {
	ul.tagList {
		width: auto;
		margin: 0;
	}
	ul.tagList li {
		min-width: 190px;
		width: auto;
		font-size: 1.0rem;
		line-height: 1.2;
	}
}

/* RSS Block */
.rssBlock {
	width: 1000px;
	margin: 0 auto;
	text-align: right;
}
.rssBlock .rssList {
	display: inline-block;
	margin: 0;
	list-style: none;
	text-align: right;
	white-space: nowrap;
}
.rssBlock .rssList li {
	display: inline-block;
	margin-bottom: 0;
	font-size: 1.3rem;
}
.rssBlock .rssList li.rss {
	padding-right: 36px;
}
.rssBlock .rssList li.rss a {
	padding-left: 20px;
	background-image: url(/grp/common/images/icon-rss01.png);
	background-position: left center;
	background-repeat: no-repeat;
}
.rssBlock + .formBlock {
	margin-top: 2em;
}

@media screen and (max-width: 640px) {
	.rssBlock {
		width: auto;
		margin: 0 10px;
	}
}

/* Icon */
img.icon01 {
	display: inline-block;
	margin: 0 5px;
	vertical-align: middle;
}

/* Text Color */
.color01 {
	color: #CC1332;
}
.color02 {
	color: #1E4191;
}
.color03 {
	color: #203952;
}

/* Layout */
span.brPc::before {
	content: '\A';
	display: block;
	height: 0;
	margin-top: 0.25em;
	white-space: pre;
}
span.brSp::before {
	content: '';
	display: none;
}
.borderNone {
	border: none!important;
}
.alignL {
	text-align: left!important;
}
.alignC {
	text-align: center!important;
}
.alignR {
	text-align: right!important;
}
.valignT {
	vertical-align: top!important;
}
.valignM {
	vertical-align: middle!important;
}
.valignB {
	vertical-align: bottom!important;
}
.w10 {
	width: 10%;
}
.w15 {
	width: 15%;
}
.w20 {
	width: 20%;
}
.w30 {
	width: 30%;
}
.w40 {
	width: 40%;
}
.w50,
.w50-auto {
	width: 50%;
}
.w60 {
	width: 60%;
}
.w70 {
	width: 70%;
}
.w80 {
	width: 80%;
}
.w90 {
	width: 90%;
}
.w100 {
	width: 100%;
}
.mb00 {
	margin-bottom: 0!important;
}
.mb05 {
	margin-bottom: 0.5em!important;
}
.mb10 {
	margin-bottom: 1em!important;
}
.mb20-10 {
	margin-bottom: 2em!important;
}
.mb15 {
	margin-bottom: 1.5em!important;
}
.mb20 {
	margin-bottom: 2em!important;
}
.mb30 {
	margin-bottom: 3em!important;
}
.mb40,
.mb40-25 {
	margin-bottom: 4em!important;
}
.mb50 {
	margin-bottom: 5em!important;
}
.mb60 {
	margin-bottom: 6em!important;
}
.mt00 {
	margin-top: 0!important;
}
.mt05 {
	margin-top: 0.5em!important;
}
.mt10 {
	margin-top: 1em!important;
}
.mt15 {
	margin-top: 1.5em!important;
}
.mt20 {
	margin-top: 2em!important;
}
.pt20 {
	padding-top: 20px!important;
}

@media screen and (max-width: 640px) {
	span.brPc::before {
		content: '';
		display: none;
	}
	span.brSp::before {
		content: '\A';
		display: block;
		height: 0;
		margin-top: 0.25em;
		white-space: pre;
	}
	.w50-auto {
		width: auto;
	}
	.w100-50 {
		width: 50%;
	}
	.mb00-20 {
		margin-bottom: 2em!important;
	}
	.mb20-10 {
		margin-bottom: 1em!important;
	}
	.mb40-25 {
		margin-bottom: 2.5em!important;
	}
}

/* Print
----------------------------------------------------------------------------- */
.print {
	display: none;
}


/*[2018/01/23 Add Class for Parts]*/
ol.mgnbtm0,
ul.mgnbtm0 {
	margin-bottom: 0em;
}

/* [2018/02/28 Add for employee_core] */
#employeeConductStandard .w100 img {
	max-width: 100%;
}

/* PSC追加 */
.all-switchbox{width: 1000px; min-height: 50px; margin: 0 auto 1.5em; position: relative;}
.all-switch{ position: absolute; right: 0; display: table;}
.all-switch .buttonBlock{margin:0; display:table-cell;}
.all-switch .buttonBlock > a,
.all-switch .buttonBlock > span {
	display: inline-block;
	min-width:inherit !important;
	max-width: 460px !important;
	cursor:pointer;
}
.all-switch .buttonBlock > a span {
	display: table-cell;
	min-width:inherit !important;
	vertical-align: middle;
	padding: 8px 0 8px 10px;
	width: 180px;
}
.business-info {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	border-bottom: 1px solid #f0f0f0;
}
.business-info .info-box {
	width: 30%;
	margin-bottom: 20px;
}
.business-info h3 {
	font-size: 1.8rem;
}
.business-info::after{
	content:"";
	display: block;
	width:30%;
}
@media screen and (max-width: 640px) {
	.all-switchbox{width: auto; min-height:inherit; margin: 0 auto; position:static;}
	.all-switch{ position: static; display: block;}
	.all-switch .buttonBlock{margin:2em 20px; display: block;}
	.all-switch .buttonBlock > a span { width: 195px;;}
	.business-info .info-box {
		width: 100%;
	}
	.business-info::after{
		width:100%;
	}
}

/* ORIX Stories - footer
----------------------------------------------------------------------------- */
.story-new-area ul {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	list-style: none;
	margin: 0;
}
.story-new-area ul li {
	width: 300px;
	height: 227px;
	line-height: 1.3;
	position: relative;
	overflow: hidden;
}
.story-new-area ul li::after {
	content: "";
	display: block;
	position: absolute;
	z-index: 1;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 25%;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 1) 100%);
	pointer-events: none;
}

.story-new-area .story-new_img img {
	width: 100%;
	height: auto;
	position: absolute;
	left: -100%;
	right: -100%;
	margin: 0 auto;
}
.story-new-area .story-new_txt {
	color: #fff;
	font-size: 2rem;
	position: absolute;
	bottom: 1rem;
	left: 1rem;
	z-index: 2;
}
.story-new-area ul li a {
	display: block;
	width: 100%;
	height: 100%;
}
.story-new-area ul li a img{
	transform: scale(1);
	-webkit-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
.story-new-area ul li a:hover img{
	transform: scale(1.2);
	-webkit-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
@media screen and (max-width: 640px) {
	.story-new-area {
		width: 94%;
		margin: auto;
	}
	.story-new-area ul {
		display: block;
	}
	.story-new-area ul li {
		width: 100%;
		margin-bottom: 2rem;
	}
	.story-new-area img {
		width: 100%;
		height: 90%;
	}
}

/* .challenge-erea */
.challenge-erea a:hover {
	text-decoration: none!important;
}
.challenge-erea a img{
	transform: scale(1);
	-webkit-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
.challenge-erea a:hover img{
	transform: scale(1.2);
	-webkit-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
.challenge-erea .btn{
	position: absolute;
	text-align: center;
	margin: 0 auto;
	height: 3.8rem;
	line-height: 3.8rem;
	border-radius: 3.8rem;
	font-size: 1.4rem;
	letter-spacing: 0;
}
.challenge-erea .btn-blue{
	width: 36%;
	bottom: 2rem;
	right: 2rem;
	border: 1px solid #1E3C91;
	box-sizing: border-box;
	color: #1E3C91;
	background: url(/grp/company/brand/doyouknow/images/arrow_blue_01.png) 92% center no-repeat;
}
.challenge-erea a:hover .btn{
	text-decoration: underline!important;
}
.challenge-erea .row {
	width: 1000px;
	margin: 0 auto;
}
.challenge-erea{
	padding: 7rem 0 3rem;
	background: #f0f0f0;
	margin-bottom: 6rem;
}
.challenge-erea .second-ttl{
	margin-bottom: 2.8rem!important;
	width: 382px;
	margin: 0 auto;
}
.challenge-erea .second-ttl img{
	width: 100%;
}
.challenge-erea .sub-ttl{
	margin-bottom: 4.5rem;
	text-align: center;
	font-size: 1.8rem;
}
.challenge-item .challenge-itemlist{
	width: 48%;
	margin-right: 2rem;
	margin-bottom: 3rem;
	box-shadow: 0px 4px 6.79px 0.21px rgba(0, 0, 0, 0.13);
	background: #fff;
	border-radius: 7px;
}
.challenge-block{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	height: 100%;
}
.challenge-block_img{
	width: 31%;
}
.challenge-block_img img{
	width: 100%;
}
.challenge-block:hover .challenge-summary{
	text-decoration: underline;
}
.challenge-box{
	width: 65%;
	padding: 2rem 2% 0;
}
.challenge-continue{
	text-align: center;
	background: #fcfcfc;
	padding: 1.4rem 0;
	color: #cd1332;
}
.close-btn.challenge-continue{
	background: #f4f7fa;
	cursor: pointer;
	margin-bottom: 10rem;
}
.toggle-erea{
	cursor: pointer;
}
.challenge-item .challenge-boxlist{
	width: 48%;
	float: left;
	margin-right: 4rem;
	margin-bottom: 4rem;
	box-shadow: 0px 4px 6.79px 0.21px rgba(0, 0, 0, 0.13);
	background: #fff;
	border-radius: 7px;
	position: relative;
}
.challenge-item li:nth-child(even){
	margin-right: 0;
}
.challenge-erea ul {
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
	list-style: none;
	margin: 0;
}
.challenge-erea ul::after {
	content: '';
	clear: both;
	display: block;
}

.challenge-item .challenge-boxlist .challenge-box_img {
	width: 42%;
	overflow: hidden;
	position: relative;
	border-radius: 7px 0px 0px 7px;
	margin: 0;
}
.challenge-item .challenge-boxlist .challenge-box_img img {
	width: auto;
	height: 100%;
	position: absolute;
	left: -100%;
	right: -100%;
	margin: auto;
}
.challenge-item .challenge-boxlist .challenge-box_txt {
	width: 58%;
	margin: 2rem;
	padding-bottom: 4rem;
}
.challenge-item .challenge-boxlist .challenge-box_data {
	font-size: 1.2rem;
	margin-bottom: 1rem;
}
.doyoknow-footer + aside {
	width: 1000px;
	margin: 6em auto;
}
.challange-link a {
	color:#224392;
}
#orix-challenge {
	margin-top: -173px;
	padding-top: 173px;
}
@media screen and (max-width: 640px) {
	/* challenge area */
	#orix-challenge {
		margin-top: -100px;
		padding-top: 100px;
	}
	.challenge-erea {
		margin-bottom: 4.5rem;
		padding-top: 5rem;
		padding-bottom: 1rem;
	}
	.challenge-erea .row{
		width: 94%;
	}
	.challenge-erea .second-ttl{
		width: 76%;
	}
	.challenge-erea .sub-ttl{
		width: 90%;
		margin-left: auto;
		margin-right: auto;
		margin-bottom: 2rem;
		font-size: 1.5rem;
		letter-spacing: 0.1em;
		text-align: left;
	}
	.challenge-block{
		/*-webkit-flex-direction: column;
		-moz-flex-direction: column;
		-ms-flex-direction: column;
		-o-flex-direction: column;
		flex-direction: column;*/
		display:blok;
		margin: 0 auto;
	}
	.challenge-block_img{
		width: 96%;
		margin: 0 auto;
	}
	.challenge-box{
		width: 90%;
		padding: 2rem 5% 0;
	}
	.challenge-item{
		margin: 0;
	}
	.challenge-itemlist{
		padding-top: 1.5rem;
	}
	.challenge-item .challenge-boxlist {
		width: 100%;
	}
	.challenge-item .challenge-boxlist .btn {
		right: 2rem;
		left: auto;
	}
	.challenge-erea ul {
		display: block;
	}
	.challenge-item .challenge-boxlist {
		margin-right: 0;
	}
	.challenge-item .challenge-boxlist .challenge-box_img img {
		height: 130%;
	}
	.doyoknow-footer + aside {
		width: 100%;
		margin: 2.5em 0;
	}
}

/* Do you know ORIX? 共通フッター */
.doyoknow-footer {
	width: 1000px;
	margin: 0 auto;
}
.doyoknow-footer .image {
	border: 1px solid #ccc;
}
@media screen and (max-width: 640px) {
	.doyoknow-footer {
		width: 94%;
		margin: 0 auto;
	}
	.doyoknow-footer img {
		width: 100%;
	}
}

/* groupTOP - Do you know ORIX? */
#doyouknow-top {
	background: rgb(235,171,162);
	background: -moz-linear-gradient(0deg, rgba(235,171,162,1) 0%, rgba(207,85,136,1) 100%);
	background: -webkit-linear-gradient(0deg, rgba(235,171,162,1) 0%, rgba(207,85,136,1) 100%);
	background: linear-gradient(0deg, rgba(235,171,162,1) 0%, rgba(207,85,136,1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#ebaba2",endColorstr="#cf5588",GradientType=1);
	padding: 6rem 0 2rem 0;
}
#doyouknow-top .row {
	max-width: 1024px;
	width: 100%;
	margin: 0 auto;
	padding: 0 5px;
}
#doyouknow-top ul {
	width: 100%;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
}
.douyouknow-list-wrap ul li{
	max-width: 300px;
	width: 100%;
	line-height: 1.3;
	position: relative;
	margin-top: 40px;
}
.douyouknow-list-wrap.doyouknow-top_top ul li:first-child{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
}
.douyouknow-list-wrap .doyouknow-top_logo{
	width: 100%;
	position: relative;
}
.douyouknow-list-wrap .doyouknow-top_logo img{
	max-width: 94%;
	height: auto;
}
.douyouknow-list-wrap .doyouknow-top_logo span{
	display: block;
	width: 100%;
	color: #fff;
	font-size: 14px;
	margin-top: 32px;
	line-height: 1.9;
}
.douyouknow-list-wrap .doyouknow-top_img{
	height: 186px;
	overflow: hidden;
}
.douyouknow-list-wrap .doyouknow-top_img img{
	width: 100%;
	height: auto;
}
.douyouknow-list-wrap .doyouknow-top_txt{
	color: #666;
	font-size: 1.5rem;
	font-weight: bold;
}
.douyouknow-list-wrap a{
	display: block;
	width: 100%;
	height: 100%;
	text-decoration: none;
}
.douyouknow-list-wrap ul li{
	position: relative;
}
.douyouknow-list-wrap ul li:not(:last-child){
	margin-bottom: 0;
}





/*.douyouknow-list-wrap ul li:before{*/
/*content: '';*/
/*display: block;*/
/*width: 0;*/
/*height: 2px;*/
/*background: transparent;*/
/*position: absolute;*/
/*top: 0;*/
/*left: 0;*/
/*z-index: 2;*/
/*-webkit-transition: width 0.2s ease-in-out;*/
/*-ms-transition: width 0.2s ease-in-out;*/
/*transition: width 0.2s ease-in-out;*/
/*}*/
/*.douyouknow-list-wrap ul li:after{
	content: '';
	display: block;
	width: 2px;
	height: 0;
	background: transparent;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	-webkit-transition: height 0.2s ease-in-out;
	-ms-transition: height 0.2s ease-in-out;
	transition: height 0.2s ease-in-out;
}*/
/*.douyouknow-list-wrap ul li a:before{
	 content: '';
	 display: block;
	 width: 0;
	 height: 2px;
	 background: transparent;
	 position: absolute;
	 right: 0;
	 bottom: 0;
	 z-index: 2;
	 -webkit-transition: width 0.2s ease-in-out;
	 -ms-transition: width 0.2s ease-in-out;
	 transition: width 0.2s ease-in-out;
 }*/
/*.douyouknow-list-wrap ul li a:after{
	content: '';
	display: block;
	width: 2px;
	height: 0;
	background: transparent;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 2;
	-webkit-transition: height 0.2s ease-in-out;
	-ms-transition: height 0.2s ease-in-out;
	transition: height 0.2s ease-in-out;
}*/







.douyouknow-list-wrap ul li a img{
	transform: scale(1);
	-webkit-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}
.douyouknow-list-wrap ul li a:hover img{
	transform: scale(1.2);
	-webkit-transition: 0.2s ease-in-out;
	-ms-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}


.douyouknow-list-wrap .title-wrap{
	position: relative;
	display: block;
	width: 90%;
	background: #fff;
	padding: 30px 12px 16px;
	margin: -50px auto 0;
}

.doyouknow-top_cate {
	background: #db2244;
	color: #fff;
	font-size: 1.4rem;
	padding: 1px 10px;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 99;
}
.douyouknow-list-wrap .title-wrap:before{
	content: '';
	display: block;
	width: 0;
	height: 3px;
	background: transparent;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	-webkit-transition: width 0.2s ease-in-out;
	-ms-transition: width 0.2s ease-in-out;
	transition: width 0.2s ease-in-out;
}
.douyouknow-list-wrap .title-wrap:after{
	content: '';
	display: block;
	width: 3px;
	height: 0;
	background: transparent;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
	-webkit-transition: height 0.2s ease-in-out;
	-ms-transition: height 0.2s ease-in-out;
	transition: height 0.2s ease-in-out;
}

.doyouknow-top_txt:before{
	content: '';
	display: block;
	width: 0;
	height: 3px;
	background: transparent;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 2;
	-webkit-transition: width 0.2s ease-in-out;
	-ms-transition: width 0.2s ease-in-out;
	transition: width 0.2s ease-in-out;
}

.doyouknow-top_txt:after{
	content: '';
	display: block;
	width: 3px;
	height: 0;
	background: transparent;
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 2;
	-webkit-transition: height 0.2s ease-in-out;
	-ms-transition: height 0.2s ease-in-out;
	transition: height 0.2s ease-in-out;
}


.douyouknow-list-wrap ul li.border .title-wrap:before{
	width: 100%;
}
.douyouknow-list-wrap ul li.border .title-wrap:after{
	height: 100%;
}
.douyouknow-list-wrap ul li.border .doyouknow-top_txt:before{
	width: 100%;
}
.douyouknow-list-wrap ul li.border .doyouknow-top_txt:after{
	height: 100%;
}



.douyouknow-list-wrap ul li.category-tech-wrap .title-wrap:before{
	background: #82b441;
}
.douyouknow-list-wrap ul li.category-tech-wrap .title-wrap:after{
	background: #82b441;
}
.douyouknow-list-wrap ul li.category-tech-wrap .doyouknow-top_txt:before{
	background: #82b441;
}
.douyouknow-list-wrap ul li.category-tech-wrap .doyouknow-top_txt:after{
	background: #82b441;
}


.douyouknow-list-wrap ul li.category-business-wrap .title-wrap:before{
	background: #6e5faa;
}
.douyouknow-list-wrap ul li.category-business-wrap .title-wrap:after{
	background: #6e5faa;
}
.douyouknow-list-wrap ul li.category-business-wrap .doyouknow-top_txt:before{
	background: #6e5faa;
}
.douyouknow-list-wrap ul li.category-business-wrap .doyouknow-top_txt:after{
	background: #6e5faa;
}


.douyouknow-list-wrap ul li.category-life-wrap .title-wrap:before{
	background: #e6a500;
}
.douyouknow-list-wrap ul li.category-life-wrap .title-wrap:after{
	background: #e6a500;
}
.douyouknow-list-wrap ul li.category-life-wrap .doyouknow-top_txt:before{
	background: #e6a500;
}
.douyouknow-list-wrap ul li.category-life-wrap .doyouknow-top_txt:after{
	background: #e6a500;
}


.douyouknow-list-wrap ul li.category-orix-wrap .title-wrap:before{
	background: #999;
}
.douyouknow-list-wrap ul li.category-orix-wrap .title-wrap:after{
	background: #999;
}
.douyouknow-list-wrap ul li.category-orix-wrap .doyouknow-top_txt:before{
	background: #999;
}
.douyouknow-list-wrap ul li.category-orix-wrap .doyouknow-top_txt:after{
	background: #999;
}

.doyouknow-top_cate.life{
	background: #e6a500;
}
.doyouknow-top_cate.business{
	background: #6e5faa;
}
.doyouknow-top_cate.orix{
	background: #999999;
}
.doyouknow-top_cate.tech{
	background: #82b441;
}
.doyouknow-top_under .js-load {
	display:none;
}
.doyouknow-top_under .js-load.active {
	display:block;
}

#doyouknow-top .buttonBlock.oval > a{
	color: #666666;
	border: 1px solid #666666;
	border-radius: 0;
	padding: 14px 10px;
	background: transparent;
}
#doyouknow-top .buttonBlock.oval > a span{
	padding: 0;
}

.doyouknow-btn {
	display: none;
}

@media screen and (max-width: 640px) {
	#doyouknow-top {
		padding: 2rem 0;
	}
	#doyouknow-top .row {
		width: 94%;
		margin: auto;
	}
	.doyouknow-top_logo {
		float: none;
		width: 200px;
		display: block;
	}
	.doyouknow-top_top ul {
		width: 100%;
		margin: 0;
	}
	.doyouknow-top_top ul li.doyouknow-pickup {
		width: 100%;
	}
	.doyouknow-top_top ul,
	.doyouknow-top_under ul{
		display: block;
	}
	.doyouknow-top_top ul li,
	.doyouknow-top_under ul li{
		width: 100%;
		margin-bottom: 2rem;
	}
	.douyouknow-list-wrap ul li{
		max-width: 100%;
	}
	.douyouknow-list-wrap ul li:before{
		display: none;
	}
	.douyouknow-list-wrap ul li:after{
		display: none;
	}
	.douyouknow-list-wrap ul li a:before{
		display: none;
	}
	.douyouknow-list-wrap ul li a:after{
		display: none;
	}
	.doyouknow-top_top img,
	.doyouknow-top_under img{
		width: 100%;
		height: 90%;
	}
	.doyouknow-top_under ul li:nth-child(4),
	.doyouknow-top_under ul li:nth-child(5),
	.doyouknow-top_under ul li:nth-child(6){
		margin-bottom: 2rem;
	}
	.douyouknow-list-wrap .doyouknow-top_logo{
		text-align: center;
		top: 0;
	}

	.douyouknow-list-wrap .doyouknow-top_logo img{
		width: 70%;
	}
	.douyouknow-list-wrap .doyouknow-top_logo span{
		margin-top: 24px;
	}
}

/* not found */
.notfoundBlock {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.notfoundBlock .inner {
	border: 1px solid #f0f0f0;
	padding: 20px;
	width: 49%;
}

@media screen and (max-width: 640px) {
	.notfoundBlock .inner {
		width: 100%;
		margin-bottom: 20px;
	}
}

/* PSC追加 */

/* 5: Abtest ADD
============================================================================= */

/* grp_company_about ページ中段「事業紹介動画ポップアップ表示」動画追加 20190513
----------------------------------------------------------------------------- */
h1, main>article>p.bg {
  font-size : 3.2rem;
  font-weight : 500;
  line-height : 1.5;
  margin-bottom : 0px;
}
.accoBlock .cmList {
  margin : 0px;
  list-style-type : none;
  list-style-position : initial;
  list-style-image : initial;
  outline : none !important;
}
.accoBlock>dl {
  border-bottom : none !important;
}
.accoBlock .cmList div, .accoBlock .cmList div a, .accoBlock .cmList div figure {
  outline : none !important;
}
.accoBlock .cmList li {
  float : left;
  margin : 0px 0px 2.5em 40px;
  width : 100% !important;
  outline : none !important;
}
.accoBlock .cmList li figcaption {
  margin : 0px auto;
  font-weight : 500;
  font-size : 24px;
}
.accoBlock .cmList li .tmb {
  position : relative;
  display : block;
  width : 100% !important;
  height : 100% !important;
}
.accoBlock .cmList li .tmb img {
  width : 100% !important;
  height : 100% !important;
}
ul.cmList {
  text-align : center;
}
br.figcap_br {display : none;}

@media screen and (max-width: 640px) {
  main article .side {width : 100%; margin : 0px auto !important;}
  #sec_side_sp {position: relative; left: 0px;}
  .accoBlock .cmList li figcaption {font-size : 20px !important;}
  ul.cmList {padding : 0px 10px;}
  #play_sp {margin: 0 0 0 -25px !important;}
  br.figcap_br {display : inline;}
}