@charset "UTF-8";

/*
	Reset CSS
-----------------------------------------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
html{
	font-size:62.5%;
}
body{
	margin:0 auto;
	padding:0;
	font-size:1.5em;
	font-family: YakuHanJP, 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
	font-feature-settings: "palt";
	overflow-wrap: break-word;
}
p{
	line-height: 1.6;
}
ol li, ul li{
	list-style: none;
}
@media screen and (min-width:813px){
	/* iPad背景切れ対策 */
	body{
		min-width:1200px;
	}
	/* 電話リンクなし */
	a[href^=tel]{
		pointer-events:none;
	}
}
*,*::before,*::after{
	box-sizing:border-box;
}
img {
	width: 100%;
	border: none;
	vertical-align: top;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
a {
	color: #000;
	text-decoration: none;
	transition: color 0.2s, opacity 0.2s;
}
a:link {
	color: var(--bk);
}
a:visited {
	color: var(--bk);
}
a:hover {
	color: var(--bk);
	opacity: 0.7;
	text-decoration: none;
}
/* 表示切替 */
.switch {
	visibility: hidden;
}
.sp{
	display:none;
}
@media screen and (max-width:812px){
	body{
		-webkit-text-size-adjust:100%;
	}
	.pc{
		display:none;
	}
	.sp{
		display:block;
	}
	br.sp{
		display:inline-block;
	}
}


/*
	common
-----------------------------------------------------------------------------------------------*/
:root{
	/* color */
	--bl: #00408f;
	--or: #ff8b02;
	--em: #26B7BC;
	--br: #592e15;
	--rd: #f15a22;
	--wh: #fff;
	--bk: #000;
	/* font */
	--en: 'Lato', 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif;
	--light: 100;
	--medium: 500;
	--bold: 700;
	--exBold: 900;
}

/* テキストリンク */
a.txtLink{
	text-decoration:underline;
	transition:color 0.2s;
}
a[class^="txtLink"]:hover{
	text-decoration:none;
	opacity: 1.0;
}
a.txtLink:hover{
	color:#000;
}
a.txtLink_window{
	position: relative;
}
a.txtLink_window::after{
	content: "";
	width: 15px;
	height: 14px;
	background: url("../images/ico_window.svg") center center no-repeat;
	background-size: cover;
	position: absolute;
	top: 50%;
	right: -20px;
	transform: translateY(-50%);
}

/* flexBox */
.flexBox{
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.flexBox__jstCtt_btwn{
	-ms-justify-content: space-between;
	justify-content: space-between;
}
.flexBox__jstCtt_cntr{
	-ms-justify-content: center;
	justify-content: center;
}
.flexBox__jstCtt_end{
	-ms-justify-content: flex-end;
	justify-content: flex-end;
}
.flexBox__alinItm_cntr{
	-ms-align-items: center;
	align-items: center;
}
.flexBox__alinItm_top{
	-ms-align-items: flex-start;
	align-items: flex-start;
}
.flexBox__alinItm_end{
	-ms-align-items: flex-end;
	align-items: flex-end;
}
.flexBox__direction_rore{
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

/* フェードイン */
.fadeIn {
	opacity : 0;
	transform: translateY(40px);
	transition: transform 1.0s;
}
@media screen and (max-width:812px){	
	.fadeIn {
	  transform: translateY(20px);
	}
}

/* コンテンツ */
#wrapper{
	min-width: 1200px;
	position: relative;
	overflow: hidden;
}
@media screen and (min-width:812px){
	/* iPad背景切れ対策 */
	#wrapper{
		min-width:1200px;
	}
}
.ctsArea{
	width: 1100px;
	margin: 0 auto;
	padding: 80px 30px;
}
@media screen and (max-width:812px){
	#wrapper{
		min-width: 100%;
	}
	.ctsArea{
		width: 100%;
		max-width: 500px;
		padding: 40px 20px;
	}
}

/* タイトル */
.tit__slash{
	margin-bottom: 10px;
	text-align: center;
}
.tit__slash span{
	display: inline-block;
	font-size: 2.4rem;
	font-weight: var(--bold);
	color: var(--bk);
	/* color: var(--wh); */
	position: relative;
}
.tit__slash span::before,
.tit__slash span::after{
	content: '';
	width: 3px;
	height: 100%;
	background-color: var(--bk);
	/* background-color: var(--wh); */
	position: absolute;
	bottom: 0;
}
.tit__slash span::before{
	left: -25px;
	transform: rotate(-45deg);
}
.tit__slash span::after{
	right: -25px;
	transform: rotate(45deg);
}
@media screen and (max-width:812px){
	.tit__slash span{
		font-size: 1.6rem;
	}
	.tit__slash span::before,
	.tit__slash span::after{
		height: 90%;
	}
	.tit__slash span::before{
		left: -20px;
	}
	.tit__slash span::after{
		right: -20px;
	}
}

/* ボタン */
.btnBase{
	-ms-justify-content: center;
	justify-content: center;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	padding: 30px 0 0;
}
a.btnBase__item{
	display: block;
	width: 300px;
	margin: 0 0 0 15px;
	padding: 20px;
	font-size: 1.8rem;
	font-weight: var(--bold);
	color: var(--em);
	background-color: var(--wh);
	text-align: center;
	border-radius: 45px;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	position: relative;
}
a.btnBase__item_s{
	width: 300px;
	padding: 20px;
	font-size: 1.6rem;
	color: var(--wh);
	background-color: var(--em);
}
a.btnBase__item::after{
	content:' ';
	display:block;
	width:10px;
	height:10px;
	border-top:3px solid var(--em);
	border-right:3px solid var(--em);
	transform:translateY(-50%) rotate(45deg);
	transform-origin:0 0;
	position:absolute;
	top:50%;
	right:25px;
	margin-top: -2px;
}
	a.btnBase__item_s::after{
		border-top:3px solid var(--wh);
		border-right:3px solid var(--wh);
	}

