@charset "UTF-8";

/*------------------------------------------------------------------------------------
          
UNIQ / CASE / プロジェクト詳細
									
------------------------------------------------------------------------------------*/

#caseContents {
	position: relative;
	z-index: 10;
}

/*------------------------------------------------------ KEY-ELEMENTS */

.keyElements {
	width: 100%;
	background-color: rgba(0,30,63,.6);
	backdrop-filter: blur(15px);
	-webkit-backdrop-filter: blur(15px);
	padding: 80px 20px;
}

.keyElements .keyElementsHead {
	font-size: 1.8rem;
    line-height: 1.1;
    letter-spacing: 1rem;
    text-indent: 1rem;
    text-align: center;
    color: #1cc0e2;
}

.keyElements .keyElementsInner {
	padding: 0 7.5%;
	margin-top: 45px;
}

.keyElements .keyElementsInner ul {
}

.keyElements .keyElementsInner ul li + li {
	border-top: 1px solid rgba(230,233,236,.2);
    margin-top: 60px;
    padding-top: 60px;
}

.keyElements .keyElementsInner ul li .keyElementsImg {
	width: 70%;
	margin: 0 auto;
}

.keyElements .keyElementsInner ul li .keyElementsTxt {
	width: 100%;
}

.keyElements .keyElementsInner ul li .keyElementsTxt .keyElementsTxtHead {
    font-size: 2rem;
    line-height: 1.3;
    text-align: center;
    color: #fff;
    margin-top: 20px;
}

.keyElements .keyElementsInner ul li .keyElementsTxt .keyElementsTxtHead + p {
    line-height: 1.8;
    color: #fff;
    opacity: .8;
    margin-top: 10px;
}


/*------------------------------------------------------ SECTION */

#case .section {
	padding-top: 0;
    margin-top: 0;
	background-color: #104195;
	padding-bottom: 30vw;
}

#case .section:nth-child(2n+1) {
	background: url(../../../images/common/dots-3-3-100.png), #104195;
	background-repeat: repeat;
	background-size: 3px 3px;
}

#case .section:last-child {
	padding-bottom: 0;
}

#case .section + .section {
	padding-top: 0;
}

#case .section .sectionInner .sectionTxt {
    padding: 45px 7.5% 60px;
}

#case .section .sectionInner .sectionTxt .sectionHead {
	font-size: 2.6rem;
	text-align: center;
}

#case .section .sectionInner .sectionTxt .sectionHead span.en {
    display: inline-block;
    letter-spacing: .5rem;
    border-bottom: 1px solid #001e3f;
    margin-bottom: 30px;
}

#case .section .sectionInner .sectionTxt .sectionHead span.jp {
    display: block;
    width: 100%;
    text-align: left;
}

#case .section .sectionInner .sectionImg img {
	height: auto;
}

#case .section .sectionInner .sectionImg.in:after {
	opacity: 0;
}


/*------------------------------------------------------ IN-THE-END */

.inTheEnd {
	width: 100%;
    background-color: #001e3f;
    padding: 80px 20px;
    margin: 0 auto;
}

.inTheEnd .inTheEndHead {
	font-size: 1.8rem;
    line-height: 1.1;
    letter-spacing: 1rem;
    text-indent: 1rem;
    text-align: center;
    color: #1cc0e2;
}

.inTheEnd .inTheEndInner {
	padding: 0 7.5%;
    margin-top: 45px;
}

.inTheEnd .inTheEndInner .inTheEndImg {
	width: 80%;
    margin: 0 auto;
}

.inTheEnd .inTheEndInner .inTheEndTxt {
}

.inTheEnd .inTheEndInner .inTheEndTxt .inTheEndTxtHead {
    font-size: 2rem;
    line-height: 1.5;
    text-align: center;
    color: #fff;
    margin-top: 25px;
}

.inTheEnd .inTheEndInner .inTheEndTxt .inTheEndTxtHead + p {
    line-height: 1.8;
    color: #fff;
    opacity: .8;
    margin-top: 15px;
}

.inTheEnd .inTheEndInner .inTheEndTxt .profile {
	border-top: 1px solid rgba(230,233,236,.2);
    margin-top: 30px;
    padding-top: 30px;
}

.inTheEnd .inTheEndInner .inTheEndTxt .profile dt {
    font-size: 1.8rem;
    line-height: 1.5;
    color: #fff;
	opacity: .8;
}

.inTheEnd .inTheEndInner .inTheEndTxt .profile dd {
    font-size: 80%;
    line-height: 1.5;
	color: #fff;
    opacity: .8;
    margin-top: 5px;
}


/*------------------------------------------------------------------------------------

以下 TAB 用
									
------------------------------------------------------------------------------------*/

