@charset "UTF-8";
/** -----------------------------------------------
  共通
------------------------------------------------**/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Cabin:ital,wght@0,400..700;1,400..700&family=Noto+Sans:ital,wght@0,100..900;1,100..900&display=swap'); 

body {
	/*下記のCSSはご自身のデザインに合わせて書き換えてください。*/
	color: #333;
	background-color:#fcfafa;
	font-family: "Noto Sans","Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "Osaka", "Verdana", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Ｐゴシック", "MS PGothic", Cabin, sans-serif;
	
}

#about, #works, #recruitment, #entry {
	padding: 120px 0 64px 0;
}

#environment {
	padding: 60px 0 0;
}

#member {
	padding: 0 0 64px;
}

.section-inner {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

.pc-only {
	display: block;
}

.sp-only {
	display: none;
}

/* スマホ */
@media screen and (max-width: 768px) {
	.section-inner {
		padding: 40px 15px 20px;
		max-width: 550px
	}
	.pc-only {
		display: none;
	}
	.sp-only {
		display: block;
	}
	#about, #works, #recruitment, #environment, #member, #entry {
		padding: 40px 0 30px 0;
	}
}



/* テキスト */
h2.large {
	font-weight: bold;
	font-size: 36px;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

h3.medium {
	font-weight: bold;
	font-size: 24px;
	line-height: 1.6;
	letter-spacing: 0.03em;
}

p.large {
    font-size: 18px;
    line-height: 2;
    letter-spacing: 0.06em;
    font-weight: normal;
}

p.medium {
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.06em;
}

p.small {
	font-size: 14px;
	line-height: 1.75;
	letter-spacing: 0.03em;
  }

/* スマホ */
@media screen and (max-width: 768px) {
	h2.large {
		font-size: 24px;
		line-height: 1.6;
		letter-spacing: 0.03em;
		margin-bottom: 20px;
	}

	h3.medium {
		font-weight: bold;
		font-size: 18px;
		line-height: 1.5;
		letter-spacing: 0.03em;
	}

	p.large {
		font-size: 18px;
		line-height: 2;
		letter-spacing: 0.06em;
		font-weight: normal;
	}
	
	p.medium {
		font-size: 16px;
		line-height: 1.75;
		letter-spacing: 0.06em;
		margin-bottom: 20px;
	}
	
	p.small {
		font-size: 14px;
		line-height: 1.75;
		letter-spacing: 0.03em;
	  }
}


/* ヘッダー */
#header {
	background-color: #fcfafa;
	width: 100%;
	height: 110px;
	display: flex;
	justify-content: space-between;
	padding: 0 24px;
	position: fixed;
	top: 0;
	z-index: 1;
}

.header-logo {
	display: flex;
	align-items: center;
	width: 217px;
}

.gnav-sp-wrap {
	display: none;
}

.gnav-pc-wrap {
	display: flex;
	align-items: center;
}
  
ul.gnav-pc li {
	display: inline;
	margin-right: 40px;
}
  
ul.gnav-pc li a {
	font-family: 'Noto Sans', sans-serif;
	font-size: 18px;
	letter-spacing: 0.13em;
	color: #372b16;
	font-weight: bold;
	text-decoration: none;
}
  
ul.gnav-pc li a:hover {
	color: #756c5d;
}

#menu-button {
	display: none;
}   

/* スマホ */
@media screen and (max-width: 768px) {

	#header {
		height: 60px;
		padding:  0;
	}
	
	#header h1 {
		padding-left: 20px;
	}

	#header h1 a {
		display: flex;
	}

	.gnav-pc-wrap {
		display: none;
	}

	#menu-button {
		display: block;
		width: 30px;
		height: 30px;
		padding: 22px 18px;
	}

	.menu-button-inner {
		position: relative;
		display: block;
		width: 100%;
		height: 100%;
	}
	
	.menu-button-inner span {
		display: block;
		width: 100%;
		height: 2px;
		background-color: #372b16;
		position: absolute;
    }
    
	.menu-button-inner span:nth-child(1) {
		top: 0;
    }
	
	.menu-button-inner span:nth-child(2) {
		top: 0;
		bottom: 0;
		margin: auto;
    }
	
	.menu-button-inner span:nth-child(3) {
		bottom: 0;
    }

	.gnav-sp-wrap {
		display: none;
		width: 100vw;
		height: 100vh;
		background-color: #fcfafa;
		position: fixed;
		z-index: 100;
		padding-top: 100px;
	}

	ul.gnav-sp li {
		text-align: center;
		margin-bottom: 30px;
		list-style: none;
	}

	ul.gnav-sp li a {
		font-family: 'Noto Sans', sans-serif;
		font-size: 20px;
		letter-spacing: 0.1em;
		color: #372b16;
		font-weight: bold;
		text-decoration: none;
	}	

}