a.btnBase__item::before{
	content: "";
	width: 100%;
	height: 100%;
	border-radius: 50px;
	background: rgba(255, 255, 255, 0.15);
	transform-origin: center;
	transform: scaleX(0);
	position: absolute;
	left: 0;
	top: 0;
	transition: transform 0.3s;
}
a.btnBase__item:last-of-type{
	margin: 0;
}
@media screen and (max-width:812px){
	.btnBase{
		display: block;
		padding: 25px 0 0;
	}
	a.btnBase__item{
		width: 100%;
		padding: 20px;
		margin: 0 auto 10px auto;
		font-size: 1.6rem;
		filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	}
	a.btnBase__item::after{
		right:20px;
		margin:-2px 0 0 0;
	}
	a.btnBase__item:last-of-type{
		margin: 0 auto;
	}
}

/* 別窓リンク */
a.btnBase__item .window::after{
	content: " ";
	display: inline-block;
	width: 14px;
	height: 14px;
	margin: 0 0 0 5px;
	background:url(../images/ico_window.svg) center center no-repeat;
	background-size: contain;
}
@media screen and (max-width:812px){
	a.btnBase__item .window::after{
		width: 15px;
		height: 13px;
	}
}

/* table */
.tblBase{
	width:100%;
	border-collapse:collapse;
	border-top:1px solid #bec6c6;
	border-bottom:1px solid #bec6c6;
}
.tblBase th,.tblBase td{
	padding:25px 0;
	line-height:1.6;
	border-bottom:1px solid #bec6c6;
}
.tblBase th{
	width:160px;
	font-size: 1.6rem;
	font-weight:600;
	color: #0075C1;
	text-align: left;
	vertical-align: top;
}
@media screen and (max-width:812px){
	.tblBase{
		width:100%;
		border-top:none;
	}
	.tblBase tr,.tblBase th,.tblBase td{
		display:block;
	}
	.tblBase th,.tblBase td{
		width:100%;
	}
	.tblBase th{
		min-width:auto;
		padding:10px;
		border-top:1px solid #bec6c6;
		border-bottom:none;
		text-align: center;
		background-color: #F5F5F5;
	}
	.tblBase td{
		padding:10px 0 25px 0;
		border-bottom:none;
	}
}

/* list */
.listBase{
	margin: -5px 0 0;
	position:relative;
}
.listBase__item{
	display: inline-block;
	padding:5px 20px 0 15px;
	position: relative;
}
.listBase__item::before {
	content:'●';
	font-size:1.0rem;
	color:#06A33E;
	position:absolute;
	top: 8px;
	left:0;
}

/*
	アレルゲン情報一覧リンク
-----------------------------------------------------------------------------------------------*/
.allergyArea{
	padding-top: 5px;
}
a.allergyLink {
    padding: 0 0 0 18px;
	font-size: 1.2rem;
    color: #666;
	text-decoration:underline;
    position: relative;
}
.allergyLink::before {
    content: "";
    width: 14px;
    height: 14px;
    border-radius: 50%;
    background: var(--em);
    position: absolute;
    top: 9px;
    transform: translateY(-50%);
    left: 0;
	margin-top: 1px;
}
.allergyLink::after {
    content: "";
    width: 4px;
    height: 4px;
    border-top: 1px solid var(--wh);
    border-right: 1px solid var(--wh);
    position: absolute;
    top: 9px;
    transform: translateY(-50%) rotate(45deg);
    left: 4px;
	margin-top: 1px;
}
/* gNavi用 */
#gNav__area .allergyArea{
	padding-top: 15px;
}
#gNav__area a.allergyLink {
	font-size: 1.4rem;
    color: #fff;
}
#gNav__area .allergyLink::before {
    background: var(--wh);
}
#gNav__area .allergyLink::after {
    border-top: 1px solid var(--em);
    border-right: 1px solid var(--em);
}

/*
	header
-----------------------------------------------------------------------------------------------*/
#header{
	width: 100%;
	position: absolute;
	top: 0;
	z-index: 99;
}
#header__logo{
	width: 170px;
	margin: 25px 0 0 25px;
}
@media screen and (max-width:812px){
	#header__logo{
		width: 120px;
		margin: 15px 0 0 15px;
	}
}

/* subNav */
.subNav{
	position: absolute;
	right: 80px;
}
#subNav__top{
	top: 0;
}
#subNav__btm{
	top: -37px;
}
.subNav__item:first-of-type{
	margin-right: 10px;
}
a.subNav__btn{
	display: inline-block;
	padding: 12px 25px 12px 12px;
	font-size: 1.3rem;
	font-weight: var(--bold);
	color: var(--wh);
	line-height: 1.0;
	border-radius: 0 0 5px 5px;
	position: relative;
}
#subNav__btm a.subNav__btn{
	border-radius: 5px 5px 0 0;
}
a.subNav__btn::after{
	content:' ';
	display:block;
	width:8px;
	height:8px;
	margin-top: -2px;
	border-top:2px solid var(--wh);
	border-right:2px solid var(--wh);
	transform:translateY(-50%) rotate(45deg);
	transform-origin:0 0;
	position:absolute;
	top:50%;
	right:8px;
}
.subNav__btn_01{
	background-color: var(--bl);
}
.subNav__btn_02{
	background-color: var(--or);
}
@media screen and (max-width:812px){
	.subNav{
		display: none;
	}
}

