@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@400;500;700&family=Noto+Sans+JP:wght@400;500;700&display=swap');
/*英数字候補 Roboto Inter Lato(500なし)*/
@import url('https://fonts.googleapis.com/css2?family=Material+Icons');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@40,500,0,0');

:root {
	--Bk00-c: #000;    /* 黒 */
	--Bk33-c: #333;    /* 黒 */
	--Gr66-c: #666;
	--Gr99-c: #999;    /* Menu nav / Vision C3 */
	--GrCC-c: #CCC;
	--GrDD-c: #DDD;
	--GrEE-c: #EEE;
	--GrF6-c: #F6F6F6;

	--Wt-c: #FFF;      /* 白 */

	--Main-c: #35BC1E;    /* メインカラー 黄緑 midnightblue orange*/
	--Main2-c: #;
	--Main3-c: #;

	--Sub-c: #727171;     /* サブカラー グレー */
	--Sub2-c: #;
	--Sub3-c: #;

	--SP01-c : #66CCCC;   /* Vision top 青緑 */
	--SP02-c : #ED7B90;   /* Vision FK-23 中紅花 */
	--SP03-c : #44A828;   /* Vision LFK 緑 */

	--SP04-c : #FDF1F1;   /* Products 背景 薄桜 */
	--SP05-c : #FEF9F0;   /* Products 商品画像背景 薄黄 */
	--SP06-c : #FFBB00;   /* Products 乳酸菌サプリメント オレンジ */
	--SP07-c : #33cc00;   /* Products 健康補助食品 黄緑 */
	--SP08-c : #32BAFF;   /* Products 養毛剤 空色 */
	--SP09-c : #ECB1C6;   /* Products 化粧品 薄桃 */

	--SP10-c : #FFFFEB;   /* CSR 背景 薄黄 */
	--SP11-c : #F9F9F9;   /* Update 背景 薄黄 */
	--SP12-c : #FFF8FF;   /* Contact 背景 薄黄 */
	--SP13-c : #C82536;   /* Contact 背景 薄黄 */
	--SP14-c : #FEF8EB;   /* Contact 背景 薄黄 */

	--linkhover-c: #3366FF;   /* リンク */
	--hr-c: #CCC;

}

/* 全体の設定
--------------------------------------------------------------------*/
* {
	box-sizing: border-box;
	margin:0;
	padding:0;
	min-height: 0vw; /* Safari clamp関数対策 */
}

html {
	font-size: 62.5%; /* 1rem=10pxに逆算 */
	scroll-behavior: smooth;
	scroll-padding-top: 70px;
}

body {
	font-family:'Roboto', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	background: var(--Wt-c);
	color: var(--Bk33-c);
	font-size: clamp(16px, 2.35vw, 20px);
	font-weight: 400;
	line-height: 1.7;
	font-feature-settings: 'palt' 1;
	letter-spacing: -0.03;
	margin:0;
	padding:0;
}

/* 見出し */
h1, h2, h3, h4, h5 {
	margin: 0 0 0 0;			/* マージン */
	font-feature-settings: 'palt' 1;	/* 字詰 */
	font-weight: 500;			/* 太さ */
	letter-spacing: 0.06vw;			/* 字間 */
	line-height: 1.5;			/* 行間 */
}

h1, h2 {letter-spacing: 0.1vw; line-height: 1.35;}

h1 { font-size: clamp(40px, 5.2vw, 44px); }
h2 { font-size: 36px; }
h3 { font-size: 24px; }
h4 { font-size: 20px; }
h5 { font-size: 18px; }

.f14 { font-size: 14px; }
.f16 { font-size: 16px; }
.f18 { font-size: 18px; }
.f20 { font-size: 20px; }
.f22 { font-size: clamp(20px, 2.6vw, 22px); }
.f24 { font-size: clamp(21px, 2.73vw, 24px); }
.f26 { font-size: clamp(23px, 3vw, 26px); }
.f30 { font-size: clamp(26px, 3.38vw, 30px); }
.f32 { font-size: clamp(29px, 3.78vw, 32px); }
.f48 { font-size: clamp(44px, 5.73vw, 48px); }
.fb4 {font-weight: 400; }
.fb5 { font-weight: 500; }
.fb7 { font-weight: 700; }


/* リンク
--------------------------------------------------------------------*/
a {
	display: block;
	color: var(--Bk33-c);
	text-decoration-line: none;
}

a:hover { 
	color: var(--linkhover-c);
}

a img:hover {
	opacity: 0.7;
}

.center {
	text-align: center;
}

hr {
	margin-top: 3rem;
	margin-bottom: 3.5rem;
	border-width: 0;
	border-top: 1px solid var(--hr-c);
}

p {
	margin-top: 0;
}

img {
	max-width:100%;
	height: auto;		/* 高さ自動 */
	vertical-align: top;	/* 下余白対策 */
}


ol, ul {
	padding-left: 0;
	margin-top: 0;
}

.spbr {
	display: none;
}

.pc_off {
	display: none;
}



/*ヘッダー border: solid 2px red; 
--------------------------------------------------------------------*/
header {/* border: solid 1px blue; */
	background-color: var(--Wt-c);
	position: relative;
	z-index: 400;
}

.container {
	margin: 0 auto;
	max-width: 1200px;
	position: relative;
}

.head {/*border: solid 2px blue;*/
	/*display: flex;*/
	padding: 0 0 0 0;
	margin: 0 0 0 0;
	height: 92px;

	/* 下部メニュー境界 */
	box-shadow: 0px 8px 10px -10px rgba(0,0,0,0.2);
}

/*ロゴマーク*/
.header_lbox {/*border: solid 2px red;*/
	position: absolute;
	display: inline-block;
	line-height: 1.2;
	margin: 8px 0 0 10px;
	height:auto;
}
/*ロゴマーク*/
.header_lbox img {
	height: 80px;
}

/* ヘッダー会社名表記
--------------------------------------------------------------------*/
.header_rbox {/* border: solid 1px red; */
	position: absolute;
	display: flex;
	align-items: flex-start;
	bottom: 14px;
	right: 10px;
	padding:0 0 0 0;
	line-height: 0;
	color: var(--Sub-c);
}

.header_rbox p:nth-child(1) {
	margin: 0 0 0 0;
	line-height: 1.3;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: -.05rem;
}

.header_rbox p:nth-child(1) span {
	margin: 0 0 0 0;
	font-size: 24px;
	line-height: 1;
	letter-spacing: 0rem;
	font-weight: 700;
}

.header_rbox p:nth-child(2) {
	margin: 0 3px 0 8px;
	line-height: 0.9;
}

.header_rbox p:nth-child(2) img {
	vertical-align: top;
	margin: 0 0 0 0;
	height:48px;
}

.header_rbox p:nth-child(3) {
	margin: 0 0 0 0;
	line-height: 0.9;
	font-size: 14.6px;
	font-weight: 500;
}

.header_rbox p:nth-child(3) a {
	display: inline-block;
	margin: 0 0 0 0;
	font-size: 30px;
	font-weight: 700;
	letter-spacing: -.1rem;
	color: var(--Sub-c);
}

.header_rbox p:nth-child(3) span {
	display: inline-block;
	margin: 4px 0 0 2px;
	font-size: 16px;
	font-weight: 500;
	letter-spacing: 0.05rem;
}

