@charset "UTF-8";

.conceptLayout #pageTitle {
	background-image: url(../img/h2_bg_sp.jpg);
}

			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
				.conceptLayout #pageTitle {
					background-image: url(../img/h2_bg.jpg);
				}
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1200px) {
			}

.conceptLayout #main #c02 {
	background-color: #e04952;
	color: #fff;
	padding: 65px 0 0;
    position: relative;
    overflow: hidden;
}

.conceptLayout #main #c02::after {
    position: absolute;
    content: "";
    background: url("../img/02_bk01.png")no-repeat center center;
    width: 855px;
    height: 1300px;
    top: 0;
    left: 0;
    z-index: 0;
}

.conceptLayout #main #c02 .cassette {
    position: relative;
    z-index: 1;
}

.conceptLayout #main #c02 .cassette h3 {
	color: #d8d8d8;
	line-height: 1;
	padding: 0 0 40px;
}

.conceptLayout #main #c02 .cassette h3 .en {
	font-size: 4rem;
	font-weight: 700;
}

.conceptLayout #main #c02 .cassette h3 .text {
	font-size: 1.2rem;
	font-weight: 700;
}

.conceptLayout #main #c02 .cassette .box .en {
	font-size: 9.1rem;
	font-weight: 700;
	line-height: 1.3;
	padding: 0 0 10px;
}

.conceptLayout #main #c02 .cassette .box .text {
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 2.5;
}

.conceptLayout #main #c02 .cassette .box .name {
	font-size: 0.9rem;
	font-weight: 700;
    margin-top: 30px;
}

.conceptLayout #main #c02 .cassette .box .name img {
	display: inline-block;
	width: 150px;
	margin: 0 0 0 10px;
	vertical-align: middle;
}
.conceptLayout #main #c02 > .img {
    position: relative;
    top: 20px;
    z-index: 1;
}

			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
				.conceptLayout #main #c02 {
					padding: 90px 0 0;
				}
				.conceptLayout #main #c02 .cassette h3 {
					padding: 0 0 60px;
				}
				.conceptLayout #main #c02 .cassette h3 .en {
					font-size: 7rem;
				}
				.conceptLayout #main #c02 .cassette h3 .text {
					font-size: 1.6rem;
				}
				.conceptLayout #main #c02 .cassette .box .name {
					font-size: 1.6rem;
				}
				.conceptLayout #main #c02 .cassette .box .name img {
					width: 246px;
				}
                .conceptLayout #main #c02 > .img {
                    top: 80px;
                }
                .conceptLayout #main #c02::after {
                    width: 1765px;
                    height: 1984px;
                }
			}
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1200px) {
				.conceptLayout #main #c02 .cassette h3 .en {
					font-size: 9rem;
				}
				.conceptLayout #main #c02 .cassette h3 .text {
					font-size: 2rem;
				}
				.conceptLayout #main #c02 .cassette .box .en {
					font-size: 18.2rem;
				}
				.conceptLayout #main #c02 .cassette .box .text {
					font-size: 3rem;
				}
				.conceptLayout #main #c02 .cassette .box .name {
					font-size: 1.8rem;
				}
			}


.conceptLayout #main #c03 {
	padding: 90px 0 0;
}

.conceptLayout #main #c03 .cassette h3 {
	line-height: 1;
	padding: 0 0 40px;
}

.conceptLayout #main #c03 .cassette h3 .en {
	font-size: 4rem;
	font-weight: 700;
	color: #d8d8d8;
}

.conceptLayout #main #c03 .cassette h3 .text {
	font-size: 1.2rem;
	font-weight: 700;
	color: #000;
}

.conceptLayout #main #c03 .cassette .lead .ttl {
	font-size: 3.8rem;
	font-weight: 700;
}

.conceptLayout #main #c03 .cassette .box01 h4 {
	padding: 0;
}

