@charset "UTF-8";
/** -----------------------------------------------
  共通
------------------------------------------------**/
body {
	/*下記のCSSはご自身のデザインに合わせて書き換えてください。*/

font-family: "Klee One", cursive;
  font-weight: 400;
  font-style: normal;



	font-size: 16px;
	line-height: 1.6;
	color: #4F2F17;
	background-color:#FBF1EA;
	


}
.klee-one-semibold {
  font-family: "Klee One", cursive;
  font-weight: 600;
  font-style: normal;
}



/** -----------------------------------------------
  PC :  画面の横幅が641px以上
------------------------------------------------**/
.section-inner{
	max-width: 960px;
	margin: 0 auto;
}

.title{
	display: flex;
	padding: 100px 0 80px 0;
	
}

.title-text{
	display: block;
}

.pc-only{
	display: block;
}

.sp-only{
	display: none;
}
/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	.section-inner{
		padding: 0 24px;
		max-width: 550px;
		margin: 0 auto;
	}
	.pc-only{
	display: none;
	}
	.sp-only{
	display: block;
	}
	.title{
	padding: 80px 0 40px;
	}
	}

/* テキスト */
h2.large{
	font-weight: 600;
	font-size: 48px;
	letter-spacing: 5%;
	border-bottom: 1px dashed #4F2F17;

}

h3.small{
	font-weight: 600;
	font-size: 32px;
	letter-spacing: 5%;
}

p.medium{
	font-weight: 400;
	font-size: 24px;
	letter-spacing: 5%;
	line-height: 170%;
	text-align: center;
}
p.medium span{
	display: block;
}
p.small{
	font-weight: 400;
	font-size: 20px;
	letter-spacing: 0;
	line-height: 170%;
}

p.small span{
	display: block;
}

p.mini{
	font-weight: 400;
	font-size: 16px;
	letter-spacing: 5%;
	line-height: 150%;
}

.title-en{

	font-family: 'Bellota Text';
	font-style: normal;
	font-weight: 400;
	font-size: 24px;
	line-height: 30px;
	letter-spacing: 0.05em;
	color: rgba(79, 47, 23, 0.7);

}

.number{
	font-family: 'Bellota Text';
	font-size: 80px;
	font-weight: normal;
	letter-spacing: 5%;
}
.btn-view-more{
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	padding: 60px 0 100px 0;
	position: relative;
	
	
}
.view-more-dot{
	width: 64px;
	height: 64px;
	background-color: rgba(255, 171, 118, 0.7);
	border-radius: 50%;
	filter: blur(2px);
	position: absolute;
	left: 50%;
	
}
.btn-view-more:hover .view-more-dot{
	transform: scale(1.2);
}


.view-more{
	font-family: 'Bellota Text';
	font-size: 20px;
	font-weight: normal;
	letter-spacing: 10%;
	color: #4F2F17;
	padding-right: 20px;
	z-index: 1;
}

.view-more-arrow{
	z-index: 1;
}
.btn-view-more:hover .view-more-arrow{
	transform: scale(1.1);
}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	h2.large{
		font-size: 28px;
		font-weight: 600;
		letter-spacing: 5%;
	}

	h3.small{
		font-size: 20px;
		font-weight: 600;
		letter-spacing: 5%;
	}

	p.medium{
		font-size: 16px;
		font-weight: 400;
		letter-spacing: 5%;
		line-height: 170%;
		text-align: left;
	}

	p.medium span{
		display: inline;
	}

	p.small{
		font-size: 16px;
		font-weight: 400;
		letter-spacing: 5%;
		line-height: 170%;
	}

	p.small span{
		display: inline;
	}

	.title-en{
		font-size: 16px;
		font-weight: 400;
		letter-spacing: 5%;
	}

	.number{
		font-size: 48px;
	}
}


/* レイアウト */
.col-2{
	display: flex;
	align-items: center;
	justify-content: space-between;

}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	.col-2{
		display: block;
		width: 100%;
		
	}
}



/* ヘッダー */
#header{
	background-color: #946747;
	width: 100%;
	padding: 0 80px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: fixed;
	top: 0;
	z-index: 999;
}

h1.header-logo{
	display: flex;
	align-items: center;
	width: 219px;
	line-height: 0;
	
}

p.header-copy{
	color: #FEFBF8;
	font-size: 24px;
	font-weight: 600;
	display: flex;
	align-items: center;
}