.header_rbox p:nth-child(4) {
	margin: 0 0 0 8px;
}

.header_rbox p:nth-child(4) img {
	vertical-align: top;
	margin: 0 0 0 0;
	height:48px;
}

/* メニュー
--------------------------------------------------------------------*/
.menu {
	position: relative;
	box-shadow: 0 2px 8px rgba(0,0,0,0.2);
	z-index: 100;
	background-color: var(--Wt-c);
}

.menu nav {/* border: solid 1px orange; */
	margin: 0 auto;
	display:inline-block;
}

.menu .container {/* border: solid 1px orange; */
	text-align: center;
}


.menu nav ul {
	display: flex;
	list-style: none;
}

.menu nav li {
	margin-bottom: 0;
}

.menu nav li a {/* border: solid 1px red; */
	position: relative;
	display: inline-block;
	line-height: 1.6;
	font-size: clamp(16px,1.5vw,18px);
	font-weight: 500;
	text-decoration: none;
	text-align: center;
	color: var(--Gr99-c);
	padding: 7px 1vw 5px 1vw;
	transition: 0.5s;
}

.menu nav li a:hover {
	background: var(--Main-c);
	color: var(--Wt-c);
}



/* スタート時に表示するロゴマーク
--------------------------------------------------------------------*/
.start {
	background: var(--Wt-c);
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 9000;
}

.start p {/*border: solid 2px red;*/
	position: fixed;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	display: none;
	z-index: 9999;
}



/* スクロールしてヘッダ出現
--------------------------------------------------------------------*/
.subheader {/* border: solid 1px red; */
	position: fixed;
	z-index: 500;
	top:0;
	left:0;
	width: 100%;
	background-color: var(--Main-c);
	color: var(--Wt-c);
	box-shadow: 0 2px 8px rgba(0,0,0,0.2);
	display: none;
}

.subheader .container {/* border: solid 3px blue; */
	display: flex;
	justify-content: space-between;
	height: 100%;
}

.subheader p img {
	height: 62px;
}

.subheader p {/* border: solid 1px red; */
	line-height: 1;
	margin: 8px 0 5px 6px;
	width: 170px;
}

.subheader nav {/* border: solid 1px red; */
	flex: 1;
	/*text-align: center;*/
	margin-left: 2.2vw;
	margin-top: auto;
	margin-bottom: 6px;
}
.subheader .container div {/* border: solid 1px red; */
	width: 50px;
	height: 58px;
	margin-top: auto;
	margin-right: 6px;
}

.subheader nav ul {/* border: solid 1px orange; */
	display: flex;
	flex-wrap: wrap;
	line-height: 1.1;
	list-style: none;
}

.subheader nav li {
	margin-bottom: 0;
}

.subheader nav li a {/* border: solid 1px red; */
	position: relative;
	display: inline-block;
	line-height: 1.1;
	font-size: clamp(16px,1.5vw,18px);
	font-weight: 500;
	text-decoration: none;
	text-align: center;
	color: var(--Wt-c);
	padding: 4px 1vw 4px 1vw;
}

.subheader nav li a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	content: '';
	width: calc(100% - 2vw);
	height: 2px;
	background: var(--Sub-c);
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform .3s;
}

.subheader nav li a:hover::after {
	transform: scale(1, 1);
}

.subheader nav li a:hover {
	color: var(--Sub-c);
}



/* トップメイン画像
--------------------------------------------------------------------*/
.slide {
	position: relative;
	width: 100%;
	height: 38vw;
	overflow: hidden;
}

.slide div {
	z-index:10;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	animation: slider-img 28s linear infinite;
}

.slide span {
	z-index:11;
	white-space: nowrap;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: var(--Wt-c);
	line-height: 1.3;
	text-shadow: 3px 3px 8px rgba(0, 0, 0, 0.6);
	opacity: 0;
	animation: slider-text 28s linear infinite;	
}

.slide div:nth-of-type(2) {
	animation-delay: 7s;
}

.slide div:nth-of-type(3) {
	animation-delay: 14s;
}

.slide div:nth-of-type(4) {
	animation-delay: 21s;
}


/*6枚バージョン
.slide div:nth-of-type(5) {
	animation-delay: 28s;
}

.slide div:nth-of-type(6) {
	animation-delay: 35s;
}


@keyframes slider-img {
	0% {
		opacity: 0;
		transform: scale(1);
	}
	4.76% {
		opacity: 1;
	}
	16.67% {
		opacity: 1;
	}
	21.43% {
		opacity: 0;
		transform: scale(1.2);
	}
	100% {
		opacity: 0;
	}
}
*/

/*テスト6枚バージョン
/*==================================================
アニメーション計算
総秒数（42）=使用画像枚数（6）x1枚の表示時間（7）
フェードイン、フェードアウト時間（2）
0秒				0%
2秒	フェードイン		4.76% (2/42)
7秒	画像1枚の表示時間	16.67% (7/42)
9秒	フェードアウト、ズーム	21.43% (9/42)
42秒	非表示			100%
==================================================*/
/*==================================================
 テキスト部分アニメーション計算
総秒数（42）=使用画像枚数（6）x1枚の表示時間（7）
フェードイン、フェードアウト時間（1,0.4）
0秒				0%
1秒	フェードイン		2.38% (1/42)
7秒	画像1枚の表示時間	16.67% (7/42)
8秒	フェードアウト		19.05% (8/42)
42秒	非表示			100%
==================================================*/

/*4枚バージョン*/
@keyframes slider-img {
	0% {
		opacity: 0;
		transform: scale(1);
	}
	7.14% {
		opacity: 1;
	}
	25% {
		opacity: 1;
	}
	32.14% {
		opacity: 0;
		transform: scale(1.2);
	}
	100% {
		opacity: 0;
	}
}

/*==================================================
アニメーション計算
総秒数（28）=使用画像枚数（4）x1枚の表示時間（7）
フェードイン、フェードアウト時間（2）
0秒				0%
2秒	フェードイン		7.14% (2/28)
7秒	画像1枚の表示時間	25% (7/28)
9秒	フェードアウト、ズーム	32.14% (9/28)
21秒	非表示			100%
==================================================*/
/*==================================================
 テキスト部分アニメーション計算
総秒数（28）=使用画像枚数（4）x1枚の表示時間（7）
フェードイン、フェードアウト時間（1,0.4）
0秒				0%
1秒	フェードイン		3.57% (1/28)
7秒	画像1枚の表示時間	25% (7/28)
8秒	フェードアウト		28.57% (8/28)
21秒	非表示			100%
==================================================*/

.slide span:nth-of-type(2) {
	animation-delay: 7s;
}

.slide span:nth-of-type(3) {
	animation-delay: 14s;
}

.slide span:nth-of-type(4) {
	animation-delay: 21s;
}

/*6枚バージョン
.slide span:nth-of-type(5) {
	animation-delay: 28s;
}

.slide span:nth-of-type(6) {
	animation-delay: 35s;
}

@keyframes slider-text {
	0% {
		opacity: 0;
	}
	2.38% {
		opacity: 1;
	}
	16.67% {
		opacity: 1;
	}
	19.05% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}*/

/*4枚バージョン*/
@keyframes slider-text {
	0% {
		opacity: 0;
	}
	3.57% {
		opacity: 1;
	}
	25% {
		opacity: 1;
	}
	28.57% {
		opacity: 0;
	}
	100% {
		opacity: 0;
	}
}


