@charset "utf-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;500;700&family=Marcellus&family=Montserrat:wght@100;300;400;500;600&display=swap');


/*
font-family: 'Noto Sans JP', sans-serif;　ゴシック
font-family: 'Marcellus', serif;　英字
font-family: 'Montserrat', sans-serif;　数字など
*/

body {
    letter-spacing: 0.03em;
	font-family: 'Noto Sans JP', sans-serif;
	color: #751c33;
}

a {
   color: #751c33;
}
.sp {
	display: none;
}

.inner {
	width: 1200px;
	padding: 0 60px;
	margin:auto;
    position: relative;
}
.inner-in {
   width: 1000px;
	margin:auto;
}


/*--------------------------------------------------------

    header style

--------------------------------------------------------*/
#global-header {
	padding-top: 50px;
}
.header-main .inner {
    height: 60px;
}
.utility-nav {
    position: absolute;
    right: 405px;
	top:10px;
}
.utility-nav li {
    display: inline-block;
    font-size: 13px;
    margin-left: 10px;
	vertical-align:middle;
}
.utility-nav li:before {
    content: '|';
    display: inline-block;
	margin-right:10px;
}
.utility-nav li:first-child {
    margin-left: 0;
}
.utility-nav li:first-child:before {
	display:none;
}

.header-search {
    width: 270px;
    height: 30px;
    border: solid 1px;
    border-radius: 3px;
    position: absolute;
    right: 100px;
	top:10px;
}
.header-search--text {
    width: calc(100% - 30px);
    height: 30px;
    background: none;
    text-indent: 10px;
    outline: none;
    border: none;
	float: left;
}
.header-search--btn {
    width: 28px;
    height: 28px;
    cursor: pointer;
    background: url(https://basefile.akamaized.net/6kozzy-base-shop/637dc754d0a7e/search.png) no-repeat center;
	background-size: 19px;
    position: absolute;
    right: 0;
    top: 0;
}

.header-btns {
    position: absolute;
    right: 0;
	top:10px;
}
.header-btns--list {
	font-size: 0;
	display: inline-block;
	vertical-align: middle;
}
.header-btns--list li{
	display: inline-block;
	margin-left: 15px;
	vertical-align: middle;
}

.site-title {
    text-align: center;
    margin: 30px auto 40px;
}

.pc-shipping {
    font-size: 12px;
    font-weight: 500;
    line-height: 1.5;
    padding: 5px 20px 6px;
    border: solid 1px #b6002e;
    border-radius: 5px;
    position: absolute;
    right: 0;
    top: -45px;
    background: #b6002e;
    color: #fff;
}


/*--------------------------------------------------------

    contents style

--------------------------------------------------------*/

.more {
    text-align: center;
    margin-top: 70px;
}
.more a {
    display: inline-block;
    font-size: 16px;
    font-weight: 500;
    color: #b6002e;
    width: 270px;
    padding: 20px 10px;
    text-align: center;
    border: solid 1px #b6002e;
    -webkit-transition: all 0.2s ease-in-out;
    transition: all 0.2s ease-in-out;
}
.more a:hover {
    color: #fff;
    background: #b6002e;
}


/*--------------------------------------------------------

    footer style

--------------------------------------------------------*/
#global-footer {
    padding-top: 100px;
	/*background-color: #fffeee;*/
}
.footer-logo {
    text-align: center;
    margin-bottom: 60px;
}
.footer-guide {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 200px;
    position: relative;
}
.footer-guide--box {
    width: 48%;
}
.footer-guide--box .guide-title {
    font-size: 16px;
	font-weight: 500;
    text-align: center;
    margin-bottom: 30px;
    color: #b6002e;
}
.footer-guide--box .guide-title:after {
    content: '';
    display: block;
    max-width: 80%;
    border-bottom: dotted 2px;
    margin: 15px auto 0;
}
.footer-guide--box .guide-subtitle {
    font-size: 14px;
	font-weight: 500;
}
.footer-guide--box .guide-subtitle:before {
	content: '■';
}
.footer-guide--box .guide-text {
    font-size: 14px;
    line-height: 2;
    margin-bottom: 20px;
}
.footer-guide--box .guide-text a {
	color: #b6002e;
	border-bottom: solid 1px;
}


