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

/*--------------------------------------------------------
　基本設定
--------------------------------------------------------*/

footer nav ul li:nth-child(12) a::before{
    width: 100%;
    content: '';
}

footer {
	margin-top: 0;
}

/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 751px){
	
	#main_vl {
        width: 100%;
		height: 39vw;
		max-height: 500px;
		overflow: hidden;
        line-height: 0;
        position: relative;
    }
	
	#main_vl img{
        object-fit: cover;
		object-position: center;
    }section {
		width: 100%;
		position: relative;
		padding-top: 60px;
	}
	
	section h2.page_title span{
		display: inline-block;
		position: relative;
	}
	
	section h2.page_title span span.leaf{
		width: 115px;
		position: absolute;
		left: -245px;
		bottom: -10px;
		z-index: -1;
	}
	
	ul.box_r,
	ul.box_l{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		list-style: none;
		font-family: ten-mincho-text, serif;
		margin-top: 120px;
	}
	
	ul.box_l{
		flex-direction: row-reverse;
	}
	
	ul.box_r li,
	ul.box_l li{
		width: 48%;
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	ul.box_l li{
		justify-content: flex-end;
		align-items: flex-start;
	}
	
	ul.box_r li div.box_inner,
	ul.box_l li div.box_inner{
		/*width: 98%;*/
		text-align: left;
	}
	
	ul.box_r li div.box_inner h4,
	ul.box_l li div.box_inner h4{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		align-items: center;
		font-family: ten-mincho-text, serif;
		margin-bottom: 15px;
	}
	
	ul.box_r li div.box_inner h4 span.num,
	ul.box_l li div.box_inner h4 span.num{
		width: 92px;
	}
	
	ul.box_r li div.box_inner h4 span.text,
	ul.box_l li div.box_inner h4 span.text{
		font-size: 28px;
        font-size: 2.8rem;
		line-height: 1.5;
		width: -webkit-calc(98% - 92px);
		width: -moz-calc(98% - 92px);
		width: calc(98% - 92px);
	}
	
	ul.box_l li div.box_inner h4 span.text{
		width: auto;
		margin-left: 2%;
		display: inline-block;
	}
	
	ul.box_r li div.box_inner p,
	ul.box_l li div.box_inner p{
		line-height: 2;
	}
	
	ul.box_l li div.box_inner p{
		text-align: left;
	}
	
	div.box03{
		margin-top: 120px!important;
		overflow: hidden;
	}
	
	div.box03 h4{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		align-items: center;
		font-family: ten-mincho-text, serif;
		margin-bottom: 20px;
	}
	
	div.box03 h4 span.num{
		width: 92px;
	}
	
	div.box03 h4 span.text{
		font-size: 28px;
        font-size: 2.8rem;
		line-height: 1.5;
		width: -webkit-calc(98% - 92px);
		width: -moz-calc(98% - 92px);
		width: calc(98% - 92px);
	}
	
	div.box03 h4 span.text{
		width: auto;
		margin-left: 2%;
	}
	
	div.box03 div.box_inner{
		width: 700px;
		float: right;
		overflow: hidden;
	}
	
	div.box03 div.box_inner ul{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: row-reverse;
		list-style: none;
	}
	
	div.box03 div.box_inner ul li{
		width: 50%;
		font-family: ten-mincho-text, serif;
		line-height: 2;
	}
	
	div.box03 div.box_inner ul li:first-child{
		width: 48%;
	}
	
	div.box04{
		margin-top: 120px!important;
	}
	
	div.box04 ul.text_box{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		align-items: center;
		list-style: none;
		font-family: ten-mincho-text, serif;
		margin-bottom: 30px;
	}
	
	div.box04 ul.text_box li:first-child{
		width: 190px;
	}
	
	div.box04 ul.text_box li:last-child{
		width: -webkit-calc(100% - 200px);
		width: -moz-calc(100% - 200px);
		width: calc(100% - 200px);
	}
	
	div.box04 h4{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		align-items: center;
		font-family: ten-mincho-text, serif;
	}
	
	div.box04 h4 span.num{
		width: 92px;
	}
	
	div.box04 h4 span.text{
		font-size: 28px;
        font-size: 2.8rem;
		line-height: 1.5;
		width: -webkit-calc(98% - 92px);
		width: -moz-calc(98% - 92px);
		width: calc(98% - 92px);
	}
	
	div.box04 h4 span.text{
		width: auto;
		margin-left: 2%;
	}
	
	div.box04 ul.photo_box{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		list-style: none;
	}
	
	div.box04 ul.photo_box li{
		width: 48.5%;
		margin-bottom: 2.4%;
	}
	
	ul.box05 div.box_inner{
		min-width: 90%;
	}
	
	div.block02 {
		width: 680px;
		margin: 120px auto 0;
	}
	
	div.block02 {
		width: 640px;
		margin: 120px auto 0;
	}
	
	div.block02 ul{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		list-style: none;
	}
	
	div.block02 ul li:first-child{
		width: 54%;
	}
	
	div.block02 ul li:last-child{
		width: 40%;
	}
	
	div.block02 h4{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		align-items: center;
		font-family: ten-mincho-text, serif;
		margin-bottom: 20px;
	}
	
	div.block02 h4 span.num{
		width: 92px;
	}
	
	div.block02 h4 span.text{
		font-size: 28px;
        font-size: 2.8rem;
		line-height: 1.5;
		width: -webkit-calc(98% - 92px);
		width: -moz-calc(98% - 92px);
		width: calc(98% - 92px);
	}
	
	div.block02 h4 span.text{
		width: auto;
		margin-left: 4%;
	}
	
	div.block02 p{
		line-height: 2;
		font-family: ten-mincho-text, serif;
	}
	

	div.info_box {
		width: 100%;
		margin-top: 100px;
		background: #F6F4F2;
		line-height: 0;
		padding: 80px 0;
	}
	
	div.info_box section{
		padding-top: 0;
	}
	
	div.info_box section h2{
		margin-bottom: 55px!important;
	}
	
	div.info_box ul{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		list-style: none;
		line-height: 1.8;
	}
	
	div.info_box ul li{
		width: 44%;
		margin-bottom: 60px;
	}
	
	div.info_box ul li:nth-child(3),
	div.info_box ul li:last-child{
		margin-bottom: 0;
	}
	
	div.info_box ul li h6{
		font-size: 18px;
        font-size: 1.8rem;
		line-height: 1.5;
		font-family: ten-mincho-text, serif;
		text-indent: -1.5em;
		padding-left: 1.5em;
		margin-bottom: 8px;
	}
	
	div.info_box ul li p{
		font-size: 12px;
        font-size: 1.2rem;
		font-family: ten-mincho-text, serif;
	}
	
}