/* メイン
--------------------------------------------------------------------*/
main {/* border: solid 2px red; */
	position: relative;
	margin: 1rem 0 0 0;
}

/*各セクション 上下内側の間隔 
---------------------------------------------*/
section {/* border: solid 3px blue; */
	margin: 0 0 0 0;
	padding: clamp(23px,4.56vw,40px) 0 clamp(23px,4.56vw,40px) 0;
}

/*各セクション1200px囲み　左右内側の間隔 
---------------------------------------------*/
.inner {/*border: solid 1px orange;*/
	margin: 0 auto;
	max-width: 1200px;
	padding: 0 2rem 0 2rem;
}



/* トップ企業理念
　　※最初のブロックのみファイル読込時にスライドイン 
--------------------------------------------------------------------*/
#Vision {
	margin: -2rem 0 0 0;
}

#Vision .contents1 {/* border: solid 1px orange; */
	text-align: center;
}

#Vision .contents1 h1 {
	display: inline-block;
	position: relative;
	white-space: nowrap;
	margin: 1rem 0 0 0;
	line-height: 1.4;
	color: var(--SP01-c);
	animation: SlideIn 5s forwards ;
	opacity: 0;
	transition : 0.6s;
}

#Vision .contents1 h1:nth-of-type(1) {
	animation-delay: 3.0s;
}

#Vision .contents1 h1:nth-of-type(2) {
	animation-delay: 3.4s;
}

#Vision .contents1 h1:nth-of-type(3) {
	animation-delay: 3.8s;
}

@keyframes SlideIn {
	0% {
		opacity: 0;/*初期状態では透明に*/
		transform: translateY(-100px);
	}
	50% {
		opacity: 1;
		transform: translateY(0);
	}
	75% {
		opacity: 1;
		transform: translateY(0);
	}
	100% {
		opacity: 1;
		transform: translateY(0);
	}
}

#Vision .contents1 h1:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 1px;
	height: 2px;
	background: var(--SP01-c);
	animation: SlideInline 5.4s forwards ;
	width: 0%;
}

#Vision .contents1 h1:nth-of-type(1):after {
	animation-delay: 3.0s;
}

#Vision .contents1 h1:nth-of-type(2):after {
	animation-delay: 4.0s;
}

#Vision .contents1 h1:nth-of-type(3):after {
	animation-delay: 4.5s;
}

@keyframes SlideInline {
	0% {
		width: 0%;
	}
	50% {
		width: 100%;
	}
	75% {
		width: 100%;
	}
	100% {
		width: 100%;
	}
}

.last span:nth-of-type(1) {
	line-height: 1;
	display: inline-block;
	background: var(--SP02-c);
	color: var(--Wt-c);
	padding: 0.2rem 1rem 0.2rem 1rem;
	margin: 0 1rem 0 1rem;
}

.last span:nth-of-type(2) {
	line-height: 1;
	display: inline-block;
	background: var(--SP03-c);
	color: var(--Wt-c);
	padding: 0.2rem 1rem 0.2rem 1rem;
	margin: 0 1rem 0 0;
}

.last {
	display: inline-block;
	position: relative;
	margin: 1rem 0 0 0;
	line-height: 1.4;
	color: var(--Bk33-c);
	opacity: 0;
	transition: 1.0s ease;
}

.last.on {
	animation: scrollUp 2s forwards;
}

.last.on:nth-child(8) {/* border: solid 1px orange; */
	animation-delay: 0.6s;
}

@keyframes scrollUp {
	0% {
		opacity: 0;
		transform: translateY(-100px);
	}
	100% {
		transform: translateY(0);
		opacity: 1;
	}
}

.last:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 1px;
	height: 2px;
	background: var(--Bk33-c);
	width: 0%;
}

.last.on:after {
	animation: Drawline 2s 1s forwards;
}

.last.on:nth-child(8):after {
	animation-delay: 1.8s;
}

@keyframes Drawline {
	0% {
		width: 0%;
	}
	100% {
		width: 100%;
	 }
}

#Vision .contents2 {
	width: min(90vw,900px);
	text-align: center;
	margin: 0 auto;
}

#Vision .contents2 h2 {
	display: inline-block;
	color: var(--Gr99-c);
}

#Vision .contents2 h4 {
	display: inline;
	font-size: 16px;
	font-weight: 400;
	color:  var(--Bk33-c);
	border-bottom: solid 1px #cd5c5c;
}

#Vision .contents3 {
	/*position: relative;*/
}

#Vision .contents3 .daitori {
	display: inline-block;
	float: right;
	clear: both;
	margin: 0 0 0 3rem;
}

#Vision .contents3 figure {
	width: clamp(165px,28.9vw,280px);
	height: 100%;
}

#Vision .contents3 .space {
	display: block;
	float: right;
	height: calc(430px - (min(1vw,12px) * 32)); /* 代取画像の上のスペース */
	outline: 1px solid var(--Wt-c);/* var(--Wt-c) */
}

#Vision .contents3 .scroll_box:nth-child(2) {
	transition-delay: 0.9s;
}

#Vision .contents3 .text_r {
	float: right;
	display: inline-block;
	text-align: right;
	line-height: 1.6;
}

#Vision .contents3 .text_r .vaup {
	display: inline-block;
	vertical-align: top;
	margin: 1rem 0 0 0;
}



/* 各セクション共通
--------------------------------------------------------------------*/
/* 段落
---------------------------------------------*/
.cb { clear: both; }
.sp10 { height: clamp(9px,1.3vw,10px); }
.sp15 { height: clamp(12px,1.82vw,15px); }
.sp20 { height: clamp(15px,2.35vw,20px); }
.sp25 { height: clamp(18px,2.87vw,25px); }
.sp30 { height: clamp(20px,3.39vw,30px); }
.sp35 { height: clamp(22px,3.91vw,35px); }
.sp40 { height: clamp(23px,4.56vw,40px); }
.sp45 { height: clamp(24px,5.08vw,45px); }
.sp50 { height: clamp(25px,5.73vw,50px); }



/* タイトル 
---------------------------------------------*/
.wrap_tt h2 {/* border: solid 1px orange; */
	text-align: center;
	color: var(--GrCC-c);
	padding: 1rem 0 clamp(22px,3.91vw,35px) 0;
}

/* 英文字 */
.wrap_tt h2 span {
	display: flex;
	align-items: center;
	font-size: 18px;
	color: var(--Gr99-c);
}

/* 罫線左右 */
.wrap_tt h2 span:before,
.wrap_tt h2 span:after {
	content: "";
	height: 1px;
	flex-grow: 1;
	background-color: var(--GrCC-c);
}

.wrap_tt h2 span:before {
	margin-right: 1rem;
}
 
.wrap_tt h2 span:after {
	margin-left: 1rem;
}

/* 本文 両端ぞろえ 字詰補正 
---------------------------------------------*/
p.sentence {/* border: solid 1px orange; */
	margin: 2rem 0 0 0;
	text-align: justify;
	padding: 0 min(1.95vw,15px) 0  min(1.95vw,15px);/* 少しインデント */
}

/* p 右寄せ */
p.text_r {/*border: solid 2px red;*/
	text-align: right;
	padding: 0 min(1.95vw,15px) 0  min(1.95vw,15px);/* 少しインデント */
}