.conceptLayout #main #c03 .cassette .box01 p {
	padding-bottom: 15px;
    font-weight: 700;
    line-height: 2.3;
    font-size: 18px;
}

.conceptLayout #main #c03 .cassette .box01 .disc {
	color: #d70c19;
	font-weight: 900;
	font-size: 1.6rem;
	padding: 0 0 15px;
}
.conceptLayout #main #c03 .cassette {
    padding-bottom: 0;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
				.conceptLayout #main #c03 {
					padding: 150px 0 0;
				}
				.conceptLayout #main #c03 .cassette h3 .en {
					font-size: 7rem;
				}
				.conceptLayout #main #c03 .cassette h3 .text {
					font-size: 1.6rem;
				}
				.conceptLayout #main #c03 .cassette .lead .ttl {
					font-size: 7rem;
                    line-height: 1.5;
                    margin-bottom: 50px;
				}
				.conceptLayout #main #c03 .cassette .box01 h4 {
					padding: 0 0 5px;
				}
				.conceptLayout #main #c03 .cassette .box01 .disc {
					font-size: 2rem;
				}
                .conceptLayout #main #c03 .cassette .box01 p {
                    padding-bottom: 80px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1200px) {
				.conceptLayout #main #c03 {
					background: url(../img/03_bg01.png) no-repeat 52vw top;
                    background-size: contain;
				}
				.conceptLayout #main #c03 .cassette h3 .en {
					font-size: 9rem;
				}
				.conceptLayout #main #c03 .cassette h3 .text {
					font-size: 2rem;
				}
                .conceptLayout #main #c03 .cassette .lead .ttl {
                    font-size: 6.5rem;
                }
				.conceptLayout #main #c03 .cassette .lead {
					width: 50%;
				}
				.conceptLayout #main #c03 .cassette .box01 .disc {
					font-size: 2.4rem;
				}
			}

.conceptLayout #main #c04 .bg01 {
	position: relative;
	margin: 0 0 65px;
}

.conceptLayout #main #c04 .bg01 img {
	width: 100%;
}

.conceptLayout #main #c04 .bg01 img:nth-child(2) {
	position: absolute;
	width: 100%;
	right: 0;
	bottom: calc(-100vw * 0.0167);
	z-index: 5;
}
.conceptLayout #main #c04 .cassette h3 {
	line-height: 1;
	padding: 0 0 40px;
}

.conceptLayout #main #c04 .cassette h3 .en {
	font-size: 4rem;
	font-weight: 700;
}

.conceptLayout #main #c04 .cassette h3 .text {
	font-size: 1.2rem;
	font-weight: 700;
}

.conceptLayout #main #c04 .cassette h4 {
	padding: 0;
}

.conceptLayout #main #c04 .cassette p {
	font-size: 1.6rem;
	font-weight: 900;
}
.conceptLayout #main #c04 .cassette .box {
    border: 1px solid;
    padding: 20px;
}
.conceptLayout #main #c04 .cassette .box .disc_li li {
    position: relative;
    padding-left: 20px;
    font-weight: bold;
    text-align: left;
}
.conceptLayout #main #c04 .cassette .box .disc_li li::before {
    position: absolute;
    content: "●";
    left: 0;
}
.conceptLayout #main #c04 .cassette .box .disc_li {
    padding-bottom: 0;
}
.conceptLayout #main #c04 .ca02 {
    padding-top: 40px;
}
.conceptLayout #main #c04 .cassette .main_t {
    line-height: 2.8;
    padding-bottom: 30px;
}




			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .conceptLayout #main #c04 .bg01 {
					margin: 0 0 90px;
				}
				.conceptLayout #main #c04 .cassette h3 .en {
					font-size: 5rem;
				}
				.conceptLayout #main #c04 .cassette h3 .text {
					font-size: 2rem;
				}
				.conceptLayout #main #c04 .cassette p {
					font-size: 2rem;
				}
                .conceptLayout #main #c04 .cassette .box {
                    max-width: 60%;
                }
                .conceptLayout #main #c04 .cassette .box {
                    padding: 40px 60px;
                }
                .conceptLayout #main #c04 .cassette .box .disc_li {
                    width: 50%;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1200px) {
				.conceptLayout #main #c04 {
					padding: 0 0 25px;
				}
				.conceptLayout #main #c04 .cassette {
					text-align: center;
				}
				.conceptLayout #main #c04 .cassette h3 {
					padding: 0 0 50px;
				}
				.conceptLayout #main #c04 .cassette h3 .en {
					font-size: 6.5rem;
				}
				.conceptLayout #main #c04 .cassette h3 .text {
					font-size: 2.4rem;
				}
				.conceptLayout #main #c04 .cassette h4 .redTag {
					font-size: 3rem;
				}
				.conceptLayout #main #c04 .cassette p {
					font-size: 2.4rem;
					padding: 0 0 60px;
				}
                .conceptLayout #main #c04 .cassette .box .ttl {
                    padding-bottom: 30px;
                    text-align: left;
                    line-height: 1;
                }
                .conceptLayout #main #c04 .cassette .box {
                    margin: 0 auto;
                }
			}


