@charset "UTF-8";
/* 
CSS Document 
ページ共通CSS
ヘッダ, フッタ, サイド
*/

body {
	font-family: 'Josefin Sans',"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HiraKakuPro-W3","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",Arial, Helvetica,sans-serif;
	color:#000;
	font-size:16px;
	line-height:1.3;
	letter-spacing:0.08em;
	}
	
.pc {display:block;}
img.pc {display:inline-block;}
.sp {display:none;}
	
/*テキストリンク*/
a {
	color:#000000;
	}

a:hover {
	text-decoration:none;
	}
	
/*========================================
テキスト
========================================*/
.txtArea {
	line-height:2.5em;
	}
.txtArea p:nth-of-type(n+2) {
	margin-top:30px;
	}
	
/*========================================
ポップアップクローズボタン
========================================*/
.veil .closeButton {
	width:20px;
	height:20px;
	display:block;
	position:absolute;
	top:12px;
	right:4%;
	margin-right:5px;
	overflow:visible;
	z-index:1001;
	}
.veil .closeButton::before,
.veil .closeButton::after {
	content:"";
	display:block;
	width:100%;
	height:2px;
	background:#000;
	position:absolute;
	top:50%;
	}
.veil .closeButton::before {
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	}
.veil .closeButton::after {
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
	}

/*========================================
header
========================================*/
#spIntro {display:none;}

header {
	position:relative;
	}
header #mouse {
	position:fixed;
	bottom:20px;
	left:50%;
	margin-left:-23px;
	cursor:point;
	}
header #mouse .pt {
	position:absolute;
	left:50%;
	top:25px;
	margin-left:-4px;
	animation: Wheel 2s cubic-bezier(0.77, 0, 0.175, 1) infinite alternate;
	}
@keyframes Wheel {
	0% {
		-webkit-transform:translateY(0);
		transform:translateY(0);
		}
	100% {
		-webkit-transform:translateY(10px);
		transform:translateY(10px);
		}
}
#optionArea #mouse.hide {
	opacity:0;
	}

header > .tableLayout {
	height:100vh;
	}
header .tableLayout > * {
	vertical-align:middle;
	}
header .tableLayout > figure {
	background:url(../img/mvis.jpg) no-repeat center bottom;
	background-size:cover;
	width:50%;
	}
header .tableLayout > div {
	text-align:center;
	}
header h1 {
	font-size:16px;
	font-weight:normal;
	color:#228B83;
	letter-spacing:0.2em;
	}
header h1 span {display:inline-block;margin-bottom:5px;}
header #logo {padding:105px 0 115px;max-width:293px;margin:0 auto;}
header nav {font-size:13px;margin:0 auto;padding:0 20px;}
header nav ul > * {vertical-align:bottom;}
header nav ul li {padding:0 10px;display:inline-block;}
header nav ul li a {text-decoration:none;display:block;position:relative;overflow:visible;}
header nav ul li a span {display:block;font-size:12px;margin-bottom:3px;}
header #cartButton {
	width:24px;
	display:inline-block;
	margin-top:30px;
	}
header #cartButton::after {display:none;}
header #spMenuButton {display:none;}


/*========================================
footer
========================================*/
footer {margin-top:100px;text-align:center;}
footer .convArea {margin-bottom:40px;}
footer nav {
	border-top:1px solid #EEEEEE;
	border-bottom:1px solid #EEEEEE;
	line-height:1em;
	padding:20px;
	}
footer nav li {
	display:inline-block;
	font-size:11px;
	margin:0 10px;
	}
footer nav li img {vertical-align:middle;margin-right:1em;position:relative;top:-2px;}
footer nav li a {text-decoration:none;}
footer nav li a:hover {text-decoration:underline;}
footer #cp {margin-top:20px;margin-bottom:20px;line-height:1em;}
footer #cp span {vertical-align:middle;}
footer #cp span:last-child {font-size:10px;}


