@charset "utf-8";

/****************************************
Smart phone BASE 767
*****************************************/
@media screen and (max-width:767px){
body{min-width:100%;}
.sp_view{display: block;}
.pc_view{display: none;}
.br_hide_pc {display: block;}
.br_hide_sp {display: none;}/*<br class="br_hide_sp">*/

/*--------------------------
COMMON
--------------------------*/
#wrapper {
	min-width: initial;	
}
	
/*#wrapper img{
	max-width: 100%;
}*/


	
p {
	font-family: "Sawarabi Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 0.9rem;
	letter-spacing: 0.1em;
	line-height: 2.3em;
	text-align:justify;
	color: #FFFFFF;
}

h1 {
	font-family: "Sawarabi Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.7rem;
	letter-spacing: 0.1em;
	line-height: 2.5em;
	text-align:justify;
	color: #FFFFFF;
	text-align: center;
	padding-bottom: 2%;
}
	
h1.pad_b100px {
	padding-bottom: 8%;
}


h2 {
	font-family: "Sawarabi Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.2rem;
	letter-spacing: 0.1em;
	line-height: 2.5em;
	text-align:justify;
	color: #FFFFFF;
	text-align: center;
	margin-bottom: 10px;
}

h3 {
	font-family: "Sawarabi Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.3rem;
	letter-spacing: 0.1em;
	line-height: 1.7em;
	text-align:justify;
	color: #FFFFFF;
	text-align: center;
	margin-bottom: 10%;
}
	
h4 {
	font-family: "Sawarabi Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.7rem;
	font-feature-settings: "palt"; /* 約物の詰め調整 */
	letter-spacing: 0.1em;
	line-height: 1.5em;
	text-align:justify;
	color: #FFFFFF;
	text-align: left;
	padding-bottom: 25px;
}

.beige h4 {
	color: #071521;
}

h5{
	font-family: "Sawarabi Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 2.3rem;
	font-feature-settings: "palt"; /* 約物の詰め調整 */
	letter-spacing: 0.1em;
	line-height: 2.5em;
	text-align:justify;
	color: #FFFFFF;
	text-align: left;
	padding: 25px 0;
}


.ttl_pc {
	width: 1200px;
	text-align: center;
	padding: 0 0 40px 0;
	margin: 0 auto;
	font-family: Raleway , san-serif;
	font-weight: 100;
	font-size: 1.7rem;
	letter-spacing: 0.25em;
	color: #43679e;
}

.ttl_pc img {
width: 82%;
}

.contents {
	width: 100%;
    margin: 0 ;
	padding: 0 0;
	position: relative;
}


.readmore {
	width: 250px;
	font-family: "Almarai", sans-serif;
	font-weight: 700;
	font-style: normal;
	color: #FFFFFF;
	border-bottom: #FFFFFF 3px solid;
}

.br_sp{display:inline}
	
/*--------------------------
Top
--------------------------*/

#top_container_pc {
	position: relative;
}

#top_pc_keyvisual{
	width: 100%;
	padding-top: 0px;
	text-align:center;
	position: relative;
}

#top_video {
position: absolute;
	top: 0;
	z-index: -999;
	overflow: hidden;
}

#top_video video {
  width: 200%;
  display: block;/*画像下の1pxの隙間を消す*/
}

#top_video .overlay {
  position: absolute;
  bottom: 0;       /* 下に固定 */
  left: 0;
  width: 100%;
  height: 50%;     /* 下半分だけ覆う */
  pointer-events: none;
  background: linear-gradient(
    to top,
    rgba(7,21,33,1), /* 下を濃く */
    rgba(0,0,0,0)    /* 上は透明 */
  );
}
	
#top_pc_keyvisual img {
	display: block;/*画像下の1pxの隙間を消す*/
	margin: 0 auto;
	width: 100%;
	
}

#top_pc_keyvisual_inner {
	width: 100%;
	margin: 0 auto;
	/*max-width: 1800px;*/
}

.top_ttl {
    position: static;
	top:11%;
	left: 1.5%;
    width: 88%;
	padding: 10% 0 0 0;
	margin: 0 auto;
	
}

.top_ttl img {
	width: 100%;
}

.top_ttl_yoko {
    width: 100%;
}

.top_ttl_yoko img {
	width: 100%;
}



/*--------------------------
About
--------------------------*/
#about {
	width: 100%;
	padding: 30% 0 0 0;
	position: relative;
}

