@charset "utf-8";

/*--------------------------------------------------
	ofi-cover
--------------------------------------------------*/
.ofi-cover {
  object-fit: cover;
  font-family: 'object-fit: cover';
}


/*--------------------------------------
　Main Index
---------------------------------------*/
.contents_top {
	width: 100%;
	min-width: 1000px;
	margin: auto;
	box-sizing: border-box;
}
.sec {
	width: 100%;
	min-width: 1000px;
	margin: auto;
	box-sizing: border-box;
	position: relative;
}
.sec .inner {
	max-width: 1000px;
	margin: auto;
	box-sizing: border-box;
}

/* SP ------------------------------*/
@media screen and (max-width: 768px) {
	.contents_top {
		min-width: 100%;
	}
	.sec {
		min-width: 100%;
	}
	.sec .inner {
		max-width: 100%;
	}
}



/*--------------------------------------
　Header
---------------------------------------*/

.top-header .inner {
	height: 60px;
	max-width: 100%;
}
.top-header .logo01 {
	font-size: 1.5rem;
	color: #cfab87;
	position: relative;
	z-index: 1;
	padding: 2rem 0 0 3rem;
	font-weight: bold;
}

@media screen and (max-width: 768px) {
  .top-header .inner {
    height: 60px;
    max-width: 100%;
  }
  .top-header .logo01 a {
    font-size: 2rem;
    color: #ba8c61;
    position: relative;
    z-index: 1;
    padding: 1rem 0 0 0;
    font-weight: bold;
    text-align: center;
  }

}





/*--------------------------------------
　MV
---------------------------------------*/
.top_mv {
	width: 100%;
	height: 567px;
	min-width: 1000px;
	margin: -6rem auto 0;
	position: relative;
	z-index: 0;
}

.top_mv .mv_inner {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	position: relative;
}
.top_mv .mv_inner:before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	background: url("img/mv-img01.jpg") center center no-repeat;
	background-size: cover;
	width: 50%;
	height: 567px;
}
.top_mv .mv_inner:after {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	background: #cfab87;
	width: 50%;
	height: 567px;
}

.top_mv .text-box {
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
	z-index: 1;
}

.top_mv .text-box .box {
	width: 50%;
	margin: 0 0 0 auto;
}

.top_mv .mv-ttl {
	font-size: 5rem;
	font-weight: bold;
	color: #fff;
	/* transform: rotate(-10deg); */
	line-height: 1.3;
	margin-left: 5rem;
	margin-top: 3rem;
	font-family: 'Noto Serif JP', serif;
}


.top_mv .mv-ttl .small_text{
    font-size: 2.5rem;
    margin-left: 1rem;
    line-height: 2.3;
}

.top_mv .text-box .box .txt {
	color: #fff;
	padding-left: 5rem;
	margin-top: 2rem;
}

.sinrai {
    width: 185px;
    display: inline-flex;
}

.sinmi {
    width: 150px;
    display: inline-flex;
}



@media screen and (max-width: 768px) {
	.top_mv {
		width: 100%;
		height: auto;
		min-width: 100%;
		margin: -6rem auto 0;
		position: relative;
		z-index: 0;
	}

	.top_mv .mv_inner {
		display: flex;
		align-items: center;
		flex-wrap: wrap;
		position: relative;
	}
	.top_mv .mv_inner:before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		background: url("img/sp-mv-img01.jpg") center top no-repeat;
		background-size: cover;
		width: 100%;
		height: 263px;
	}
	.top_mv .mv_inner:after {
		display: none;
	}

	.top_mv .text-box {
		background: #cfab87;
		max-width: 100%;
		margin: 263px auto 0;
		padding: 1rem 2rem 3rem;
		box-sizing: border-box;
		position: relative;
		z-index: 1;
	}

	.top_mv .text-box .box {
		width: 100%;
		margin: 0 auto 0 auto;
	}

	.top_mv .mv-ttl {
		font-size: 2.2rem;
		font-weight: bold;
		color: #333;
		/* transform: rotate(-10deg); */
		line-height: 1.5;
		margin-left: 0;
		margin-top: -14rem;
	}

.top_mv .mv-ttl {
	font-size: 8vw;
	font-weight: bold;
	color: #fff;
	/* transform: rotate(-10deg); */
	line-height: 1.4;
	margin-left: 0;
	margin-top: 0;
	font-family: 'Noto Serif JP', serif;
}


.top_mv .mv-ttl .small_text{
    font-size: 1.8rem;
    margin-left: 1rem;
}

	

	.top_mv .text-box .box .txt {
		color: #fff;
		padding-left: 0;
		margin-top: 2rem;
	}


.sinrai {
    width: 45%;
    display: inline-flex;
}

.sinmi {
    width: 36%;
    display: inline-flex;
}


}





/*--------------------------------------
　Title
---------------------------------------*/
.ttl {
	font-weight: bold;
}





/*--------------------------------------
　テキスト
---------------------------------------*/
.txt {
	font-size: 1.5rem;
	line-height: 1.7;
	text-align: justify;
}

/* SP ------------------------------*/
@media screen and (max-width: 768px) {
	.txt {
		line-height: 1.8;
	}
}





/*--------------------------------------
　sec01
---------------------------------------*/
.sec01 {
	margin-top: -10rem;
	width: 100%;
}

.sec01 .ml-box {
	max-width: 1000px;
	margin: 0 auto 9rem;
	z-index: 1;
	position: relative;
}

.sec01 .ml-box .mv-link-t {
	background: rgb(241 202 191);
	color: #e85767;
	text-align: center;
	font-weight: bold;
	font-size: 3.4rem;
	padding: 2.5rem 0 23rem 0;
}


.sec01 .mv-link {
	margin-top: -20.5rem;
}

.sec01 .mv-link ul {
	display: flex;
	width: 880px;
	margin: 0 auto;
	justify-content: space-between;
}
.sec01 .mv-link li {
	background: #ffffff;
	width: 280px;
	border-radius: 20px;
	box-shadow: 0px 5px 0px 0px #c08979;
	position: relative;
	padding-bottom: 3rem;
}
.sec01 .mv-link .link-t {
	color: #6ba2a2;
	font-size: 2rem;
	font-weight: bold;
	line-height: 1.4;
	margin-left: 2rem;
	position: relative;
	z-index: 1;
	margin-top: 2rem;
}

.sec01 .mv-link .link-t span {
	color: #e85767;
	font-weight: bold;
	font-size: 2.8rem;
}

.sec01 .mv-link .btn-link {
	text-align: left;
	margin-left: 2rem;
	text-decoration: none;
	font-weight: bold;
	margin-top: 3rem;
	display: inline-block;
	background: url("img/arrow02.png") right center no-repeat;
	background-size: 15px auto;
	padding: 0 2rem 0 0;
	position: relative;
	z-index: 1;
}

.sec01 .mv-link .icon01 {
	position: absolute;
	right: 10px;
	width: 138px;
	bottom: 0;
}
.sec01 .mv-link .icon02 {
	position: absolute;
	right: 1px;
	width: 150px;
	bottom: 0;
}
.sec01 .mv-link .icon03 {
	position: absolute;
	right: 0;
	width: 140px;
	bottom: 0;
}

.sec01 .bg {
	background: url("img/sec01-bg.jpg") center center no-repeat;
	background-size: cover;
	width: 100%;
	height: 473px;
	display: none;
}
.sec01 .inner {
	max-width: 1000px;
	margin: 0 auto;
	margin-top: 22rem;
	position: relative;
}
.sec01 .inner .box{
	background:rgba(255,255,255,0.9);
	width: 100%;
	height: auto;
	padding: 0rem 0 7rem;
}

