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

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


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

@media print, screen and (min-width: 961px){
	
	article div#page_title {
		margin-bottom: 100px;
	}
	
	/*インデックス*/
	
	section.contents {
		width: 82.2%;
		max-width: 1184px;
		margin: 0 auto;
		overflow: hidden;
		border-radius: 20px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		line-height: 0;
		box-shadow: 0 0 0.55vw #999999;
	}
	
	section.contents + section.contents{
		margin-top: 52px;
	}
	
	section.contents:last-of-type{
		margin-bottom: 4vw;
	}
	
	section.contents div.photo_box{
		width: 45.4%;
	}
	
	section.contents div.photo_box{
		height: 100%;
		object-fit: cover;
	}
	
	section.contents div.text_box{
		width: 49.8%;
		padding-right: 5.8%;
		position: relative;
	}
	
	section.contents div.text_box h3{
		width: 50%;
		font-size: 2.8rem;
		font-size: clamp(1.86rem, 1.94vw, 2.8rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.1em;
		color: #FFF;
		text-align: center;
		background: #f29020;
		padding: 0.3em 0 0.4em;
		margin-bottom: 1em;
	}
	
	section.contents div.text_box h4{
		font-size: 1.6rem;
		font-size: clamp(1.06rem, 1.11vw, 1.6rem);
		font-weight: 700;
		line-height: 1.8;
		letter-spacing: 0.06em;
		margin-bottom: 0.75em;
	}
	
	section.contents div.text_box p{
		font-size: 1.4rem;
		font-size: clamp(0.93rem, 0.97vw, 1.4rem);
		line-height: 2;
		letter-spacing: 0.06em;
		margin-bottom: 1em;
	}
	
	section.contents div.text_box div.nav_box {
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
		position: absolute;
		bottom: 8%;
		left: 0;
	}
	
	section.contents div.text_box div.nav_box div.photo{
		width: 14.4%;
	}
	
	section.contents div.text_box div.nav_box div.text{
		width: 72%;
		margin-left: 3%;
	}
	
	section.contents div.text_box div.nav_box div.text h5{
		font-size: 1.6rem;
		font-size: clamp(1.06rem, 1.11vw, 1.6rem);
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0.06em;
		margin-bottom: 0.5em;
	}
	
	section.contents div.text_box div.nav_box div.text p{
		font-size: 1.4rem;
		font-size: clamp(0.93rem, 0.97vw, 1.4rem);
		font-weight: 400;
		line-height: 1.7;
		letter-spacing: 0.1em;
	}
	
	section.contents div.text_box div.nav_box div.text p a{
		color: #898989;
	}
	
	section.contents div.text_box div.nav_box div.text p span{
		display: inline-block;
		text-decoration: underline;
	}
	
	section.contents div.text_box div.nav_box div.text p a:hover span{
		text-decoration: none;
	}
	
	section.contents div.text_box div.nav_box div.text p span::after{
		content: "";
		width: 1.3em;
		height: 0.4em;
		display: inline-block;
		background: url("../images/common/arrow_b.svg") no-repeat;
		background-size: contain;
		background-position: center;
		margin-left: 0.3em;
	}
	
	
	/*下層*/
	article div#page_title.people {
		margin-bottom: 180px;
	}
	
	article div#page_title.people h2 {
		width: 56.94%;
		max-width: 820px;
		line-height: 0;
		left: 6%;
		bottom: -1.1em;
	}
	
	article section + section {
		margin-top: 110px;
	}
	
	article section div.section_inner {
		width: 87.5%;
		max-width: 1260px;
		margin: 0 auto;
	}
	
	article section div.section_inner h3{
		font-size: 1.8rem;
		font-size: clamp(1.19rem, 1.25vw, 1.8rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.1em;
		margin-bottom: 1.25em;
	}
	
	article section div.section_inner h3 span{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	article section div.section_inner h3 span::before{
		content: "";
		display: inline-block;
		width: 4em;
		height: 1px;
		background: #1a1a1a;
		margin-right: 0.9em;
	}
	
	article section div.section_inner p{
		font-size: 1.6rem;
		font-size: clamp(1.06rem, 1.11vw, 1.6rem);
		line-height: 2.3;
		letter-spacing: 0.06em;
	}
	
	article section div.section_inner div.block01{
		width: 84.7%;
	}
	
	article section div.section_inner div.block02{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	article section div.section_inner div.block02 div.text_box{
		width: 54.2%;
	}
	
	article section div.section_inner div.block02 div.photo_box{
		width: 45.4%;
		font-size: 1.8rem;
		font-size: clamp(1.19rem, 1.25vw, 1.8rem);
		line-height: 0;
		margin-top: 2.5em;
		margin-right: -7.2%;
		position: relative;
	}
	
	article section div.section_inner div.block02 div.photo_box::after{
		content: "";
		display: inline-block;
		width: 76.5%;
		height: 0;
		background: #f29020;
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
		transition: height 1s ease;
	}
	
	article section div.section_inner div.block02 div.photo_box.is-animate::after {
		height: 157%;
	}
	
	article section + div.photo_block {
		line-height: 0;
		margin: 120px 0 60px;
		position: relative;
		z-index: 3;
	}
	
	article section + div.photo_block::after{
		content: "";
		display: inline-block;
		width: 13.8%;
		height: 0;
		background: #f29020;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		transition: height 1s ease;
	}
	
	article section + div.photo_block.is-animate::after {
		height: 130.6%;
	}
	
	div.photo_block + section {
		position: relative;
		z-index: 5;
	}
	
	article section div.section_inner div.block03{
		padding-left: 23.4%;
	}
	
	article section div.section_inner div.block04{
		width: 84.8%;
	}
	
	article section#favorite{
		width: 87.5%;
		max-width: 1260px;
		margin-left: auto;
		margin-right: auto;
	}
	
	article section#favorite div.favorite_box{
		min-height: 357px;
		padding: 0 2.38% 0 4.7%;
		background: #f9ea00;
		border-radius: 20px;
		position: relative;
	}
	
	article section#favorite div.favorite_box div.text_box{
		width: 46.8%;
	}
	
	article section#favorite div.favorite_box div.text_box h4{
		width: 50%;
		font-size: 1.6rem;
		font-size: clamp(1.06rem, 1.11vw, 1.6rem);
		line-height: 1;
		padding-top: 1em;
		margin: 0 0 1.25em -0.25em; 
	}
	
	article section#favorite div.favorite_box div.text_box p{
		font-size: 1.4rem;
		font-size: clamp(0.93rem, 0.97vw, 1.4rem);
		line-height: 2;
		letter-spacing: 0.04em;
		padding-bottom: 2.5em;
	}
	
	article section#favorite div.favorite_box div.photo_box{
		width: 46.6%;
		line-height: 0;
		position: absolute;
		bottom: 0;
		right: 2.38%;
		z-index: 5;
	}
	
	article div#other {
		margin-top: 70px;
		padding: 50px 0 80px;
		background: #f29020;
	}
	
	article div#other h3{
		font-family: "senobi-gothic", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 3.7rem;
		font-size: clamp(2.46rem, 2.56vw, 3.7rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.22em;
		color: #FFF;
		text-align: center;
		margin-bottom: 1em;
	}
	
	article div#other ul{
		width: 87.5%;
		max-width: 1260px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	article div#other ul li{
		width: 31.8%;
		background: #FFF;
		border-radius: 1.38vw;
		border-radius: 1.38cqw;
		overflow: hidden;
		line-height: 0;
	}
	
	article div#other ul li a{
		display: block;
	}
	
	
}