/* メインビジュアル */
#mainvisual {
	 width: 100vw;
	 height: calc(100vh - 110px);
     background-image: url(../images/pc_fv_img.jpg);
	 background-size: cover;
	 background-position: center;
	 background-repeat: no-repeat;	
	 position: relative;
	 margin-top: 110px;	 	 
}

.copy-wrap {
	position: absolute;
	left: 80px;
	bottom: 60px;
	padding-bottom: 20px;
}

.maincopy {
	color: #372b16;
	font-size: 30px;
	font-weight: bold;
}

.subcopy {
	color: #372b16;
	font-size: 18px;
	font-weight: bold;
}

/* スマホ */

 @media screen and (max-width: 768px) {
	#mainvisual {
	  width: 100vw;
	  height: 100vw;
	  background-image: url("../images/sp_fv_img.jpg");
	  margin-top: 60px;
	}
	
	.copy-wrap {
		position: absolute;
		left: 130px;
		bottom: 20px;
		padding-bottom: 20px;
	}

	.tsutsumu_logo {
		width: 280px;
	}

	.maincopy {
		color: #372b16;
		font-size: 16px;
		font-weight: bold;
		padding-bottom: 24px;
	
	}
	
	.subcopy {
		color: #372b16;
		font-size: 14px;
		font-weight: bold;
		padding-bottom: 16px;
	} 

}


/* 私たちの想い */
#about {
     background-image: url(../images/pc_about_back_img.png);
	 background-size: cover;
}

#about h2.large {
	font-weight: bold;
	text-align: center;
	color: #372b16;
	padding: 0 0 48px;
}
#about h3.medium {
	text-align: center;
	padding: 0 0 32px;
}

#about p.large {
	text-align: center;
	margin: 0 auto;
	padding: 0 0 48px;
}
#about .button {
	display: block;
	text-align: center;
	padding: 32px 0 20px;
}

/* スマホ */
 @media screen and (max-width: 768px) {
	#about {
		background-image: url("../images/sp_about_back.png");
	}

	#about h2.large {
		text-align: center;
		padding-bottom: 20px;
	}
	#about h3.medium {
		text-align: center;
	}
	
	#about p.large {
		text-align: left;
	}

	#about .button {
		display: none;
		
	}

 }



/* 事業について */
#works{
	 background-color: #fcfafa;
}
#works h2.large {
	text-align: center;
	padding: 0 0 48px;
}

#works p.medium {
	text-align: center;
	padding: 0 0 24px;
}

.works-slider {
	display: none;
}



.works-wrapper-inner-description-list {
	display: flex;
	padding: 0 0 16px;
} 

.works-wrapper-inner-description-list-image .works_img {
	width: 100%;
}

.works-wrapper-inner-description-list-text {
	background:  #fcf7e6;
	width: 719px;
	align-items: center;
	padding: 24px;
}

.works-wrapper-inner-description-list-text-title {
	display: flex;
	align-items: center;
	margin-top: -16px;
}

.works-wrapper-inner-description-list-text-title-number {
	color: #372b16;
	font-family: Cabin;
	font-weight: normal;
	font-size: 50px;
	font-weight: bold;
}

.works-wrapper-inner-description-list-text-title-content {
	font-size: 24px;
	font-weight: bold;
	text-align: left;
	padding: 24px 0 0 16px;
	margin-top: 0px;
}