.sec01 .inner .ttl {
	position: absolute;
	top: -8.5rem;
	left: 0;
	font-size: 3.8rem;
}
.sec01 .inner .t-txt {
	/* width: 880px; */
	margin: 0 auto;
}

.sec01 .ls-box {
	display: flex;
	justify-content: space-between;
	/* width: 1000px; */
	margin: 0 auto;
	margin-top: 4rem;
}

.sec01 .ls-box .item{
	width: 490px;
	background: #73a7a7;
	position: relative;
}


.sec01 .ls-box .item:before {
	height: 0;
	display: block;
	position: absolute;
	right: 0;
	bottom: 0;
	content: "";
	border-bottom: solid 35px #fff;
	border-left: solid 35px transparent;
}
.sec01 .ls-box .item:after {
	height: 0;
	display: block;
	position: absolute;
	right: 0;
	content: "";
	border-top: solid 35px #488585;
	border-right: solid 35px transparent;
	bottom: 0;
}

.sec01 .ls-box .t-box {
	padding: 3.5rem 3rem 4.5rem;
}

.sec01 .eng-t {
	font-size: 1.8rem;
	position: relative;
	display: inline-block;
	padding-right: 2.8rem;
	margin-bottom: 0.7rem;
}

.sec01 .eng-t:after {
	content: "";
	width: 24px;
	height: 1px;
	background: #f03f53;
	position: absolute;
	right: 0;
	top: 50%;
}

.sec01 .ls-box h3 {
	font-size: 2.8rem;
	color: #fff;
}
.sec01 .ls-box .txt {
	color: #fff;
	margin-top: 2rem;
}

@media screen and (max-width: 768px) {
	.sec01 {
		margin-top: 0;
		width: 100%;
	}

  .sec01 .ml-box {
    max-width: 100%;
    margin: 0 auto 7rem;
    z-index: 1;
    position: relative;
  }

  .sec01 .ml-box .mv-link-t {
    background: rgb(241 202 191);
    color: #e85767;
    text-align: center;
    font-weight: bold;
    font-size: 2.2rem;
    padding: 3rem 0 11rem 0;
  }


  .sec01 .mv-link {
    margin-top: -9rem;
  }

  .sec01 .mv-link ul {
    display: flex;
    width: 94%;
    margin: 0 auto;
    justify-content: space-between;
  }
  .sec01 .mv-link li {
    background: #ffffff;
    width: 32%;
    border-radius: 20px;
    box-shadow: 0px 5px 0px 0px #c08979;
    position: relative;
    padding-bottom: 11rem;
  }
  .sec01 .mv-link .link-t {
    color: #6ba2a2;
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 1.4;
    margin-left: 0;
    text-align: center;
    position: relative;
    z-index: 1;
    margin-top: 1rem;
  }

  .sec01 .mv-link .link-t span {
    color: #e85767;
    font-weight: bold;
    font-size: 1.8rem;
  }


  .sec01 .mv-link .btn-link {
    text-align: left;
    margin-left: 1rem;
    text-decoration: none;
    font-weight: bold;
    margin-top: 2rem;
    display: inline-block;
    background: url("img/arrow02.png") center bottom no-repeat;
    background-size: 12px auto;
    padding:  0;
    position: relative;
    font-size: 1.2rem;
    z-index: 1;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: absolute;
    left: 9px;
    top: 6.1rem;
    height: 60%;
  }

  .sec01 .mv-link .icon01 {
    position: absolute;
    right: 0;
    width: 80%;
    bottom: 0;
    left: 0;
    text-align: center;
    margin: 0 auto;
  }
	
  .sec01 .mv-link .icon02 {
    position: absolute;
    right: 0;
    width: 80%;
    bottom: 0;
    left: 2rem;
    text-align: center;
    margin: 0 auto;
  }

    .sec01 .mv-link .icon03 {
    position: absolute;
    right: 0;
    width: 80%;
    bottom: 0;
    left: 2rem;
    text-align: center;
    margin: 0 auto;
  }	
	
  .sec01 .bg {
    background: url("img/sp-sec01-bg.jpg") center center no-repeat;
    background-size: cover;
    width: 100%;
    height: 373px;
  }
  .sec01 .inner {
    max-width: 100%;
    margin: 0 auto;
    margin-top: 0;
    position: relative;
  }
  .sec01 .inner .box{
    background:rgba(255,255,255,0.9);
    width: 92%;
    height: auto;
    padding: 3rem 0 0 0;
    margin: 0 auto;
  }

  .sec01 .inner .ttl {
    position: inherit;
    top: -8.5rem;
    left: 0;
    font-size: 2.2rem;
    width: 90%;
    margin: 0 auto;
    margin-bottom: 1rem;
  }
  .sec01 .inner .t-txt {
    width: 90%;
    margin: 0 auto;
  }

  .sec01 .ls-box {
    display: block;
    justify-content: space-between;
    width: 90%;
    margin: 0 auto;
    margin-top: 3rem;
  }

  .sec01 .ls-box .item{
    width: 100%;
    background: #73a7a7;
    position: relative;
    margin-bottom: 1em;
  }


  .sec01 .ls-box .item:before {
    height: 0;
    display: block;
    position: absolute;
    right: 0;
    bottom: 0;
    content: "";
    border-bottom: solid 35px #fff;
    border-left: solid 35px transparent;
  }
  .sec01 .ls-box .item:after {
    height: 0;
    display: block;
    position: absolute;
    right: 0;
    content: "";
    border-top: solid 35px #488585;
    border-right: solid 35px transparent;
    bottom: 0;
  }

  .sec01 .ls-box .t-box {
    padding: 3rem 2.5rem 4.5rem;
  }

  .sec01 .eng-t {
    font-size: 1.2rem;
    position: relative;
    display: inline-block;
    padding-right: 2.8rem;
    margin-bottom: 0.7rem;
  }

  .sec01 .eng-t:after {
    content: "";
    width: 18px;
    height: 1px;
    background: #f03f53;
    position: absolute;
    right: 0;
    top: 50%;
  }

  .sec01 .ls-box h3 {
    font-size: 1.8rem;
  }
  .sec01 .ls-box .txt {
    color: #fff;
    margin-top: 1.5rem;
  }

}

/*--------------------------------------
　sec02
---------------------------------------*/
.sec02 {
	margin-top: 10rem;
	width: 100%;
}
.sec02 .sub {
	margin-bottom: 11rem;
}
.sec02 .ttl-box {
	max-width: 1000px;
	margin: 0 auto;
}

.sec02 .ttl-box .ttl {
	font-size: 3.4rem;
	color: #71a5a6;
	padding-left: 13rem;
	position: relative;
}
.sec02 .sub02 .ttl-box .ttl:before{
	content: "";
	position: absolute;
	top: -6rem;
	display: inline-block;
	left: 0;
	margin: 0 auto;
	padding-right: 11rem;
	width: 200px;
	height: 153px;
	background: url("img/sec02-ttl-icon02.png") left center no-repeat;
	background-size: 200px 153px;
	z-index: -1
}

.sec02 .sub01 .ttl-box .ttl:before{
	content: "";
	position: absolute;
	top: -8rem;
	display: inline-block;
	left: 0;
	margin: 0 auto;
	padding-right: 11rem;
	width: 120px;
	height: 213px;
	background: url("img/sec02-ttl-icon01.png") left center no-repeat;
	background-size: 120px auto;
	z-index: -1;
}