/*========================================
container
========================================*/
#wrapper {overflow:hidden;}
.constBox {
	/*max-width:910px;*/
	margin:0 auto;
	}
.sec .constBox {max-width:1280px;}
	
#container {
	margin-top:100px;
	}

.sec {
	margin-top:100px;
	position:relative;
	z-index:1;
	}
.secTit {
	color:#288B83;
	font-weight:normal;
	font-size:29px;
	text-align:center;
	margin-bottom:40px;
	letter-spacing:0.1em;
	}
.secTit:nth-of-type(n+2) {margin-top:100px;}

#sec01 {
	padding-bottom:50px;
	}

.sec .contentHead {
	background-repeat:repeat-x;
	background-position:center center;
	margin-bottom:85px;
	background-size:auto 70px;
	}
.sec .contentHead h2 {
	width:500px;
	padding:25px 20px;
	color:#4B4847;
	font-size:30px;
	font-weight:normal;
	text-align:center;
	background:#fff;
	margin:0 auto;
	letter-spacing:0.15em;
	}
.sec .contentHead h2 span {font-size:13px;color:#777777;display:block;margin-bottom:10px;}

#sec01 {position:relative;padding-bottom:150px;}
#sec01 .constBox {width:60%;position:relative;z-index:10;}
#sec01 .txtArea {
	max-width:720px;
	margin:0 auto;
	}
#sec01 .figArea {width:100%;}
#sec01 .figArea .left {
	width:19%;
	height:100%;
	position:absolute;
	left:0;
	}
#sec01 .figArea .right {
	width:19%;
	height:100%;
	position:absolute;
	right:0;
	}
#sec01 .figArea img {
	position:absolute;
	}
#sec01 .figArea .left img:nth-of-type(1) {
	margin-right: -20px;
	right:0;
    top: -5%;
	z-index:5;
	}
#sec01 .figArea .left img:nth-of-type(2) {
	right: 35%;
    top: 4%;
	}
#sec01 .figArea .left img:nth-of-type(3) {
	right: 40%;
    top: 29%;
	z-index:5;
	}
#sec01 .figArea .left img:nth-of-type(4) {
	right:0;
    top: 47%;
	}
#sec01 .figArea .left img:nth-of-type(5) {
	right:0;
    top: 69%;
	}
#sec01 .figArea .left img:nth-of-type(6) {
	right:39%;
    top: 77%;
	z-index:5;
	}
#sec01 .figArea .left img:nth-of-type(7) {
	right:0;
    top: 89%;
	}

#sec01 .figArea .right img:nth-of-type(1) {
	left: 46%;
    top: 30px;
	z-index:3;
	}
#sec01 .figArea .right img:nth-of-type(2) {
	left: 0%;
    top: 9%;
	margin-left: -27px;
	z-index: 2;
	}
#sec01 .figArea .right img:nth-of-type(3) {
	left: 36%;
    top: 19%;
	z-index:5;
	}
#sec01 .figArea .right img:nth-of-type(4) {
	left: -30px;
    top: 56%;
	}
#sec01 .figArea .right img:nth-of-type(5) {
	left: 30%;
    top: 88%;
	z-index: 2;
	}
#sec01 .figArea .right img:nth-of-type(6) {
	left: 37%;
    top: 40%;
    z-index: 5;
	}
#sec01 .figArea .right img:nth-of-type(7) {
	left: 19%;
    top: -5%;
    z-index: 1;
	}

#sec02.sec {margin-top:0;}
#sec02 .contentHead {background-image:url(../img/bg_01.png);}
#sec03 .contentHead {background-image:url(../img/bg_02.png);}
#sec04 .contentHead {background-image:url(../img/bg_03.png);}
#sec05 .contentHead {background-image:url(../img/bg_04.png);}
#sec06 .contentHead {background-image:url(../img/bg_05.png);}
#sec07 .contentHead {background-image:url(../img/bg_06.png);}
#sec08 .contentHead {background-image:url(../img/bg_07.png);}
	

