@charset "UTF-8";

/*
Theme Name: satanokiritanpo
Description: 代々手づくり 秋田県・佐田商店のきりたんぽ
Version: 1.0
*/

/* General Settings
------------------------------------------ */
* {
	box-sizing: border-box;
}

html {
	font-size: 62.5%;
}
body {
	position: relative;
	color: #2c2c2c;
	background: #FFF;
	font-size: 18px;
	font-size: 1.8rem;
	line-height: 2.0;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	margin: 0;
	padding: 0;
}
h2,h3,h4,h5,h6 {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	line-height: 1.8;
	margin: 0 0 1em;
}
img {
	display: block;
	max-width: 100%;
	height: auto;
	pointer-events: none;
	-webkit-touch-callout:none;
	-webkit-user-select:none;
	-moz-touch-callout:none;
	-moz-user-select:none;
	user-select:none;
}
ul, ol {
	margin: 0;
	padding: 0;
}
ul li, ol li {
	list-style-type: none;
}

dl, dt, dd, figure {
	margin: 0;
	padding: 0;
}
p {
	word-wrap:break-word;
}

a {
	text-decoration: underline;
}
a:hover {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
	opacity: .8;
}
.btn {
	width: 300px;
	/*margin: 60px auto 0;*/
	margin: 50px auto 0;
}
.btn a {
	position: relative;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;	
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 70px;
	border: 2px solid #bd6600;
	color: #bd6600;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	text-decoration: none;	
}
.btn a::after {
	content: "";
	position: absolute;
	right: 10px;
	top: calc( ( 100% - 4px ) / 2 );
	width: 100%;
	height: 4px;
    background: url(img/arrow01.png) no-repeat right top;
}
/*@media all and (-ms-high-contrast:none) {
	.top-content04 dt p {
		letter-spacing: normal;
	}
}*/
.btn a::before {
	content: "";
	position: absolute;
	right: -8px;
	bottom: -8px;
	display: block;
	width: 100%;
	height: 100%;
	border-right: 1px solid #bd6600;
	border-bottom: 1px solid #bd6600;
	z-index: -1;
}
.btn a:hover {
	background: #bd6600;
	color: #FFF;
}
.btn a:hover::after {
    background: url(img/arrow01-w.png) no-repeat right top;
}
.pc-mode {
	display: block;
}
.sp-mode {
	display: none;
}
.aligncenter {
    display: block;
    margin: 0 auto;
}
.alignright { float: right; }
.alignleft { float: left; }

/*------------------------------------------
 header
--------------------------------------------*/
header {
	position: relative;
	width: 100%;
	height: 144px;
	padding: 25px 5% 0 0;
	font-family: 'Noto Sans JP', sans-serif;
}
header.fixed {
    position: fixed;
    left: 0;
    top: 0;
    height: 100px;
    padding-top: 10px;
    background: #FFF;
    z-index: 99;
}
header .left-blk {
	position: absolute;
	left: 25px;
	top: 25px;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;	
	max-width: 540px;
	width: 28.125%;
	z-index: 98;
}
header.fixed .left-blk {
    top: 5px;
}
header .logo {
	max-width: 151px;
	width: 28%;
}
header.fixed .logo {
    max-width: 90px;
}
header h1 {
	font-size: 1.4rem;
	font-weight: 400;
	margin: 0 0 0 1em;
	color: #3E214C;
}
header .right-blk {
	position: absolute;
	right: 5%;
	top: 25px;
	width: auto;
}
header.fixed .right-blk {
    top: 10px;  
}
header .hnav {
	margin-bottom: 30px;
}
header.fixed .hnav {
	margin-bottom: 20px;
}
header .hnav ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	font-size: 2.0rem;
	font-weight: 500;
	line-height: 1.1;
}
header .hnav ul li {
	margin-right: 2em;
}
header .hnav ul li:last-child {
	margin-right: 0;
}
header .hnav a {
	position: relative;
	display: inline-block;
	text-decoration: none;
	color: #3E214C;
}
header .hnav a::after {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 0;
  	width: 100%;
	height: 2px;
	background: #bd6600;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .3s;
}
header .hnav a:hover::after {
	transform: scale(1, 1);
}
header .hnav .products {
    display: none;
}
header .hnav .phone {
	font-size: 2.4rem;
	line-height: 1;
}
header .hnav .phone::before {
	content: '\f879';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #bd6600;
	display: inline-block;
	margin-right: .2em;
}
header .hnav .sp-phone a {
	color: #bd6600;
}
header .hnav .shop::before {
	content: '\f3c5';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	color: #b1050a;
	display: inline-block;
	margin-right: .2em;	
}
header .gnav {
	position: relative;
	font-weight: 400;
	font-size: 1.8rem;
	z-index: 99;
}
header .gnav ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
header .gnav ul li {
	margin-right: 2em;
}
header .gnav ul li:last-child {
	margin-right: 0;
}
header .gnav a {
	position: relative;
	display: inline-block;
	color: #3E214C;
	text-decoration: none;
	line-height: 1.3;
}
header .gnav a::after {
	content: '';
	position: absolute;
	bottom: -4px;
	left: 0;
  	width: 100%;
	height: 2px;
	background: #bd6600;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .3s;
}
header .gnav a:hover::after {
	transform: scale(1, 1);
}

/*------------------------------------------
 aside
--------------------------------------------*/
aside {
	position: absolute;
	right: 0;
	top: 0;
	max-width: 80px;
}
.drawer-hamburger {
	position: fixed;
	top: 40px;
	width: 40px;
	padding: 0;
	z-index: 101;
}
.drawer--right .drawer-hamburger {
	right: 15px;
}
.drawer--right.drawer-open .drawer-hamburger {
	right: 15px;
}
.drawer-hamburger-title {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.2rem;
	text-align: center;
	margin-top: 15px;
}
.drawer-toggle .drawer-hamburger-title,
.drawer-toggle .drawer-hamburger-icon,
.drawer-toggle .drawer-hamburger-icon:after,
.drawer-toggle .drawer-hamburger-icon:before {
	transition: all .3s;
}
.drawer-open .drawer-toggle .drawer-hamburger-title {
	display: none;
}
.drawer-hamburger-icon {
	margin-bottom: 15px;
}
.drawer-hamburger-icon:after {
	top: 12px;
}
.drawer-nav {
	width: 100%;
	z-index: 100;
}
.drawer--right .drawer-nav {
	right: -100%;
}
.drawer-nav .inner {
	max-width: 920px;
	width: 50%;
	margin: 0 auto;
	padding: 80px 0;
}
.drawer-nav .site-name {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 3.0rem;
	border-bottom: 2px solid #bd6600;
	margin-bottom: 1em;
}
.drawer-menu-item {
	font-size: 1.8rem;
	padding: 0;
}
.drawer-menu li {
	position: relative;
	padding: .75rem 0 .75rem 1em;
}
.drawer-menu li::before {
	content: "\f105";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	position: absolute;
	left: 0;
	top: 1.2rem;
	font-size: 1.4rem;
	display: inline-block;
	color: #bd6600;
	/*margin-right: 0.5em;*/
}
.drawer-menu2 {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	border-top: 1px solid #CCC;
	margin-top: 30px;
	padding-top: 30px;
}
.drawer-menu2 li {
	margin-right: 1em;
}
.drawer-menu2 li:last-child {
	margin-right: 0;
}
.drawer-menu2 .drawer-menu-item {
	font-size: 1.4rem;
}
/*drawer スクロール対応*/
.drawer--top.drawer-open .drawer-nav {
	top: 0;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
.drawer--right.drawer-open .drawer-nav,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
	right: 0;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
}
aside .side-nav {
	position: fixed;
	top: calc( (100vh - 210px) / 2 );
	right: 0;
	z-index: 99;
}
aside .side-nav li {
	width: 70px;
	height: 70px;
	line-height: 1.3;
}
aside .side-nav li a {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-direction: column;
	flex-direction: column;
	width: 100%;
	height: 100%;
	background: #81a422;
	color: #FFF;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.2rem;
	text-align: center;
	text-decoration: none;
}
aside .side-nav li:first-child a {
	background: #bd6600;
}
aside .side-nav li:last-child a {
	background: #fd7400;
}
aside .side-nav li a i {
	font-size: 2.4rem;
}

/*------------------------------------------
 #mv
--------------------------------------------*/
#mv {
	position: relative;
	/*margin-bottom: 100px;*/
	margin-bottom: 80px;
}
#mv .slider {
	max-width: 1720px;
	width: 90%;
	margin: 0 auto;
}
#mv .slider li {
	position: relative;
}
#mv .slider li .banner-right {
	position: absolute;
	right: 30px;
	top: 30px;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	width: calc(100% - 60px);
}
#mv .slider li .banner-right li {
	margin-left: 0.2em;
}
#mv .slider li .banner-right li:last-child {
	margin-left: 0;
}
#mv .slider li .banner-left {
	position: absolute;
	left: 30px;
	bottom: 30px;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	width: calc(100% - 60px);
}
#mv .slider li .banner-left li {
	margin-right: 0.2em;
}
#mv .slider li .banner-left li:last-child {
	margin-right: 0;
}
#mv .slider li .catch {
	position: absolute;
	left: 6.5%;
	top: 35%;
	line-height: 1.2;
}
#mv .slider li .catch span {
	display: inline-block;
	font-family: 'Noto Serif JP', serif;
	font-weight: 700;
	margin-bottom: .5em;
}
#mv .slider li .catch .red {
	font-size: 5.0rem;
	background: rgba(193,25,32,0.8);
	color: #FFF;
}
#mv .slider li .catch .white {
	font-size: 8.0rem;
	background: rgba(255,255,255,0.7);
}
.news-blk {
	/*position: absolute;
	left: 0;
	right: 0;
	bottom: 70px;*/
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;	
	/*max-width: 884px;*/
	max-width: 1200px;
	width: 90%;
	/*margin: 0 auto 180px;*/
	margin: 0 auto 20px;
	line-height: 1.4;	
}
.news-blk.important { border: 1px solid #bd6600; }
.news-blk.send { border: 1px solid #138b84; }
/*.news-blk.mb {
    margin-bottom: 100px;
}*/
.news-blk h2 {
	max-width: 170px;
	width: 100%;
	color: #FFF;
	font-size: 1.6rem;
	line-height: 1.6;
	margin: 0;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;	
	-ms-flex-align: center;
	align-items: center;
	text-align: center;
}
.news-blk.important h2 { background: #bd6600; }
.news-blk.send h2 { background: #138b84; }
.news-blk .news-list {
	/*max-width: 800px;*/
	width: 100%;
	/*background: #FFF;*/
	padding: 1.2em 1em;
}
.news-blk .news-list li {
    position: relative;
    padding-left: 1.3em;
    margin-bottom: .5em;
}
.news-blk .news-list li:last-child {
    margin-bottom: 0;
}
.news-blk .news-list li::before {
    content: '\f105';
    font-family: 'Font Awesome 5 Free';
	font-weight: 900;
    position: absolute;
    left: 0;
}
.news-blk.important .news-list li::before {
    color: #a40000;
}
.news-blk.send .news-list li::before {
    color: #138b84;
}
.news-blk .news-list a {
	position: relative;
	display: inline-block;
	color: #bd6600;
	/*text-decoration: none;*/
}
.news-blk.important .news-list a {
	color: #bd6600;
}
.news-blk.send .news-list a {
	color: #138b84;
}
/*.news-blk .news-list a::after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0px;
	display: block;
	width: 100%;
	height: 1px;
	background: #bd6600;
	transition: all 0.3s;
	opacity: 1;
}
.news-blk.important .news-list a::after {
    background: #bd6600;
}
.news-blk.send .news-list a::after {
    background: #138b84;
}
.news-blk .news-list a:hover::after {
	opacity: 0;
}*/
#mv .scroll {
    position: absolute;
    left: -50px;
    bottom: 100px;
    width: 206px;
    transform: rotate(90deg);
    border-bottom: 1px solid #bd6600;
    line-height: 1.2;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.6rem;
	color: #666;
}
#mv .scroll::after {
	content: "";
	position: absolute;
	right: 0;
	bottom: -2px;
	width: 4px;
	height: 4px;
	background: #bd6600;
}
#mv .scroll span {
	cursor: pointer;
	-webkit-animation: blinking 2.5s infinite;
	animation: blinking 2.5s infinite;
	z-index: 3;
}
@keyframes blinking {
	0% {
		opacity: 1;
	}
	50% {
		opacity: 0;
	}
	100% {
		opacity: 1;
  	}
}

/*------------------------------------------
 top
--------------------------------------------*/
.banner-blk {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	max-width: 1200px;
	width: 100%;
	margin: 20px auto 0;
}
.banner-blk a {
	display: inline-block;
	width: auto;
}
.top-content01 {
	position: relative;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;	
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	/*margin-bottom: 150px;*/
	margin-top: 80px;
	margin-bottom: 100px;
}
.top-content01::before {
	content: "";
	position: absolute;
	left: 4%;
	top: -40px;
	z-index: -1;
    background-image: url(img/bg-akita2.png);
    background-position: left top;
    background-repeat: no-repeat;
    background-size: 45%;
    display: block;
    width: 50%;
    height: 120%;
}
.top-content01 .txt-blk {
	max-width: 640px;
	width: 100%;
	margin-right: 3.333%;
}
.top-content01 figure {
	width: 50%;
}
.top-content01 h2 {
	font-size: 3.6rem;
}
.top-content01 h2::before {
	content: '';
	display: inline-block;
	margin-right: .2em;
	width: 1.2em;
	height: 1.2em;
	background: url(img/nabe.png) no-repeat left bottom;
	background-size: contain;
}
.top-content01 p {
	padding-left: 6.25%;
}
.top-content02 {
	position: relative;
	/*margin: 0 0 285px;*/
	margin: 0 0 225px;
}
.top-content02::before {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -135px;
	max-width: 1920px;
	width: 100%;
	height: 100%;
	margin: 0 auto;
	background: url(img/bg-ashiato.png) no-repeat center bottom;
}
.top-content02 .txt-blk {
	position: absolute;
	left: 0;
	right: 0;
	bottom: -135px;
	max-width: 1000px;
	width: 100%;
	margin: 0 auto;
	background: #FFF;
	padding: 1.8em 2.8em;
	box-shadow: 1px 2px 2px rgba(0,0,0,0.2);
}
.top-content02 figure {
	max-width: 1400px;
	width: 100%;
	margin: 0 auto;
}
.top-content03 {
	position: relative;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	-ms-flex-align: end;
	align-items: flex-end;
	width: 100%;
	/*margin-bottom: 150px;*/
	margin-bottom: 100px;
}
.top-content03::before {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	z-index: -1;
    background-image: url(img/bg-rice2.png);
    background-position: right top;
    background-repeat: no-repeat;
    background-size: 50%;
    display: block;
    width: 50%;
    height: 120%;
}
.top-content03 .txt-blk {
	max-width: 640px;
	width: 100%;
	margin-left: 3.333%;
}
.top-content03 figure {
	width: 50%;
}

.top-content04 {
	position: relative;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	max-width: 1720px;
	width: 90%;
	/*margin: 0 auto 150px;*/
	margin: 0 auto 100px;
}
.top-content04 dl {
	max-width: 800px;
	width: 48%;
}
.top-content04 dl:last-of-type {
	margin-top: 100px;
}
.top-content04 dt {
	position: relative;
	margin-bottom: 2em;
}
.top-content04 dl dt::before {
	content: "";
	position: absolute;
	right: 6%;
	top: 100px;
	width: 100%;
	height: 100%;
	background: #f9efef;
	z-index: -1;
}
.top-content04 dl:last-of-type dt::before {
	left: 6%;
}
.top-content04 dt p {
	position: absolute;
	right: calc( 50% - 1em );
	top: 0;
	margin: auto 0;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	height: 100%;
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	writing-mode: vertical-lr;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 2.4rem;
	line-height: 1;
	-webkit-font-feature-settings: 'pkna';
	font-feature-settings: 'pkna';
	letter-spacing: -0.4em;
}
/*Edge*/
_:-ms-lang(x)::backdrop, .top-content04 dt p {
	letter-spacing: normal;
}
/*IE11*/
_:-ms-lang(x)::-ms-backdrop, .top-content04 dt p {
	letter-spacing: normal;
}
/*FireFox*/
@-moz-document url-prefix() {
	.top-content04 dt p {
		letter-spacing: .15em;
	}
	/*.top-content04 dt p span {
		letter-spacing: .2em;
	}*/
}
.top-content04 dt span {
	display: inline-block;
	background: rgba(255,255,255,0.5);
	border: 1px solid #3E214C;
	padding: 0.5em;
}
.top-content04 .btn {
	margin: 30px auto 0;
}
.top-content04 .btn a {
	color: #3E214C;
	border: 2px solid #3E214C;
	font-weight: 400;
}
.top-content04 .btn a::after {
    background: url(img/arrow02.png) no-repeat right top;
}
.top-content04 .btn a::before {
	border-right: 1px solid #3E214C;
	border-bottom: 1px solid #3E214C;
}
.top-content04 .btn a:hover {
	background: #3E214C;
	color: #FFF;
}
.top-content04 .btn a:hover::after {
    background: url(img/arrow01-w.png) no-repeat right top;
}
.top-news {
	width: 100%;
	background: url(img/bg-news.jpg) no-repeat center top;
	/*padding: 100px 0;*/
	padding: 80px 0;
}
.top-news .inner {
	position: relative;
	max-width: 1340px;
	width: 100%;
	margin: 0 auto;
	background: rgba(255,255,255,0.85);
	padding: 50px 3.6%;
}
.top-news h2 {
	font-size: 3.6rem;
	line-height: 1;
	margin: 0 0 50px;
	padding-left: 0.2em;
}
.top-news h2::before {
	content: "";
	position: absolute;
	left: 0;
	top: calc( 50px + 0.5em );
	width: 4.1%;
	height: 1px;
	background: #bd6600;
}
.top-news h2 span {
	font-size: 1.6rem;
	color: #666;
	margin-left: 1em;
}
.top-news .tab-list {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
    flex-wrap: wrap;
	width: 100%;
	/*margin: 0 0 55px;*/
	margin: 0 0 45px;
}
.top-news .tab-list li {
	display: block;
	width: 15%;
	margin: 0 1.6% 10px 0;
	padding: 1em 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
}
.top-news .tab-list li:last-child {
	margin-right: 0;
}
.tab-list .all,
.tab-content .all {
	background: #3E214C;
	border: 1px solid #3E214C;
	color: #FFF;
}
.tab-list .all:hover {
	background: #FFF;
	color: #3E214C;
}
.tab-list .all.is-active {
	background: #FFF;
	color: #3E214C;
}
.tab-list .news,
.tab-content .news,
.cat .news {
	background: #81a422;
	border: 1px solid #81a422;
	color: #FFF;
}
.tab-list .news:hover {
	background: #FFF;
	color: #81a422;
}
.tab-list .news.is-active {
	background: #FFF;
	color: #81a422;
}
.tab-list .media,
.tab-content .media,
.cat .media {
	background: #fd7400;
	border: 1px solid #fd7400;
	color: #FFF;
}
.tab-list .media:hover {
	background: #FFF;
	border: 1px solid #fd7400;
	color: #fd7400;
}
.tab-list .media.is-active {
	background: #FFF;
	color: #fd7400;
}
.tab-list .important,
.tab-content .important,
.cat .important {
	background: #bd6600;
	border: 1px solid #bd6600;
	color: #FFF;
}
.tab-list .important:hover {
	background: #FFF;
	border: 1px solid #bd6600;
	color: #bd6600;
}
.tab-list .important.is-active {
	background: #FFF;
	color: #bd6600;
}
.tab-list .send,
.tab-content .send,
.cat .send {
	background: #138b84;
	border: 1px solid #138b84;
	color: #FFF;
}
.tab-list .send:hover {
	background: #FFF;
	border: 1px solid #138b84;
	color: #138b84;
}
.tab-list .send.is-active {
	background: #FFF;
	color: #138b84;
}

.top-news .tab-content ul li {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;	
	padding: 25px 1.5em;
	border-bottom: 1px solid #d4d4d4;
	font-size: 1.6rem;
}
.top-news .tab-blk {
	display: none;
}
.top-news .tab-blk.current {
	display: block;
}
.top-news time {
	min-width: 70px;
	width: 9.1%;
}
.top-news .tab-content ul li span {
	width: 120px;
	height: 24px;
	color: #FFF;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1;
	padding-top: .5em;
}
.top-news .tab-content ul li a {
	position: relative;
	display: inline-block;
	max-width: 882px;
	width: 73.5%;
	color: #242424;
	text-decoration: none;
}
.top-news .tab-content ul li a:hover {
	color: #a40000;
}
.top-news .btn {
	margin: 30px auto 8px;
}
.top-news .btn a {
	color: #3E214C;
	border: 2px solid #3E214C;
	font-weight: 400;
}
.top-news .btn a::after {
    background: url(img/arrow02.png) no-repeat right top;
}
.top-news .btn a::before {
	border-right: 1px solid #3E214C;
	border-bottom: 1px solid #3E214C;
	z-index: 0;
}
.top-news .btn a:hover {
	background: #3E214C;
	color: #FFF;
}
.top-news .btn a:hover::after {
    background: url(img/arrow01-w.png) no-repeat right top;
}
.tab-list {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	margin-bottom: 7.4vh;
}
.tab-blk {
    display: none;
}
.tab-blk.current {
    display: block;
}

/*------------------------------------------
 footer
--------------------------------------------*/

footer {
	position: relative;
	width: 100%;
	padding: 50px 0 30px;
	background: #330000;
	color: #FFF;
	text-align: center;
}
footer .logo-white {
	max-width: 90px;
	width: 100%;
	margin: 0 auto 30px;
}
footer .shop-info {
	width: 100%;
}
footer .sns-link {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	/*margin-bottom: 70px;*/
	margin-bottom: 50px;
}
footer .sns-link li {
	margin-right: 1em;
	font-size: 2.4rem;
}
footer .sns-link li:last-child {
	margin-right: 0;
}
footer .sns-link a {
	color: #FFF;
	text-decoration: none;
}
footer .sns-link a:hover {
	color: #bd6600;
}
footer .calender {
	/*max-width: 1000px;*/
    max-width: 480px;
	width: 100%;
	/*margin: 0 auto 80px;*/
	margin: 0 auto 60px;
}
footer .calender .xo-event-calendar table.xo-month .month-event-space {
	height: 1em;
}
footer .calender .xo-event-calendar table.xo-month > caption {
	background-color: #FFF;
}
footer .fnav1 ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	max-width: 1000px;
	width: 100%;
	/*margin: 0 auto 60px;*/
	margin: 0 auto 50px;
}
footer .fnav1 ul li {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-direction: column;
	flex-direction: column;
	max-width: 300px;
	width: 100%;
	height: 80px;
	background: #FFF;
	text-align: center;
	color: #330000;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 2.0rem;
}
footer .fnav1 .comment {
	font-size: 1.4rem;
	display: block;
}
footer .fnav1 .call {
	font-size: 2.6rem;
	line-height: 1;
}
footer .fnav1 .call::before {
	content: '\f879';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	display: inline-block;
	margin-right: .2em;
}
footer .fnav1 a {
	color: #330000;
	text-decoration: none;
}
footer .fnav1 a:hover {
	color: #bd6600;
}
footer .fnav1 .mail a::before {
	content: "\f0e0";
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	display: inline-block;
	margin-right: .2em;
}
footer .fnav2 {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
	border-top: 1px solid #FFF;
	/*padding: 50px 0 90px;*/
	padding: 40px 0 70px;
	font-size: 1.6rem;
}
footer .fnav2 .security {
    width: 115px;
    color: #FFF;;
}
footer .fnav2 .security img {
    margin: 0;
}

