@charset "utf-8";

/* ============================================================================================== */
/* common About                                                                                   */
/* ============================================================================================== */

.child-section__txt {
	text-align: justify;
}

.child-section__txt-wrap.ja__txt {
	padding-bottom: 35px;
	margin-bottom: 35px;
	line-height: 2;
	position: relative;
}

.child-section__txt-wrap.ja__txt:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	background-color: rgba(51,51,51,0.1);
	width: 200px;
	height: 1px;
}

/*  Key visual */

#philosophy .kv-inner__ttl,
#message .kv-inner__ttl {
	float: right;
}

/* philosophy */

.child-section__kv {
	margin-bottom: 50px;
	position: relative;
}

#philosophy .child-section__kv-txt {
	bottom: -14px;
}

#philosophy .child-section__lede {
	margin-bottom: 25px;
}

/* Mission */

.sub-contents__list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.sub-contents__item {
	border: 1px solid rgba(51,51,51,0.1);
	padding: 22px 20px 20px;
	margin-bottom: 20px;
	width: 100%;
	box-sizing: border-box;
}

.sub-contents-mission .translation--en {
	line-height: 1.6;
}

/*.sub-contents-box,
.sub-contents-box .translation--en {
	text-align: center;
}*/

.sub-contents-num.en {
	font-size: 2.1rem;
	text-align: left;
	line-height: 1;
	margin: 0 auto 18px;
}

.sub-contents__txt.ja__txt {
	font-weight: 600;
	margin: 0 auto 15px;
	line-height: 1.6;
}

.child-section__sub-contents {
	clear: both;
}

/* Message */

#message {
	max-width: 1000px;
}

#message .child-section__kv-img .ofi {
	object-position: -3em center;
}

#message .child-section__kv {
	margin-bottom: 100px;
}

#message .child-section__kv-txt {
	top: -6px;
	bottom: auto;
}

#message .child-section__kv-txt.ceo-lede-comment {
	top: auto;
	bottom: -5em;
}

.ceo-lede-comment .child-section__lede {
	margin-bottom: 0;
}

.ceo-lede-comment p {
	margin: 0 auto;
	line-height: 1.3;
}

.lede-message {
	line-height: 1.1;
}

.ceo-lede-comment p small .lede-message {
	padding-top: 8px;
}

#message .col2--left {
	margin-bottom: 50px;
}

#message .ceo-profile {
	padding: 25px;
	border: 1px solid rgba(51,51,51,0.1);
	margin: 0 auto;
}

#message .ceo-profile .child-section__txt {
	line-height: 1.6;
	font-size: 1.3rem;
	margin-bottom: 5px;
}

#message .ceo-profile .child-section__txt:last-child {
	margin-bottom: 0;
}

#message .ceo-profile .child-section__txt-wrap:after {
	display: none;
}
#message .ceo-profile .child-section__txt p {
	margin-bottom: 5px;
}

#message .author-name {
	text-align: right;
	padding-top: 10px;
	line-height: 1.6;
}

#message .ceo-profile .child-section__txt-wrap {
	padding-bottom: 0;
	margin-bottom: 0;
}

#message .ceo-profile .child-section__txt-wrap dl {
	margin: 0;
}

#message .ceo-profile .child-section__txt-wrap dt.en {
	margin-bottom: 8px
}

#message .ceo-name .en {
	font-size: 0.8em
}

/* Outline */

#outline .child-section__contents {
	line-height: 1.6;
}

#outline .ttl {
	margin-bottom: 30px;
}

#outline .child__txt-wrap {
	margin-bottom: 80px;
	border-top: 1px solid #000;
}

#outline .child__txt-wrap.translation--en {
	margin-bottom: 0;
}

.section-outline .child-section__kv-txt {
	position: static !important;
}

#outline dl.child-section__txt {
	padding: 15px 0;
	margin: 0;
	border-bottom: 1px solid rgba(51,51,51,0.1);
}

#outline dl.child-section__txt:last-child {
	border-bottom: 0;
	padding-bottom: 0;
}