@media print, screen and (min-width: 500px) {

/*------------------------------------------------------ KEY-ELEMENTS */

.keyElements .keyElementsInner {
    margin-top: 60px;
}

.keyElements .keyElementsInner ul li {
    display: flex;
    align-items: center;
}

.keyElements .keyElementsInner ul li .keyElementsImg {
    width: 33.3333%;
	margin: 0;
}

.keyElements .keyElementsInner ul li .keyElementsTxt {
    width: 66.6666%;
	padding-left: 7.5vw;
}

.keyElements .keyElementsInner ul li .keyElementsTxt .keyElementsTxtHead {
	text-align: left;
    margin-top: 0;
}


/*------------------------------------------------------ SECTION */

#case .section {
    padding-bottom: 15vw;
}

#case .section .sectionInner .sectionTxt {
    padding: 60px 7.5%;
}

#case .section .sectionInner .sectionTxt .sectionHead {
    display: flex;
    align-items: center;
    text-align: left;
}

#case .section .sectionInner .sectionTxt .sectionHead span.en {
	width: 65px;
    display: block;
    letter-spacing: .5rem;
    border-bottom: none;
    margin-bottom: 0;
}

#case .section .sectionInner .sectionTxt .sectionHead span.jp {
	width: calc(100% - 65px);
	padding-left: 30px;
	border-left: 1px solid #001e3f;
}


/*------------------------------------------------------ IN-THE-END */

.inTheEnd .inTheEndInner {
	display: flex;
    margin-top: 60px;
}

.inTheEnd .inTheEndInner .inTheEndImg {
    width: 33.3333%;
    margin: 0;
}

.inTheEnd .inTheEndInner .inTheEndTxt {
	width: 66.6666%;
	padding-left: 7.5vw;
}

.inTheEnd .inTheEndInner .inTheEndTxt .inTheEndTxtHead {
    text-align: left;
    margin-top: 0;
}


}


/*------------------------------------------------------------------------------------

以下 PC 用
									
------------------------------------------------------------------------------------*/

@media print, screen and (min-width: 900px) {

/*------------------------------------------------------ KEY-ELEMENTS */

.keyElements {
    padding: 120px 0;
}

.keyElements .keyElementsHead {
	font-size: 2.4rem;
    letter-spacing: 3.2rem;
    text-indent: 3.2rem;
}

.keyElements .keyElementsInner {
	padding: 0;
}

.keyElements .keyElementsInner ul {
	display: flex;
    width: 700px;
    margin: 0 auto;
}

.keyElements .keyElementsInner ul li {
	display: block;
	width: 300px;
}

.keyElements .keyElementsInner ul li:only-child {
	margin: 0 auto;
}

.keyElements .keyElementsInner ul li + li {
	border-top: none;
	padding-top: 0;
	margin-top: 0;
	margin-left: 100px;
}

.keyElements .keyElementsInner ul li .keyElementsImg {
    width: 100%;
    margin: 0;
}

.keyElements .keyElementsInner ul li .keyElementsTxt {
    width: 100%;
    padding-left: 0;
}

.keyElements .keyElementsInner ul li .keyElementsTxt .keyElementsTxtHead {
    font-size: 2.2rem;
    text-align: center;
    margin-top: 25px;
}

/*------------------------------------------------------ SECTION */

#case .section {
    padding-bottom: 10vw;
}

#case .section .sectionInner .sectionTxt {
    width: 900px;
    padding: 80px 150px;
    margin: -80px auto 0;
}

#case .section .sectionInner .sectionTxt .sectionHead span.en {
	width: 80px;
    font-size: 3.6rem;
}

#case .section .sectionInner .sectionTxt .sectionHead span.jp {
	width: calc(100% - 80px);
    padding-left: 40px;
}

#case .section .sectionInner .sectionImg img {
	height: 600px;
}


/*------------------------------------------------------ IN-THE-END */

.inTheEnd {
    padding: 100px 0;
}

.inTheEnd .inTheEndHead {
    font-size: 2.4rem;
    letter-spacing: 3.2rem;
    text-indent: 3.2rem;
}

.inTheEnd .inTheEndInner {
    width: 700px;
    padding: 0;
    margin: 60px auto 0;
}

.inTheEnd .inTheEndInner .inTheEndImg {
	width: 300px;
}

.inTheEnd .inTheEndInner .inTheEndTxt {
	width: 400px;
	padding-left: 100px;
}

.inTheEnd .inTheEndInner .inTheEndTxt .inTheEndTxtHead {
	font-size: 2.2rem;
}

.inTheEnd .inTheEndInner .inTheEndTxt .profile dt {
    font-size: 2rem;
}

}