.logo-copy{
	display: flex;
	justify-content: space-between;
	gap: 30px;
}

ul{
	list-style: none;
}
.button-header-1{
	display: block;
	width: 221px;
	height: 50px;
	background-color: #FEFBF8;
	color: #4F2F17;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 5%;
	text-decoration: none;
	border-radius: 100px;
	text-align: center;
	line-height: 50px;

}
.button-header-1:hover {
    border: none;
    background-color: rgba(255, 171, 118, 0.7);
    color: #FEFBF8;
    font-weight: 600;
}
.button-header-2{
	display: block;
	width: 221px;
	height: 50px;
	background-color: #FFABAB;
	color: #4F2F17;
	font-size: 20px;
	font-weight: 600;
	letter-spacing: 5%;
	text-decoration: none;
	border-radius: 100px;
	text-align: center;
	line-height: 50px;

}
.button-header-2:hover {
    border: 1px solid #FFABAB;
    background-color: #FEFBF8;
    color: #FFABAB;
    font-weight: 600;
}

.hamburger{
	width: 50px;
	height: 36px;
	position: relative;
	
}

.hamburger span{
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background: #FEFBF8;
	transition: 0.3s;
}

.hamburger span:nth-child(1){top: 0;}
.hamburger span:nth-child(2){top: 18px;}
.hamburger span:nth-child(3){bottom: 0;}

.gnav-pc-wrap{
	display: flex;
	justify-content: space-between;
	gap: 50px;
	align-items: center;
}
.gnav-pc-btn{
	display: flex;
	justify-content: space-between;
	gap: 30px;
}
.gnav-modal-wrap{
	display: none;
	width: 100vw;
	height: 400px;
	background-color: #FBF1EA;
	position: fixed;
	z-index: 100;
	padding-top: 150px;	
}

.nav-pc-main{
	display: flex;
	list-style: none;
	gap: 50px;
	justify-content: center;
	
}
.nav-pc{
	font-size: 20px;
	letter-spacing: 10%;
	color: #4F2F17;
	font-weight: 600;
	text-decoration: none;
	}
.nav-pc-small{
	font-size: 16px;
	color: #4F2F17;
	text-decoration: none;
}
.nav-pc-small-wrap{
	padding-top: 10px;
}







/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	#header{
	background-color: #946747;
	width: 100%;
	padding: 0 24px;
	height: 60px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	position: fixed;
	top: 0;
	z-index: 999;
	}
	h1.header-logo{
		display: flex;
		align-items: center;
		width: 110px;
	}

	p.header-copy{
		display: flex;
		font-size: 14px;
	}

	.logo-copy{
		height: 100%;
		gap: 10px;
		display: flex;
		align-items: center;
		
	}

	.button-header-1{
		display: none;
	}

	.button-header-2{
		display: none;
	}

	.hamburger{
		width: 24px;
		height: 20px;
	}

	.hamburger span{
		height: 1px;
	}

	.hamburger span:nth-child(2){top: 10px;}

	.gnav-sp-wrap{
		display: none;
		width: 100vw;
		height: 100vh;
		background-color: #FBF1EA;
		position: fixed;
		z-index: 100;
		padding-top: 150px;
	}
	ul.gnav-sp li {
		text-align: center;
		margin-top: 30px;
	}
	ul.gnav-sp li a{
		font-size: 16px;
		letter-spacing: 10%;
		color: #4F2F17;
		font-weight: 400;
		text-decoration: none;
	}
	
}

/* メインヴィジュアル */
#main-visual{
	position: relative;
	width: 100%;
	height: 100vh;
	
	
}

.main-visual{
	position: absolute;
	top: 0;
	right: 0;
	object-position: right center;
	z-index: 1;
}

.message-back-1{
	width: 100%;
	position: absolute;
	bottom: 0;
	vertical-align: bottom;
}

.circle-white{
	width: 500px;
	height: 500px;
	border-radius: 50%;
	background: rgba(255, 239, 229, 0.7);
	filter: blur(16.5px);

	position: absolute;
	left: 10%;
	bottom: 0;
	z-index: 2;
}