.sec02 .sub02 .ttl-box .ttl {
	font-size: 3.4rem;
	color: #71a5a6;
	padding-left: 22rem;
	position: relative;
}


.sec02 .sub03 .ttl-box .ttl:before{
	content: "";
	position: absolute;
	top: -6rem;
	display: inline-block;
	left: -3rem;
	margin: 0 auto;
	padding-right: 11rem;
	width: 117px;
	height: 173px;
	background: url("img/sec02-ttl-icon03.png") left center no-repeat;
	background-size: 149px auto;
	z-index: -1;
}




/*--------------------------------------box01---------------------------------------*/
.sec02 .box01 {
	width: 100%;
	margin-top: 4rem;
	position: relative;
	z-index: 1;
}

.sec02 .box01:before{
	content: "";
	width: 100%;
	position: absolute;
	height: 70%;
	display: block;
	background: #d0ab87;
	z-index: -1;
}



.sec02 .box01 .box-inner {
  max-width: 1000px;
  margin: 0 auto;
  padding-top: 2rem;
}


.sec02 .box01 .box-inner .btn-web a {
    margin: 4rem auto 4rem;
}


.sec02 .sub-ttl {
	font-size: 4.3rem;
	font-weight: bold;
	line-height: 1.4;
	/* transform: rotate( -6deg ); */
	text-align: center;
	color: #fff;
	margin-bottom: 3rem;
}

.sec02 .sub-ttl span {
	font-weight: bold;
}

.sec02 .sub-ttl .tx01{
	font-size: 6.2rem;
}

.sec02 .sub-ttl .tx02{
	font-size: 2.2rem;
}


.sec02 .c-box {
	display: flex;
	justify-content: space-between;
	background: #fff;
}

.sec02 .c-box .image-box {
	width: 50%;
	/* margin-top: 8rem; */
	box-sizing: border-box;
}

.sec02 .caption {
	color: #888;
	padding: 0 1rem 1rem;
}
.sec02 .caption a {
	display: inline-block;
	color: #888;
	padding-left: 1rem;
}

.sec02 .c-box .text-box {
	width: 50%;
	box-sizing: border-box;
	background: #fff;
	height: 323px;
}

.sec02 .sub02 .c-box .text-box  {
  margin-top: 0;
}

.sec02 .c-box .text-box .ttl {
	color: #f03e52;
	font-size: 3.6rem;
	background: #f4d8cd;
	padding: 1.5rem 3rem;
	/* height: 9.3rem; */
	align-items: center;
	display: flex;
	justify-content: center;
}
.sec02 .c-box .text-box .fea-box {
	background: #ffffff;
	padding: 3rem 4rem 2rem;
	/* height: 234px; */
}






.sec02 .c-box .text-box .fea-box .point {
	font-size: 2.4rem;
	position: relative;
	border-bottom: solid 1px #fff;
	padding-bottom: 1rem;
	font-weight: bold;
	margin-top: 1rem;
}

.sec02 .c-box .text-box .fea-box .point:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 1px #6ba1a1;
  bottom: -1px;
  width: 10%;
}
.sec02 .c-box .text-box .fea-box ul {
	margin-top: 2rem;
}
.sec02 .c-box .text-box .fea-box li {
  margin: 0 0 1rem 0;
  padding: 0 0 0 2rem;
	font-size: 1.5rem;
  line-height: 1.8;
	position: relative;
}
.sec02 .c-box .text-box .fea-box li:last-child{
  margin: 0 0 0 0;
}
.sec02 .c-box .text-box .fea-box li::before {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 13px;
  height: 13px;
  background: #ffffff;
  box-sizing: border-box;
  border-radius: 50%;
  border: 4px solid #f03e52;
}

.sec02 .c-box .text-box .btn-web a {
	width: 75%;
}



/*--------------------------------------box02---------------------------------------*/
.sec02 .box02 {
	background: #f4d8cd;
	padding-top: 40rem;
	margin-top: -34rem;
	padding-bottom: 8rem;
}


.sec02 .box02 .box-inner {
	max-width: 1000px;
	margin: 0 auto;
}

.sec02 .box02 .blok {
	position: relative;
	margin-bottom: 10rem;
}



.sec02 .box02 .ttl::before {
  content: "";
  display: block;
  width: 1px;
  background: #333;
  height: 82%;
  position: absolute;
  top: 1rem;
  left: 1rem;
}

.sec02 .box02 .bg-box {
	position: relative;
	width: 100%;
}
.sec02 .box02 .bg-txt {
	color: #f6ded5;
	font-size: 12rem;
	position: absolute;
	top: -9rem;
	left: 3rem;
	width: 100%;
}

.sec02 .box02 .ttl {
	font-size: 3.4rem;
	/* background: #f1cabf; */
	position: relative;
	padding: 2.5rem 2rem 2.5rem 6rem;
	width: 80%;
}
.sec02 .sub01 .box02 .ttl-c , .sec02 .sub02 .box02 .ttl-c , .sec02 .sub03 .box02 .ttl-c{
	/* background: #f5ae83; */
}

.sec02 .blok01 .p-erea {
	margin-left: 6rem;
	background: #6ba1a2;
	position: relative;
	margin-top: 3rem;
	padding: 1rem 3rem 3rem;
}

.sec02 .blok01 .p-erea .fea-box .point {
	font-size: 2.4rem;
	position: relative;
	border-bottom: solid 1px #6ba1a2;
	padding-bottom: 1rem;
	font-weight: bold;
	margin-top: 1rem;
	margin-bottom: 1rem;
	color: #fff;
}
.sec02 .blok01 .p-erea .fea-box .point:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 1px #ffffff;
  bottom: -1px;
  width: 10%;
}
.sec02 .blok01 .p-erea p {
	color: #fff;
	padding-right:200px;
}

.sec02 .blok01 .p-erea ul {
	margin-top: 2rem;
}
.sec02 .blok01 .p-erea li {
  margin: 0 0 1rem 0;
  padding: 0 0 0 2rem;
  font-size: 1.5rem;
  line-height: 1.8;
  position: relative;
  color: #fff;
}
.sec02 .blok01 .p-erea li:last-child{
  margin: 0 0 0 0;
}
.sec02 .blok01 .p-erea li::before {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  left: 0;
  width: 13px;
  height: 13px;
  /* background: #ffffff; */
  box-sizing: border-box;
  border-radius: 50%;
  border: 4px solid #f03e52;
}










.sec02 .blok01 .p-erea .txt {
	color: #fff;
	padding: 3rem 4rem;
	width: 74%;
	position: relative;
	z-index: 4;
}


.sec02 .sub01 .blok01 .icon {
	position: absolute;
	width: 164px;
	bottom: 0;
	right: 1rem;
	z-index: 2;
}


.sec02 .sub02 .blok01 .icon {
	position: absolute;
	width: 232px;
	bottom: 0;
	right: -3rem;
	z-index: 2;
}

.sec02 .sub03 .blok01 .icon {
	position: absolute;
	width: 257px;
	bottom: 0;
	right: -2rem;
	z-index: 2;
}




.sec02 .voice {
	display: flex;
	margin-left: 6rem;
	justify-content: space-between;
	margin-top: 4rem;
}

.sec02 .voice .vo {
	background: #fff;
	width: 300px;
	padding-bottom: 2rem;
}

.sec02 .sub03 .voice .vo {
	background: #fff;
	width: 460px;
	padding-bottom: 2rem;
}