footer .fnav2 .security a {
    display: block;
    text-align: center;
    color: #FFF;
    font-size: 1.4rem;
    line-height: 1.2;
}
footer .fnav2 ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
   	flex-wrap: wrap;
    width: calc( 100% - 115px - 5% );
}
footer .fnav2 ul li::after {
	content: "｜";
	display: inline-block;
	margin: 0 .75em;
}
footer .fnav2 ul li:last-child::after {
	display: none;
}
footer .fnav2 a {
	position: relative;
	display: inline-block;
	color: #FFF;
	text-decoration: none;
}
footer .fnav2 a::after {
	content: '';
	position: absolute;
	bottom: -2px;
	left: 0;
  	width: 100%;
	height: 1px;
	background: #FFF;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .3s;
}
footer .fnav2 a:hover::after {
	transform: scale(1, 1);
}
.copy {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.2rem;
	text-align: center;
	margin: 0;
}
.fixed-menu {
	position: absolute;
	left: 0;
	top: -40px;
	right: 0;
	margin: 0 auto;	
	width: 80px;
	height: 80px;
	border-radius: 50%;
	background: #330000;
}
.page-top {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	padding-top: 0.5em;
}

/*------------------------------------------
 page-title
--------------------------------------------*/
#page-title {
	position: relative;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
	max-width: 1720px;
	width: 90%;
	max-height: 360px;
	/*margin: 0 auto 120px;*/
	margin: 0 auto 5px;
	background: url(img/bg-pagetitle.jpg) no-repeat left top;
}
#page-title.no-image {
	display: block;
}
#page-title .title {
	width: 36.6%;
	margin-left: 3.4%;
	color: #FFF;
}
#page-title.no-image .title {
	position: absolute;
	left: 0;
	top: calc( ( 100% - 4.4rem * 1.1 ) / 2 );
	width: 95%;
}
#page-title .title h2 {
	font-size: 4.4rem;
	line-height: 1.1;
	margin: 0;
}
#page-title .title-img {
	position: relative;
	width: 60%;
}
#page-title .title-img .banners {
	position: absolute;
	right: 10px;
	bottom: 10px;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
#page-title .title-img .banners li {
	margin-left: 5px;
}
#page-title .title-img .banners li:last-child {
	margin-left: 0;
}
/*.breadcrumbs {
	position: absolute;
	left: 3.4%;
	bottom: .7em;
	font-size: 1.4rem;
	color: #FFF;
}*/
.breadcrumbs {
	max-width: 1720px;
	width: 90%;
	font-size: 1.4rem;
	/*margin: 0 auto 120px;*/
	margin: 0 auto 80px;
}
.breadcrumbs ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
   	flex-wrap: wrap;
}
.breadcrumbs ul li {
	margin-right: 0.5em;
}
.breadcrumbs ul li::after {
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-left: 0.5em;
}
.breadcrumbs ul li:last-child::after {
	display: none;
}
.breadcrumbs a {
	color: #bd6600;
	text-decoration: underline;
}

/*------------------------------------------
 content
--------------------------------------------*/
.category-list {
	max-width: 1400px;
	width: 100%;
	/*margin: 0 auto 120px;*/
	margin: 0 auto 80px;
}
.category-list h3 {
	font-size: 4.4rem;
	text-align: center;
	/*margin: 0 0 80px;*/
	margin: 0 0 60px;
}
.category-list .bnrs {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
    flex-wrap: wrap;
    margin-top: 30px;
}
.category-list .bnrs.upper {
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;    
}
.category-list .bnrs li {
    width: 24%;
    margin: 0 1.333% 10px 0;
}
.category-list .bnrs li:nth-child(4n) {
    margin-right: 0;
}
.category-list .products-list {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
   	flex-wrap: wrap;
}
.category-list .products-list dl {
	max-width: 426px;
	width: 30.4%;
	/*margin: 80px 4.4% 0 0;*/
	margin: 60px 4.4% 0 0;
}
.category-list .products-list dl:nth-last-of-type(3n) {
	margin-right: 0;
}
.category-list .products-list dl .img-blk,
.relation-contents .relation-list dl .img-blk{
	position: relative;
	width: 100%;
	background: url(img/bg-products-photo.jpg) no-repeat left top;
	margin-bottom: 0;
}
.flg-new {
	position: absolute;
	left: 10px;
	top: 10px;
	display: inline-block;
	background: #fdc400;
	color: #FFF;
	padding: .2em;
	line-height: 18px;
	margin: 0;
}
.category-list .products-list .right-upper,
.relation-contents .relation-list .right-upper {
	position: absolute;
	right: 0;
	bottom: 0;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 2.0rem;
	color: #b1050a;
	width: 90px;
	height: 90px;
	border-radius: 50%;
	margin: 0;
	border: 2px solid #bd6600;
}
.category-list .products-list dl dt,
.relation-contents .relation-list a dl dt {
	font-weight: 700;
	font-size: 2.0rem;
	padding: 20px 0 0;
	margin: 0;
}
.category-list .products-list dl dt {
	text-align: center;
}
.category-list .products-list dl dt.option {
	border-top: 1px solid #d4d4d4;
	margin-top: 20px;
}
.category-list .products-list dl dt.option span {
	display: block;
	font-size: 1.6rem;
	line-height: 1.8;
}
.category-list .products-list dl dt.option .cart_1 a {
	display: block;
	width: 300px;
	margin: 20px auto 0;
}
.category-list .products-list dl dt .price,
.relation-contents .relation-list a dl dt .price {
	margin: 0;
	font-size: 1.4rem;
	color: #bd6600;
}
.category-list .products-list dl dt .price span {
	font-size: 2.0rem;
}
.category-list .products-list dl dt .kosu,
.category-list .products-list dl dt select {
	font-size: 1.6rem;
	font-weight: 400;
	text-align: center;
}
.category-list .products-list dl .comment {
	font-size: 1.4rem;
}
.category-list .products-list dl .comment p {
	margin-bottom: 0;
}
.category-list .products-list dl dt .cart {
	margin-top: 30px;
}
.category-list .products-list dl .btn {
	font-size: 1.6rem;
	margin-top: 10px;
}
.category-list .products-list dl .btn a {
	height: 60px;
}
.category-list .other-detail {
    margin: 60px 0 0;
    background: #f9efef;
    padding: 50px 4.2% 60px;
}

.other-contents {
	max-width: 1400px;
	width: 100%;
	/*margin: 0 auto 160px;*/
	margin: 0 auto 120px;
}
.other-contents ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
   	flex-wrap: wrap;
}
.other-contents ul li {
	max-width: 426px;
	/*width: 30.4%;*/
	width: 24%;
	margin: 0 1.3% 0 0;
}
.other-contents ul li:nth-child(4n) {
	margin-right: 0;
}
.other-contents ul li a {
	position: relative;
	display: block;
}
.other-contents ul li a p {
	position: absolute;
	left: 0;
	top: 0;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	height: 100%;
	margin: 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	/*font-size: 2.4rem;*/
	font-size: 2.0rem;
	z-index: 1;
}
.other-contents ul li a span {
	color: #FFF;
	border: 2px solid #FFF;
	padding: 0 .7em;
}
.other-contents ul li a:hover span {
	color: #bd6600;
	border: 2px solid #bd6600;
	transition: all .3s;
}

