@charset "UTF-8";
/* ===========================================================

	Title: top.css
	Created: 2020-3-13
	TOP専用スタイル

=========================================================== */
/*
	Common
	General
		banner
	
=========================================================== */



/* ===========================================================

	General

=========================================================== */

/* -----------------------------------------------------------
	Jumbotron
----------------------------------------------------------- */
.jumbotron,
.jumbotron-slick__cell {
	display: block; padding: 0; margin: 0;
	width: 100%; height: 50vh; min-height: 400px; position: relative;
  overflow: hidden;
}
.jumbotron-slick__cell {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.jumbotron-slick {
	display: block; padding: 0; margin: auto;
	width: 100%; height: 100%;
	position: absolute; top: 0; left: 0; bottom: 0; right: 0;
}

.jumbotron h1 span{
	text-align: center;
}
.jumbotron h1 img{
	width: 100%;
}


@media print, screen and (min-width: 768px) {
	.jumbotron,
	.jumbotron-slick__cell { height: 60vh; min-height: 590px; }
}

.jumbotron h1 {
	display: flex; padding: 0; margin: auto;
	width: 100%; height: 100%;
	position: absolute; top: 0; left: 0; bottom: 0; right: 0;
	background-color: rgba(16,29,50,0.10);
	justify-content: center; align-items: center;
}
.jumbotron h1 span {
	display: block; padding: 15px; margin: 0;
}

/* -----------------------------------------------------------
	summary data
----------------------------------------------------------- */


.function-title {
	display: flex; padding: 0; margin: 0 0 2.0em 0;
	flex-direction: column;
	position: relative;
}
.function-title--white { color: #fff; }
.function-title__title {
	display: block; padding: 0; margin: 0 0 1.0em 0;
	text-align: center;
}
.function-title__title span {
	display: block; padding: 0;
}
.function-title__title--en {
	margin: 0;
	font-family: 'Source Serif Pro', serif;
	font-size: 2.8rem;
	color: rgba(9,45,100,1.00);
}
.function-title--white .function-title__title--en { color: #fff; }
.function-title__title--ja {
	font-size: 1.2rem;
	margin: 0.5em 1.0em;
}

.function-title__links {
	display: flex; padding: 0; margin: 0;
	font-size: 1.4rem; justify-content: center;
	flex-direction: column;
}
.function-title__links li {
	display: block; padding: 5px 0; margin: 0;
}
.function-title__links a {
	display: block; padding: 0 1.0em; margin: 0;
	line-height: 40px; text-align: center;
	border: solid 1px rgba(9,45,100,1.00);
	color: rgba(9,45,100,1.00);
}
.function-title--white .function-title__links a {
	border: solid 1px #fff; color: #fff;
}
.function-title__links a::after {
	display: inline-block; padding: 0 0 0 0.5em; margin: 0; content: "\f105";
	font-family: FontAwesome;
}
.function-title__links-rss a { font-family: 'Source Serif Pro', serif; }
.function-title__links-rss a::after { content: "\f09e"; }
.function-title__links a:hover {
	background-color: rgba(9,45,100,1.00);
	color: #fff;
}
.function-title--white .function-title__links a:hover {
	background-color: #fff;
	color: rgba(9,45,100,1.00);
}

@media print, screen and (min-width: 576px) {
	.function-title__links { flex-direction: row; justify-content: center; margin: 0 -10px; }
	.function-title__links li { padding: 0 10px; }
}
@media print, screen and (min-width: 768px) { }
@media print, screen and (min-width: 992px) {
	.function-title { flex-direction: row; justify-content: space-between; }
	.function-title__title { text-align: left; margin: 0; }
	.function-title__title span { display: inline-block; padding: 0; }
	
	.function-title__title--en { font-size: 3.6rem; line-height: 40px; }
	.function-title__title--ja { font-size: 1.4rem; line-height: 40px; }
	
	.function-title__links { justify-content: flex-start; }
	.function-title__links a { min-width: 190px; }
	.function-title__links-rss a { min-width: 80px; }
}
@media print, screen and (min-width: 1200px) { }








/* ===========================================================

	data-report

=========================================================== */
.data-report {
	display: block; padding: 20px 15px; margin: 0;
	color: rgba(255,255,255,1.00);
	background-color: rgba(33,59,100,1.00);
	background-image: url(../img/common/bg-texture.jpg);
	background-repeat: repeat;
	background-position: center center;
	background-attachment: fixed;
}

.data-report a { color: #fff; }
.data-report a:hover { color: rgba(215,9,47,1.00); }

.data-report__inner {
	display: block; padding: 0; margin: 0 auto;
	width: 100%; max-width: 1200px;
}


.data-report-row {
	display: flex; padding: 0; margin: 0 -15px;
	justify-content: center;
	flex-direction: column;
}
.data-report-row__cell {
	display: block; padding: 15px; margin: 0 auto;
	width: 100%; position: relative;
}

@media print, screen and (min-width: 992px) {
	.data-report-row {
		flex-direction: row;
	}
}

.data-report-box {
	display: flex; padding: 30px 6vw; margin: 0 auto;
	background-color: rgba(0,0,0,0.60);
	box-shadow: 0px 0px 40px 0px rgba(255, 255, 255, 0.2);
	width: 100%; height: 100%; max-width: 500px; position: relative;
	flex-direction: row; flex-wrap: wrap; align-content: space-between;
}
.data-report-box__title,
.data-report-box__body,
.data-report-box__footer {
	display: block; padding: 0; margin: 0 auto; width: 100%; max-width: 400px;
}

.data-report-box__title { text-align: center; }
.data-report-box__title span {
	display: block; padding: 0; margin: 0;
}
.data-report-box__title::after {
	display: block; padding: 0; margin: 10px auto 5px auto;
	width: 100px; height: 1px;
	background-color: rgba(215,9,47,1.00); content: "";
}
@media print, screen and (min-width: 576px) {
}
@media print, screen and (min-width: 768px) {
	.data-report-box { padding: 30px; }
}
@media print, screen and (min-width: 992px) {
	.data-report-box { padding: 30px 20px; }
}
@media print, screen and (min-width: 1200px) {
	.data-report-box { padding: 40px; }
}

.data-report-box__title .data-report-box__title--en {
	padding: 0 0 10px 0;
	font-family: 'Source Serif Pro', serif;
	font-size: 2.8rem; line-height: 1.2;
}
.data-report-box__title .data-report-box__title--ja {
	padding: 0;
	font-size: 1.2rem; line-height: 1.2;
}
@media print, screen and (min-width: 768px) {
	.data-report-box__title .data-report-box__title--en {
		font-size: 3.6rem;
	}
	.data-report-box__title .data-report-box__title--ja {
		font-size: 1.4rem;
	}
}


.summary-data__confirm {
	display: block; padding: 0; margin: 0;
}
.summary-data__payment-date {
	display: block; padding: 10px 0; margin: 0;
	font-size: 1.4rem; line-height: 1.2;
	text-align: right;
}

.summary-data__cell {
	display: table; padding: 0; margin: 0;
	width: 100%;
}
.summary-data__cell dt,
.summary-data__cell dd {
	display: table-cell; padding: 1.0em 0 0.5em 0; margin: 0;
	vertical-align: middle;
	border-bottom: solid 1px #fff;
}

.summary-data__cell:first-child dt,
.summary-data__cell:first-child dd { border-top: none; padding: 0.5em 0; }

.summary-data__cell dt { font-size: 1.0em; line-height: 1.2; }
.summary-data__cell dd { white-space: nowrap; text-align: right; }


.summary-data__title {
	display: inline-block; padding: 0; margin: 0;
}
.summary-data__date {
	display: block; padding: 0; margin: 0;
	font-size: 1.1rem; line-height: 1.2;
}
.summary-data__title { margin: 0 1.0em 0 0; font-size: 1.4rem; }
.is_en .summary-data__title { font-size: 1.2rem; }
.summary-data__date-now {
	display: block; padding: 0; margin: 0;
	font-size: 1.1rem; line-height: 1.2;
}

@media print, screen and (min-width: 992px) {
	.summary-data__cell dt,
	.summary-data__cell dd { vertical-align: middle; padding: 1.1em 0 0.4em 0; }
	.summary-data__title,
	.summary-data__date-now { display: block; }
	.summary-data__title { font-size: 1.0em; }
	.is_en .summary-data__title { font-size: 1.4rem; }
	.summary-data__date-now { font-size: 1.2rem; }
	.summary-data__date { font-size: 1.2rem; }
}


.summary-data__number {
	display: inline-block; padding: 0.8rem 0 0 0; margin: 0;
	font-size: 3.2rem; line-height: 1.1;
	font-family: 'YuMincho','Yu Mincho','Source Serif Pro', serif;
	font-weight: 400;
}

.summary-data__confirm .summary-data__number {
	font-size: 4.0rem; padding: 0;
}
.summary-data__lot {
	display: inline-block; padding: 0; margin: 0;
	font-size: 1.1rem; line-height: 1.1;
	min-width: auto; text-align: left;
}

.summary-data__lot--block {
  display: block;
  text-align: right;
}


@media print, screen and (min-width: 992px) {
	.summary-data__lot { min-width: 3.0em; }
}
.summary-data__lot--one {
	min-width: auto;
}





/* file */
.file-report-box__body {
	display: block; width: 100%; margin: 0 0 1.0em 0;
}
.file-report-box__body > dl {
	display: block;
}

.file-report-box__body > dl > dt,
.file-report-box__body > dl > dd {
	display: table-cell; padding: 0.528em 0;
	border-bottom: solid 1px #fff; position: relative;
}
.file-report-box__body > dl > dt { }
.file-report-box__body > dl > dd {
	padding: 0.528em 0 0.528em 10px;
	width: 1%; white-space: nowrap;
	position: relative;
}

.summary-data__file a.data-file__btn {
	display:none; padding: 0.25em 0.5em;
	border: solid 1px #fff;
	border-radius: 2px; text-align: center;
	font-size: 1.1rem;
}
.summary-data__file a.data-file__btn:hover {
	background-color: #fff;
}

.correction {
	display: block; white-space: normal;
	position: absolute; top: 0; right: 0;
	background-color: #fff;
	z-index: 10;
	width: 260px;
}


.summary-data__file {
	display: block; padding: 2.0em 0 0 0; margin: 0;
	position: relative;
}
/*
.summary-data__file ul {
	display: block; padding: 0.5em 0 0 0; margin: 0;
}
.summary-data__file li {
	display: block; padding: 0.5em 0; margin: 0;
	font-size: 1.4rem;
	position: relative;
	border-bottom: solid 1px #fff;
}

*/
.summary-data__file a {
	display: block; padding: 0 0 0 4.0em; margin: 0;
	position: relative;
	z-index: 1;
}

.is_en .summary-data__file dt a {
	padding: 0 0 0 4.5em; 
}
.summary-data__file .file-icon {
	display: block;
	position: absolute; top: -0.25em; left: 0;
}
.summary-data__file .file-size { color: #fff; }
.summary-data__dl {
	display: block; padding: 0; margin: 1.0em 0 0 0;
	font-size: 1.2rem;
}
.summary-data__dl a {
	display: block; padding: 1.0em 1.0em; margin: 0 auto;
	text-align: center; border-radius: 4px;
	max-width: 200px; background-color: #fff;
	color: rgba(18, 46, 90,1.00);
}
.summary-data__dl a:hover {
	color: #fff; background-color: rgba(18, 46, 90,1.00);
}
.summary-data__dl span {
	display: block; padding: 0; margin: 0;
}
.summary-data__dl a::after {
	display: inline-block; padding: 0; margin: 0 0 0 0.5em;
	content: "\f019"; font-family: FontAwesome;
}









.summary-data__file .data-file__correction {
	display: block; padding: 0; margin: 0;
	position: absolute; top: 40px; left: 0;
	width: 100%;
	background-color: #fff;
	box-shadow: 0 0 10px rgba(0,0,0,0.25);
	border-radius: 6px; overflow: hidden;
	z-index: 10;
}
.summary-data__file p.correction-popup__title {
	display: block; padding: 0.5em 1.0em; margin: 0;
	border-bottom: solid 1px #ddd;
	
}

.summary-data__file .data-file__list {
	padding: 0 1.0em; margin: 0;
}
.summary-data__file .data-file__list.date-list > dl > dt {
	padding: 0.25em 1.0em;
}
.summary-data__file .data-file__list.date-list > dl > dd {
	padding: 0.25em 1.0em 0.25em 0;
}
.summary-data__file .data-file__list a {
	padding: 0; margin: 0;
}
.data-file__correction p:last-child {
	display: block; padding: 0.5em; margin: 0;
	text-align: center;
}
.data-file__correction p span.js-popup-close {
	display: block; padding: 0.25em 0.5em; margin: 0 auto;
	text-align: center; width: 6em; color: #fff;
	background-color: #131327; text-align: center;
	font-size: 0.857em; transition: all 0.5s;
	cursor: pointer; border-radius: 4px;
}
.data-file__correction p span.js-popup-close:hover {
	color: #fff; background-color: #285183;
}



.summary-data__caption {
	display: block; padding: 1.0em 0; margin: auto 0 0 0;
	font-size: 1.2rem; text-align: right;
	width: 100%; color: #666;
	line-height: 1.0em;
}





.data-report-box__footer {
	display: block; padding: 1.0em 0 0 0;
	text-align: center;
	font-size: 1.4rem;
}
.data-report-box__footer p {
	display: block; padding: 0; margin: 0;
}
.data-report-box__footer a {
	display: block; padding: 1.0em 1.0em; margin: 0 auto;
	max-width: 200px; border: solid 1px #fff;
}
.data-report-box__footer a:hover {
	background-color: #fff; color: rgba(33,59,100,1.00);
}
.data-report-box__footer a::after {
	display: inline-block; padding: 0; margin: 0 0 0 0.5em;
	content: "\f105"; font-family: FontAwesome;
}


/* ===========================================================

	portfolio

=========================================================== */

.top-portfolio {
	display: block; padding: 60px 15px; margin: 0;
	color: rgba(255,255,255,1.00);
	background-color: rgba(33,59,100,1.00);
	background-image: url(../img/common/bg-texture.jpg);
	background-repeat: repeat;
	background-position: center center;
	background-attachment: fixed;
}
.top-portfolio__inner {
	display: block; padding: 0; margin: 0 auto;
	width: 100%; max-width: 1200px;
}

.pickup-slick {
	display: block; padding: 0; margin: 0 auto;
	position: relative;
}
.slick-arrow {
	background-color: transparent;
	border: none; cursor: pointer;
	outline: none; appearance: none;
}
.slick-arrow {
	display: block; padding: 0; margin: 0;
	position: absolute; top: 120px; z-index: 50;
	width: 50px; height: 100px;
	background-color: rgba(33,59,100,1.00);
	background-image: url(../img/common/bg-texture.jpg);
	background-repeat: repeat;
	background-position: center center;
	background-attachment: fixed;
	overflow: hidden; text-indent: 100%;
}
.slick-arrow::before {
	display: block; padding: 0; margin: auto;
	position: absolute; top: 0; left: 0; bottom: 0; right: 0;
	width: 20px; height: 20px; transform: rotate(45deg);
	border: solid 1px #fff;
	content: "";
}
.slick-prev { left: -15px; }
.slick-arrow.slick-prev::before {
	margin-right: 5px;
	border-top: solid 1px transparent; border-right: solid 1px transparent;
}
.slick-next { right: -15px; }
.slick-arrow.slick-next::before {
	margin-left: 5px;
	border-bottom: solid 1px transparent; border-left: solid 1px transparent;
}


.pickup-slick__cell {
	display: block; padding: 15px; margin: 0 auto;
}

.pickup-slick-box {
	display: block; padding: 0; margin: 0 auto; max-width: 260px;
}
.pickup-slick-box a {
	display: block; padding: 0; margin: 0 auto;
}
.pickup-slick-box__photo {
	display: block; padding: 0; margin: 0 auto 20px auto;
	width: 100%; height: 300px; vertical-align: bottom;
	box-shadow: 0px 0px 15px 0px rgba(255, 255, 255, 0.4);
}
.pickup-slick-box__photo {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}



.pickup-slick-box__title {
	display: flex; margin: 0 -5px; padding: 0;
	font-size: 1.2rem; line-height: 1.2;
}
.pickup-slick-box__title-cell {
	display: block; margin: 0; padding: 0 5px;
}

.pickup-slick-box__cat {
	display: block; margin: 0; padding: 0.25em;
	text-align: center;
	font-family: 'Source Serif Pro', serif;
	font-size: 1.4rem;
	width: 3.5em; color: #fff;
}
.pickup-slick-box__cat--office,
.pickup-slick-box__cat--1 { background-color: #3976a4; }
.pickup-slick-box__cat--residence,
.pickup-slick-box__cat--2 { background-color: #668056; }
.pickup-slick-box__cat--hotel,
.pickup-slick-box__cat--3 { background-color: #786D40; }

.pickup-slick-box__name {
	display: block; margin: 0; padding: 0.25em;
	font-size: 1.2rem;
	width: 100%; color: #fff;
}




/* ===========================================================

	news

=========================================================== */

.top-news {
	display: block; padding: 50px 15px; margin: 0;
	background-color: #f1f1f1;
}
.top-news__inner {
	display: block; padding: 0; margin: 0 auto;
	width: 100%; max-width: 1200px;
}





/* ===========================================================

	banner

=========================================================== */

/* -----------------------------------------------------------
	banner-link
----------------------------------------------------------- */

.banner-link {
	display: block; padding: 10px 15px; margin: 0;
	width: 100%;
	background-color: #fff;
}
.banner-link__inner {
	display: block; padding: 0; margin: 0 auto;
	width: 100%; max-width: 1200px;
}
.banner-link ul {
	display: flex; padding: 0; margin: 0 -10px;
	justify-content: center;
	flex-direction: column;
}
.banner-link li {
	display: block; padding: 10px; margin: 0 auto;
	width: 100%;
	position: relative;
}
.banner-link a {
	padding: 0; margin: 0;
	background-color: #000;
	position: relative;
	display: flex;
	height: 200px;
	align-items: center;
}
.banner-link a {
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.banner-link a::before {
	display: block; padding: 0; margin: auto;
	position: absolute; top: 0; left: 0; bottom: 0; right: 0;
	width: 100%; height: 100%; content: "";
	background-color: rgba(18,46,90,0.40);
	z-index: 1;
}
.banner-link .banner-link--stock a {
	background-image: url(../img/common/banner-link-stock-bg.jpg);
}
.banner-link .banner-link--esgreport a {
	background-image: url(../img/common/banner-link-esgreport-bg.jpg);
}
.banner-link .banner-link--ir-mail a {
	background-image: url(../img/common/banner-link-ir_mail-bg.jpg);
}
.banner-link span {
	display: block; padding: 0 10px; margin: 0 auto;
	position: relative; z-index: 2;
	max-width: 320px; width: 100%; text-align: center;
}
.is_en .banner-link span {
	max-width: 340px;
}

.banner-link span img {
	max-width: 290px;
}
@media print, screen and (min-width: 768px) {
	.banner-link ul {
		flex-direction: row;
	}
	.banner-link li { margin: 0; }
	.banner-link span { padding: 0 10px; }
	.is_en .banner-link span { padding: 0 10px; }
}

.banner-link--ir-mail p {
	font-size: 14px;
	z-index: 9999;
	color: #fff;
	line-height: 1.4;
	letter-spacing: 0.01em;
	cursor: pointer;
}


/* -----------------------------------------------------------
	banner-site
----------------------------------------------------------- */

.banner-site {
	display: block; padding: 20px 15px; margin: 0;
	width: 100%;
	background-color: #fff;
}

.banner-site__inner {
	display: flex; padding: 0; margin: 0 auto;
	width: 100%; max-width: 1200px;
	justify-content: center;
	flex-direction: column;
}

.banner-site dl {
	display: block; padding: 10px; margin: 0 auto;
	max-width: 420px; width: 100%;
	font-size: 1.2rem; color: #333;
}
.banner-site dt { display: block; padding: 0 0 0.5em 0; margin: 0 auto; font-size: 15px; }
.banner-site dd { display: block; padding: 0; margin: 0 auto; }
.banner-site a {
	display: block; padding: 0; margin: 0;
	background-color: #fff; border: solid 1px #ddd;
}


@media print, screen and (min-width: 768px) {
	.banner-site__inner {
		flex-direction: row;
	}
	.banner-site dl { margin: 0; }
}


/* -----------------------------------------------------------
	relation
----------------------------------------------------------- */

.banner-relation {
	display: block; padding: 20px 15px; margin: 0;
	width: 100%;
	background-color: #f1f1f1;
}
.banner-relation ul {
	display: flex; padding: 0; margin: 0 auto;
	width: 100%; max-width: 1200px;
	justify-content: center;
	flex-direction: column;
}
.banner-relation li {
	display: block; padding: 10px; margin: 0 auto;
	max-width: 300px; width: 100%;
	text-align: center;
}
.banner-relation a {
	display: block; padding: 0; margin: 0;
}

@media print, screen and (min-width: 768px) {
	.banner-relation ul {
		flex-direction: row;
	}
	.banner-relation li { margin: 0; }
}