.conceptLayout #main #c05 .titleWrap {
	background: url(../img/05_bg01.jpg) no-repeat center center / cover;
	padding: 100px 0 50px;
	margin: 0 0 25px;
}

.conceptLayout #main #c05 .titleWrap h3 {
	margin: 0 auto;
	padding: 0 4%;
	max-width: 1200px;
	box-sizing: border-box;
	line-height: 1;
}

.conceptLayout #main #c05 .titleWrap h3 .en {
	background-color: rgba(255, 255, 255, 0.8);
	font-size: 7rem;
	font-weight: 700;
	position: relative;
	height: 80px;
	width: calc(3em + 40px);
	display: inline-block;
	line-height: 1;
}

.conceptLayout #main #c05 .titleWrap h3 .en span {
	position: absolute;
	left: 50%;
	top: 60%;
	transform: translate(-50%,-50%);
}

.conceptLayout #main #c05 .titleWrap h3 .text {
	background-color: rgba(255, 255, 255, 0.8);
	color: #d70c18;
	font-size: 2rem;
	font-weight: 700;
	display: inline-block;
	padding: 5px 20px 7px;
	margin: -1px 0 0 30px;
}

.conceptLayout #main #c05 .boxWrap .cassette .redTag {
	font-size: 2.4rem;
}

.conceptLayout #main #c05 .boxWrap .cassette .midashi01 {
	font-size: 2.4rem;
	position: relative;
	margin: 0 0 25px;
	padding: 0 0 0 24px;
	line-height: 1.4;
}

.conceptLayout #main #c05 .boxWrap .cassette .midashi01:before {
	content: '';
	display: inline-block;
	background-color: #111;
	width: 14px;
	height: 24px;
	position: absolute;
	left: 0;
	top: 6px;
}

.conceptLayout #main #c05 .boxWrap .bg {
	margin: 0 0 65px;
}

.conceptLayout #main #c05 .boxWrap .bg img {
	max-width: 100%;
}

.conceptLayout #main #c05 .box01 {
	background: url(../img/05_bg04.jpg) no-repeat center center / cover;
	padding: 65px 0 0;
}

