@charset "utf-8";

@import url(https://fonts.googleapis.com/css?family=Pacifico);
@import url(https://fonts.googleapis.com/css?family=Josefin+Sans);
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@700&family=Shippori+Mincho&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;600&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Libre+Caslon+Display&display=swap);

/* reset */
htl,body,h1,h2,h3,h4,h5,h6,p,div,ul,li,ol,dl,dt,dd,table,th,td,form,header,nav,footer{
	margin :  0;
	padding : 0;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{margin:0;padding:0;}
address,caption,cite,code,dfn,em,strong,th,var{font-style:normal;}
ul{list-style:none;}
table{border-collapse:collapse;border-spacing:0;}
caption,th{text-align:left;}
q:before,q:after{content:'';}
object,embed{vertical-align:top;}
legend{display:none;}
h1,h2,h3,h4,h5,h6{font-size:100%;}
img,abbr,acronym,fieldset{border:0;}

body{
	font: 14px/1.9 'Noto Sans JP', Arial, Verdana, 游ゴシック, YuGothic,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
	font-weight: 300;
	-webkit-text-size-adjust:100%;
	overflow-x: hidden;
	color: #fff;
	background-image: url(../image/wallpaper/black_dot.gif);
	background-repeat: repeat;
}

a{
	color: #fff;
	text-decoration: none;
}

a:hover, .active{
  text-decoration: underline;
}

a:active, a:focus,input:active, input:focus{outline:0;}

/* 左のアキスペースを取る */
.bodywrap{
 overflow : hidden;
}


/* ヘッダー
------------------------------------------------------------*/
#header{
	position: relative;
    overflow:hidden;
    width:100%;
    height:568px;
}

/*ヘッダー トップページのメイン画像
---------------------------------------------------------------------------*/
#mainimg {
	top: 0px;
	width: 100%;
 height:568px;
	background: url(../image/0_index/mv.jpg) no-repeat center center;/*	背景画像*/
 background-size:cover;	
}
/* mv画像の上の全素材 */
#slogan{
 position: absolute;
 top: 50%;
 width : 80%;
  -webkit-transform: translate(13%,-50%);
 transform: translate(13%,-50%); /* Y軸のセンタリング */
}

/* ロゴ画像 */
#slogan .sloganimg{
	width:50%;
}




/* フッター
------------------------------------------------------------*/
#footer{
	clear: both;
	padding: 50px 10px 50px 0;
	text-align: center;
	font-size: 12px;
}


/* 共通
------------------------------------------------------------*/
h1, h2{
	font-family: 'Josefin Sans', 'Noto Sans JP',serif;
}

img{
	width: 100%;
	height: auto;
}

section{
 clear:both;
}
/* sec01 sec02 */
#sec01,#sec02{
 width : 100%;
}

.c {text-align: center !important;}
.r {text-align: right !important;}
.l {text-align: left !important;}
.nw{white-space: nowrap !important;}
.border{border-bottom: 1px solid #333;}
.uepack10{margin-top : -10px;}/* 上につめる */
.pt15{margin-top : 15px;}/* 上をあける */
.tn08{transform: scale(0.8, 1);
    transform-origin: top left;
    width: 125%;}/* 長体テキスト */



 


/* ボタンの設定 */
/* ボタン白 */
.button{
				display:block;
    max-width:200px;
    width : 100%;
    font-size:18px;
    font-weight:normal;
    text-decoration:none;
    text-align:center;
    padding:8px 0 10px;
    margin : 30px auto 0px auto;
    color:#dfd4be;
    border:2px solid #dfd4be;
}



/* SEC同士の空き */
#sec01,#sec02{
 padding : 100px 0;
}
/* sec01「ようこそ」 story.html「商品一覧」*/
.header2{
 margin-bottom : 50px;
}

/* SEC01 VISION 100% noinner
------------------------------------------------------------*/
/*背景カラー 文字サイズの設定*/
#sec01{
	margin: 0 auto;
	padding : 50px 0;/* 空きの錯覚の調整 */
}