.contents-wrap {
	/*margin-bottom: 80px;*/
	margin-bottom: 60px;
}
#konyu .contents-wrap {
	font-size: 1.6rem;
}
#konyu .contents-wrap:nth-of-type(even) {
	background: rgba(177,5,10,0.05);
	/*padding: 80px 0;*/
	padding: 40px 0 60px;
}
.contents-wrap .inner {
	max-width: 1400px;
	width: 100%;
	margin: 0 auto;
}
.contents-wrap h3,
.category-list .other-detail h3 {
	font-size: 3.6rem;
	border-bottom: 2px solid #bd6600;
	/*margin-bottom: 60px;*/
	margin-bottom: 50px;
}
#konyu.contents-wrap h3,
.category-list .other-detail h3 {
	margin-bottom: 1em;
}
.contents-wrap h4,
.category-list .other-detail h4 {
	position: relative;
	font-size: 2.4rem;
	padding-left: 30px;
	margin: 1em 0;
}
.contents-wrap h4:first-of-type {
	margin-top: 0;
}
#hajimete .contents-wrap h4 {
	margin: 1.5em 0;
}
#hajimete .contents-wrap h4:first-of-type {
	margin-top: 0;
}
#hajimete #flow .contents-wrap h4 {
	margin: 0 0 1.5em;
}
.contents-wrap h4::before,
.category-list .other-detail h4::before {
	content: "";
	position: absolute;
	left: 0;
	/*left: -30px;*/
	top: calc( ( 1em * 1.8 - 2px ) / 2 );
	display: block;
	width: 20px;
	height: 2px;
	background: #bd6600; 
}
.contents-wrap .order-blk h4::before {
	display: none;
}
.contents-wrap h5,
.category-list .other-detail h5 {
	font-size: 2.0rem;
	line-height: 1.2;
	border-left: 4px solid #bd6600;
	padding-left: 0.5em;
	margin: 1.5em 0;
}
.contents-wrap a,
.category-list .other-detail a {
	color: #036eb8;
}
.contents-wrap a:hover,
.category-list .other-detail a:hover {
	color: #bd6600;
}
.contents-wrap .btn a,
.category-list .other-detail .btn a {
	color: #bd6600;
}
.contents-wrap .btn a:hover,
.category-list .other-detail .btn a:hover {
	color: #FFF;
}
.contents-wrap table,
.category-list .other-detail table {
	width: 100%;
	border-collapse: collapse;
	border-spacing: 0;
	border-top: 1px solid #d4d4d4;
}
.contents-wrap th, 
.contents-wrap td,
.category-list .other-detail th,
.category-list .other-detail td {
	padding: 1em;
	text-align: left;
	border-bottom: 1px solid #d4d4d4;
}
.contents-wrap ul,
.category-list .other-detail ul {
	margin-bottom: 1em;
}
.contents-wrap ul li,
.category-list .other-detail ul li {
	position: relative;
	padding-left: 1em;
}
.contents-wrap ul li::before,
.category-list .other-detail ul li::before {
	content: "";
	position: absolute;
	left: 0;
	top: calc( ( 1em * 1.8 - 8px ) / 2 );
	display: block;
	width: 8px;
	height: 8px;
	background: #3E214C;
	border-radius: 50%;
}
.contents-wrap ul.step-list {
	width: 80%;
	margin: 0 auto 60px;
}
.contents-wrap ul.step-list li {
	padding-left: 0;
}
.contents-wrap ul.step-list li::before {
	display: none;
}
.contents-wrap ul.step-list li::after {
	content: '\f358';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	font-size: 4.8rem;
	display: block;
	width: 100%;
	text-align: center;
	color: #bd6600;
}
.contents-wrap ul.step-list li:last-child::after {
	display: none;
}
.step-list dl dt {
	width: 100%;
	text-align: center;
	font-size: 2rem;
	font-weight: 700;
	background: #bd6600;
	color: #FFF;
	padding: 1em 0;
}
.step-list dl dd {
	border: 2px solid #bd6600;
	padding: 1.5em;
}
.contents-wrap ol {
	margin-left: 1.5em;
}
.contents-wrap ol li {
	list-style-type: decimal;
}
.contents-wrap .box-red {
	width: 100%;
	/*padding: 1em 1.5em;*/
	padding: .5em 1.5em;
	border: 2px solid #bd6600;
}
.contents-wrap .small,
.category-list .other-detail .small {
	font-size: 90%;
}
.large {
	font-size: 150%;
}
.red {
	color: #bd6600;
}
.img-center img {
	margin-bottom: 40px;
}
.gmap {
	height: 0;
	overflow: hidden;
	padding-bottom: 40%;
	position: relative;
}
.gmap iframe {
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
}
.contents-wrap .tbl01,
.contents-wrap .tbl02 {
	margin: 2em 0;
}
.contents-wrap .tbl02 {
	border-left: 1px solid #d4d4d4;
}
.contents-wrap .tbl01 th,
.contents-wrap .tbl02 th {
	background: #e4e4e4;
	text-align: center;
}
.contents-wrap .tbl01 td,
.contents-wrap .tbl02 td {
	text-align: center;
}
.contents-wrap .tbl02 th,
.contents-wrap .tbl02 td {
	border-right: 1px solid #d4d4d4;
}
.contents-wrap #product-img ul li {
	padding: 0;
}
.contents-wrap #product-img ul li::before {
	display: none;
}
.half-blk-1,
.half-blk-2 {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.half-blk-1 .img-blk {
	width: 50%;
}
.half-blk-1 .txt-blk {
	position: relative;
	width: 45.7%;
}
.half-blk-1 .txt-blk .flg-new {
	position: static;
}
.half-blk-2 .img-blk {
    width: 47.8%;
    margin-left: 5%;
}
.half-blk-2 .txt-blk {
    flex: 1;
}
#hanga .contents-wrap:nth-of-type(2n) .half-blk-2 {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
#hanga .contents-wrap {
	/*margin-bottom: 120px;*/
	margin-bottom: 80px;
}
.caution {
	border: 1px solid #bd6600;
	color: #bd6600;
	font-size: 2.4rem;
	text-align: center;
	padding: .5em 0;
	/*margin: 50px 0 50px;*/
	margin: 40px 0;
}
.order-blk {
	text-align: center;
	background: #f4f4f4;
	/*margin: 0 0 50px;
	padding: 40px 4%;*/
	margin: 0 0 40px;
	padding: 30px 4%;
}
.contents-wrap .order-blk h4 {
	color: #b1050a;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	font-size: 2.0rem;
}
.contents-wrap .order-blk h4 .title {
	color: #3E214C;
	font-size: 3.0rem;
	font-weight: 700;
	margin-right: .5em;
}
.contents-wrap .order-blk h4 .price {
	font-size: 3.0rem;
	font-weight: 700;
}
.order-blk select {
	margin-bottom: 30px;
}
#product-img .slider-main {
	width: 100%;
	background: url(img/bg-products-photo.jpg) no-repeat left top;
	background-size: cover;
	margin-bottom: 20px;
}
#product-img .slider-thumb li {
	/*width: 32%!important;*/
	margin-right: 1.88%;
	background: url(img/bg-products-photo.jpg) no-repeat left top;
	background-size: cover;
}
#product-img .slider-thumb li:last-child {
	margin-right: 0;
}
#product-img .slider-thumb li.slick-current {
	position: relative;
}
#product-img .slider-thumb li.slick-current::after {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	border: 2px solid #bd6600;
	box-sizing: border-box;
	z-index: 1;
}
#product-img .bnrs {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 40px;
}
#product-img .bnrs li {
    width: 49%;
    margin: 0 2% 10px 0;
}
#product-img .bnrs li:nth-child(even) {
    margin-right: 0;
}
.relation-contents {
	max-width: 1400px;
	width: 100%;
	/*margin: 150px auto 80px;*/
	margin: 80px auto;
}
.relation-contents h3 {
	font-size: 3.0rem;
	border-bottom: 2px solid #cccccc;
	margin: 0 0 40px;
}
.relation-contents .relation-list {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.relation-contents .relation-list li {
	width: 23%;
	margin-right: 2.6%;
}
.relation-contents .relation-list li:nth-child(4n) {
	margin-right: 0;
}
.relation-contents .relation-list a {
	text-decoration: none;
}
.relation-contents .relation-list dl .img-blk {
	margin-bottom: 20px;
}
.relation-contents .relation-list .right-upper {
	width: 68px;
	height: 68px;
	font-size: 1.8rem;
}
.relation-contents .relation-list a dl dt {
	color: #242424;
	font-size: 2.0rem;
	border-bottom: none;
	padding-bottom: 0;
	margin-bottom: 0;
	line-height: 1.6;
}
.relation-contents .relation-list a dl dt .price span {
	font-size: 2.0rem;
}

.archive-list {
	width: 100%;
	margin: 0 0 120px;
}
.archive-list ul li {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-ms-flex-align: center;
	align-items: center;
}
.archive-list ul li:nth-child(even) {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
.archive-list figure {
	width: 50%;
}
.archive-list dl {
	max-width: 640px;
	width: 100%;
}
.archive-list dl dt {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 4.0rem;
	line-height: 1.1;
}
.archive-list dl dt::after {
	content: "";
	display: block;
	width: 30px;
	height: 2px;
	background: #bd6600;
	margin: 50px 0 40px;
}
.archive-list .btn {
	margin: 50px auto 0;
}
.archive-list ul li:nth-child(odd) dl {
	margin-right: 3.125%;
}
.archive-list ul li:nth-child(even) dl {
	margin-left: 3.125%;
}
.archive-list2 {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	margin: 40px auto;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}
.archive-list2 li {
	width: 31%;
	margin: 0 3.5% 40px 0;
}
.contents-wrap ul.archive-list2 li {
	padding: 0;
}
.archive-list2 li:nth-child(3n) {
	margin-right: 0;
}
.contents-wrap ul.archive-list2 li::before {
	display: none;
}
.archive-list2 a {
	position: relative;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
    height: 5em;
    line-height: 1.5;
	text-decoration: none;
	padding: 0 40px 0 10px;
	color: #bd6600;
	/*background: rgba(164, 0, 0, 0.15);*/
	border: 2px solid #bd6600;
}
.archive-list2 a::after {
	content: "";
	position: absolute;
	right: 10px;
	top: calc( ( 100% - 4px ) / 2 );
	width: 100%;
	height: 4px;
    background: url(img/arrow01.png) no-repeat right top;
}
.archive-list2 a:hover {
	background: #bd6600;
	color: #FFF;
}
.archive-list2 a:hover::after {
    background: url(img/arrow01-w.png) no-repeat right top;
}
.archive-list3 {
	max-width: 1720px;
	width: 90%;
	/*margin: 0 auto 150px;*/
	margin: 0 auto 80px;
}
.archive-list3 li {
	position: relative;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	/*overflow: hidden;*/
	margin-bottom: 120px;
	padding-bottom: 50px;
}
.archive-list3 li:nth-child(even) {
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.archive-list3 li:last-child {
	margin-bottom: 0;
}
.archive-list3 li figure {
	max-width: 1300px;
	width: 75%;
}
.archive-list3 li dl {
	position: absolute;
	top: 60px;
	width: 40%;
	background: #FFF;
	padding: 50px 3%;
	z-index: 1;
}
.archive-list3 li::after {
	content: '';
	position: absolute;
	right: -3%;
	/*bottom: -30px;*/
	bottom: 0;
	display: block;
	width: 100%;
	height: 50%;
	background: rgba(164, 0, 0, 0.05);
	z-index: -1;
}
.archive-list3 li:nth-child(even)::after {
	right: auto;
	left: -3%;
}
.archive-list3 li dl dt {
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 2.4rem;
	line-height: 1.5;
	margin-bottom: 1.5em;
}
.archive-list3 li dl dd {
	font-size: 1.6rem;
	line-height: 1.8;
}
.archive-list3 li:nth-child(odd) dl {
	right: 3px;
}
.archive-list3 li:nth-child(even) dl {
	left: 3px;
}
.sub-link {
	max-width: 1400px;
	width: 100%;
	margin: 0 auto 60px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.6rem;
}
.sub-link ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.sub-link ul li {
	position: relative;
	width: 20%;
	position: relative;
	text-align: center;
	padding-right: 1em;
}
.sub-link ul li::after {
	content: "／";
	position: absolute;
	right: 0;
	top: 0;
	color: #bd6600;
}
#kodawari .sub-link ul li {
    width: 16.666%;
}
#history .sub-link ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
#history .sub-link ul li {
	width: 33.333%;
	padding-right: 0;
}
#history .sub-link ul li::after {
	display: none;
}
/*.sub-link ul li:last-child {
	padding-right: 0;
}
.sub-link ul li:last-child::after {
	display: none;
}*/
.sub-link a {
	padding: 0 .3em;
	color: #3E214C;
	text-decoration: none;
}
.sub-link a:hover {
	color: #bd6600;
}
#history .sub-link a::after {
	content: '\f054';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	padding-left: .5em;
	/*position: absolute;
	right: 0;
	top: 0;*/
	color: #bd6600;
}
.sub-link .current-menu-item a,
.sub-link2 .current-menu-item a {
	color: #bd6600;
	background: rgba(164, 0, 0, 0.15);
}
.sub-link2 {
	max-width: 1400px;
	width: 100%;
	/*margin: 0 auto 40px;*/
	margin: 40px auto 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-size: 1.6rem;
}
.sub-link2 ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.sub-link2 ul li {
	width: 24%;
	margin: 0 1.3% 30px 0;
	border-bottom: 1px solid #3E214C;
}
.sub-link2 ul li:nth-child(4n) {
    margin-right: 0;
}
.sub-link2 a {
	position: relative;
	display: block;
	width: 100%;
	text-decoration: none;
	color: #3E214C;
	padding: .6em 1em .6em .3em;
    text-align: center;
}
.sub-link2 a::after {
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	position: absolute;
	right: .2em;
	top: .6em;
	color: #bd6600;
}
.main-content {
	position: relative;
	width: 100%;
	/*padding-bottom: 120px;
	margin-bottom: 120px;*/
	padding-bottom: calc( 80px - 1em );
	margin-bottom: 80px;
}
.main-content::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	display: block;
	width: 100%;
	height: 50%;
	background: rgba(164, 0, 0, 0.05);
	z-index: -1;
}
.main-content .inner {
	position: relative;
	max-width: 1400px;
	width: 100%;
	margin: 0 auto;
}
.main-content h3.tate {
	position: absolute;
	left: 0.5em;
	top: 0;
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	writing-mode: vertical-lr;
	font-size: 3.6rem;
	line-height: 1;
	z-index: 1;
	letter-spacing: -0.2em;
    white-space: nowrap;
}
.main-content h3.tate::after {
	content: "";
	position: absolute;
	left: calc( 0.5em - 1px );
	bottom: -2em;
	display: block;
	width: 2px;
	height: 2em;
	background: #bd6600;
}
/*Edge*/
_:-ms-lang(x)::backdrop, .main-content h3.tate {
	letter-spacing: 0.2em;
}
/*IE11*/
_:-ms-lang(x)::-ms-backdrop, .main-content h3.tate {
	letter-spacing: 0.2em;
}
/*FireFox*/
@-moz-document url-prefix() {
	.main-content h3.tate {
		letter-spacing: .15em;
	}
	.main-content h3.tate::after {
		bottom: -2.5em;
	}
}
/*safari*/
_::-webkit-full-page-media, _:future, :root .main-content h3.tate {
    letter-spacing: 0.2em;
}
.main-content .content-blk {
	position: relative;
	max-width: 1200px;
	width: 100%;
	margin: 0 0 0 14.2%;
	padding-top: 80px;
}
.main-content .img-blk {
    position: relative;
}
.main-content .img-blk .thumb {
	position: absolute;
	right: -12.5%;
	top: 45%;
	z-index: 1;
	width: 25%;
}
.main-content .content-blk .txt-blk {
	width: 80%;
}
.main-content .content-blk .txt-blk.all {
    width: 100%;
}
#kodawari .contents-wrap {
	/*margin-bottom: 120px;*/
	margin-bottom: 80px;
}
.half-blk-3 {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
	-ms-flex-align: center;
	align-items: center;
}
.half-blk-3 .img-blk {
	position: relative;
	width: 50%;
}
.half-blk-3 .img-blk .cover {
	position: relative;
}
.half-blk-3 .img-blk .cover::before {
	content: "";
	display: block;
	/*padding-top: 100%;*/
	padding-top: 66.666%;
}
.half-blk-3 .img-blk .cover .bg-area {
	position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
.half-blk-3 .img-blk p {
    margin-top: .5em;
    padding: 0 1em;
}
.half-blk-3 .txt-blk {
	max-width: 640px;
	width: 100%;
}
.contents-wrap.half-blk-3:nth-of-type(even) {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}
.contents-wrap.half-blk-3:nth-of-type(odd) .txt-blk {
	margin-right: 3.125%;
}
.contents-wrap.half-blk-3:nth-of-type(even) .txt-blk {
	margin-left: 3.125%;
}
.all-wrap {
	width: 100%;
	/*padding: 100px 0;*/
	padding: 60px 0 60px;
	background: rgba(164, 0, 0, 0.05);
}
.all-wrap2 {
	width: 100%;
	padding: 50px 0;
}
#voice .all-wrap2:first-of-type {
	padding-top: 0;
}
/*_:-ms-lang(x)::-ms-backdrop, .contents-wrap.half-blk-3.all-wrap {
	display: block;
}*/
/*.all-wrap h4 {
	margin-bottom: 2em;
}*/
.pagination {
	max-width: 1400px;
	width: 90%;
	/*margin: 120px auto;*/
	margin: 80px auto;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
}
.pagination ul {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}
.pagination ul li {
	margin: 0 .5%;
}
.pagination ul li span {
	/*display: block;*/
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	color: #bd6600;
	border: 1px solid #bd6600;
	padding: 0 .7em;
	height: 40px;
}
.pagination ul li span.current {
	color: #FFF;
	background: #bd6600;
}
.pagination ul li a {
	/*display: block;*/
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-ms-flex-align: center;
	align-items: center;
	color: #bd6600;
	border: 1px solid #bd6600;
	padding: 0 .7em;
	text-decoration: none;
	height: 40px;
}
.pagination ul li a:hover {
	background: #bd6600;
	color: #FFF;
	opacity: 1;
}
#voice .contents-wrap {
	margin-bottom: 0;
}
.half-blk-4 {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.half-blk-4 .txt-blk {
	width: 50%;
	/*padding: 80px 5%;*/
	padding: 60px 5%;
}
.contents-wrap:nth-of-type(2n) .half-blk-4 .txt-blk:nth-of-type(2n+1) {
	background: rgba(164,0,0,0.05);
}
.contents-wrap:nth-of-type(2n+1) .half-blk-4 .txt-blk:nth-of-type(2n) {
	background: rgba(164,0,0,0.05);
}
#voice .contents-wrap .txt-blk {
	margin-bottom: 0;
}
#voice hr {
	width: 100%;
	border-top: 1px dashed #d4d4d4;
}
#voice .btn {
	width: 500px;
	margin: 0 auto;
}
#voice .btn.voice-form {
    margin-top: 40px;
}
#voice .contents-wrap.all-wrap {
	/*margin-bottom: 120px;*/
	margin-bottom: 80px;
}
#houki .contents-wrap th {
	width: 20%;
}

.bg-red {
    width: 100%;
    padding: 40px 5%;
    background: #f9efef;
    margin-bottom: 60px;
}

.order-blk-2 {
    max-width: 1000px;
    width: 100%;
    margin: 0 auto;
    padding: 0 5%;
    border-bottom: 1px solid #d4d4d4;
}
.order-blk-2 dl {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between; 
    margin: 20px 0;
}
.order-blk-2 dl dt {
    width: 50%;
}
.order-blk-2 dl dd {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;  
    width: 50%;
}
.order-blk-2 dl dd div {
    width: 50%;
    margin: 0;
}
.order-blk-2 dl dd .price {
    text-align: right;
    color: #bd6600;
    font-size: 2.0rem;
    font-weight: 700;
}
.order-blk-2 dl dd .price span {
    font-size: 1.6rem;
    font-weight: 500;
    padding-left: .2em;
}
.order-blk-2 dl dd .count {
    padding-left: .5em;
}
.order-blk-2 dl dd .count span {
    padding-left: .5em;
}
.order-comment {
    max-width: 1000px;
    width: 100%;
    margin: 40px auto;
}
.order-btn {
    max-width: 300px;
    margin: 0 auto;
}