/* p 改行間隔 */
p.sentence br {
	display: block;
	content: "";
	margin: 0.8rem 0;
}

/* スクロールで下からスライド 
---------------------------------------------*/
.scroll_box {
	transition: 1.0s ease;
	transform: translateY(100px);
	opacity: 0;
}

.scroll_box.on {
	transform: translateY(0);
	opacity: 1;
}

/* リスト 
---------------------------------------------*/
.inner ul {
	list-style: inside;
	/* margin: 2rem 0 0 3rem; */
}

.inner ul li {
	/* font-size: 110%;
	font-weight: 500; */
}

/* 要素 左寄せ 
---------------------------------------------*/
.f_l {
	float: left;
	margin: 20px 20px 20px 0;
}

/* 要素 右寄せ 
---------------------------------------------*/
.f_r {
	float: right;
	margin: 20px 0 20px 20px;
}

/* 要素 グラデーション 
---------------------------------------------*/
.grade {
	background-image: linear-gradient(
		90deg,
		hsl(90deg 59% 47%) 0%,
		hsl(187deg 69% 50%) 29%,
		hsl(215deg 94% 73%) 43%,
		hsl(308deg 60% 72%) 57%,
		hsl(3deg 100% 77%) 71%,
		hsl(31deg 96% 64%) 100%
	);
}

/* 画像ボックス 白枠 
---------------------------------------------*/
.imgbox {
	width: min(40vw, 400px);
	box-sizing: border-box;
}

.imgbox figure {
	width:100%;
	height: auto;
	padding: 6px;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
	background: var(--Wt-c);
}

.imgbox span {
	display:block;
	padding: 6px 12px 0px 12px;
	color: var(--Gr66-c);
}



/* 取扱商品　　　border: solid 1px blue;
--------------------------------------------------------------------*/
#Products {
	background: rgba(255,245,238,1);/* seashell #fff5ee */
}

.f-box {			/* 取扱商品 親囲み */
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content:space-between;
	width: 100%;
	padding: 0 0 0 0;
	gap: 1.2rem;	/*配置したボックスの間隔を設定*/
}


/* オリジナル商品 通常商品より若干拡大 */
.f-original {			/* トライアル商品 各囲み */
	overflow: hidden;
	display: flex;
	flex-direction: column;
	background: var(--SP14-c);	/* 画像背景色 */
	border: solid 1px var(--GrDD-c);
	border-radius: 12px;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
	flex-basis: 32.5%;	/*各ボックスの幅を設定*/
	margin: 0 0 -1rem 0;
}

.f-box .f-original div.naiyo {		/* 取扱商品 テキスト囲み */
	padding: 1.4rem;
	background: var(--Wt-c);
	width: 100%;
	height: 100%;
	font-size: 16px;
	color: var(--Gr66-c);
}

.f-box .f-original figure {		/* 取扱商品 画像 */
	width: 86%;		/* 写真サイズ％ 600*600から算出 */
	margin-right: auto;	/* 中欧寄せ */
	margin-left: auto;
	min-height: auto;	/* 高さ指定しないと全て表示されない */
}

.f-original:hover figure img {/* box毎拡大= figure img外す */
	transform: scale(1.16);
	opacity: 1.0;
	/* z-index: 999; */
}

.f-box .f-original figure img {	/* 取扱商品 画像 上記指定済みで未指定でもいいが*/
	max-width:100%;
	height: auto;/*高さ自動*/
	transition: 0.6s;
}

.f-box .f-original div.naiyo span {/* border: solid 1px blue; */
	display: block;
	margin: 0 0 min(1.3vw,1rem) 0;
}

/* 商品名 */
.f-box .f-original div.naiyo span:nth-child(1) {
	vertical-align:top;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 min(1.3vw, 0.6rem) 0;
}

/* 種別 */
.f-box .f-original div.naiyo p:nth-child(2) {
	margin: 0 0 min(1.3vw, 0.6rem) 0;
}

.f-box .f-original div.naiyo p::after {
	content: "";
	display: block;
	clear: both;
}

.f-box .f-original div.naiyo p:nth-child(2) span {
	display: inline-block;
	font-size: 18px;
	font-weight: 400;
	color: var(--Wt-c);
	line-height: 1.3;
	padding: 3px 7px 3px 6px;
	border-radius: 0 0 8px 8px;
	/*float: left;*/
}

.f-box .f-original div.naiyo p.color5 {
	border-top: 2px solid var(--SP13-c);
}

.f-box .f-original div.naiyo p.color5 span {
	background: var(--SP13-c);
}

/* 価格 */
.f-box .f-original div.naiyo span:nth-child(3) {
	font-size: 28px;
	font-weight: 500;
	line-height: 0.8;
}
/* 価格 価格： */
.f-box .f-original div.naiyo span:nth-child(3)::before {
	content: "価格：";
	margin: 0 0 0 8px;
	font-size: 18px;
	font-weight: 400;
}
/* 価格 円（税込） */
.f-box .f-original div.naiyo span:nth-child(3)::after {
	content: "円（税込）";
	font-size: 18px;
	font-weight: 400;
}
/* 内容量 */
.f-box .f-original div.naiyo span:nth-of-type(3) {
	font-weight: 500;
	line-height: 1.3;
	margin: 0 0 0 0;
	font-size: 18px;

}
/* 内容量 内容量： */
.f-box .f-original div.naiyo span:nth-of-type(3)::before {
	font-weight: 400;
	display: inline-block;
	content: "内容量：";
	margin: 0 0 0 8px;
}

.f-box .f-original div.naiyo span.qty {
	font-weight: 400;
	display: inline;
	font-size: 18px;
}

.f-box .f-original div.naiyo p.color1 {
	border-top: 2px solid var(--SP06-c);
}

.f-box .f-original div.naiyo p.color1 span {
	background: var(--SP06-c);
}

/* オリジナル商品 */



/* お試しトライアル 通常商品より若干拡大 */
.f-trial {			/* トライアル商品 各囲み */
	overflow: hidden;
	display: flex;
	flex-direction: column;
	background: var(--SP14-c);	/* 画像背景色 */
	border: solid 1px var(--GrDD-c);
	border-radius: 12px;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
	flex-basis: 28%;	/*各ボックスの幅を設定*/
	margin: 0 0 -1rem 0;
}

.notin2 {			/* ダミーボックス */
	/* border: solid 1px var(--GrDD-c); */
	flex-basis: 0;
	margin: 0 0 0 0;
}

.f-box .f-trial div.naiyo {		/* 取扱商品 テキスト囲み */
	padding: 1.4rem;
	background: var(--Wt-c);
	width: 100%;
	height: 100%;
	font-size: 16px;
	color: var(--Gr66-c);
}

.f-box .f-trial figure {		/* 取扱商品 画像 */
	width: 86%;		/* 写真サイズ％ 600*600から算出 */
	margin-right: auto;	/* 中欧寄せ */
	margin-left: auto;
	min-height: auto;	/* 高さ指定しないと全て表示されない */
}

.f-trial:hover figure img {/* box毎拡大= figure img外す */
	transform: scale(1.16);
	opacity: 1.0;
	/* z-index: 999; */
}

.f-box .f-trial figure img {	/* 取扱商品 画像 上記指定済みで未指定でもいいが*/
	max-width:100%;
	height: auto;/*高さ自動*/
	transition: 0.6s;
}