.pointArea > li {
	padding:0 3%;
	}
.pointArea h3 {
	text-align:center;
	font-size:29px;
	color:#0686CD;
	font-weight:normal;
	}
.pointArea h3 span {
	display:block;
	font-size:13px;
	}
.pointArea figure {text-align:center;margin:25px 0;}
.pointArea h4 {
	text-align:center;
	color:#0686CD;
	font-size:18px;
	font-weight:normal;
	margin-bottom:25px;
	}
.pointArea ul {
	margin:0 auto;
	max-width:200px;
	}
.pointArea ul li {
	margin-top:15px;
	}
.pointArea ul li:last-child {margin-bottom:100px;}
.pointArea ul li img {verticalo-align:middle;margin-right:1em;}
.pointArea p {line-height:2em;}

.items {font-size:0;line-height:0;text-align:center;}
.items li {
	vertical-align:top;
	margin-top:15px;
	display:inline-block;
	width:180px;
	font-size:15px;
	line-height:1.3em;
	text-align:center;
	padding:15px 15px 0;
	cursor:pointer;
	position:relative;
	-webkit-transform:rotate(10deg);
	transform:rotate(10deg);
	opacity:0;
	-webkit-transition:
		background-color 0.3s linear,
		-webkit-transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1),
		opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition:
		background-color 0.3s linear,
		transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1),
		opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
	}
.items li.on {
	opacity:1;
	-webkit-transform:rotate(0);;
	transform:rotate(0);
	}