.circle-orange{
	width: 190px;
	height: 190px;
	border-radius: 50%;
	background: rgba(255, 171, 118, 0.7);
	filter: blur(16.5px);
	position: absolute;
	left: 8%;
	bottom: 280px;
	z-index: 3;
}
.maincopy{
	color: #4F2F17;
	font-size: 80px;
	font-weight: 600;
	line-height: 120%;
	letter-spacing: 5%;

	position: absolute;
	left: 16%;
	bottom: 120px;
	z-index: 4;
}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	#main-visual{
		width: 100%;
		height: calc(100vh - 60px);
		position: relative;
	}
	

	.maincopy{
		font-size: 40px;
		position: absolute;
		top: 100px;
		left: 10%;
	}

	.main-visual{
		width: 100%;
		height: 656px;
		justify-content: right;
		
	}

	.circle-white{
		width: 260px;
		height: 260px;
		position: absolute;
		top: 20px;
		left: 3%;
	}

	.circle-orange{
		width: 60px;
		height: 60px;
		position: absolute;
		top: 0;
		left: -20%;

	}
	.main-cta-sp-1{
	width: 93px;
	aspect-ratio: 1 /1;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align: center;
	line-height: 130%;
	border-radius: 50%;
	background-color: #FFABAB;
	color: #4F2F17;
	font-weight: 600;
	text-decoration: none;
	position: absolute;
	right: 20%;
	bottom: 15%;
	z-index: 5;
	}
	.main-cta-sp-1:hover{
		background-color: #FEFBF8;
		color: #FFABAB;
		border: 1px solid #FFABAB;
	}

	.main-cta-sp-2{
	width: 69px;
	aspect-ratio: 1 /1;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	font-size: 14px;
	text-align: center;
	line-height: 130%;
	border-radius: 50%;
	background-color: #FEFBF8;
	color: #4F2F17;
	font-weight: 600;
	text-decoration: none;
	position: absolute;
	right: 10%;
	bottom: 10%;
	z-index: 6;

	}
	.main-cta-sp-2:hover{
		background-color: #FFAB76;
		color: #FEFBF8;
		
	}
}


/* メッセージ */
#message{
	position: relative;
	width: 100%;

}

.message-back-2{
	width: 100%;
	height: 700px;
	position: relative;
}

.message{
	font-weight: 400;
	font-size: 20px;
	letter-spacing: 15%;
	line-height: 200%;
	text-align: center;
	bottom: 100px;
	position: absolute;
	top: 200px;
	left: 50%;
	transform: translateX(-50%);

}

.bird{
	position: absolute;
	bottom: 60px;
	right: 10%;
}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	#message{
		position: relative;
	}
	
	.message{
		width: 274px;
		font-size: 16px;
		text-align: left;
		position: absolute;
		top: 30%;
	}

	.bird{
		position: absolute;
		right: 0;
		bottom: 15%;
	}
}


/* 私たちについて */

.about{
	font-weight: 400;
	font-size: 20px;
	letter-spacing: 10%;
	line-height: 170%;
}

.about-large{
	font-weight: 600;
	font-size: 28px;
	letter-spacing: 15%;
	line-height: 150%;
	margin-top: 20px;
}

.about-large span{
	display: block;
}
.circle-btn{
	width: 215px;
	aspect-ratio: 1 /1;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-radius: 107.5px;
	background-color: #FEFBF8;
	color: #4F2F17;
	text-decoration: none;
	box-shadow: 2px 2px 4px 0px #ffab7680;
	position: relative;
	gap: 20px;

}
.circle-btn:hover {
    border: none;
    background-color: #FFAB76;
    color: #FEFBF8;
    font-weight: 600;
}

.circle-btn-title{
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 5%;
	line-height: 150%;
	text-align: center;
	position: absolute;

}

.circle-icon{
	position: absolute;
	right: auto;
	top: 12px;
}

.circle-arrow{
	position: absolute;
	right: auto;
	bottom: 40px;
	z-index: 1;
}
.circle-btn-dot{
	width: 25px;
	height: 25px;
	background-color: rgba(255, 171, 118, 0.7);
	border-radius: 50%;
	display: inline-block;
	position: absolute;
	bottom: 32px;
	left: 80px;

}