#works .button {
	display: block;
	text-align: center;
	padding: 24px 0 24px;
}



/* スマホ */
@media screen and (max-width: 768px) {
	#works {
		background-color: #fcfafa;
		display: block;
	}

	#works h2.large {
		text-align: center;
		padding-bottom: 20px;
	}
	#works p.medium {
		text-align: left;
	}

    /* スライダー */
	.works-slider {
        width: 100%;
		display: block;
		margin: 0 auto;
	}

	.works-slider-arrow {
		color: #372b16;
	}

	.works-wrapper-inner-description-list {
		flex-direction: column;
	}

	.works-wrapper-inner-description-list-image {
		display: none;
		
	}

	.works-wrapper-inner-description-list-text {
		width: 80%;
		background:  #fcf7e6;
		align-items: center;
		margin: 0 auto;
		padding: 16px;
	}
	
	.works-wrapper-inner-description-list-text-title {
		display: flex;
		align-items: center;
		margin-top: -16px;
	}
	
	.works-wrapper-inner-description-list-text-title-number {
		color: #372b16;
		font-family: 'Cabin';
		font-weight: normal;
		font-size: 30px;
		font-weight: bold;
	}
	
	.works-wrapper-inner-description-list-text-title-content {
		font-size: 18px;
		font-weight: bold;
		padding: 12px 0 0 16px;
		margin-top: 0px;
	}
	
}

/* 募集職種 */
#recruitment {
	background-image: url(../images/pc_recruitment_back.png);
	background-size: cover;
}
#recruitment h2.large {
	text-align: center;
	color: #372b16;
	padding: 0 0 48px;
}

#recruitment p.medium {
	display: block;
	text-align: center;	
	padding-bottom: 32px;
}

.recruitment-wrapper-inner {
	display: flex;
	justify-content: space-around;
	
}
.recruitment-wrapper-inner-description-item-img {
	width: 100%;
}

#recruitment .button {
	display: block;
	text-align: center;
	padding: 24px 0 24px;
}



/* スマホ */
@media screen and (max-width: 768px) {
	#recruitment {
		display: block;
	}

	#recruitment h2.large {
		text-align: center;
		padding-bottom: 20px;
	}
	#recruitment p.medium {
		text-align: left;
	}

	.recruitment-wrapper-inner {
		display: flex;
		flex-wrap: wrap;
		gap: 20px 28px;
	}

	.recruitment-wrapper-inner-description-item-img {
		display: inline-grid;
	}
}

/* 働く環境 */
#environment {
	background-color: #fff;
}

#environment h2.large {
	text-align: center;
	color: #372b16;
	padding: 0 0 48px;
}

#environment p.medium {
	text-align: center;
	padding: 0 0 32px;
}

.environment-wrapper-inner{
	display: flex;
	justify-content: space-around;
	padding: 15px 0 32px;
}

#environment .button {
	display: block;
	text-align: center;
	padding: 24px 0 24px;
}

.environment-wrapper-inner-description-item .text {
	text-align: center;
}

.back-ground-img {
	width: 100%;
	background-size: cover;
}

@media screen and (max-width: 768px) {
	#environment {
		display: block;
	}

	#environment h2.large {
		text-align: center;
		padding-bottom: 20px;
	}
	#environment p.medium {
		text-align: left;
	}

	.environment-wrapper-inner {	
		display: grid;
		padding-bottom: 20px;
		margin-bottom: 20px;
	} 

	.environment-wrapper-inner-description-item .text {
		text-align: center;
		padding-bottom: 20px;
	}
}

/* メンバー紹介 */
#member {
	background-color: #fcfafa;
}

.back-ground-img {
	margin: 0;
	padding: 0;
	line-height: 0;
	font-size: 0;
}
  
.back-ground-img img {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.member-bg-pc {
	width: 100%;
	display:block !important;
}

.member-bg-sp {
	display: none !important;
}

#member h2.large {
	text-align: center;
	color: #372b16;
	padding: 0 0 48px;
}

#member p.medium {
	text-align: center;
	padding: 0 0 32px;
}

/* pcでスライダー表示しない */
.member-list-slider {
	display: none;
}