/* gNav */
#gNav{
	width: 80px;
	height: 80px;
	border-radius: 0 0 0 5px;
	position: fixed;
	top: 0;
	right: 0;
	transition: opacity 0.2s, background-color 0.2s;
	cursor: pointer;
	z-index: 100;
}
#gNav:hover{
	opacity: 0.5;
}
#gNav.highlight{
	background-color: var(--em);
}
[class^="gNav__line"]{
	display:block;
	width:34px;
	height:3px;
	background-color: var(--wh);
	position:absolute;
	left: 23px;
}
.gNav__line01{
	top:25px;
	transition:transform 0.3s;
}
.gNav__line02{
	top:38px;
	transition:transform 0.3s;
}
.gNav__line03{
	top:51px;
	transition:transform 0.3s;
}
/* キーclose */
#gNav.active{
	background-color: var(--wh);
}
#gNav.active [class^="gNav__line"]{
	background-color: var(--em);
}
#gNav.active .gNav__line01{
	top:38px;
	transform:rotate(45deg);
}
#gNav.active .gNav__line02{
	opacity:0;
}
#gNav.active .gNav__line03{
	top:38px;
	transform:rotate(135deg);
}
#gNav__wrapper{
	display: none;
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
}
#gNav__area{
	display:none;
	width:600px;
	height: 100%;
	padding: 60px 0;
	position:fixed;
	top:0;
	left:50%;
	transform: translateX(-50%);
	z-index:100;
	overflow-y: scroll;
	-ms-overflow-style: none;
	scrollbar-width: none;
}
#gNav__area::-webkit-scrollbar {
	display:none;
}
#gNav__overlay{
	display:none;
	width:100%;
	height:100%;
	background-color: rgba(38,183,188,.95);
	position:absolute;
	top:0;
	left:0;
	z-index: 99;
}
@media screen and (max-width:812px){
	#gNav{
		width: 55px;
		height: 55px;
		background-color: var(--em);
	}
	[class^="gNav__line"]{
		width:25px;
		left: 16px;
	}
	.gNav__line01{
		top:15px;
	}
	.gNav__line02{
		top:26px;
	}
	.gNav__line03{
		top:37px;
	}
	/* キーclose */
	#gNav.active .gNav__line01{
		top:26px;
	}
	#gNav.active .gNav__line03{
		top:26px;
	}
	#gNav__area{
		width:100%;
		max-width: 500px;
		padding: 60px 20px;
	}
}

.menu__logo{
	margin: 0 auto 30px;
}
.menu__item{
	border-bottom: 1px solid var(--wh);
}
.menu__item:first-of-type{
	border-top: 1px solid var(--wh);
}
a.menu__btn{
	display: block;
	padding: 15px 0;
	font-size: 1.8rem;
	font-weight: var(--bold);
	color: var(--wh);
	text-align: center;
}
.subMenu__item{
	width: calc((100% - 20px)/2);
	margin-top: 20px;
	margin-right: 20px;
}
.column2 .subMenu__item {
	width: calc((100% - 16px)/3);
	margin-top: 20px;
	margin-right: 8px;
}
.subMenu__item:nth-of-type(2n){
	margin-right: 0;
}
.column2 .subMenu__item:nth-of-type(2n){
	margin-right: 8px;
}
.column2 .subMenu__item:nth-of-type(3n){
	margin-right: 0;
}
a.subMenu__btn{
	display: block;
	padding: 15px;
	color: var(--em);
	font-weight: var(--bold);
	text-align: center;
	background-color: var(--wh);
	border-radius: 5px;
}
@media screen and (max-width:812px){
	.menu__logo{
		margin: 0 auto 20px;
	}
	a.menu__btn{
		display: block;
		padding: 12px 0;
		font-size: 1.5rem;
	}
	.subMenu__item{
		width: calc((100% - 10px)/2);
		margin-top: 10px;
		margin-right: 10px;
	}
	a.subMenu__btn{
		padding: 12px;
		font-size: 1.3rem;
	}
}


/*
	kv
-----------------------------------------------------------------------------------------------*/
#kv{
	width: 100vw;
	min-width: 1200px;
	height: 700px;
	background: url("../images/bg_cmn.png") center center no-repeat;
	background-size: cover;
	position: relative;
}
.kv__inner{
	width: 1200px;
	height: 100%;
	margin: 0 auto;
	padding: 0 120px;
	position: relative;
}
.kv__logoArea{
	display: inline-block;
	margin-top: 180px;
	text-align: center;
}
.kv__logo{
	width: 550px;
}
.kv__txt{
	width: 400px;
	margin: 12px auto 0;
}
.kv__ph{
	position: absolute;
	right: -10px;
	bottom: 0;
}
.kv__bnr{
	width: 180px;
	height: 180px;
	display: inline-block;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	position: absolute;
	right: 40px;
	bottom: -50px;
}
.kv__chara{
	width: 200px;
	position: absolute;
	left: 10%;
	bottom: 0;
}
@media screen and (max-width:812px){
	#kv{
		width: 100%;
		min-width: 100%;
		height: 530px;
	}
	.kv__inner{
		width: 100%;
		padding: 0 20px;
	}
	.kv__logoArea{
		display: block;
		width: 95%;
		margin: 0 auto;
		padding-top: 70px;
		position: relative;
		z-index: 1;
		filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	}
	.kv__logo{
		width: 100%;
	}
	.kv__txt{
		width: 90%;
		margin: 12px auto 0;
	}
	.kv__ph{
		width: 98%;
		position: absolute;
		right: 50%;
		bottom: 20px;
		transform: translateX(50%);
	}
	.kv__bnr{
		width: 110px;
		height: 110px;
		right: 15px;
		bottom: -20px;
	}
	.kv__chara{
		width: 115px;
		left: 15px;
	}
	@media screen and (orientation: landscape) {
		#kv{
			max-height: 500px;
		}
		.kv__ph {
			max-width: 400px;
			position: absolute;
			right: 20px;
			transform:none;
		}
		.kv__logoArea{
			width: 50%;
			margin: 0 0 0 5%;
			padding-top: 12%
		}
	}
	@media screen and (min-width:768px){
		#kv{
			max-height: 500px;
		}
		.kv__ph {
			max-width: 400px;
			position: absolute;
			right: 20px;
			transform:none;
		}
		.kv__logoArea{
			width: 50%;
			margin: 0 0 0 5%;
			padding-top: 12%
		}
	}
}

#waveCanvas{
	width: 100%;
	height: 130px;
	position: absolute;
	left: 0;
	bottom: -1px;
}