#outline dl.child-section__txt dt {
	font-weight: 600;
	color: #000;
	margin-bottom: 8px;
}

#outline dl.child-section__txt dd {
	font-size: 0.95em;
}

/* 所在地欄 only */
.office-address-wrap dt {
	margin-bottom: 15px;
}
/* ----- */

.child-section__txt dd,
.office-access {
	font-weight: 400;
	color: #333;
}

.office-list__item {
	margin-bottom: 40px;
}

.office-name {
	font-size: 1.5rem;
	color: #333;
	line-height: 1.85;
}

.office-address {
	margin-bottom: 15px;
	text-align: left;
}

.office-access__ttl {
	margin-bottom: 4px;
	font-size: 1.3rem;
	font-weight: 600;
	color: #333;
}

#outline .access-detail {
	position: relative;
	padding-left: 15px;
}

#outline .access-detail:before {
	/*content: " - ";
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	color: #333333;
	font-size: 1.4rem;*/
	content: "";
	position: absolute;
	top: 12px;
	left: 0px;
	margin: auto;
	background-color: #ccc;
	width: 8px;
	height: 1px;
}

/* Outline google map link */

.map__link {
	padding-right: 16px;
	position: relative;
	display: inline-block;
	line-height: 1;
}

.map__link:after {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	background-image: url(../images/about/img-map_link.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: cover;
	width: 12px;
	height: 16px;
}

/*.map__link {
	text-decoration: underline;
}

.map__link span {
	padding-right: 16px;
	position: relative;
	display: inline-block;
	line-height: 1;
}

.map__link span:after {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	bottom: 0;
	background-image: url(../images/about/img-map_link.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: cover;
	width: 12px;
	height: 16px;
}*/

/* Outline Office map */

#outline .access__list {
	margin-bottom: 20px;
}

.office__map {
	background-color: #CCC;
	width: 100%;
	height: 15em;
}

/* list style disc */

.list-style--disc {
	padding-left: 12px;
}

/* ============================================================================================== */
/* Media query                                                                                    */
/* ============================================================================================== */

/* ----------------------------------------------------------------------- */
/* SmartPhone */

@media screen and (min-width: 375px) {

	/* philosophy */

	#philosophy .child-section__lede {
		line-height: 1.85;
	}

	#philosophy .child-section__kv-txt {
		bottom: -18px;
	}

	/* message */

	#message .child-section__kv-txt.ceo-lede-comment {
		bottom: -4em;
	}

	#message .child-section__kv {
		margin-bottom: 90px;
	}

	#message .child-section__kv-txt {
		top: -10px;
		bottom: auto;
	}

	#message .author-name .ib {
		display: inline;
	}

	.office-name {
		font-size: 1.6rem;
	}

}

/* ---------------------------------------------------------------------------------------------- */
/* Tablet                                                                                         */

@media screen and (min-width: 541px) {

	/* philosophy */

	#philosophy .child-section__kv-txt {
		/*bottom: -3px;*/
		bottom: -24px;
	}

	.sub-contents-box,
	.sub-contents-box .translation--en  {
		text-align: left;
	}

	.sub-contents__txt.ja__txt .ib {
		display: inline;
	}

	.sub-contents-num.en {
		text-align: left;
	}


	/* #message */

	#message .child-section__kv {
		margin-bottom: 120px;
	}

	#message .child-section__kv-txt {
		/*top: -34px;*/
		top: -46px;
	}

	.lede1{
		padding-right: 0;
	}

	.lede2 {
		padding-left: 0;
	}

}