/* 愛されるいけばな */
/* SEC01 header キャッチ */
#sec01 header{
 text-align : center;
}
/* 愛されるいけばな */
#sec01 header .pop{
	color: #fff;	/*文字色*/
	font-size : 60px;/* スマホは55pt */
 font-family: 'Noto Serif JP', serif;
 font-weight : 700;
}


/* SEC01 VISION+ nowrap 縦横センター合わせ */
.flex-container_vision{
width : 70%;
margin : 0 auto;
 display: -webkit-box;
 display: -ms-flexbox;
display: flex;
 -webkit-box-pack: center;
 -ms-flex-pack: center;
justify-content : center;
 -webkit-box-align: center;
 -ms-flex-align: center;
align-items: center;
font-size : 16px;
}

/* いけばなの写真*/ 
.flex-item1 {
 width : 50%;
 height : auto;
}
.flex-item1 img{
 width : 100%;
 height : auto;
}

/* 全リード 子要素(アイテム)テキスト*/ 
.flex-item2 {
 width : 50%;
 text-align : left;
 padding-left : 25px;
}

/* 「単調な暮らしの」 */
.flex-item2 .flex-item2catch{
	font-family: YuMincho, '游明朝', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", "Meiryo","Osaka";	
	font-size : 18px;
	font-weight : 500;
}

/* 「折々に咲く」 */
.flex-item2 p{
 margin-top : 25px;
}



/* SEC02 BENEFIT   100% noinner 80%--
------------------------------------------------------------*/
.wrap{
	width: 60%;
 margin: 0 auto;
}
#sec02 .header2 .catch3{
 font-family: 'Shippori Mincho', serif;
 font-size: 32px;
 font-weight:800;
 color : #fff;
 line-height : 1.5;
 text-align : center;
}
#sec02 .header2 .header2p{
 text-align : center;
}

/*-- Flex box PC用 --*/
.container{
  display: flex; /* 横並びに */
  justify-content: center; /* 中央揃え */
}

.container_left{
 width : 49%;
  margin-right : 1%; /*ボックス同士の右のアキ */
 display: flex;
 flex-direction: column; /* 縦方向 */
}

.container_right{
 width : 49%;
 display: flex;
 flex-direction: column; /* 縦方向 */
}

.se02comment{
 text-align : right;
}




/* 共通【encounter.html】【slogan.html】【school.html】
------------------------------------------------------------*/
/* 上のアキ  100ptの設定、一番下は50pt 【school.html】*/
#contents_a{
 padding-top : 100px;
}
/* 上下のアキ */
#seg01{
 padding-bottom : 50px;
}
#seg02{
 padding : 50px 0;
}

/* 背景色 【school.html】*/
#contents_a{
	background-image: url(../image/40_logo01.gif);
	background-repeat: repeat;}


/* seg01の幅 二重枠は60%*/
#seg01{
 width : 80%;
 margin : 0 auto;
}



/* 【encounter.html】【slogan.html】【school.html】flex60/40
------------------------------------------------------------*/
#header_sub_a{
    width:100%;
    height:auto;
}

/* キャッチコピー「出会い」 */
.aboutcatch{
font-family: YuMincho, '游明朝', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", "Meiryo","Osaka";	
 font-size : 28px;
 font-weight : 900;
}

/* seg02 画像とテキストの横並び flexbox */
#seg02 .about_flex{
 width : 60%;
 margin : 0 auto;
}
#seg02 .about_flex_item:nth-child(2){
flex-direction:row-reverse;
}
.smallcatch{
	font-family: YuMincho, '游明朝', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", "Meiryo","Osaka";	
 font-size : 20px;
 font-weight : 900;
}

#seg02 .about_flex_item{
 display: flex;
 flex-direction: row;
 justify-content: center;
 margin-bottom:100px;
}



/* 子要素(アイテム)写真*/ 
.about_flex_img {
 width : 40%;
 height : auto;
}
.about_flex_img img{
 width : 100%;
 height : auto;
}
/* 子要素(アイテム)テキスト*/ 
.about_flex_txt {
 width : 60%;
 padding : 0 25px;
}




/* 【gallery.html】flex50/50
------------------------------------------------------------*/
.container50{
 width : 60%;
 display : flex;
 justify-content: center;
 margin : 0 auto;
 flex-wrap : wrap;
}
.container50_left{
 width : 45%;
 margin : 2.5%;
}
.container50_right{
 width : 45%;
 margin : 2.5%;
}