#about_ttl_pc {
	width: 12%;
	position: absolute;
	top:-3%;
	right: 7%;
	z-index: 999;
}

#about_ttl_pc img {
	width: 100%;
}

#about_photo {
	width: 100%;         /* 親幅に合わせて可変 */
	aspect-ratio: 16/13; 
	overflow: hidden;
	z-index: -999;
	margin: 10% 0 0 0 ;
	position: relative;
	/*
	position: absolute;
	top:0;
	right: 0;*/
}

#about_photo img {
	width: 180%;
	position: absolute;
	left: 50%;               /* 中心基準 */
	transform: translateX(-50%); /* 左右中央寄せ */
}

.about_text  {
	width: 80%;
	margin: 12% auto 10% auto;
	position: relative;
}

.about_text  p {
	margin: 0 0 10% 0;
}


/*--------------------------
Fabrics
--------------------------*/
#fabrics {
	width: 100%;
	/*background: url("../img/bg_pattern_pink.jpg") repeat;
	background-size: 200px 200px;*/
	padding: 10% 0 0 0;
	position: relative;
}

#fabrics_ttl_sp {
	width: 12%;
	position: absolute;
	top:-3%;
	right: 7%;
	z-index: 999;
}

#fabrics_ttl_sp img {
	width: 100%;
}


#fabrics_photo {
	width: 100%;         /* 親幅に合わせて可変 */
	aspect-ratio: 16/13; 
	overflow: hidden;
	z-index: -999;
	margin: 10% 0 0 0 ;
	position: relative;
	/*background: #CE2426;
	position: absolute;
	top:0;
	right: 0;*/
}

#fabrics_photo img {
	width: 180%;
	position: absolute;
	left: 50%;               /* 中心基準 */
	transform: translateX(-60%); /* 左右中央寄せ */
}

.fabrics_text {
	width: 80%;
	padding: 0 0 0 0%;
	margin: 12% auto 10% auto;
	position: relative;
}

.fabrics_text  p {
	margin: 0 0 10% 0;
}

	

/*--------------------------
Homewear
--------------------------*/
#homewear {
	width: 100%;
	/*background: url("../img/bg_pattern_pink.jpg") repeat;
	background-size: 200px 200px;*/
	padding: 10% 0 0 0;
	position: relative;
}

#homewear_ttl_pc {
	width: 12%;
	position: absolute;
	top:-12%;
	right: 7%;
	z-index: 999;
}

#homewear_ttl_pc img {
	width: 100%;
}

#homewear_photo {
	width: 100%;         /* 親幅に合わせて可変 */
	aspect-ratio: 16/13; 
	overflow: hidden;
	z-index: -999;
	margin: 10% 0 0 0 ;
	position: relative;
	/*background: #CE2426;
	position: absolute;
	top:0;
	right: 0;*/
}

#homewear_photo img {
	width: 180%;
	position: absolute;
	left: 50%;               /* 中心基準 */
	transform: translateX(-50%); /* 左右中央寄せ */
}
	
	

/*--------------------------
Watanosato Kuwanohome
--------------------------*/
#watanosato_kuwanohome {
	width: 100%;
	padding: 0 0;
}

.watanosato_kuwanohome_inner {
	width: 100%;
	display: flex;
	flex-direction: column; /*子要素の並ぶ向き...縦配置column*/
	flex-wrap: wrap; /*子要素の折り返し*/
	justify-content: space-between; /*水平方向の揃え flex-end center space-between space-around*/
	list-style-type: none;
	margin: 0 auto 10% auto;
}


.watanosato_kuwanohome_flex {
	width: 80%;
	margin:10% auto 5%;
	
}

.watanosato_kuwanohome_flex img {
	width: 100%;
}

.watanosato_kuwanohome_txt {
	width: 100%;
	color: #008E97;
	
}

.watanosato_kuwanohome_txt p {
	text-align: center;
	font-size: 0.8rem;
	line-height: 1.8rem;
	margin-bottom: 20px;
}


.watanosato_kuwanohome_ttl {
	height: 20px;
	margin: 10% 0 2% 0;
}

.watanosato_kuwanohome_ttl img {
	height: 100%;
}



.online {
	font-family: "Almarai", sans-serif;
	font-weight: 700;
	font-style: normal;
	color: #FFFFFF;
	text-align: center
}

.sns_icon {
	width: 10%;
	margin: 0 auto;
}

.sns_icon img {
	width: 100%;
}
	

/*--------------------------
Footer
--------------------------*/