.sec02 .voice .vo-t {
	border-bottom: 2px solid #f1cabf;
	width: 86%;
	margin: 0 auto;
	margin-top: 1rem;
	padding: 1rem 0;
}
.sec02 .voice .vo-t .icon {
	float: left;
	width: 50px;
	margin-right: 1rem;
}
.sec02 .voice .vo-t .v-ttl {
	font-size: 1.9rem;
	font-weight: bold;
	line-height: 1.4;
	padding-top: 0;
	float: left;
	width: 190px;
	color: #eaa38f;
}

.sec02 .sub03 .voice .v-ttl {
	width: 300px;
	padding-top: 3.4rem;
}

.sec02 .voice .txt {
  width: 86%;
	margin: 0 auto;
	margin-top: 1rem;
	line-height: 1.8;
}

.sec02 .voice .caption {
	color: #888;
  width: 86%;
	margin: 0 auto;	
	margin-top: 2rem;
}
.sec02 .voice .caption a {
	color: #888;
	display: inline-block;
}


.sec02 .blok03 .table {
	padding-left: 6rem;
	max-width: 1000px;
	margin-top: 3rem;
}

.sec02 .blok03 table {
	margin: 0;
	padding: 0;
	width: 100%;
}

.sec02 .blok03 td {
	width: 25%;
}

.sec02 .box02 .btn-web a {
	margin-top: -4rem;
}
	
@media screen and (max-width: 768px) {
  .sec02 {
    margin-top: 10rem;
    width: 100%;
  }
  .sec02 .sub {
    margin-bottom: 6rem;
  }
  .sec02 .ttl-box {
    max-width: 94%;
    margin: 0 auto;
  }

  .sec02 .ttl-box .ttl {
    font-size: 3.5rem;
    color: #71a5a6;
    padding-left: 7rem;
    position: relative;
  }


  .sec02 .sub01 .ttl-box .ttl:before{content: "";position: absolute;top: -8rem;display: inline-block;left: 0;margin: 0 auto;padding-right: 11rem;width: 60px;height: 188px;background: url(img/sec02-ttl-icon01.png) left center no-repeat;background-size: 60px auto;z-index: -1;}


  .sec02 .sub02 .ttl-box .ttl:before{
    content: "";
    position: absolute;
    top: -.5rem;
    display: inline-block;
    left: 0;
    margin: 0 auto;
    padding-right: 0;
    width: 130px;
    height: 103px;
    background: url("img/sec02-ttl-icon02.png") left center no-repeat;
    background-size: 130px 103px;
    z-index: -1;
  }	
  .sec02 .sub02 .ttl-box .ttl {
    font-size: 3.5rem;
    color: #71a5a6;
    padding-left: 14rem;
    position: relative;
    margin-bottom: 0;
  }


  .sec02 .sub03 .ttl-box .ttl:before{
    content: "";
    position: absolute;
    top: -2rem;
    display: inline-block;
    left: 0;
    margin: 0 auto;
    padding-right: 0;
    width: 100px;
    height: 136px;
    background: url("img/sec02-ttl-icon03.png") left center no-repeat;
    background-size: 100px auto;
    z-index: -1;
  }


  .sec02 .sub03 .ttl-box .ttl {
    font-size: 3.5rem;
    color: #71a5a6;
    padding-left: 11rem;
    position: relative;
    margin-bottom: 0;
  }


  .sec02 .box01 {
    width: 100%;
    margin-top: 0;
    position: relative;
    background: #d0ab87;
    padding-bottom: 3rem;
  }

  .sec02 .sub02 .box01 {
    width: 100%;
    margin-top: 0rem;
    position: relative;
    background: #d0ab87;
    padding-bottom: 3rem;
  }

    .sec02 .sub03 .box01 {
    width: 100%;
    margin-top: 0;
    position: relative;
    background: #d0ab87;
    padding-bottom: 3rem;
  }

  .sec02 .box01:before{
    content: "";
    width: 100%;
    position: absolute;
    height: 78.2%;
    display: block;
    background: #d0ab87;
    z-index: -1;
    display: none;
  }

  .sec02 .box01 .box-inner {
    max-width: 100%;
    margin: 0 auto;
  }	

    .sec02 .box01 .box-inner {
      width: 92%;
      margin: 0 auto;
      padding-top: 3rem;
    }
    .sec02 .box-inner .ttl {
      color: #fff;
      text-align: center;
      margin-bottom: 2rem;
      font-size: 2.4rem;
    }


  .sec02 .sub-ttl {
    font-size: 3.2rem;
    font-weight: bold;
    text-align: center;
    line-height: 1.1;
    margin-top: 2rem;
    transform: rotate( 0deg );
  }


  .sec02 .sub-ttl span {
    font-weight: bold;
  }

  .sec02 .sub-ttl .tx01{
    font-size: 4.5rem;
  }

  .sec02 .sub-ttl .tx02{
    font-size: 2.2rem;
  }

    .sec02 .sub-ttl .tx03{
    font-size: 2rem;
  }

  .sec02 .c-box .text-box {
    float: none;
    width: 100%;
    height: auto;
  }

  .sec02 .sub02 .c-box .text-box  {
    margin-top: 0; 
  }


  .sec02 .c-box .text-box .fea-box {
    background: #ffffff;
    padding: 2rem 2.4rem 2.4rem 2.4rem;
    height: auto;
    margin-top: 0;
  }


  .sec02 .c-box .text-box .fea-box .point {
    font-size: 2rem;
    position: relative;
    border-bottom: solid 1px #fff;
    padding-bottom: 1rem;
    font-weight: bold;
    margin-top: 1rem;
  }

  .sec02 .c-box .text-box .fea-box .point:after {
    position: absolute;
    content: "";
    display: block;
    border-bottom: solid 1px #6ba1a1;
    bottom: -1px;
    width: 10%;
  }
  .sec02 .c-box .text-box .fea-box ul {
    margin-top: 2rem;
  }
  .sec02 .c-box .text-box .fea-box li {
    margin: 0 0 1rem 0;
    padding: 0 0 0 2rem;
    font-size: 1.5rem;
    line-height: 1.8;
    position: relative;
  }
  .sec02 .c-box .text-box .fea-box li:last-child{
    margin: 0 0 0 0;
  }
  .sec02 .c-box .text-box .fea-box li::before {
    content: "";
    display: block;
    position: absolute;
    top: 9px;
    left: 0;
    width: 13px;
    height: 13px;
    /* background: #ffffff; */
    box-sizing: border-box;
    border-radius: 50%;
    border: 4px solid #6ba1a2;
  }

  .sec02 .btn-web a {
    width: 85%;
    margin-bottom: 2rem;
  }	
  .sec02 .btn-tel a {
    width: 85%;
    margin-top: 0;
  }		
.sec02 .box01 .box-inner .btn-web a {
    margin: 3rem auto 2rem;
}

  .sec02 .box02 {
    background: #f4d8cd;
    padding-top: 8rem;
    margin-top: 0;
    padding-bottom: 4rem;
  }


  .sec02 .box02 .box-inner {
    max-width: 100%;
    margin: 0 auto;
  }

  .sec02 .box02 .blok {
    position: relative;
    margin-bottom: 8rem;
  }


  .sec02 .box02 .bg-box {
    position: relative;
    width: 100%;
  }
  .sec02 .box02 .bg-txt {
    color: #f6ded5;
    font-size: 10rem;
    position: absolute;
    top: -8rem;
    left: 6%;
    width: 94%;

  }

  .sec02 .box02 .ttl {
    font-size: 2rem;
    background: #f1cabf;
    position: relative;
    color: #333;
    padding: 2rem 2rem 2rem 3rem;
    width: 90%;
    text-align: left;
  }
  .sec02 .sub01 .box02 .ttl-c , .sec02 .sub02 .box02 .ttl-c , .sec02 .sub03 .box02 .ttl-c{
    background: #f5ae83;
    padding: 2rem 10rem 2rem 3rem;
  }

  .sec02 .blok01 .p-erea {
    margin-left: 4rem;
    background: #6ba1a2;
    position: relative;
    margin-top: 3rem;
  }
  .sec02 .blok01 .p-erea p {
    padding-right:0;
  }
  .sec02 .blok01 .p-erea .txt {
    color: #fff;
    padding: 2rem 2rem;
    width: 80%;
    position: relative;
    z-index: 4;
  }


  .sec02 .sub01 .blok01 .icon {
    position: absolute;
    width: 90px;
    top: -3rem;
    right: 4vw;
    z-index: 2;
  }


  .sec02 .sub02 .blok01 .icon {
    position: absolute;
    width: 130px;
    top: -2rem;
    right: 0rem;
    z-index: 2;
  }

  .sec02 .sub03 .blok01 .icon {
    position: absolute;
    width: 130px;
    top: -3rem;
    right: 0rem;
    z-index: 2;
  }




  .sec02 .voice {
    display: block;
    margin-left: 4rem;
    justify-content: space-between;
    margin: auto;
    width: 90%;
  }

  .sec02 .voice .vo {
    background: #fff;
    width: 100%;
    padding-bottom: 2.5rem;
  }

  .sec02 .sub03 .voice .vo {
    background: #fff;
    width: 95%;
    padding-bottom: 2.5rem;

  }

  .sec02 .voice .vo-t {
    border-bottom: 2px solid #f1cabf;
    width: 84%;
    margin: 0 auto;
    margin-top: 1rem;
    padding-top: 1rem;
  }
  .sec02 .voice .vo-t .icon {
    float: left;
    width: 53px;
  }
  .sec02 .voice .vo-t .v-ttl {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.4;
    padding-top: 0.2rem;
    float: left;
    width: 190px;
    padding-left: 0.5rem;
    color: #eaa38f;
  }

  .sec02 .sub03 .voice .v-ttl {
    width: 190px;
    padding-top: 1.2rem;
  }

  .sec02 .voice .txt {
    width: 84%;
    margin: 0 auto;
    margin-top: 1rem;
    line-height: 1.8;
  }

  .sec02 .voice .caption {
    color: #888;
    width: 84%;
    margin: 0 auto;	
    margin-top: 2rem;
  }
  .sec02 .voice .caption a {
    color: #888;
    display: inline-block;
  }


  .sec02 .blok03 .table {
    padding-left: 0;
    max-width: 100%;
    /* margin: 3rem auto; */
    position: relative;
    z-index: 1;
  }

  .sec02 .blok03 table {
    margin: 0 auto;
    padding: 0;
    width: 90%;
  }

  .sec02 .blok03 td {
    width: 100%;
    display: block;
  }
  .sec02 .blok03 th {
    width: 100%;
    display: block;
  }

  .sec02 .box02 .btn-web a {
    margin-top: -4rem;
  }


}	