.f-box .f-trial div.naiyo span {/* border: solid 1px blue; */
	display: block;
	margin: 0 0 min(1.3vw,1rem) 0;
}

/* 商品名 */
.f-box .f-trial div.naiyo span:nth-child(1) {
	vertical-align:top;
	font-size: 24px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 min(1.3vw, 0.6rem) 0;
}

/* 種別 */
.f-box .f-trial div.naiyo p:nth-child(2) {
	margin: 0 0 min(1.3vw, 0.6rem) 0;
}

.f-box .f-trial div.naiyo p::after {
	content: "";
	display: block;
	clear: both;
}

.f-box .f-trial div.naiyo p:nth-child(2) span {
	display: inline-block;
	font-size: 18px;
	font-weight: 400;
	color: var(--Wt-c);
	line-height: 1.3;
	padding: 3px 7px 3px 6px;
	border-radius: 0 0 8px 8px;
	/*float: left;*/
}

.f-box .f-trial div.naiyo p.color5 {
	border-top: 2px solid var(--SP13-c);
}

.f-box .f-trial div.naiyo p.color5 span {
	background: var(--SP13-c);
}

/* 価格 */
.f-box .f-trial div.naiyo span:nth-child(3) {
	font-size: 28px;
	font-weight: 500;
	line-height: 0.8;
}
/* 価格 価格： */
.f-box .f-trial div.naiyo span:nth-child(3)::before {
	content: "価格：";
	margin: 0 0 0 8px;
	font-size: 18px;
	font-weight: 400;
}
/* 価格 円（税込） */
.f-box .f-trial div.naiyo span:nth-child(3)::after {
	content: "円（税込）";
	font-size: 18px;
	font-weight: 400;
}
/* 内容量 */
.f-box .f-trial div.naiyo span:nth-of-type(3) {
	font-weight: 500;
	line-height: 1.3;
	margin: 0 0 0 0;
	font-size: 18px;

}
/* 内容量 内容量： */
.f-box .f-trial div.naiyo span:nth-of-type(3)::before {
	font-weight: 400;
	display: inline-block;
	content: "内容量：";
	margin: 0 0 0 8px;
}

.f-box .f-trial div.naiyo span.qty {
	font-weight: 400;
	display: inline;
	font-size: 18px;
}

.f-box .f-trial div.naiyo p.color1 {
	border-top: 2px solid var(--SP06-c);
}

.f-box .f-trial div.naiyo p.color1 span {
	background: var(--SP06-c);
}

/* お試しトライアル */


/* 通常取扱商品 */
.f-item {			/* 取扱商品 各囲み */
	overflow: hidden;
	display: flex;
	flex-direction: column;
	background: var(--GrF6-c);	/* 画像背景色 */
	border: solid 1px var(--GrDD-c);
	border-radius: 6px;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
	flex-basis: 24%;
	margin: 0 0 1.5rem 0;
}

.notin {			/* ダミーボックス */
	/* border: solid 1px var(--GrDD-c); */
	flex-basis: 24%;
	margin: 0 0 0 0;
}

.f-box .f-item div.naiyo {		/* 取扱商品 テキスト囲み */
	padding: 1.4rem;
	background: var(--Wt-c);
	width: 100%;
	height: 100%;
	font-size: 16px;
	color: var(--Gr66-c);
}

.f-box .f-item figure {		/* 取扱商品 画像 */
	width: 62%;		/* 写真サイズ％ 600*600から算出 */
	margin-right: auto;	/* 中欧寄せ */
	margin-left: auto;
	min-height: auto;	/* 高さ指定しないと全て表示されない */
}

.f-box .f-item figure.big {		/* 取扱商品 画像 */
	width: 83%;		/* 写真サイズ％ 600*600から算出 */
	margin-right: auto;	/* 中欧寄せ */
	margin-left: auto;
	min-height: auto;	/* 高さ指定しないと全て表示されない */
}

.f-item:hover figure img {/* box毎拡大= figure img外す */
	transform: scale(1.2);
	opacity: 1.0;
	/* z-index: 999; */
}

.f-box .f-item figure img {	/* 取扱商品 画像 上記指定済みで未指定でもいいが*/
	max-width:100%;
	height: auto;/*高さ自動*/
	transition: 0.6s;
}

.f-box .f-item div.naiyo span {/* border: solid 1px blue; */
	display: block;
	margin: 0 0 min(1.3vw,1rem) 0;
}

.clearfix::after {
	content: "";
	display: block;
	clear: both;
}

/* 商品名 */
.f-box .f-item div.naiyo span:nth-child(1) {
	vertical-align:top;
	font-size: 20px;
	font-weight: 700;
	line-height: 1.3;
	margin: 0 0 min(1.3vw, 0.6rem) 0;
}
.f-box .f-item div.naiyo span:nth-child(1) h6 {
	font-size: 16px;
	font-weight: 500;
}

/* 種別 */
.f-box .f-item div.naiyo p:nth-child(2) {
	margin: 0 0 min(1.3vw, 0.6rem) 0;
}

.f-box .f-item div.naiyo p::after {
	content: "";
	display: block;
	clear: both;
}

.f-box .f-item div.naiyo p:nth-child(2) span {
	display: inline-block;
	font-size: 14px;
	font-weight: 400;
	color: var(--Wt-c);
	line-height: 1.3;
	padding: 3px 7px 3px 6px;
	border-radius: 0 0 8px 8px;
	/*float: left;*/
}

.f-box .f-item div.naiyo p.color1 {
	border-top: 2px solid var(--SP06-c);
}

.f-box .f-item div.naiyo p.color1 span {
	background: var(--SP06-c);
}

.f-box .f-item div.naiyo p.color2 {
	border-top: 2px solid var(--SP07-c);
}

.f-box .f-item div.naiyo p.color2 span {
	background: var(--SP07-c);
}

.f-box .f-item div.naiyo p.color3 {
	border-top: 2px solid var(--SP08-c);
}

.f-box .f-item div.naiyo p.color3 span {
	background: var(--SP08-c);
}

.f-box .f-item div.naiyo p.color4 {
	border-top: 2px solid var(--SP09-c);
}

.f-box .f-item div.naiyo p.color4 span {
	background: var(--SP09-c);
}

/* 内容量 */
.f-box .f-item div.naiyo span:nth-of-type(2) {
	font-weight: 500;
	line-height: 1.3;
	margin: 0 0 0 0;
}
/* 内容量 内容量： */
.f-box .f-item div.naiyo span:nth-of-type(2)::before {
	font-weight: 400;
	display: inline-block;
	content: "内容量：";
	margin: 0 0 0 8px;
}

.f-box .f-item div.naiyo span.qty {
	font-weight: 400;
	display: inline;
	font-size: 16px;
}

/* キャッチコピー */
.f-box .f-item div.naiyo span:nth-of-type(3) {/*border: 1px solid var(--SP09-c);*/
	font-size: 14px;
	display: block;
	border-left: 5px solid var(--GrDD-c);
	font-weight: 400;
	line-height: 1.4;
	margin: 10px 0 0 5px;
	padding: 0 0 0 5px;
}