/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media screen and (max-width: 750px){
	
	#main_vl {
        width: 100%;
        line-height: 0;
        position: relative;
    }
	
	section {
		width: 100%;
		position: relative;
		padding-top: 5.4vw;
	}

    section h2.page_title span{
		display: inline-block;
		position: relative;
	}
	
	section h2.page_title span span.leaf{
		width: 70px;
		position: absolute;
		left: -140px;
		bottom: -5px;
		z-index: -1;
	}
	
	ul.box_r,
	ul.box_l{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		list-style: none;
		font-family: ten-mincho-text, serif;
		margin-top: 70px;
		flex-direction: column-reverse;
	}
	
	ul.box_l{
		flex-direction: column-reverse;
	}
	
	ul.box_r li,
	ul.box_l li{
		width: 92%;
		margin: 0 auto;
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	ul.box_r li:first-child,
	ul.box_l li:first-child{
		width: 90%;
		max-width: 600px;
		margin: 0 auto;
	}
	
	ul.box_r li:last-child,
	ul.box_l li:last-child{
		margin-bottom: 20px;
	}
	
	ul.box_l li{
		justify-content: flex-end;
		align-items: flex-start;
	}
	
	ul.box_r li div.box_inner,
	ul.box_l li div.box_inner{
		width: 100%;
		text-align: left;
	}
	
	ul.box_r li div.box_inner h4,
	ul.box_l li div.box_inner h4{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		align-items: center;
		font-family: ten-mincho-text, serif;
		margin-bottom: 10px;
	}
	
	ul.box_r li div.box_inner h4 span.num,
	ul.box_l li div.box_inner h4 span.num{
		width: 70px;
	}
	
	ul.box_r li div.box_inner h4 span.text,
	ul.box_l li div.box_inner h4 span.text{
		font-size: 18px;
        font-size: 1.8rem;
		line-height: 1.5;
		width: -webkit-calc(98% - 70px);
		width: -moz-calc(98% - 70px);
		width: calc(98% - 70px);
	}
	
	ul.box_l li div.box_inner h4 span.text{
		width: auto;
		margin-left: 2%;
		display: inline-block;
	}
	
	ul.box_r li div.box_inner p,
	ul.box_l li div.box_inner p{
		line-height: 2;
		font-size: 14px;
        font-size: 1.4rem;
	}
	
	div.box03{
		margin-top: 80px!important;
		overflow: hidden;
	}
	
	div.box03 h4{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: center;
		align-items: center;
		font-family: ten-mincho-text, serif;
		margin-bottom: 15px;
	}
	
	div.box03 h4 span.num{
		width: 70px;
	}
	
	div.box03 h4 span.text{
		font-size: 18px;
        font-size: 1.8rem;
		line-height: 1.5;
		width: -webkit-calc(98% - 70px);
		width: -moz-calc(98% - 70px);
		width: calc(98% - 70px);
	}
	
	div.box03 h4 span.text{
		width: auto;
		margin-left: 2%;
	}
	
	div.box03 div.box_inner{
		width: 100%;
		float: right;
		overflow: hidden;
	}
	
	div.box03 div.box_inner ul{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		align-items: flex-start;
		flex-direction: row-reverse;
		list-style: none;
	}
	
	div.box03 div.box_inner ul li{
		width: 100%;
		font-family: ten-mincho-text, serif;
		line-height: 2;
		font-size: 14px;
        font-size: 1.4rem;
	}
	
	div.box03 div.box_inner ul li:first-child{
		width: 90%;
		max-width: 500px;
		margin: 0 auto;
		margin-bottom: 15px;
	}
	
	div.box04{
		margin-top: 80px!important;
	}
	
	div.box04 ul.text_box{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		align-items: center;
		list-style: none;
		font-family: ten-mincho-text, serif;
		margin-bottom: 30px;
	}
	
	div.box04 ul.text_box li:first-child{
		width: 190px;
		margin-bottom: 15px;
	}
	
	div.box04 ul.text_box li:last-child{
		width: 100%;
		line-height: 2;
		font-size: 14px;
        font-size: 1.4rem;
	}
	
	div.box04 h4{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		align-items: center;
		font-family: ten-mincho-text, serif;
	}
	
	div.box04 h4 span.num{
		width: 70px;
	}
	
	div.box04 h4 span.text{
		font-size: 18px;
        font-size: 1.8rem;
		line-height: 1.5;
		width: -webkit-calc(98% - 70px);
		width: -moz-calc(98% - 70px);
		width: calc(98% - 70px);
	}
	
	div.box04 h4 span.text{
		width: auto;
		margin-left: 2%;
	}
	
	div.box04 ul.photo_box{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		list-style: none;
	}
	
	div.box04 ul.photo_box li{
		width: 48.5%;
		margin-bottom: 2.4%;
	}
	
	ul.box05 {
		flex-direction: column-reverse;
	}
	
	ul.box05 li:last-child{
		margin-bottom: 20px;
	}
	
	div.block02 {
		width: 92%;
		margin: 80px auto 0;
	}
	
	div.block02 ul{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		list-style: none;
	}
	
	div.block02 ul li:first-child{
		width: 100%;
		margin-bottom: 15px;
	}
	
	div.block02 ul li:last-child{
		width: 90%;
		max-width: 400px;
		margin: 0 auto;
	}
	
	div.block02 h4{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: flex-start;
		align-items: center;
		font-family: ten-mincho-text, serif;
		margin-bottom: 20px;
	}
	
	div.block02 h4 span.num{
		width: 70px;
	}
	
	div.block02 h4 span.text{
		font-size: 18px;
        font-size: 1.8rem;
		line-height: 1.5;
		width: -webkit-calc(98% - 70px);
		width: -moz-calc(98% - 70px);
		width: calc(98% - 70px);
	}
	
	div.block02 h4 span.text{
		width: auto;
		margin-left: 4%;
	}
	
	div.block02 p{
		font-size: 14px;
        font-size: 1.4rem;
		line-height: 2;
		font-family: ten-mincho-text, serif;
	}
	
	div.info_box {
		width: 100%;
		margin-top: 80px;
		background: #F6F4F2;
		line-height: 0;
		padding: 40px 0;
	}
	
	div.info_box section{
		padding-top: 0;
	}
	
	div.info_box section h2{
		margin-bottom: 40px!important;
	}
	
	div.info_box ul{
		width: 100%;
		display: flex;
		flex-wrap:wrap;
		justify-content: space-between;
		list-style: none;
		line-height: 1.8;
	}
	
	div.info_box ul li{
		width: 100%;
		margin-bottom: 25px;
	}
	
	
	div.info_box ul li h6{
		font-size: 16px;
        font-size: 1.6rem;
		line-height: 1.5;
		font-family: ten-mincho-text, serif;
		text-indent: -1.5em;
		padding-left: 1.5em;
		margin-bottom: 8px;
	}
	
	div.info_box ul li p{
		font-size: 13px;
        font-size: 1.3rem;
		font-family: ten-mincho-text, serif;
	}
	
	
}


@media screen and (max-width: 420px){
	
	section h2.page_title span span.leaf{
		width: 70px;
		position: absolute;
		left: -90px;
		bottom: -10px;
		z-index: -1;
	}
}