/* 【gallery.html】flex1/4
------------------------------------------------------------*/
.container25{
 width : 60%;
 display : flex;
 justify-content: center;
 margin : 0 auto;
 flex-wrap : wrap;
}
.container25_item{
 width : 20%;
 padding : 2px;
}



/*【school.html】table
---------------------------------------------------------------------------*/
.stable{
    width : 95%;
    margin : 0 auto;
}
table {
  border-collapse: collapse;
   border: solid 1px #000;
    margin : 0 auto 15px auto;
        width : 80%;
}
.table_3 th {
 border: solid 1px #000;
 background-color: #FFFF99;
 color: #000;
 padding: 5px 20px;
}
.table_3 td {
 border: solid 1px #000;
 background-color: #ffffff;
 color: #000;
 padding: 20px;
}
.th-pc {
 display: none;
}



/*【link.html】dl dd dt
---------------------------------------------------------------------------*/
/* seg02 */
#seg02 .linkroom{
 width : 50%;
 margin : 0 auto;
}
#seg02 .linkroom .img-box{
 width : 50%;
 margin : 0 auto 50px auto;
}
#seg02 .linkroom .txt-box{
 width : 60%;
 margin : 0 auto;
}

.list {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  color : #333;
}
.list dt, .list dd {
  box-sizing: border-box;
}
.list dt a {
 color : #333;
}
.list dt {
  display: flex;
  align-items: center;
  width: 30%;
  padding: 20px;
  background-color: #AEDFBE;
  border-bottom: 1px solid #999;
}
.list dt:last-of-type,
.list dd:last-of-type {
  border: none;
}
.list dd {
  display: flex;
  align-items: center;
  width: 70%;
  margin-left: 0;
  padding: 20px;
  background-color: #fff;
  border-bottom: 1px solid #999;
}


/* レスポンシブ対応 */
@media screen and (max-width: 800px) {
.list {
  display: flex;
  flex-direction: column;
}
.list dt {
  width: 100%;
}
.list dd {
  width: 100%;
}

}



/*【seasonalnews.html】
---------------------------------------------------------------------------*/
.seasoncatch{
font-family: YuMincho, '游明朝', "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "メイリオ", "Meiryo","Osaka";	
 font-size : 20px;
 font-weight : 900;
}
/* seg30 */
#seg30{
 width : 30%;
 margin : 50px auto;
}
/*section #seasonの間*/
.season{
 padding : 100px 0;
}
/* seasonalnewsの個々の写真 */
.season-img{
 width : 40%;
 margin : 0 auto;
}_

/*inviewのスタイル
---------------------------------------------------------------------------*/
/*共通設定（待機中）*/
.up, .left, .right, .transform1, .transform2 {
	opacity: 0;		/*透明度（透明の状態）*/
	position: relative;
}
/*共通設定（要素が見えたら実行するアクション）*/
.upstyle, .leftstyle, .rightstyle, .transform1style, .transform2style {
	opacity: 1;		/*透明度（色が100%出た状態）*/
	transition: 1.5s 0.8s;	/*1sはアニメーションの実行時間1.5秒。0.8sは0.8秒遅れてスタートする指定。*/
}
/*upスタイル。下から上にフェードインしてくるスタイル（待機中）*/
.up {
	bottom: -50px;	/*基準値の下50pxの場所からスタート*/
}
/*要素が見えたら実行するアクション*/
.upstyle {
	bottom: 0px;	/*基準値まで戻す*/
}
/*leftスタイル。左からフェードインしてくるスタイル（待機中）*/
.left {
	left: -80px;	/*基準値より左に100pxの場所からスタート*/
}
/*要素が見えたら実行するアクション*/
.leftstyle {
	left: 0px;		/*基準値まで戻す*/
}
/*rightスタイル。右からフェードインしてくるスタイル（待機中）*/
.right {
	right: -100px;	/*基準値より右に100pxの場所からスタート*/
}
/*要素が見えたら実行するアクション*/
.rightstyle {
	right: 0px;		/*基準値まで戻す*/
}
/*transform1スタイル。その場で回転するスタイル（待機中）*/
.transform1 {
	transform: scaleX(0);	/*幅を0%でスタート*/
}
/*要素が見えたら実行するアクション*/
.transform1style {
	transform: scaleX(1);	/*幅を100%に戻す*/
}
/*transform2スタイル。倒れた状態から起き上がるスタイル（待機中）*/
.transform2 {
	transform: perspective(400px) rotateX(100deg);
}
/*要素が見えたら実行するアクション*/
.transform2style {
	transform: perspective(0px) rotateX(0deg);
}







