@charset "utf-8";
/*------------------------------------------------------------
	index
------------------------------------------------------------*/
#gHeader .lanList {
	display: block;
}
#gHeader h1 {
	opacity: 0;
	visibility: hidden;
}
#main {
	padding-bottom: 0;
}
.videoBox {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
	overflow: hidden;
}
.videoBox.hide {
	opacity: 0;
}
.videoBox video {
	height: 100%;
	width: 100%;
	object-fit: cover;
}
#main .mainSec {
    text-align: center;
	position: relative;
	z-index: 1;
}
#main .mainSec::before {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background-color: #000;
	opacity: 0;
	transition: opacity 1.2s ease-out;
	content: '';
}
#main .mainSec.on::before {
	opacity: 0.5;
}
#main .mainSec .mainImg {
	height: 100vh;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	z-index: 2;
	overflow: hidden;
}
#main .mainSec .mainImg::before {
	width: 100%;
	height: 227px;
	position: absolute;
	left: 0;
	top: 0;
	background: url(../img/index/main_bg01.png) repeat-x left center / auto 100%;
	content: '';
}
#main .mainSec .mainImg .scroll {
	width: 20px;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
	opacity: 1;
	transition: opacity 1s ease 3s;
}
#main .mainSec .mainImg .scroll.none {
	opacity: 0;
	visibility: hidden;
}
#main .mainSec .mainImg .scroll a {
	height: 40px;
	position: relative;
	display: block;
	overflow: hidden;
}
#main .mainSec .mainImg .scroll a::before {
	width: 1px;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 0;
	background-color: #ddd;
	content: '';
	animation: scroll 2s cubic-bezier(1,0,0,1) 1s infinite;
	animation-fill-mode: both;
}
@-webkit-keyframes scroll {
	0% {
	 top:-100%;
	}
	50% {
        top: 0;
	}
	100% {
	 top:100%;
	}
}
@keyframes scroll {
	0% {
	 top:-100%;
	}
	50% {
        top: 0;
	}
	100% {
	 top:100%;
	}
}
#main .mainSec .logo a {
	display: inline-block;
	width: 348px;
}
#main .mainSec .title {
	margin: 60px 0 0;
	color: #fff;
	display: block;
	font-size: 2.4rem;
	font-weight: 500;
	font-family: 'Cormorant', serif;
	font-style: italic;
	text-align: center;
	letter-spacing: 0.07em;
}
#main .mainSec h2 {
	margin-bottom: 47px;
	color: #fff;
	font-size: 4rem;
	font-family: 'Cormorant', serif;
	font-weight: 300;
	letter-spacing: 0.07em;
}
#main .mainSec .about p {
	margin-bottom: 30px;
	color: #fff;
	font-weight: 500;
	line-height: 2.15;
	letter-spacing: 0.01em;
	font-size: 1.35rem;
}
#main .mainSec .about p span {
	position: relative;
	padding-left: 19px;
}
#main .mainSec .about p span::before {
	border-top: 1px solid;
	color: #BCBCBC;
	content: "";
	position: absolute;
	top: 57%;
	left: -4px;
	width: 18px;
}
#main .mainSec p.logo {
	width: 348px;
}
#main .mainSec .about {
	padding-bottom: 120px;
	position: relative;
	z-index: 2;
}
#main .historySec {
	padding: 200px 0 222px;
	overflow: hidden;
}
#main .historySec .topPho {
	float: right;
	width: 35.4%;
	position: relative;
	top: 75px;
}
#main .historySec .topPho img {
	width: 100%;
}
#main .historySec .inner {
	margin-bottom: 220px;
	clear: both;
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#main .historySec .inner .photoSec {
	position: relative;
	width: 47.6%;
	margin-top: -109px;
}
#main .historySec .inner .parallaxCon img {
    height: 100%;
    max-width: inherit;
}
#main .historySec .inner .photoSec h2 {
	position: absolute;
	right: -100px;
	top: 40px;
	color: #444;
	font-family: 'Cormorant', serif;
	font-size: 9rem;
	font-weight: 400;
	letter-spacing: 0.02em;
	z-index: 10;
}
#main .historySec .inner .textBox {
	width: 52.4%;
}
#main .historySec .inner .infoBox {
	max-width: 466px;
	padding-right: 30px;
	margin: 0 0 -10px 130px;
}
#main .historySec .inner .infoBox h3 {
	margin-bottom: 36px;
	font-size: 2.6rem;
	font-weight: 400;
	letter-spacing: 0.025em;
  line-height: 1.83;
}
#main .historySec .inner .infoBox p {
	margin-bottom: 28px;
	font-weight: 500;
	line-height: 1.87;
  letter-spacing: 0.015em;
	font-size: 1.35rem;
}
#main .historySec .inner .infoBox p:last-child {
	margin-bottom: 0;
}
#main .historySec .phoArea {
	max-width: 100%;
	padding: 0 40px;
	margin: 0 auto;
}
#main .historySec .phoArea .infoArea {
	max-width: 1300px;
	margin: 0 auto;
}
#main .historySec .phoArea .movieBox {
	position: relative;
	height: 0;
	padding-bottom: 61.5%;
	overflow: hidden;
}
#main .historySec .phoArea .movieBox video {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
#main .historySec .phoArea .phoImg {
	width: 45%;
	top: 0;
	position: relative;
	z-index: 10;
}
#main .detailSec {
	position: relative;
	z-index: 1;
	height: 300vh;
	display: flex;
	width: 100%;
}
#main .detailSec .stickBox {
	position: sticky;
	top: 0;
	height: 100vh;
	overflow: hidden;
}
#main .detailSec .infoDetail {
	height: 100vh;
	overflow-x: auto;
	overflow-y: hidden;
	display: flex;
	scrollbar-width: none;
}
#main .detailSec ::-webkit-scrollbar {
    width: 0 !important;
    display: none;
}
#main .detailSec .rightLink {
	position: absolute;
	right: 0;
	top: 50%;
	z-index: 10;
}
#main .detailSec .rightLink a {
	padding-right: 33px;
	display: inline-block;
	position: relative;
	color: #fff;
	font-size: 1.65rem;
	font-family: 'Cormorant', serif;
	font-weight: 500;
	letter-spacing: 0.04em;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