/*------------------------------------------
 info
--------------------------------------------*/
.archive-info {
	max-width: 1400px;
	width: 100%;
	margin: 0 auto 150px;
}
.category-link {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;	
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	width: 100%;
	/*margin: 0 0 55px;*/
	margin: 0 0 50px;
}
.category-link li {
	width: 15%;
	margin: 0 1.6% 10px 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
}
.category-link li:last-child {
	margin-right: 0;
}
.contents-wrap .category-link {
	/*margin-bottom: 80px;*/
	margin-bottom: 60px;
}
.contents-wrap .category-link li {
	padding: 0;
}
.contents-wrap .category-link li::before {
	display: none;
}
.category-link li a {
	display: block;
	padding: 1em 0;
	text-decoration: none;
}
.category-link .all,
.info-list .all {
	background: #3E214C;
	border: 1px solid #3E214C;
	color: #FFF;
}
.category-link .all:hover {
	background: #FFF;
	color: #3E214C;
}
.category-link .is-active .all {
	background: #FFF;
	color: #3E214C;
}
.category-link .news,
.info-list .news {
	background: #81a422;
	border: 1px solid #81a422;
	color: #FFF;
}
.category-link .news:hover {
	background: #FFF;
	color: #81a422;
}
.category-link .is-active .news {
	background: #FFF;
	color: #81a422;
}
.category-link .media,
.info-list .media {
	background: #fd7400;
	border: 1px solid #fd7400;
	color: #FFF;
}
.category-link .media:hover {
	background: #FFF;
	border: 1px solid #fd7400;
	color: #fd7400;
}
.category-link .is-active .media {
	background: #FFF;
	color: #fd7400;
}
.category-link .important,
.info-list .important {
	background: #bd6600;
	border: 1px solid #bd6600;
	color: #FFF;
}
.category-link .important:hover {
	background: #FFF;
	border: 1px solid #bd6600;
	color: #bd6600;
}
.category-link .is-active .important {
	background: #FFF;
	color: #bd6600;
}
.category-link .send,
.info-list .send {
	background: #138b84;
	border: 1px solid #138b84;
	color: #FFF;
}
.category-link .send:hover {
	background: #FFF;
	border: 1px solid #138b84;
	color: #138b84;
}
.category-link .is-active .send {
	background: #FFF;
	color: #138b84;
}

.info-list li {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;	
	padding: 25px 1.5em;
	border-bottom: 1px solid #d4d4d4;
	font-size: 1.6rem;
}
.info-list time {
	min-width: 70px;
	width: 9.1%;
}
.info-list li span {
	width: 120px;
	height: 24px;
	color: #FFF;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1;
	padding-top: .5em;
}
.info-list li a {
	position: relative;
	display: inline-block;
	max-width: 882px;
	width: 73.5%;
	color: #3E214C;
	text-decoration: none;
}
.info-list li a:hover {
	color: #bd6600;
}
.info-list.media li {
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;	
	-ms-flex-wrap: wrap;
   	flex-wrap: wrap;
}
.info-list.media li a {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;	
	-ms-flex-align: center;
	align-items: center;
	max-width: none;
	width: 100%;
	margin-top: 1em;
}
.info-list.media li a .thumb {
	width: 100px;
	margin-right: 5%;
}
.cat {
	font-size: 1.6rem;
	/*margin-bottom: 50px;*/
	margin-bottom: 40px;
}
.cat time {
	margin-right: 2em;
}
.cat > span {
	width: 100px;
	height: 24px;
	color: #FFF;
	text-align: center;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 1.2rem;
	line-height: 1;
	padding: .2em .5em;
}