@media screen and (min-width: 768px) {

	/* philosophy */

	#philosophy .child-section__kv-txt {
		bottom: -24px;
	}

	#philosophy .child-section__lede {
		margin-bottom: 25px;
	}

	.child-section__kv {
		margin-bottom: 70px;
	}

	#philosophy .child__txt {
		float: left;
	}

	.child-section__contents {
		max-width: 1000px;
	}

	.child-section__txt-wrap.ja__txt {
		padding-bottom: 50px;
		margin-bottom: 50px;
	}

	/* Mission */

	.sub-contents__item {
		width: calc(33.333% - 15px);
		margin-bottom: 0;
	}

	/* Message */

	#message .child-section__kv-img figure {
		height: 42vh;
	}

	#message .child-section__kv-txt {
		top: -23px;
	}

	#message .ceo-name {
		font-size: 2.0rem;
	}

	#message .ceo-name .en {
		font-size: 0.7em
	}

	/* Outline */

	.office-list__item {
		margin-bottom: 60px;
	}

	.office-name {
		font-size: 1.8rem;
		margin-bottom: 15px;
	}

	/* Outline Office map */

	.office__map {
		height: 20em;
	}

}

/* ----------------------------------------------------------------------- */
/* over ipad landscape */

@media screen and (min-width: 1024px) {

	/*  Key visual */

	.child-section__kv {
		margin: 0 auto 110px;
	}

	/*.child-section__kv-txt {
		right: 2.5em;
	}*/

	/* Philosophy */

	#philosophy .child-section__kv-txt {
		bottom: -34px;
		/*bottom: -13px;*/
	}

	/* Mission */

	.sub-contents__item {
		padding: 35px;
		width: calc(33.333% - 20px);
	}

	.sub-contents .en {
		margin-bottom: 45px;
	}

	.sub-contents-num.en {
		margin: 0 auto 40px;
		line-height: 1;
	}

	/* Message */

	#message .child-section__contents {
		display: flex;
	}

	#message .child-section__kv-img figure {
		height: auto;
	}

	#message .child-section__kv-img .ofi {
		object-position: 0 0;
	}

	#message .child-section__kv-txt {
		top: -37px;
	}

	#message .child-section__kv-txt.ceo-lede-comment {
		bottom: -3em;
	}

	.ceo-name {
		font-size: 2.5rem;
	}

	.ceo-lede-comment small {
		font-size: 1.3rem;
	}

	#message .col2--left {
		min-width: 600px;
		margin-right: 100px;
		margin-bottom: 0;
	}

	#message .ceo-profile {
		padding: 0;
		border: none;
		max-width: 700px;
	}

	/* Outline */

	#outline .flex-wrap {
		display: flex;
		justify-content: space-between;
		max-width: 1000px;
	}

	#outline .ttl {
		margin: -0.8em 70px 0 0;
	}

	#outline .child__txt-wrap {
		margin: 0 0 120px auto;
		max-width: 700px;
	}

	.office-list__item:last-child {
		margin-bottom: 30px;
	}

	#outline dl.child-section__txt {
		padding: 30px 0;
		display: flex;
		align-items: flex-start;
	}

	#outline dl.child-section__txt dt {
		width: 180px;
		margin-bottom: 0;
	}

	#outline dl.child-section__txt dd {
		width: calc(100% - 180px);
	}

	.office-access__ttl {
		font-size: 1.4rem;
	}

	/* Outline Office map */

	#outline .access__list {
		margin-bottom: 28px;
	}

	.office__map {
		height: 300px;
	}

}

/* ----------------------------------------------------------------------- */
/* Desktop */

@media screen and (min-width: 1281px) {

	/* Mission */

	.sub-contents__item {
		width: calc(33.333% - 33.333px);
	}

	/* Message */

	#message .child-section__kv-txt {
		top: -34px;
		right: -12em;
	}

	#message .child-section__kv-txt.ceo-lede-comment {
		bottom: 4em;
		right: 8.5em;
		left: auto;
	}

	/*#message .ceo-lede-comment-block {
		float: right;
	}*/

	/* Outline */

	#outline dl.child-section__txt {
		font-size: 1.5rem;
	}

	#outline dl.child-section__txt dt {
		width: 200px;
	}

	#outline dl.child-section__txt dd {
		width: calc(100% - 200px);
	}

	.office-access__ttl {
		font-size: 1.5rem;
	}

}

@media screen and (min-width: 1440px) {

}