.conceptLayout #main #c05 .box01 .cassette p {
	color: #fff;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
				.conceptLayout #main #c05 .titleWrap {
					padding: 100px 0;
					margin: 0 0 65px;
				}
				.conceptLayout #main #c05 .titleWrap h3 .en {
					font-size: 9rem;
					height: 110px;
					width: calc(3em + 60px);
				}
				.conceptLayout #main #c05 .titleWrap h3 .text {
					font-size: 2.5rem;
					padding: 7px 25px 9px;
				}
				.conceptLayout #main #c05 .box01 {
					margin: 35px 0 0;
					padding: 90px 0 25px;
				}
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1200px) {
				.conceptLayout #main #c05 .titleWrap {
					padding: 180px 0;
				}
				.conceptLayout #main #c05 .titleWrap h3 .en {
					font-size: 15rem;
					height: 180px;
					width: calc(3em + 60px);
				}
				.conceptLayout #main #c05 .titleWrap h3 .text {
					font-size: 3rem;
				}
				.conceptLayout #main #c05 .boxWrap .cassette div {
					padding: 0 50% 0 0;
				}
				.conceptLayout #main #c05 .boxWrap.right .cassette div {
					padding: 0 0 0 50%;
				}
				.conceptLayout #main #c05 .boxWrap {
					background-repeat: no-repeat;
					background-position: center 95px;
					background-size: cover;
					margin: 0 0 120px;
				}
				.conceptLayout #main #c05 .boxWrap {
					background-image: url(../img/05_bg02.jpg);
				}
				.conceptLayout #main #c05 .boxWrap.right {
					background-image: url(../img/05_bg03.jpg);
				}
				.conceptLayout #main #c05 .boxWrap .bg {
					display: none;
				}
				.conceptLayout #main #c05 .box01 .cassette h4 .redTag {
					font-size: 3rem;
				}
				.conceptLayout #main #c05 .box01 .cassette .lead {
					width: 600px;
				}
			}



.conceptLayout #main #c06 {
    text-align: center;
    background-color: #f4f4f4;
}
.conceptLayout #main #c06 .cassette {
    padding: 60px 0;
}
.conceptLayout #main #c06 .cassette h3 {
	line-height: 1;
	padding: 0 0 40px;
}

.conceptLayout #main #c06 .cassette h3 .en {
	font-size: 4rem;
	font-weight: 700;
}

.conceptLayout #main #c06 .cassette h3 .text {
	font-size: 1.2rem;
	font-weight: 700;
}
.conceptLayout #main #c06 .cassette h4 {
    position: relative;
    padding-left: 60px;
    font-size: 20px;
    max-width: 750px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 0;
    margin-bottom: 40px;
    text-align: left;
}
.conceptLayout #main #c06 .cassette h4::before {
    position: absolute;
    content: "";
    background: url(../img/03_bg01.png) no-repeat center center/cover;
    width: 50px;
    height: 50px;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.conceptLayout #main #c06 .cassette h4 span {
    color: #d70c18;
}
.conceptLayout #main #c06 .cassette .img {
    margin-bottom: 40px;
}


			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
                .conceptLayout #main #c06 .cassette {
                    padding: 120px 0 100px;
                }
                .conceptLayout #main #c06 .cassette h3 .en {
					font-size: 5rem;
				}
				.conceptLayout #main #c06 .cassette h3 .text {
					font-size: 2rem;
				}
                .conceptLayout #main #c06 .cassette h4 {
                    font-size: 40px;
                    padding-left: 110px;
                    text-align: center;
                }
                .conceptLayout #main #c06 .cassette h4::before {
                    width: 110px;
                    height: 110px;
                }
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1200px) {
                .conceptLayout #main #c06 .cassette h3 {
					padding: 0 0 50px;
				}
				.conceptLayout #main #c06 .cassette h3 .en {
					font-size: 6.5rem;
				}
				.conceptLayout #main #c06 .cassette h3 .text {
					font-size: 2.4rem;
				}
			}

			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1200px) {
			}

			/* 【タブレット用のスタイル記述】 */
			@media screen and (min-width: 761px) {
			}		
			/* 【PC用のスタイル記述】 */
			@media screen and (min-width: 1200px) {
			}

/* clearfix
------------------------------------*/

.clearfix:after {
content: ".";
display: block;
clear: both;
height: 0;
visibility: hidden;
overflow:hidden;
}

.clearfix {
display: inline-block;
}

/* exlude MacIE5 \*/
* html .clearfix {
height: 1%
}

.clearfix {
display:block;
}
/* end MacIE5 */