.circle-btn-wrap{
	display: flex;
	justify-content: center;
	gap: 10px;
	margin-bottom: 100px;
}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	.family{
		width: 100%;
		display: flex;
		justify-content: center;
		margin-top: -40px;
	}

	.about{
		font-size: 16px;
		letter-spacing: 10%;

	}

	.about-large{
		font-size: 24px;
	}
	.circle-btn-wrap{
		display: block;
		margin-top: 60px;
		margin-bottom: 100px;

	}
	.circle-btn-top{
		display: flex;
		justify-content: space-between;
		
	}

	.circle-btn{
		width: 150px;
		aspect-ratio: 1 /1;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		border-radius: 107.5px;
		background-color: #FEFBF8;
		color: #4F2F17;
		text-decoration: none;
		box-shadow: 2px 2px 4px 0px #ffab7680;
		position: relative;
		gap: 20px;

	}
	.circle-btn-title{
		font-size: 16px;
		font-weight: 600;
		letter-spacing: 5%;
		line-height: 150%;
		text-align: center;
		position: absolute;

	}
	.circle-icon{
		position: absolute;
		right: auto;
		top: 0px;
	}
	.circle-arrow{
		position: absolute;
		right: auto;
		bottom: 32px;
		z-index: 1;
	}	
	.circle-btn-dot{
		width: 25px;
		height: 25px;
		background-color: rgba(255, 171, 118, 0.7);
		border-radius: 50%;
		filter: blur(2px);
		display: inline-block;
		position: absolute;
		bottom: 25px;
		left: 45px;
		
	}


	
}

/* TSUTSUMUの事業 */
#service{
	background-color: rgba(255, 171, 118, 0.2);
}

.wave-back-top{
	width: 100%;
	vertical-align: bottom;
}
.wave-back-bottom{
	width: 100%;
	vertical-align: bottom;
}

.service-wrap{
	margin-top: 80px;
}
.title-service{
	display: flex;
	align-items: center;
	gap: 30px;
}

.col-2-photo{
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.item-service{
	display: block;

}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	.item-service{
		align-items: center;
		flex-direction: column;
		flex: none;
		align-self: stretch;
	}

	.title-service{
		gap: 10px;
		justify-content: center;
	}

	.col-2-photo{
		flex-direction: column;
		justify-content: center;

	}

	.item{
		order: 1;
		display: flex;
		justify-content: center;
	}
	.item-service{
		order: 2;
	}



}


/* 働く環境 */

.system-all{
	display: flex;
	justify-content: space-between;
}

.system-wrap{
	width: 303px;
	height: 418px;
	display: flex;
	align-items: center;
	text-align: center;
	margin-top: 80px;
	position: relative;
	
}
.system-back{
	width: 303px;
	height: 418px;
	max-width: 100%;
	

}


.system-title{
	font-size: 28px;
	font-weight: 600;
	letter-spacing: 5%;
	text-align: center;
}


.system-icon{
	position: absolute;
	top: 40px;
	left: 50%;
	transform: translateX(-50%);
}

.system-text{
	position: absolute;
	top: 200px;
	left: 50%;
	transform: translateX(-50%);
	
}
.system-title{
	margin: 0 auto;
}
.system-detail-list{
	width: 218px;
	display: block;
	list-style: none;
	padding-top: 10px;
}
.system-detail{
	font-size: 20px;
	font-weight: 400;
	letter-spacing: 5%;
	
}
.system-1{
	display: flex;
	align-items: center;
	gap: 10px;

}
.dot-1{
	width: 15px;
	height: 15px;
	background-color: #FFAB76;
	border-radius: 50%;
}

.dot-2{
	width: 15px;
	height: 15px;
	background-color: #C8E8B5;
	border-radius: 50%;
}

.dot-3{
	width: 15px;
	height: 15px;
	background-color: #FEC3CB;
	border-radius: 50%;
}

.dot-4{
	width: 15px;
	height: 15px;
	background-color: #F5E296;
	border-radius: 50%;
}

.dot-5{
	width: 15px;
	height: 15px;
	background-color: #B4ECF1;
	border-radius: 50%;
}

.dot-6{
	width: 15px;
	height: 15px;
	background-color: #DCAFD9;
	border-radius: 50%;
}

.dot-7{
	width: 15px;
	height: 15px;
	background-color: #FFABAB;
	border-radius: 50%;
}

.dot-8{
	width: 15px;
	height: 15px;
	background-color: #EBCAB3;
	border-radius: 50%;
}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	.system-all{
		display: block;
		width: 100%;
	}

	.system-wrap{
		width: 100%;
		display: flex;
		justify-content: center;
		margin-top: 40px;
	}
}