.footer-sub {
	color: #fff;
    padding: 30px 0;
    text-align: center;
    background: #b6002e;
}
.footer-nav > li {
    font-size: 13px;
    display: inline-block;
    margin-left: 15px;
}
.footer-nav > li:first-child {
    margin-left: 0;
}
.footer-nav > li:not(:first-child):before {
	content: '|';
	margin-right:15px;
}
.footer-nav > li a {
	color: #fff;
}
#copyright {
    font-size: 11px;
	margin-top: 40px;
}

#backtotop {
    color: #b6002e;
    font-size: 14px;
    font-family: 'Marcellus', serif;
    cursor: pointer;
    position: absolute;
    right: 0;
    bottom: -180px;
}
#backtotop i {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin-left: 10px;
    border-top: solid 1px;
    border-right: solid 1px;
    transform: rotate(-45deg);
    vertical-align: -5px;
    position: relative;
    top: 0;
    -webkit-transition: all 0.4s ease-in-out;
    transition: all 0.4s ease-in-out;
}
#backtotop:hover i {
    top: -3px;
}


/* カレンダー用スタイル */
#new-cal-wrap {
	margin-top: 50px;
}
#new-cal-wrap p {
	text-align:center;
	font-size: 13px;
	font-weight: 500;
	margin-top: 50px;
}
#new-cal {
    display: -webkit-flex;
    display: flex;
    flex-wrap: wrap;
	width: 100%;
    justify-content: space-between;
}
.cal-box {
	width: 48%;
	box-sizing:border-box;
}
.cal-table {
	width: 100%;
}
.cal-table th,
.cal-table td {
	width: 14.285%;
	height: 20px;
	text-align: center;
	font-size: 13px;
	font-weight: normal;
}
.cal-table th {
}
/* 見出し(日付)のスタイル */
.cal-title {
    font-size: 18px;
    text-align: center;
    margin-bottom: 10px;
    letter-spacing: 1px;
}

/* 当日のスタイル */
.today {
	text-decoration: underline;
}
.blank {
	/*background: #eee;*/
}

/* 土,日,休日のスタイル */
.sat,
.sun,
.holiday {
	color: #a41c46;
	background: #efefef;
}




/* -----------------------------------

media query

------------------------------------- */