/*------------------------------------------
 blog
--------------------------------------------*/
.top-blog {
	width: 100%;
	background: #f9efef;
	padding: 80px 0;
}
.top-blog .inner {
	max-width: 1340px;
	width: 100%;
	margin: 0 auto;
}
.top-blog h2 {
	position: relative;
	font-size: 3.6rem;
    line-height: 1;
	margin: 0 0 calc( 50px + 1em );
	text-align: center;
}
.top-blog h2::after {
	content: '';
	position: absolute;
	bottom: -1em;
	left: calc( ( 100% - 2em ) / 2 );
	display: block;
	width: 2em;
	height: 1px;
	background: #bd6600;
	max-width: .5em auto 0;
}
.top-blog h2 a.btn {
	position: absolute;
	right: 0;
	top: 0;
	width: 90px;
	height: 50px;
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;	
	-ms-flex-align: center;
	align-items: center;
	color: #3E214C;
	border: 2px solid #3E214C;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	font-size: 1.6rem;
	text-decoration: none;
	margin: 0;
}
.top-blog h2 a.btn:hover {
	background: #3E214C;
	color: #FFF;
}
.top-blog h2 a.btn::after {
	content: '\f105';
	font-family: 'Font Awesome 5 Free';
	font-weight: 900;
	margin-left: .3em;
}
.archive-blog {
	max-width: 1400px;
	width: 100%;
	margin: 0 auto 150px;
}
.blog-list {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: start;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.blog-list li {
	width: 31%;
	margin: 0 3.5% 40px 0;
	-webkit-filter:drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.2));
    -moz-filter:drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.2));
    -ms-filter:drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.2));
    filter:drop-shadow(2px 2px 4px rgba(0, 0, 0, 0.2));
}
.blog-list li:nth-of-type(3n) {
	margin-right: 0;
}
.blog-list a {
	color: #3E214C;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}
.blog-list a .title {
	display: block;
	font-weight: 700;
	font-size: 1.8rem;
	padding: 15px 2% 20px;
	background: #FFF;
	line-height: 1.6;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;
}
.blog-list a:hover .title {
	background: #f9efef;
}
.blog-list .title time {
	display: block;
	font-size: 1.4rem;
	color: #bd6600;
}
.blog-list a:hover {
	color: #bd6600;
}
.blog-list li a img {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all  0.3s ease;	
}
.blog-list li a:hover img {
	opacity: .8;
}
/*------------------------------------------
 form
--------------------------------------------*/

form {
	font-size: 1.6rem;
}
form table {
	margin: 50px 0;
}
form input {
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	font-size: 1.6rem;
}
form input[type="text"],
form input[type="email"] {
	padding: .3em .5em;
}
form textarea {
	padding: .3em .5em;
	line-height: 1.6;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", 'メイリオ', Meiryo, sans-serif;
	font-weight: 400;
	font-size: 1.6rem;
}
form input[type="submit"] {
	display: block;
	width: 300px;
	margin: 0 auto;
	border: 2px solid #bd6600;
	background: #FFF;
	color: #bd6600;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	padding: 1em 0;
	text-align: center;
    margin: 0 1em;
	transition: all 0.3s ease;
}
form input[type="submit"]:hover {
	cursor: pointer;
	background: #bd6600;
	color: #FFF;
}
form .submit-wrap {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center; 
}
form .need {
	display: inline-block;
	font-size: 1.2rem;
	padding: .2em .5em;
	background: #bd6600;
	color: #FFF;
	text-align: center;
	line-height: 1;
}
form .w30 {
	width: 30%;
    min-width: 200px;
}
form .w15 {
	width: 15%;
    min-width: 150px;
}
form .w60 {
	width: 60%;
}
form .w70 {
	width: 70%;
}

/*------------------------------------------
 event calender
--------------------------------------------*/
.xo-months {
	display:-ms-flexbox;
	display:-webkit-flex;
	display: flex;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center; 
}
.xo-month-wrap {
	margin-right: 2%;
}
.xo-month-wrap:last-of-type {
	margin-right: 0;
}
.xo-event-calendar table.xo-month .month-header > span {
	font-size: 1.8rem;
}
.xo-event-calendar table.xo-month > thead th,
.xo-event-calendar table.xo-month .month-dayname td div {
	font-size: 1.6rem;
}

/*------------------------------------------
 responsive
--------------------------------------------*/
@media screen and (max-width: 1700px) {
	.main-content .content-blk {
		margin: 0 0 0 10.2%
	}
}

@media screen and (max-width: 1600px) {
	.main-content .img-blk .thumb {
		right: -5%;
		top: 50%;
		width: 20%;
	}
}

@media screen and (max-width: 1520px) {
	body {
		font-size: 1.6rem;
	}
	header .left-blk {
		width: 35%;
	}
	header .hnav ul {
		font-size: 1.8rem;
	}
	header .hnav .phone {
		font-size: 2.0rem;
	}
	header .gnav {
		font-size: 1.6rem;
	}
	#mv .slider li .catch .red {
		font-size: 4.4rem;
	}
	#mv .slider li .catch .white {
		font-size: 7.2rem;
	}
	.news-blk {
		/*max-width: 700px;*/
		width: 90%;
	}
	.news-blk ul {
		font-size: 1.6rem;
	}
	#mv .slider li .banner-right li {
		width: 20%;
	}
	#mv .slider li .banner-left li {
		width: 20%;
	}
	#mv .scroll {
		left: -60px;
	}
	aside .side-nav li {
		width: 64px;
		height: 64px;
	}
	aside .side-nav {
		top: calc( (100vh - 192px) / 2 );
	}
	.top-content01 h2,
	.top-news h2,
	.top-blog h2 {
		font-size: 3.4rem;
	}
	.drawer-menu-item {
		font-size: 1.6rem;
	}
	.drawer-menu li::before {
		top: 1rem;
	}
	#page-title.no-image .title {
		top: calc( ( 100% - 4.0rem * 1.1 ) / 2 );
	}
	#page-title .title h2,
	.category-list h3 {
		font-size: 4.0rem;
	}
	.category-list,
	.other-contents {
		width: 90%;
	}
	.contents-wrap .inner,
	.relation-contents,
	.sub-link,
	.sub-link2 {
		width: 90%;
	}
	.contents-wrap h3,
    .category-list .other-detail h3 {
		font-size: 3.4rem;
	}
	.contents-wrap h4,
    .category-list .other-detail h4 {
		font-size: 2.2rem;
	}
	.caution {
		font-size: 2.2rem;
	}
	.contents-wrap .order-blk h4 {
		font-size: 1.8rem;
	}
	.contents-wrap .order-blk h4 .title,
	.contents-wrap .order-blk h4 .price {
		font-size: 2.4rem;
	}
	.relation-contents h3 {
		font-size: 2.4rem;
	}
	.relation-contents .relation-list a dl dt,
	.relation-contents .relation-list a dl dt .price span {
		font-size: 1.8rem;
	}
	.archive-list dl {
		width: 41.875%;
	}
	#kodawari .contents-wrap {
		font-size: 1.6rem;
	}
	.main-content .inner {
		width: 90%;
	}
	.main-content .content-blk {
		/*max-width: 1000px;*/
		width: 90%;
		margin: 0 0 0 10%;
	}
	.main-content h3.tate {
		left: 3%;
	}
	.contents-wrap.half-blk-3 .txt-blk {
		width: 41.875%;
	}
	.archive-info,
	.archive-blog {
		width: 90%;
	}
	.xo-event-calendar table.xo-month .month-header > span {
		font-size: 1.6rem;
	}
	.xo-event-calendar table.xo-month > thead th,
	.xo-event-calendar table.xo-month .month-dayname td div {
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 1400px) {
	.mv-pc p {
		right: 5%;
	}
	.banner-blk {
		width: 96%;
	}
	.inner {
		width: 96%;
	}
	.top-content02 figure {
		width: 96%;
	}
	.top-content03 .txt-blk {
		max-width: none;
		width: 40%;
	}
	.top-news .inner,
	.top-blog .inner {
		width: 96%;
	}
	.archive-list dl dt {
		font-size: 3.6rem;
	}
	.archive-list dl dt::after {
		margin: 1em 0 .8em;
	}
	/*.sub-link {
		width: 96%;
	}*/
}
@media screen and (max-width: 1300px) {
	.drawer--right .drawer-hamburger {
		right: 10px;
	}
	#mv .slider li .catch .red {
		font-size: 4.2rem;
	}
	#mv .slider li .catch .white {
		font-size: 6.4rem;
	}
	#mv .slider li .banner-right {
		right: 20px;
		top: 20px;
	}
	#mv .slider li .banner-right li {
		width: 18%;
	}
	#mv .slider li .banner-left {
		left: 20px;
		bottom: 20px;
	}
	#mv .slider li .banner-left li {
		width: 18%;
	}
	#mv .scroll {
		left: -70px;
	}
	/*.news-important {
		left: 10%;
	}*/
	.drawer-nav .inner {
		width: 96%;
	}
	.archive-list dl dt {
		font-size: 3.4rem;
	}
	#history .sub-link ul li {
		width: 50%;
	}
}
@media screen and (max-width: 1200px) {
	.btn {
		margin: 40px auto 0;
	}
	header {
		height: 134px;
	}
	header .left-blk {
		width: 40%;
	}
	.drawer-hamburger {
		width: 36px;
	}
	.drawer--right .drawer-hamburger {
		right: 5px;
	}
	/*#mv .news-important {
		left: 15%;
	}*/
	#mv .slider li .catch .red {
		font-size: 4.0rem;
	}
	#mv .slider li .catch .white {
		font-size: 6.0rem;
	}
	.top-content01 .txt-blk {
		max-width: none;
		width: 50%;
	}
	.top-content04 dt p {
		font-size: 2.0rem;
	}
	.top-content01 h2, .top-news h2, .top-blog h2 {
		font-size: 3.0rem;
	}
	.top-news .tab-list li {
		width: 19%;
        margin-right: 1.25%;
 	}
    .top-news .tab-list li:nth-child(5n) {
        margin-right: 0;
    }
	footer .fnav2 {
		width: 96%;
	}
	#page-title.no-image .title {
		top: calc( ( 100% - 3.6rem * 1.1 ) / 2 );
	}
	#page-title .title h2, 
	.category-list h3 {
		font-size: 3.6rem;
	}
	.category-list .products-list .right-upper {
		width: 80px;
		height: 80px;
	}
	.category-list .products-list dl .btn {
		width: 100%;
	}
	#hanga .contents-wrap {
		margin-bottom: 100px;
	}
	.contents-wrap h3,
    .category-list .other-detail h3 {
		font-size: 3.0rem;
	}
	.contents-wrap h4,
    .category-list .other-detail h4 {
		font-size: 2.0rem;
	}
	.caution {
		font-size: 2.0rem;
	}
	.contents-wrap .order-blk h4 {
		font-size: 1.6rem;
	}
	.relation-contents .relation-list .right-upper {
		width: 60px;
		height: 60px;
		font-size: 1.6rem;
	}
	.archive-list dl dt {
		font-size: 3.0rem;
	}
	.archive-list .btn {
		margin: 30px auto 0;
	}
	.half-blk-3 .img-blk::before {
		/*padding-top: 130%;*/
		padding-top: 75%;
	}
	.main-content h3.tate {
		font-size: 3.4rem;
	}
	.archive-list3 li dl {
		top: 50px;
	}
	.archive-list3 li dl dt {
		font-size: 2.2rem;
	}
    #kodawari .sub-link ul li {
        width: 20%;
    }
}
@media screen and (max-width: 1024px) {
	header {
		/*height: 90px;*/
		height: 100px;
		padding-top: 5px;
	}
	header .left-blk,
    header.fixed .left-blk {
		/*left: 15px;
		top: 20px;*/
		left: 5px;
		top: 5px;
		width: 50%;
	}
	header .right-blk,
    header.fixed .right-blk {
		top: 5px;
	}
	header .logo,
    header.fixed .logo {
		/*width: 26%;*/
		width: 93px;
	}
	header .hnav,
    header.fixed .hnav {
		margin: calc( ( 100px - 1em * 1.8 ) / 2 ) 1em 0 0;
	}
	header .hnav ul {
		font-size: 1.6rem;
	}
	header .hnav ul li {
		margin-right: 1.5em;
	}
    header .hnav .products {
        display: block;
    }
    header .hnav .products::before {
        content: '\f07a';
        font-family: 'Font Awesome 5 Free';
        font-weight: 900;
        color: #bd6600;
        display: inline-block;
        margin-right: .2em;
    }
    header .hnav .phone {
		font-size: 1.8rem;
	}
	header .gnav {
		display: none;
	}
	.drawer-hamburger {
		top: 30px;
	}
	#mv {
		/*margin-bottom: 150px;;*/
		margin-bottom: 80px;
	}
	#mv .slider {
		width: 100%;
	}
	#mv .slider li .catch {
		left: 4%;
	}
	#mv .slider li .catch .red {
		font-size: 3.6rem;
	}
	#mv .slider li .catch .white {
		font-size: 5.4rem;
	}
	.news-blk {
		/*position: static;*/
		/*border: 1px solid #bd6600;*/
		max-width: none;
		width: 86%;
	}
    /*.news-blk.mb {
        margin-bottom: 80px;
    }*/
	#mv .scroll {
		left: -30px;
		bottom: 50px;
		width: 100px;
		font-size: 1.4rem;
		color: #FFF;
	}
	#mv .slider li .banner-left {
		left: 35px;
	}
	.top-content01,
	.top-content03,
	.top-content04 {
		/*margin-bottom: 120px;*/
		margin-bottom: 100px;
	}
	.top-content01 h2, 
	.top-news h2,
	.top-blog h2 {
		font-size: 2.8rem;
	}
	.top-content02 {
		margin-bottom: 255px;
	}
	.top-content02 .txt-blk {
		width: 94%;
	}
	.top-content03 {
		-ms-flex-align: start;
    	align-items: flex-start;
	}
	.top-content04 {
		width: 95%;
	}
	.top-news {
		padding: 60px 0;
		background-size: cover;
	}
	.top-news .tab-list li {
		width: 19%;
 	}
	.top-news time {
		width: 14%;
	}
	.top-news .tab-content ul li a {
		width: calc(100% - 14% - 100px - 3em);
	}
	footer .calender,
	footer .fnav1 ul {
		width: 96%;
	}
	footer .fnav1 ul li {
		font-size: 1.8rem;
	}
	footer .fnav1 .call {
		font-size: 2.2rem;
	}
	.drawer-nav .inner {
		width: 90%;
	}
	#page-title {
		width: 100%;
		/*margin-bottom: 100px;*/
	}
	#page-title.no-image .title {
		top: calc( ( 100% - 3.4rem * 1.1 ) / 2 );
	}
	#page-title .title h2, 
	.category-list h3 {
		font-size: 3.4rem;
	}
	#page-title .title-img .banners {
		bottom: -5%;
	}
	#page-title .title-img .banners li img {
		height: 70%;
	}
	.breadcrumbs {
		max-width: none;
		width: 96%;
		/*margin-bottom: 100px;*/
	}
	.category-list, 
	.other-contents {
		width: 96%;
	}
	.category-list .products-list dl dt,
	.category-list .products-list dl dt .price span {
		font-size: 2.0rem;
	}
	.category-list .products-list .right-upper {
		width: 70px;
		height: 70px;
		font-size: 1.8rem;
	}
	.other-contents ul li a p {
		/*font-size: 2.0rem;*/
		font-size: 1.8rem;
	}
	.relation-contents {
		width: 96%;
	}
	.other-contents {
		margin-bottom: 140px;
	}
	.contents-wrap h3,
    .category-list .other-detail h3 {
		font-size: 2.6rem;
		margin-bottom: 40px;
	}
	.caution {
		font-size: 1.8rem;
	}
	.relation-contents .relation-list .right-upper {
		width: 54px;
		height: 54px;
	}
	.relation-contents .relation-list a dl dt .price {
		font-size: 1.4rem;
	}
	.relation-contents .relation-list a dl dt, 
	.relation-contents .relation-list a dl dt .price span {
		font-size: 1.6rem;
	}
	.archive-list ul li {
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
		-ms-flex-align: start;
		align-items: flex-start;
	}
	.archive-list ul li:last-child {
		margin-bottom: 0;
	}
	.archive-list dl {
		width: 43.75%;
		margin-top: 2em;
	}
	.archive-list dl dt {
		font-size: 2.8rem;
	}
    .archive-list2 a::after {
        background-size: 20px;
    }
	.archive-list3 {
		width: 100%;
	}
	.archive-list3 li dl {
		top: 40px;
		width: 44%;
		padding: 40px 3%;
	}
	.archive-list3 li dl dt {
		font-size: 2.0rem;
	}
	.archive-list3 li::after {
		width: 97%;
		right: 0;
	}
	.archive-list3 li:nth-child(even)::after {
		left: 0;
	}
	.main-content .inner {
		width: 94%;
	}
	.main-content h3.tate {
		left: 2%;
	}
	.main-content .content-blk {
		width: 86%;
		margin: 0 0 0 10%;
	}
	.main-content .img-blk .thumb {
		right: -7%;
	}
	.half-blk-3 .img-blk::before {
		/*padding-top: 150%;*/
		padding-top: 100%;
	}
	.sub-link {
		font-size: 1.4rem;
		margin-bottom: 40px;
	}
	.sub-link2 {
		font-size: 1.4rem;
	}
	.archive-info,
	.archive-blog {
		width: 96%;
		margin-bottom: 100px;
	}
	.contents-wrap .category-link {
		margin-bottom: 40px;
	}
	.category-link li {
		width: 19%;
        margin-right: 1.25%;
	}
    .category-link li:nth-child(5n) {
        margin-right: 0;
    }
	.info-list time {
		width: 14%;
	}
	.info-list li a {
		width: calc(100% - 14% - 100px - 3em);
	}
}
@media screen and (max-width: 954px) {
	.top-content01 h2,
	.top-news h2,
	.top-blog h2 {
		font-size: 2.4rem;
	}
	.top-news .tab-list li {
		width: 24%;
        margin-right: 1.33%;
 	}
    .top-news .tab-list li:nth-child(5n) {
        margin-right: 1.33%;
    }
    .top-news .tab-list li:nth-child(4n) {
        margin-right: 0;
    }
	footer .fnav1 ul li {
		width: 32%;
	}
    .category-list .products-list dl .cart_1 input[type="image"] {
        width: 100%;
    }
}
@media screen and (max-width: 812px) {
	#mv .slider li .catch .red {
		font-size: 3.0rem;
	}
	#mv .slider li .catch .white {
		font-size: 4.8rem;
	}
	#mv .slider li .banner-right {
		top: 15px;
		right: 15px;
	}
    .news-blk {
        width: 90%;
	}
	.banner-blk {
		width: 90%;
		margin: 60px auto;
	}
	.top-content01 {
		margin-top: 60px;
	}
	.top-content01, 
	.top-content03, 
	.top-content04 {
		/*margin-bottom: 100px;*/
		margin-bottom: 80px;
	}
	.top-content02 .txt-blk {
		bottom: -180px;
		padding: 1.2em 2em;
	}
	.top-content04 dt p {
		font-size: 1.6rem;
	}
	.top-news .tab li {
		width: 20%;
	}
	aside .side-nav {
		display: none;
	}
	#page-title.no-image .title {
		top: calc( ( 100% - 3.0rem * 1.1 ) / 2 );
	}
	#page-title .title h2, 
	.category-list h3 {
		font-size: 3.0rem;
	}
	.category-list .products-list dl dt .price {
		font-size: 1.4rem;
	}
	.category-list .products-list dl dt, 
	.category-list .products-list dl dt .price span {
		font-size: 1.8rem;
	}
	.category-list .products-list .right-upper {
		width: 60px;
		height: 60px;
		font-size: 1.6rem;
	}
    .category-link li {
        font-size: 1.4rem;
    }
	.other-contents ul li a p {
		/*font-size: 1.8rem;*/
		font-size: 1.6rem;
	}
	.btn {
		max-width: 300px;
		width: 100%;
		margin-top: 30px;
	}
	.btn a {
		height: 60px;
	}
    .archive-list2 li {
        width: 32%;
        margin: 0 1.3% 30px 0;
    }
	.archive-list3 li {
		padding-bottom: 60px;
	}
	.archive-list3 li dl {
		width: 50%;
	}
	.archive-list3 li:nth-child(odd) dl {
		right: 0;
	}
	.archive-list3 li:nth-child(even) dl {
		left: 0;
	}
	.archive-list3 li dl dt {
		font-size: 1.8rem;
	}
	.archive-list3 li dl dd {
		font-size: 1.4rem;
	}
	.contents-wrap h3,
    .category-list .other-detail h3 {
		font-size: 2.4rem;
	}
	.caution {
		font-size: 1.6rem;
	}
	.contents-wrap .order-blk h4 {
		font-size: 1.4rem;
	}
	.contents-wrap .order-blk h4 .title, 
	.contents-wrap .order-blk h4 .price {
		font-size: 2.2rem;
	}
	.main-content h3.tate {
		left: 1%;
		font-size: 3.2rem;
	}
	.sub-link ul li,
    #kodawari .sub-link ul li {
		width: 25%;
	}
	.sub-link2 ul li {
		width: 31.333%;
		margin: 0 2% 30px 0;
	}
    .sub-link2 ul li:nth-child(4n) {
        margin-right: 2%;
    }
    .sub-link2 ul li:nth-child(3n) {
        margin-right: 0%;
    }
    form .w30 {
        width: 100%;
    }
	form .w60 {
		width: 100%;
	}
	form .w70 {
		width: 100%;
	}
}
@media screen and (max-width: 768px) {
	body {
		font-size: 1.4rem;
	}
	header .left-blk {
		width: 55%;
	}
	/*header .logo {
		width: 24%;
	}*/
	header h1 {
		font-size: 1.3rem;
	}
	header .hnav ul {
		font-size: 1.4rem;
	}
	header .hnav .phone {
		font-size: 1.6rem;
	}
	header .hnav ul li {
		margin-right: 1.2em;
	}
	#mv {
		margin-bottom: 60px;
	}
	.news-blk h2,
	.news-blk .news-list {
		font-size: 1.4rem;
	}
    .news-blk h2 {
        max-width: 150px;
    }
	.top-content01 h2, 
	.top-news h2,
	.top-blog h2 {
		font-size: 2.2rem;
	}
	.top-content04 dt p {
		font-size: 1.4rem;
	}
	.top-content04 dl:last-of-type {
		margin-top: 50px;
	}
	.top-news .tab li {
		width: 24%;
	}
	.top-news .tab a {
		font-size: 1.4rem;
	}
	.top-news .tab-content ul li {
		font-size: 1.4rem;
		padding: 1.5em 1em;
	}
	footer .sns-link {
		margin-bottom: 40px;
	}
	footer .calender {
		margin-bottom: 50px;
	}
	footer .fnav2 {
		font-size: 1.4rem;
	}
	.drawer-nav .site-name {
		font-size: 2.4rem;
	}
	.drawer-menu-item {
		font-size: 1.4rem;
	}
	.drawer-menu li::before {
		top: .75rem;
	}
	#page-title .title h2, 
	.category-list h3 {
		font-size: 2.6rem;
	}
	#page-title .title h2 {
		position: absolute;
		top: calc( ( 100% - 1em ) / 2 );
	}
	#page-title.no-image .title {
		top: calc( ( 100% - 4.0rem * 1.1 ) / 2 );
	}
	#page-title.no-image .title h2 {
		position: static;
	}
	.category-list h3 {
		margin: 0 0 60px;
	}
	#page-title .title-img .banners {
		right: 5px;
		bottom: -10%;
	}
	.category-list .products-list dl {
		margin-top: 60px;
	}
	.category-list .products-list dl dt, 
	.category-list .products-list dl dt .price span {
		font-size: 1.6rem;
	}
	.category-list .products-list dl dt .kosu, 
	.category-list .products-list dl dt select {
		font-size: 1.4rem;
	}
	.category-list .products-list .right-upper {
		width: 50px;
		height: 50px;
		font-size: 1.5rem;
	}
	.breadcrumbs {
		/*margin-bottom: 80px;*/
		margin-bottom: 60px;
	}
	.archive-info,
	.archive-blog {
		/*margin-bottom: 80px;*/
		margin-bottom: 60px;
	}
	.flg-new {
		left: 5px;
		top: 5px;
	}
	.category-list {
		/*margin-bottom: 100px;*/
		margin-bottom: 60px;
	}
	.other-contents {
		/*margin-bottom: 120px;*/
		margin-bottom: 60px;
	}
    .other-contents ul li {
        width: 48%;
        margin: 0 4% 20px 0;
    }
    .other-contents ul li:nth-child(2n) {
        margin-right: 0;
    }
	.other-contents ul li a p {
		font-size: 1.8rem;
	}
	.contents-wrap {
		font-size: 1.4rem;
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
	}
    .category-list .other-detail {
        margin: 40px 0 0;
        padding: 30px 4.2% 40px;
    }
	#hanga .contents-wrap {
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
	}
	.contents-wrap:nth-of-type(even) {
		/*padding: 60px 0;*/
		padding: 40px 0;
	}
	#konyu .contents-wrap:nth-of-type(even) {
		/*padding: 60px 0;*/
		padding: 40px 0;
	}
	#hanga .contents-wrap:nth-of-type(even),
	#kodawari .contents-wrap:nth-of-type(even),
	#voice .contents-wrap:nth-of-type(even) {
		padding: 0;
	}
	#kodawari .contents-wrap {
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
		font-size: 1.4rem;
	}
	#kodawari .contents-wrap.all-wrap {
		/*padding: 60px 0;*/
		padding: 40px 0;
	}
	.contents-wrap .inner,
	.sub-link,
	.sub-link2 {
		width: 96%;
	}
	.contents-wrap h4,
    .category-list .other-detail h4 {
		padding-left: 12px;
	}
	.contents-wrap h4::before,
    .category-list .other-detail h4::before {
		/*left: -12px;*/
		width: 10px;
	}
	.order-blk {
		margin-bottom: 30px;
	}
	.cart_1 input[type="image"] {
		width: 90%;
	}
	.category-list .products-list dl .cart_1 input[type="image"] {
		width: 100%;
	}
	.relation-contents {
		/*margin: 100px auto 60px;*/
		margin: 60px auto 40px;
	}
	.archive-list dl {
		margin-top: 0;
	}
	.archive-list dl dt {
		font-size: 2.4rem;
	}
	.archive-list2 li {
		width: 32.333%;
		/*margin: 0 1.5% 40px 0;*/
		margin: 0 1.5% 20px 0;
	}
	.archive-list2 a {
		padding: 0 23px 0 5px;
	}
	.archive-list2 a::after {
		right: 3px;
	}
	.archive-list3 {
		/*margin-bottom: 90px;*/
		margin-bottom: 50px;
	}
	.main-content {
		/*padding-bottom: 80px;
		margin-bottom: 80px;*/
		padding-bottom: calc( 60px - 1em );
		margin-bottom: 60px;
	}
	.main-content::before {
		height: 75%;
	}
	.main-content .inner {
		width: 96%;
	}
	.main-content h3.tate {
		left: 1%;
		font-size: 3.0rem;
	}
	.contents-wrap.half-blk-3 .txt-blk {
		width: 44.875%;
	}
	.main-content .content-blk {
		/*width: 86%;
		margin: 0 0 0 10%;*/
		/*padding-top: 60px;*/
		padding-top: 40px;
	}
	.main-content .img-blk .thumb {
		top: 55%;
	}
	.pagination {
		/*margin: 60px auto;*/
		margin: 40px auto;
	}
	form {
		font-size: 1.4rem;
	}
	form input,
	form textarea {
		font-size: 1.4rem;
	}
	.xo-event-calendar table.xo-month .month-header > span {
		font-size: 1.4rem;
	}
	.xo-event-calendar table.xo-month > thead th,
	.xo-event-calendar table.xo-month .month-dayname td div {
		font-size: 1.2rem;
	}
	.top-blog h2 a.btn {
		width: 70px;
		height: 36px;
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 700px) {
	header,
    header.fixed {
		height: 90px;
	}
	header .logo,
    header.fixed .logo {
		/*width: 20%;*/
		width: 83px;
	}
	header .left-blk {
		width: 70%;
	}
	header .right-blk {
		width: 30%;
        right: 46px;
	}
    header .hnav,
    header.fixed .hnav {
        margin: 25px 0 0 0;
    }
	header .hnav ul {
		/*font-size: 2.4rem;*/
		font-size: 1.1rem;
		font-weight: 400;
		text-align: center;
	}
	header .hnav ul li {
		/*margin-right: 3%;*/
        margin-right: 5%;
	}
	header .hnav ul li:last-child {
		margin-right: 2%;
	}
	header .hnav .pc-mode,
    header .hnav .products {
		display: none;
	}
	header .hnav .sp-mode {
		display: block;
	}
	header .hnav .sp-phone {
		color: #bd6600;
	}
    header .hnav .sp-products a,
	header .hnav .sp-shop a,
    header .hnav .sp-voice a{
		color: #bd6600;
	}
	header .hnav .fas {
		display: block;
		font-size: 2.4rem;
		padding-bottom: .2em;
	}
	#mv {
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
	}
    /*.news-blk.mb {
        margin-bottom: 60px;
	}*/
	.top-content01 {
		margin-top: 60px;
	}
	.top-content01, 
	.top-content03, 
	.top-content04 {
		/*margin-bottom: 80px;*/
		margin-bottom: 60px;
	}
	.top-content01::before {
		top: -10px;
	}
	.top-content01 h2, 
	.top-news h2,
	.top-blog h2 {
		font-size: 2.0rem;
	}
	.top-news h2 span {
		font-size: 1.2rem;
		margin-left: .5em;
	}
	/*.top-news .tab-list li {
		width: auto;
		padding: 1em .75em;
	}*/
	.top-news .tab-list li {
		width: 32%;
        margin-right: 1.33%;
 	}
    .top-news .tab-list li:nth-child(5n) {
        margin-right: 1.33%;
    }
    .top-news .tab-list li:nth-child(4n) {
        margin-right: 1.33%;
    }
    .top-news .tab-list li:nth-child(3n) {
        margin-right: 0;
    }
	.top-news .tab-content ul li {
		display: block;
	}
	.top-news .tab-content ul li time {
		margin: 0 1em 0 0;
	}
	.top-news .tab-content ul li span {
		display: inline-block;
	}
	.top-news .tab-content ul li a {
		display: block;
		width: 100%;
		margin-top: 1em;
	}
	footer .fnav1 .comment {
		font-size: 1.2rem;
	}
    footer .fnav2 {
        display: block;
        padding: 40px 0;
    }
    footer .fnav2 ul {
        width: 100%;
    }
    footer .fnav2 .security {
        margin: 20px auto 0;
    }
	.drawer-menu2 {
		-ms-flex-wrap: wrap;
      	flex-wrap: wrap;
	}
	.breadcrumbs {
		font-size: 1.2rem;
	}
	.contents-wrap h4,
    .category-list .other-detail h4 {
		font-size: 1.8rem;
	}
	.contents-wrap .order-blk h4 .title, 
	.contents-wrap .order-blk h4 .price {
		font-size: 2.0rem;
	}
	.category-list .products-list dl {
		width: 48%;
		/*margin: 60px 4% 0 0;*/
		margin: 40px 4% 0 0;
	}
	.category-list .products-list dl:nth-last-of-type(3n) {
		margin-right: 4%;
	}
	.category-list .products-list dl:nth-last-of-type(2n) {
		margin-right: 0;
	}
	.relation-contents .relation-list li {
		width: 48%;
		/*margin: 0 4% 30px 0;*/
		margin: 0 4% 20px 0;
	}
	.relation-contents .relation-list li:nth-child(2n) {
		margin-right: 0;
	}
	.sub-link ul {
		-ms-flex-pack: start;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-ms-flex-wrap: wrap;
      	flex-wrap: wrap;
	}
	#history .sub-link ul li {
		width: 100%;
	}
	.archive-list2 li {
		width: 48%;
		/*margin: 0 3% 40px 0;*/
		margin: 0 3% 20px 0;
	}
	.archive-list2 li:nth-child(3n) {
		margin-right: 3%;
	}
	.archive-list2 li:nth-child(2n) {
		margin-right: 0;
	}
	.archive-list3 li {
		-ms-flex-wrap: wrap;
      	flex-wrap: wrap;
		flex-direction: column-reverse;
		padding-bottom: 0;
		/*margin-bottom: 90px;*/
		margin-bottom: 50px;
	}
	.archive-list3 li::after {
		right: auto;
		height: 100%;
	}
	.archive-list3 li:nth-child(even)::after {
		left: auto;
	}
	.archive-list3 li figure {
		width: 100%;
	}
	.archive-list3 li dl {
		position: relative;
		top: auto;
		right: auto;
		width: 90%;
		margin: -30px auto 0;
		padding: 30px 3%;
	}
	.half-blk-3 {
		display: block;
	}
	.contents-wrap.half-blk-3 .txt-blk {
		width: 96%;
		margin: 0 auto 40px;
	}
	.contents-wrap.half-blk-3:nth-of-type(even) .txt-blk {
		margin-left: auto;
	}
	.contents-wrap.half-blk-3:nth-of-type(odd) .txt-blk {
		margin-right: auto;
	}
	.half-blk-3 .img-blk {
		width: 100%;
	}
	.half-blk-3 .img-blk::before {
		padding-top: 66.666%;
	}
	.sub-link ul li,
    #kodawari .sub-link ul li {
		width: 33.333%;
	}
	.sub-link a {
		padding: 0;
	}
	.category-link li {
		width: 24%;
        margin-right: 1.3%;
	}
    .category-link li:nth-child(5n) {
        margin-right: 1.3%;
    }
    .category-link li:nth-child(4n) {
        margin-right: 0;
    }
	.info-list li {
		display: block;
	}
	.info-list li time {
		margin: 0 1em 0 0;
	}
	.info-list li span {
		display: inline-block;
	}
	.info-list li a {
		display: block;
		width: 100%;
		margin-top: 1em;
	}
	.blog-list li {
		width: 48%;
		margin: 0 4% 30px 0;
	}
	.blog-list li:nth-of-type(3n) {
		margin-right: 4%;
	}
	.blog-list li:nth-of-type(2n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 600px) {
	/*aside .side-nav {
		top: auto;
		bottom: 0;
	}
	aside .side-nav li {
		width: 56px;
		height: 56px;
	}
	aside .side-nav li a {
		font-size: 1.0rem;
	}*/
    header .left-blk {
        width: 60%;
    }
    header .right-blk {
        right: 42px;
    }
    header .hnav {
        margin: 25px 0 0 0;
    }
	#mv .slider li .catch {
		left: 5%;
	}
	#mv .slider li .catch .red {
		font-size: 2.4rem;
	}
	#mv .slider li .catch .white {
		font-size: 4.0rem;
	}
	.top-content04 dl:last-of-type dt::before {
		left: 3%;
	}
	.top-content04 dl dt::before {
		right: 3%;
	}
	footer .fnav1 .comment {
		font-size: 1.1rem;
	}
	.drawer-nav .site-name {
		font-size: 2.2rem;
	}
	.top-news .tab-list li {
		font-size: 1.4rem;
	}
	footer .fnav1 ul {
		display: block;
		width: 80%;
	}
	footer .fnav1 ul li {
		max-width: none;
		width: 100%;
		margin-bottom: 20px;
	}
	footer .fnav1 .comment {
		font-size: 1.4rem;
	}
	.other-contents ul {
		display: block;
	}
	.other-contents ul li {
		max-width: 480px;
		width: 100%;
		margin: 0 auto 20px;
	}
	.other-contents ul li:nth-child(2n),
    .other-contents ul li:nth-child(4n) {
		margin-right: auto;
	}
	.other-contents ul li a p {
		font-size: 2.0rem;
	}
	.main-content h3.tate {
		font-size: 2.6rem;
	}
	.sub-link2 ul li {
		width: 100%;
		margin: 0 0 20px;
	}
    .sub-link2 ul li:nth-child(4n) {
        margin-right: 0;
    }
	.category-link li {
		font-size: 1.4rem;
	}
	form .submit-wrap {
		-ms-flex-wrap: wrap;
      	flex-wrap: wrap;
	}
	form input[type="submit"] {
		margin-bottom: 20px;
	}
}
@media screen and (max-width: 480px) {
	header,
    header.fixed {
		padding: 0 5px;
		height: 80px;
	}
	header .left-blk,
    header.fixed .left-blk {
		left: 5px;
		top: 5px;
		width: 30%;
	}
	header .right-blk,
    header.fixed .right-blk {
		width: 70%;
		right: 5px;
		top: 15px;
	}
	header .logo,
    header.fixed .logo {
		position: static;
		max-width: 72px;
		width: 100%;
	}
	header h1 {
		display: none;
	}
	header .hnav,
    header.fixed .hnav {
		width: calc( 100% - 36px );
		height: inherit;
		margin: 0 1em 0 0;
	}
	header .hnav ul {
		-ms-flex-align: center;
		align-items: center;
		height: inherit;
	}
	header .hnav ul li,
	header .hnav ul li:last-child {
		margin: 10px 4% 0 0;
	}
	.drawer-hamburger {
		top: 25px;
	}
	#mv .slider li .catch .red {
		font-size: 2.0rem;
	}
	#mv .slider li .catch .white {
		font-size: 3.0rem;
	}
	#mv .slider li .catch {
		top: 25%;
		left: 8%;
	}
	#mv .slider li .banner-right {
		top: 5px;
		right: 5px;
	}
	#mv .slider li .banner-left {
		bottom: 5px;
	}
	#mv .scroll {
		display: none;
		/*left: -35px;
		font-size: 1.2rem;*/
	}
	.news-blk {
        display: block;
		width: 96%;
	}
    .news-blk h2 {
        max-width: none;
        padding: .5em 0;
    }
    .news-blk .news-list {
        width: 100%;
	}
	.banner-blk {
		width: 96%;
		margin: 40px auto 0
	}
	.top-content01 {
		margin-top: 40px;
	}
	.top-content01, 
	.top-content03, 
	.top-content04 {
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
	}
	.top-content01 {
		display: block;
	}
	.top-content01::before {
		left: 0;
		top: -45px;
		width: 100%;
		height: 200%;
		background-position: center top;
		background-size: 40%;
	}
	.top-content01 .txt-blk,
	.top-content03 .txt-blk {
		width: 96%;
		/*margin: 0 auto 40px;*/
		margin: 0 auto 20px;
	}
	.top-content01 p {
		padding: 0;
	}
	.top-content01 figure,
	.top-content03 figure {
		width: 100%;
	}
	.top-content02 {
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
	}
	.top-content02::before {
		right: auto;
		top: 0;
		margin: 0;
		background-position: left top;
		background-size: 300%;
	}
	.top-content02 .txt-blk {
		position: static;
		width: 96%;
		margin: 20px auto 0;
		padding: 0;
		background: none;
		box-shadow: none;
	}
	.top-content03 {
 		-webkit-box-direction: reverse;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;
	}
	.top-content03::before {
		background-position: center bottom;
		background-size: 54%;
		width: 100%;
		height: 100%;
	}
	.top-content04 {
		display: block;
	}
	.top-content04 dl {
		width: 100%;
	}
	.top-content04 dl dt::before {
		right: 0;
	}
	.top-content04 dl:last-of-type dt::before {
		left: 0;
	}
	.top-content04 dt p {
		font-size: 1.5rem;
        font-weight: 900;
	}
    .top-content04 dt span {
        border: 2px solid #242424;
        background: rgba(255,255,255,0.7);
    }
	.top-news .inner {
		padding: 30px 2%;
	}
	.top-news h2::before {
		top: calc( 30px + 0.5em );
	}
	.top-news .tab {
		font-size: 1.0rem;
	}
	.top-news .tab-list {
		/*margin-bottom: 40px;*/
		margin-bottom: 20px;
	}
	.top-news .tab-list li {
        font-size: 1.2rem;
		width: 32.4%;
        margin-right: .93%;
 	}
    .top-news .tab-list li:nth-child(5n) {
        margin-right: .93%;
    }
    .top-news .tab-list li:nth-child(4n) {
        margin-right: .93%;
    }
    /*.top-news .tab-list li:nth-child(3n) {
        margin-right: .5%;
    }*/
	/*.top-news .tab-list li:nth-child(2n) {
		margin-right: 0;
	}*/
	.drawer-nav .inner {
		width: 96%;
	}
	.drawer-nav .site-name {
		font-size: 2.0rem;
	}
	footer .sns-link {
		margin-bottom: 30px;
	}
	footer .calender {
		width: 80%;
		margin-bottom: 40px;
	}
	#page-title {
		display: block;
		/*margin-bottom: 60px;*/
	}
	#page-title .title {
		width: 100%;
		/*padding-top: 3.5em;*/
		margin: 0;
	}
	#page-title.no-image .title {
		width: 100%;
	}
	#page-title .title h2 {
		left: 0;
		right: 0;
		z-index: 2;
		margin: 0 auto;
		text-align: center;
	}
	#konyu #page-title .title.upper h2 {
		top: calc( ( 100% - 1em - 1.4rem - 70px ) / 2 );
	}
	#page-title .title-img {
		width: 100%;
	}
	#page-title .title-img figure {
		position: relative;
	}
	#page-title .title-img figure::after {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
		display: block;
		width: 100%;
		height: 100%;
		background: rgba(51, 51, 51, 0.1);
	}
	#page-title.no-image .title-img figure::after {
		background: none;
	}
	#page-title .title-img .banners {
		/*bottom: -100%;
		left: 0;*/
		position: static;
		-ms-flex-pack: justify;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		width: 100%;
		margin: 5px 0;
		padding-bottom: 5px;
	}
	#page-title .title-img .banners li {
		margin: 0 5px;
	}
	#page-title .title-img .banners li img {
		height: auto;
	}
	.breadcrumbs {
		/*position: static;*/
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
	}
	.archive-info,
	.archive-blog {
		/*margin-bottom: 60px;*/
		margin-bottom: 40px;
	}
	#page-title .title h2, 
	.category-list h3 {
		font-size: 2.4rem;
	}
	.category-list h3 {
		/*margin-bottom: 40px;*/
		margin-bottom: 30px;
	}
    .category-list .bnrs {
        -ms-flex-pack: start;
        -webkit-justify-content: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
        width: 100%;
        margin: 30px auto 0;
    }
    .category-list .bnrs li {
        width: 49%;
        margin: 0 2% 10px 0;
    }
    .category-list .bnrs li:nth-child(even) {
        margin-right: 0;
    }
	.category-list .products-list {
		display: block;
	}
	.category-list .products-list dl {
		max-width: none;
		width: 100%;
		/*margin: 50px 0 0 0;*/
		margin: 30px 0 0 0;
	}
	.category-list .products-list dl:nth-last-of-type(3n) {
		margin-right: 0;
	}
	.category-list .products-list dl dt, 
	.category-list .products-list dl dt .price span {
		font-size: 1.8rem;
	}
	.category-list .products-list dl .img-blk {
		margin-bottom: 20px;
	}
	.category-list .products-list dl dt {
		padding-bottom: 20px;
		margin-bottom: 20px;
	}
	.category-list .products-list dl .btn {
		max-width: none;
		width: 90%;
	}
	.category-list .products-list dl .cart_1 input[type="image"] {
		width: 90%;
	}
	.category-list .products-list .right-upper,
	.relation-contents .relation-list .right-upper {
    	width: 70px;
    	height: 70px;
    	font-size: 1.8rem;
	}
	.contents-wrap {
		margin-bottom: 30px;
	}
    .category-list .other-detail {
        margin: 30px 0 0;
        padding: 20px 4.2% 30px;
    }
	.contents-wrap:nth-of-type(even) {
		padding: 30px 0;
	}
	.contents-wrap .inner {
		width: 96%;
	}
	.contents-wrap h3,
    .category-list .other-detail h3 {
		font-size: 2.0rem;
		/*margin-bottom: 40px;*/
		margin-bottom: 30px;
	}
	/*.contents-wrap h4 {
		margin-left: 15px;
	}*/
	.contents-wrap th, 
	.contents-wrap td,
    .category-list .other-detail th,
    .category-list .other-detail td {
		display: block;
		width: 100%;
	}
    #konyu .contents-wrap th, 
    #konyu .contents-wrap td {
        display: table-cell;
        width: auto;
    }
	.contents-wrap th,
    .category-list .other-detail th {
		background: #e4e4e4;
	}
    #konyu .contents-wrap th {
        background-color: transparent;
    }
	.contents-wrap .tbl01 th,
	.contents-wrap .tbl01 td,
	.contents-wrap .tbl02 th,
	.contents-wrap .tbl02 td {
		display: table-cell;
		width: auto;
	}
	#contact .contents-wrap td {
		padding: 1.5em 1em;
	}
	.caution {
		/*margin: 40px 0;*/
		margin: 30px 0;
	}
	.gmap {
		padding-bottom: 100%;
	}
	#kodawari .contents-wrap {
		/*margin-bottom: 40px;*/
		margin-bottom: 30px;
	}
	#kodawari .contents-wrap.all-wrap,
	#konyu .contents-wrap:nth-of-type(even) {
		/*padding: 40px 0;*/
		padding: 30px 0 calc( 30px - 1em );
	}
	#voice .contents-wrap.all-wrap {
		/*padding: 40px 0;
		margin-bottom: 60px;*/
		padding: 30px 0;
		margin-bottom: 40px;
	}
	#voice .all-wrap2 {
		/*padding: 0 0 40px;*/
		padding: 0 0 30px;
	}
	.pagination {
		/*margin: 40px auto;*/
		margin: 30px auto;
	}
	.half-blk-1 {
		/*-ms-flex-pack: start;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		-ms-flex-direction: column-reverse;
		flex-direction: column-reverse;*/
		display: block;
	}
	.half-blk-2 {
		display: block;
	}
	.half-blk-1 .img-blk,
	.contents-wrap .txt-blk,
	.contents-wrap .img-blk {
		width: 100%;
	}
	.contents-wrap .txt-blk {
		/*margin-bottom: 40px;*/
		margin-bottom: 30px;
	}
	.cat {
		margin-bottom: 30px;
	}
	.half-blk-1 .img-blk {
		/*margin-bottom: 40px;*/
		margin-bottom: 30px;
	}
	.order-blk {
		margin-bottom: 20px;
	}
	.relation-contents .relation-list {
		display: block;
	}
	.relation-contents .relation-list li {
		width: 100%;
		/*margin-bottom: 40px;*/
		margin-bottom: 30px;
	}
	.relation-contents .relation-list a dl dt, 
	.relation-contents .relation-list a dl dt .price span {
		font-size: 1.8rem;
	}
	.archive-list ul li {
		display: block;
	}
	.archive-list dl {
		width: 96%;
		/*margin: 0 auto 30px;*/
		margin: 0 auto 20px;
	}
	.archive-list figure {
		width: 100%;
	}
	.archive-list dl dt {
		font-size: 2.0rem;
	}
	.archive-list ul li:nth-child(odd) dl {
		margin-right: auto;
	}
	.archive-list2 {
		display: block;
	}
	.archive-list2 li {
		width: 100%;
		margin: 0 0 20px;
	}
	.archive-list2 li:nth-child(3n) {
		margin-right: 0;
	}
	.archive-list2 a {
		/*padding: 1em 0;*/
        height: 3em;
	}
	.archive-list3,
	.archive-list3 li {
		/*margin-bottom: 50px;*/
		margin-bottom: 30px;
	}
	.archive-list3 li::after {
		bottom: -10px;
		width: 100%;
	}
	.archive-list3 li dl {
		width: 94%;
		margin: 10px auto 0;
	}
	.main-content {
		/*padding-bottom: 60px;
    	margin-bottom: 60px;*/
		padding-bottom: calc( 40px - 1em );
    	margin-bottom: 40px;
	}
	.main-content h3.tate {
		left: 3%;
		display: inline-block;
		font-size: 2.4rem;
		background: rgba(255,255,255,0.7);
		padding: .2em .3em 2em .3em;
		margin: 0;
		letter-spacing: normal;
	}
	.main-content h3.tate::after {
		bottom: -0.3em;
		left: calc( 0.5em + 0.2em - 1px );
	}
	.main-content .content-blk {
		width: 100%;
		margin: 0;
	}
	.main-content .img-blk .thumb {
		top: auto;
        bottom: -10px;
		right: -2%;
	}
	.main-content .content-blk .txt-blk,
    .main-content .content-blk .txt-blk.all {
		width: 82%;
		margin-left: 18%;
        margin-top: 20px;
	}
	.sub-link,
	.sub-link2 {
		font-size: 1.3rem;
	}
	.sub-link2 {
		/*margin-bottom: 40px;*/
		margin-top: 40px;
	}
    .sub-link2 ul li:last-child {
        margin-bottom: 0;
    }
	.sub-link ul li,
    #kodawari .sub-link ul li {
		width: 50%;
	}
	.sub-link ul li:nth-child(2n) {
		padding-right: 0;
	}
	.sub-link ul li:nth-child(2n)::after {
		display: none;
	}
	#history .sub-link ul li {
		text-align: left;
	}
	#houki .contents-wrap th {
		width: 100%;
	}
	.half-blk-4 {
		display: block;
	}
	.half-blk-4 .txt-blk {
		width: 100%;
		/*padding: 60px 5%;*/
		/*padding: 40px 5%;*/
		padding: 30px 5%;
	}
	.contents-wrap:nth-of-type(2n+1) .half-blk-4 .txt-blk:nth-of-type(2n+1) {
		background: rgba(164,0,0,0.05);
	}
	.contents-wrap:nth-of-type(2n+1) .half-blk-4 .txt-blk:nth-of-type(2n) {
		background: none;
	}
	.category-link {
		/*margin-bottom: 40px;*/
		margin-bottom: 30px;
	}
	.category-link li {
		width: 49%;
		margin: 0 2% 10px 0;
		font-size: 1.2rem;
	}
    .category-link li:nth-child(5n) {
        margin-right: 2%;
    }
	.category-link li:nth-child(2n) {
		margin-right: 0;
	}
	.info-list li {
		padding: 20px .5em;
		font-size: 1.4rem;
	}
	.info-list.media li a p {
		width: calc( 100% - 100px - 5% );
		margin: 0;
	}
	.xo-months {
		display: block;
	}
	.xo-month-wrap {
		margin-right: 0;
	}
    .order-blk-2 {
        padding: 0;
    }
    .order-blk-2 dl {
        display: block;
    }
    .order-blk-2 dl dt {
        width: 100%;
        font-size: 1.6rem;
        font-weight: 700;
    }
    .order-blk-2 dl dt span {
        display: inline-block;
        font-weight: 400;
    }
    .order-blk-2 dl dd {
        width: 100%;
    }
    .order-blk-2 dl dd div {
        width: auto;
    }
    .order-blk-2 dl dd .price {
        width: 40%;
    }
    .order-blk-2 dl dd .count {
        width: 60%;
	}
	.blog-list li {
		width: 100%;
		margin: 0 0 30px;
	}
	.blog-list li:nth-of-type(3n) {
		margin-right: 0;
	}
	.blog-list a .title {
		font-size: 1.6rem;
	}
}
@media screen and (max-width: 320px) {
	#mv .slider li .catch .red {
		font-size: 1.8rem;
	}
	#mv .slider li .catch .white {
		font-size: 2.4rem;
	}
	#page-title .title h2, 
	.category-list h3 {
		font-size: 2.0rem;
	}
	.main-content h3.tate {
		left: 1%;
	}
	.sub-link2 {
		font-size: 1.2rem;
	}
}
/*---------------------------------------------------------------------------
@media print
---------------------------------------------------------------------------*/
@media print {
	body {
		width: 1280px;
		transform: scale(0.8);
		-moz-transform: scale(0.8);
		-webkit-transform: scale(0.8);
		transform-origin: 0 0;
	}
	#mv .slider {
		width: 100%;
	}
	.main-content .inner {
		width: 80%;
		margin: 0 0 0 0%
	}
}