/* RESPONSIVE 設定
------------------------------------------------------------*/
/* PC1280-・タブレット横*/
@media only screen and (min-width: 1200px){
	.inner{
		width: 1024px;
	}
		#sec01 #sec04{
		width: 1024px;
	}
	
	body{
	}
}

/* タブレット600-1024 右1/4 */
@media only screen and (min-width: 800px){
	
  a#menu{
		display:none;
	}	

	.panel{
		display:block !important;
	}

	#mainnav{
		position:fixed;
		top: 0;
		width:100%;
		z-index:500;
	}

	#mainnav ul{
		text-align: right;
		padding-right: 30px;
	}

	#mainnav li{
		display: inline-block;
		padding: 45px 10px 20px;
		font-size: 14px;
		font-weight: 300;
	}
	
  #mainnav a{
		color: #fff;
	}
	
	#mainnav.changeNav{
		background: rgba(255,255,255,.9);
		border-bottom: 1px solid #d1d1d1;
	}
	
	#mainnav.changeNav li{
		padding: 20px 10px;
	}


	/* footer
	-----------------*/	
  #footer{
		padding: 30px 10px 70px 0;
	}
}

/* タブレット600-1024 スマホ横 サクラアイコン*/
@media only screen and (min-width: 641px){
	section{
/* border : 1px solid; chk用 */
	}

.col2 li{
		width: 40%;
		padding: 0 3%;
	}

	
}

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

/*トップページのメイン画像 mainimg_s小さな端末用
---------------------------------------------------------------------------*/
	section{
/* background-color : #fcf; chk用 */
	}
#mainimg {
	background: url(../image/0_index/mv_s.jpg) no-repeat center center / cover;
}
/* ロゴ画像を大きく */
#slogan{
	width:90%;
 transform: translateX(7%); /* ネガティブ調整 あとでchk*/
}
/* ロゴ画像 */
#slogan .sloganimg{
	width:80%;
}


/* SEC01  スマホ
------------------------------------------------------------*/ 
/* SEC同士の空き */
#sec01,#sec02{
 padding : 50px 0;
}


/* 空きの錯覚の調整 */
#sec01{
padding-bottom : 25px;
}

/* 「pop today」 pc80pt→*/
#sec01 header .pop{
	font-size : 40px;
	margin-bottom : 25px;
}


/* 画像とテキストを縦に並べる */
.flex-container_vision{
display: flex;
flex-direction: column;
justify-content: center;
 font-size : 14px; /* 16px→ */
}

.sp_br{
    display: none;
  }

/* 「単調な暮らし」 */
.flex-item2 .flex-item2catch{
	font-size : 16px; /* 18px→ */
}
/* 折々に */
.flex-item2_p{
 letter-spacing : -0.1em;
}


/* SEC02 BENEFIT スマホ
------------------------------------------------------------*/
#sec02 .header2 .catch3{
 width : 100%;
}
.se02comment{
 text-align : left;
}
}