.list-item {
	display: flex;
	justify-content: space-around;
	padding: 0 0 48px;
}

.list-item1 .item-text {
	background-color: #fbecda;
	border-left:solid 10px #f8d4a8;
	padding: 16px;
}

.list-item2 .item-text {
	background-color: #fbf3c9;
	border-left:solid 10px #f7e67d;
	padding: 16px;
}

.list-item3 .item-text {
	background-color: #fbe3e7;
	border-left:solid 10px #f7beca;
	padding: 16px;
}

.list-item4 .item-text {
	background-color: #fbe3e7;
	border-left:solid 10px #f7beca;
	padding: 16px;
}

.item-text {
	display: block;
	text-align: left;	
}

.item-text .p {
	letter-spacing: 0.03em;
	padding: 0 0 16px;
}

#member .button {
	display: block;
	text-align: center;
	padding: 24px 0 0; /* ← 上だけにpadding、下の余白を削る */
}
  
@media screen and (max-width: 768px) {
	#member {
		display: block;
	}

	.member-bg-pc {
		display: none !important;
	}
	
	.member-bg-sp {
		width: 100%;
		display: block !important;
	}

	#member h2.large {
		text-align: center;
		padding-bottom: 20px;
	}
	#member p.medium {
		text-align: left;
	}
    
	.item-text {
		text-align: center;
	}

	/* スマホのみスライダー */
	.member-list-slider {
        width: 100%;
		display: block;
		margin: 0 auto;
	}

    .member-list-slider img {
		width: 100%;
		border: #372b16;
		margin: 0 auto;
		/* gap: 10px 10px 0; */
	}

	.list-item {
		display: none;

	}
}



/* エントリー */
#entry  {
	background-image: url(../images/pc_entry_back.png);
	background-size: cover;
}

#entry h2.large {
	text-align: center;
	color: #372b16;
	padding: 0 0 48px;
}

#entry h3.medium {
	text-align: center;
}

#entry p.medium {
	text-align: center;
	padding: 0 0 48px;
}

#entry .button1 {
	display: block;
	text-align: center;
	padding: 32px 0 0;
}

#entry .button2 {
	display: block;
	text-align: center;
	padding: 32px 0 0;
}

@media screen and (max-width: 768px) {
	#entry {
		background-image: url(../images/sp_entry_back_img.png);
		background-size: cover;
	}

	#entry h2.large {
		text-align: center;
		padding-bottom: 20px;
	}

	#entry p.medium {
		text-align: left;
	}

	#entry h3.medium {
		text-align: center;
	}
}

/* /* フッター / */
 #footer {
	background-color: #756c5d;
	text-align: center;
}	

#footer .logo {
	text-align: center;
	padding: 64px 0 24px 0;
} 


.footer a {
	color: #fcfafa;
}

.footer-link a, .copyright {
	font-size: 15px;
	color: #fcfafa;
	text-decoration: none;
	justify-content: space-around;
}	

.footer-link li {
	color: #fcfafa;
	display: inline-flex;
	padding: 0 20px 0;
	text-decoration: none;
} 

.footer-icon {
	display: flex;
	align-items: center;
	justify-content: center; 
	gap: 20px; 
	margin: 32px 16px 48px 16px;
	flex-wrap: wrap; 
	padding: 0; 
}	

.footer-icon img {
	width: 50px;
	height: auto;
}

.footer-icon li::marker {
	text-decoration: none;
}

.copyright {
	color:#fcfafa;
	padding: 0 0 64px;
}

@media screen and (max-width: 768px) {

	#footer {
	    padding: 20px 0 20px 0;
	}
    
    .footer-logo {
	    padding: 20px 0 20px;
	}

	.footer-icon {
		justify-content: center;
		margin: 24px 0;
	}
	
	.footer-icon img {
		width: 24px;
    }

	.footer-link {
	    margin-bottom: 20px;
	}
	.footer-link li {
	    display: block;
	    margin: 0 auto;
	}

    .footer-icon {
		justify-content: center;
		margin: 24px 0;
	}
	
	.footer-icon img {
		width: 40px;
    }
	
}