/* colorbox open
------------------------------------------------- */
.cbopen {
	overflow: hidden;
	width: min(65vw,600px);
	height: auto;
	display: flex;
	flex-direction: column;
	background: var(--GrF6-c);
	margin: 0 0 0 0;
	pointer-events:none;

}

.cbopen::after {
	display: block;
	content: "ご購入・お問合せ：TEL0225-22-8686";
	width: 100%;
	height: auto;
	background: #666;
	box-shadow: 0 0 8px rgba(0,0,0,0.2);
	letter-spacing: 0.2rem;
	font-size: clamp(18px,3.2vw,26px);
	font-weight: 500;
	color: #fff;
	text-align: center;
	padding: min(1.3vw,1rem) 0 min(1.3vw,1rem) 0;
	margin: 0 0 0 0;
	vertical-align: bottom;
}

.cbopen div.naiyo {
	display: none;
}

.cbopen div.setsumei {
	display: block;
	background: var(--Wt-c);
	width: 100%;
	height: 100%;
	color: var(--Gr66-c);
	padding: 0px 14px 20px 14px;
	border: 1px solid var(--Bk33-c);
}

.cbopen div. {
	display: flex;
	justify-content: space-around;
	background: var(--Wt-c);
	width: 100%;
	height: 100%;
	color: var(--Gr66-c);
	padding: 0px 14px 20px 14px;
}

.cbopen div.setsumei .item {
	width: 47%;
	padding: 10px 10px;
	border: 1px solid var(--Bk33-c);
}

/* colorbox オープン後 -------------------------- */

/* お申込みはこちら -------------------------- */
a.btn-border {
  border-radius: 0;
  margin: 1rem auto;
  text-align: center;
  font-size: 3rem;
  font-weight: bold;
  color: #ff4500;
  padding: 0.5rem 10rem 0.5rem 10rem;
}

a.btn-border:before,
a.btn-border:after {
  position: absolute;

  width: 100%;
  height: 3px;

  content: '';
  -webkit-transition: all .3s;
  transition: all .3s;

  background: #ff4500;
}

a.btn-border:before {
  top: 0;
  left: 0;
}

a.btn-border:after {
  right: 0;
  bottom: 0;
}

a.btn-border:hover:before,
a.btn-border:hover:after {
  width: 0;
}
/* お申込みはこちら -------------------------- */


/* お申込みはこちら2 -------------------------- */
a.btn_01 {
	font-size: 3rem;
	font-weight: bold;
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	width: 100%;
	margin: auto;
	padding: 0.5rem 3rem;
	font-weight: bold;
	border: 3px solid #C82536;
	color: #C82536;
	transition: 0.5s;
}
a.btn_01:hover {
	color: #fff;
	background: #C82536;
}
/* お申込みはこちら2 -------------------------- */

.tt_01 {
	font-size: 4rem;
	font-weight: bold;
	display: block;
	text-align: center;
	vertical-align: middle;
	text-decoration: none;
	margin: auto;
	padding: 2rem;
	color: #C82536;
}


/* プロテサンとは？
--------------------------------------------------------------------*/
#PROTESAN {
	background: #;
}

#PROTESAN h3 {
	position: relative;
	overflow: hidden;
	padding: 1.5rem 2rem 1.5rem 110px;
	border: 2px solid #008080;
	color: #008080
}

#PROTESAN h3:before {
	position: absolute;
	top: -150%;
	left: -100px;
	width: 190px;
	height: 300%;
	content: '';
	-webkit-transform: rotate(25deg);
	transform: rotate(25deg);
	background: #008080;
}

#PROTESAN h3 span {
	font-size: 40px;
	font-size: 4rem;
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	display: block;
	padding-top: 3px;
	padding-left: 16px;
	color: #fff;
}

#PROTESAN .inner div.img_r {
	float: right;
	width: 80%;
	max-width: 270px;
}

#PROTESAN .inner div img {/*border: solid 1px orange;*/
	display:block;
	width: 100%;
	height:auto;
	margin: 0 0 0 0;
}


/* 乳酸菌「FK-23」
--------------------------------------------------------------------*/
#FK-23 {
	background: #;
}

#FK-23 h3 span.rose {
	color: var(--SP02-c);
}

#FK-23 h3.fk23 {
	position: relative;
	display: inline-block;
	margin: 2rem 0 0 0;
	padding: 6px 10px;
	color: var(--Wt-c);
	font-size: 16px;
	background: var(--SP02-c);
	font-size:2rem;
}

#FK-23 h3.fk23:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid var(--SP02-c);
}

#FK-23 h3.lfk {
	position: relative;
	display: inline-block;
	margin: 2rem 0 0 0;
	padding: 6px 10px;
	color: var(--Wt-c);
	font-size: 16px;
	background: var(--SP03-c);
	font-size:2rem;
}

#FK-23 h3.lfk:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid var(--SP03-c);
}

#FK-23 img {
	width: 80%;
	margin: -1rem 0 0 4rem;

}

/* 初めての方へ
--------------------------------------------------------------------*/
#Visitor {
	position: relative;
	overflow: hidden;
	background: rgba(255,255,224,1);/* lightyellow #ffffe0 */
}

#Visitor h3 {/* border: solid 1px orange; */
	margin: 0 0 0 0;
	text-align: center;
}

#Visitor .Bgg00 {/* border: solid 2px blue; */
	position: relative;
	height: 100%;
	padding: 1rem 0 1rem 0;
}

#Visitor .Bgg01 {
	box-sizing:border-box;
	position: absolute;
	top: 0rem;
	bottom: 0rem;
	left: -100%;
	right: -100%;
	width: 100vw;
	height: 100%;
	margin: auto;
	background-image: linear-gradient(
		90deg,
		hsl(90deg 59% 47%) 0%,
		hsl(187deg 69% 50%) 29%,
		hsl(215deg 94% 73%) 43%,
		hsl(308deg 60% 72%) 57%,
		hsl(3deg 100% 77%) 71%,
		hsl(31deg 96% 64%) 100%
	);
}

#Visitor .imgbox3 {
	position: relative;
	flex-direction: row;
	width: 60%;
	display: flex;
	justify-content:space-between;
	flex-wrap: wrap;
	margin: 2rem auto;
	z-index:1;
}

#Visitor .imgbox3 figure {
	flex-basis: 45%;
}

@keyframes fluffy1 {
	0% {
		transform: translateY(0); }
	5% {
		transform: translateY(0); }
	10% {
		transform: translateY(0); }
	20% {
		transform: translateY(-10px); }
	25% {
		transform: translateY(0); }
	30% {
		transform: translateY(-10px); }
	50% {
		transform: translateY(0); }
	100% {
		transform: translateY(0); }
}

#Visitor .imgbox3 figure img {
	max-width:100%;
	height: auto;/*高さ自動*/
	vertical-align:top;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
}

/* CSR
--------------------------------------------------------------------*/
#CSR {
	position: relative;
	overflow: hidden;
	/* #CSRのみ下パディング減少 */
	padding: clamp(23px,4.56vw,40px) 0 clamp(9px,1.3vw,10px) 0;
	background:;
}

#CSR .wrap_tt h2 {/* #CSRのみタイトル下パディング減少 */
	text-align: center;
	color: var(--GrCC-c);
	padding: 1rem 0 clamp(12px,1.82vw,15px) 0;
}

#CSR .ifm {/* border: solid 1px orange; */
	margin: 2rem auto;
	width: min(100%, 800px);
}