/*--------------------------------------
　sec03
---------------------------------------*/
.sec03 {
	margin-top: 20rem;
	width: 100%;
	margin-bottom: 10rem;
}
.sec03 .box {
	position: relative;
}
.sec03 .box .image {
	position: absolute;
	top: -7rem;
	width: 60%;
	right: 0;
}
.sec03 .box .image img{
  object-fit: cover;
  font-family: 'object-fit: cover';
  height: 500px;
}

.sec03 .box .text-box {
	position: relative;
	z-index: 1;
	height: auto;
	width: 100%;
}

.sec03 .box .text-box:before {
  content: "";
	background:rgba(100,163,163,0.9);
	width: 60%;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	padding-bottom: 8rem;
	display: block;
}
.sec03 .box .text-box .inner {
	max-width: 1000px;
	margin: 0 auto;
}

.sec03 .box .w-box {
	width: 55%;
	position: relative;
	z-index: 1;
	color: #fff;
}

.sec03 .box .w-box .sub-t {
	background: #f03f53;
	display: inline-block;
	text-align: center;
	font-size: 2.8rem;
	font-weight: bold;
	margin-top: -3rem;
	 -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
	padding: 1rem;
}

.sec03 .box .w-box .ttl {
	text-align: center;
	font-size: 3.8rem;
}


.sec03 .box .w-box .sub-txt {
	position: relative;
	font-size: 2.4rem;
	font-weight: bold;
	margin-top: 3rem;
	margin-bottom: 5.5rem;
}
.sec03 .box .w-box .sub-txt:before {
  content: "";
	width: 4rem;
	height: 1px;
	background: #fff;
	position: absolute;
	left: 0;
	bottom: -3rem;
	line-height: 1.5;
}


.sec03 .btn-web a {
	width: 70%;
	margin-top: 4rem;
}

@media screen and (max-width: 768px) {
  .sec03 {
    margin-top: 8rem;
    width: 100%;
    margin-bottom: 0;
    background: #ece6d7;
    padding-bottom: 2rem;
  }
  .sec03 .box {
    position: relative;
  }
  .sec03 .box .image {
    position:inherit;
    top: 0;
    width: 100%;
    right: 0;
  }
  .sec03 .box .image img{
    object-fit: cover;
    font-family: 'object-fit: cover';
    height:300px;
  }

  .sec03 .box .text-box {
    position: relative;
    z-index: 1;
    height: auto;
    width: 90%;
    background:rgba(100,163,163,0.9);
    margin: 0 auto;
    margin-top: -10rem;
    padding-bottom: 2rem;
  }

  .sec03 .box .text-box:before {
    content: "";
    background:rgba(100,163,163,0.9);
    width: 60%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    padding-bottom: 8rem;
    display: block;
    display: none;
  }
  .sec03 .box .text-box .inner {
    max-width: 90%;
    margin: 0 auto;
  }

  .sec03 .box .w-box {
    width: 100%;
    position: relative;
    z-index: 1;
    color: #fff;
  }

  .sec03 .box .w-box .sub-t {
    background: #f03f53;
    display: inline-block;
    text-align: center;
    font-size: 1.8rem;
    font-weight: bold;
    margin-top: -2rem;
     -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding: 1rem;
  }

  .sec03 .box .w-box .ttl {
    text-align: center;
    font-size: 2.4rem;
  }


  .sec03 .box .w-box .sub-txt {
    position: relative;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.4;
    margin-top: 2rem;
    margin-bottom: 4rem;
  }
  .sec03 .box .w-box .sub-txt:before {
    content: "";
    width: 3rem;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 0;
    bottom: -2rem;
    line-height: 1.5;
  }


  .sec03 .btn-web a {
    width: 86%;
    margin-top: 2rem;
  }
	
}
/*--------------------------------------
　sec04
---------------------------------------*/
.sec04 {
	margin-top: 20rem;
	width: 100%;
	position: relative;
}

.sec04 .ttl-box {
  width: 100%;
	position: relative;
}

.sec04 .ttl-box:before {
  content: "";
	background: #f1cabf;
	position: absolute;
	width: 50%;
	left: 0;
	height: 100%;
	z-index: -1;
}
.sec04 .ttl-box .ttl {
  max-width: 1000px;
	margin: 0 auto;
	font-size: 3.4rem;
  background: #f1cabf;
	padding: 3rem 0;
	position: relative;
	margin-bottom: 5rem;
} 
.sec04 .ttl-box .ttl a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 3rem;
	width: 16px;
	height: 16px;
	margin-top: -5px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.sec04 .inner{
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
}
.sec04 .inner:before {
  content: "";
  display: block;
	width: 1px;
	background: #333;
	height: 90%;
	position: absolute;
  z-index: -1;
	top: -10rem;
  left:3rem;	
}