#footer_container {
	width: 100%;
	padding: 5% 0;
	position: relative;
	border-top: #FFFFFF solid 1px;
}

#footer_logo {
    width: 100%;
    text-align: center;
    margin: 0 auto;
    padding: 0;
}

#footer_logo p {
	font-size: 0.7rem;
	color: #FFFFFF;
	text-align: center;
}

#footer_logo img {
    width: 100%;
}


.footer_inner {
	width: 20%;
	display: flex;
	flex-direction: row; /*子要素の並ぶ向き...縦配置column*/
	flex-wrap: wrap; /*子要素の折り返し*/
	justify-content: space-around; /*水平方向の揃え flex-end center space-between space-around*/
	list-style-type: none;
	margin: 4% auto 2% auto;
}
.footer_sns_01, .footer_sns_02 {
	width: 32%;
	position: static;
	top: 30%;
}

.footer_sns_01 {
	right: 7.2%;
}

.footer_sns_02 {
	right: 4%;
}

.footer_sns_01 img, .footer_sns_02 img {
	width: 100%;
	height: 100%;
}


.footer_col {
	width: 25%;
}

.footer_col img {
	width: 100%;
}
	

/*--------------------------
NAVIGATION
--------------------------*/
/* グルーバルメニュー */
nav.globalMenuSp {
    position: fixed;
    z-index: 99998;
    top: 0;
    /*right: 0;*/
    left: 0;
    height: 100%;
    overflow: auto;
    /*background: #DBBA45;*/
	background: #071521;
    transform: translateY(-100%);
    transition: all 0.6s;
    width: 100%;
    -webkit-overflow-scrolling: touch;
}

nav.globalMenuSp ul {
    /*background: #DBBA45;*/
    margin: 0 auto;
    padding: 70px 0 0 0 ; 
    width: 100%;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
	font-size: 1.7rem;
	letter-spacing: 0.1em;
	color: #6F6A58;
}

nav.globalMenuSp ul li {
    list-style-type: none;
    padding: 3% 0 3% 0;
    width: 100%;
	border-bottom: #FFFFFF solid 1px;
}
	
nav.globalMenuSp ul li:nth-of-type(1) {
	border-top: #FFFFFF solid 1px;
}

nav.globalMenuSp ul li a {
    display: block;
    color: #6F6A58;
    padding: 1em 0;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
    transform: translateY(0);
}
	
	
nav.globalMenuSp ul li:nth-child(2) {
    display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;

}
	
	nav.globalMenuSp ul li a div.nav_news:nth-child(1) {
		margin-right: 10px;
	}

.overflowHidden {
    overflow: hidden;
}


/* ハンバーガー */
.navToggle {
    display: block;
    position: fixed;    /* bodyに対しての絶対位置指定 */
    right: 15px;
    top: 15px;
    width: 40px;
    height: 40px;
    cursor: pointer;
    z-index: 99999;
    text-align: center;
}

.navToggle span {
    display: block;
    position: absolute;    /* .navToggleに対して */
    width: 40px;
    
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
    left: 0;
}

.navToggle span:nth-child(1) {
    top: 0px;
	border-bottom: solid 3px #FFFFFF;
}

.navToggle span:nth-child(2) {
    top: 9px;
	border-bottom: solid 3px #FFFFFF;
}

.navToggle span:nth-child(3) {
    top: 18px;
	border-bottom: solid 3px #FFFFFF;
}

.navToggle span:nth-child(4) {
    top: 33px;
}


/* 最初のspanをマイナス45度に */
.navToggle.active span:nth-child(1) {
    top: 13px;
    left: 0px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.navToggle.active span:nth-child(2),
.navToggle.active span:nth-child(3) {
    top: 13px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}
	


/*---------------
About - Secound
---------------*/

#top_pc_keyvisual_about {
	width: 100%;
	position: relative;
	aspect-ratio: 16/27; 
	overflow: hidden;
	margin: 0 ;	
}

#top_pc_keyvisual_about img {
	width: 100%;
}

#top_photo {
	width: 100%;

}


	
#top_photo img {
	width: 210%;
	position: absolute;
	left: 50%;               /* 中心基準 */
	
}
	
#top_photo img.tranx_35 {
	transform: translateX(-35%); /* 左右中央寄せ */
}
	
#top_photo img.tranx_40 {
	transform: translateX(-42%); /* 左右中央寄せ */
}
	
#top_photo img.tranx_50 {
	transform: translateX(-60%); /* 左右中央寄せ */
}
	
