@charset "UTF-8";
/* CSS Document */


@media screen and (max-width: 737px) {


/* contents-top */

.title_contents-top {
	font-size: 18px;
}


/* box-grid */

.box-grid div:nth-child(n+4) {
  display: none;
}

/* container */

.container {
	width: 100%;
}

.container > section .box-inner::before {
	font-size: 60px;
}

.contents01 .box-inner::before {
	margin-top: -60px;
	text-align: left;
	width: 92%;
}

.contents02 .box-inner::before {
	margin-top: -20px;
	left: 8%;
}

.contents04 .box-inner::before {
	margin-top: -20px;
	left: 8%;
}

.contents05 .box-inner::before {
	margin-top: -5px;
}

.contents06 .box-inner::before {
	margin-top: -20px;
}

.container > section.contents07 .box-inner::before {
	padding-top: 45px;
}
	
	
/* main-img-top */

.main-img-top {
  width: 100%;
	height: 82vh; 
	position: relative;
}

.main-img-top::after {
right: 10px;
bottom: -35px;
	height: 120px;
}

.image-wrapper.show {
	transform: scale(1.1);
}

.image-wrapper.hidden {
	transform: scale(1.0);
}

.image-wrapper.leave {
	transform: scale(1.1);
}
	
.main-img-top .slider-container1, .main-img-top .slider-container2, .main-img-top .slider-container3 {
	display: none;
}
	
.main-img-top .slider-container4 {
	display: flex;
}

.bg-slider .slider-container .left-slide {
    height: 90%;
}
	
.bg-slider .slider-container .right-slide {
    height: 78%;
}
	
.bg-slider .slider-container .left-slide2 {
    height: 66%;
}

.main-img-top .box-text {
bottom: -35px;
}

.main-img-top .box-text h2 img {
	width: 67%;
}

.main-img-top .box-text h3 {
	font-size: 9vw;
	padding-top: 10px;
}

	
/* contents01 */

.contents01 {
	width: 100%;
	padding-top: 150px;
	padding-bottom: 90px;
background-size: 170% auto;
}

.contents01 .box-inner {
	padding-left: 0%;
  justify-content: center;
}

.contents01 .box-text {
	width: 100%;
	padding: 0px;
}

.contents01 .box-img {
	width: 100%;
	padding-top: 0px;
	padding-bottom: 40px;
}

.contents01 .box-img img {
	width: 100%;
min-height: 0px;
}

.contents01 .title_contents-top {
	margin-bottom: 40px;
	padding: 0px 8%;
}
	
.contents01 .box-text p {
	padding: 0px 8%;
}


/* contents02 */

.contents02 {
}

.contents02 .box-inner {
	padding: 50px 0px 70px;
}

.contents02 .title_contents-top {
	margin-bottom: 60px;
}

.contents01-modalwrap .lay-about01 {
	margin-bottom: 50px;
	padding-top: 160px;
}
	
.contents01-modalwrap .lay-about01::before {
background-position: center top;
	width: 100%;
	height: 160px;
}

.contents01-modalwrap .lay-about02 .box, .contents05-modalwrap .lay-voice01 .item {
	margin-bottom: 40px;
	padding: 0px;
}

.contents05-modalwrap .lay-voice01 .item {
	margin-bottom: 40px;
	padding: 0px;
}

.contents01-modalwrap .lay-about03, .contents05-modalwrap .item-last {
	padding: 25px 25px;
	gap:20px;
}

.contents01-modalwrap .lay-about03 .box-img {
	width: 100%;
	text-align: center;
}

.contents05-modalwrap .item-last .box-img {
	width: 100%;
	text-align: center;
}
	
.contents01-modalwrap .lay-about03 .box-img img, .contents05-modalwrap .item-last .box-img img {
	max-width: 160px;
}

.contents01-modalwrap .lay-about03 .box-detail {
	width: 100%;
}

.contents05-modalwrap .item-last .box-detail {
	width: 100%;
}

.contents01-modalwrap h4, .contents05-modalwrap h4 {
	font-size: 15px;
}

.contents01-modalwrap h4 {
	margin-bottom: 15px;
	padding-left: 0px;
}

.contents01-modalwrap h5, .contents05-modalwrap h5 {
	font-size: 4.9vw;
}
	
.contents01-modalwrap h5 {
	padding-left: 0px;
}


.contents01-modalwrap h6, .contents05-modalwrap h6 {
	font-size: 4.5vw;
	line-height: 1.6;
}


.contents02 .lay01, .contents03 .lay01 {
	padding-top: 50px;
}

.contents02 .lay01::before, .contents03 .lay01::before {
	height: 25px;
}

.contents02 .lay02 {
	padding: 40px 0px 70px;
}

.contents02 .lay02 .box-detail {
  justify-content: center;
	gap:30px;
}

.contents02 .lay02 .box {
	width: 100%;
	padding: 90px 30px 30px;
}

.contents02 .lay03 .box-detail {
  justify-content: center;
	padding: 50px 0px 60px;
	gap:50px;
}

.contents02 .lay03 .box-detail .box {
	width: 100%;
	min-height: 226px;
	padding-left: 45px;
	padding-top: 0px;
}

.contents02 .lay03 .box-detail .box:nth-child(2) {
	margin-top: 0px;
}

.contents02 h3, .contents03 h3 {
	font-size: 28px;
}

.contents02 .lay02 h4 {
	font-size: 5vw;
}

.contents02 .lay03 h4 {
	font-size: 28px;
	margin-bottom: 30px;
}

.contents02 .lay03 h4::before {
	background-image: url("../../images/top/icon-text01-sp.svg");
	background-size: auto 42px;
}

.contents02 .lay02 h5 {
	font-size: 24px;
	min-height: 0px;
	margin-bottom: 20px;
}

.contents02 .lay03 h6 {
	font-size: 6vw;
	margin-bottom: 20px;
}

.contents02 .lay03 p {
	width: 100%;
}


/* contents03 */

.contents03 .box-inner {
	padding: 60px 0px 80px;
}

.contents03 .lay02 {
	padding-top: 70px;
  justify-content: center;
	gap:50px 4%;
}

.contents03 .lay02 .box {
	width: 48%;
}
	
@media screen and (max-width: 600px) {
	.contents03 .lay02 .box {
	width: 100%;
		max-width: 320px;
}
}

.contents03 .lay02 .box::before {
	margin-left: -10px;
}

.contents03 .lay02 .box a {
	width: 100%;
	min-height: 200px;
}
	
.contents03 h4 {
	font-size: 16px;
}


/* contents04 */

.contents04 {
	width: 100%;
background-size: auto 70%;
}

.contents04 .contents04-modalwrap {
	text-align: center;
}

.contents04 .lay-job01 {
  justify-content: center;
	gap:30px;
}

.contents04 .lay-job01 .box-text {
	width: 100%;
}

.contents04 .lay-job01 .box-img {
	width: 100%;
}

.contents04 .box-inner {
	padding: 50px 0px 70px;
}

.contents04 .lay01 {
	display: none;
}

.contents04 .lay02 {
  justify-content: center;
	gap:10px 4%;
	padding-top: 30px;
}

.contents04 .lay02 .box {
	width: 48%;
}
	
@media screen and (max-width: 600px) {
	.contents04 .lay02 .box {
	width: 100%;
		max-width: 320px;
}
}

.contents04 .lay02 .box:nth-child(even) a {
	flex-direction: column;
}

.contents04 .lay02 .box-text {
	height: 120px;
}

.contents04 .lay02 .box-text .inner {
	position: absolute;
left: 25px;
bottom: 40px;
}


.contents04 h3 {
	font-size: 5.5vw;
	margin-bottom: 20px;
}

.contents04 h3::after {
	margin-top: 15px;
}

.contents04 h4 {
	font-size: 4.6vw;
line-height: 1.4;
letter-spacing: 0.05em;
	margin-bottom: 20px;
}


.contents04 h5 br {
	display: none;
}


/* contents05 */

.contents05 .box-inner {
	padding: 60px 0px 70px;
}

.contents05 .title_contents-top {
	margin-bottom: 50px;
}

.contents05 .lay01 {
	gap:30px 0px;
}

.contents05 .lay01 .box {
	width: 50%;
}

.contents05 .lay01 .box:nth-child(even) {
	margin-top: 50px;
}

.contents05-modalwrap {
	text-align: left;
}

.contents05-modalwrap .lay-voice01 {
  justify-content: center;
	flex-direction: column-reverse;
	gap:40px 0px;
}

.contents05-modalwrap .lay-voice01::before {
top: 40px;
	width: 60px;
	margin-left: -35px;
}

.contents05-modalwrap .lay-voice01::after {
	font-size: 62px;
	margin-left: -15px;
	margin-top: -45px;
}

.contents05-modalwrap .lay-voice01 .box-text {
	width: 100%;
}

.contents05-modalwrap .lay-voice01 > .box-img {
	width: 100%;
	padding-left: 0%;
	padding-top: 0px;
	text-align: center;
}
	
.contents05-modalwrap .lay-voice01 > .box-img img {
	max-width: 200px;
}

.contents05-modalwrap .box-title {
	gap:10px 20px;
}


/* contents06 */


.contents06 .box-inner {
	padding: 50px 0px 60px;
}

.contents06 .lay01 {
	padding: 40px 0% 0px;
  justify-content: center;
	gap:10px 0px;
}

.contents06 .lay01 .box {
	width: 100%;
	height: 50px;
}

.contents06 .lay01 .box a {
	width: 100%;
	height: 50px;
}

.contents06 .lay01 .box a::before {
	content: "";
	position: absolute;
right: 15px;
top: 0px;
	background-image: url("../../images/common/link-arrow02.svg");
background-position: right center;
background-repeat: no-repeat;
	background-size: auto 20px;
	width: 20px;
	height: 100%;
}

.contents06 h3 {
	font-size: 6vw;
line-height: 1.4;
letter-spacing: 0.05em;
	margin-bottom: 25px;
}

.contents06 h6 br {
	display: none;
}


/* ==========================
  モーダル（ポップアップ）
========================== */

.js_modalContInner {
	height: 100%;
}

.js_modalContWrap__wrap {
	width: 84%;
}

.js_modalCont {
	padding: 45px 8% 40px;
}

.js_modalCont .box-img {
	width: 100%;
	margin-bottom: 20px;
}

.js_modalClose {
  width: 40px;
  height: 40px;
	margin-right: -15px;
	margin-top: -15px;
}

/* contents07 */

.contents07 .box-inner {
	padding: 130px 0px 0px;
}

.contents07 .lay01 {
  justify-content: center;
	gap:15px;
}

.contents07 .lay01 .box {
	width: 92%;
	max-width: 320px;
}

.contents07 .lay02 {
	margin-top: 60px;
}

.scroll-infinity__item {
	  height: 60px;
}

.scroll-infinity__item>img {
	  height: 60px;
}



    .pc-view {
        display: none;
    }
    .sp-view {
        display: inline-block;
    }
   
}