@media screen and (min-width:961px) and (max-width: 1440px){
	
	article div#page_title {
		margin-bottom: 6.94vw;
	}
	
	section.contents + section.contents{
		margin-top: 3.6vw;
	}
	
	article div#page_title.people {
		margin-bottom: 12.5vw;
	}
	
	article section + section {
		margin-top: 7.6vw;
	}
	
	article section + div.photo_block {
		line-height: 0;
		margin: 8.3vw 0 4.2vw;
	}
	
	article section#favorite div.favorite_box{
		min-height: 24.7vw;
		min-height: 24.7cqw;
		border-radius: 1.38vw;
	}
	
	article div#other {
		margin-top: 4.86vw;
		padding: 3.4vw 0 5.5vw;
	}
	
	article div#other ul li{
		border-radius: 20px;
	}
}


	

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

@media screen and (max-width: 960px){
	
	article div#page_title {
		margin-bottom: 20vw;
	}
	
	/*インデックス*/
	
	section.contents {
		width: 88%;
		margin: 0 auto;
		overflow: hidden;
		border-radius: 4vw;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		line-height: 0;
		box-shadow: 0 0 1vw #999999;
	}
	
	section.contents + section.contents{
		margin-top: 8vw;
	}
	
	section.contents:last-of-type{
		margin-bottom: 4vw;
	}
	
	section.contents div.photo_box{
		width: 100%;
	}
	
	section.contents div.text_box{
		width: 100%;
		padding: 0 4vw 8vw;
	}
	
	section.contents div.text_box h3{
		width: 70%;
		font-size: 2.0rem;
		font-size: clamp(2.0rem, 5.54vw, 5.32rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.1em;
		color: #FFF;
		text-align: center;
		background: #f29020;
		padding: 0.3em 0 0.4em;
		margin-bottom: 1em;
		margin-left: -4vw;
	}
	
	section.contents div.text_box h4{
		font-size: 1.4rem;
		font-size: clamp(1.4rem, 3.87vw, 3.724rem);
		font-weight: 700;
		line-height: 1.8;
		letter-spacing: 0.025em;
		margin-bottom: 0.75em;
	}
	
	section.contents div.text_box p{
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		line-height: 2;
		letter-spacing: 0.06em;
		margin-bottom: 1em;
	}
	
	section.contents div.text_box div.nav_box {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
	}
	
	section.contents div.text_box div.nav_box div.photo{
		width: 25%;
	}
	
	section.contents div.text_box div.nav_box div.text{
		width: 70%;
		margin-left: 3%;
	}
	
	section.contents div.text_box div.nav_box div.text h5{
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0.06em;
		margin-bottom: 0.5em;
	}
	
	section.contents div.text_box div.nav_box div.text p{
		font-size: 1.2rem;
		font-size: clamp(1.2rem, 3.32vw, 3.192rem);
		font-weight: 400;
		line-height: 1.4;
		letter-spacing: 0.1em;
	}
	
	section.contents div.text_box div.nav_box div.text p + p{
		margin-top: 0.25em;
	}
	
	section.contents div.text_box div.nav_box div.text p a{
		color: #898989;
	}
	
	section.contents div.text_box div.nav_box div.text p span{
		display: inline-block;
		text-decoration: underline;
	}
	
	section.contents div.text_box div.nav_box div.text p span::after{
		content: "";
		width: 1.5em;
		height: 0.5em;
		display: inline-block;
		background: url("../images/common/arrow_b.svg") no-repeat;
		background-size: contain;
		background-position: center;
		margin-left: 0.5em;
	}
	
	/*下層*/
	article div#page_title.people {
		margin-bottom: 20vw;
	}
	
	article div#page_title.people h2 {
		width: 95%;
		line-height: 0;
		left: 6%;
		bottom: -1.1em;
	}
	
	article section + section {
		margin-top: 15vw;
	}
	
	article section div.section_inner {
		width: 88%;
		margin: 0 auto;
	}
	
	article section div.section_inner h3{
		font-size: 1.6rem;
		font-size: clamp(1.6rem, 4.43vw, 4.256rem);
		font-weight: 700;
		line-height: 1.4;
		padding-left: 3.9em;
		letter-spacing: 0.04em;
		margin-bottom: 1.25em;
		position: relative;
	}
	
	article section div.section_inner h3 span::before{
		content: "";
		display: inline-block;
		width: 3em;
		height: 1px;
		background: #1a1a1a;
		margin-right: 0.9em;
		position: absolute;
		top: 0.75em;
		left: 0;
	}
	
	article section div.section_inner p{
		font-size: 1.3rem;
		font-size: clamp(1.3rem, 3.6vw, 3.465rem);
		line-height: 2.3;
		letter-spacing: 0.06em;
	}
	
	article section div.section_inner div.block02{
		display: flex;
		flex-wrap: wrap;
		flex-direction: column-reverse;
	}
	
	article section div.section_inner div.block02 div.text_box{
		width: 100%;
		margin-top: 8vw;
	}
	
	article section div.section_inner div.block02 div.photo_box{
		width: 85%;
		font-size: 1.8rem;
		font-size: clamp(1.19rem, 1.25vw, 1.8rem);
		line-height: 0;
		margin-left: 22%;
		position: relative;
	}
	
	article section div.section_inner div.block02 div.photo_box::after{
		content: "";
		display: inline-block;
		width: 76.5%;
		height: 0;
		background: #f29020;
		position: absolute;
		top: 0;
		right: 0;
		z-index: -1;
		transition: height 1s ease;
	}
	
	article section div.section_inner div.block02 div.photo_box.is-animate::after {
		height: 157%;
	}
	
	article section + div.photo_block {
		line-height: 0;
		margin: 18vw 0;
		position: relative;
		z-index: 3;
	}
	
	article section + div.photo_block::after{
		content: "";
		display: inline-block;
		width: 56%;
		height: 0;
		background: #f29020;
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
		transition: height 1s ease;
	}
	
	article section + div.photo_block.is-animate::after {
		height: 127%;
	}
	
	div.photo_block + section {
		position: relative;
		z-index: 5;
	}
	
	article section#favorite{
		width: 88%;
		margin-left: auto;
		margin-right: auto;
	}
	
	article section#favorite div.favorite_box{
		padding: 0 2.38% 0 4.7%;
		background: #f9ea00;
		border-radius: 4vw;
	}
	
	article section#favorite div.favorite_box div.text_box{
		width: 94%;
		margin: 0 auto;
	}
	
	article section#favorite div.favorite_box div.text_box h4{
		width: 70%;
		font-size: 1.2rem;
		font-size: clamp(1.2rem, 3.32vw, 3.192rem);
		line-height: 1;
		padding-top: 1.5em;
		margin: 0 0 1.25em -0.5em; 
	}
	
	article section#favorite div.favorite_box div.text_box p{
		font-size: 1.2rem;
		font-size: clamp(1.2rem, 3.32vw, 3.192rem);
		line-height: 2;
		letter-spacing: 0.04em;
		padding-bottom: 1.5em;
	}
	
	article section#favorite div.favorite_box div.photo_box{
		width: 100%;
		margin: 0;
		line-height: 0;
	}
	
	article div#other {
		margin-top: 18vw;
		padding: 10vw 0;
		background: #f29020;
	}
	
	article div#other h3{
		font-family: "senobi-gothic", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 2.2rem;
		font-size: clamp(2.2rem, 6.09vw, 5.852rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0.22em;
		color: #FFF;
		text-align: center;
		margin-bottom: 1em;
	}
	
	article div#other ul{
		width: 87.5%;
		margin: 0 auto;
	}
	
	article div#other ul li{
		width: 100%;
		background: #FFF;
		border-radius: 4vw;
		overflow: hidden;
		line-height: 0;
	}
	
	article div#other ul li + li {
		margin-top: 6vw;
	}
	
	article div#other ul li a{
		display: block;
	}
	
}