.siawasenogoen{
max-width: 700px;
width: 100%;
margin: 50px auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.goen_bnr{
width: 100%;
}

.siawasenogoen a{
width: calc(50% - 15px);
margin-top: 20px;
text-decoration: none;
color: #3E214C;
}
@media only screen and (max-width:767px) {
.siawasenogoen a{
width: calc(50% - 5px);
}
}

.siawasenogoen p{
margin: 0;
}
.siawasenogoen p.goen_txt{
width: 100%;
margin-top: 15px;
}

.siawasenogoen p span{
background: #3E214C;
padding: 3px 10px;
margin-right: 5px;
color: #fff;
display: inline-block;
line-height: 100%;
}


/* ----------------------------------------
	#　ギフト券 CSS
---------------------------------------- */
#gift_wrap{
width: 100%;
position: relative;
overflow: hidden;
background-image: url("https://www.satanokiritanpo.mom/wp/wp-content/themes/satanokiritanpo/img/gift/bg.png");
line-height: 1.5;
}

.pc{display: inline-block;}
.smp{display: none;}
@media only screen and (max-width:1100px) {
.pc{display: none;}
.smp{display: block;}
}

.foM{
font-family: YakuHanJP, -apple-system, Avenir, 'Noto Serif', "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

h2.main_tit{
font-size: 50px;
font-weight: bold;
display: flex;
align-items: center;
justify-content: center;
text-align: center;
color: #bd6600;
line-height: 130%;
}
@media only screen and (max-width:1024px) {
h2.main_tit{
font-size: 45px;
}
}

h2.main_tit:before, h2.main_tit:after{
border-top: 3px solid #bd6600;
content: "";
display: inline;
flex-grow: 1;
}
h2.main_tit:before{margin-right: 0.5em;}
h2.main_tit:after{margin-left: 0.5em;}
@media only screen and (max-width:767px) {
h2.main_tit:before, h2.main_tit:after{
display: none;
}
}

h2.giht_tic{
font-size: 60px;
font-weight: bold;
color: #bd6600;
text-align: center;
}
@media only screen and (max-width:1024px) {
h2.giht_tic{
font-size: 50px;
}
}
@media only screen and (max-width:767px) {
h2.giht_tic{
font-size: 40px;
line-height: 130%;
}
}

.h2_txt{
text-align: center;
font-size: 20px;
margin: 30px 0;
}

h3{
width: 100%;
margin-bottom: 20px;
text-align: center;

}

h3 p{
color: #bd6600;
font-size: 25px;
border-left-color: transparent;
position: relative;
display: inline-block;
padding: 10px 20px;
line-height: 130%;
}

h3 p:before{
content: "";
position: absolute;
left: 0;
bottom: 0;
width: 100%;
background: linear-gradient(to left, #bd6600 calc(50% - 14px), transparent calc(50% - 14px), transparent calc(50% + 14px), #bd6600 calc(50% + 14px));
height: 2px;
}

h3 p:after{
content: "";
position: absolute;
bottom: -11px;
left: 50%;
transform: translate(-50%,0) rotate(-45deg);
height: 20px;
width: 20px;
border-bottom: 2px solid #bd6600;
border-left: 2px solid #bd6600;
}

span.red{
color: #bd6600;
}


/* ----------------------------------------
	#　トップイメージ
---------------------------------------- */
#top.top{
width: 100%;
background-image: url("https://www.satanokiritanpo.mom/wp/wp-content/themes/satanokiritanpo/img/gift/top_bg_btm.png"), url("https://www.satanokiritanpo.mom/wp/wp-content/themes/satanokiritanpo/img/gift/top_bg.jpg");
background-repeat: no-repeat, no-repeat;
background-size: 100%, 100%;
background-position: bottom center, top right;
padding: 50px 0;
}
@media only screen and (max-width:1024px) {
#top.top{
background-size: 100%, cover;
background-position: bottom center, bottom right;
}
}
@media only screen and (max-width:767px) {
#top.top{
background-size: auto 200px, auto 950px;
background-color: #3E214C;
}
}