/*
	about
-----------------------------------------------------------------------------------------------*/
#about.ctsArea{
	padding: 50px 30px;
}
.about__cts{
	margin-bottom: 30px;
}
.about__txtArea{
	width: 500px;
	letter-spacing: 0.1rem;
}
.about__tit{
	margin-bottom: 15px;
}
.about__tit span{
	display: inline-block;
	margin-bottom: 10px;
	padding: 5px 15px;
	font-size: 3.3rem;
	color: var(--wh);
	font-weight: var(--bold);
	background-color: var(--em);
	border-radius: 5px;
}
.about__tit span:last-of-type{
	margin-bottom: 0;
}
.about__txt{
	font-size: 1.8rem;
	font-weight: var(--medium);
	line-height: 2.3;
}
@media screen and (max-width:812px){
	.about__cts{
		max-width: 500px;
		margin: 0 auto 30px;
	}
	#about.ctsArea{
		width: 100%;
		max-width: 100%;
		padding: 40px 20px;
	}
	.about__tit{
		margin-bottom: 10px;
	}
	.about__tit span{
		margin-bottom: 5px;
		padding: 3px 10px;
		font-size: 2.3rem;
	}
	.about__txt{
		font-size: 1.6rem;
		line-height: 1.8;
	}
	@media screen and (orientation: landscape) {
		.about__cts{
			max-width: 100%;
			-ms-align-items: flex-start;
			align-items: flex-start;
		}
		.about__txtArea{
			width: calc(100% - 330px);
		}
	}
}


/* スライダー */
#pickup{
	width: 500px;
	margin: 0;
	border: 10px solid var(--wh);
	filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	position: relative;
}
#pickup::after{
	content: "Pick up";
	font-family: var(--en);
	font-size: 1.9rem;
	font-weight: var(--bold);
	color: var(--wh);
	line-height: 1.0;
	position: absolute;
	top: 6px;
	left: -25px;
	z-index: 10;
}
#pickup::before{
	content: "";
	width: 90px;
	height: 90px;
	background: url(../images/bg_ico_new.svg) center center no-repeat;
	position: absolute;
	top: -30px;
	left: -40px;
	z-index: 10;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
}
a.pickup__link{
	display: block;
}
a.pickup__link:hover{
	opacity: 0.7;
}
#pickup .slick-dots{
	bottom: -35px;
}
#pickup .slick-dots li {
	width: 13px;
	height: 13px;
	margin: 0 10px 0 0;
}
#pickup .slick-dots li:last-of-type{
	margin-right: 0;
}
#pickup .slick-dots li button {
	width: 13px;
	height: 13px;
}
#pickup .slick-dots li button::before {
	content: '';
	width: 13px;
	height: 13px;
	opacity: 1.0;
	background-color: #D2D2D2;
	border-radius: 10px;
}
#pickup .slick-dots li.slick-active button:before {
	opacity: 1.0;
	background-color: var(--em);
}
@media screen and (max-width:812px){
	#pickup{
		width: 100%;
		margin-top: 30px;
		border: 6px solid var(--wh);
		filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	}
	#pickup::after{
		font-size: 1.2rem;
		top: 1px;
		left: -8px;
	}
	#pickup::before{
		width: 65px;
		height: 65px;
		top: -25px;
		left: -20px;
	}
	@media screen and (orientation: landscape) {
		#pickup{
			width: 300px;
			margin-top: 0;
		}
	}
}


/*
	LINE UP
-----------------------------------------------------------------------------------------------*/
.lineup__tit span{
	display: inline-block;
	margin: 0 auto 30px;
	padding: 10px 50px;
	font-family: var(--en);
	font-size: 2.5rem;
	color: var(--wh);
	font-weight: var(--exBold);
	line-height: 1.0;
	background-color: var(--bl);
	border-radius: 25px;
	position: relative;
}
.lineup__tit span::before{
	content: "";
	width: 0;
	height: 0;
	border-left: 12px solid transparent;
	border-right: 12px solid transparent;
	border-top: 10px solid var(--bl);
	position: absolute;
	left: 50%;
	bottom: -10px;
	transform: translateX(-50%);
}
.anchor{
	justify-content: center;
	gap: 35px 20px;
}
.anchor__item{
	width: calc((100% - 60px)/4);
	border-radius: 10px;
}
.anchor__item01{
	background-color: #fcf5d7;
}
.anchor__item02{
	background-color: #e1d9d5;
}
.anchor__item03{
	background-color: #c9edee;
}
.anchor__item04{
	background-color: #ffe8cc;
}
.anchor__item05{
	background-color: #ccefe8;
}
.anchor__item06{
	background-color: #f3ebdb;
}
.anchor__item07{
	background-color: #f4dbdb;
}
.anchor__item08{
	background-color: #ffe4ee;
}
.anchor__item09{
	background-color: #e6ecf0;
}
.anchor__btn{
	display: inline-block;
	width: 100%;
}
.anchor__tit{
	padding: 10px;
	color: var(--wh);
	font-size: 1.6rem;
	font-weight: var(--bold);
	text-align: center;
	background-color: var(--em);
	border-radius: 0 0 10px 10px;
}
.anchor__ph img{
	margin-top: -20px;
}
@media screen and (max-width:812px){
	#lineup{
		max-width: 500px;
		margin: 0 auto;
		padding-top: 30px;
	}
	.lineup__tit span{
		margin: 0 auto 15px;
		padding: 10px 40px;
		font-size: 1.8rem;
		border-radius: 20px;
	}
	.lineup__tit span::before{
		border-left: 10px solid transparent;
		border-right: 10px solid transparent;
		border-top: 8px solid var(--bl);
		bottom: -8px;
	}
	.anchor{
		justify-content: start;
		gap: 20px 10px;
	}
	.anchor__item{
		width: calc((100% - 10px)/2);
		border-radius: 5px;
	}
	.anchor__tit{
		padding: 5px;
		font-size: 1.4rem;
		border-radius: 0 0 5px 5px;
	}
	.anchor__ph img{
		margin-top: -10px;
	}
	@media screen and (orientation: landscape) {
		#lineup{
			padding-top: 0;
		}
	}
}


/*
	商品一覧
-----------------------------------------------------------------------------------------------*/
.product__bg{
	margin-top: 100px;
	padding-bottom: 80px;
	position: relative;
}
.product__bg::before{
	content: '';
	width: 100%;
	height: 10vw;
	background: url("../images/bg_wave.svg") center center no-repeat;
	background-size: cover;
	position: absolute;
	left: 0;
	bottom: -1px;
}
@media screen and (max-width:812px){
	.product__bg{
		margin-top: 40px;
		padding-bottom: 20px;
	}
}