.sec04 .item-box {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
}

.sec04 .item-box::after {
  display: block;
  content:"";
  width: 31.5%;
}

.sec04 .item-box .item {
	width: 31.5%;
	background: #f9f6f4;
	margin-bottom: 2.5rem;
	padding-bottom: 4rem;
}
.sec04 .item-box .i-ttl {
	width: 86%;
	margin: 0 auto;
	padding-top: 3rem;
	border-bottom: solid 1px #f1cabf;
	display: flex;
	align-items: center;
	padding-bottom: 1rem;
}
.sec04 .item-box .i-ttl a{
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 2.2rem;
  padding-right: 4rem;
  position: relative;
  text-align: left;
  width: 100%;
}

.sec04 .item-box .i-ttl a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 12px;
	height: 12px;
	margin-top: -5px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.sec04 .item-box .item span {
  font-size: 1.3rem;
  display: block;
	font-family: 'Noto Sans JP', sans-serif;
}


.sec04 .item-box .txt {
	width: 86%;
	margin: 0 auto;
	margin-top: 1.5rem;
}
.sec04 .item-box table {
	width: 86%;
	margin: 0 auto;
	margin-top: 2rem;
}
.sec04 .item-box th {
	width: 100%;
	display: block;
	border-left: none;
}
.sec04 .item-box td {
	width: 100%;
	display: block;
	border-left: none;
}
.sec04 .item-box tr:last-child td {
	border-bottom: none;
}


/*----- VIEW MORE -----*/
.sec04 .accordion_box {
  display: none;
}

.sec04 .accordion_all {
	background: #d0ab87;
	width: 470px;
	margin: 4rem auto 0;
	padding: 3rem 2rem;
	box-sizing: border-box;
	color: #fff;
	font-size: 1.5rem;
	text-align: center;
	border-radius: 100px;
	position: relative;
	cursor: pointer;
	box-shadow: 0 0 15px rgba(0,0, 0,0.2);
}

.sec04 .accordion_all:before , .sec04 .accordion_all:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 2.5rem;
	width: 18px;
	height: 2px;
	margin-top: -0.5px;
	background: #fff;
	transition: all 0.4s;
}
.sec04 .accordion_all:after {
	transform: rotate(90deg);
}
.sec04 .accordion_all.is-open:before{
  display: none;
}
.sec04 .accordion_all.is-open::after{
  transform: rotate(180deg);
}

@media screen and (max-width: 768px) {
  .sec04 {
    margin-top: 8rem;
    width: 100%;
    position: relative;
  }

  .sec04 .ttl-box {
    width: 95%;
    position: relative;
  }

  .sec04 .ttl-box:before {
    content: "";
    background: #f1cabf;
    position: absolute;
    width: 50%;
    left: 0;
    height: 100%;
    z-index: -1;
		display: none;
  }
  .sec04 .ttl-box .ttl {
    max-width: 100%;
    margin: 0 auto;
    font-size: 2.3rem;
    background: #f1cabf;
    padding: 2rem 3rem 2rem 2rem;
    position: relative;
    margin-bottom: 4rem;
  } 
  .sec04 .ttl-box .ttl a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2rem;
    width: 14px;
    height: 14px;
    margin-top: -5px;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }

  .sec04 .inner{
    position: relative;
    max-width: 100%;
    margin: 0 auto;
  }
  .sec04 .inner:before {
    content: "";
    display: block;
    width: 1px;
    background: #333;
    height: 90%;
    position: absolute;
    z-index: -1;
    top: -10rem;
    left:4rem;	
  }

  .sec04 .item-box {
   display: block;
   justify-content: space-between;
   flex-wrap: wrap;
		width: 90%;
		margin: 0 auto;
  }

  .sec04 .item-box::after {
    display: block;
    content:"";
    width: 100%;
  }

  .sec04 .item-box .item {
    width: 100%;
    background: #f9f6f4;
    margin-bottom: 2.5rem;
    padding-bottom: 4rem;
  }

  .sec04 .item-box .i-ttl {
    width: 86%;
    margin: 0 auto;
    padding-top: 3rem;
    border-bottom: solid 1px #f1cabf;
    display: block;
    align-items: center;
    padding-bottom: 1rem;
  }
  .sec04 .item-box .i-ttl a{
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.8rem;
    padding-right: 4rem;
    position: relative;
    text-align: left;
    width: 85%;
  }

  .sec04 .item-box .i-ttl a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 10px;
    height: 10px;
    margin-top: -5px;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }
	.sec04 .item-box .item span {
		font-size: 1.2rem;
	}
	
  .sec04 .item-box .txt {
    width: 86%;
    margin: 0 auto;
    margin-top: 1.5rem;
  }
  .sec04 .item-box table {
    width: 86%;
    margin: 0 auto;
    margin-top: 2rem;
  }
  .sec04 .item-box th {
    width: 100%;
    display: block;
  }
  .sec04 .item-box td {
    width: 100%;
    display: block;
  }


  /*----- VIEW MORE -----*/
  .sec04 .accordion_box {
    display: none;
  }

  .sec04 .accordion_all {
    background: #d0ab87;
    width: 80%;
    margin: 4rem auto 0;
    padding: 2rem 2rem;
    box-sizing: border-box;
    color: #fff;
    font-size: 1.5rem;
    text-align: center;
    border-radius: 100px;
    position: relative;
    cursor: pointer;
    box-shadow: 0 0 15px rgba(0,0, 0,0.2);
  }

  .sec04 .accordion_all:before , .sec04 .accordion_all:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2.5rem;
    width: 18px;
    height: 2px;
    margin-top: -0.5px;
    background: #fff;
    transition: all 0.4s;
  }
  .sec04 .accordion_all:after {
    transform: rotate(90deg);
  }
  .sec04 .accordion_all.is-open:before{
    display: none;
  }
  .sec04 .accordion_all.is-open::after{
    transform: rotate(180deg);
  }
	
}






/*--------------------------------------
　sec05
---------------------------------------*/
.sec05 {
	margin-top:13rem;
	width: 100%;
	position: relative;
}

.sec05 .ttl-box {
  width: 100%;
	position: relative;
		z-index: 2;
}

.sec05 .ttl-box:before {
  content: "";
	background: #f1cabf;
	position: absolute;
	width: 50%;
	left: 0;
	height: 100%;
	
}
.sec05 .ttl-box .ttl {
  max-width: 1000px;
	margin: 0 auto;
	font-size: 3.4rem;
  background: #f1cabf;
	padding: 3rem 0;
	position: relative;
} 
.sec05 .ttl-box .ttl a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 3rem;
	width: 16px;
	height: 16px;
	margin-top: -5px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.sec05 .box {
	background: #fcf2ee;
	width: 100%;
	position: relative;
	z-index: 1;
	padding-top: 8rem;
	padding-bottom: 10rem;
	margin-top: -5rem;
}

.sec05 .inner{
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
}
.sec05 .inner:before {
  content: "";
  display: block;
	width: 1px;
	background: #333;
	height: 90%;
	position: absolute;
  z-index: -1;
	top: -10rem;
  left:3rem;	
}

.sec05 .inner .m-txt {
	margin-left: 7rem;
}

.sec05 .item-box {
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
	margin-top: 3rem;
}