.content_box{
width: 92%;
max-width: 1200px;
margin: 0 auto;
}

.top_box{
width: 92%;
max-width: 1200px;
margin: 0 auto;
}

.top_tit{
display: flex;
align-items: center;
}
@media only screen and (max-width:767px) {
.top_tit{
flex-direction: column;
}
}

.top_tit .l{
max-width: 500px;
}

.top_ticket{
position: relative;
}

.top_ticket img{
position: absolute;
width: 45vw;
max-width: 700px;
top: -50px;
left: -7vw;
}
@media only screen and (max-width:1024px) {
.top_ticket img{
width: 55vw;
top: -30px;
}
}
@media only screen and (max-width:767px) {
.top_ticket img{
width: 100%;
position: initial;
}
}

.top_txt_box{
margin-top: 20vw;
display: flex;
align-items: center;
}
@media only screen and (max-width:1024px) {
.top_txt_box{
margin-top: 30vw;
}

.top_txt_box.top_box{
width: 100%;
}
}
@media only screen and (max-width:767px) {
.top_txt_box{
flex-direction: column;
}
}

.top_txt_box .txt{
width: 800px;
margin-right: auto;
padding: 100px 70px;
background-image: url("https://www.satanokiritanpo.mom/wp/wp-content/themes/satanokiritanpo/img/gift/top_img04.png");
background-repeat: no-repeat;
background-position: center;
background-size: 100% 100%;
font-size: 23px;
text-align: center;
}
@media only screen and (max-width:1024px) {
.top_txt_box .txt{
padding: 80px 15%;
font-size: 18px;
margin-left: -5%;
}
}
@media only screen and (max-width:767px) {
.top_txt_box .txt{
padding-left: 5%;
padding-right: 5%;
width: 100%;
margin-left: 0;
background-size: 120% 100%;
font-size: 16px;
}
}

.top_txt_box .txt span{
color: #C94A12;
font-size: 43px;
font-weight: bold;
line-height: 120%;
display: inline-block;
margin-bottom: 20px;
}
@media only screen and (max-width:1024px) {
.top_txt_box .txt span{
color: #C94A12;
font-size: 35px;
}
}
@media only screen and (max-width:767px) {
.top_txt_box .txt span{
font-size: 30px;
margin-bottom: 15px;
}
}

.top_txt_box .img{
width: 500px;
margin-left: -80px;
}
@media only screen and (max-width:1024px) {
.top_txt_box .img{
width: 400px;
}
}
@media only screen and (max-width:767px) {
.top_txt_box .img{
width: 100%;
max-width: 300px;
margin-left: 0;
margin-top: -80px;
}
}



/* ----------------------------------------
	#　ギフト券ご利用のメリット
---------------------------------------- */
#merit{padding: 50px 0 100px;}

.merit_list{
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 50px 0 80px;
}
@media only screen and (max-width:767px) {
.merit_list{
justify-content: space-between;
}
}

.merit_list li{
width: 30%;
max-width: 340px;
height: 25vw;
max-height: 340px;
margin-right: 3%;
padding: 10px;
background: #CE720D;
border-radius: 50%;
text-align: center;
font-size: 35px;
color: #fff;
}
.merit_list li:nth-child(odd){margin-right: 0;}
.merit_list li:first-child{margin-right: 3%;}

@media only screen and (max-width:1024px) {
.merit_list li{
width: 40%;
height: 35vw;
margin: 0 3%;
font-size: 30px;
}

.merit_list li:nth-child(odd){margin: 0 3%;}
.merit_list li:nth-child(3){margin: -20px 30%;}
}
@media only screen and (max-width:767px) {
.merit_list li{
width: 48%;
height: 45vw;
font-size: 20px;
padding: 5px;
}

.merit_list li,
.merit_list li:nth-child(odd){margin-right: 0; margin-left: 0;}
.merit_list li:nth-child(3){margin-left: 26%; margin-right: 26%;}
}

.merit_list li div{
width: 100%;
height: 100%;
border: 1px dashed #fff;
border-radius: 50%;
display: inline-flex;
align-items: center;
justify-content: center;
}

.merit_list li p{
line-height: 130%;
}

.merit_list li span{
line-height: 130%;
text-decoration-line: underline;
text-decoration-style: solid;
text-decoration-color: #fff;
text-decoration-thickness: 2px;
}

.seen_box{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 50px;
}
@media only screen and (max-width:767px) {
.seen_box{
margin: 0;
flex-direction: column;
}
}

.seen_inner{
width: 47%;
margin-top: 30px;
display: flex;
}
@media only screen and (max-width:1024px) {
.seen_inner{
flex-direction: column;
}
}
@media only screen and (max-width:767px) {
.seen_inner{
width: 100%;
flex-direction: row;
}
}

.seen_inner .img{
width: 300px;
}
@media only screen and (max-width:767px) {
.seen_inner .img{
width: 45%;
margin-right: 20px;
}
}

.seen_inner .txt{
flex: 1;
margin-left: 20px;
}
@media only screen and (max-width:1024px) {
.seen_inner .txt{
margin-top: 20px;
margin-left: 0;
}
}
@media only screen and (max-width:767px) {
.seen_inner .txt{
margin-top: 0;
}
}

.seen_inner .txt > div{
font-size: 25px;
line-height: 120%;
margin-bottom: 10px;
}
@media only screen and (max-width:767px) {
.seen_inner .txt > div{
font-size: 20px;
margin-bottom: 5px;
}
}

@media only screen and (max-width:1024px) {
.seen_inner .txt > ul{
display: flex;
flex-wrap: wrap;
}
}
@media only screen and (max-width:767px) {
.seen_inner .txt > ul{
flex-direction: column;
font-size: 14px;
}
}

.seen_inner .txt > ul li{
margin-left: 10%;
list-style: disc;
}
@media only screen and (max-width:1024px) {
.seen_inner .txt > ul li{
min-width: 40%;
max-width: 100%;
margin-left: 10%;
line-height: 140%;
}
}

.seen_inner .txt > ul li span{
display: inline-block;
}



/* ----------------------------------------
	#　ご利用の流れ
---------------------------------------- */
#flow{
background: #fff;
padding-top: 100px;
}

.flow_box{
padding: 30px 80px 50px;
margin-bottom: 50px;
position: relative;
border-bottom: 2px dotted #bd6600;
}
.flow_box:after{
content: "";
position: absolute;
bottom: -40px;
left: 50%;
transform: translate(-50%,0);
border: 20px solid transparent;
border-top: 20px solid #bd6600;
z-index: 2;
}
@media only screen and (max-width:1024px) {
.flow_box{
padding-right: 0;
padding-left: 0;
}
}
@media only screen and (max-width:767px) {
.flow_box{
padding-top: 0;
margin-top: 30px;
}
}

.flow_box:last-child{
padding-bottom: 0;
margin-bottom: 0;
border-bottom: none;
}
.flow_box:last-child:after{
display: none;
}

.step_box{
display: flex;
align-items: center;
position: relative;
padding-top: 100px;
}
@media only screen and (max-width:767px) {
.step_box{
align-items: flex-start;
padding-top: 80px;
}
}

.lug{
padding: 15px 30px;
position: absolute;
top: -1px;
left: -60px;
font-size: 40px;
font-weight: 600;
color: #fff;
background: #C1A61E;
border-radius: 10px;
line-height: 100%;
}
.lug:after{
content: "";
position: absolute;
bottom: -35px;
left: 40%;
transform: translate(-60%,0);
border: 15px solid transparent;
border-top: 20px solid #C1A61E;
z-index: 2;
}
@media only screen and (max-width:1024px) {
.lug{
left: 0;
}
}
@media only screen and (max-width:767px) {
.lug{
padding: 15px;
font-size: 25px;
}
.lug:after{
bottom: -24px;
border: 10px solid transparent;
border-top: 15px solid #C1A61E;
}
}