.product__cateTitArea{
	width: 90vw;
	margin: 0 10vw 0 0;
	padding: 100px 10vw 100px 20vw;
	text-align: center;
	border-radius: 0 50px 50px 0;
}
.product__cateTitAre_even{
	margin: 0 0 0 10vw;
	padding: 100px 20vw 100px 10vw;
	border-radius: 50px 0 0 50px;
}
.product__cateTit{
	margin-bottom: 30px;
	position: relative;
}
.product__cateTit::before{
	font-family: var(--en);
	font-size: 8.5rem;
	color: rgba(255,255,255,.6);
	font-weight: var(--exBold);
	white-space: pre;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.product__cateTit span{
	display: inline-block;
	font-size: 3.4rem;
	font-weight: var(--bold);
	color: var(--br);
	position: relative;
}
.product__cateTit span::before,
.product__cateTit span::after{
	content: '';
	height: 80px;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
.product__cateTit span::before{
	left: -80px;
}
.product__cateTit span::after{
	right: -80px;
}
.product__cateTxt{
	font-size: 1.6rem;
	font-weight: var(--medium);
	position: relative;
	z-index: 1;
}
@media screen and (max-width:812px){
	.product__cateTitArea{
		width: calc(100% - 30px);
		margin: 0 30px 0 0;
		padding: 40px 20px 60px 50px;
		border-radius: 0 20px 20px 0;
	}
	.product__cateTitAre_even{
		margin: 0 0 0 30px;
		padding: 40px 50px 60px 20px;
		border-radius: 20px 0 0 20px;
	}
	.product__cateTit{
		margin-bottom: 20px;
	}
	.product__cateTit::before{
		font-size: 3.5rem;
	}
	.product__cateTit span{
		font-size: 2.2rem;
	}
	.product__cateTit span::before,
	.product__cateTit span::after{
		height: 50px;
	}
	.product__cateTit span::before{
		left: -40px;
	}
	.product__cateTit span::after{
		right: -40px;
	}
	.product__cateTxt{
		max-width: 400px;
		margin: 0 auto;
		font-size: 1.4rem;
	}
}


.product__cts{
	width: 1100px;
	margin: -60px auto 0;
	padding: 0 30px;
	position: relative;
	z-index: 10;
}
.product__box{
	padding: 50px;
	background-color: rgba(255,255,255,.95);
	border-radius: 30px;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.05));
}
.product__list{
	gap: 20px;
	position: relative;
	z-index: 10;
}
.product__item{
	width: 245px;
	padding: 20px 20px;
	background-color: rgba(255,255,255,.95);
	border-radius: 10px;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.05));
	position: relative;
}
.product__item.new::before{
	content: '';
	width: 66px;
	height: 67px;
	background: url("../images/ico_new.svg") no-repeat center center /cover;
	position: absolute;
	top: 15px;
	left: 15px;
}
.product__tit{
	padding: 12px 0;
	font-size: 1.8rem;
	font-weight: var(--bold);
	color: var(--br);
	text-align: center;
}
.product__titNml{
	padding: 0 0 12px;
	text-align: left;
}
.product__txt{
	font-size: 1.3rem;
}
.product__txtNml{
	font-size: 1.4rem;
}
.product__label{
	margin-top: 5px;
	padding: 4px 6px;
	font-size: 1.1rem;
	font-weight: var(--medium);
	color: var(--wh);
	text-align: center;
	background-color: var(--rd);
	border-radius: 3px;
}
.product__label.off{
	color: var(--rd);
	background-color: var(--wh);
	border: 1px solid var(--rd);
}
.product__label.no__border{
	color: var(--rd);
	background-color: transparent;
	border: none;
}
.product__bnrArea{
	width: 700px;
	margin: 60px auto 0;
	text-align: center;
	position: relative;
	z-index: 10;
}
.product__bnrTxt{
	margin-bottom: 20px;
}
.product__bnr{
	display: inline-block;
	border: 10px solid var(--wh);
	border-radius: 20px;
	background-color: var(--wh);
	box-shadow: 0px 0px 10px rgb(0 0 0 / 15%);
	overflow: hidden;
}
.product__adArea{
	width: 700px;
	margin: 0 auto 50px;
	position: relative;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
}
.product__adArea::before{
	content: '';
	width: 120px;
	height: 118px;
	background: url("../images/ico_sale.svg") no-repeat center center /cover;
	position: absolute;
	top: -40px;
	left: -40px;
	z-index: 10
}
.product__adArea.none::before{
	display: none;
}
.product__adArea.beforeRelease::before{
	content: '';
	width: 120px;
	height: 118px;
	background: none;
	position: absolute;
	top: -40px;
	left: -40px;
	z-index: 10
}
.product__ad{
	border-radius: 20px;
	overflow: hidden;
	position: relative;
	z-index: 1;
}
@media screen and (max-width:812px){
	.product__cts{
		width: 100%;
		max-width: 500px;
		margin: -45px auto 0;
		padding: 0 20px;
	}
	.product__box{
		padding: 20px;
		border-radius: 10px;
	}
	.product__list{
		gap: 10px;
	}
	.product__item{
		width: calc((100% - 10px)/2);
		padding: 15px 12px;
	}
	.product__item.new::before{
		width: 45px;
		height: 46px;
		top: 10px;
		left: 10px;
	}
	.product__tit{
		padding: 10px 0;
		font-size: 1.5rem;
	}
	.product__titNml{
		padding: 0 0 10px;
	}
	.product__txt{
		font-size: 1.2rem;
	}
	.product__bnrArea{
		width: 100%;
		margin: 20px auto 0;
	}
	.product__bnrTxt{
		margin-bottom: 10px;
		font-size: 1.3rem;
	}
	.product__bnr{
		width: 100%;
		border: 3px solid var(--wh);
		border-radius: 10px;
		filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	}
	.product__adArea{
		width: 100%;
		margin: 0 auto 30px;
	}
	.product__adArea::before{
		width: 55px;
		height: 54px;
		top: -20px;
		left: -15px;
	}
	.product__ad{
		border-radius: 10px;
	}
}