#top_photo img.trany_50 {
	transform: translateY(0%); /* 左右中央寄せ */
}
	

#top_ttl_secound {
	width: 60%;
	position: absolute;
	top: 12%;
	left: 50%;                /* 親の幅の中央に配置 */
	transform: translateX(-50%); /* 自身の幅の半分だけ戻す */
}

#top_ttl_secound img{
    height: 100%;
}

.company-spec {
  font-family: "Sawarabi Mincho", serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.0rem;
	letter-spacing: 0.1em;
	line-height: 2.0em;
	text-align:justify;
	color: #000000;
  font-feature-settings: "palt"; /* 約物の詰め調整 */
}
.spec-inner {
  margin: auto;
}

/* 定義リストを表レイアウトに */
.spec {
  display: grid;
  gap: 40PX 56px;                 /* 行・列の余白 */
}
.spec > div {
  display: grid;
  grid-template-columns: 1fr;
  align-items: start;
  column-gap: 0px;
    row-gap: 0px;
}

/* 項目（左） */
.spec dt {
  white-space: nowrap;
	font-size: 0.8rem;
	line-height:1.5rem;
}

/* 値（右） */
.spec dd {
  margin: 0;
  color: #000000;
  overflow-wrap: anywhere;
}
/*--------------------------
Secound
--------------------------*/
#secound {
	width: 100%;
	padding: 10% 0 0 0;
	position: relative;
}



.secound_photo {
	width: 100%;         /* 親幅に合わせて可変 */
	aspect-ratio: 16/13; 
	overflow: hidden;
	z-index: -999;
	margin: 0 0 0 0 ;
}

.secound_photo img {
	width: 180%;
	/*object-fit: cover;*/
	position: relative;
	top: -50px;  /* 上に300px移動 */
}

.secound_photo_s {
	width: 100%;         /* 親幅に合わせて可変 */
	aspect-ratio: 16/12; 
	overflow: hidden;
	z-index: -999;
	margin: 0 auto 0 auto;
	position: relative;
}

.secound_photo_s img {
	width: 170%;
	position: absolute;
	left: 50%;               /* 中心基準 */
	transform: translateX(-50%);
}

.secound_photo_s img.b_30 {
	top: -30px;  /* 上に300px移動 */
}

.secound_photo_s img.b_100 {
	top: -100px;  /* 上に300px移動 */
}

.secound_text {
	width: 80%;
	margin: 0 auto;
	padding: 15% 0 10% 0;
}
	


.secound_text  p {
	margin: 0 0 4% 0;
	text-align: left;
}
	
.secound_text_about {
	width: 80%;
	margin: 0 auto;
	padding: 0% 0 10% 0;
	
}

.secound_text_about  p {
	margin: 0 0 4% 0;
	text-align: left;
}

.secound_text_hidari {
	width: 80%;
	margin: 15% auto 0 auto;
	padding: 0 0 10px 0;
	position: relative;
}
	
.secound_text_hidari  p {
	margin: 0 0 4% 0;
	text-align: left;
}


.secound_text_flex {
	width: 80%;
	display: flex;
	flex-direction: row; /*子要素の並ぶ向き...縦配置column*/
	flex-wrap: wrap; /*子要素の折り返し*/
	justify-content: space-between; /*水平方向の揃え flex-end center space-between space-around*/
	list-style-type: none;
	margin: 0 auto 15% auto;
	text-decoration: none;
}

.secound_text_flex .flex_left {
	width: 30%;
}

.secound_text_flex .flex_right {
	width: 65%;
}

.ttl_sec {
	width: 100%;
	text-align: center;
	padding-bottom: 80px;
}



.contact_flex {
	width: 80%;
	display: flex;
	flex-direction: column; /*子要素の並ぶ向き...縦配置column*/
	flex-wrap: wrap; /*子要素の折り返し*/
	justify-content: space-between; /*水平方向の揃え flex-end center space-between space-around*/
	list-style-type: none;
	margin: 10px auto 150px auto;
	text-decoration: none;
}

.contact_flex .flex_left {
	width: 100%;
}

.contact_flex .flex_right {
	width: 100%;
}

.flex_left h2 {
	font-size: 2.0rem;
	text-align: left;
}

.ttl_sec {
	width: 100%;
	text-align: center;
	margin: 20% 0 5% 0;
	padding-bottom: 0;
}
	
	.ttl_sec img {
		width:50%;
	}
	

}