.lug.receiver{background: #4A8137;}
.lug.receiver:after{border-top-color: #4A8137;}

.step_box .num{
background: #AC3024;
padding: 5px 15px;
color: #fff;
line-height: 100%;
font-size: 30px;
}
@media only screen and (max-width:767px) {
.step_box .num{
font-size: 20px;
padding-left: 10px;
padding-right: 10px;
}
}

.step_box .num span{
font-size: 80px;
font-weight: 600;
line-height: 100%;
}
@media only screen and (max-width:767px) {
.step_box .num span{
font-size: 50px;
}
}

.step_box .tit{
margin-left: 20px;
font-size: 60px;
line-height: 120%;
}
.step_box .tit span{
display: inline-block;
}
@media only screen and (max-width:767px) {
.step_box .tit{
font-size: 40px;
}
}

.flow_inner{
display: flex;
justify-content: space-between;
align-items: center;
margin-top: 30px;
font-size: 20px;
}
@media only screen and (max-width:1024px) {
.flow_inner{
flex-direction: column;
}
}
@media only screen and (max-width:767px) {
.flow_inner{
font-size: 18px;
}
}

.flow_inner h3 p{
font-size: 28px;
color: #000;
font-weight: 600;
width: 100%;
margin: 0;
}
@media only screen and (max-width:767px) {
.flow_inner h3 p{
font-size: 25px;
}
}

.flow_inner .txt{
width: 500px;
margin-right: 15px;
}
@media only screen and (max-width:1024px) {
.flow_inner .txt{
width: 80%;
margin-right: 0;
}
}
@media only screen and (max-width:767px) {
.flow_inner .txt{
width: 100%;
}
}

.flow_inner .flow_buy_txt{
margin: 30px 30px 0;
text-align: justify;
}
.flow_inner .flow_buy_txt span{
font-weight: bold;
}
@media only screen and (max-width:767px) {
.flow_inner .flow_buy_txt{
margin-left: 0;
margin-right: 0;
}
}

.flow_inner .img{
flex: 1;
max-width: 450px;
}
@media only screen and (max-width:1024px) {
.flow_inner .img{
margin-top: 15px;
max-width: 350px;
}
}

.flow_inner .tel{
display: flex;
align-items: center;
flex-wrap: wrap;
font-size: 40px;
font-weight: 600;
margin: 20px 50px 0;
}
@media only screen and (max-width:767px) {
.flow_inner .tel{
font-size: 35px;
margin-left: 0;
margin-right: 0;
}
}

.flow_inner .tel span{
font-size: 18px;
display: block;
width: 100%;
line-height: 100%;
}

.flow_inner .tel img{
width: 50px;
margin-right: 10px;
}
@media only screen and (max-width:767px) {
.flow_inner .tel img{
width: 35px;
}
}

.flow_top_txt{
font-size: 20px;
margin: 50px 0 30px;
}
@media only screen and (max-width:767px) {
.flow_top_txt{
font-size: 18px;
margin-top: 30px;
}
}

.gift_content{
padding: 50px 20px 20px 50px;
display: flex;
justify-content: space-between;
align-items: center;
background: #FAF2F2;
position: relative;
}
@media only screen and (max-width:1024px) {
.gift_content{
padding-left: 20px;
}
}
@media only screen and (max-width:767px) {
.gift_content{
flex-direction: column;
padding: 0 0 15px;
}
}

.gift_content_h4{
position: absolute;
top: 0;
left: 0;
background: #bd6600;
color: #fff;
font-size: 30px;
padding: 10px 50px;
line-height: 100%;
}
@media only screen and (max-width:767px) {
.gift_content_h4{
position: inherit;
width: 100%;
font-size: 23px;
text-align: center;
}
}

.gift_content_img{
flex: 1;
max-width: 650px;
width: 90%;
}

.gift_content_txt{
width: 250px;
margin-right: 20px;
font-size: 20px;
}
@media only screen and (max-width:767px) {
.gift_content_txt{
width: 90%;
margin: 15px 0 5px;
font-size: 18px;
}
}

.gift_content_txt span{
background: #AC3024;
color: #fff;
padding: 5px 30px;
border-radius: 5px;
display: inline-block;
margin-bottom: 15px;
line-height: 100%;
}
@media only screen and (max-width:767px) {
.gift_content_txt span{
margin-bottom: 5px;
}
}

.gift_content_txt ul{
counter-reset: number;
}

.gift_content_txt li{
margin-top: 5px;
padding-left: 30px;
position: relative;
counter-increment: cnt;
}

.gift_content_txt li:before{
content: counter(cnt);
padding: 0 0.2em;
position: absolute;
left: 1px;
}

.gift_content_txt li:after{
content: '';
position: absolute;
display: block;
top: 3px;
left: 0;
width: 1em;
height: 1em;
border: 1px solid #000;
border-radius: 50%;
}


.apply_box{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}
@media only screen and (max-width:767px) {
.apply_box{
flex-direction: column;
}
}

.apply_box li{
width: 47%;
margin-top: 50px;
text-align: center;
display: flex;
flex-direction: column;
align-items: center;
}
@media only screen and (max-width:767px) {
.apply_box li{
width: 100%;
margin-top: 30px;
}
}

.apply_box h3 p{
width: 100%;
margin: 0;
}

.apply_box h3 span{
font-size: 40px;
line-height: 100%;
}
@media only screen and (max-width:767px) {
.apply_box h3 span{
font-size: 35px;
}
}

.apply_box li > p{
margin: 15px 30px 0;
font-size: 20px;
line-height: 150%;
flex-grow: 1;
}
.apply_box li > p:last-of-type{margin-bottom: 20px;}
@media only screen and (max-width:1024px) {
.apply_box li > p{
margin-left: 0;
margin-right: 0;
}
}
@media only screen and (max-width:767px) {
.apply_box li > p{
font-size: 18px;
}
}

.apply_box li > p span{
font-size: 16px;
line-height: 130%;
}
.apply_box li > p span.fax{
font-weight: 600;
font-size: 35px;
}

.apply_box li img{
max-width: 180px;
}
@media only screen and (max-width:767px) {
.apply_box li img{
max-width: 150px;
}
}

.deli_inner{
display: flex;
justify-content: space-between;
align-items: flex-end;
margin-top: 40px;
font-size: 20px;
}
@media only screen and (max-width:1024px) {
.deli_inner{
flex-direction: column;
}
}

.deli_inner .txt{
width: 500px;
margin-right: 15px;
margin-bottom: 50px;
}
@media only screen and (max-width:1024px) {
.deli_inner .txt{
width: 80%;
margin: 0 auto 30px;
}
}
@media only screen and (max-width:767px) {
.deli_inner .txt{
width: 100%;
}
}

.deli_inner .img{
flex: 1;
max-width: 450px;
}
@media only screen and (max-width:1024px) {
.deli_inner .img{
width: 80%;
max-width: 350px;
margin: 0 auto;
}
}

.deli_txt.small{
margin-top: 0;
}

.deli_txt.small{
font-size: 16px;
margin-top: 20px;
}


/* ----------------------------------------
	#　ギフト券ご利用のメリット
---------------------------------------- */
#buy{
padding: 100px 0;
}

.noshi_card{
max-width: 900px;
margin: 50px auto;
display: flex;
align-items: center;
justify-content: center;
background: #fff;
padding: 20px 30px;
border-radius: 15px;
}
@media only screen and (max-width:767px) {
.noshi_card{
flex-direction: column;
}
}

.noshi_card .img{
max-width: 450px;
margin-right: 20px;
}
@media only screen and (max-width:1024px) {
.noshi_card .img{
max-width: 400px;
}
}
@media only screen and (max-width:767px) {
.noshi_card .img{
margin-right: 0;
margin-bottom: 15px;
}
}

.noshi_card .txt{
flex: 1;
font-size: 20px;
text-align: center;
}
@media only screen and (max-width:767px) {
.noshi_card .txt{
font-size: 18px;
}
}

.buy_box{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}
@media only screen and (max-width:1024px) {
.buy_box{
flex-direction: column;
}
}

.buy_box li{
width: 48%;
padding: 0 30px 20px 0;
margin-top: 4%;
border-right: 1px solid #AC3024;
border-bottom: 1px solid #AC3024;
}
@media only screen and (max-width:1024px) {
.buy_box li{
width: 100%;
padding-left: 50px;
padding-right: 50px;
padding-top: 30px;
}
}
@media only screen and (max-width:767px) {
.buy_box li{
padding-left: 0;
padding-right: 0;
border-right: none;
}
}

.buy_ticket{
max-width: 500px;
}
@media only screen and (max-width:1024px) {
.buy_ticket{
margin: 0 auto;
}
}

.buy_inner{
display: flex;
justify-content: space-between;
align-items: center;
}
@media only screen and (max-width:1024px) {
.buy_inner{
justify-content: center;
}
}

.buy_img{
max-width: 230px;
}
@media only screen and (max-width:767px) {
.buy_img{
max-width: 45%;
margin: 0;
}
}

@media only screen and (max-width:1024px) {
.buy_txt{
max-width: 250px;
margin-left: 30px;
}
}
@media only screen and (max-width:767px) {
.buy_txt{
flex: 1;
margin-left: 0;
}
}

.item_name{
font-size: 25px;
line-height: 130%;
margin: 0;
}
@media only screen and (max-width:767px) {
.item_name{
font-size: 20px;
line-height: 130%;
}
}

.item_price{
text-align: right;
font-size: 30px;
margin-top: 10px;
line-height: 100%;
}
@media only screen and (max-width:767px) {
.item_price{
font-size: 25px;
}
}

.item_price .p01{
font-size: 50px;
line-height: 90%;
}
.item_price .p02{
font-size: 16px;
line-height: 100%;
}

.buy_btn{
max-width: 260px;
margin: 30px auto;
text-align: center;
}
@media only screen and (max-width:1024px) {
.buy_btn{
margin-top: 15px;
}
}
@media only screen and (max-width:767px) {
.buy_btn{
margin-top: 30px;
}
}

.buy_btn a{
display: block;
width: 100%;
padding: 15px;
background: #fff;
border: 2px solid #bd6600;
font-weight: 600;
color: #bd6600;
position: relative;
z-index: 2;
}

.buy_btn a:after{
content: "";
position: absolute;
width: 100%;
height: 100%;
right: -7px;
bottom: -7px;
border-bottom: 1px solid #bd6600;
border-right: 1px solid #bd6600;
z-index: 1;
}

.buy_tesage{
display: flex;
flex-direction: row-reverse;
align-items: center;
justify-content: space-around;
}

.buy_tesage > div{
width: 45%;
}
@media only screen and (max-width:767px) {
.buy_tesage > div{
width: 35%;
}
}

.buy_tesage >p{
font-size: 20px;
}
@media only screen and (max-width:767px) {
.buy_tesage >p{
font-size: 18px;
}
}

.buy_tesage .pc{
display: block;
}


.contents-wrap.gift_form{
margin-bottom: 150px;
}

.open-area{display: none;}

.gift_form_box{
margin: 50px 0;
}

.gift_form_box p{
margin: 0;
}

.gift_form_inner{
display: flex;
align-items: center;
border-top: 1px solid #d4d4d4;
}
.gift_form_inner:last-of-type{
border-bottom: 1px solid #d4d4d4;
}
@media only screen and (max-width:767px) {
.gift_form_inner{
flex-direction: column;
}
}

.gift_form_inner .delivery-area{
display: flex;
flex-direction: column;
align-items: flex-start;
}

.mw_wp_form .gift_form_inner .horizontal-item + .horizontal-item{
margin-left: 0;
}

.gift_form_box .table_l{
width: 20%;
min-width: 230px;
font-weight: bold;
padding: 1em;
}
@media only screen and (max-width:767px) {
.gift_form_box .table_l{
width: 100%;
background: #e4e4e4;
border-bottom: 1px solid #d4d4d4;
}
}

.gift_form_box .table_r{
padding: 1em;
flex: 1;
}
@media only screen and (max-width:767px) {
.gift_form_box .table_r{
width: 100%;
}
}

.gift_form_box .table_r > p{
line-height: 130%;
margin-top: 10px;
}

.gift_form_box.ticket_num .table_r > p{
line-height: 130%;
margin-top: 10px;
}

.gift_form_box .table_r .error{
font-size: 20px;
}

form .gift_form_box table{
margin: 0;
}

.ticket_num .table_r{
display: flex;
align-items: center;
flex-wrap: wrap;
}
.ticket_num .table_r > span{
display: inline-block;
margin: 0 10px 15px;
}

.num4, .num6{
position: relative;
padding-bottom: 20px;
}
.num6:after,
.num4:after{
position: absolute;
bottom: -3px;
font-size: 12px;
left: 50%;
transform: translate(-50%,0);
display: inline-block;
}
.num6:after{content: "(6桁)";}
.num4:after{content: "(4桁)";}

.gift_form_inner.ticket_num .table_r > p{
margin: 10px;
font-size: 14px;
}
.mw_wp_form_preview .gift_form_inner.ticket_num .table_r > p{
display: none;
}
@media only screen and (max-width:767px) {
.gift_form_inner.ticket_num .table_r > p{
margin: 30px 0 0;
}
}

.gift_form_box .flex{
display: flex;
align-items: center;
}

.gift_form_box .flex > p{
font-size: 14px;
margin-left: 10px;
}

.mw_wp_form_preview .ticket_num .table_r{
padding-bottom: 1em;
}
.mw_wp_form_preview .ticket_num .table_r > div{
font-size: 20px;
}
.mw_wp_form_preview .ticket_num .table_r > div:after{
display: none;
}

#access_txt{
margin-top: 10px;
display: block;
}
@media only screen and (max-width:1024px) {
#access_txt{
width: 95%;
}
}

#deli_calendar{
max-width: 200px;
}

.gift_form_box p.calendar{
margin-left: 25px;
margin-top: 5px;
}

.no_kakunin{
padding: 1em;
width: 100%;
max-width: 350px;
}

.chuui{
background: #f9efef;
padding: 20px 30px;
margin-bottom: 50px;
}


.bnr{
width: 96%;
max-width: 1200px;
margin: 80px auto 0;
text-align: center;
}

.bnr a{
display: block;
margin-bottom: 20px;
}

.bnr img{
width: 100%;
max-width: 768px;
margin: 0 auto;
}

.bnr p{
margin-top: -10px;
text-align: center;
line-height: 150%;
}



/* ----------------------------------------
	#　お客様の声　2025.09.26
---------------------------------------- */
.voice_content_box{
max-width: 1400px;
width: 90%;
margin: 0 auto;
display: flex;
justify-content: space-between;
}
@media only screen and (max-width:767px) {
.voice_content_box{
flex-direction: column;
width: 100%;
}
}

.content_left_inner{
flex: 1;
}
@media only screen and (max-width:767px) {
.content_left_inner{
width: 100%;
}
}

.voice_box li{
padding: 30px;
}
.voice_box li:nth-child(odd){
background: #bd6600;
}

.voice_name{
font-size: 20px;
font-weight: bold;
color: #bd6600;
line-height: 1.5;
}

.voice_date{
font-weight: bold;
color: #bd6600;
margin-bottom: 10px;
}

.voice_txt > p{
margin: 0;
}

.voice_txt img{
width: 100%;
max-width: 400px;
}

.content_right_inner{
max-width: 250px;
width: 30%;
margin-left: 50px;
}
@media only screen and (max-width:1024px) {
.content_right_inner{
margin-left: 30px;
}
}
@media only screen and (max-width:767px) {
.content_right_inner{
max-width: 100%;
width: 100%;
margin-left: 0;
}
}

.archive_box h3{
background: #bd6600;
color: #fff;
font-size: 20px;
font-weight: bold;
text-align: center;
padding: 5px;
margin: 0;
}

.category_list > li{
border-bottom: 1px solid #d4d4d4;
}

.category_list > li a{
padding: 15px;
display: block;
color: #3E214C;
text-decoration: none;
}
@media only screen and (max-width:767px) {
.category_list > li a{
padding: 15px 5%;
}
}

.category_list > li > ul > li{
border-top: 1px dashed #d4d4d4;
}

.category_list > li > ul > li > a{
padding-left: 30px;

}
@media only screen and (max-width:767px) {
.category_list > li > ul > li > a{
padding-left: 10%;
}
}


/* --------------------------------------------

　　　　店舗案内　追加

-------------------------------------------- */
@media only screen and (max-width:767px) {
#store .contents-wrap table,
#store .contents-wrap tbody{
display: block;
width: 100% !important;
}

#store .contents-wrap tr{
display: flex;
width: 100%;
flex-wrap: wrap;
}
#store .contents-wrap td{
width: 100% !important;
}
#store .contents-wrap td:nth-last-of-type(-n+2){
width: 50% !important;
}
}



/* --------------------------------------------

　　　　トップページ　メッセージ追加

-------------------------------------------- */
.top-message h2{
font-size: 3.0rem;
}
.top-message .txt-blk{
width: 92%;
margin: 0 auto;
text-align: center;
}