/* 社員インタビュー */
#interview{
	background-color: rgba(255, 171, 118, 0.2);
}
.card{
	margin-top: 80px;
	gap: 24px;
}
.card-list{
	display: flex;
	width: 960px;
	height: 338px;
	background-color: #FEFBF8;
	border-radius: 0 60px 0 60px;
	margin-bottom: 40px;
	box-shadow: 0px 0px 8px rgba(255, 171, 118, 0.5);	
}
.card-items{
	display: flex;
	align-items: center;
	gap: 60px;
	margin: 0 auto;
	position: relative;
}
.card-right{
	display: block;
	gap: 10px;
}
.member{
	border-radius: 100px 100px 0 0;
	position: relative;
}

.position{
	font-size: 12px;
	font-weight: 400;
}

.name{
	display: flex;
	width: 250px;
	height: 72px;
	background-color: rgba(255, 239, 229, 0.8);
	flex-direction: column;
	align-items: flex-start;
	padding-left: 14px;
	position: absolute;
	left: -18px;
	bottom: 37px;
	
}


.card-title{
	display: flex;
	text-align: center;
	position: relative;
}

.card-title::after{
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 480px;
	height: 1px;
	background-color: #4F2F17;
	
}

.card-text{
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 5%;
	line-height: 150%;
	padding-top: 10px;
}

.card-text span{
	display: block;
}
.card-under{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 20px;
}
.card-tag{
	display: flex;
	gap: 10px;
	
	
}
.card-arrow{
	width: 50px;
	height: 8px;
}
.card-arrow:hover{
	transform: scale(1.1);
}

.card-tag-1{
	display: block;
	width: 116px;
	height: 22px;
	background-color: #FEC3CB;
	
	color: #4F2F17;
	font-size: 12px;
	letter-spacing: 5%;
	border-radius: 11px;
	text-align: center;

}

.card-tag-2{
	display: block;
	width: 166px;
	height: 22px;
	background-color: #FFAB76;
	
	color: #4F2F17;
	font-size: 12px;
	letter-spacing: 5%;
	border-radius: 11px;
	text-align: center;

}

.card-tag-3{
	display: block;
	width: 116px;
	height: 22px;
	background-color: #B4ECF1;
	
	color: #4F2F17;
	font-size: 12px;
	letter-spacing: 5%;
	border-radius: 11px;
	text-align: center;

}
.card-tag-4{
	display: block;
	width: 116px;
	height: 22px;
	background-color: #C8E8B5;
	
	color: #4F2F17;
	font-size: 12px;
	letter-spacing: 5%;
	border-radius: 11px;
	text-align: center;

}


/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	
	.card-sp{
		width: 310px;
		
		margin: 0 auto;
		margin-top: 60px;
	}
	.card-list{
		display: block;
		background-color: #FEFBF8;
		border-radius: 0 60px 0 60px;
		padding: 40px 0;
		align-items: center;
		margin: 0 auto;
		box-shadow: none;
		
	}
	.card-items{
		display: block;
		align-items: center;
	}
	.card-tag{
		display: block;
		width: 139px;
		height: 44px;

		gap: 10px
	}
	.card-top{
		display: flex;
		gap: 20px;
		padding-bottom: 20px;
		align-items: center;
		justify-content: center;
		position: relative;
	}
	.card-top::after{
		content: "";
		position: absolute;
		bottom: 0;
		left: 10px;
		width: 265px;
		height: 1px;
		background-color: #4F2F17;
		

	}
	.card-top-right{
		display: block;
			
	}

	.member{
		width: 123px;
		height: 157px;
		border-radius: 100px 100px 0 0;
		
	}
	.name{
		display: flex;
		width: 124px;
		height: 50px;
		background-color: rgba(255, 239, 229, 0.8);
		flex-direction: column;
		align-items: flex-start;
		padding-left: 14px;
		position: absolute;
		left: 14px;
		bottom: 20px;
	}
	
	.member-name{
		font-size: 14px;
		font-weight: 600;
	}
	.position{
		font-size: 10px;
		letter-spacing: 5%;
		line-height: 140%;
	}
	.card-title{
		font-size: 20px;
		font-weight: 600;
		letter-spacing: 5%;
		line-height: 140%;
		text-align: left;
		padding-bottom: 10px;
	}
	.card-title::after{
		display: none;
	}
	.card-bottom{
		display: block;
		position: relative;
		
	}
	.card-tag-1{
		display: block;
		width: 97px;
		height: 22px;
		background-color: #FEC3CB;
		
		color: #4F2F17;
		font-size: 10px;
		letter-spacing: 5%;
		border-radius: 11px;
		text-align: center;
		line-height: 22px;
		margin-top: 3px;

	}
	.card-tag-2{
		display: block;
		width: 139px;
		height: 22px;
		background-color: #FFAB76;
		
		color: #4F2F17;
		font-size: 10px;
		letter-spacing: 5%;
		border-radius: 11px;
		text-align: center;
		line-height: 22px;

	}
	.card-tag-3{
		display: block;
		width: 97px;
		height: 22px;
		background-color: #B4ECF1;
		
		color: #4F2F17;
		font-size: 10px;
		letter-spacing: 5%;
		border-radius: 11px;
		text-align: center;
		line-height: 22px;

	}
	.card-tag-4{
		display: block;
		width: 97px;
		height: 22px;
		background-color: #C8E8B5;
		
		color: #4F2F17;
		font-size: 10px;
		letter-spacing: 5%;
		border-radius: 11px;
		text-align: center;
		line-height: 22px;

	}
	.card-arrow{
		position: absolute;
		right: 20px;
		bottom: -20px;
	}



	.card-text{
		margin: 0 20px;
		padding-top: 20px;
	}

	
}