.spec{
	margin-top: 15px;
	padding: 10px 0;
	border-top: 2px dotted #666;
	border-bottom: 2px dotted #666;
}
.spec__item{
	margin-right: 15px;
	padding-left: 13px;
	font-size: 1.2rem;
	color: #666;
	position: relative;
}
.spec__item::before{
	content: '●';
	padding-right: 2px;
	font-size: 1.1rem;
	position: absolute;
	top: 1px;
	left: 0;
}
.spec__notes{
	margin-top: 10px;
	font-size: 1.2rem;
	color: #666;
}
@media screen and (max-width:812px){
	.spec{
		margin-top: 12px;
		padding: 5px 0;
	}
	.spec__item{
		margin-right: 12px;
		font-size: 1.2rem;
	}
}

/* product01 */
#product01{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #fcf5d7 80px, #fcf5d7 100%);
}
#product01 .product__cateTitArea{
	background: url("../images/pattern_dot.svg") center center repeat #f7dfa4;
	background-size: 15px 15px;
}
#product01 .product__cateTit::before{
	content: 'MILK・VANILLA';
}
#product01 .product__cateTit span::before{
	width: 51px;
	background: url("../images/pic_product01_chara01.png") no-repeat center center /cover;
}
#product01 .product__cateTit span::after{
	width: 42px;
	background: url("../images/pic_product01_chara02.png") no-repeat center center /cover;
}
@media screen and (max-width:812px){
	#product01{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #fcf5d7 60px, #fcf5d7 100%);
	}
	#product01 .product__cateTit span::before{
		width: 32px;
	}
	#product01 .product__cateTit span::after{
		width: 27px;
	}
}

/* product02 */
#product02{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #e1d9d5 80px, #e1d9d5 100%);
}
#product02 .product__cateTitArea{
	background: url("../images/pattern_grid.svg") center center repeat #ac968a;
	background-size: 15px 15px;
}
#product02 .product__cateTit{
	margin-bottom: 60px;
}
#product02 .product__cateTit::before{
	content: 'CHOCOLATE・\AMATCHA・FRUIT';
	font-size: 6.5rem;
	line-height: 1.0;
}
#product02 .product__cateTit span::before{
	width: 66px;
	background: url("../images/pic_product02_chara01.png") no-repeat center center /cover;
}
#product02 .product__cateTit span::after{
	width: 64px;
	background: url("../images/pic_product02_chara02.png") no-repeat center center /cover;
}
@media screen and (max-width:812px){
	#product02{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #e1d9d5 60px, #e1d9d5 100%);
	}
	#product02 .product__cateTit{
		margin-bottom: 10px;
	}
	#product02 .product__cateTit::before{
		font-size: 3.0rem;
	}
	#product02 .product__cateTit span::before{
		width: 42px;
		left: -50px;
	}
	#product02 .product__cateTit span::after{
		width: 40px;
		right: -50px;;
	}
}

/* product03 */
#product03{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #c9edee 80px, #c9edee 100%);
}
#product03 .product__cateTitArea{
	background: url("../images/pattern_dot.svg") center center repeat #92dbdd;
	background-size: 20px 20px;
}
#product03 .product__cateTit::before{
	content: 'FROZENYOGURT';
}
#product03 .product__cateTit span::before{
	width: 72px;
	height: 58px;
	background: url("../images/pic_product03_chara01.png") no-repeat center center /cover;
}
#product03 .product__cateTit span::after{
	width: 72px;
	height: 60px;
	background: url("../images/pic_product03_chara02.png") no-repeat center center /cover;
}
.frozen__ph{
	width: 440px;
	margin-right: 50px;
}
.frozen__txtArea{
	width: calc((100% - 490px));
}
@media screen and (max-width:812px){
	#product03{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #c9edee 60px, #c9edee 100%);
	}
	#product03 .product__cateTit::before{
		content: 'FROZEN\AYOGURT';
		font-size: 3.5rem;
		line-height: 1.0;
	}
	#product03 .product__cateTit span::before{
		width: 36px;
		height: 29px;
	}
	#product03 .product__cateTit span::after{
		width: 36px;
		height: 30px;
	}
	#frozen{
		display: block;
	}
	.frozen__ph{
		width: 80%;
		margin: 0 auto 20px;
	}
	.frozen__txtArea{
		width: 100%;
	}
}

/* product04 */
#product04{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #ffe8cc 80px, #ffe8cc 100%);
}
#product04 .product__cateTitArea{
	background: repeating-linear-gradient(-45deg,#ffc580 0,#ffc580 10px,#ffcb93 10px,#ffcb93 14px);
}
#product04 .product__cateTit::before{
	content: 'SEASON';
}
#product04 .product__cateTit span::before{
	width: 47px;
	background: url("../images/pic_product04_chara01.png") no-repeat center center /cover;
}
#product04 .product__cateTit span::after{
	width: 43px;
	background: url("../images/pic_product04_chara02.png") no-repeat center center /cover;
}
@media screen and (max-width:812px){
	#product04{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #ffe8cc 60px, #ffe8cc 100%);
	}
	#product04 .product__list{
		justify-content: flex-start;
	}
	#product04 .product__cateTit span::before{
		width: 39px;
	}
	#product04 .product__cateTit span::after{
		width: 36px;
	}
}

/* product05 */
#product05{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #ccefe8 80px, #ccefe8 100%);
}
#product05 .product__cts::after{
	content: '';
	width: 800px;
	height: 767px;
	background: url("../images/bg_jp_map.svg") no-repeat center center /cover;
	position: absolute;
	right: 0;
	bottom: 130px;
}
#product05 .product__cateTitArea{
	background: url("../images/bg_jp.png") no-repeat center center /cover;
}
#product05 .product__cateTit::before{
	content: 'JAPAN PREMIUM';
}
#product05 .product__cateTit span::before{
	width: 43px;
	background: url("../images/pic_product05_chara01.png") no-repeat center center /cover;
}
#product05 .product__cateTit span::after{
	width: 45px;
	background: url("../images/pic_product05_chara02.png") no-repeat center center /cover;
}
@media screen and (max-width:812px){
	#product05{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #ccefe8 60px, #ccefe8 100%);
	}
	#product05 .product__cts::after{
		width: 500px;
		height: 480px;
		right: -30px;
		bottom: 130px;
	}
	#product05 .product__cateTit span::before{
		width: 27px;
	}
	#product05 .product__cateTit span::after{
		width: 28px;
	}
}