#main .detailSec .rightLink a:before {
	margin-top: 1px;
	position: absolute;
	right: 0;
	top: 48%;
	width: 22px;
	height: 1px;
	background: rgba(255,255,255,0.7);
	content: "";
}
#main .detailSec .linkList {
	position: absolute;
	left: 0;
	bottom: 37px;
	width: 100%;
	z-index: 10;
	text-align: center;
}
#main .detailSec .linkList li {
	padding: 0 21px;
	display: inline-block;
	vertical-align: top;
}
#main .detailSec .linkList li a {
	position: relative;
	color: #fff;
	font-family: 'Cormorant', serif;
	font-size: 1.5rem;
	font-weight: 400;
	letter-spacing: 0.05em;
}
#main .detailSec .linkList li a:before {
	position: absolute;
	left: 0;
	bottom: -2px;
	right: 0;
	height: 1px;
	background: rgba(255,255,255,0.7);
	content: "";
	opacity: 0;
	visibility: hidden;
	transition: .3s;
	-webkit-transition: .3s;
}
#main .detailSec .linkList li.on a:before {
	opacity: 1;
	visibility: visible;
}
#main .detailSec .sderSec {
	position: relative;
	height: 100vh;
	width: 100vw;
	flex-shrink: 0;
	display: flex;
	align-items: center;
	overflow: hidden;
}
#main .detailSec .bgBox {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	z-index: -1;
}
#main .sderSec01 .bgBox {
	background-image: url(../img/index/bg01.jpg);
}
#main .sderSec02 .bgBox {
	background-image: url(../img/index/bg02.jpg);
}
#main .sderSec03 .bgBox {
	background-image: url(../img/index/bg03.jpg);
}
#main .detailSec .sderSec .subInner {
	width: 1000px;
	padding: 0 30px;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#main .detailSec .sderSec .txtInner {
	align-items: flex-start;
}
#main .detailSec .sderSec .subInner .textArea03 {
	width: 620px;
}
#main .detailSec .h2Ttl {
	margin-bottom: 71px;
	display: flex;
	align-items: flex-end;
	color: #fff;
	position: relative;
	z-index: 2;
}
#main .detailSec .h201 img {
	width: 267px;
}
#main .detailSec .h202 img {
	width: 256px;
}
#main .detailSec .h203 img {
	width: 183px;
}
#main .detailSec .h203 {
	position: relative;
}
#main .detailSec .h203:before {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -60px;
	width: 253px;
	height: 145px;
	background: url("../img/index/shadow04.png") no-repeat left top;
	background-size: 253px auto;
	content: "";
	z-index: 1;
}
#main .detailSec .h2Ttl .en {
	padding-left: 20px;
	color: #fff;
	position: relative;
	font-size: 2.1rem;
	font-family: 'Cormorant', serif;
	font-weight: 400;
	letter-spacing: 0.05em;
	z-index: 2;
}
#main .detailSec .sderSec01 .h2Ttl .en {
	bottom: -8px;
}
#main .detailSec .sderSec03 .h2Ttl .en {
	bottom: -8px;
}
#main .detailSec .h2Ttl img {
    position: relative;
    z-index: 2;
}
#main .detailSec .h2Ttl01 {
	display: block;
}
#main .detailSec .h203 .en {
	padding-left: 30px;
}
#main .detailSec .textArea01 {
	position: relative;
}
#main .detailSec .textArea01:before {
	position: absolute;
	left: -30px;
	top: 0;
	width: 443px;
	height: 473px;
	background: url("../img/index/shadow01.png") no-repeat left center;
	background-size: cover;
	content: "";
	z-index: 1;
}
#main .detailSec .txtInner .textArea {
	width: 50%;
}
#main .detailSec .h3Ttl {
	margin-bottom: 30px;
	color: #fff;
	font-size: 3.7rem;
	font-family: 'Cormorant', serif;
	font-weight: 400;
	letter-spacing: 0.01em;
	line-height: 48px;
}
#main .detailSec .textArea .txt {
	margin-bottom: 35px;
	color: #fff;
	font-weight: 500;
	line-height: 2.07;
	letter-spacing: 0.03em;
}
#main .detailSec .sderSec03 .textArea .txt {
	letter-spacing: 0.02em;
}
#main .detailSec .textArea .more {
	position: relative;
	z-index: 1;
}
#main .detailSec .textArea .more a {
	width: 54px;
	height: 54px;
	color: #fff;
	font-family: 'Cormorant', serif;
	font-size: 1.6rem;
	font-weight: 500;
	letter-spacing: 0.03em;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	border: 1px solid #fff;
}
#main .detailSec .subInner {
	position: relative;
}
#main .detailSec .subInner .ulBox {
	position: absolute;
	right: 0;
	top: -40px;
}
#main .detailSec .subInner .ulBox li {
	opacity: 0;
	transition: all 2s;
}
#main .detailSec .subInner .ulBox.on li {
	opacity: 1;
}
#main .detailSec .subInner .ulBox.on li.delay01 {
	transition-delay: 0.15s;
}
#main .detailSec .subInner .ulBox.on li.delay02 {
	transition-delay: 0.3s;
}
#main .detailSec .subInner .ulBox.on li.delay03 {
	transition-delay: 0.45s;
}
#main .detailSec .subInner .ulBox.on li.delay04 {
	transition-delay: 0.6s;
}
#main .detailSec .subInner .ulBox.on li.delay05 {
	transition-delay: 0.75s;
}
#main .detailSec .subInner .imgList {
	justify-content: flex-end;
	margin-bottom: 13px;
}
#main .detailSec .subInner .imgList li {
	width: 180px;
	margin-left: 13px;
}
#main .detailSec .jsFadeTxt01,
#main .detailSec .jsFadeDelay {
	opacity: 0;
}
#main .detailSec .jsFadeTxt01.on,
#main .detailSec .jsFadeDelay.on {
	opacity: 1;
}
#main .detailSec .jsFadeTxt01 {
	transition: all 0.75s;
}
#main .journal {
	padding: 124px 0 155px;
}
#main .journal .title {
	margin-bottom: 50px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 1.8rem;
	text-align: center;
	letter-spacing: 0.04em;
}
#main .journal .slideBox {
	position: relative;
	overflow: hidden;
}
#main .journal .slideBox .prev {
	position: absolute;
	left: calc(50% - 900px);
	top: 0;
	width: 900px;
	height: 570px;
	z-index: 10;
	margin-left: -490px;
	transition: .2s;
	cursor: pointer;
}
#main .journal .slideBox .next {
	position: absolute;
	right: calc(50% - 900px);
	top: 0;
	width: 900px;
	height: 570px;
	margin-right: -490px;
	z-index: 10;
	transition: .2s;
	cursor: pointer;
}
#main .journal .slideBox .prev::after,
#main .journal .slideBox .next::after {
	width: 17px;
	height: 31px;
	position: absolute;
	right: 50px;
	top: 50%;
	transform: translateY(-50%);
	background: url(../img/common/arrow07.png) no-repeat center center / auto 100%;
	transition: .3s;
	content: '';
	opacity: 0;
}
#main .journal .slideBox .next::after {
	background-image: url(../img/common/arrow08.png);
	right: auto;
	left: 50px;
}
#main .journal .journalList {
	margin: 0 0 80px 0;
	position: relative;
	z-index: 1;
}
#main .journal .journalList .slick-slide > div {
	width: 900px;
	margin: 0 20px;
}
#main .journal .journalList li a {
	display: block;
	position: relative;
	height: 570px;
	color: #fff;
}
#main .journal .journalList li .photo {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	background-size: cover;
	background-position: center center;
	z-index: 1;
}
#main .journal .journalList li .txtBox {
	position: absolute;
	left: 0;
	padding: 0 63px 37px;
	width: 100%;
	bottom: 0;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	min-height: 346px;
	background: url("../img/index/shadow02.png") repeat-x left bottom;
	background-size: 900px auto;
	box-sizing: border-box;
	z-index: 2;
}
#main .journal .journalList li .ttl {
	margin-bottom: 11px;
	font-size: 2.55rem;
	font-family: 'Cormorant', serif;
	font-weight: 300;
	letter-spacing: 0.013em;
}
#main .journal .journalList li .txt {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.75;
	letter-spacing: 0.02em;
}
#main .journal .comLink {
	text-align: center;
}
#main .journal .comLink a {
	padding-bottom: 5px;
	color: #333;
	text-align: center;
	letter-spacing: 0.03em;
	width: 170px;
}
#main .journal .comLink a:before {
	background: rgba(51,51,51,0.7);
}
#main .journal .journalList .slick-dots {
	text-align: center;
	margin-top: 12px;
}
#main .journal .journalList .slick-dots li {
	margin: 0 10px;
	display: inline-block;
	width: 5px;
	height: 5px;
	border-radius: 100px;
	background-color: #C1C1C1;
}
#main .journal .journalList .slick-dots li button {
	display: none;
}
#main .journal .journalList .slick-dots li.slick-active {
	background-color: #000;
}
#main .initiatives {
	padding: 90px 0 210px;
	color: #fff;
	text-align: center;
	overflow: hidden;
	position: relative;
}
#main .initiatives .headLine01 {
	font-size: 3.3rem;
	font-weight: 400;
	font-family: 'Cormorant', serif;
	letter-spacing: 0.02em;
	margin-bottom: 54px;
}
#main .initiatives .parallaxBox{
	position: absolute;
	padding-bottom: 0;
	height: 100%;
	left: 0;
	top: 0;
}
#main .initiatives .parallaxCon {
	background: url("../img/index/initiatives_bg.jpg") no-repeat center center;
	background-size: cover;
}
#main .initiatives .content {
	position: relative;
}
#main .initiatives .content h3 {
	width: 415px;
	margin: 0 auto 36px;
}
#main .initiatives .txt {
	margin-bottom: 136px;
	line-height: 2.03;
	font-weight: 500;
	letter-spacing: 0.04em;
}
#main .initiatives .comLink a:after {
	position: absolute;
	left: -40px;
	top: -40px;
	width: 322px;
	height: 119px;
	background: url("../img/index/shadow03.png") no-repeat center center;
	background-size: cover;
	content: "";
	z-index: 1;
}
#main .initiatives .comLink .txtSpan {
	position: relative;
	z-index: 2;
}
@media all and (min-width: 1101px) and (max-width: 1500px) {
	#main .historySec .inner {
		align-items: flex-start;
	}
	#main .historySec .inner .infoBox {
		margin-left: 11%;
	}
	#main .historySec .inner .textBox {
		padding-top: 9%;
	}
}
@media all and (min-width: 768px) and (max-width: 1200px) {
	#main .detailSec .sderSec .subInner {
		margin-left: 60px;
	}
	#main .detailSec .sderSec.sderSec03 .subInner {
		margin-right: 40px;
	}
	#main .detailSec .txtInner .textArea{
		width: 60%;
	}
}
@media all and (min-width: 768px) and (max-width: 1100px) {
	#main .historySec .inner {
		align-items: flex-start;
	}
	#main .historySec .inner .infoBox {
		margin-left: 10%;
		max-width: 80%;
	}
	#main .historySec .inner .textBox {
		padding-top: 12%;
	}
	#main .detailSec .sderSec .txtInner {
		padding-right: 100px;
	}
	#main .detailSec .subInner .imgList li {
		width: 170px;
	}
}
@media all and (min-width: 768px) and (max-width: 1000px) {
	#main .detailSec .sderSec .subInner {
		margin-left: 35px;
	}
	#main .detailSec .subInner .imgList li {
		width: 18.8%;
	}
}
@media all and (min-width: 768px) and (max-width: 900px) {
	#main .detailSec .h3Ttl {
		font-size: 2.75rem;
		letter-spacing: 0.12em;
	}
	#main .detailSec .textArea .txt {
		font-size: 1.35rem;
	}
}
@media all and (min-width: 1001px) {
	#main .detailSec .textArea .more a:hover {
		color: #333;
		background: #fff;
	}
	#main .detailSec .rightLink a:hover {
		opacity: 0.7;
	}
	#main .detailSec .linkList li a:hover:before {
		opacity: 1;
		visibility: visible;
	}
	#main .journal .journalList li a:hover {
		opacity: 0.7;
	}
	#main .journal .slideBox .prev:not(.noHover):hover,
	#main .journal .slideBox .next:not(.noHover):hover {
		background-color: rgba(0,0,0,0.3);
	}
	#main .journal .slideBox .prev:not(.noHover):hover::after,
	#main .journal .slideBox .next:not(.noHover):hover::after {
		opacity: 1;
	}
}
@media all and (min-width: 1501px) {
	#main .historySec .inner .photoSec .parallaxBox {
		padding-bottom: 850px;
	}
	#main .historySec .inner .photoSec .parallaxBox .parallaxCon {
		height: 150%;
		top: -60%;
	}
	#main .historySec .inner .photoSec .parallaxBox .parallaxCon img {
		margin-left: 0;
	}
}
@media all and (max-width: 767px) {
	#main .mainSec {
		padding-bottom: 37px;
		min-height: inherit;
		text-align: center;
	}
	#main .mainSec .mainImg::before {
		height: 169px;
		background-image: url(../img/index/sp_main_bg01.png);
	}
	#main .mainSec p.logo {
		margin-bottom: 0;
		width: 256px;
	}
	#main .mainSec .about {
		padding-bottom: 40px;
	}
	#main .mainSec .title {
		margin: 35px 0 0;
		font-size: 2rem;
	}
	#main .mainSec h2 {
		margin-bottom: 37px;
		font-size: 3.2rem;
	}
	#main .mainSec .about p {
		margin-bottom: 30px;
		line-height: 2.0;
		font-size: 1.25rem;
		letter-spacing: 0.02em;
	}
	#main .mainSec p:last-child {
		margin-bottom: 0;
	}
	#main .mainSec .mainImg .scroll {
		display: none !important;
	}
	.videoBox {
		top: 0;
		bottom: auto;
	}
	#main .historySec {
		padding: 40px 0 118px;
	}
	#main .historySec .topPho {
		width: 72.6%;
		top: 85px;
		margin-bottom: 108px;
	}
	#main .historySec .topPho img {
		width: 100%;
	}
	#main .historySec .inner {
		margin-bottom: 98px;
		display: block;
	}
	#main .historySec .inner .photoSec {
		position: relative;
		width: 92%;
		margin: 0;
	}
	#main .historySec .inner .photoSec h2 {
		right: auto;
		top: -58px;
		left: 25px;
		font-size: 6rem;
	}
	#main .historySec .inner .textBox {
		width: 100%;
	}
	#main .historySec .inner .infoBox {
		max-width: inherit;
		margin: 0;
		padding: 65px 25px 0;
		margin-bottom: -20px;
	}
	#main .historySec .inner .infoBox h3 {
		margin-bottom: 37px;
		font-size: 2rem;
		letter-spacing: 0.03em;
	}
	#main .historySec .inner .infoBox p {
		margin-bottom: 21px;
		line-height: 1,.94;
		font-size: 1.25rem;
		letter-spacing: 0.01em;
	}
	#main .historySec .inner .infoBox p:last-child {
		margin-bottom: 0;
	}
	#main .historySec .phoArea {
		max-width: inherit;
		padding: 0 12px;
	}
	#main .historySec .phoArea .infoArea {
		width: 100%;
		margin-bottom: 30px;
	}
	#main .historySec .phoArea .movieBox {
		padding-bottom: 62%;
	}
	#main .historySec .phoArea .phoImg {
		width: 70%;
		top: 60;
	}
	#main .historySec .phoArea .phoImg img {
		margin-top: 50px;
	}
	#main .detailSec {
		display: block;
		height: auto;
	}
	#main .detailSec .stickBox {
		position: static;
		top: auto;
		height: auto;
	}
	#main .detailSec .infoDetail {
		height: auto;
		overflow: hidden;
		display: block;
	}
	#main .detailSec .h201 img {
		width: 208px;
	}
	#main .detailSec .h202 img {
		width: 199px;
	}
	#main .detailSec .h203 img {
		width: 152px;
	}
	#main .detailSec .rightLink {
		display: none;
	}
	#main .detailSec .linkList {
		display: none;
	}
	#main .detailSec .sderSec {
		height: 670px;
		width: 100%;
		align-items: flex-end;
		padding-bottom: 70px;
		box-sizing: border-box;
	}
	#main .detailSec .bgBox {
		background-position: center center;
		background-size: cover;
		background-repeat: no-repeat;
	}
	#main .sderSec01 .bgBox {
		background-image: url(../img/index/sp_bg01.jpg);
	}
	#main .sderSec02 .bgBox {
		background-image: url(../img/index/sp_bg02.jpg);
	}
	#main .sderSec03 .bgBox {
		background-image: url(../img/index/sp_bg03.jpg);
	}
	#main .detailSec .sderSec .subInner {
		width: 100%;
		margin: 0;
		padding: 0 20px 0 25px;
		box-sizing: border-box;
	}
	#main .detailSec .h2Ttl {
		margin-bottom: 75px;
	}
	#main .detailSec .h2Ttl .en {
		padding-left: 22px;
		font-size: 1.7rem;
	}
	#main .detailSec .sderSec01 .h2Ttl .en {
		bottom: -6.5px;
	}
	#main .detailSec .sderSec03 .h2Ttl .en {
		bottom: -7.5px;
	}
	#main .detailSec .h203 {
		margin-bottom: 60px;
	}
	#main .detailSec .h203::before {
		width: 195px;
		height: 110px;
		bottom: -30px;
		background-image: url("../img/index/sp_shadow03.png");
		background-size: cover;
	}
	#main .detailSec .txtInner .textArea {
		width: 82%;
		padding-top: 28px;
		float: right;
	}
	#main .detailSec .h3Ttl {
		margin-bottom: 20px;
    font-size: 2.6rem;
    line-height: 1.4;
	}
	#main .detailSec .textArea01:before {
		display: none;
	}
	#main .detailSec .textArea02 .h3Ttl {
		margin-bottom: 15px;
	}
	#main .detailSec .textArea .txt {
		margin: 0 0 30px 0;
		line-height: 1.96;
		font-size: 1.25rem;
		letter-spacing: 0.02em;
	}
	#main .detailSec .textArea .more {
		float: right;
		margin: 0 8px 0 0;
	}
	#main .detailSec .textArea .more a {
		width: 55px;
		height: 55px;
		font-size: 1.6rem;
		letter-spacing: 0.04em;
	}
	#main .detailSec .txtInner .more {
		margin-right: 9px;
	}
	#main .detailSec .subInner .ulBox {
		right: 21px;
		top: 23px;
	}
	#main .detailSec .subInner .imgList {
		margin-bottom: 6px;
	}
	#main .detailSec .subInner .imgList li {
		width: 22.6%;
		margin-left: 5px;
	}
	#main .detailSec .sderSec .subInner .textArea03 {
		width: auto;
	}
	#main .detailSec .sderSec03 {
		padding-bottom: 60px;
	}
	#main .detailSec .sderSec03 .subInner {
		position: static;
	}
	#main .detailSec .textArea03 .more {
		margin: 5px 5px 0 0;
	}
	#main .detailSec .txtInner .textArea02 {
		width: 100%;
	}
	#main .journal {
		padding: 70px 0 95px;
	}
	#main .journal .title {
		margin: 0 20px 38px;
    line-height: 1.89;
    font-size: 1.4rem;
    letter-spacing: 0.02em;
	}
	#main .journal .journalList {
		margin: 0 0 40px 0;
	}
	#main .journal .journalList .slick-slide > div {
		width: 310px;
		margin: 0 8px;
	}
	#main .journal .slideBox .prev {
		left: calc(50% - 310px);
		width: 310px;
		height: 413px;
		margin-left: -170px;
	}
	#main .journal .slideBox .next {
		right: calc(50% - 310px);
		width: 310px;
		height: 413px;
		margin-right: -170px;
	}
	#main .journal .journalList li a {
		height: 413px;
	}
	#main .journal .journalList li .txtBox {
		position: absolute;
		left: 0;
		padding: 0 15px 20px 20px;
		width: 100%;
		bottom: 0;
		min-height: 234px;
		color: #fff;
		background: url("../img/index/sp_shadow01.png") repeat-x left bottom;
		background-size: 310px auto;
		box-sizing: border-box;
	}
	#main .journal .journalList li .ttl {
		margin-bottom: 11px;
		font-size: 2.2rem;
		letter-spacing: 0.013em;
	}
	#main .journal .journalList li .txt {
		font-size: 1.35rem;
		line-height: 1.7;
    letter-spacing: 0.01em;
	}
	#main .journal .comLink a {
		padding-bottom: 2px;
		width: 160px;
	}
	#main .initiatives {
		padding: 70px 0 175px;
	}
	#main .initiatives .headLine01 {
		font-size: 2.5rem;
		margin-bottom: 45px;
	}
	#main .initiatives .parallaxCon {
		background: url("../img/index/sp_initiatives_bg.jpg") no-repeat center center;
		background-size: cover;
	}
	#main .initiatives .content h3 {
		width: 78vw;
		margin: 0 auto 28px;
	}
	#main .initiatives .txt {
		margin-bottom: 80px;
		font-size: 1.2rem;
		line-height: 2;
		letter-spacing: 0.02em;
	}
	#main .initiatives .comLink a:after {
		top: -20px;
		width: 238px;
		height: 80px;
		background: url("../img/index/sp_shadow02.png") no-repeat center center;
		background-size: cover;
	}
}
@media all and (max-width: 374px) {
	#main .mainSec p.logo {
		width: 216px;
	}
	#main .mainSec .about p {
		margin-bottom: 25px;
    line-height: 2.02;
    font-size: 1.18rem;
    letter-spacing: 0.01em;
	}
	#main .mainSec p:last-child {
		margin-bottom: 0;
	}
	#main .historySec .inner .infoBox h3 {
		margin-bottom: 28px;
		font-size: 1.85rem;
    letter-spacing: 0.02em;
	}
	#main .historySec .inner .infoBox p {
		margin-bottom: 22px;
    line-height: 1.99;
    font-size: 1.2rem;
    letter-spacing: 0.01em;
	}
	#main .detailSec .txtInner .textArea02 {
		width: 113%;
	}
	#main .detailSec .h201 img {
		width: 184px;
	}
	#main .detailSec .h202 img {
		width: 188px;
	}
	#main .detailSec .h3Ttl {
		font-size: 2.4rem;
	}
	#main .detailSec .textArea .txt {
		margin-right: 0;
		letter-spacing: 0.02em;
		font-size: 1.15rem;
	}
	#main .mainSec p {
		margin-left: -10px;
		margin-right: -10px;
	}
	#main .journal .title {
		font-size: 1.3rem;
	}
	#main .journal .journalList .slick-slide > div {
		width: 284px;
    margin: 0 5px;
	}
	#main .journal .journalList li .txt {
		font-size: 1.3rem;
	}
	#main .initiatives .title {
		margin-left: -10px;
		margin-right: -10px;
	}
	#main .initiatives .txt {
		font-size: 1.15rem;
		letter-spacing: 0.01em;
	}
}
.wihteBox {
	background-color: #fff;
	position: relative;
	z-index: 1;
}