#CSR .ifm div {
	width: 100%;
	padding: 8px 8px 0px 8px;
	background: var(--Wt-c);
	min-height: auto;
	aspect-ratio: 16/9; /*アスペクト比（縦横比）を指定*/
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
}

#CSR .ifm span {
	display:block;
	padding: 6px 12px 0px 12px;
	color: var(--Gr66-c);
	text-align: center;
}

#CSR .ifm iframe {
	border: none;
	width: 100%;
	height: 100%;
}

#CSR h3 {
	padding: 1rem;
	background-color: rgba(0,100,0,0.4);
	font-weight: 700;
	font-size: clamp(26px, 3.39vw, 30px);
	color: var(--Wt-c);
}

#CSR h3:before {
	margin-right: 0.5rem;
	border-left: 10px solid var(--Wt-c);
	content: '';
}

#CSR ul {
	margin: 2rem 0 0 0;
	padding: 0 0 0 5rem;
}

#CSR ul li {
	padding: 0 1rem 0 0;
	font-weight: 500;
}

#CSR .wd {
	min(33vw, 330px);
}

#CSR .imgbox2 {/* border: solid 1px orange; */
	flex-direction: row;
	width: 100%;
	display: flex;
	justify-content:space-between;
	flex-wrap: wrap;
}

#CSR .imgbox2 figure {
	overflow: hidden;
	border-radius: 6px;
	flex-basis: 24%;
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
}

#CSR .imgbox2 figure img {
	max-width:100%;
	height: auto;/*高さ自動*/
	vertical-align:top;
}

#CSR h5 {/* border: solid 1px orange; */
	/* display: inline-block; あえてblock要素に戻すことでテキスト折返し*/
	width: auto;
	font-size: 24px;
	color:  var(--SP02-c);
	margin: 2rem 0 0 1rem;
}

#CSR .Bgg00 {/*border: solid 2px blue;*/
	position: relative;
	height: 100%;
	padding: 1rem 0 1rem 0;
}

#CSR .Bgg01 {
	position: absolute;
	top: 0rem;
	bottom: 0rem;
	left: -100%;
	right: -100%;
	width: 100vw;
	height: 100%;
	margin: auto;
	z-index: -100;
	background: linear-gradient(
		105deg,				/* 回転 */
		rgba(0,0,0,0) 50%,
		rgba(230,230,250,0.2) 50%,	/* 青系 */
		rgba(230,230,250,0.2) 75%,
		rgba(230,230,250,0.7) 75%
	);
}

#CSR .Bgg02 {
	position: absolute;
	top: 0rem;
	bottom: 0rem;
	left: -100%;
	right: -100%;
	width: 100vw;
	height: 100%;
	margin: auto;
	z-index: -100;
	background: linear-gradient(
		105deg,				/* 回転 */
		rgba(255,192,203,0.3) 30%,
		rgba(255,192,203,0.1) 30%,	/* 赤系 */
		rgba(255,192,203,0.1) 60%,
		rgba(0,0,0,0) 60%
	);
}

#CSR .Bgg03 {
	position: absolute;
	top: 0rem;
	bottom: 0rem;
	left: -100%;
	right: -100%;
	width: 100vw;
	height: 100%;
	margin: auto;
	z-index: -100;
	background: linear-gradient(
		105deg,				/* 回転 */
		rgba(0,0,0,0) 50%,
		rgba(144,238,144,0.2) 50%,	/* 緑系 */
		rgba(144,238,144,0.2) 75%,
		rgba(144,238,144,0.6) 75%
	);
}



/* ブログ
--------------------------------------------------------------------*/
#Blog {
	background: #;
}

#Blog .ifm {
	margin: 2rem 0 2rem 0;
	width: 100%;
	min-height: auto;	/* 高さ指定しないと全て表示されない */
	padding: 7px 7px 0 7px;
	background: var(--GrCC-c);
	aspect-ratio: 16/9; /*アスペクト比（縦横比）を指定*/
}

#Blog .ifm iframe {
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	border: none;
	width: 100%;
	height: 100%;
}

#Blog h3 {/* border: solid 1px orange; */
	margin: 0 0 0 0;
	text-align: center;
}

/* 更新情報
--------------------------------------------------------------------*/
#Update {
	background: rgba(240,248,255,1);/* aliceblue #f0f8ff */
}

#Update ul {
	list-style: inside;
	width: 90%;
	border-top: 1px dashed var(--GrCC-c);
	margin: 0 auto;
}

#Update ul li {
	list-style-type: none;
	border-bottom: 1px dashed var(--GrCC-c);
	padding: 0.8rem 0 0.8rem 0;
}

#Update ul li a {
	padding: 0 0 0 2rem;
}



/* 会社概要テーブル
--------------------------------------------------------------------*/
#Company {
	background: #;
}

#Company table {
	width: 90%;
	border-top: 1px dashed var(--GrCC-c);
	border-collapse: collapse;
	margin: 0 auto;
	text-align: left;
	line-height: 1.25;
}

#Company table tr {
	border-bottom: 1px dashed var(--GrCC-c);
	font-weight: 400;
	vertical-align: top;
}

#Company table th {/* border: solid 1px orange; */
	width: 36%;
	font-weight: 400;
	padding: 1rem 0 1rem 2rem;
}

#Company table td {/* border: solid 1px orange; */
	width: 64%;
	padding: 1rem 0 1rem 0;
}

#Company table a {
	line-height: 1.2;
	display: inline-block;
	border-bottom: 1px solid #ddd;
	margin: 0.25rem 0 0 0;
	transition: 0.6s;
}

#Company table a:hover {
	position: relative;
	top: 2px;
}

#Company table p {/* border: solid 1px orange; */
	display: inline-block;
}

/* Googleアイコン */
#Company table th span {/* border: solid 1px orange; */
	font-size: 24px;
	color: var(--Bk33-c);
	vertical-align: top;
}

#Company table td.dantai ul {/* border: solid 1px orange; */
	list-style-type: disc;
	margin: 0 0 0 0;
}

#Company table td.dantai li {
	display: block;
	margin: 0 0 5px 0;
}

#Company table td.dantai li a {
	display: inline;
}

/* GoogleMap 設定 */
iframe.gmap {
	width: 100%;
	aspect-ratio: 16/9; /*アスペクト比（縦横比）を指定*/
	margin: 0 0 2rem 0;

}

/* お問い合わせ
--------------------------------------------------------------------*/
#Contact {
	background: var(--SP12-c);
}

#Contact .ifm {
	margin: 2rem 0 2rem 0;
	width: 90%;
	min-height: auto;	/* 高さ指定しないと全て表示されない */
	margin: 0 auto;
}

#Contact .ifm iframe {
	/*overflow-y: auto;
	-webkit-overflow-scrolling: touch;*/
	border: none;
	/*height: 480px;*/
	width: 100%;
}

#Contact p.sentence {
	width: 90%;
	margin: 0 auto;
}

/* リンク
--------------------------------------------------------------------*/
#Link {
	background: ;
	text-align: center;
}

.linkbox {/*border: solid 1px orange;*/
	display: inline-block;
	margin: 0 auto;
}

.linkbox figure {
	display: inline-block;
	margin: 0 1rem 2rem 0;
	padding: 6px;
	background: var(--Wt-c);
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
}

.linkbox a {

}