/* product06 */
#product06{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #f3ebdb 80px, #f3ebdb 100%);
}
#product06 .product__cateTitArea{
	background: url("../images/bg_cremia.png") no-repeat center center /cover;
	position: relative;
}
#product06 .product__cateTitArea::before{
	content: '';
	width: 135px;
	height: 135px;
	background: url("../images/logo_cremia.svg") no-repeat center center /cover;
	position: absolute;
	top: -20px;
	left: 50px;
	z-index: 1;
}
#product06 .product__cateTit::before{
	content: '';
	width: 388px;
	height: 155px;
	background: url("../images/txt_cremia.svg") no-repeat center center /cover;
	opacity: .5;
}
#product06 .product__cateTit span::before,
#product06 .product__cateTit span::after{
	display: none;
}
#product06 .product__item{
	padding: 0;
}
.product__cremiaPh{
	padding: 20px 20px 8px;
	background-color: #000;
	border-radius: 10px 10px 0 0;
}
.product__cremiaPh_normal{
	background: url("../images/bg_cremia_normal.png") no-repeat center center /cover;
}
.product__cremiaPh_custard{
	background: url("../images/bg_cremia_custard.png") no-repeat center center /cover;
}
.product__cremiaPh_choco{
	background: url("../images/bg_cremia_choco.png") no-repeat center center /cover;
}
.product__cremiaPh_matcha{
	background: url("../images/bg_cremia_matcha.png") no-repeat center center /cover;
}
.product__cremiaPh_custard .product__tit,
.product__cremiaPh_choco .product__tit,
.product__cremiaPh_matcha .product__tit{
	color: var(--wh);
}
.product__cremiaTxt{
	padding: 20px 20px;
}
@media screen and (max-width:812px){
	#product06{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #f3ebdb 60px, #f3ebdb 100%);
	}
	#product06 .product__cateTitArea::before{
		width: 70px;
		height: 70px;
		top: -10px;
		left: 20px;
	}
	#product06 .product__cateTit::before{
		width: 200px;
		height: 80px;
	}
	#product06 .product__list{
		justify-content: flex-start;
	}
}

/* product07 */
#product07{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #f4dbdb 80px, #f4dbdb 100%);
}
#product07 .product__cateTitArea{
	background: url("../images/bg_waSoft.png") no-repeat center center /cover;
}
#product07 .product__cateTit::before{
	content: 'NIPPON\ASOFTCREAM';
	font-size: 6.5rem;
	line-height: 1.0;
}
#product07 .product__cateTit span::before{
	width: 51px;
	background: url("../images/pic_product07_chara01.png") no-repeat center center /cover;
}
#product07 .product__cateTit span::after{
	width: 44px;
	background: url("../images/pic_product07_chara02.png") no-repeat center center /cover;
}
.waSoft__ph{
	width: 350px;
	margin-right: 50px;
}
.waSoft__txtArea{
	width: calc((100% - 400px));
}
.waSoft__subArea{
	margin-top: 20px;
	padding: 30px;
	background-color: #f0e7f1;
}
.waSoft__subArea .product__ph{
	width: 205px;
	margin-right: 15px;
}
.waSoft__subTxtArea{
	width: calc((100% - 220px));
}

/* product09 */
#product09{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #e6ecf0 80px, #e6ecf0 100%);
}
#product09 .product__cateTitArea{
	background: url("../images/bg_select.png") no-repeat center center /cover;
}
#product09 .product__cateTit::before{
	content: 'SELECT';
	color: rgba(255,255,255,.3);
}
#product09 .product__cateTit span,
#product09 .product__cateTxt{
	color: #fff;
}
#product09 .product__cateTit span::before{
	width: 43px;
	background: url("../images/pic_product05_chara01.png") no-repeat center center /cover;
}
#product09 .product__cateTit span::after{
	width: 45px;
	background: url("../images/pic_product05_chara02.png") no-repeat center center /cover;
}
#product09 .product__list{
	justify-content: center;
	width: 800px;
	margin: 0 auto;
}
@media screen and (max-width:812px){
	#product09{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #ccefe8 60px, #ccefe8 100%);
	}
	#product09 .product__cateTit span::before{
		width: 27px;
	}
	#product09 .product__cateTit span::after{
		width: 28px;
	}
	#product09 .product__list{
		justify-content: start;
		width: 100%;
	}
}

@media screen and (max-width:812px){
	#product07{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #f4dbdb 60px, #f4dbdb 100%);
	}
	#product07 .product__cateTit::before{
		font-size: 3.5rem;
		line-height: 1.0;
	}
	#product07 .product__cateTit span::before{
		width: 32px;
	}
	#product07 .product__cateTit span::after{
		width: 28px;
	}
	#waSoft{
		display: block;
	}
	.waSoft__ph{
		width: 80%;
		margin: 0 auto 20px;
	}
	.waSoft__txtArea{
		width: 100%;
	}
	.waSoft__subArea{
		padding: 15px;
	}
	.waSoft__subAreaIn{
		display: block;
	}
	.waSoft__subArea .product__ph{
		width: 70%;
		margin: 0 auto 10px;
	}
	.waSoft__subTxtArea{
		width: 100%;
	}
	.waSoft__subTxtArea .product__titNml{
		text-align: center;
	}
}