.items li:hover {background:#fafafa;}
.items li p.name {
	margin-top:10px;
	height:35px;
	}
.items li p.flavor {
	font-size:10px;
	color:#fff;
	background:#ccc;
	max-width:83px;
	margin:10px auto 0;
	line-height:1em;
	padding:6px 0 4px;
	}
.items li figure {
	height:112px;
	line-height:112px;
	}
.items li figure img {vertical-align:bottom;height:112px;width:auto;}
	
/*カラー フレイバータイプ*/
.items li::before {
	content:"";
	display:block;
	width:17px;
	height:20px;
	background-repeat:no-repeat;
	background-position:center center;
	background-size:100% auto;
	position:absolute;
	top:5px;
	right:5px;
	}
.items li.feel::before {background-image:url(../img/icon_flavor_01.png);}/*気持ちを明るくする*/
.items li.relax::before {background-image:url(../img/icon_flavor_02.png);}/*リラックス*/
.items li.refresh::before {background-image:url(../img/icon_flavor_03.png);}/*リフレッシュ*/

/*カラー フレイバー*/
.items li.fruity p.flavor {background-color:#F6A100;}/*FRUITY*/
.items li.sweet p.flavor {background-color:#CD5689;}/*SWEET*/
.items li.oriental p.flavor {background-color:#7BB734;}/*ORIENTAL*/


/*スライダー*/
.slideArea {
	max-width:1050px;
	width:92%;
	padding:0 40px;
	margin:100px auto 0;
	}
.item.tableLayout > * {vertical-align:middle;}
.item.tableLayout figure {
	width:45%;
	text-align:center;
	padding:0 3%;
	}
.item.tableLayout figure img {display:inline-block !important;}
.item.tableLayout > div {padding-right:20px;}
.item.tableLayout .flavorType {
	font-size:15px;
	background-repeat:no-repeat;
	background-position:left center;
	background-size:17px auto;
	padding-left:2em;
	min-height:20px;
	line-height:1em;
	padding-top:3px;
	margin-bottom:10px;
	}
.item.tableLayout h2 {font-size:28px;font-weight:normal;margin-bottom:25px;}
.item.tableLayout .desc {font-size:18px;margin-bottom:25px;}
.item.tableLayout table {width:100%;margin-bottom:35px;}
.item.tableLayout table th,
.item.tableLayout table td {padding-top:5px;padding-bottom:5px;vertical-align:top;}
.item.tableLayout table th {font-size:12px;color:#fff;text-align:center;width:60px;font-weight:normal;}
.item.tableLayout table th span {
	display:block;
	background:#7F7F7F;
	padding:5px 5px 2px;
	}
.item.tableLayout table td {padding-left:1em;}
.slideArea .arrow {
	display:block;
	width:40px;
	height:40px;
	border:1px solid #999;
	border-left:none;
	border-bottom:none;
	position:absolute;
	top:50%;
	margin-top:-20px;
	cursor:pointer;
	}
.slideArea .arrow.left {
	-webkit-transform:rotate(-135deg);;
	transform:rotate(-135deg);
	left:10px;
	}
.slideArea .arrow.right {
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	right:10px;
	}
	
#sec05 .items li::before {background:none !important;}

/*カラー フレイバータイプ*/
.item.tableLayout.feel .flavorType{background-image:url(../img/icon_flavor_01.png);}/*気持ちを明るくする*/
.item.tableLayout.relax .flavorType {background-image:url(../img/icon_flavor_02.png);}/*リラックス*/
.item.tableLayout.refresh .flavorType {background-image:url(../img/icon_flavor_03.png);}/*リフレッシュ*/

/*カラー フレイバー コピー*/
.item.tableLayout.fruity p.desc {color:#F6A100;}/*FRUITY*/
.item.tableLayout.fruity table th span {background-color:#F6A100;}/*FRUITY*/
.item.tableLayout.sweet p.desc {color:#CD5689;}/*SWEET*/
.item.tableLayout.sweet table th span {background-color:#CD5689;}/*SWEET*/
.item.tableLayout.oriental p.desc {color:#7BB734;}/*ORIENTAL*/
.item.tableLayout.oriental table th span {background-color:#7BB734;}/*ORIENTAL*/

.item.tableLayout.yasashii p.desc {color:#F4AB8A;}/*やさしい*/
.items li.yasashii p.flavor,
.item.tableLayout.yasashii table th span {background-color:#F4AB8A;}/*やさしい*/
.item.tableLayout.shittori p.desc {color:#EAC2DA;}/*しっとり*/
.items li.shittori p.flavor,
.item.tableLayout.shittori table th span {background-color:#EAC2DA;}/*しっとり*/
.item.tableLayout.sappari p.desc {color:#FFD24D;}/*さっぱり*/
.items li.sappari p.flavor,
.item.tableLayout.sappari table th span {background-color:#FFD24D;}/*さっぱり*/
.item.tableLayout.funwari p.desc {color:#D8E480;}/*ふんわり*/
.items li.funwari p.flavor,
.item.tableLayout.funwari table th span {background-color:#D8E480;}/*ふんわり*/

.item.tableLayout.bodyoriginal p.desc {color:#F4A283;}/*オリジナル*/
.items li.bodyoriginal p.flavor,
.item.tableLayout.bodyoriginal table th span {background-color:#F4A283;}/*オリジナル*/
.item.tableLayout.bodyrefresh p.desc {color:#FFE24F;}/*リフレッシュ*/
.items li.bodyrefresh p.flavor,
.item.tableLayout.bodyrefresh table th span {background-color:#FFE24F;}/*リフレッシュ*/
.item.tableLayout.bodyrelax p.desc {color:#A6D8E6;}/*リラックス*/
.items li.bodyrelax p.flavor,
.item.tableLayout.bodyrelax table th span {background-color:#A6D8E6;}/*リラックス*/

.item.tableLayout.remon p.desc {color:#FEE100;}/*レモンバニラ*/
.items li.remon p.flavor,
.item.tableLayout.remon table th span {background-color:#FEE100;}/*レモンバニラ*/
.item.tableLayout.apple p.desc {color:#E74409;}/*アップルリリー*/
.items li.apple p.flavor,
.item.tableLayout.apple table th span {background-color:#E74409;}/*アップルリリー*/
.item.tableLayout.orange p.desc {color:#F29700;}/*オレンジジャスミン*/
.items li.orange p.flavor,
.item.tableLayout.orange table th span {background-color:#F29700;}/*オレンジジャスミン*/


/*FAQ*/
.faqArea {margin:0 auto;max-width:900px;}
.faqArea li:nth-of-type(n+2) {
	margin-top:60px;
	}
.faqArea h3 {
	padding-left:60px;
	padding-top:5px;
	position:relative;
	color:#218B83;
	font-weight:normal;
	font-size:18px;
	}
.faqArea h3::before {
	content:"Q";
	display:block;
	font-size:28px;
	position:absolute;
	text-align:center;
	top:0;
	left:0;
	width:1.5em;
	}
.faqArea div {
	margin-top:28px;
	padding-top:5px;
	padding-left:60px;
	position:relative;
	}
.faqArea div::before {
	content:"A";
	display:block;
	font-size:28px;
	position:absolute;
	text-align:center;
	top:0;
	left:0;
	width:1.5em;
	}
.faqArea p:nth-of-type(n+2) {
	margin-top:1em;
	}
.faqArea div figure {max-width:460px;}
	
@media (min-width:769px) {
/*========================================
header
========================================*/
header nav ul li a::after {
	content:"";
	display:block;
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:1px;
	background:#000;
	opacity:0;
	-webkit-transition:
		opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1),
		bottom 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
	transition:
		opacity 0.3s cubic-bezier(0.165, 0.84, 0.44, 1),
		bottom 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
	}
header nav ul li a:hover::after {
	bottom:-5px;
	opacity:1;
	}
}

@media(max-width:768px) {
body {
	font-size:13px;
	}
	
.pc {display:none !important;}
.sp {display:block;}
img.sp {display:inline-block;}

.constBox {
	padding-left:4%;
	padding-right:4%;
	}
.sec .contentHead h2 {
	font-size:23px;
	width:60%;
	padding:15px;
	}

#wrapper {
	width:100%;
	height:100%;
	position:absolute;
	overflow:hidden;
	}
	
/*========================================
header
========================================*/
#wrapper.on {
	height:auto;
	position:static;
	}
#spIntro {
	display:table;
	position:fixed;
	width:100%;
	height:100%;
	
	top:0;
	left:0;
	background:#fff;
	z-index:10000;
	text-align:center;
	}
#spIntro > * {vertical-align:middle;padding:0 4%;}
#spIntro p {opacity:0;}
#spIntro p.logo {
	max-width:372px;
	width:49.6%;
	margin:0 auto 0;
	}

#mouse {display:none;}

header > .tableLayout,
header > .tableLayout > * {
	display:block;
	height:auto;
	}
	
header {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	background:#fff;
	z-index:100;
	padding:0;
	}
header h1 {display:none;}
header #logo {
	width:120px;
	padding:15px 0;
	line-height:1em;
	}
header figure {display:none !important;}

/*sp メニュー*/
header #spMenuButton {
	display:block;
	width:30px;
	height:20px;
	position:absolute;
	right:4%;
	top:12px;
	overflow:visible;
	}
header #spMenuButton span,
header #spMenuButton::after,
header #spMenuButton::before {
	display:block;
	height:1px;
	width:100%;
	background:#000;
	position:absolute;
	left:0;
	}
header #spMenuButton::after,
header #spMenuButton::before {content:"";-webkit-transition:all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);transition:all 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);}
header #spMenuButton span {top:50%;margin-top:-0.5px;}
header #spMenuButton::before  {top:15%;}
header #spMenuButton::after  {bottom:15%;}
header nav {
	display:none;
	position:fixed;
	top:46px;
	left:0;
	background:rgba(34,139,131,0.9);
	width:100%;
	height:120%;
	padding:0 4%;
	color:#fff;
	max-width:none;
	opacity:0;
	-webkit-transition:opacity 0.3s linear;
	transition:opacity 0.3s linear;
	}
header nav ul {display:table-cell;vertical-align:middle;}
header #cartButton {
	margin-top:0;
	width:auto;
	display:block;
	}
header #cartButton img {
	width:19px;
	margin-left:10px;
	}
header #cartButton::before {
	display:inline-block;
	content:"LoasisJapan Online Shop";
	}
header nav ul > li {
	display:block;
	margin-top:-40%;
	}
header nav ul > li:nth-of-type(n+2) {margin-top:4%;margin-top:4vh;}
header nav ul a {
	color:#fff;
	}
/*メニューオープン*/
.menuready header nav {
	display:table;
	opacity:0;
	-webkit-transition:opacity 0.5s linear;
	transition:opacity 0.5s linear;
	}
.menuready.open header nav {
	opacity:1;
	}
.menuready.open header #spMenuButton span {display:none;}
.menuready.open header #spMenuButton::before {
	top:50%;
	margin-top:-2px;
	-webkit-transform:rotate(-45deg);
	transform:rotate(-45deg);
	-webkit-transform-origin:center center;
	transform-origin:center center;
	}
.menuready.open header #spMenuButton::after {
	bottom:50%;
	-webkit-transform:rotate(45deg);
	transform:rotate(45deg);
	}
	
#spHead {
	background:url(../img/mvis.jpg) no-repeat center center;
	background-size:cover;
	width:100%;
	height:100%;
	height:100vh;
	top:0;
	left:0;
	position:absolute;
	}

/*========================================
footer
========================================*/
footer nav li {
	display:block;
	text-align:left;
	}
footer nav li:nth-of-type(n+2) {margin-top:10px;}

/*========================================
container
========================================*/
#container {
	padding-top:140%;
	padding-top:100vh;
	}

.secTit {font-size:18px;}
.sec .contentHead {margin-bottom:40px;}
.sec .contentHead h2 {font-size:16px;}
.pointArea h4 {font-size:15px;}

#sec01 .figArea .left,
#sec01 .figArea .right {width:10%;}
#sec01 .constBox {width:80%;}

.sec .contentHead {background-size:auto 100px;}

.pointArea.tableLayout,
.pointArea.tableLayout > * {display:block;padding:0;}
.pointArea.tableLayout > *:nth-of-type(n+2) {margin-top:40px;}

.items li {width:32%;}
.item {
	display:none;
	position:absolute;
	z-index:1000;
	/*background:#fff;*/
	padding:20px 4%;
	width:84%;
	opacity:0;
	-webkit-transition:opacity 0.5s linear;
	transition:opacity 0.5s linear;
	}
.item.on {opacity:1;}
.item figure {margin:0 auto;}
.item > * {
	display:block;
	width:auto;
	padding:0 !important;
	}
.item.tableLayout h2 {font-size:18px;margin-bottom:15px;}
.item.tableLayout .flavorType {font-size:14px;}
.item.tableLayout.fruity p.desc {font-size:13px;margin-bottom:15px;}
.item.tableLayout table {margin-bottom:20px;}
.item.tableLayout table th,
.item.tableLayout table td {font-size:12px;}
.item.tableLayout .boxButton {font-size:12px;}
.item .btnArea {text-align:center;}

/*スライダー*/
.item.tableLayout figure {padding:10px 0 !important;}
.item.tableLayout figure img {
	max-height:220px;
	}

.faqArea h3 {font-size:16px;}
.faqArea h3::before,
.faqArea div::before {font-size:22px;}
.faqArea h3,
.faqArea div {padding-left:40px;}
.faqArea div figure {text-align:center;max-width:none;}
}

@media(max-width:560px) {
#sec01 {padding-bottom:60px;}
#sec01 .figArea .left, #sec01 .figArea {display:none;}
#sec01 .constBox {width:auto;}

.txtArea {line-height:1.6em;}

.items {
	text-align:left;
	}
.items li {width:48%;}

/*.item.tableLayout,
.item.tableLayout > * {
	display:block;
	}
.item.tableLayout figure {
	width:60%;
	padding:0;
	margin:0 auto 20px;
	}*/
}