/* 815px 以下 */
@media (max-width: 815px) {

	body {
		min-width: 320px;
		font-size: 13px;
		padding-top: 70px;
	}
	.sp { display: block !important; }
	.pc { display: none !important; }

	.inner {
		width: 100%;
		padding: 0 15px;
	}
	.inner-in {
		width: 100%;
	}

	#global-header {
		background: #fff;
		width: 100%;
		padding-top: 0;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 1000;
	}
	.site-title {
		margin: 10px auto;
		text-align: left;
	}
	.site-title img {
		height: 50px;
		width: auto;
	}
	.sp-btn {
		position: absolute;
		right: 15px;
		top: 10px;
	}
	.sp-btn li {
		display: inline-block;
		margin-left: 15px;
		vertical-align: middle;
	}
	#menu-btn {
		width: 30px;
		height: 10px;
		cursor: pointer;
		position: relative;
	}
	#menu-btn span {
		display:block;
		width: 100%;
		height: 2px;
		background: #b6002e;
		position:absolute;
		left: 0;
	-moz-transform: rotate(0deg);
	-webkit-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
	-moz-transition: all 300ms ease-in-out 0s;
	-webkit-transition: all 300ms ease-in-out 0s;
	-o-transition: all 300ms ease-in-out 0s;
	-ms-transition: all 300ms ease-in-out 0s;
	transition: all 300ms ease-in-out 0s;
	}
	#menu-btn span.t {
		top: 0;
	}
	#menu-btn span.b {
		bottom: 0;
	}
	#menu-btn.active span.t {
		top: 4px;
		-moz-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		-o-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	#menu-btn.active span.m {
		width: 0;
	}
	#menu-btn.active span.b {
		bottom: 4px;
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
	}

	#sp-nav {
		color: #fff;
		width: 100%;
		height: calc(100% - 70px);
		padding-bottom: 50px;
		visibility: hidden;
		opacity: 0;
		background: #fff;
		overflow-y: auto;
		position: fixed;
		top: 70px;
		left: 0;
		-webkit-transition: all 0.5s ease-in-out;
		transition: all 0.5s ease-in-out;
	}
	#sp-nav.active {
		visibility: visible;
		opacity: 1;
		background: #b6002e;
		z-index: 999999999;
	}
	.sp-nav--title {
		font-weight: 500;
		padding-bottom: 10px;
		margin-bottom: 20px;
		border-bottom: solid 1px;
	}
	.sp-nav--title span {
		font-size: 24px;
		font-family: 'Marcellus', serif;
		font-weight: normal;
		margin-right: 15px;
	}
	#sp-nav li a {
		color: #fff;
	}
	.sp-nav--main,
	.sp-nav--sub {
		display: block;
		width: 100%;
	}
	.sp-nav--main {
		margin: 30px 0 50px;
	}
	.sp-nav--main-list {
		display:-webkit-flex;
		display: flex;
		flex-wrap: wrap;
		width: 100%;
		margin-top: -20px;
	}
	.sp-nav--main-list li {
		width: 30%;
		margin: 20px 0 0 5%;
		text-align: center;
	}
	.sp-nav--main-list li:nth-child(3n+1) {
		margin-left: 0;
	}
	.sp-nav--main-list li a {
		display: block;
		font-size: 11px;
	}

	.sp-nav--sub-list li {
		font-size: 15px;
		font-weight: 500;
		border-bottom: dotted 1px;
	}
	.sp-nav--sub-list li a {
		display: block;
		width: 100%;
		padding: 10px;
	}


	.sp-shipping p {
		text-align: center;
		color: #b6002e;
		font-size: 15px;
		font-weight: 600;
		background: #fff;
		border: solid 2px;
		line-height: 1.7;
		padding: 10px 20px;
		margin: 20px auto 50px;
		border-radius: 5px;
	}
	.more a {
		font-size: 13px;
		padding: 15px 10px;
	}

	.footer-guide {
		display: block;
		margin-bottom: 100px;
	}
	.footer-guide--box {
		width: 100%;
		margin: 0 0 50px;
	}

	.footer-sub {
		padding: 15px 0;
	}
	#copyright {
		margin-top: 0;
	}

	#new-cal-wrap p {
		margin-top: 20px;
	}

	#backtotop {
		text-indent: -9999em;
		width: 40px;
		height: 40px;
		visibility: hidden;
		opacity: 0;
		overflow: hidden;
		background: #b6002e;
		border-radius: 100px;
		position: fixed;
		right: 15px;
		bottom: 60px;
		z-index: -1000;
        -webkit-transition: all 0.2s ease-in-out;
        transition: all 0.5s ease-in-out;
	}
	#backtotop.show {
		visibility: visible;
		bottom: 50px;
		z-index: 1000;
		opacity: 1;
	}
	#backtotop i {
		color: #fff;
		display: block;
		width: 14px;
		height: 14px;
		margin: -2px 0 0 -7px;
		vertical-align: 0;
		position: absolute;
		top: 50%;
		left: 50%;
	}
	#backtotop:hover i {
		top: 40%;
	}


}


/* 360px 以下 */
@media (max-width: 360px) {
	
}
