@charset "utf-8";
/* CSS Document */

/*------------------------------------------------------------
	2021/10制作
------------------------------------------------------------*/

/*-----common------*/

div:after{
	content: " ";  
	display: block; 
	visibility: hidden; 
	clear: both; 
	height: 0.1px; 
	font-size: 0.1em; 
	line-height: 0; 
}

body{
	font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	line-height: 1.5em;
	text-align: justify;
	-webkit-text-size-adjust: 100%;/*iphone横画面バグ対応*/
	font-size: 16px;
	color: #333333;
	overflow-x: hidden;
}

.gothic-tx{
	font-family: "ヒラギノ角ゴ Pro W3","メイリオ",Osaka,"ＭＳ Ｐゴシック",sans-serif,Arial,Helvetica,verdana !important;
}

#wrapper{
	margin: 0 auto 2px;
	width: 100%;
	height: auto;
	position: relative;
	height: auto !important;
	height: 100%;
	min-height: 100%;
}

#main{
	width: 100%;
	height: auto;
	margin: 0 auto;
	padding-bottom: 5em;
}

#main .content-box{
	width: 100%;
	height: auto;
	max-width: 1280px;
	margin: 0 auto;
}

#main .content,
#footer .content{
	width: 86.88%;
	height: auto;
	max-width: 1112px;
	position: relative;
	margin: 0 auto;
}

h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
}

header, nav, section, article, hgroup {
    display: block;
}

* {
    margin: 0px;
    padding: 0px;
}

a {
	outline: none;
	font-size: 0;
}

img {
	width: 100%;
	vertical-align:bottom;
	border: 0;
	font-size: 0;/* inline-block隙間対応 */
	-webkit-backface-visibility: hidden;/* chrome画像ボケ防止 */
	image-rendering: -webkit-optimize-contrast;/* chrome画像ボケ防止 */
}

*:focus {/* chrome画像フォーカス時の線を消す */
  outline: none;
}

/* パソコン画像表示 */
.pc { display: inline !important; }
.sp { display: none !important; }

/*-----common------*/

.registerd{
	vertical-align: super;
	font-size: 0.5em;
	margin-right: 0.2em;
}

h2{
	font-size: 2rem;
	margin: 1.2em auto;
	letter-spacing: 0.2em;
}

/*ショップへのリンクボタン*/

.shop-linkbtn ul{
	display:-webkit-box;
  	display:-ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	width: 60%;
	margin: 0 auto;/*各ページcssで調整*/
}

.shop-linkbtn li{
	width: 48%;
	filter: drop-shadow(3px 3px 3px rgba(0,0,0,0.3));
}

.shop-linkbtn li a:hover{
	opacity: 0.8;
}

/*-----header------*/

#header{
	position: relative;
	width: 100%;
	background-color:rgba(255,255,255,0.97);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 999;
}

#header #logo{
	width: 10%;
	max-width: 128px;
	margin: 0.8rem 0 0.7rem 1rem;
}

#header #logo-txt{
	position: absolute;
	top: 1.35rem;
	left: 12.5%;
	font-size: 0.75em;
	line-height: 1.5em;
	font-weight: bold;
}

#header #top-nav{
	width: 40%;
	display: flex;
	position: absolute;
	top: 1.5em;
	right: 8em;
	text-align: right;
}

#header #top-nav a{
	font-size: 0.9em;
	text-decoration: none;
	color: #333333;
}

#header #top-nav a:hover{
	color: #888888;
	border-bottom: 1px solid #888888;
}

#header #top-nav li{
	position: relative;
	width: 25%;
	text-align: center;
}

#header #top-nav li:first-child{
	width: 18%;
}

#header #top-nav li:last-child{
	width: 30%;
}

#header #top-nav li::before{
	content: "";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 1px;
	height: 1.5em;
	border-left: #ccc dotted 4px;
}

.pc .shop_rakuten{
	background: #f9f9f9;
	width: 10.5%;
	max-width: 134.6px;
	text-align: center;
	position: absolute;
	top: 0;
	right: 0;
	height: 5.7vw;
	max-height: 73.9px;
}

.pc .shop_rakuten img{
	width: 62%;
	max-width: 93.55px;
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}

.pc .shop_rakuten a{
    display:block;
    width:100%;
    height:100%;
    text-align:center;
}

.pc .shop_rakuten:hover{
	background: #e6e6e6;
}

/*-----main------*/

/*-----footer------*/

#footer{
	background: #f2f2f2;
	width: 100%;
	padding: 1em 0 0;
}

#footer-logo{
	width: 17%;
	margin-top: 2.5em;
}

#footer-logo .txt{
	font-weight: bold;
	margin-left: 3em;
	line-height: 1.5em;
}

#footer-nav{
	display: flex;
	color: black;
	margin-left: 25%;
	margin-top: -7em;
	font-size: 0.92em;
}

#footer-nav a{
	font-size: 0.92em;
	line-height: 2.4em;
	text-decoration: none;
	color: black;
}

#footer-nav a:hover{
	border-bottom: 1px solid black;
}

#footer-nav ul{
	width: 15em;
}

#footer-nav ul ul{
	padding-left: 1.4em;
}

#footer-box-shop{
	font-size: 0.85em;
	line-height: 1.8em;
	white-space: nowrap;
}

#footer-box-shop h2{
	font-size: 1.2em;
	margin-top: 0;
	margin-bottom: 0.8em;
	letter-spacing: -0.01em;
}

#footer-box-shop a{
	line-height: 1em;
}

#footer-box-shop .privacy{
	font-size: 0.85em;
	line-height: 1.7em;
}

#footer-box-shop .privacy h3{
	margin-top: 1em;
	margin-bottom: 0.3em;
	font-size: 1.1em;
}

#footer .copyright{
	text-align: center;
	color: white;
	font-size: 0.75em;
	margin-top: 4em;
	height: 4em;
	background: #878787;
	padding-top: 2em;
}

#footer .sns-icon{
	position: absolute;
	width: 10%;
	right: 1em;
	bottom: 0.9em;
}

#footer .sns-icon ul{
	display: flex;
}

#footer .sns-icon li{
	width: 85%;
	margin-right: 0.7em;
}

#footer .sns-icon li:nth-child(2){
	width: 130%;
	margin-right: 0;
	margin-top: -0.2em;
}

/*-----goto_top btn------*/

#topBtn {
    position: fixed;
    bottom: 30px;
	right: 30px;
	z-index: 99;
}

#topBtn{
    width: 6%;
    height: auto;
	max-width: 100px;
}

#topBtn:hover{
	opacity: 0.8;
}