/* タブレット メニュー設定 */
@media only screen and (max-width: 799px){
	section{
  /* background-color : #fcf;*/
	}

  a#menu{
  	display: inline-block;
  	position: relative;
  	width: 40px;
  	height: 40px;
  	margin: 10px;
	}

	#menuBtn{
  	display: block;
  	position: absolute;
  	top: 50%;
  	left: 50%;
  	width: 18px;
  	height: 2px;
  	margin: -1px 0 0 -7px;
  	background: #333;
  	transition: .2s;
	}

	#menuBtn:before, #menuBtn:after{
  	display: block;
  	content: "";
  	position: absolute;
  	top: 50%;
  	left: 0;
  	width: 18px;
  	height: 2px;
  	background: #333;
  	transition: .3s;
	}

	#menuBtn:before{
  	margin-top: -7px;
	}

	#menuBtn:after{
  	margin-top: 5px;
	}

	a#menu .close{
  	background: transparent;
	}

	a#menu .close:before, a#menu .close:after{
  	margin-top: 0;
	}

	a#menu .close:before{
  	transform: rotate(-45deg);
  	-webkit-transform: rotate(-45deg);
	}

	a#menu .close:after{
  	transform: rotate(-135deg);
  	-webkit-transform: rotate(-135deg);
	}

	.panel{
		width: 100%;
		display: none;
		overflow: hidden;
		position: relative;
		left: 0;
		top: 0;
		z-index: 100;
	}

	#mainnav{
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		text-align: right;
		z-index:500;
	}

	#mainnav ul{
		background:rgba(0,0,0,0.6);
		text-align: center;
	}

	#mainnav li a{
		position: relative;
		display:block;
		padding:15px 25px;
		color: #fff;
		font-family:'Noto Sans JP',serif;
		font-size : 20px;
	 text-decoration: none;
		/* font-weight: 400;*/
	}

	#mainnav li a:before{
		display: block;
		content: "";
		position: absolute;
		top: 50%;
		left: 5px;
		width: 6px;
		height: 6px;
		margin: -4px 0 0 0;
		border-top: solid 2px #000;
		border-right: solid 2px #000;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	
	/* SEC01  スマホ＆タブレット
------------------------------------------------------------*/
.flex-container_vision{
 width : 80%;
 display: flex;
 flex-wrap:wrap;
 justify-content: center;
}

.flex-item1 {
 width : 100%;
 height : auto;
 }
/* 全リード文 */
.flex-item2 {
 width : 100%;
 text-align: center;
 padding-left : 0;/* pcでの画像とのスペースをトル */
}



/* SEC02 BENEFIT スマホ＆タブレット
------------------------------------------------------------*/
.wrap{
	width: 70%;
 margin: 0 auto;
}
.container_left{
  margin-right : 2%; /*ボックス同士の右のアキ pc1%→*/
}



/* 共通【encounter.html】【story.html】スマホ＆タブレット
------------------------------------------------------------*/
/* seg01 上下のアキ 50ptの設定、一番下は25pt */
#contents_a,#contents_s{
 padding-top : 50px;
}
#seg01{
 padding-bottom : 25px;
}


/* seg01の幅 80%→100% */
#seg01{
 width : 100%;
}


/* 【encounter.html】スマホ＆タブレット
------------------------------------------------------------*/
#seg02 .about_flex{
 width : 100%;
}

#seg02 .about_flex_item:nth-child(2){
  display: flex;
  flex-direction: column;
}

/* seg02 画像とテキストの横並び flexbox */
#seg02 .about_flex_item{
 display: flex;
 flex-direction: column;
 align-items: center;
 font-size : 14px;
 margin-bottom : 50px;
}


.about_flex_img {
 width : 90%;
 height : auto;
 }

.about_flex_txt{
 width : 90%;
 padding-top : 25px;
}

/* about_flex_item文字の装飾 */
.line{
  position: relative;
  display: inline-block;
  padding: 0 180px 0 0;
}


.line:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 180px;
  height: 1px;
  background-color: #fff;
}

.line:after {
  right: 0;
}



/*【link.html】dl dd dt
---------------------------------------------------------------------------*/
  .th-pc {
    display: none;
  }
  .th-sp  {
    display: block !important;
    text-align: center;
  }
   .table_3 td  {
    display: block;
    text-align: center;
  }
  
  
  
/*【seasonalnews.html】
---------------------------------------------------------------------------*/

/* 【gallery.html】flex1/4
------------------------------------------------------------*/
.container25{
 width : 100%;
}
.container25_item{
 width : 20%;
 padding : 2px;
}
/* seg30 */
#seg30{
 width : 90%;
 margin : 25px auto;
}
/* seasonalnewsの個々の写真 */
.seasonimg{
 width : 80%;
}_
}




@media only screen and (max-width: 1199px){
	.vMid{
		padding: 0 100px;
	}
}