@charset "utf-8";
/* CSS Document */
/* PC用のCSSはメディアクエリの外に記述する */

@media screen and (max-width: 959px) {
	/* 959px以下に適用されるCSS（タブレット用） */
	
	.hero {
    width: 100%;
    height: 100vh;
    background-image: url(../img/hero.jpg);
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-size: cover;
	background-position: left;
    display: flex;
    flex-flow: row column;
    align-items: flex-end;
    justify-content: flex-end;
    color: rgba(255,255,255,1.00);
}
	
	
	
	.contents1-text {
	padding-top: 60px;
    writing-mode: vertical-rl;
    font-size: 16px;
	line-height: 1.6em;
		overflow-x: hidden;
}
	
	
	
	.contents2 {
		width: 96%;
		flex-flow: row wrap;
		padding-top: 0px;
	
	}	
	
	.contents2-text {
		width: 100%;
	}
	
	.contents2-img {
	width: 100%;
}

	.contents2-text p {
    
    font-size: 16px;
    line-height: 1.8em;
}
	
	.contents3-text p {
    
    font-size: 18px;
    line-height: 1.8em;
}

		.contents3 {
		width: 96%;
		flex-flow: row wrap-reverse;
			padding-top: 0;
	
	}	
	
	.contents3-text {
		width: 100%;
	}
	
	.contents3-img {
	width: 100%;
}
	
	
.contents4 {
    width: 100%;
    height: 100vh;
    background-image: url(../img/back03.png);
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-size: cover;
	background-position: left;
    display: flex;
    flex-flow: row column;
    align-items: flex-end;
    justify-content: flex-end;
    color: rgba(255,255,255,1.00);
}

.contents4-2 {
    width: 100%;
    height: 100vh;
    background-image: url(../img/back04.png);
    background-attachment: scroll;
    background-repeat: no-repeat;
    background-size: cover;
	background-position: left;
    display: flex;
    flex-flow: row column;
    align-items: flex-end;
    justify-content: flex-end;
    color: rgba(255,255,255,1.00);
}	
	
	
	
.slide-content {
 
  display: flex;
  align-items: center;
   height: 300px;
}
	
	
.slide-content.left {
  width:180px;
  display: flex;
  align-items: flex-start;
	
}

.slide-content.right {
  width: 180px;
  display: flex;
  align-items: flex-end;
}
	
.contents-card {
	padding-top: 0px;
	padding-bottom: 20px;
	width: 96%;
	display: flex;
	flex-flow: wrap;
	align-items: center;
	justify-content:center;
	margin-left: auto;
	margin-right: auto;
}	
	

.card {
	width: 80%;
	display: flex;
	flex-flow: wrap;
	margin-left:auto;
	margin-right: auto;
	margin-top: 40px;
	margin-bottom: 40px;
}	
	
.contents6 {
    width: 100%;
    display: flex;
	flex-flow: row wrap;
    align-items: flex-start;
    justify-content: flex-start;
    padding-top: 0px;
    padding-bottom: 60px;
    background-color: rgba(255,248,223,1.00);
}
	
.contents6-inner {
    width: 90%;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: flex-start;
    border-bottom: thin solid rgba(192,192,192,1.00);
	border-top: thin solid rgba(192,192,192,1.00);
    margin-left: auto;
    margin-right: auto;
	margin-top: -1px;
    
    
}

	
	
	.contents6-border2 {
		border-top: none;
	}
	
	
	.contents6-border {
	
	border-right: none;
}

	

	
.contents6-title {
	width: 50%;
	padding-top: 20px;
	padding-bottom: 20px;
	}
	
.contents6-text {
	width: 50%;
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: left;
	font-size: 12px;
}
	
.contents7-box {
    width: 80%;
    background-color: rgba(1,128,27,1.00);
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    overflow: hidden;
    padding-top: 100px;
    padding-bottom: 100px;
}	
	
.box-title {
    width: 100%;
    color: rgba(255,255,255,1.00);
	text-align: center;
	
}
	
.box-text {
	margin-top: 15px;
	padding-top: 30px;
	padding-bottom: 30px;
    width: 100%;
    color: rgba(255,255,255,1.00);
    font-size: 14px;
	text-align: center;
}	

.box-btn {
	margin-top: 15px;
	width: 100%;
    color: rgba(255,255,255,1.00);
	text-align: center;
}
	
.contents8 {
    width: 96%;
    margin-left: auto;
    margin-right: auto;
    display: flex;
	flex-flow: row wrap-reverse;
    align-items: center;
    justify-content: space-around;
    padding-top: 60px;
    padding-bottom: 60px;
    background-color: rgba(255,248,223,1.00);
}	
	
	
.contents8-inner {
	padding-bottom: 40px;
	width: 96%;
}

	.text-center {
		text-align: center;
		margin-bottom: 40px;
	}
	
.heading-28 {
    color: #5C5C5C;
    font-weight: 400;
    font-size: 1.75rem;
    letter-spacing: .04em;
    text-align: center;
    margin-bottom: 48px;
    line-height: 2.4em;
}

.heading-28::before {
    display: block;
    font-weight: 700;
    font-size: 2.4rem;
    letter-spacing: .02em;
    content: attr(data-label);
}
	
	
}
@media screen and (max-width: 480px) {
	/* 480px以下に適用されるCSS（スマホ用） */
}