.sec05 .item-box::after {
  display: block;
  content:"";
  width: 490px;
}

.sec05 .item-box .item {
	width: 490px;
	background: #fff;
	margin-bottom: 2.5rem;
	padding-bottom: 4rem;
	position: relative;
}
.sec05 .item-box .item:before {
  content: "";
  display: block;
	width: 70px;
	background: #f1cabf;
	height: 2px;
	position: absolute;
	top: 0;
  left:0;
	right: 0;
	margin: 0 auto;
}



.sec05 .item-box .i-ttl {
	width: 90%;
	margin: 0 auto;
	padding-top: 3rem;
	border-bottom: solid 1px #f1cabf;
	padding-bottom: 2rem;
}
.sec05 .item-box .i-ttl a{
  font-family: 'Noto Sans JP', sans-serif;
	font-size: 2.2rem;
	padding-right: 4rem;
	position: relative;
	text-align: left;
}

.sec05 .item-box .i-ttl a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 12px;
	height: 12px;
	margin-top: -5px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}


.sec05 .item-box .txt {
	width: 90%;
	margin: 0 auto;
	margin-top: 1.5rem;
}

@media screen and (max-width: 768px){
  .sec05 {
    margin-top:8rem;
    width: 100%;
    position: relative;
  }

  .sec05 .ttl-box {
    width: 95%;
    position: relative;
    z-index: 2;
  }

  .sec05 .ttl-box:before {
    content: "";
    background: #f1cabf;
    position: absolute;
    width: 50%;
    left: 0;
    height: 100%;
    display: none;

  }


    .sec05 .ttl-box .ttl {
      max-width: 100%;
      margin: 0 auto;
      font-size: 2.3rem;
      background: #f1cabf;
      padding: 2rem 3rem 2rem 2rem;
      position: relative;
      margin-bottom: 4rem;
    } 
    .sec05 .ttl-box .ttl a:after {
      content: "";
      position: absolute;
      top: 50%;
      right: 2rem;
      width: 14px;
      height: 14px;
      margin-top: -5px;
      border-top: solid 2px #333;
      border-right: solid 2px #333;
      -webkit-transform: rotate(45deg);
      transform: rotate(45deg);
    }


  .sec05 .box {
    background: #fcf2ee;
    width: 100%;
    position: relative;
    z-index: 1;
    padding-top: 5.5rem;
    padding-bottom: 5rem;
    margin-top: -8rem;
  }

  .sec05 .inner{
    position: relative;
    max-width: 100%;
    margin: 0 auto;
  }
  .sec05 .inner:before {
    content: "";
    display: block;
    width: 1px;
    background: #333;
    height: 90%;
    position: absolute;
    z-index: -1;
    top: -10rem;
    left:3rem;	
  }

  .sec05 .inner .m-txt {
    margin-left: 5rem;
    width: 80%;
  }

  .sec05 .item-box {
   display: block;
   justify-content: space-between;
   flex-wrap: wrap;
    margin-top: 3rem;
  }

  .sec05 .item-box::after {
    display: block;
    content:"";
    width: 90%;
  }

  .sec05 .item-box .item {
    width: 90%;
    background: #fff;
    margin: 0 auto;
    margin-bottom: 2rem;
    padding-bottom: 3rem;
    position: relative;
  }
  .sec05 .item-box .item:before {
    content: "";
    display: block;
    width: 50px;
    background: #f1cabf;
    height: 3px;
    position: absolute;
    top: 0;
    left:0;
    right: 0;
    margin: 0 auto;
  }



  .sec05 .item-box .i-ttl {
    width: 84%;
    margin: 0 auto;
    padding-top: 2.5rem;
    border-bottom: solid 1px #f1cabf;
    padding-bottom: 1.5rem;
  }
  .sec05 .item-box .i-ttl a{
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.8rem;
    padding-right: 3rem;
    position: relative;
    text-align: left;
  }

  .sec05 .item-box .i-ttl a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    width: 10px;
    height: 10px;
    margin-top: -4px;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }


  .sec05 .item-box .txt {
    width: 84%;
    margin: 0 auto;
    margin-top: 1.5rem;
  }	
}
/*--------------------------------------
　sec06
---------------------------------------*/
.sec06 {
	margin-top:16rem;
	width: 100%;
	position: relative;
}

.sec06 .ttl-box {
  width: 100%;
	position: relative;
		z-index: 2;
}

.sec06 .ttl-box:before {
  content: "";
	background: #f1cabf;
	position: absolute;
	width: 50%;
	left: 0;
	height: 100%;
	
}
.sec06 .ttl-box .ttl {
  max-width: 1000px;
	margin: 0 auto;
	font-size: 3.4rem;
  background: #f1cabf;
	padding: 3rem 0;
	position: relative;
} 
.sec06 .ttl-box .ttl a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 3rem;
	width: 16px;
	height: 16px;
	margin-top: -5px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.sec06 .txt-box {
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
}

.sec06 .txt-box:before {
  content: "";
  display: block;
	width: 1px;
	background: #333;
	height: 110%;
	position: absolute;
  z-index: -1;
	top: 0;
  left:3rem;	
}
.sec06 .txt-box .m-txt {
	margin-left: 7rem;
	padding-top: 4rem;
	padding-bottom: 4rem;
}



.sec06 .i-box .image-box {
	max-width: 1000px;
	margin: 0 auto;
	position: relative;
}
.sec06 .i-box .image {
	width: 343px;
	position: absolute;
	left: 0;
	z-index: 3;
}



.sec06 .i-boxr .image  {
	width: 343px;
	position: absolute;
	right:0;
	left: inherit;
	z-index: 3;
}




.sec06 .i-box .r-txt-box {
	width: 100%;
	position: relative;
	z-index: 2;
	
}

.sec06 .i-box .r-txt-box:before {
  content: "";
	background: #f4ebe7;
	position: absolute;
	width: 50%;
	z-index: -1;
	right: 0;
	height: 100%;
}
.sec06 .i-boxr .r-txt-box:before {
  content: "";
	background: #f3d8cc;
	position: absolute;
	width: 50%;
	z-index: -1;
	right: 0;
	left: 0;
	height: 100%;
}


.sec06 .i-box .r-txt-box .box {
	max-width: 1000px;
	margin: 0 auto;
	height: 259px;
	background: #f4ebe7;
}


.sec06 .i-boxr .r-txt-box .box {
	max-width: 1000px;
	margin: 0 auto;
	height: 259px;
	background: #f3d8cc;
}

.sec06 .i-box .r-txt-box .box .t-box {
  margin-left: 38rem;
	padding: 4rem 0 0 0;
}
.sec06 .i-boxr .r-txt-box .box .t-box {
  margin-left: 0;
	 margin-right: 38rem;
	padding: 4rem 0 0 0;
}

.sec06 .i-box .r-txt-box .box .t-box h3 a {
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 2.4rem;
	font-weight: bold;
	position: relative;
	margin-bottom: 3rem;
}
.sec06 .i-box .r-txt-box .box .t-box h3 a:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 3rem;
	width: 14px;
	height: 14px;
	margin-top: -6px;
	border-top: solid 2px #333;
	border-right: solid 2px #333;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