/* 募集職種 */
#recruit{
	position: relative;
}

.job-wrap-top{
	width: 800px;
	margin: 0 auto;
	margin-top: 80px;
	display: flex;
	justify-content: space-between;
	
}

.job-wrap-bottom{
	width: 520px;
	margin: 0 auto;
	margin-bottom: 100px;
	display: flex;
	justify-content: space-between;
	
}

.job-btn{
	text-decoration: none;
	position: relative;
}

.job-btn:hover{
	width: 215px;
	height: 215px;
	border-radius: 50%;
	background-color: #FFAB76;
}
.job-btn:hover .job{
	display: none;
}

.job-name{
	font-size: 24px;
	font-weight: 600;
	color: #FEFBF8;
	letter-spacing: 10%;
	line-height: 150%;
	text-align: center;
	position: absolute;
	bottom: 100px;
	left: 50px;
	
}

.job-btn-arrow{
	position: absolute;
	bottom: 40px;
	left: 80px;
}
.job-btn:hover .job-btn-arrow{
	transform: scale(1.1); /* 拡大 */
}


.bird-2{
	position: absolute;
	right: 10%;
	bottom: -100px;
}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	.job-wrap{
		width: 325px;
		margin: 0 auto;
		margin-top: 60px;
		margin-bottom: 60px;
		position: relative;
		
		
	}

	.job-wrap-1,.job-wrap-2{
		display: flex;
		justify-content: space-between;
		margin-bottom: 20px;
	}
	.job-wrap-3{
		display: flex;
		justify-content: center;
	}
	.job-name{
		font-size: 18px;
		font-weight: 600;
		color: #FEFBF8;
		letter-spacing: 10%;
		line-height: 150%;
		text-align: center;
		position: absolute;
		left: 30px;
		bottom: 70px;
	
	}
	.job-btn:hover{
		width: 150px;
		height: 150px;
	border-radius: 50%;
		background-color: #FFAB76;
	}
	.job-btn-arrow{
		position: absolute;
		bottom: 30px;
		left: 50px;
	}
	.bird-2{
		position: absolute;
		right: 10%;
		bottom: -50px;
	}
}
/* よくある質問 */

.faq-wrap{
	
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 0px;
	gap: 20px;
	margin-bottom: 100px;


}

.faq{
	display: block;
	margin: 0 auto;
}
.faq-head{
	display: flex;
	width: 700px;
	height: 70px;
	border-radius: 20px;
	background-color: rgba(255, 171, 118, 0.7);
	color: #4F2F17;
	align-items: center;
	padding-left: 20px;
	gap: 10px;
	margin: 0 auto;
	justify-content: space-between;

}

.faq-head.is-open{
	border-radius: 20px 20px 0 0;
}
.faq-head-contents{
	display: flex;
	align-items: center;
	gap: 20px;
}