.linkbox a figure img {
	width: 234px;
	height: auto;
}

.LINE {
	margin: 0 1rem 2rem 0;
}
.LINE img {/* border: solid 2px orange; */
	margin: 0 auto;
}


/* フッター :nth-of-type(2)clamp(16px,3vw,36px)
--------------------------------------------------------------------*/
footer {
	background-color: var(--Main-c);
	color: var(--Wt-c);
	padding: clamp(22px,3.91vw,35px) 0 clamp(22px,3.91vw,35px) 0;
}

footer .container {/*border: solid 1px red;*/
	margin: 0 auto;
	padding: 0 clamp(15px,2.35vw,35px) 0 clamp(15px,2.35vw,35px);
	max-width: 1200px;
	display: flex;
	align-items: flex-start;
	flex-wrap: wrap;
	justify-content: center;
}

/* ロゴ ボックス*/
footer .ft-logo {/* border: solid 1px blue; */
	display: inline-block;
	height: auto;
	margin: 0 1rem 0 0;
}

footer .ft-logo img {
	width: clamp(80px,12vw,100px);
}

/* 会社名 ボックス*/
footer .ft-company {/*border: solid 1px red;*/
	display: inline-block;
	text-align: left;
	margin: 0 0 0 1rem;
}

/* メニュー ボックス*/
footer .ft-menu {/*border: solid 1px red; */
	width: 100%;
	text-align: center;
	margin: 2rem 0 0 0;
	border-top: solid 1px var(--Wt-c);
	border-bottom: solid 1px var(--Wt-c);
}

/* 会社名 h1 テキスト*/
footer .ft-company h1 {
}

/* 会社名 h2 テキスト*/
footer .ft-company h2 {
	font-size: 30px;
}

/* 会社名 h4 テキスト*/
footer .ft-company h4 {
	line-height: 1.4;
}

/* 会社名 h4 テキスト*/
footer .ft-company h4 a {/* border: solid 1px red; */
	position: relative;
	display: inline-block;
	font-size: clamp(16px,1.5vw,18px);
	text-decoration: none;
	text-align: center;
	color: var(--Wt-c);
}

footer .ft-company h4 a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	content: '';
	width: 100%;
	height: 2px;
	background: var(--Sub-c);
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.3s;
}

footer .ft-company h4 a:hover::after {
	transform: scale(1, 1);
}

footer .ft-company h4 a:hover {
	color: var(--Sub-c);
}

footer .ft-menu ul {/* border: solid 1px red; */
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 0 0.3rem 0;
}

footer .ft-menu div li {
}

footer .ft-menu li a {/* border: solid 1px red; */
	position: relative;
	display: inline-block;
	line-height: 1.2;
	font-size: clamp(16px,1.5vw,18px);
	font-weight: 500;
	text-decoration: none;
	padding: 6px 1vw 4px 1vw;
	text-align: center;
	color: var(--Wt-c);
}

footer .ft-menu li a::after {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	content: '';
	width: calc(100% - 2vw);
	height: 2px;
	background: var(--Sub-c);
	transform: scale(0, 1);
	transform-origin: center top;
	transition: transform 0.3s;
}

footer .ft-menu li a:hover::after {
	transform: scale(1, 1);
}

footer .ft-menu li a:hover {
	color: var(--Sub-c);
}

footer .ft-menu .iframe {
	color: yellow;
}

/* コピーライト
--------------------------------------------------------------------*/
.copyright {
	text-align: center;
	padding: 1rem 0;
	background-color: var(--Sub-c);
}

.copyright a {
	color: var(--Wt-c);
	text-decoration: none;
	display: inline-block;
}

/* ページトップへ */
.pagetop {
	display: none;
	position: fixed;
	bottom: 5px;
	right: 5px;
	border-radius: 50%;
	height: clamp(70px,11.7vw,100px);
	width: clamp(70px,11.7vw,100px);
	background-color: var(--Main-c);
	box-shadow: 0px 0px 8px rgba(0,0,0,0.2);
	transition:all 0.6s;
	cursor: pointer;
	z-index: 8000;
}


.pagetop span {
	display: block;
	line-height: 1;
	font-size: clamp(16px,2.6vw,22px);
	font-weight: 500;
	text-align: center;
	color: var(--Wt-c);
	margin: 0.1rem 0 0 0;
	padding: 0 0 0 0;
}

.pagetop span:first-child {
	font-size: clamp(26px,4.56vw,40px);
}

.pagetop:hover {
	color: var(--Wt-c);
	background-color: red;
}



/*--------------------------------------------------------------------
PC表示の設定 768px以上（タブレットは通常表示）
--------------------------------------------------------------------*/
@media screen and (min-width: 768px){

	/* PC非表示スマホのみ指定 */
	.sp_on {
		display: none;
	}

	/* PC時はMENUボタンを非表示 */
	.onlysp {
		display: none !important;
	}

	/*.row .col.span-4 {
		flex: 0 0 30.6666666667%;
		max-width: 30.6666666667%;
	}*/

	/* 商品 PCのみ指定 4列指定 */
	.f-box .scroll_box:nth-child(4n-2) {
		transition-delay: 0.3s;
	}
	.f-box .scroll_box:nth-child(4n-1) {
		transition-delay: 0.6s;
	}
	.f-box .scroll_box:nth-child(4n) {
		transition-delay: 0.9s;
	}

	/* PCのみ指定 3列指定
	.f-box .scroll_box:nth-child(3n-1) {
		transition-delay: 0.3s;
	}
	.f-box .scroll_box:nth-child(3n) {
		transition-delay: 0.6s;
	} */


	/* Visitor PCのみ指定 3列指定 */
	.imgbox3 .scroll_box:nth-child(1) {
		transition-delay: 0.3s;
	}
	.imgbox3 .scroll_box:nth-child(2) {
		transition-delay: 0.6s;
	}
	.imgbox3 .scroll_box:nth-child(3) {
		transition-delay: 0.9s;
	}

	/* Visitor PCのみ指定 3列指定 */
	.imgbox3 figure:nth-of-type(1) img {/* border: solid 3px red; */
		animation: fluffy1 2s ease;
		animation-delay: 1.2s;
		animation-iteration-count: 10;/* 繰返し回数 */
	}
	.imgbox3 figure:nth-of-type(2) img {/* border: solid 5px orange; */
		animation: fluffy1 2s ease;
		animation-delay: 0s;
		animation-iteration-count: 10;
	}
	.imgbox3 figure:nth-of-type(3) img{
		animation: fluffy1 2s ease;
		animation-delay: 0.6s;
		animation-iteration-count: 10;
	}

	/* CSR PCのみ指定 4列指定 */
	.imgbox2 .scroll_box:nth-child(4n-2) {
		transition-delay: 0.3s;
	}
	.imgbox2 .scroll_box:nth-child(4n-1) {
		transition-delay: 0.6s;
	}
	.imgbox2 .scroll_box:nth-child(4n) {
		transition-delay: 0.9s;
	}


	/* Link PCのみ指定 4列指定 */
	.linkbox .scroll_box:nth-child(4n-2) {
		transition-delay: 0.3s;
	}
	.linkbox .scroll_box:nth-child(4n-1) {
		transition-delay: 0.6s;
	}
	.linkbox .scroll_box:nth-child(4n) {
		transition-delay: 0.9s;
	}






}