/* product08 */
#product08{
	background: linear-gradient(180deg, #fff 0%, #fff 80px, #ffe4ee 80px, #ffe4ee 100%);
}
#product08 .product__cateTitArea{
	background: url("../images/pattern_waffle.svg") center center repeat #ffb3cf;
	background-size: 22px 22px;
}
#product08 .product__cateTit::before{
	content: 'BOUQUET\ASOFTCREAM';
	font-size: 6.5rem;
	line-height: 1.0;
}
#product08 .product__cateTit span::before{
	width: 52px;
	height: 70px;
	background: url("../images/pic_product08_chara01.png") no-repeat center center /cover;
}
#product08 .product__cateTit span::after{
	width: 50px;
	height: 70px;
	background: url("../images/pic_product08_chara02.png") no-repeat center center /cover;
}
.bouquet__ph{
	width: 350px;
	margin-right: 50px;
}
.bouquet__txtArea{
	width: calc((100% - 400px));
}
@media screen and (max-width:812px){
	#product08{
		background: linear-gradient(180deg, #fff 0%, #fff 60px, #ffe4ee 60px, #ffe4ee 100%);
	}
	#product08 .product__cateTit::before{
		font-size: 3.5rem;
		line-height: 1.0;
	}

	#product08 .product__cateTit span::before{
		width: 31px;
		height: 40px;
	}
	#product08 .product__cateTit span::after{
		width: 29px;
		height: 40px;
	}
	#bouquet{
		display: block;
	}
	.bouquet__ph{
		width: 80%;
		margin: 0 auto 20px;
	}
	.bouquet__txtArea{
		width: 100%;
	}
}


/*
	メッセージ
-----------------------------------------------------------------------------------------------*/
.message__area{
	margin-bottom: 50px;
	padding: 50px;
	border-radius: 30px;
	background-color: #fcf5d7;
	position: relative;
}
.message__area::before,
.message__area::after{
	content: '';
	position: absolute;
	top: -50px;
	z-index: 1;
}
.message__area::before{
	width: 95px;
	height: 155px;
	background: url("../images/pic_message_chara01.png") center center no-repeat;
	background-size: cover;
	left: 100px;
}
.message__area::after{
	width: 87px;
	height: 156px;
	background: url("../images/pic_message_chara02.png") center center no-repeat;
	background-size: cover;
	right: 100px;
}
.message__txt{
	margin-bottom: 30px;
	font-size: 1.8rem;
	font-weight: var(--medium);
	text-align: center;
}
.message__btnArea{
	margin-bottom: -140px;
}
.message__btn{
	display: inline-block;
	width: 180px;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
}
@media screen and (max-width:812px){
	.message__area{
		margin-top: 20px;
		margin-bottom: 40px;
		padding: 25px 20px;
		border-radius: 20px;
	}
	.message__area::before,
	.message__area::after{
		top: -45px;
	}
	.message__area::before{
		width: 40px;
		height: 65px;
		left: 20px;
	}
	.message__area::after{
		width: 37px;
		height: 65px;
		right: 20px;
	}
	.message__txt{
		margin-bottom: 15px;
		font-size: 1.5rem;
		text-align: left;
	}
	.message__btnArea{
		margin-bottom: -90px;
	}
	.message__btn{
		display: inline-block;
		width: 110px;
		filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	}
}


/*
	事業者の方へ
-----------------------------------------------------------------------------------------------*/
#business{
	text-align: center;
	background: url("../images/bg_cmn.png") center center no-repeat;
	background-size: cover;
}
.business__tit span{
	display: inline-block;
	margin-bottom: 20px;
	padding: 0 5px;
	font-size: 2.6rem;
	font-weight: var(--bold);
	background: linear-gradient(transparent 65%, #faee3c 0%);
}
.business__txt{
	font-size: 1.8rem;
	font-weight: var(--medium);
}
@media screen and (max-width:812px){
	#business .ctsArea{
		padding: 40px 20px 90px;
	}
	.business__tit span{
		margin-bottom: 15px;
		font-size: 2.2rem;
	}
	.business__txt{
		font-size: 1.6rem;
		text-align: left;
	}
}


/*
	pageTop
-----------------------------------------------------------------------------------------------*/
a#pageTop{
	width:70px;
	height:70px;
	margin-bottom: 45px;
	background-color: rgba(38,183,188,.95);
	border-radius: 50%;
	filter: drop-shadow(0 0 10px rgba(0,0,0,.1));
	position: absolute;
	right: 30px;
	z-index: 98;
}
a#pageTop::after{
	content:' ';
	display:block;
	width:12px;
	height:12px;
	border-top: 3px solid var(--wh);
	border-left: 3px solid var(--wh);
	transform:rotate(45deg);
}
@media screen and (max-width:812px){
	a#pageTop{
		width:60px;
		height:60px;
		margin: 0 0 15px 0;
		right: 15px;
	}
	a#pageTop::after{
		width:10px;
		height:10px;
	}
}


/*
	footer
-----------------------------------------------------------------------------------------------*/
#footer{
	padding: 30px;
	font-weight: var(--medium);
	background-color: var(--wh);
	position: relative;
}
.footer__top{
	margin: 0 0 15px;
}
@media screen and (max-width:812px){
	#footer{
		display: block;
		padding: 15px 20px;
		text-align: center;
	}
	.footer__top{
		display: block;
	}
	.footer__btm{
		display: block;
	}
	#footer_copyright{
		margin: 10px 0 0;
	}
}

a.footer__txtLink{
	padding: 0 0 0 20px;
	position: relative;
}
.footer__txtLink::before{
	content: "";
	width: 15px;
	height: 15px;
	border-radius: 50%;
	background: var(--bk);
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
}
.footer__txtLink::after{
	content: "";
	width: 4px;
	height: 4px;
	border-top: 1px solid var(--wh);
	border-right: 1px solid var(--wh);
	position: absolute;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	left: 5px;
}
@media screen and (max-width:812px){
	a.footer__txtLink{
		display: inline-block;
		margin: 10px 0 0;
	}
}

#footer__list li{
	margin: 0 15px 0 0;
	padding: 0 20px 0 0;
	font-size: 1.3rem;
	position: relative;
}
#footer__list li:last-of-type{
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}
#footer__list li::after{
	content:'|';
	position: absolute;
	right: 0;
}
#footer__list li a{
	text-decoration: underline;
}
#footer__list li a:hover{
	opacity: 1.0;
	text-decoration: none;
}
#footer__list li:last-of-type::after{
	content:none;
}
@media screen and (max-width:812px){
	#footer__list{
		-ms-justify-content: center;
		justify-content: center;
		margin: 0 0 -5px;
	}
	#footer__list li{
		margin: 0 15px 5px 0;
	}
	#footer__list li:last-of-type{
		margin: 0 0 5px 0;
	}
}