.faq-body-inner{
	display: flex;
	width: 700px;
	height: 97px;
	border-radius: 0 0 20px 20px;
	background-color: #FEFBF8;
	color: #4F2F17;
	align-items: center;
	padding-left: 20px;
	gap: 10px;
	margin: 0 auto;
	position: relative;
}
.faq-body{
	display: none;
}

.faq-text{
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
}
.body-text{
	font-weight: 400;
	font-size: 16px;
	line-height: 150%;
}

.faq-icon::before{
	content: "+";
	font-size: 30px;
	padding-right: 20px;
	line-height: 0;
	
}
.faq-head.is-open .faq-icon::before{
	content: "-";
	font-size: 30px;
}

.faq-en{
	font-size: 24px;
}


/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	
	.faq-head{
		width: 327px;
		height: 56px;
	}
	.faq-head[aria-expanded="true"]{
		border-radius: 20px 20px 0 0;

	}

	.faq-body-inner{
		width: 327px;
		height: 120px;
		display: flex;
		align-items: flex-start;
		padding-top: 15px;
	}

	.faq-en{
		font-size: 20px;

	}
	.faq-text{
		font-size: 14px;
		width: 235px;
	}
	.body-text{
		font-size: 14px;
		width: 268px;
		
	}
}
/* CTA */
#cta{
	background-image: url(../images/cta-bg-pc.jpg);
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #FEFBF8;
}

.cta-message{
	padding: 118px 0 30px 0;
}

h3.small span{
	display: block;
}
.cta{
	display: block;
	width: 275px;
	height: 70px;
	background-color: #FFABAB;
	color: #4F2F17;
	font-size: 24px;
	font-weight: 600;
	letter-spacing: 10%;
	text-decoration: none;
	border-radius: 100px;
	text-align: center;
	line-height: 70px;
	margin: 0 auto;
	
	
}
.cta:hover{
	background-color: #FEFBF8;
	color: #FFABAB;
	border: 1px solid #FFABAB;
}
.cta-wrap{
	padding-bottom: 80px;
}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	#cta{
		background-image: url(../images/cta-bg-sp.png);
	}
	h3.small span{
		display: block;
	}
}

/* フッター */
#footer{
	background-color: #946747;
}

.footer-logo{
	margin-top: 100px;
}
.footer-nav{
	
	font-size: 20px;
	font-weight: 400;
	color: #FEFBF8;
	text-decoration: none;
}

.nav-small{
	color: #FEFBF8;
	font-size: 14px;
	font-weight: 400;
	text-decoration: none;

}

.footer-nav-wrap{
	display: flex;
	justify-content: space-between;
	margin: 77px 0 34px 0;
}

.footer-icon{
	display: flex;
	justify-content: center;
	gap: 30px;
	margin: 0 auto;
	margin-bottom: 34px;

	
}
.corporate{
	display: block;
	width: 260px;
	height: 60px;
	background-color: #FEFBF8;
	color: #4F2F17;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 10%;
	text-decoration: none;
	border-radius: 100px;
	text-align: center;
	line-height: 60px;
	
}
.corporate:hover{
	background-color: #FFAB76;
	color: #FEFBF8;
}



.policy-text{
	color: #FEFBF8;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 10%;
	text-decoration: none;
}

.policy{
	display: flex;
	gap: 50px;
	margin: 0 auto;
	margin-bottom: 15px;
}
.copyright{
	font-family: 'Bellota Text';
	font-size: 16px;
	color: #FEFBF8;
	text-align: center;
	padding-bottom: 60px;
}

/** -----------------------------------------------
  Smartphone :  画面の横幅が640pxまで
------------------------------------------------**/
@media screen and (max-width:640px){
	.footer-nav-wrap{
		display: none;
	}

	.footer-logo{
		margin-top: 50px;
		margin-bottom: 50px;
	}

	.policy{
		display: block;
		line-height: 200%;
		margin-bottom: 30px;
	}
	.corporate{
		width: 182px;
		height: 40px;
		font-size: 12px;
		letter-spacing: 10%;
		line-height: 40px;
	}

	
}

/*ここからメディアクエリで各デバイスサイズに書き分けます。
今回の課題で考慮するのはPCとスマホのみでOKですが、タブレットサイズでのスタイルを書いてもOK！
また、CSSは上から下に継承されるので、変化させたいところだけ書けばOKです*/