@media screen and (max-width: 768px) {
  .sec06 {
    margin-top:8rem;
    width: 100%;
    position: relative;
  }


    .sec06 .ttl-box {
      width: 95%;
      position: relative;
      z-index: 2;
    }

    .sec06 .ttl-box:before {
      content: "";
      background: #f1cabf;
      position: absolute;
      width: 50%;
      left: 0;
      height: 100%;
      display: none;

    }


      .sec06 .ttl-box .ttl {
        max-width: 100%;
        margin: 0 auto;
        font-size: 2.3rem;
        background: #f1cabf;
        padding: 2rem 3rem 2rem 2rem;
        position: relative;
        margin-bottom: 0;
      } 
      .sec06 .ttl-box .ttl a:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 2rem;
        width: 14px;
        height: 14px;
        margin-top: -5px;
        border-top: solid 2px #333;
        border-right: solid 2px #333;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
      }	




  .sec06 .txt-box {
    position: relative;
    max-width: 100%;
    margin: 0 auto;
  }

  .sec06 .txt-box:before {
    content: "";
    display: block;
    width: 1px;
    background: #333;
    height: 110%;
    position: absolute;
    z-index: -1;
    top: 0;
    left:3rem;	
  }
  .sec06 .txt-box .m-txt {
    margin-left: 5rem;
    padding-top: 1.5rem;
    padding-bottom: 2rem;
    width: 80%;
  }



  .sec06 .i-box .image-box {
    max-width: 90%;
    margin: 0 auto;
    position: relative;
  }
  .sec06 .i-box .image {
    width: 100%;
    position: inherit;
    left: 0;
    z-index: 3;
  }



  .sec06 .i-boxr .image  {
    width: 100%;
    position: inherit;
    right:0;
    left: inherit;
    z-index: 3;
  }




  .sec06 .i-box .r-txt-box {
    width: 100%;
    position: relative;
    z-index: 2;

  }

  .sec06 .i-box .r-txt-box:before {
    content: "";
    background: #f4ebe7;
    position: absolute;
    width: 50%;
    z-index: -1;
    right: 0;
    height: 100%;
    display: none;
  }
  .sec06 .i-boxr .r-txt-box:before {
    content: "";
    background: #f3d8cc;
    position: absolute;
    width: 50%;
    z-index: -1;
    right: 0;
    left: 0;
    height: 100%;
    display: none;
  }


  .sec06 .i-box .r-txt-box .box {
    max-width: 90%;
    margin: 0 auto;
    height: auto;
    background: #f4ebe7;

  }


  .sec06 .i-boxr .r-txt-box .box {
    max-width: 90%;
    margin: 0 auto;
    height: auto;
    background: #f3d8cc;
  }

  .sec06 .i-box .r-txt-box .box .t-box {
    margin-left: 0;
    padding: 2rem 2rem 3rem 2rem;
  }
  .sec06 .i-boxr .r-txt-box .box .t-box {
    margin-left: 0;
    margin-right: 0;
    padding: 2rem 2rem 3rem 2rem;
  }

  .sec06 .i-box .r-txt-box .box .t-box h3 a {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 1.8rem;
    font-weight: bold;
    position: relative;
    margin-bottom: 1rem;
  }
  .sec06 .i-box .r-txt-box .box .t-box h3 a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0rem;
    width: 9px;
    height: 9px;
    margin-top: -4px;
    border-top: solid 2px #333;
    border-right: solid 2px #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
  }	
}

/*--------------------------------------
　sec07
---------------------------------------*/
.sec07 {
	margin-top: 23rem;
	width: 100%;
	margin-bottom: 25rem;
}
.sec07 .box {
	position: relative;
}

.sec07 .box .image-box {
	position: absolute;
	top: -7rem;
	width: 50%;
	left:0;
		z-index: 2;
}
.sec07 .box .image {
  position: relative;
}
.sec07 .box .image img{
  object-fit: cover;
  font-family: 'object-fit: cover';
  height: 470px;
}
.sec07 .box .img-txt {
	position: absolute;
	bottom: 0;
	color: #fff;
	width: 100%;
	z-index: 1;
	text-align: right;
	background:rgba(0,0, 0,0.5);
	padding: 2rem 0;
}
.sec07 .box .img-txt .f-eng {
	font-size: 3rem;
	padding-right: 5rem;
}
.sec07 .box .img-txt .ttl {
	padding-right: 5rem;
	font-size: 3rem;
}

.sec07 .box .text-box {
	position: relative;

	height: auto;
	width: 100%;
}

.sec07 .box .text-box:before {
  content: "";
	background:#6ba2a2;
	width: 80%;
	height: 100%;
	position: absolute;
	right: 0;
	top: 0;
	padding-bottom: 8rem;
	display: block;
}
.sec07 .box .text-box .inner {
	max-width: 1000px;
	margin: 0 auto;
}

.sec07 .box .w-box {
	width: 45%;
	position: relative;
	z-index: 1;
	color: #fff;
	margin-left: 55%;
}


.sec07 .box .w-box .sub-txt {
	position: relative;
	font-size: 2.4rem;
	font-weight: bold;
	margin-top: 3rem;
	margin-bottom: 5.5rem;
	line-height: 1.5;
	padding-top: 5rem;
}
.sec07 .box .w-box .sub-txt:before {
  content: "";
	width: 3rem;
	height: 1px;
	background: #fff;
	position: absolute;
	left: 0;
	bottom: -2.6rem;
	line-height: 1.5;
}
.sec07 .btn-web a {
	width: 80%;
	margin-top: 4rem;
}

@media screen and (max-width: 768px){
  .sec07 {
    margin-top: 9rem;
    width: 100%;
    margin-bottom: 8rem;
  }
  .sec07 .box {
    position: relative;
  }

  .sec07 .box .image-box {
    position: inherit;
    top: 0;
    width: 90%;
    left:0;
    z-index: 2;
    margin: 0 auto;
  }
  .sec07 .box .image {
    position: relative;
  }
  .sec07 .box .image img{
    object-fit: cover;
    font-family: 'object-fit: cover';
    height: 300px;
  }
  .sec07 .box .img-txt {
    position: absolute;
    bottom: 0;
    color: #fff;
    width: 100%;
    z-index: 1;
    text-align: right;
    background:rgba(0,0, 0,0.5);
    padding: 1.5rem 0;
  }
  .sec07 .box .img-txt .f-eng {
    font-size: 2rem;
    padding-right: 3rem;
  }
  .sec07 .box .img-txt .ttl {
    padding-right: 3rem;
    font-size: 2.2rem;
  }

  .sec07 .box .text-box {
    position: relative;
    height: auto;
    width: 100%;
    background:#6ba2a2;
    padding-top: 20rem;
    padding-bottom: 3rem;
    margin-top: -22rem;
  }

  .sec07 .box .text-box:before {
    content: "";
    background:#6ba2a2;
    width: 80%;
    height: 100%;
    position: absolute;
    right: 0;
    top: 0;
    padding-bottom: 8rem;
    display: none;
  }
  .sec07 .box .text-box .inner {
    max-width: 90%;
    margin: 0 auto;
  }

  .sec07 .box .w-box {
    width: 100%;
    position: relative;
    z-index: 1;
    color: #fff;
    margin-left: 0;
  }


  .sec07 .box .w-box .sub-txt {
    position: relative;
    font-size: 1.8rem;
    font-weight: bold;
    margin-top: 1rem;
    margin-bottom: 3.3rem;
    line-height: 1.5;
    padding-top: 2.4rem;
  }
  .sec07 .box .w-box .sub-txt:before {
    content: "";
    width: 3rem;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 0;
    bottom: -1.5rem;
    line-height: 1.5;
  }
  .sec07 .btn-web a {
    width: 85%;
    margin-top: 2rem;
  }	



.sec02 .caption {
    color: #fff;
    padding: 0 1rem 1rem;
}
.sec02 .caption a {
    display: inline-block;
    color: #fff;
}


  
}
