@charset "utf-8";
/*
Theme Name: company
Theme URI: http://sphere-links.co.jp/
Description: company
Version: 1.0
Author: sphere-links
Author URI: http://sphere-links.co.jp/
Tags: company
*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

body {
    line-height: 1;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

ul,ol {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}


/* change colours to suit your needs */

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}


/* change colours to suit your needs */

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}


/* change border colour to suit your needs */

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #cccccc;
    margin: 1em 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}




/*************************************************************

ここまでリセット

*************************************************************/
/*共通*/
/*全体のフォントサイズを指定、remでbodyに引っ張られないようにする*/
html {
	font-size:62.5%;
}

body {
	font-size: 1.6rem;
	line-height: normal;/*詰まりすぎを防ぐ*/
	color: #333;
	font-family:"Noto Sans JP","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serifs;
    
}
/*全体のフォントサイズを指定*/



a{
	color: #fa6e00;
	text-decoration: none;
	transition: 0.3s;
}


a:hover img{
  opacity: 0.8;
  filter: alpha(opacity=80);
  -ms-filter: "alpha(opacity=80)";
}

.clearfix:after{
  display: table;
  clear: both;
  content: "";
}

div{
	box-sizing: border-box;
}

img{
	max-width: 100%;
	vertical-align: bottom;
}
header,.c_nav{
	 box-shadow: 0 0 3px rgb(0 0 0 / 20%);
}

.header_top {
    display: flex;
    justify-content: space-between;
    background: #2d4052;
    padding: 10px 0;
	color: #fff;
}
.header_top .contents_box {
    display: flex;
    justify-content: space-between;
    width: 100%;
    max-width: 1220px;
}
.header_btn{
    display: flex;
    flex-wrap: wrap;
} 
.header_btn li{
    margin-right: 15px;
}
.header_btn .tel{
    background: #fff;
    box-sizing: border-box;
    border-radius: 10px;
    color:#589BD9;
    font-size: 1rem;
    padding: 5px 15px;
}
.c_nav .header_btn .tel{
    border: 1px solid #589BD9;
    box-sizing: border-box;
}
.header_btn .tel p{
    margin-bottom: 0;
}
.header_btn .tel span{
    font-size: 1.2rem;
}
.header_btn .mail {
    background: #28B4FF;
    box-sizing: border-box;
    border-radius: 10px;
    color: #fff;
    font-size: 1rem;
    padding: 5px 15px;
    text-align: center;
}
.header_btn .mail img {
    padding-left: 5px;
    display: inline-block;
    vertical-align: middle;
}
.header_btn .mail p{
    margin-bottom: 0;
}
.header_btn .mail a {
    color: #fff!important;
}

.logo {
    font-weight: normal;
    max-width: 400px;
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
}
.logo a{
	padding-right: 10px;
}
.logo h1 {
    display: inline-block;
    margin-bottom: 2px;
	font-size: 2.5rem;
}
.logo h1 .small {
    font-size: 1.2rem;
    display: block;
    line-height: 1.2;
}
.logo .right
.logo .right{
	flex-basis: 48%;
}

.header_box {
    max-width: 1500px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    padding: 10px 10px;
    align-items: center;
}
.header_box > .flex {
    max-width: 1200px;
    display: flex;
    justify-content: space-between;
    text-align: center;
    width: 98%;
    align-items: center;
    margin: 0 auto;
    padding: 0;
}
.header_box .flex p img{
	margin: 0 auto;
}

.header_box .right_box {
    max-width: 223px;
    flex-basis: 15%;
    height: 125px;
    text-align: center;
	color: #fff;
	background: #fa6e00;
	border:5px solid #ef3d01;
	box-sizing: border-box;
}
.header_box .right_box a {
    display: block;
    height: 100%;
    width: 100%;
    color: #fff;
    text-align: center;
    padding-top: 45px;
    box-sizing: border-box;
    font-weight: bold;
}

.header_box .right_box a span {
    background: url(images/header_icon4.webp) no-repeat left 0 top 3px;
    padding-left: 40px;
}

.header_box .right_box:hover{
	opacity: 0.8;
   	transition: 0.5s;
}
@media screen and (max-width: 1200px){
.header_box {
    width: 100%;
}
}

.center_top {
    display: flex;
    align-items: center;
	margin-bottom: 20px;
    justify-content: flex-end;
}

.c_nav .center_top {
    margin-bottom: 6px;
}

.center_top form {
    border: 1px solid #000;
    border-radius: 5px;
    margin-right: 20px;
    max-width: 300px;
    width: 38%;
    display: flex;
    justify-content: space-between;
}
.center_top form input{
	height: 37px;
	border: none;
	background: #fff;
	padding: 10px;
	box-sizing: border-box;
}
.center_top form input[type="text"]{
	border-radius: 5px 0 0 5px;
	width: calc(100% - 37px);
}
.center_top form input[type="image"]{
	background: #c8c8c8;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 0 5px 5px 0;

}
.center_top .search_cat {
    margin-right: 20px;
    max-width: 140px;
    width: 10%;
}
.center_top .search_cat a{
	text-align: center;
	padding: 10px 15px;
	font-size: 1.4rem;
	border-radius: 20px;
	border: 1px solid #000;
	color: #000;
}
.center_top .search_cat a:hover{
	border: 1px solid #fa6e00;
	background: #fa6e00;
	color: #fff;
}

.shop_btn{
	display: flex;
    align-items: center;
}
.shop_btn li{
	margin-right: 25px;
	position: relative;
}
.jp_en{
	display: flex;
	border: 1px solid #000;
	border-radius: 5px;
	box-sizing: border-box;
}
.jp_en li{
	width: 50%;
	box-sizing: border-box;
	border-right: 1px solid  #000;
}

.jp_en li:last-child{
	border-right: none;
}
.jp_en li a {
    box-sizing: border-box;
    padding: 7px 15px;
    display: block;
}
.jp_en li:first-child a{
	border-radius: 3px 0 0 3px;
}
.jp_en li:last-child a{
	border-radius: 0 3px 3px 0;
}
.jp_en li.active a{
	background: #2991e6;
	color: #fff;
}
.header_box .center_box {
    flex-basis: 73%;
    padding: 18px 0 0;
}

.en_page_btn{
    border: solid 1px #000;
    border-radius: 11px;
}
@media screen and (max-width: 850px){
.en_page_btn {
    max-width: 60px;
    position: absolute;
    top: 25px;
    right: 57px;
    text-align: center;
    border-radius: 7px;
    font-size: 1.2rem;
}
}


.en_page_btn a{
    display: block;
    padding: 7px 15px;
    border-radius:9px;
    background-color: #2991e6;
    color: #fff;
}
@media screen and (max-width: 768px){
    .en_page_btn a {
        padding: 4px 10px;
        border-radius: 6px;
    }    
}

.en_page_btn a:hover{
    background-color: #fff;
}

@media screen and (max-width: 1500px){
.center_top form {
    max-width: 200px;
}
.center_top .search_cat {
    margin-right: 10px;
}
.center_top form {
    margin-right: 10px;
}
.center_top .search_cat a {
    padding: 10px 10px;
    font-size: 1.2rem;
}
.header_box .center_box {
    padding: 15px 0 0;
}
}
@media screen and (max-width: 1300px){
.logo {
    max-width: 350px;
}
.logo h1 {
    font-size: 2rem;
}
.logo h1 .small {
    font-size: 1rem;
}
}
@media screen and (max-width: 1150px){
.logo a {
    padding-right: 10px;
    max-width: 90px;
}
.logo h1 .small {
    font-size: 1rem;
    display: block;
}
.logo h1 {
    font-size: 1.6rem;
}
.header_box .right_box a span {
    background: url(images/header_icon4.webp) no-repeat left 8px top 4px;
    font-size: 1.2rem;
    padding-top: 2px;
    padding-bottom: 2px;
    background-size: 20px auto;
}
.jp_en li a {
    padding: 5px 10px;
}
}
@media screen and (max-width: 900px){
.logo {
    max-width: 300px;
}
.center_top form {
    max-width: 120px;
}
}
/*ナビ*/

#g_nav {
    max-width: 100%;
    width: 100%;
    /*background: #c8c8c8;*/
    /*新しく変更してみた*/
    background-color: #333333;
}
#g_nav .nav_box{
    display: flex;
}
#g_nav .header_btn{
    display: none;
}
.right_box p {
    font-size: 1.1rem;
    margin-bottom: 0;
}
#g_nav ul.btn{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.c_nav_h1{
    background: #2d4052;
    color: #fff;
    padding: 6px 0;
}
.c_nav_h1 p {
    max-width: 1220px;
    padding: 0 10px;
    box-sizing: border-box;
    font-size: 1.2rem;
    margin: 0 auto;
    font-weight: bold;
}
.clone_nav .c_nav_h1{
    display: none;
}

#g_nav .clone_nav {
    width: 100%;
    overflow: hidden;
    max-width: 1320px;
    margin: 0 auto;
}

#g_nav ul, .c_nav .nav_box ul {
    list-style-type: none;
    margin: 0 auto;
    padding: 0;
    color: #fff;
    width: 100%;
    display: flex;

}
#g_nav ul.nav, .c_nav .nav_box ul.nav{
    max-width: 1200px;
}
#g_nav .nav_box ul li, .c_nav .nav_box ul li {
    float: left;
    position: relative;
    margin: 0;
    max-width: 20%;
    display: block;
    box-sizing: border-box;
    text-align: center;
    font-size: 1.4rem;
	width: 16.6%;
}
/*
#g_nav .nav_box ul li:before, .c_nav .nav_box ul li:before{
	content: "";
	position: absolute;
	top: 10px;
	left: 0;
	height: 20px;
	background: #656565;
	width: 1px;
}

#g_nav .nav_box ul.nav > li.mega > a:before, .c_nav .nav_box ul.nav > li.mega > a:before{
	content: "";
	position: absolute;
	top: 10px;
	left: 0;
	height: 20px;
	background: #656565;
	width: 1px;
}*/
#g_nav .nav_box ul.nav > li.mega a, .c_nav .nav_box ul.nav > li.mega a{
	position: relative;
}
/*
#g_nav .nav_box ul.nav > li:last-child:after, .c_nav .nav_box ul.nav > li:last-child:after{
	content: "";
	position: absolute;
	top: 10px;
	right: 0;
	height: 20px;
	background: #656565;
	width: 1px;
}*/


#g_nav .nav_box ul li.mega, .c_nav .nav_box ul li.mega{
	position: inherit;
}
#g_nav .nav_box ul.nav > li.mega:before{
	display: none;
}
/*#g_nav ul li:nth-child(2),.c_nav ul li:nth-child(2){
	width: 10%;
}*/
#g_nav ul.dropdown,.c_nav ul.dropdown,#g_nav ul.dropdown2,.c_nav ul.dropdown2{
        display: none;
        position: absolute;
        padding: 0;
		width: 100%;
		z-index: 30;
}
#g_nav ul.dropdown li, .c_nav ul.dropdown li,#g_nav ul.dropdown2 li, .c_nav ul.dropdown2 li {
    width: 100%;
    margin-bottom: 0;
    border: none;
    text-shadow: none;
    padding-left: 0;
    background: #009951;
    padding: 0;
    border-bottom: 1px solid #fff;
}

#g_nav ul.dropdown li a, .c_nav ul.dropdown li a,#g_nav ul.dropdown2 li a, .c_nav ul.dropdown2 li a{
   color: #fff;
	font-size: 1.2rem;
}

#g_nav .nav_box ul li a, .c_nav .nav_box ul li a, #g_nav .nav_box ul li span, .c_nav .nav_box ul li span {
    display: block;
    /*color: #000000;*/
    color: #fff;
    box-sizing: border-box;
    font-family: "Noto Sans JP","游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
    cursor: pointer;
    padding: 15px 10px 15px;
    font-weight: bold;
}


#g_nav .mega ul.dropdown{
	width: 100%;
	left: 0;
	display: block;
	justify-content: center;

}
#g_nav .mega ul.dropdown > li.bg {
    width: 100%;
    padding: 31px 0 20px 0;
    float: none;
    max-width: 100%;
    background: url(images/mega_bg.webp) repeat;
}
#g_nav .mega ul.dropdown .w1200 {
    max-width: 1200px;
    margin: 0 auto;
    display: block;
    padding: 0;
    float: none;
    border-right: none;
    background: none;
    color: #fff;
}

#g_nav .mega ul.dropdown li > div{
	flex-basis: 49%;
}

#g_nav .mega ul.dropdown li{
	border-bottom: none;
}
#g_nav .mega ul.dropdown li p.ttl {
    margin-bottom: 15px;
    font-weight: bold;
    color: #fff;
    text-align: left;
    line-height: 1;
}
#g_nav .mega ul.dropdown li p.ttl a {
    font-size: 2.3rem;
    padding: 10px 0 25px 0;
    line-height: 1;
    color: #ff2f2f;
}
#g_nav .mega ul.dropdown li p.ttl a:hover{
	text-decoration: underline;
	background: none;
	color: #fff;
}
#g_nav .mega ul.dropdown li ul.cat_list {
    display: flex;
    max-width: 100%;
    flex-wrap: wrap;
}
#g_nav .mega ul.dropdown li ul.cat_list li {
    padding: 1px 10px 11px 15px;
    position: relative;
    font-size: 2rem;
    text-align: left;
    border-bottom: none;
    background: none;
    float: none;
    max-width: 100%;
    line-height: 1.4;
}
#g_nav .mega ul.dropdown li ul.cat_list li:nth-child(odd){
	flex-basis: 30%;
}
#g_nav .mega ul.dropdown li ul.cat_list li:nth-child(even){
	flex-basis: 30%;
}
#g_nav .mega ul.dropdown li ul.cat_list li a {
    font-size: 1.7rem;
    color: #fff;
    height: auto;
    padding: 0;
}
#g_nav .mega ul.dropdown li ul.cat_list li a:hover {
    text-decoration: underline;
    background: none;
    border-radius: 0;
	color: #fff;
}
#g_nav .mega ul.dropdown li ul.cat_list li:before {
    position: absolute;
    content: "";
    width: 10px;
    height: 1px;
    box-sizing: border-box;
    background: #fff;
    left: 0;
    top: 13px;
}

#g_nav .mega ul.dropdown li ul.cat_list .dropdown2 li:before {
    width: 5px;
    height: 5px;
    top: 7px;
    border-radius: 50%;
}

#g_nav .mega ul.dropdown li ul.cat_list ul.children {
    background: #000;
    padding: 10px;
    box-sizing: border-box;
    /* border-radius: 10px; */
    max-height: 500px;
    overflow-y: scroll;
}
#g_nav .mega ul.dropdown li ul.cat_list ul.children.dropdown2{
	display: none;
}

#g_nav .mega ul.dropdown li ul.cat_list ul.children li{
	display: block;
}
#g_nav .mega ul.dropdown li ul.cat_list ul.children li a{
	font-size: 1.2rem;
}


#g_nav .mega ul.dropdown li .w1200 .flex{
	justify-content: flex-start;
}
#g_nav .mega ul.dropdown li .flex .nav_btn{
    color: #000;
    text-align: left;
	margin-bottom: 20px;
	flex-basis: 23%;
	margin-right: 2.6%;
}
#g_nav .mega ul.dropdown li .flex .nav_btn:nth-child(4n){
	margin-right: 0;
}
#g_nav .mega ul.dropdown li .flex .nav_btn a {
    background: #fff;
    border-radius: 5px;
    padding: 13px 10px;
    font-size: 1.6rem;
    color: #000;
    height: auto;
    text-align: center;
}

@media screen and (max-width: 1200px){
#g_nav .nav_box ul li a, .c_nav .nav_box ul li a, #g_nav .nav_box ul li span, .c_nav .nav_box ul li span {
    font-size: 1.2rem;
}
#g_nav .nav_box ul.nav > li:first-child > a:before, .c_nav .nav_box ul.nav > li:first-child > a:before,#g_nav .nav_box ul li:before, .c_nav .nav_box ul li:before,#g_nav .nav_box ul.nav > li:last-child:after, .c_nav .nav_box ul.nav > li:last-child:after {
    display: none;
}
#g_nav .nav_box ul li a, .c_nav .nav_box ul li a, #g_nav .nav_box ul li span, .c_nav .nav_box ul li span {
    font-size: 1.2rem;
}
#g_nav ul li:first-child a, .c_nav ul li:first-child a, #g_nav ul li:first-child span, .c_nav ul li:first-child span{
	border-left: none;
	}
	
#g_nav .mega ul.dropdown > li {
    padding: 40px 0;
}
#g_nav .mega ul.dropdown li .flex .nav_btn a {
    font-size: 1.4rem;
}
#g_nav .mega ul.dropdown li .flex{
    padding: 0 10px;
    box-sizing: border-box;
}
#g_nav .mega ul.dropdown li ul.cat_list li a {
    font-size: 1.4rem;
}
	
#g_nav .nav_box ul.nav > li.mega > a:before, .c_nav .nav_box ul.nav > li.mega > a:before{
	display: none;
}
	
}

@media screen and (max-width: 1000px){
#g_nav ul li a{
    font-size: 12px;
}
.c_nav #g_nav .nav_box ul li a, .c_nav #g_nav ul.header_btn li a{
    font-size: 10px!important;
}
}
#g_nav ul li a:hover, .c_nav ul li a:hover, #g_nav ul li span:hover, .c_nav ul li span:hover{
	color: #fa6e00;
}
#g_nav .nav li.mega.hover > a, .c_nav .nav li.mega.hover > a{
    color: #fff;
    opacity: 1;
    background: #000;
    border-radius: 5px 5px 0 0;
	background: url("images/mega_bg.webp") repeat;
}


#g_nav ul.dropdown a, .c_nav ul.dropdown a {
    height: 30px;
    padding: 6px 0 0px;
}
#sp_g_nav{
    display: none;
}

/*ナビクローン用*/
.c_nav #g_nav .header_btn {
    display: flex;
    flex-basis: 36%;
}
.c_nav #g_nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.c_nav {
    position: fixed;
    top: -190px;
    width: 100%;
    z-index: 1000;
    transition: top 0.25s;
    background-color: #fff;
    height: auto;
    box-sizing: border-box;
    max-width: 100%;
}
.c_nav #g_nav .nav_box ul li {
    font-size: 1.4rem;
}
.c_nav .nav_box {
    max-width: 1320px;
    margin: 0 auto;
    flex-basis: 100%;
}

@media screen and (max-width: 1200px){
.c_nav #g_nav .header_btn {
    flex-basis: 40%;
}
}

@media screen and (max-width: 1100px){
    .c_nav #g_nav .header_btn {
        flex-basis: 70%;
        padding-right: 50px;
        box-sizing: border-box;
    }
.logo {
    padding-right: 5px;
}
}
@media screen and (max-width: 900px){
    .c_nav #g_nav .header_btn {
        flex-basis: 75%;
    }
    }
@media screen and (max-width:850px){
	.c_nav {
		display: none;
	}
    .header_top {
        display: none;
    }
}

.visible {
    top: 0;
}


@media screen and (max-width: 1200px){
.c_nav .menu-trigger {
    right: 10px;
}
.sp_nav{
    right: 0;
}
}

@media screen and (max-width: 850px){
header {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 20;
    border-top: none;
}
.header_box,.h1_box {
    display: none;
}
	#sp_g_nav{
		display: block;
		z-index: 20;
		width: 100%;
	}
#sp_g_nav h1 {
    background: none;
    text-align: left;
    color: #000;
    font-size: 1rem;
    padding: 2px 0px 0px 9px;
    box-sizing: border-box;
}
	#g_nav{
		display: none;
	}
.sp_logo {
    position: absolute;
    top: 22px;
    left: 8px;
    text-align: left;
    width: 120px;
}
	
.sp_logo img {
    width: 100%;
    width: 180px;
}

.sp_logo span {
    font-weight: bold;
    padding-left: 10px;
    margin-top: 6px;
    font-size: 11px;
}
	.sp_to_top{
		position: absolute;
		top: 10px;
		right: 10px;
		width: 100px;
	}
.lg_m {
    text-align: right;
    height: 80px;
    background: #fff;
}
	/*メニューの動き*/
	.menu-trigger,
	.menu-trigger span{
	  display: inline-block;
	  transition: all .4s;
	  box-sizing: border-box;
	  cursor :pointer;
	}
    .menu-trigger {
        position: relative;
        width: 60px;
        height: 60px;
        z-index: 2;
    }
	.menu-trigger span{
	  position: absolute;
	  background: #000000;
	  width: 30px;
	  height: 2px;
	  left: 0;
	  right: 0;
	  margin: auto;
	}
.menu-trigger span:nth-of-type(1) {
    top: 20px;
}
	.menu-trigger span:nth-of-type(2){
	  top: 0;
	  bottom: 0;
	}
.menu-trigger span:nth-of-type(3) {
    bottom: 20px;
}
.menu-trigger.active span:nth-of-type(1){
	  -webkit-transform: translateY(15px) rotate(-45deg);
		transform: translateY(15px) rotate(-45deg);
		top: 14px;
}
.menu-trigger.active span:nth-of-type(2){
	  opacity: 0;
	}
	.menu-trigger.active span:nth-of-type(3){
	  -webkit-transform: translateY(-9px) rotate(45deg);
		transform: translateY(-9px) rotate(45deg);
	}
	/*メニューの動き END*/

#sp_g_nav .sp_nav > ul {
    background-color: #000;
    opacity: 0.9;
    display: block;
    padding-bottom: 80px;
}
	#sp_g_nav .sp_nav ul.dropdown{
		border-top: 1px solid #fff;
	}
	.sp_nav{
	  display: none;
	  position: absolute;
	  top: 70;
	  width: 100%;
	z-index: 3;
    height: calc( 100vh - 60px );
    overflow-y: scroll;
	}
	#sp_g_nav .sp_nav li{
		text-align:center;
		width: 100%;
		border-bottom: solid 1px #fff;
		position: relative;
	}
    
#sp_g_nav .sp_nav li span.arrow_icon {
    top: 18px;
    right: 26px;
    width: 15px;
    height: 15px;
    content: "";
    background: url(images/sp_arrow.webp) no-repeat center top;
	position: absolute;
}
#sp_g_nav .sp_nav > ul > li > a, #sp_g_nav .sp_nav > ul > li > span {
	position: relative;
    display: block;
    padding: 10px 5px;
    color: #fff;
    font-size: 1.2rem;
    width: 90%;
}
#sp_g_nav .sp_nav > ul > li.li_arrow:after {
    content: "＋";
    font-size: 1.6rem;
    font-weight: bold;
    position: absolute;
    right: 12px;
    top: 5px;
    color: #fff;
    width: 30px;
    height: 30px;
    z-index: 10000;
}
#sp_g_nav .sp_nav > ul > li.li_arrow.open:after {
    content: "−";
    right: 15px;
    /* top: -2px; */
    color: #fff;
}
	
.sp_nav li.bg {
    display: block;
    justify-content: center;
    background: url(images/mega_bg.webp) repeat;
    opacity: 1;
    width: 100%;
    margin: 0 auto;
    padding: 10px;
	box-sizing: border-box;
}
#sp_g_nav .mega ul.dropdown li{
	color: #fff;
}
#sp_g_nav .mega ul.dropdown li a{
		color: #fff;
}
#sp_g_nav .mega ul.dropdown li p.ttl {
    margin-bottom: 10px;
    font-size: 2rem;
    font-weight: bold;
    color: #fff;
    text-align: left;
}
#sp_g_nav .mega ul.dropdown li p.ttl a{
	font-size: 2rem;
}
#sp_g_nav .mega ul.dropdown li p.ttl a:hover{
	text-decoration: underline;
	background: none;
}
#sp_g_nav .mega ul.dropdown li ul.cat_list {
    display: flex;
    max-width: 900px;
    flex-wrap: wrap;
	margin-bottom: 30px;
}
#sp_g_nav .mega ul.dropdown li ul.cat_list li {
    padding: 0px 0 2px 15px;
    position: relative;
    font-size: 2rem;
    text-align: left;
    border-bottom: none;
    background: none;
    float: none;
    max-width: 100%;
}
#sp_g_nav .mega ul.dropdown li ul.cat_list li a {
    font-size: 1.2rem;
}
#sp_g_nav .mega ul.dropdown li ul.cat_list li a:hover {
    text-decoration: underline;
    background: none;
    border-radius: 0;
}
#sp_g_nav .mega ul.dropdown li ul.cat_list li:before {
    position: absolute;
    content: "";
    width: 8px;
    height: 1px;
    box-sizing: border-box;
    background: #fff;
    left: 0;
    top: 19px;
}
#sp_g_nav .mega ul.dropdown li .flex .nav_btn{
    color: #000;
    text-align: left;
	margin-bottom: 20px;
	flex-basis: 24%;
}
#sp_g_nav .mega ul.dropdown li .flex .nav_btn a {
    background: #fff;
    border-radius: 5px;
    padding: 10px;
    font-size: 1.4rem;
    color: #000;
    height: auto;
    text-align: center;
    display: block;
    width: 100%;
    box-sizing: border-box;
}
#sp_g_nav .mega ul.dropdown div + .flex{
	display: flex;
	flex-wrap: wrap;
}
#sp_g_nav .mega ul.dropdown div + .flex p.nav_btn{
	flex-basis: 49%;
	margin-bottom: 10px;
	margin-right: 2%;
}
	#sp_g_nav .mega ul.dropdown div + .flex p.nav_btn:nth-child(even){
		margin-right: 0;
	}

	.sp_nav span.txt_en{
		display: none;
	}
#sp_g_nav .sp_nav li.search,#sp_g_nav .sp_nav li.search_btn{
		border-bottom: none;
	}
li.search form {
    border: 1px solid #000;
    border-radius: 5px;
    margin-right: 20px;
    max-width: 400px;
    width: 95%;
    display: flex;
    justify-content: space-between;
    margin: 10px auto;
    box-sizing: border-box;
}
li.search form input{
	height: 37px;
	border: none;
	background: #fff;
	padding: 10px;
	box-sizing: border-box;
}
li.search form input[type="text"]{
	border-radius: 5px 0 0 5px;
	width: calc(100% - 37px);
}
li.search form input[type="image"]{
	background: #c8c8c8;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 0 5px 5px 0;
}
li.search_btn a {
    text-align: center;
    padding: 10px 20px;
    font-size: 1.4rem;
    border-radius: 20px;
    border: 1px solid #000;
    max-width: 180px;
    margin-left: 10px;
    background: #fff;
    color: #000!important;
    text-align: center;
    margin: 0 auto;
}
.jp_en {
    max-width: 80px;
    position: absolute;
    top: 30px;
    right: 60px;
    text-align: center;
}
.jp_en li a {
    box-sizing: border-box;
    padding: 5px 5px;
    display: block;
}
.shop_btn {
    display: flex;
    max-width: 100px;
    position: absolute;
    right: 120px;
    top: 35px;
}
.shop_btn li {
    margin-right: 10px;
}
}


/*トップ-コンテンツ*/

a:hover{
	color: #fa6e00;
	opacity: 0.8;
}
a:hover img{
	transition: 0.5s;
}
.mainimage {
    display: none;
    justify-content: space-between;
    background: #141414;
    max-width: 1479px;
    margin: 0 auto;
}
.mainimage_new {
    display: flex;
    justify-content: center;
    max-width: 1479px;
    margin: 0 auto;
}
.mainimage_new img {
    width:100%;
}
@media screen and (max-width: 850px) {
.mainimage_new {
    display: none;
}
}
.mainimage > div{
	/*width: 50%;*/
}
.mainimage > .main_left img,.main_right .flex img{
	width: 100%;
}
.mainimage > .main_left .main_slick1 img,.mainimage > .main_right .main_slick2 img,.mainimage > .main_right .main_slick3 img{
	width: 100%;
}

.main_slick1 > li:not(:first-child),.main_slick2 > li:not(:first-child),.main_slick3 > li:not(:first-child),
.main_bn > li:not(:first-child){
    display: none;
}

.main_right .flex {
    justify-content: space-around;
    background: #141414;
    padding: 8px 0;
}
.main_right .flex .main_slick2,.main_right .flex .main_slick3{
	display: block;
	width: 49%;
}
.news_box{
    display: block;
    max-width: 1220px;
    margin: 40px auto 0;
	box-sizing: border-box;
	padding:0 10px;
}
.news_box h2{
    font-size: 1.6rem;
	font-weight:bold;
    display:block;
	background-color:#000;
	padding:8px 25px;
	color:#fff;
	letter-spacing:5px;
	margin: 0 auto;
		border:1px solid #000;
}
.news_box .news_contents{
    display: block;
	padding:25px 25px;
	margin:0 auto;
	text-align:left;
		border:1px solid #000;
}
ul.news{
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
ul.news li span.day{
		color:#000;
	margin-right:20px;
	font-size:14px;
}
ul.news li {
    box-sizing: border-box;
	display: flex;
	align-items: center;
	position: relative;
	font-size: 1.3rem;
    margin-right: 15px;
}
ul.news li a {
    color: #333333;
    text-decoration: none;
    position: relative;
    display: block;
    margin-left: 20px;
    padding-right: 15px;
	font-weight:bold;
}
ul.news li a:hover{
	text-decoration: underline;
}
ul.news li a:before{
    position: absolute;
    content: "";
    width: 4px;
    height: 4px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    right: 0px;
    top: 8px;
}
@media screen and (max-width: 850px) {
.news_box{
    margin: 30px auto 0;
	padding:0 30px;
}
.news_box h2{
    font-size: 1.4rem;
	padding:5px 20px;
}
.news_box .news_contents{
	padding:20px 20px;
}  
ul.news li{
    display: block;
}
ul.news li a {
margin-top: 10px;
}
}
.main_bn_box {
    max-width: 50vw;
    margin: 0 auto;
	 padding-top: 8px;
}

.main_bn_box.news_none {
    padding-top: 40px;
}

ul.main_bn{
	margin: 0 auto;
}
ul.main_bn li{
	position: relative;
	margin: 0 25px;
}
ul.main_bn li img{
	width: 100%;
}

ul.main_bn .prev-arrow {
    left: 9%;
    top: 50%;
    position: absolute;
    z-index: 10;
    margin-top: -17px;
    cursor: pointer;
}

ul.main_bn .next-arrow {
    right: 9%;
    top: 50%;
    margin-top: -17px;
    position: absolute;
    z-index: 10;
    cursor: pointer;
}

@media screen and (max-width: 2000px){
ul.main_bn .prev-arrow {
    left: 8.5%;
}

ul.main_bn .next-arrow {
    right: 8.5%;
}

}



#contents1 {
    padding-top: 50px;
    padding-bottom: 100px;
}
ul.top_slide {
    display: flex;
    justify-content: space-between;
    text-align: center;
    padding-bottom: 150px;
    flex-wrap: wrap;
}
ul.top_slide li{
	flex-basis: 30%;
	max-width: 360px;
	margin: 0 25px;
	position: relative;
}
ul.top_slide li .rank_icon{
	position: absolute;
	top: 4px;
	right: 13px;
}
ul.top_slide .photo{
	margin: 0 auto 10px;
}

ul.top_slide .photo a {
    text-align: center;
    width: auto;
    display: block;
    height: 350px;
    transition: none;
}
ul.top_slide li a{
	color: #000;
}
ul.top_slide li a:hover {
    opacity: 0.8;
    color: #fa6e00;
}
ul.top_slide .prev-arrow {
    left: 28%;
    bottom: 95px;
    position: absolute;
    z-index: 10;
    margin-top: -17px;
    cursor: pointer;
}
ul.top_slide .next-arrow {
    right: 28%;
    bottom: 95px;
    margin-top: -17px;
    position: absolute;
    z-index: 10;
    cursor: pointer;
}

.slide-dots {
    width: 100%;
    padding: 0;
    text-align: center;
    list-style: none!important;
    position: absolute;
    bottom: 100px;
    display: flex;
    max-width: 300px;
    margin: 0 auto!important;
    left: 0;
    right: 0;
}
.slide-dots li {
    display: inline-block;
    width: calc(25% - 8px); /* プログレスバーの横幅はスライドの枚数に合わせて調整してください */
    margin: 0!important;
  }

.slide-dots button {
    position: relative;
    width: 100%;
    height: 1px;
    border: 0;
    background-color: #ccc;
    font-size: 0;
}

.slide-dots li.slick-active button{
    height: 2px;
	background-color: #969696;
}

.slide-dots:after {
      position: absolute;
      top: 0;
      left: 0;
      content: '';
      display: block;
      width: 0%;
      height: 100%;
    }

.tag_box {
    background: #ebf5ff;
    padding: 20px 20px 10px;
    box-sizing: border-box;
}
.tag_box ul {
    display: flex;
    margin: 0 auto;
    flex-wrap: wrap;
    max-width: 800px;
}
.tag_box ul  li {
    margin-right: 5px;
    margin-left: 5px;
    margin-bottom: 12px;
}
.tag_box ul  li a {
    padding: 5px 8px;
    box-sizing: border-box;
    color: #fff;
    border-radius: 0;
    display: inline-block;
    cursor: pointer;
    border: 1px solid #0064b4;
    background: #fff;
    color: #0064b4;
	border-radius: 5px;
}
.tag_box ul  li a:hover {
    background: #0064b4;
	color: #fff;
	opacity: 1;
}

#contents2 .tag_box {
    background: #fff0f5;
}
#contents2 .tag_box ul  li a {
    border: 1px solid #f03232;
    color: #f03232;
}
#contents2  .tag_box ul  li a:hover {
    background: #f03232;
	color: #fff;
}

#contents3 .tag_box {
    background: #fef2e2;
}
#contents3 .tag_box ul  li a {
    border: 1px solid #f08c00;
    color: #f08c00;
}
#contents3  .tag_box ul  li a:hover {
    background: #f08c00;
	color: #fff;
}

#contents2, #contents3{
    padding-bottom: 100px;
}


#contents4 .bn_box{
	display: flex;
	flex-wrap: wrap;
}

#contents4 .bn_box li{
	flex-basis: 32%;
	margin-right: 2%;
	margin-bottom: 30px;
}

#contents4 .bn_box li:nth-child(3n){
	margin-right: 0;
}

#contents4 .bn_box li img{
    border: solid 1px #e0e0e0;
}


.link_btn {
    display: block;
    text-align: center;
    margin: 0 auto 30px;
    width: 100%;
}
.link_btn a {
    display: block;
    position: relative;
    color: #0064b4;
    padding: 5px;
    font-size: 1.4rem;
    border-radius: 5px;
    background: #c7ddef;
	max-width: 230px;
}
.link_btn a:hover{
	background: #e4eef7;
}

.sp{
	display: none;
}



@media screen and (max-width: 1300px){
.main_bn_box {
    padding-top: 10px;
}
}
@media screen and (max-width: 1280px){
.main_bn_box {
    padding-top: 2px;
}
.main_bn_box.news_none {
    padding-top: 30px;
}
}


@media screen and (max-width: 1150px){
/*ul.main_bn li {
    max-width: 300px;
}*/
}


@media screen and (max-width: 850px){
	
body {
    font-size: 1.4rem;
}
	
	.sp{
	display: block!important;
}
	.pc{
		display: none!important;
	}
	
    .contents_box {
        padding: 0 20px;
    }

.mainimage {
    display: block;
    margin-top: 80px;
    height: auto;
    background-size: cover;
    background: none;
}
	
.mainimage .main_left {
    display: flex;
    width: 100%;
}
.mainimage > div{
	/*width: 100%;*/
}
.mainimage .main_slick1 {
    width: 66.5%;
}
	
.mainimage .main_left > a.sp{
    width: 66.7%;
    display: block;
}
.mainimage .main_left .sp_ah{
    width: 33.3%;
}
.main_bn_box {
    max-width: 100%;
    margin: 0 auto;
    padding-top: 20px;
    padding-bottom: 20px;
	background: #141414;
	display:none;
}
ul.main_bn li {
    max-width: 80%;
}
ul.news li a {
    color: #333333;
    margin-left: 0;
}
#contents1 {
    padding-bottom: 50px;
}
#contents1 ul.column2 > li {
    margin-bottom: 20px;
}
#contents1 ul.link_icon li {
    margin-right: 8px;
}
ul.top_slide {
    padding-bottom: 80px;
}
ul.top_slide .next-arrow {
    bottom: 70px;
	right: 36%;
}
ul.top_slide .prev-arrow {
    bottom: 70px;
	left: 36%;
}
.slide-dots {
    bottom: 40px;
}
#contents2, #contents3 {
    padding-bottom: 50px;
}

	
ul.top_slide .photo a {
    height: 300px;
}

}

@media screen and (max-width: 500px){
    .mainimage .main_slick1{
        width: 100%;
    }
    
    .slick-slide{
        margin: 0 5px!important;
    }
    
}


@media screen and (max-width: 768px){
ul.top_slide .photo a {
    height: 200px;
}
}

@media screen and (max-width: 600px){
#contents4 .bn_box li {
    flex-basis: 49%;
    margin-right: 2%;
    margin-bottom: 15px;
}
#contents4 .bn_box li:nth-child(3n) {
    margin-right:2%;
}
#contents4 .bn_box li:nth-child(even){
    margin-right: 0;	
}
ul.top_slide .photo a {
    height: 300px;
}

}

.contents_box {
    max-width: 1220px;
    margin: 0 auto;
    padding: 0 10px;
    position: relative;
}

.contents_box p {
    margin-bottom: 20px;
    line-height: 1.6;
    word-break: break-all;
}

.flex{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flex.column2 div, .flex.column2 li {
    flex-basis: 49%;
    margin: 0 auto 20px;
}
.flex.column3 div,.flex.column3 li{
	flex-basis: 32%;
}

.flex.column3 li{
    margin-bottom: 20px;
    text-align: center;
}
.flex.column4 div,.flex.column4 li{
	flex-basis: 23%;
}

.flex.column5 div, .flex.column5 li {
    flex-basis: 18%;
    margin-bottom: 20px;
}

.flex > .img{
	flex-basis: 40%;
	text-align: center;
	align-items: center;
}
.flex > .txt{
	flex-basis: 58%;
}
p.catch {
    font-size: 26px;
    margin-bottom: 40px!important;
    text-align: center;
    font-weight: bold;
}
h2 {
    font-size: 2.5rem;
    margin: 0 auto 35px;
    color: #000000;
    text-align: left;
    letter-spacing: 0.05em;
    position: relative;
    font-weight: normal;
	padding-bottom: 10px;
	border-bottom: 1px solid #000;
}
#main.main_top h2{
	font-size: 5rem;
}

h2 .small {
    font-size: 2.5rem;
    padding-left: 20px;
}
.lower_header {
    background-image: url("images/title_background.jpg");
    background-repeat: repeat;
    background-size: auto;
    margin-bottom: 20px;
    padding: 60px 10px;
    box-sizing: border-box;
    text-align: center;
}

.lower_header.item_single_header{
	display: none;
}

.lower_header.item_lower_header {
    background: url(images/lower_header_lefty.webp) no-repeat center top;
    background-size: cover;
    padding: 20px 0;
}
.lower_header.item_lower_header.ac{
	background: url("images/lower_header_accordion.webp") no-repeat center top;
	background-size: cover;
}
.lower_header.item_lower_header.ha{
	background: url("images/lower_header_harmonica.webp") no-repeat center top;
	background-size: cover;
}


.lower_header h2 {
    color: #fff;
    border-bottom: none;
    margin: 0;
    padding: 0;
    font-size: 3rem;
    max-width: 1200px;
    margin: 0 auto;
    text-align: center;
	padding: 0 20px;
}
.lower_header.item_lower_header h2{
	font-size: 2.6rem;
	text-align: left;
}
.lower_header.item_lower_header h2 .big {
    font-size: 7rem;
    font-weight: bold;
    letter-spacing: 0.05em;
    font-family: 'Oswald', sans-serif;
}
h3 {
    font-size: 2.4rem;
    margin-bottom: 20px;
    box-sizing: border-box;
}
h4 {
    font-size: 1.8rem;
    margin-bottom: 10px;
    border-bottom: none;
    padding: 0;
    box-sizing: border-box;
}
table{
	width: 100%;
	margin-bottom: 20px;
}
table.table1 th {
    width: 25%;
    color: #000;
    border-bottom: solid 1px #ccc;
    padding: 15px 5px;
    text-align: left;
	line-height: 1.8;
}
table.table1 td{
	border-bottom: solid 1px #ccc;
	text-align: left;
	padding: 15px 5px;
	vertical-align: middle;
	color: #000;
	line-height: 1.8;
}
table.table2 td, table.table2 th {
    border: 1px solid #ccc;
    padding: 8px 10px;
    line-height: 1.8;
    background: #fff;
    text-align: left;
    vertical-align: middle;
}
table.table2 th {
    background: #ddd;
    color: #333;
    font-weight: normal;
    width: 20%;
}
table.table2.mw500{
	max-width: 500px;
}
table.table2.mw500 th,table.table2.mw500 td{
	text-align: center;
}

.color_blue{
	color: #0064b4;
}
.color_red{
	color: #f03232;
}

@media screen and (max-width: 1000px){
.lower_header.item_lower_header h2 .big {
    font-size: 5rem;
}
}

@media screen and (max-width: 850px){
.lower_header {
    margin-top: 80px;
    padding: 15px 10px;
}
.lower_header.item_single_header{
	display: block;
}
.lower_header.item_lower_header h2 .big {
    font-size: 4rem;
}
.lower_header.item_lower_header {
    background: url(images/lower_header_lefty.webp) no-repeat center top;
    background-size: cover;
    padding: 40px 0;
    background-position: center left 26%!important;
}
.lower_header.item_lower_header h2 {
    font-size: 1.6rem;
    max-width: 96%;
    margin: 0 auto;
}
}

@media screen and (max-width: 600px){
h2 {
        font-size: 2rem;
}
.lower_header h2 {
    font-size: 2rem;
}
    #main.main_top h2 {
        font-size: 2.8rem;
    }
	
	h2 .small {
    font-size: 1.8rem;
    padding-left: 15px;
}
	h3{
		font-size: 2.2rem;
	}
	

	
}

span[id]:not([href]){
    margin-top:-100px; 
    padding-top:100px; 
	display: inline-block; 
	vertical-align: top;
	width: 0;
	height: 0;
}
span#reply-title {
    margin-top: 0!important;
    padding-top: 0!important;
    display: block;
    width: auto;
    height: auto;
    margin-bottom: 15px;
}

.center{
	text-align: center;
}

br.sp{
    display: none;
}

#main {
    margin: 0 auto;
    box-sizing: border-box;
    /* background: url(images/bg_wrap.webp) repeat center top; */
}



@media screen and (max-width: 850px){

br.sp{
    display: inline;
}

#main {
        display: block;
}
#contents {
        width: 100%;
        max-width: 100%;
}
.flex{
    display: block;
}
.inq_btn a {
    font-size: 25px;
    max-width: 480px;
    margin: 0 auto;
    padding: 20px 5px 20px;
}
.flex > .img {
    margin: 0 auto 20px;
}
span[id]:not([href]){
    margin-top:-60px; 
    padding-top:60px; 
}

	
#contents1 .flex > .img {
    margin: 0 auto 20px;
    max-width: 250px;
}
#contents1 p.p2{
		margin: 0 auto 20px;
		max-width: 250px;
		text-align: center;
}
#contents1 .column3 {
    align-items: flex-end;
    margin-top: 0;
    max-width: 300px;
    margin: 0 auto;
}
ul.news li {
    border-bottom:1px #000 dotted;
	padding-bottom: 10px;
    margin-bottom: 10px!important;
}
	ul.news li:last-child {
    border-bottom:none;
}
ul.news li span.day{
		color:#000;
	margin-right:20px;
	font-size:13px;
}
ul.news span.cat {
    margin-right: 10px;
}
ul.news span.member_icon {
    margin-left: 10px;
}

}

@media screen and (max-width: 600px){
	
ul.main_bn .next-arrow {
    right: 6.5%;
    margin-top: -12px;
}
ul.main_bn .prev-arrow {
    left: 6.5%;
    margin-top: -12px;
}
	
 table.table2 td, table.table2 th {
        padding: 5px;
        font-size: 12px;
}
table.table1 th,table.table1 td{
    font-size: 12px;
}

}

/* フッター */
footer {
    background: #000;
    color: #fff;
    padding: 60px 0;
    margin-top: 50px;
}
.footer_box {
    box-sizing: border-box;
    margin-bottom: 0;
}
.footer_box .logo{
    margin-bottom: 30px;
}

.footer_box .flex .footer_box1 {
    flex-basis: 35%;
}
.footer_box .flex .footer_box1 p.footer_logo{
	margin-bottom: 10px;
}
.footer_box .flex .footer_box1 p.small {
    font-size: 1.2rem;
    margin-bottom: 10px;
}
.footer_box .flex .footer_box1 p.footer_p {
    font-size: 1.4rem;
    line-height: 2;
}

.footer_box .flex .nav_box {
    flex-basis: 60%;
    display: flex;
}
.footer_box .flex .nav_box a{
	color: #fff;
}
footer a:hover{
	text-decoration: underline;
}
footer .copy {
    text-align: left;
    color: #fff;
    font-size: 1.4rem;
    margin-bottom: 0;
}
footer .copy p{
    margin-bottom: 0;
}
footer .btn_box{
    max-width: 100%;
    margin-bottom: 30px;
}
footer .nav_box > div{
   display: flex;
   flex-wrap: wrap;
}
footer .nav_box > div.last{
    margin-bottom: 30px;
}
footer .nav_box > div.last:after {
    display: block;
    content:"";
    width: 24%;
    max-width: 200px;
    }
footer .nav_box > div > div{
    flex-basis: 24%;
    max-width: 200px;
}

footer .nav_box ul {
    margin-bottom: 10px;
    margin-right: 20px;
}
footer .nav_box ul:last-of-type{
	margin-right: 0;
}
footer .nav_box ul li, footer .pp ul li {
    padding: 0px 0 8px 15px;
    position: relative;
    font-size: 1.4rem;
}
footer .nav_box ul li:before,footer .pp ul li:before{
    position: absolute;
    content: "";
    width: 10px;
    height: 1px;
    box-sizing: border-box;
    background: #fff;
    left: 0;
    top: 10px;
}

footer .nav_box ul li.ttl {
    padding-left: 0;
}
footer .nav_box ul li.ttl:before{
	display: none;
}
footer .nav_box ul li.ttl a{
	font-size: 2rem;
	font-weight: bold;
}

footer .pp {
	margin-top: 10px;
    text-align: left;
    display: flex;
    align-items: baseline;
}
footer .pp .pp_right{
	margin-left: 50px;
}

footer .pp ul {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    margin-top: 30px;
}
footer .pp ul li {
    flex-basis: 31%;
	margin-bottom: 10px;
}	
footer .pp ul li a{
	color: #fff;
}

@media screen and (max-width: 850px){
footer {
    padding: 30px 0;
}
footer .nav_box ul {
    margin-bottom: 30px;
    margin-right: 0;
}
footer .pp ul {
    margin-top: 0;
}

 footer .nav_box > div {
        display: block;
        flex-wrap: wrap;
        width: 100%;
}
	
.footer_box .flex .nav_box {
    display: block;
}
	
footer .pp {
    display: flex;
    flex-direction: column-reverse;
    margin-top: 0;
}
footer .pp .pp_right {
    margin-left: 0;
}
footer .pp ul li {
	flex-basis: 100%;
    margin-bottom: 5px;
}
footer .pp .card_img{
	margin-bottom: 10px;
}
footer .copy {
    text-align: center;
    font-size: 1.2rem;
    margin-bottom: 0;
}
	
}
.sp_only{
	display: none;
}
@media screen and (max-width: 600px){
.sp_only {
    display: block;
    position: fixed;
    bottom: 0;
    transition: all 0.3s;
    z-index: 50;
    max-width: 400px;
    margin: 0 auto;
    text-align: center;
    left: 0;
    right: 0;
}

.sp_only.invisible{
		transform: translateY(60px);
	}
}

/* 下層 */

.bread_crumb {
    padding: 20px 10px 20px;
    color: #000;
    max-width: 1190px;
    margin: 0 auto;
}
.bread_crumb a{
	color: #f05340;
}

.under_wrap .contents_box p{
	line-height: 1.8;
}

.ul_check{
    margin-bottom: 40px;
}
.ul_check li {
    position: relative;
    display: block;
    margin:0 auto;
    padding: 0px 10px 10px 0;
    max-width: 600px;
    border-radius: 10px;
    font-size: 1.8rem;
    font-weight: bold;
}
  
  .ul_check span{
	padding-left:24px;
	position:relative;
}
.ul_check span:before,
.ul_check span:after{
	content:"";
	display:block;
	position:absolute;
}
.ul_check span:before {
    width: 18px;
    height: 18px;
    background: #f08c00;
    left: 0;
    top: 5px;
}
.ul_check span:after {
    border-left: 2px solid #fff;
    border-bottom: 2px solid #fff;
    width: 6px;
    height: 3px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    left: 5px;
    top: 10px;
}
ul.ul01{
    margin-bottom: 30px;
}
ul.ul01 li {
    padding: 0 0 5px 15px;
    position: relative;
}
ul.ul01 li:before {
    position: absolute;
    content: "";
    width: 7px;
    height: 7px;
    box-sizing: border-box;
    background: #0064b4;
    left: 0;
    top: 10px;
    border-radius: 50%;
}

ol.ol01{
    margin-bottom: 30px;
	list-style: decimal;
	list-style-position:inside;
}
ol.ol01 li {
    padding: 0 0 5px 0;
    position: relative;
}

.googlemap {
    height: 0;
    overflow: hidden;
    padding-bottom: 40%;
    position: relative;
	margin: 0 auto 10px;
}
.googlemap iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
 }

.gmap_panorama{
	max-width: 800px;
	margin: 0 auto;
}

.youtube {
    height: 0;
    overflow: hidden;
    padding-bottom: 37%;
    position: relative;
    max-width: 800px;
    margin: 0 auto 30px;
}
.youtube iframe {
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 100%;
 }
.mb0 {
	margin-bottom: 0 !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}




@media screen and (max-width: 600px){
.ul_check li {
    padding: 15px 10px 15px 10px;
    font-size: 14px;
}
.ul_check span:before {
    top: -1px;
}
.ul_check span:after {
    top: 5px;
}
.youtube {
    padding-bottom: 58%;
}
.googlemap {
    padding-bottom: 58%;
}
}

/* 記事 */

.pagination {
    text-align: center;
    margin-top: 30px;
    margin-bottom: 30px;
}
.pagination .page-numbers {
    width: 30px;
    height: 30px;
    border: 1px solid #ccc;
    display: inline-block;
    text-align: center;
    vertical-align: middle;
    font-size: 16px;
    box-sizing: border-box;
    padding: 1px 5px 0 5px;
    color: #59554e;
    margin: 0 2px 0 0;
	background: #fafafa;
		position: relative;
}
.pagination .page-numbers.prev,
.pagination .page-numbers.next{
	width: 50px;
}
.pagination .page-numbers:hover{
	text-decoration: none;
	opacity: 0.8;
}
.pagination .page-numbers.current{
	background: #0064b4;
	border: 1px solid #ccc;
	color: #fff;
}
.pagination .page-numbers span {
    max-width: 100%;
    position: absolute;
    top: 1px;
    left: 10px;
    vertical-align: bottom;
}
.pagination.pagination_top{
    display: flex;
    justify-content: flex-end;
    margin-bottom: 20px;
	display: none;
}
.pagination.pagination_top .prev{
	margin-right: 10px;
}

/* 検索 */

.search_box ul.top_slide li {
    flex-basis: 28%;
}
.search_box ul.top_slide {
    padding-bottom: 30px;
}
@media screen and (max-width: 600px){
.search_box ul.top_slide {
    padding-bottom: 50px;
    display: block;
}
}
/* 商品ページ */
.simplefavorite-button{
	margin-bottom: 30px;
}

.woocommerce ul.products li.product .price {
    color: #fa6e00;
	margin-top: 10px;
}
.woocommerce div.product p.price,
.woocommerce div.product span.price {
    color: #f03232;
    font-size: 2rem!important;
	font-weight:bold;
}

.woocommerce div.product p.price--normal,
.woocommerce div.product span.price--normal {
    font-size: 1.4rem!important;
}

.woocommerce div.product p.price--normal .naname,
.woocommerce div.product span.price--normal .naname{
  position: relative;
}
.woocommerce div.product p.price--normal .naname:before,
.woocommerce div.product span.price--normal .naname:before {
  position: absolute;
  content: "";
  display: block;
  transform: rotate(0);
  background-color:#fa6e00;
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
}



.woocommerce-Price-amount.amount bdi{
    font-size: 2rem!important;
}
@media screen and (max-width: 768px){
    .woocommerce-Price-amount.amount bdi{
        font-size: 1.8rem!important;
    }
}

.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt {
    background-color: #0064b4;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) #respond input#submit.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) button.button.alt:hover, .woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) input.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce #respond input#submit.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce a.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce button.button.alt:hover, :where(body:not(.woocommerce-block-theme-has-button-styles)) .woocommerce input.button.alt:hover {
    background-color: #2490e6;
}
.product_meta span{
	display: block;
}

.product_meta span>span{
    display: inline;
}

.product_meta a{
    color: #0064b4;
}

.product_meta a:hover{
    text-decoration: underline;
}


/*フェードイン*/
.fadein,.time-fadein,.time-fadein2{
	opacity: 0;
	transform: translate(0,40px);
	transition: all 800ms;
}
.fadein.scrollin,.time-fadein.scrollin,.time-fadein2.scrollin{
	opacity: 1;
	transform: translate(0,0);
}
.fadein.fadein_l,.time-fadein.fadein_l{
	transform: translate(-50px,0);
	transition: all 800ms;
	opacity: 0;
}
.fadein.fadein_l.scrollin,.time-fadein.fadein_l.scrollin{
	transform: translate(0,0);	
	opacity: 1;
}
.fadein.fadein_r.fadein,.time-fadein.fadein_r.fadein{
	transform: translate(50px,0);
	transition: all 800ms;
	opacity: 0;
}
.fadein.fadein_r.scrollin,.time-fadein.fadein_r.scrollin{
	transform: translate(0,0);	
	opacity: 1;
}

@media screen and (max-width:850px){
    /*タブレット以下は下からスライドに固定(横ずれを防ぐ為)*/
    .fadein,.time-fadein,.time-fadein2{
        transform: translate(0,40px)!important;
    }
    .fadein.scrollin,.time-fadein.scrollin,.time-fadein2.scrollin{
        opacity: 1;
        transform: translate(0,0)!important;
    }
}

@media screen and (max-width:850px){
    /*スマホの一番上のブロックはフェード解除*/
#contents1 .fadein{
    opacity: 1!important;
}
}

/* 商品一覧 */
.woocommerce ul.products {
    margin-bottom: 50px;
    align-items: stretch;
    display: flex;
    flex-wrap: wrap;
}
.woocommerce ul.products > li {
    display: flex;
    margin-bottom: 50px!important;
    justify-content: space-between;
    flex-wrap: wrap;

	position: relative;
}

.woocommerce ul.products .product.berocket_lgv_list{
    border-bottom: 1px solid #ccc;
    margin-bottom: 30px!important;
    padding-bottom: 30px;
	width: 100%!important;
}

.rank_list .woocommerce ul.products{
	display: block;
}

.rank_list .woocommerce ul.products > li{
	width: 22.05%!important;
	margin: 0 1.475% 50px 1.475%!important;
	display: block;
}

.woocommerce ul.products li .img {
    max-width: 250px;
    flex-basis: 21%;
	position: relative;
}

.woocommerce ul.products li .img a {
    text-align: center;
    width: auto;
    display: block;
    height: 250px;
    transition: none;
}

.woocommerce ul.products li .img .sale_icon {
    position: absolute;
    right: 70px;
    top: 10px;
}
.woocommerce ul.products li .img .new_icon{
	position: absolute;
	 right: 8px;
	top: 8px;
}
.woocommerce ul.products li .txt{
	flex-basis:77%;
}
.woocommerce ul.products ul.cat{
	display: flex;
}
.woocommerce ul.products ul.cat li{
	margin-right: 10px;
}
.woocommerce ul.products ul.cat li a {
    padding: 5px 8px;
    box-sizing: border-box;
    color: #fff;
    border-radius: 0;
    display: inline-block;
    cursor: pointer;
    border: 1px solid #0064b4;
    background: #fff;
    color: #0064b4;
    border-radius: 5px;
}
.woocommerce ul.products .box_top,.woocommerce ul.products .box_middle{
	display: flex;
	justify-content: space-between;
}

.woocommerce ul.products .box_top p.company{
	margin-bottom: 0;
	font-size: 2rem;
}
.woocommerce ul.products .box_middle p.ttl {
    margin-bottom: 0px;
    font-size: 2rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    font-weight: bold;
    margin-top: 10px;
}
.woocommerce ul.products .box_middle .flex p{
	margin-bottom: 0;
	margin-right: 30px;
}

.woocommerce ul.products .box_middle .flex p .red{
	color: #f03232;
display: inline-block;
}
.woocommerce ul.products .box_middle .flex p .big {
    font-size: 3rem;
    padding: 0 3px;
    font-weight: bold;
}
.woocommerce ul.products li.berocket_lgv_list .box_middle .flex p.kikaku {
    display: block;
    width: 100%;
}
.woocommerce ul.products li.berocket_lgv_list .box_middle {
    margin-bottom: 10px;
    align-items: flex-end;
}

.woocommerce ul.products li.berocket_lgv_list .box_middle .short-description-list {
    margin: 10px 0 0;
}
.woocommerce ul.products li.berocket_lgv_list .box_middle .short-description-list p{
	margin-bottom: 0;
}

.woocommerce ul.products .box_middle .flex{
	justify-content: flex-start;
}
.woocommerce ul.products .box_txt {
    border: 1px solid #e6e6e6;
    padding: 10px;
    margin-top: 10px;
}
.woocommerce ul.products .box_txt p{
	margin-bottom: 0;
  overflow: hidden;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}
.woocommerce ul.products .gridlist-buttonwrap button {
    background: url(images/cart_icon.webp) no-repeat left 13px top 10px #323232;
    color: #fff;
    padding: 10px 10px 10px 40px;
    box-sizing: border-box;
    border: none;
    border-radius: 0;
    font-size: 1.4rem;
    -webkit-appearance: none;
    border-radius: 0;
    width: 150px;
}

.single_add_to_cart_button.button{
    background: url(images/cart_icon.webp) no-repeat left 16px top 8px #ea441c!important;
    color: #fff;
    padding: 10px 10px 10px 40px!important;
    box-sizing: border-box;
    border: none;
    border-radius: 0!important;
    font-size: 1.8rem;
    -webkit-appearance: none;
    width: 180px;
}
.single_add_to_cart_button.button:hover{
	opacity: 0.8;
}



.woocommerce ul.products .gridlist-buttonwrap button:hover{
	opacity: 0.8;
}

.woocommerce ul.products .simplefavorite-button {
    margin-bottom: 0;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    border: none;
    -webkit-appearance: none;
    font-size: 2.5rem;
    vertical-align: middle;
    margin-right: 10px;
    cursor: pointer;
    box-sizing: border-box;
	text-align: center;
}
.woocommerce ul.products .simplefavorite-button:hover{
	opacity: 1;
}
.woocommerce ul.products .simplefavorite-button i{
    padding-top: 4px;
    display: inline-block;
	color: #fff!important;
}

.simplefavorite-button.active {
    opacity: 1;
}

.yith-wcwl-add-button {
    margin-bottom: 0;
}

.yith-wcwl-icon.fa{
    width: 40px;
    height: 40px;
    box-sizing: border-box;
    border-radius: 50%;
    background: #f55a5a;
    color: #fff;
    font-size: 2rem;
    text-align: center;
    padding-top: 10px;
	transition: 0.5s;
}
.yith-wcwl-add-button:hover .yith-wcwl-icon.fa{
	opacity: 0.8;
}

.woocommerce .woocommerce-breadcrumb {
    margin-bottom: 30px!important;
    color: #000;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 10px;
}





.woocommerce .woocommerce-breadcrumb a{
    color: #000;
}
.woocommerce .woocommerce-breadcrumb a:hover{
	text-decoration: underline;
}

.woocommerce ul.products li.berocket_lgv_grid {
    margin: 0 2% 50px 2%;
    display: block!important;
}

.woocommerce .product_main ul.products li.berocket_lgv_grid {
    width: 25%!important;
    border-right: 1px solid #ccc;
    box-sizing: border-box;
    margin: 0 0 20px;
    padding: 0 2% 30px;
    position: relative;
}
.woocommerce .product_main ul.products li.berocket_lgv_grid:before {
    content: "";
    position: absolute;
    bottom: -25px;
    left: 0px;
    width: calc(100% + 1px);
    height: 1px;
    background: #ccc;
    box-sizing: border-box;
}

.woocommerce .product_main ul.products li:nth-child(4n){
	border-right: none;
}

.woocommerce ul.products li.berocket_lgv_grid:nth-child(even){
	/*margin-right:0;*/
}

.woocommerce ul.products li.berocket_lgv_grid .img {
    max-width: 200px!important;
    width: 100%;
    flex-basis: 34.5%;
    position: relative;
    margin-bottom: 15px;
    margin: 0 auto 15px;
}
.woocommerce ul.products li.berocket_lgv_grid .img a {
    height: 200px;
}
.woocommerce ul.products li.berocket_lgv_grid .txt {
    flex-basis: 63%;
}
.woocommerce ul.products li.berocket_lgv_grid .box_txt{
	display: none;
}
.woocommerce ul.products li.berocket_lgv_grid .box_middle {
    display: block;
}
.woocommerce ul.products li.berocket_lgv_grid .box_middle p.ttl {
    font-size: 1.5rem;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
    overflow: hidden;
    font-weight: bold;
}
.woocommerce ul.products li.berocket_lgv_grid .box_middle .flex p .big {
    font-size: 1.8rem;
}
.woocommerce ul.products li.berocket_lgv_grid  .box_middle .flex p {
    margin-right: 15px;
}
.woocommerce ul.products li.berocket_lgv_grid .box_middle .flex p.price_p {
    display: block;
    width: 100%;
}
.woocommerce ul.products li.berocket_lgv_grid .box_top p.company {
    margin-bottom: 0;
    font-size: 1.6rem;
}
.woocommerce ul.products li.berocket_lgv_grid .simplefavorite-button {
    width: 30px;
    height: 30px;
    font-size: 1.8rem;
}
.woocommerce ul.products ul.cat {
    margin-bottom: 0;
}
.woocommerce ul.products li.berocket_lgv_grid ul.cat li a {
    font-size: 1.2rem;
}
.woocommerce ul.products li.berocket_lgv_grid .box_middle .flex {
    margin-bottom: 10px;
}
.woocommerce ul.products li.berocket_lgv_grid .gridlist-buttonwrap button {
    background: url(images/cart_icon.webp) no-repeat left 13px top 10px #323232;
    padding: 10px 10px 10px 40px;
    font-size: 1.4rem;
    max-width: 180px;
    width: 100%;
}
.woocommerce ul.products li .img .new_icon {
    max-width: 40px;
}
.woocommerce ul.products li .img .sale_icon{
	display: none;
}
.woocommerce ul.products li.sale .img .sale_icon {
	display: block;
    right: 55px;
    max-width: 80px;
}
.woocommerce ul.products li .img .movie_icon{
    position: absolute;
    top: 9px;
    left: 6px;
    max-width: 40px;
}
@media screen and (max-width: 850px){
.woocommerce ul.products li .img .movie_icon {
    max-width: 30px;
}
.woocommerce ul.products li .img .new_icon {
    max-width: 30px;
    top: 7px;
}
}
.berocket_lgv_widget .br_lgv_product_count_block {
    display: block!important;
    margin-bottom: 20px;
}
.br_lgv_product_count.text{
	margin-right: 10px;
}
.berocket_lgv_widget{
    float: right!important;
    padding: 0!important;
    margin-bottom: 30px;
}
.woocommerce .woocommerce-ordering select {
    padding: 10px!important;
}

.woocommerce ul.products li.berocket_lgv_grid .zaiko,
.woocommerce ul.products li.berocket_lgv_grid .kikaku,
.woocommerce ul.products li.berocket_lgv_grid .variable,
.woocommerce ul.products li.berocket_lgv_grid .gridlist-buttonwrap,
.woocommerce ul.products li.berocket_lgv_grid .short-description-list{
    display: none;
}
@media screen and (max-width: 850px){
    .woocommerce ul.products li.berocket_lgv_grid .zaiko,
    .woocommerce ul.products li.berocket_lgv_grid .kikaku,
    .woocommerce ul.products li.berocket_lgv_grid form{
        display: block;
    }    
}

.woocommerce ul.products li.berocket_lgv_grid .box_top {
    flex-wrap: wrap;
    flex-direction: column-reverse;
    position: absolute;
    /* bottom: 0; */
    /* margin-top: 10px; */
}
@media screen and (max-width: 850px){
    .woocommerce ul.products li.berocket_lgv_grid .box_top{
        position: inherit;
    }
}

.woocommerce ul.products li.berocket_lgv_grid .box_top div,
.woocommerce ul.products li.berocket_lgv_grid .box_top ul{
    width: 100%;
}
.yith-wcwl-add-to-wishlist {
    margin-top: 0;
}

a.berocket_lgv_button, .berocket_lgv_widget a.berocket_lgv_button, a.berocket_lgv_button_test, .lgv_admin_settings .lgv_toggle_next {
    width: 60px;
    height: 60px;
    line-height: 60px;
    color: #cbcbcb;
    outline: none;
    border-radius: 5px;
    box-shadow:none;
    border: 1px solid #cbcbcb;
    background: #f0f0f0;
    transition: all 0.1s linear;
    box-sizing: border-box!important;
}

.berocket_lgv_widget a.berocket_lgv_button.selected, a.berocket_lgv_button_test.selected, .lgv_admin_settings .lgv_toggle_next:active {
    border: 2px solid #cbcbcb;
    background: #f0f0f0;
    box-shadow:none;
}
.berocket_lgv_widget a.berocket_lgv_button:hover, a.berocket_lgv_button_test.hover, .lgv_admin_settings .lgv_toggle_next:hover {
    background: #f0f0f0;
	opacity: 0.8;
}

a.berocket_lgv_button .fa, .berocket_lgv_widget a.berocket_lgv_button .fa, a.berocket_lgv_button_test .fa, .lgv_admin_settings .lgv_toggle_next .fa {
    font-size: 3.5rem;
}
.berocket_lgv_button_grid{
	margin-right: 5px;
}

.woocommerce table.shop_table td.product-thumbnail {
    width: 15%;
}
.woocommerce form .form-row input.input-text, .woocommerce form .form-row textarea {
    padding: 10px;
    font-size: 1.6rem;
    box-sizing: border-box;
    border: 1px solid #aaa;
    border-radius: 4px;
}
.select2-container--default .select2-selection--single {
    background-color: #fff;
    border: 1px solid #aaa;
    border-radius: 4px;
    padding: 10px;
    height: 42px;
}

@media screen and (max-width:1200px){
.woocommerce ul.products .box_middle .flex p .big {
    font-size: 2.5rem;
}
}

@media screen and (max-width:850px){
.woocommerce ul.products > li {
    display: flex;
}
.woocommerce ul.products li .txt {
    flex-basis: 56%;
}
.woocommerce ul.products li .img a {
    height: 200px;
}
.woocommerce ul.products .box_middle {
    display: block;
    justify-content: space-between;
}
.woocommerce ul.products ul.cat li a {
    padding: 5px;
    font-size: 1.2rem;
}
.woocommerce ul.products li .img {
    margin: 0 auto 10px;
    flex-basis: 40%;
    max-width: 200px;
}
.woocommerce ul.products .box_middle .flex p .big {
    font-size: 2rem;
    padding: 0 3px;
    font-weight: bold;
}

.woocommerce ul.products .box_top p.company {
    font-size: 1.8rem;
}
.woocommerce ul.products .gridlist-buttonwrap {
    margin-top: 15px;
    position: absolute;
    bottom: 0;
    left: 5%;
    right: 0;
    text-align: center;
    width: 90%;
}
	
.woocommerce ul.products .product.berocket_lgv_list{
    border-bottom: 1px solid #ccc;
    margin-bottom: 20px!important;
    padding-bottom: 20px;
}
	
.woocommerce ul.products .product.berocket_lgv_list .gridlist-buttonwrap {
    position: relative;
    width: 100%;
    left: 0;
    text-align: left;
}
.woocommerce ul.products .product.berocket_lgv_list .yith-wcwl-add-to-wishlist {
    margin-top: 0;
}
.woocommerce ul.products .product.berocket_lgv_list .box_middle {
    margin-bottom: 10px;
}
.woocommerce ul.products .box_txt {
    margin-top: 0;
}		
.woocommerce ul.products .box_middle p.ttl {
    font-size: 1.6rem;
}
	
.woocommerce ul.products .box_middle ul.cat {
    margin-top: 5px;
    margin-bottom: 5px;
}
	
.yith-wcwl-icon.fa {
    width: 30px;
    height: 30px;
    padding-top: 8px;
    margin-right: 5px;
    font-size: 1.6rem;
}

.woocommerce ul.products .gridlist-buttonwrap button {
    background: url(images/cart_icon.webp) no-repeat left 13px top 11px #323232;
    font-size: 1.4rem;
}
.woocommerce ul.products .simplefavorite-button {
    font-size: 2rem;
}
span.favorites{
    position: relative;
}
.woocommerce ul.products .simplefavorite-button i {
    display: block;
    margin: 0 auto;
    padding: 0;
    position: absolute;
    top: 6px;
    left: 6px;
}
.woocommerce ul.products[class*=columns-] li.product:nth-child(2n), .woocommerce-page ul.products[class*=columns-] li.product:nth-child(2n) {
    float: none!important;
}
.woocommerce .woocommerce-result-count {
    margin: 0 0 20px!important;
}
.woocommerce ul.products li.berocket_lgv_grid {
    margin: 0 auto 50px auto;
    float: none!important;
    display: flex!important;
}
.woocommerce ul.products li.berocket_lgv_grid .txt {
    flex-basis: 100%;
}
	
.woocommerce .product_main ul.products li.berocket_lgv_grid {
    width: 49%!important;
    border-right: none;
    padding-bottom: 40px;
    display: block!important;
    position: relative;
    padding: 0 10px;
    margin-bottom: 40px!important;
    /*padding-bottom: 40px;*/
}
.woocommerce .product_main ul.products li.berocket_lgv_grid:before {
    bottom: -20px;
}
.woocommerce .product_main ul.products li.berocket_lgv_grid:after {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    right: 0;
    top: 0;
    background: #ccc;
    z-index: -1;
}
.woocommerce .product_main ul.products li.berocket_lgv_grid:nth-child(even):after{
	display: none;
}
.woocommerce ul.products li.berocket_lgv_grid .img {
    max-width: 180px!important;
    width: 100%;
    flex-basis: 100%;
}
.woocommerce ul.products li.berocket_lgv_grid .img a {
    height: 190px;
}
.woocommerce ul.products li.berocket_lgv_grid .box_top p.company {
    margin-bottom: 10px;
}
.woocommerce ul.products li.berocket_lgv_list .box_middle .short-description-list {
    display: none;
}
}

@media screen and (max-width:600px){
.woocommerce ul.products .box_top{
	display: block;
}
.woocommerce ul.products li .img{
	max-width: 160px;
}
.woocommerce ul.products li.berocket_lgv_grid .img a {
    height: 160px;
}
.woocommerce ul.products li .img a {
    height: 160px;
}
	
.woocommerce ul.products .product.berocket_lgv_list .img{
	max-width: 150px;
}
.woocommerce ul.products .product.berocket_lgv_list .img a {
    height: 150px;
}
.woocommerce ul.products .product.berocket_lgv_list .img a {
    height: 150px;
}
	
.rank_list .woocommerce ul.products li.berocket_lgv_grid {
    display: block!important;
}
.rank_list .woocommerce ul.products li.berocket_lgv_grid .gridlist-buttonwrap button {
    font-size: 1.1rem;
    width: 100%;
    max-width: 200px;
}
.rank_list .woocommerce ul.products li.berocket_lgv_grid .box_top div {
    width: 100%;
    font-size: 1.2rem;
}
.rank_list li.product.slick-active{
		position: relative;
}
.rank_list li.product.slick-active:after {
    position: absolute;
    content: "";
    width: 1px;
    height: 100%;
    right: -15px;
    top: 0;
    background: #ccc;
    z-index: -1;
}
	
.woocommerce ul.products .product.berocket_lgv_list .box_top {
    position: absolute;
    left: 10px;
    top: 160px;
    max-width: 150px;
}
.woocommerce ul.products .product.berocket_lgv_list .gridlist-buttonwrap {
    margin-top: 10px;
}
.woocommerce ul.products .box_middle .flex{
	margin-bottom: 5px;
}
.woocommerce ul.products .box_middle .flex p {
    margin-bottom: 10px!important;
}
.yith-wcwl-icon.fa {
    width: 25px;
    height: 25px;
    padding-top: 6px;
    margin-right: 5px;
    font-size: 1.4rem;
}
.woocommerce ul.products .box_middle .flex p .big {
    font-size: 1.8rem;
    padding: 0 3px;
}
.woocommerce ul.products li .txt {
    flex-basis: 50%;
}
.woocommerce ul.products .gridlist-buttonwrap button {
    font-size: 1.2rem;
}
}






/* 関連商品 */
.related.products ul.products{
	display: flex;
}
.related.products ul.products > li {
    width: 21%!important;
    margin: 0 2% 50px 2%!important;
    display: block!important;
	font-weight: normal;
}
.related.products ul.products li:nth-child(even){
	/*margin-right:0;*/
}

.related.products ul.products li.berocket_lgv_grid .box_top {
    flex-wrap: wrap;
    flex-direction: column-reverse;
}

.related.products ul.products li .img {
    /*max-width: 200px;*/
    width: 100%;
    flex-basis: 34.5%;
    position: relative;
    margin-bottom: 15px;
}
.related.products ul.products li .img a {
    height: 200px;
}
.related.products ul.products li .txt {
    flex-basis: 63%;
}
.related.products ul.products li .box_txt{
	display: none;
}
.related.products ul.products li .box_middle {
    display: block;
}
.related.products ul.products li .box_middle p.ttl {
    font-size: 1.8rem;
}
.related.products ul.products li .box_middle .flex p .big {
    font-size: 1.8rem;
}
.related.products ul.products li  .box_middle .flex p {
    margin-right: 15px;
}
.related.products ul.products li .box_top p.company {
    margin-bottom: 0;
    font-size: 1.6rem;
}
.related.products ul.products li .simplefavorite-button {
    width: 30px;
    height: 30px;
    font-size: 1.8rem;
}
.related.products ul.products ul.cat {
    margin-bottom: 0;
}
.related.products ul.products li ul.cat li a {
    font-size: 1.2rem;
}
.related.products ul.products li .box_middle .flex {
    margin-bottom: 10px;
}
.related.products ul.products li .gridlist-buttonwrap button {
    background: url(images/cart_icon.webp) no-repeat left 13px top 10px #323232;
    padding: 10px 10px 10px 40px;
    font-size: 1.4rem;
    width: 180px;
}
.related.products ul.products li .img .new_icon {
    max-width: 40px;
}
.related.products ul.products li .img .sale_icon {
    right: 55px;
    max-width: 80px;
}

ul.products li.product a {
    text-decoration: none;
    color: #000;
}


@media screen and (max-width:600px){
.related.products ul.products {
    flex-wrap: wrap;
}
.related.products ul.products > li {
    width: 48%!important;
    margin: 0 2% 50px 0!important;
}
.related.products ul.products > li:nth-child(even) {
    margin: 0 2% 50px 0!important;
}
}

/* カテゴリー検索 */

#search_popup {
    margin: 0 auto;
    position: relative;
    max-width: 800px;
    padding: 20px 15px;
    border: 1px solid #000000;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    border-radius: 4px;
    background: rgba(51, 51, 51, 0.8);
}
#search_popup input[type="submit"] {
    display: block;
    position: relative;
    color: #fff;
    padding: 10px;
    font-size: 1.6rem;
    border-radius: 0;
    font-weight: bold;
    background: #fff;
    transition: all 0.3s ease;
    margin: 20px auto 0;
    border: none;
    padding-left: 0;
    width: 100%;
    max-width: 200px;
    cursor: pointer;
    background: url(images/search_btn_img_w.webp) no-repeat right 40px top 13px, #555555;
    -webkit-appearance: none;
    letter-spacing: 0.05em;
    background-size: 18px auto;
    border: 1px solid #000;
}
#search_popup h3 {
    text-align: left;
    font-size: 1.6rem;
    margin-bottom: 0;
    color: #fff;
    margin-right: 0;
    width: 80px;
}
#search_popup select {
    height: 30px;
    box-sizing: border-box;
    margin-bottom: 0;
    border-radius: 0;
    padding: 5px;
    border: 1px solid #000;
    border-radius: 0;
    display: block;
    font-size: 1.6rem;
}
#search_popup select#product_cat_0,#search_popup select#product_cat_1,#search_popup select#product_cat_2{
	margin-bottom: 10px;
}
#search_popup select#product_cat_1,#search_popup select#product_cat_2{
	margin-left: 10px;
}
#search_popup .flex {
    justify-content: flex-start;
    align-items: center;
}
#search_popup .flex.ttl_flex {
    margin-bottom: 15px;
    color: #fff;
}
#search_popup input[type="text"] {
    -webkit-appearance: none;
    border-radius: 0;
    padding: 10px;
    margin: 0 5px;
	border: 1px solid #000;
	border-radius: 5px;
}
#search_popup input[type="text"]:first-child{
	margin-left: 0;
}
.mfp-wrap {
    z-index: 10000;
}
.mfp-close-btn-in .mfp-close {
    color: #FFFF03!important;
}
#search_popup .price_flex select{
    margin-bottom: 0;
    margin-right: 10px;
}

#search_popup .price_flex select[name="price_max"]{
    margin-left: 10px;
}

#search_popup input[type="text"]#textSearchInput2 {
    padding: 5px;
    margin: 0;
    border: none;
    border-radius: 0;
    font-size: 1.6rem;
    margin-bottom: 15px;
    box-sizing: border-box;
    width: 100%;
    max-width: 400px;
    border-bottom: none;
    background: url(images/search_btn_img.webp) no-repeat right 10px top 6px #fff;
    background-size: 16px auto;
    height: 30px;
}


@media screen and (max-width:768px){
#search_popup {
    padding: 40px 15px;
}
#search_popup .flex{
	display: flex;
}
#search_popup .flex.ttl_flex {
    margin-bottom: 6px;
}
#search_popup h3 {
    margin-bottom: 5px;
    width: 100%;
}
}

/*qa*/

.qa_wrap {
    list-style: none;
    max-width: 900px;
    margin: 0 auto 50px;
}

.qa_wrap li {
    background: none;
    padding: 0;
    box-sizing: border-box;
    margin-bottom: 20px;
    position: relative;
    border: 1px solid #000;
}
.qa_wrap h4 {
    font-size: 1.8rem;
    padding: 35px 70px 40px 85px;
    position: relative;
    border-bottom: none;
    margin-bottom: 0;
    box-sizing: border-box;
    background: #fff;
    color: #333333;
    cursor: pointer;
    border-radius: 10px;
    font-weight: normal;
    cursor: pointer;
    font-weight: bold;
}

.qa_wrap h4:before {
    position: absolute;
    content: "";
    right: 25px;
    top: 22px;
    font-size: 5rem;
    width: 45px;
    background: #000;
    height: 45px;
    border-radius: 50%;
    font-weight: normal;
}
.qa_wrap h4:after {
content: '';
display: block;
width: 8px; /* 矢印の大きさの指定 */
height: 8px; /* 矢印の大きさの指定 */
border-top: 2px solid #fff; /* 矢印の太さの指定 */
border-left: 2px solid #fff; /* 矢印の太さの指定 */
}
 
.qa_wrap h4:after {
    position: absolute;
    right: 42px;
    top: 42px;
    transform: rotate(45deg);
}

.qa_wrap li.open h4:after {
    right: 42px;
	top: 40px;
    transform: rotate(226deg);
}

.qa_wrap h4 span {
    position: absolute;
    color: #28b4ff;
    padding-left: 10px;
    box-sizing: border-box;
    padding-top: 0px;
    font-size: 3rem;
    line-height: 1.3;
    left: 20px;
    top: 29px;
}

.qa_wrap li.open h4 {
    margin-bottom: 0;
    border-radius:  10px 10px 0 0;
}
a.link{
    text-decoration: underline;
    color: #B53333;
}
a.link:hover{
    text-decoration: none;
}
.txt_a {
    font-size: 1.8rem;
    padding: 30px 35px 40px 85px;
    position: relative;
    border-bottom: none;
    box-sizing: border-box;
    display: none;
    background: #fff;
    border-radius: 0 0 5px 5px;
    line-height: 1.6;
}
.txt_a p:last-of-type{
    margin-bottom: 0;
}
.txt_a.open{
	display: block;
}
.txt_a span.a_span {
    position: absolute;
    left: 30px;
    top: 28px;
    color: #fff;
    box-sizing: border-box;
    padding-top: 0px;
    font-size: 3rem;
    font-weight: bold;
}

.under_wrap_faq h3 {
    text-align: center;
    margin-bottom: 30px;
    margin-top: 60px;
}
.under_wrap_faq .qa_wrap a{
	color: #fa6e00;
}
.under_wrap_faq .qa_wrap a:hover{
	text-decoration: underline;
}
.under_wrap_faq .qa_wrap .youtube {
    padding-bottom: 40%;
    max-width: 560px;
    margin: 0 auto 20px;
}

@media screen and (max-width:768px){
.qa_wrap h4 {
    font-size: 1.4rem;
    min-height: 75px;
    padding: 20px 56px 20px 70px;
}
.txt_a p {
    font-size: 1.4rem;
}
.qa_wrap h4 span {
    padding-left: 0;
    left: 20px;
    top: 20px;
}
.txt_a {
    font-size: 1.4rem;
    padding: 20px 25px 20px 70px;
    display: none;
    margin-top: 0;
    border-radius: 0;
    line-height: 1.6;
}
.txt_a span.a_span {
    left: 20px;
    top: 10px;
}
.qa_wrap h4:before {
    right: 10px;
    top: 20px;
    width: 38px;
    height: 38px;
}
.qa_wrap h4:after {
    right: 24px;
    top: 36px;
}
.qa_wrap li.open h4:after {
    top: 33px;
    right: 24px;
}

}

/* 下層(移植)*/

#movie_list{
	margin: 0 auto;
	max-width: 900px;
}

.autoplay h3 {
    font-size: 1.2rem;
    min-height: 35px;
}
.mlist_box{
	position: relative;
}
.mlist_box iframe{
    width: 243px;
    height: auto;
    z-index:-999;
}
.mlist_box iframe {
    width: 85%;
    min-height: 400px;
    margin-left: 50px;
    text-align: center;
    display: block;
    margin: 0px auto;
}
.mlist_img{
	height:180px;
    position: relative;
	overflow:hidden;

}
.mlist_link{
    z-index: 10000;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.mlist_link a{
	display: block;
	width: 100%;
	height: 100%;
}
h3.movie_page_h3{
    background: #000;
    color: #fff;
    padding: 10px 15px;
}
.slick-dots {
    bottom: -30px;
}
.slick-dots li button:before {
    font-size: 50px;
    width: 25px;
    height: 25px;
    color: #ddd;
    opacity: 1;
}
.slick-dots li.slick-active button:before{
	color: #333;
	opacity: 1;
}
.movie_text a{
	color: #fa6e00;
	text-decoration: underline;
}
.movie_text a:hover{
	color: #fa6e00;
	text-decoration: none;
}

/* アコーディオンをランキングから選ぶ */
.item_ranking_wrap{
    margin: 0 auto;
    padding-top: 30px;
    font-size: 14px;
    line-height: 1.6;
}

.item_ranking_wrap>p:nth-of-type(1){
    text-align: center;
    font-size: 18px;
    background-color: #6e3617;
    color: #fff;
    padding: 10px;
    width: 50%;
    margin: 0 auto;
    margin-bottom: 20px;
    border-radius: 30px;
    line-height: 1;  
}

.item_ranking_wrap h2{
    text-align: center;
    font-size: 27px;
    color: #713517;
    font-weight: normal;
    border-bottom: solid 1px #e2e2e2;
    padding-bottom: 7px;
    width: 90%;
    margin: 0 auto 20px auto;    
}

.item_ranking_wrap h2 span{
    font-size: 60px;
    color: #ff5a00;
    margin: 0 5px;
}

.item_ranking_wrap>p:nth-of-type(2){
    width: 80%;
    margin: 0 auto 30px auto;
    text-align: center;
    margin-bottom: 70px;
}

.item_ranking_wrap img{
    width: 100%;
    display: block;
}

.ranking_block{
    width: 70%;
    margin: 0 auto 70px auto;
}

.ranking_block>div{
    width: 100%;
    margin: 0 auto 15px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}

.ranking_block>div img{
    width: 45%;
}

.ranking_block>div img+div{
    width: calc(55% - 30px);
}

.ranking_block ul.status_icon{
    font-size: 12px;
}

.ranking_block .item_name{
    font-size: 20px;
    margin-top: 10px;
    font-weight: bold;
    color: #000000;
}

.price_txt span{
    display: block;
    font-size: 17px;
    color: #C30003;
    font-weight: bold;
}

.details_btn a{
    display: block;
    width: 170px;
    text-align: center;
    background-color: #e53939;
    color: #fff;
    text-decoration: none;
    padding: 8px;
    font-size: 16px;
    border-radius: 3px;
    margin-top: 20px;
    box-sizing: border-box;
}
.details_btn a:hover{
    background-color: #ff5900;
}

.lineup{
    margin-top: 10px;
}

.lineup a{
    color: #e53939;
}

.lineup a:hover{
    color: #ff5900;
}


.ranking_block>div.details_text{
    display: block;
    background-color: #f6f6f6;
    padding: 14px;
    margin-top: 20px;
    box-sizing: border-box;
    border-radius: 3px;    
}

.other_rank{
    width: 70%;
    margin: 0 auto 70px auto;    
}

.other_rank>p{
    text-align: center;
    margin-bottom: 20px;
    font-size: 20px;
    background-color: #c44500;
    padding: 5px;
    color: #fff;
    border-radius: 3px;    
}

.ranking_slick{
    display: flex;
    justify-content: space-between;
}

.ranking_slick li {
    width: 32%;
    margin-left: 0.5%!important;
    margin-right: 0.5%!important;
}
.ranking_slick li a{
	display: block;
	width: 100%;
	height: auto;
}
.ranking_slick li img {
	width: 100%;
	height: auto;
}


@media screen and (max-width:768px){

.item_ranking_wrap{
    width: 95%;
    margin: 30px auto 0 auto;
}

.item_ranking_wrap>p:nth-of-type(1) {
    text-align: center;
    font-size: 14px;
    background-color: #6e3617;
    color: #fff;
    padding: 10px;
    width: 70%;
    margin: 0 auto;
    margin-bottom: 10px;
    border-radius: 30px;
    line-height: 1;
}

.item_ranking_wrap h2 {
    text-align: center;
    font-size: 18px;
    color: #713517;
    font-weight: normal;
    border-bottom: solid 1px #e2e2e2;
    padding-bottom: 7px;
    margin: 0 auto 20px auto;
}

.item_ranking_wrap h2 span {
    font-size: 25px;
    color: #ff5a00;
    margin: 0 5px;
}

.item_ranking_wrap>p:nth-of-type(2) {
    margin: 0 auto 30px auto;
}

.ranking_block {
    margin: 0 auto 50px auto;
    width: 100%;
}

.ranking_block>div {
    width: 100%;
    margin: 0 auto 15px auto;
    /*display: flex;
    flex-wrap: wrap;
    justify-content: space-between;*/
}

.ranking_block>div img {
    display: block;
    width: 100%;
	max-width: 320px;
	margin: 0 auto 20px;
}

.ranking_block>div img+div {
    padding: 10px 20px 0 20px;
    width: 100%;
}

.ranking_block .item_name {
    font-size: 16px;
    margin-top: 10px;
    font-weight: bold;
    color: #000000;
}

.price_txt span{
    display: block;
    font-size: 16px;
    color: #C30003;
    font-weight: bold;
}

.details_btn a {
    display: block;
    width: 130px;
    text-align: center;
    background-color: #e53939;
    color: #fff;
    text-decoration: none;
    padding: 8px;
    font-size: 14px;
    border-radius: 3px;
    margin-top: 20px;
    box-sizing: border-box;
}

.lineup{
    margin-top: 10px;
}

.lineup a{
    color: #e53939;
}

.lineup a:hover{
    color: #ff5900;
}

.ranking_block>div.details_text {
    display: block;
    background-color: #f6f6f6;
    padding: 14px;
    margin-top: 20px;
    box-sizing: border-box;
    border-radius: 3px;
    width: 90%;
}

.other_rank {
    width: 90%;
    margin: 0 auto 70px auto;
}

.other_rank>p {
    text-align: center;
    margin-bottom: 20px;
    font-size: 15px;
    background-color: #c44500;
    padding: 5px;
    color: #fff;
    border-radius: 3px;
}
.ranking_slick .slick-prev:before,.ranking_slick .slick-next:before {
    color: #000;
}
.other_rank.ranking_block2 .slick-dots{
	display: none!important;
}
.ranking_slick  .slick-prev {
    left: 6px;
	width: 30px;
    height: 30px;
}
.ranking_slick  .slick-next {
    right: 6px;
	width: 30px;
    height: 30px;
}
.other_rank.ranking_block2{
	margin: 0 auto 20px;
}

.attention_btn{
    width: 90%;
    margin: 0 auto;
}

.attention_btn a {
    display: block;
    text-align: center;
    background-color: #bf000f;
    color: #fff;
    font-size: 14px;
    padding: 6px;
    border-radius: 5px;
    line-height: 1.4;
    font-weight: bold;
    width: 100%;
    margin: 20px auto 0 auto;
    text-decoration: none;
    transition: all 0.2s ease-out;
    box-sizing: border-box;
}

.attention_btn a span {
    display: block;
    font-weight: normal;
    margin-top: 5px;
    font-size: 14px;
}

.attention_btn a:hover{
    background-color: #e80012;
}

.attention_msg{
    background-color: #f7f7f7;
    padding: 10px;
    box-sizing: border-box;
    line-height: 1.6;
    margin-top: 22px;
    font-size: 14px;
    border-radius: 5px;    
    margin: 5px 10px 0 10px;    
}

.attention_msg span{
    font-weight: bold;
    color: #ec0000;
}
	
}
.harmonica_event a{
	color: #fa6e00;
	text-decoration: underline;
}
.harmonica_event a:hover{
	text-decoration: none;
}


footer .nav_box ul li.footer_bn_school{
    margin-top: 10px;
    text-align: center;
}

footer .nav_box ul li.footer_bn_school:before{
    content: none;
}

footer .nav_box ul li.footer_bn_school img{
    width: 200px;
}

.berocket_lgv_widget a.berocket_lgv_button.selected{
    background: #e38f15!important;
    color: #fff!important;
}
div.berocket_lgv_widget a.berocket_lgv_button {
    padding: 5px!important;
    width: 50px!important;
    height: 45px!important;
    box-sizing: border-box!important;
    padding-top: 8px!important;
}


.woocommerce .woocommerce-result-count{
    float: right;
}

.woocommerce .woocommerce-ordering{
    float: left;
}

.berocket_lgv_widget{
    float: left!important;
}

.box_txt{
    width: 100%;
}

.woocommerce .quantity .qty{
    padding: 9px;
}
@media screen and (max-width: 768px){
    .woocommerce .quantity .qty{
        padding: 6px;
    }    
}

.woocommerce .quantity .qty{
    font-family: inherit;
    padding: 4px;
    font-size: 1.5rem;    
}


.coupon #coupon_code{
    padding: 9px;
    width: 200px;
}
@media screen and (max-width: 768px){
    .coupon #coupon_code{
        margin-bottom: 5px;
    }
}

.mypage_block ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    margin: 30px 0;
}

.mypage_block ul li {
    width: 24%;
    margin-right: 1.3333%;
    border: solid 1px #004d93;
    height: 50px;
    border-radius: 5px;
    box-sizing: border-box;
}
.mypage_block ul li:last-child{
	margin-right: 0;
}

.mypage_block ul li a{
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    background-color: #004d93;
    color: #fff;
    font-size: 1.8rem;
}

.woocommerce-MyAccount-navigation.mypage_block{
	display: none;
}

.mypage_top_btn{
	display: flex;
	justify-content: flex-end;
}
.mypage_top_btn li a{
	background-color: #979797;
    color: #fff;
	padding: 10px;
	box-sizing: border-box;
	border-radius: 5px;
}
.mypage_top_btn .woocommerce-MyAccount-navigation-link.woocommerce-MyAccount-navigation-link--dashboard{
	margin-right: 20px;
}
.mypage_top_btn .woocommerce-MyAccount-navigation-link.woocommerce-MyAccount-navigation-link--dashboard a{
	background: #f08c00;
	color: #fff;
}

.mypage_top_btn+.woocommerce {
    margin-top: 40px;
    font-size: 1.8rem;
}
@media screen and (max-width: 768px){
	.mypage_top_btn+.woocommerce {
		font-size: 1.6rem;
		margin-top: 30px;
	}
}

.mypage_top_btn+.woocommerce .woocommerce-message{
    border-top-color: #ae1b1b;
    background-color: #ae1b1b;
    color: #fff;
    text-align: center;
    padding: 5px;
    border-radius: 4px;
    width: 70%;
    margin: 0 auto;    
}
@media screen and (max-width: 768px){
    .mypage_top_btn+.woocommerce .woocommerce-message{
        width: 100%;
    }
}

.mypage_top_btn+.woocommerce .woocommerce-message a{
    display: block;
    text-align: center;
    color: #ae1b1b;
    width: 270px;
    margin: 10px auto;
    background-color: #fff;
    border-radius: 5px;
    padding: 10px;    
}

.mypage_top_btn+.woocommerce .woocommerce-message a:hover{
    opacity: 1;
    background-color: #f08c00;
    color: #fff;
}

.mypage_top_btn+.woocommerce .woocommerce-message::before{
    content: none;
}


.woocommerce-MyAccount-navigation-link.woocommerce-MyAccount-navigation-link--customer-logout a{
    background: #ededed;
    color: #4e4e4e;
}
.my-account-login button[type="submit"] {
    margin: 0 auto;
    text-align: center;
    display: block;
    margin-top: 30px;
    background: #f08c00;
    color: #fff;
    width: 200px;
    padding: 15px;
    box-sizing: border-box;
}
.my-account-login button[type="submit"]:hover{
	background: #f08c00;
	color: #fff;
	opacity: 0.8;
}
.my-account-login header{
	box-shadow: none;
}

.my-account-login .woocommerce-notices-wrapper + p,
.my-account-login .woocommerce-notices-wrapper + p + p{
	display: none;
}

.my-account-page .addtoany_list{
	display: none!important;
}

@media screen and (max-width: 600px){
.mypage_block ul li {
    width: 49%;
    margin-right: 2%;
	margin-bottom: 10px;
}
.mypage_block ul li a {
    font-size: 1.4rem;
}
.mypage_block ul li {
    height: 70px;
}
.mypage_block ul li:nth-child(even){
	margin-right: 0;	
}
}


/* 英語ページ */
.english_page{
	max-width: 900px;
	margin: 0 auto;
}
#e_h2 {
    width: 100%;
    text-align: center;
    color: #000;
    font-size: 2.6rem;
    font-weight: bolder;
    margin-bottom: 40px;
	border-bottom: none;
}
#e_h2 strong {
    color: #ff0000;
	font-size: 120%;
}
.tax.flex strong{
	color: #000;
	font-size: 2rem;
	margin-bottom: 10px;
}
.tax.flex > .img {
    flex-basis: 18%;
}
.tax.flex > .txt{
    flex-basis: 80%;
}
.english_page .column5 img{
	margin-bottom: 10px;
	width: 100%;
	max-width: 162px;
}
.english_page .column3 img{
	margin-bottom: 10px;
}
#list_cen{
	background: #eee;
	padding: 15px;
	box-sizing: border-box;
	margin-bottom: 30px;
}
#list_cen p{
	margin-bottom: 0;
}
#list_cen p img{
	margin-bottom: 10px;
}


@media screen and (max-width: 768px){
#e_h2 {
    font-size: 2rem;
}
.flex.column5{
	display: flex;
}
.flex.column5 div, .flex.column5 li {
    flex-basis: 32%;
    margin-bottom: 20px;
}
}


/*お問い合わせフォーム*/
.inq_body{
	margin: 0 auto;
	max-width: 900px;
}
.inq_body table{
	width: 100%;
	margin-bottom: 50px;
	margin-top: 30px;
}
.inq_body th span {
    font-size: 14px;
    background: red;
    width: 60px;
    display: inline-block;
    text-align: center;
    color: #fff;
    margin-right: 10px;
    padding: 2px 0;
}
@media screen and (max-width: 768px){
	.inq_body table{
		margin: 0 auto 40px auto;
	}
}

.inq_body tr{
	border-bottom: solid 1px #f0f0f0;
}

.inq_body th{
	padding: 16px 40px 16px 0;
	text-align: left;
	vertical-align: middle;
}
span.wpcf7-list-item {
    margin: 0;
}

.inq_body th p{
    margin-bottom: 0;
}

@media screen and (max-width: 768px){
	.inq_body th{
		display: block;
		width: 100%;
		box-sizing: border-box;
		padding: 0;
	}
    
}

.inq_body th span{
	font-size: 12px;
}
.inq_body td{
	padding: 16px 0 16px 0;
}
@media screen and (max-width: 768px){
    .inq_body tr:not(:first-child) th{
        margin-top: 16px;
    }
    
	.inq_body td{
		display: block;
		width: 100%;
	}
}

.inq_body td span{
	display: block;
}
.inq_body td span.wpcf7-not-valid-tip{
	display: block;
}
.inq_body td span.wpcf7-list-item,
.inq_body td span.wpcf7-list-item-label{
	display: inline-block;
}

.inq_body input[type="text"], .inq_body input[type="email"], .inq_body input[type="tel"], .inq_body .wpcf7-form-control-wrap textarea {
    padding: 10px 5px;
    width: 100%;
    box-sizing: border-box;
}

.inq_body select{
	height: 30px;
	font-size: 1.4rem;
	padding: 0 10px;
}

.inq_body table dl{
	overflow: hidden;
	display: block;
	margin-bottom: 20px;
}
.inq_body table dt{
	float: left;
	width: 60%;
	padding: 8px 0;
}
.inq_body table dd{
	float: right;
	padding: 8px 0;
}
.inq_body input[type="submit"], .inq_body input[type="button"] {
    border: none;
    padding: 11px 50px;
    background: #8b8f99;
    color: #fff;
    font-size: 16px;
    text-align: center;
    margin: 20px auto;
    display: block;
    cursor: pointer;
    box-sizing: border-box;
    border-radius: 0;
    -webkit-appearance: none;
}
.inq_body .wpcf7-spinner{
	display: none;
}
.inq_body .tr_name .flex > p,
.inq_body .tr_kana .flex > p{
    justify-content: flex-start;
}

.inq_body .tr_name .flex > p span,
.inq_body .tr_kana .flex > p span{
    width: 14em;
}

.wpcf7 form.sent .wpcf7-response-output {
    border-color: #46b450;
    text-align: center;
    padding: 20px 0;
    margin-top: 0;
    background: #fff8b1;
    border: none;
}

@media screen and (max-width: 768px){
    .inq_body .tr_name .flex > p span,
    .inq_body .tr_kana .flex > p span{
        width: 48%;
    }    
}

.inq_body .tr_name .flex > p span:nth-of-type(1),
.inq_body .tr_kana .flex > p span:nth-of-type(1){
    margin-right: 1em;
}

.tr_tel p{
    width: 20em;
}
@media screen and (max-width: 768px){
    .tr_tel p{
        width: 100%;
    }
}

.tr_post p{
    width: 8em;
}
@media screen and (max-width: 768px){
    .tr_post p{
        width: 100%;
    }
}

.tr_tel p,
.tr_mail p,
.tr_post p,
.tr_address p,
.tr_item p,
.tr_message p{
    margin-bottom: 0;
}

.inq_body th,
.inq_body.inq_en th{
    width: 30%;
}
@media screen and (max-width: 768px){
    .inq_body th,
    .inq_body.inq_en th{
        width: 100%;
    }
}

.inq_body.inq_en .flex > p >span{
    width: 100%;
}

.inq_body td,
.inq_body.inq_en td{
    width: 70%;
}
@media screen and (max-width: 768px){
    .inq_body td,
    .inq_body.inq_en td{
        width: 100%;
    }
}

#pp_check{
	text-align: center;
	margin: 20px 0 40px 0;
}
#pp_check a{
	text-decoration: underline;
}
#pp_check a:hover{
	text-decoration:none;
}

.inq_body .flex > p {
    display: flex;
    justify-content: space-between;
    width: 100%;
    margin-bottom: 0;
}

.inq_body .flex > p >span{
	width: 49%;
}



/* カートの数字アイコン */
span.cart-icon {
    color: #333;
    font-size: 28px;
}


span.quantity_badge {
    position: absolute;
    top: -5px;
    right: -5px;
    background-color: #cd162c;
    padding: 0;
    border-radius: 16px;
    color: #fff;
    text-decoration: none !important;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    box-sizing: border-box;
    font-size: 1.1rem;
    text-align: center;
    left: auto;
    padding-top: 1px;
}

.p-header-content.p-header-content--lg a.head_cart {
    text-decoration: none;
}

.zero_quantity_badge{
	background-color:transparent !important;
}
span.zero_quantity_badge{
	color:transparent !important;
}

.c-row__col.c-row__col--fit.u-invisible-md-down {
    display: block !important;
}

@media screen and (max-width: 850px) {
span.quantity_badge {
    font-size: 1rem;
    width: 15px;
    height: 15px;
    padding-top: 0px;
}
}

/* end woocommerce cart icon  */

/* 商品詳細 */

.woocommerce div.product .product_title {
    font-size: 2.4rem;
    line-height: 1.4;
    border-bottom: solid 1px #cecece;
    padding-bottom: 10px;
    margin-bottom: 10px;
}
@media screen and (max-width: 768px){
    .woocommerce div.product .product_title {
        font-size: 2rem;
    }
}

.product_title + .product_meta .posted_in,
.product_title + .product_meta .tagged_as{
	display: none;
}

.woocommerce-product-details__short-description + .product_meta .sku_wrapper{
	display: none;
}
.product_title + .product_meta{
	display: inline-block;
}
.product_meta span.sku_wrapper{
	display: inline;
	padding-right: 10px;
	font-size: 1.6rem;
}
@media screen and (max-width: 768px){
    .product_meta span.sku_wrapper{
        font-size: 1.4rem;
    }
}

p.jan{
	display: inline;
	font-size: 1.6rem;
    pointer-events: none;
}
@media screen and (max-width: 768px){
    p.jan{
        display: block;
        font-size: 1.4rem;
    }
    
    p.jan a{
        color: #000!important;
    }
    
}

.woocommerce div.product p.price{
    margin-top: 5px;
}
.summary .yith-wcwl-add-button {
    margin-bottom: 20px;
}
.summary .yith-wcwl-add-button a{
	color: #000;
}
.product_meta .tagged_as.tag {
    margin-top: 10px;
    font-size: 0;
    margin-bottom: 10px;
}
.product_meta .tagged_as.tag a {
    padding: 5px 8px;
    box-sizing: border-box;
    color: #fff;
    border-radius: 0;
    display: inline-block;
    cursor: pointer;
    border: 1px solid #0064b4;
    background: #fff;
    color: #0064b4;
    border-radius: 5px;
    font-size: 1.5rem;
    margin-right: 10px;
}
.product_meta .tagged_as.tag a:hover{
    background: #0064b4;
    color: #fff;
    opacity: 1;
	text-decoration: none;
}

.mv_wrapper{
    max-width: 1000px;
    margin: 0 auto;
}

.youtube {
    width: 100%;
    aspect-ratio: 16 / 9;
}

.youtube iframe {
    width: 100%;
    height: 100%;
}

.woocommerce div.product p.stock {
	margin-bottom: 0;
}
.deliv_date_id{
    font-size: 1.4rem;
}


/*カテゴリページ用*/
.category_wrap {
    margin-bottom: 60px;
}

.category_wrap .top_level_category{
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 30px;
}

.category_wrap .top_level_category li {
    flex-basis: 24%;
    margin-right: 1.333%;
	margin-bottom: 15px;
}
.category_wrap .top_level_category li:nth-child(4n){
	margin-right: 0;
}

.category_wrap .top_level_category li a{
    display: block;
    background-color: #000;
    color: #fff;
    text-align: center;
    padding: 15px;
    border-radius: 5px;
    position: relative;
}

.sub_btn li a{
    position: relative;
}

.sub_btn li a i,
.category_wrap .top_level_category li a i{
    position: absolute;
    top: calc(50% - 0.8rem);
    right: 1rem;
    margin: 0;
    padding: 0;    
}

.category_wrap .top_level_category li a:hover{
    background-color: #ca7800;
}


.tab_wrap{
    display: flex;
    /*border-top: solid 1px #004d93;*/
    /*border-bottom: solid 1px #004d93;*/
    margin-bottom: 30px;
    background-color: #f3f3f3;
}

.tab_wrap li {
    padding: 15px 5px;
    background-color: #004d93;
    color: #fff;
    cursor: pointer;
    flex-basis: 25%;
    text-align: center;
    border-left: 1px solid #fff;
    box-sizing: border-box;
    font-size: 14px;
    cursor: pointer;
	position:relative;
}
.tab_wrap li span.close{
	display: none;
}
.tab_wrap li.active span.close{
	display: inline;
}
.tab_wrap li.active span.active{
	display: none;
}

.tab_wrap li:hover{
	opacity: 0.8;
}

.tab_wrap li a {
    color: #fff;
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding-top: 15px;
    box-sizing: border-box;
}
.tab_wrap li.g2 a{
    padding-top: 6px;
}


.tab_wrap li.other_page a img {
    max-width: 14px;
    margin-left: 5px;
    vertical-align: baseline;
}


.tab_column{
    display: flex;
    flex-wrap: wrap;
    margin-bottom: 40px;
}

.tab_column li{
    width: 22%;
    margin: 0 1%;
}

.tab_column li .photo{
    text-align: center;
    margin-bottom: 10px;
}

.tab_h2 {
    font-size: 2.0rem;
    color: #004d93;
    border-bottom: 1px solid #004d93;
    margin: 0 auto 25px;
    font-weight: bold;
}


.tab_contents{
	display: none;
}

.category_wrap .sub_btn {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 15px;
}

.category_wrap .sub_btn li {
    flex-basis: 24%;
    margin-right: 1.333%;
    margin-bottom: 15px;
}

.category_wrap .sub_btn li:nth-child(4n){
	margin-right: 0;
}

.category_wrap .sub_btn li a{
    display: block;
    background-color: #ccc;
    color: #000;
    text-align: center;
    padding: 15px;
    border-radius: 5px;
}

.osusume_bn{
	display: flex;
}
.osusume_bn li{
	margin-right: 15px;
}

span.bold{
	font-weight: bold;
}
span.red{
	color: #f03232;
}
.flex.concertina_flex{
	justify-content: space-between;
}
.flex.concertina_flex > div {
    display: block;
    background: #c8c8c8;
    padding: 15px;
    box-sizing: border-box;
    flex-basis: 49%;
}
.flex.concertina_flex > div h4{
	font-size: 2rem;
	color: #f03232;
}
.flex.concertina_flex > div p {
    margin-bottom: 0;
    color: #000;
}
h4.center{
	margin-bottom: 20px;
}

.ranking_non_slick{
	display: flex;
    flex-wrap: wrap; 
}
.ranking_non_slick li {
    margin-right: 5%;
    margin-bottom: 3%;
    flex-basis: 30%;
}
.ranking_non_slick li:nth-child(3){
	margin-right: 0;
}
.rank_list ul.products{
	position: relative;
	padding-bottom: 40px;
}
.rank_list ul.products li.slick-slide {
    margin: 0 auto;
    position: relative;
    margin: 0 25px;
    padding-bottom: 30px;
}
/*
.rank_list .slick-track {
  display: flex;
}
.rank_list .slick-slide {
  height: auto !important;
}*/

/*.rank_list .woocommerce ul.products li.berocket_lgv_grid{
	width: auto!important;
}*/
.rank_list .woocommerce ul.products li.first,.rank_list  .woocommerce-page ul.products li.first{
	clear: inherit;
}


.rank_list ul.products .prev-arrow {
    left: 28%;
    bottom: -3px;
    position: absolute;
    z-index: 10;
    margin-top: -17px;
    cursor: pointer;
}
.rank_list ul.products .next-arrow {
    right: 28%;
    bottom: -3px;
    margin-top: -17px;
    position: absolute;
    z-index: 10;
    cursor: pointer;
}

.rank_list ul.products .slide-dots{
	bottom: 0;
	overflow: hidden;
}


@media screen and (max-width: 768px){
.category_wrap .top_level_category li {
    flex-basis: 49%;
    margin-right: 2%;
    margin-bottom: 10px;
}
.category_wrap .top_level_category li:nth-child(2n) {
    margin-right: 0;
}
	
.category_wrap .top_level_category li:nth-child(2){
	margin-right: 0;
}
.category_wrap .top_level_category li a {
    padding: 15px 5px;
    font-size: 1.2rem;
}
.category_wrap .sub_btn li {
    flex-basis: 48%;
    margin-right: 2%;
    margin-bottom: 10px;
}
.category_wrap .sub_btn li:nth-child(2){
	margin-right: 0;
}
.category_wrap .sub_btn li a {
    padding: 15px 5px;
    font-size: 1.2rem;
}
	
.osusume_bn{
	flex-wrap: wrap;
	justify-content: space-around;
	gap:10px;
}
.osusume_bn li{
	margin-right: 0;
	width:48%;
}
	
.tab_wrap{
	display: block;
    padding: 15px;
    box-sizing: border-box;
}
.tab_wrap li {
    height: 50px;
	margin: 0 auto 10px;
	border-left: none;
}
.tab_wrap li:last-child{
	margin: 0 auto;
}
.rank_list .woocommerce ul.products li.berocket_lgv_grid {
    /*width: 100%!important;*/
    margin: 0px 15px!important;
    float: left!important;
    clear: none!important;
    padding: 0;
	padding-bottom: 40px;
    box-sizing: border-box;
    /*max-width: 219px!important;*/
}

.rank_list .woocommerce ul.products .cat li.berocket_lgv_grid {
    margin-left: 0!important;
    padding-bottom: 0;
}
.rank_list .woocommerce ul.products ul.cat {
    margin-top: 5px;
}
	
.rank_list .slick-track {
  display: flex;
}
.rank_list .slick-slide {
  height: auto !important;
}
.ranking_non_slick{
flex-wrap: wrap;
justify-content: space-around;
gap: 10px;
}
.ranking_non_slick li {
margin: 0;
flex-basis: 48%;
}
	
.rank_list .woocommerce ul.products li.berocket_lgv_grid .img {
    max-width: 100%!important;
    width: 100%;
}
	
.rank_list .woocommerce ul.products[class*=columns-] li.product:nth-child(2n),
.rank_list .woocommerce-page ul.products[class*=columns-] li.product:nth-child(2n) {
    float: left!important;
}
	
.rank_list ul.products .next-arrow {
    bottom: 25px;
	right: 36%;
}
.rank_list ul.products .prev-arrow {
    bottom: 25px;
	left: 36%;
}
	
.woocommerce ul.products {
    padding-bottom: 80px;
}
	
.woocommerce div.product .woocommerce-tabs ul.tabs li {
    padding: 0 10px;
}
}

@media screen and (max-width: 600px){
.woocommerce ul.products {
    padding-bottom: 60px;
}
.product_main ul.products {
	padding-bottom: 0;
	margin-bottom: 0;
}
}

.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span{
	color: #000;
}

/* お気に入りボタンカスタマイズ */

.yith-wcwl-add-button .separator,.yith-wcwl-add-button .view-wishlist{
		display: none;
}

/* 詳細ページ海外用ボタン */

.en_product_side {
    position: fixed;
    right: 0;
    bottom: 5%;
    z-index: 20;
}
.en_product_side a {
    background: #000;
    color: #fff;
    padding: 15px;
    display: block;
    font-size: 1.3rem;
    border-radius: 10px 0 0 10px;
    border: 1px solid #fff;
    box-sizing: border-box;
}

@media screen and (max-width: 600px){
.en_product_side {
    bottom: 80px;
}
.en_product_side a {
	font-size: 1.2rem;
}
}


/* search用追記 */
.ui-autocomplete{
	z-index:999999!important;
}



/*商品一覧用、詳細*/

.columns-4 .berocket_lgv_grid .yith-wcwl-add-button .yith-wcwl-icon.fa,
.columns-4 .berocket_lgv_grid .yith-wcwl-wishlistaddedbrowse .yith-wcwl-icon.fa.fa-heart-o{
    width: 30px;
    height: 30px;
    font-size: 1.6rem;
    padding-top: 8px;
    margin-right: 3px;
}

.columns-4 .berocket_lgv_grid ul.products li.product a.add_to_wishlist span,
.columns-4 .berocket_lgv_grid ul.products span.feedback{
    font-size: 1.4rem;
}

.columns-4 .berocket_lgv_grid ul.products .yith-wcwl-wishlistaddedbrowse{
    margin-bottom: 10px;
}

.woocommerce ul.products span.feedback+a{
    display: none;
}

.box_top .company{
    font-weight: bold;
}

.woocommerce ul.products .berocket_lgv_list .box_top,
.woocommerce ul.products .berocket_lgv_list .box_top div{
    margin-bottom: 0!important;
}

.woocommerce ul.products .berocket_lgv_list .box_top p.company{
    font-size: 1.6rem;
    margin-top: 10px;
}


.columns-4 .berocket_lgv_grid .price_p{
    font-size: 1.2rem;
	white-space: 100%;
}

.maker+.product_meta .sku_wrapper{
    display: none;
}

.contents_box p.price{
    margin-bottom: 0;
}

.woocommerce-product-details__short-description p{
    background-color: #fbfbfb;
    padding: 10px;    
}

@media screen and (max-width: 850px){
.woocommerce-product-details__short-description p {
    padding-left: 0;
    padding-bottom: 0;
}
}

ins .woocommerce-Price-amount.amount{
    color: #FF0004;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image:nth-child(n+1){
    margin-bottom: 10px;
}

.woocommerce div.product div.images .woocommerce-product-gallery__image:nth-child(n+2){
    width: 23%;
    display: inline-block;
    padding: 5px;
    border: solid 1px #efefef;
    margin: 0 5px 0 5px;    
}

.parent-container{
    display: flex;
    justify-content: flex-start;
}

.parent-container a{
    display: block;
    width: 18%;
    border: solid 1px #bbb;
    margin: 5px;
}

.tab_subimages a{
    width: 16%;
}


.woocommerce .related.products ul.products li.berocket_lgv_grid .box_top{
    flex-wrap: wrap;
    flex-direction: column-reverse;    
}

.woocommerce ul.products ul.cat {
    flex-wrap: wrap;
    margin-top: 3px;
    width: 100%;
}

.woocommerce ul.products ul.cat li{
    margin-bottom: 5px;
}
.woocommerce ul.products ul.cat li:first-child{
	margin-left: 0;
}

.main_images{
    position: relative;
}

.main_images span{
    position: absolute;
}

.main_images .sale_icon{
    top: 20px;
    right: 20px;
}

.main_images .new_icon {
    top: 10px;
    left: 10px;
    z-index: 10;
}



/*カート関連*/
.woocommerce~.addtoany_content_bottom{
    display: none;
}

.woocommerce-button.button.view{
    background-color: #f08c00;
    color: #fff;
}


/* ページTOPに戻る */
.pagetop {
    display: none;
    position: fixed;
    right: 20px;
    bottom: 90px;
    z-index: 10;
}
.pagetop a{
    display: block;
    font-size: 0;
    width: 50px;
    height: 50px;
    text-align: center;
    background: #333333;
    border-radius: 50%;
    line-height: 50px;
}
.pagetop a i{
    font-size: 20px;
    color:#fff;
    line-height: 50px;
}
@media screen and (max-width: 768px){
    .pagetop {
        bottom: 85px;
        z-index: 30;
        right: 10px;
    }
}

.bn_area .header_bn_area {
    padding: 0;
    text-align: center;
}
.bn_area .header_bn_area{
	padding-top: 60px;
}
.header_bn_area li{
	margin-bottom: 20px;
}

@media screen and (max-width: 768px){
.header_bn_area {
	padding: 40px 0 0;
}
}
.top_slide li a.imgLiquid_error{
	position: relative;
}
ul.products li a.imgLiquid_error:before,.top_slide li a.imgLiquid_error:before{
    content: "商品画像はありません";
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    background-color: rgba(255, 255, 255, 0.8);
    padding: 10px;
    text-align: center;
    transform: translate(0, -50%);
	font-size: 1.8rem;
}
p.images_none{
    text-align: center;
    padding-top: 200px;
    font-size: 2.4rem;
    font-weight: bold;
    /* display: none; */
    background: #eaeaea;
    padding-bottom: 200px;
    /* height: 576px; */
}

@media screen and (max-width: 850px){
p.images_none {
    padding-top: 100px;
    padding-bottom: 100px;
}
.woocommerce ul.products li.sale .img .sale_icon {
    right: 43px;
    max-width: 50px;
    top: 10px;
}
}

/* 0115修正追記 */

.pass_link a,.txt_link a{
    color: red;
    border: 1px solid red;
    padding: 10px 9px;
    box-sizing: border-box;
    font-size: 1.4rem;
    font-weight: bold;
    margin-right: 10px;
    position: relative;
	display: block;
}
.pass_link a:hover,.txt_link a:hover{
	background: red;
	color: #fff;
}
li.txt_link {
    margin-bottom: 20px;
    max-width: 400px;
    margin: 0 auto 25px;
}
li.txt_link a{
	display: block;
}

.woocommerce table.my_account_orders .button {
    margin-right: 10px;
}
.woocommerce table.my_account_orders td, .woocommerce table.my_account_orders th {
    padding: 8px 8px;
}

.select2-container .select2-selection--single .select2-selection__rendered {
    overflow: initial!important;
}
.woocommerce span.onsale {
    position: relative;
    top: auto;
    left: auto;
    margin-bottom: 10px;
    display: block;
    text-align: left;
    background: none !important;
}

.contents_box p.pass_img {
    max-width: 1000px;
    border: 1px solid #000;
    margin: 0 0 40px;
    box-sizing: border-box;
    display: inline-block;
}

.category_wrap .top_level_category.center {
    justify-content: center;
    margin-bottom: 0;
}


@media screen and (max-width: 1350px){
.pass_link a, .txt_link a {
    font-size: 1.2rem;
    padding: 10px 5px;
}
.shop_btn li {
    margin-right: 15px;
}
.header_box .center_box {
    flex-basis: 68%;
}
.en_page_btn a {
    padding: 7px 10px;
    font-size: 1.4rem;
}
}

@media screen and (max-width: 1250px){
.en_page_btn {
    max-width: 65px;
}
.en_page_btn a {
    padding: 7px 8px;
    font-size: 1.4rem;
}
.center_top form {
    max-width: 170px;
}
.en_page_btn a {
    font-size: 1.2rem;
}
.header_box .center_box {
    flex-basis: 72%;
}
}

@media screen and (max-width: 1200px){
.header_box .center_box {
    flex-basis: 70%;
}
}

@media screen and (max-width: 1150px){
.pass_link a, .txt_link a {
    font-size: 1rem;
}
.center_top form {
    max-width: 165px;
}
.header_box .center_box {
    flex-basis: 70%;
}
.center_top .search_cat a {
    padding: 10px 5px;
    border-radius: 10px;
}
}

@media screen and (max-width: 1000px){
.center_top form {
    max-width: 145px;
}
.center_top form input {
    padding: 8px;
    font-size: 1.2rem;
}
.center_top .search_cat a {
    padding: 10px 6px;
    font-size: 1rem;
    border-radius: 10px;
}
.shop_btn li {
    margin-right: 10px;
    max-width: 22px;
}
.shop_btn li:first-child {
    max-width: 18px;
    padding-top: 4px;
}
}
@media screen and (max-width: 900px){
.pass_link a, .txt_link a {
    padding: 10px 5px;
}
.en_page_btn a {
    font-size: 1rem;
	padding: 4px 8px;
}
.en_page_btn {
    max-width: 50px;
}
.header_box .center_box {
    flex-basis: 70%;
}
.logo h1 .small {
    letter-spacing: -0.1em;
}
}
@media screen and (max-width: 850px){
.pass_link a{
    display: none;
    text-align: center;
    margin-top: 30px;
	padding:15px 5px;
	font-size: 1.2rem;
}
.bn_area .header_bn_area {
    padding-top: 50px;
}
.bn_sp + .header_bn_area {
    padding-top: 10px;
}
.header_bn_area table tbody tr{
    display: flex;
    /* flex-wrap: wrap; */
    flex-flow: column;
}
.header_bn_area table tbody td:first-child{
margin-bottom: 30px;
}
.en_page_btn a {
    border-radius: 5px;
}
}

.wpg-button {
    margin-right: 10px;
}


/* カレンダー */

.xo-event-calendar table.xo-month .month-header>span{
	color: #fff;
}
.xo-event-calendar table.xo-month button span.nav-prev {
    border-bottom: 2px solid #fff;
    border-left: 2px solid #fff;
	height: 10px;
	width: 10px;
}
.xo-event-calendar table.xo-month button span.nav-next {
    border-right: 2px solid #fff;
    border-top: 2px solid #fff;
	height: 10px;
	width: 10px;
}
.xo-event-calendar {
    margin: 0px auto 10px;
}

.calender_resize {
	max-width: 80%;
	position: relative;
}
.calender_resize .cal_btn span{
	font-weight: bold;
	position: absolute;
	cursor: pointer;
}
.calender_resize .cal_btn span.cal_prev{
	top: 3px;
	left: 0;
}
.calender_resize .cal_btn span.cal_next{
	top: 3px;
	right: 0;
}


.calender_resize .cal_btn2 span{
	font-weight: bold;
	position: absolute;
	cursor: pointer;
}
.calender_resize .cal_btn2 span.cal_prev2 {
	top: 3px;
	left: 0;
}
.calender_resize .cal_btn2 span.cal_next2 {
	top: 3px;
	right: 0;
}


/* クーポン削除 */
.cart .coupon {
display:none;
}
/* 言語切り替えボタン*/
.gr_page_btn{
	display: inline-flex;
	height: 34px;
	align-items: center;
	padding: 7px 10px;
    background-color: #2991e6;
	position: relative;
	min-width:100px;
	cursor: pointer;
	z-index:1000;
}
.gr_page_btn a{
    color: #fff;
	text-decoration: none;
	background: url(https://www.taniguchi-gakki.jp/wp-content/uploads/2024/03/earth_icon.svg)left center no-repeat;
	background-size: 20px;
	padding-left: 25px;
	font-size:1.5rem;
}
.gr_page_btn:hover{
    background-color: #004f9c;
}

.gr_dropdown_lists {
    display: none;/*デフォルトでは非表示の状態にしておく*/
    width: 100%;
    position: absolute;
    top: 34px;
    right: 0px;
	list-style: none;
}
.gr_page_btn:hover .gr_dropdown_lists {
    display: inline-block;
}
 .gr_dropdown_list {
	display: block;
	padding: 7px 10px;
    background-color: #2991e6;	
    transition: all .3s;
    position: relative;
	text-align: center;
	position: relative;
	cursor: pointer;
}
 .gr_dropdown_list a {
	display: block;
	background-image: none;
	padding-left: 0px;
}
 .gr_dropdown_list:hover {
    background-color: #004f9c;
}
@media screen and (max-width: 850px){
.gr_page_btn {
	min-width: 60px;
    width: 60px;
	height: 30px;
    position: absolute;
    top: 30px;
    right: 57px;
    text-align: center;
	padding: 5px;
}
.gr_page_btn a{
	background:none;
	font-size:1.2rem;
	padding:0;
	margin:0 auto;
}
.gr_page_btn:hover .gr_dropdown_lists {
    display: inline-block;
}
.gr_dropdown_lists {
    top: 30px;
}
 .gr_dropdown_list {
	padding: 5px;
}
 .gr_dropdown_list a {
	background-image: none;
	padding: 0px;
}
}

.details_related_item ul li .box_top,
.details_history_item ul li .box_top{
    position: inherit!important;
}

@media screen and (max-width: 768px){
    .woocommerce table.cart .product-thumbnail{
        display: block;
        width: 100%!important;
        box-sizing: border-box;
    }
    
    .woocommerce table.cart .product-thumbnail::before{
        content: none;
    }
    
    .woocommerce table.cart .product-thumbnail a{
        display: block;
        text-align: center;
    }
    
    .product-remove{
        display: flex!important;
        justify-content: flex-end;
    }
    
}



@media screen and (max-width: 500px){
    .sp_non{
        display: none!important;
    }
}

.sp_only_block{
    display: none;
}
@media screen and (max-width: 500px){
    .sp_only_block{
        display: block;
    }
    
    .sp_only_block ul{
        display: flex;
        justify-content: space-between;
        padding: 20px 10px;
    }
    
    .sp_only_block li{
        width: 32%;
        box-sizing:border-box;
    }
    
    .sp_only_block li a{
        display: block;
        text-align: center;
        background-color: #000;
        padding: 10px 4px;
        color: #fff;
        border-radius: 3px;
    }
    
}

#h2_lyt{
    position: relative;
}

#h2_lyt span.left_bd{
    content: "";
    display: block;
    height: 10px;
    background-color: #fff;
    position: absolute;
    width: 640px;    
    top: 48%;
    left: 0;
}

#h2_lyt span.right_bd{
    content: "";
    display: block;
    height: 10px;
    background-color: #fff;
    width: 1470px;
    position: absolute;
    right: 0;    
    top: 48%;    
}

.lower_header h2{
    max-width: inherit;
    padding: 0;
}

#h2_lyt{
    display: flex;
    align-items: center;
}

#h2_lyt h2{
    padding: 0 40px;
    text-align: center;
}
@media screen and (max-width: 768px){
    #h2_lyt h2{
        padding: 0 20px;
    }
}

#h2_lyt::before,
#h2_lyt::after{
    border: 4px solid #004ea2;
    content: "";
    display: inline;
    flex-grow: 1;    
}

.lower_header.item_lower_header h2 {
    font-size: 2.2rem;
    text-align: center;
}

.lower_header.item_lower_header h2 .big.yellowtail-regular {
  font-family: "Yellowtail", cursive;
  font-weight: 400;
  font-style: normal;
}

.lower_header.item_lower_header,
.lower_header.item_lower_header.ac,
.lower_header.item_lower_header.ha{
    background-image: url("images/title_background.jpg");
    background-repeat: repeat;
    background-size: auto;
}

.ac#h2_lyt::before,
.ac#h2_lyt::after{
    border-color: #991c38;
}

.ha#h2_lyt::before,
.ha#h2_lyt::after{
    border-color: #f29015;
}




/*商品一覧レイアウト*/
/*リストとグリッドで分ける*/
/*グリッド berocket_lgv_grid*/
/*.woocommerce .product_main ul.products li.berocket_lgv_grid{
    display: flex!important;
    flex-direction: column;
    justify-content: flex-start;
}

.woocommerce .product_main ul.products li.berocket_lgv_grid .img{
    flex-basis: auto;
}

.woocommerce .product_main ul.products li.berocket_lgv_grid .txt{
    flex-basis: auto;
}

.woocommerce .product_main ul.products li.berocket_lgv_grid .box_top{
    position: inherit;
    margin-top: auto;
}
*/

.col2-set>.col-2+.woocommerce-account-fields{
    clear: both;
    background-color: #eaeaea;
    padding: 10px;
    border-radius: 4px;
    margin-bottom: 20px;
}

.col2-set>.col-2+.woocommerce-account-fields p{
    margin-bottom: 0;
    line-height: 1.6;
}

.item_single_contents{
	margin-top: 20px;
}

form[name="checkout"] .woocommerce-billing-fields h3,
form[name="checkout"] h3#order_review_heading{
	display: none;
}
form[name="checkout"] .woocommerce-billing-fields h3.open,
form[name="checkout"] h3#order_review_heading.open{
	display: block;
}

form[name="checkout"] h3#order_review_heading{
	margin-top: 20px;
}

.woocommerce-message {
    padding: 20px;
    margin: 0 0 2em;
    position: relative;
    background-color: #fffdb1;
    color: #000;
    border-top: 3px solid #a46497;
    list-style: none outside;
    width: auto;
    word-wrap: break-word;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    border-top: none;
    display: flex;
    flex-direction: column-reverse;
}
.woocommerce-message::before{
	display: none;
}
.woocommerce:where(body:not(.woocommerce-block-theme-has-button-styles)) a.button{
    display: block;
    float: none;
    max-width: 200px;
    margin: 20px auto 0;
	background: #ea441c;
	color: #fff;
}

@media screen and (max-width: 768px){
.wishlist_table.mobile li .item-details h3 {
    margin-bottom: 7px;
    font-size: 1.4rem;
    font-weight: normal;
}
.wishlist_table.images_grid li .item-details table.item-details-table td, .wishlist_table.mobile li .item-details table.item-details-table td, .wishlist_table.mobile li table.additional-info td, .wishlist_table.modern_grid li .item-details table.item-details-table td {
    font-size: 1.2rem;
}
.wishlist_table.mobile li .item-wrapper {
    width: 100%;
    margin-bottom: 0;
}
}

/* プライバシーポリシー */
.ol_policy1 {
  list-style-type: decimal;
	padding-left: 20px;
}
.ol_policy2 > li {
    list-style-type: none; /*点を非表示*/
    position: relative; /*基準位置*/
    padding-left: 20px;
    }
.ol_policy2 > li:before {
    border-radius: 50%; /*丸くする*/
    width: 10px; /*点の幅*/
    height: 10px; /*点の高さ*/
    display: block;
    position: absolute; /*絶対配置*/
    left: 0; /*点の位置*/
    top: 0.7em; /*点の位置*/
    content: "";
    background: #004d93; /*点の色*/
    }

.xoo-wl-btn-container{
    text-align:left;
    padding-bottom: 20px;
}

/* リニューアル記念特典 */

#re_hero {
    padding: 0;
    margin: 0 auto 60px;
}

.re_tit {
  align-items: center; /* 線を上下中央 */
  display: flex; /* 文字と線を横並び */
  justify-content: center; /* 文字を中央寄せ */
    color: #004d91;
    font-size: 25px;
    font-weight: bold;
    text-align: center;
    line-height: 180%;
    margin: 0 auto;
}
.re_tit::before,
.re_tit::after {
  background-color: #004d91; /* 線の色 */
  border-radius: 2px; /* 線の両端を丸く */
  content: "";
  height: 2px; /* 線の高さ */
  width: 70px; /* 線の長さ */
}
.re_tit::before {
  margin-right: 10px; /* 文字との余白 */
  transform: rotate(60deg); /* 傾ける */
}
.re_tit::after {
  margin-left: 10px; /* 文字との余白 */
  transform: rotate(-60deg); /* 傾ける */
}

.re_warnnig {
    color: #004d91;
    font-size: 16px;
    font-weight: bold;
    text-align: center;
    line-height: 180%;
    margin: 10px auto;
}

.re_coupon {
  display: flex; /* 文字と線を横並び */
  justify-content: center; /* 文字を中央寄せ */
    background-color: #de8a15;
    margin: 0 auto;
    width: 600px;
}

.re_coupon_l {
    display: block;
    background: url("https://www.taniguchi-gakki.jp/wp-content/uploads/2024/05/coupon_l.svg")top left repeat-y;
    width: 30px;
}
.re_coupon_c {
    display: block;
    margin: 20px auto;
    padding: 0 50px;
    border-left: 3px #FFF solid;
    border-right: 3px #FFF solid;
    text-align: center;
}
.re_coupon_r {
    display: block;
    background: url("https://www.taniguchi-gakki.jp/wp-content/uploads/2024/05/coupon_r.svg")top right repeat-y;
    width: 30px;
}

.re_coupon1:not(.contents_box) {
    color: #FFF;
    font-size: 16px;
    font-weight: bold;
    margin: 0 auto 0px;
    padding: 0;
}

.re_coupon2 {
    display: flex;
    align-items: flex-end;
    margin: 0;
	padding: 0;
}

.re_coupon3:not(.contents_box) {
    color: #643700;
    font-size: 50px;
    font-weight: bold;
    font-family: Arial, Helvetica, "sans-serif";
    line-height: 1!important;
    margin: 0;
    padding: 0;
}

.re_coupon4:not(.contents_box) {
    color: #643700;
    font-size: 75px;
    font-weight: bold;
    font-family: Arial, Helvetica, "sans-serif";
    line-height: 1!important;
    margin: 0 5px -5px 5px;
    padding: 0;
    letter-spacing: 0;
}

.re_coupon5 {
    background-color: #643700;
    display: block flex;
    justify-content: center;
    align-items: center;
    padding: 5px 10px;
    color: #FFF;
    gap: 20px;
    margin: 10px auto 0;
}

.re_coupon6:not(.contents_box) {
    font-size: 12px;
    font-weight: bold;
    font-family: Arial, Helvetica, "sans-serif";
    line-height: 1!important;
    margin: 0;
    padding: 0;
}

.re_coupon7:not(.contents_box) {
    font-size: 30px;
    font-weight: bold;
    font-family: Arial, Helvetica, "sans-serif";
    line-height: 1!important;
    margin: 0;
    padding: 0;
}

.re_red_box {
    display: block;
    background-color: #f9eded;
    margin: 50px auto;
    padding: 30px 40px;
}

.re_red_tit {
    display: block flex;
    background-color: #b60200;
    margin: 0px auto 20px;
    padding: 5px;
    gap:10px;
    justify-content: center;
    align-items: center;
}

.re_red_tit_img {
    width: 30px;
    display: block;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

.re_red_tit_p:not(.contents_box) {
    color: #FFF;
    font-size: 22px;
    font-weight: bold;
    padding: 0;
    margin: 0;
    letter-spacing: 5px;
}

.re_box_p {
    font-size: 15px;
    padding: 0;
    margin: 0;
    line-height: 180%;
}

.re_br-sp {
  display: none;
}


@media only screen and (max-width:798px){
    
.re_tit {
    font-size: 16px;
    line-height: 160%;
    padding: 0;
    margin: -20px auto 0;
}
.re_tit::before,
.re_tit::after {
display: none;
}

.re_warnnig {
    font-size: 14px;
    margin: 8px auto;
    text-align: left;
}

.re_coupon {
    width: 100%;
    max-width: 400px;
    margin: 30px auto 0;
}

.re_coupon_l {
    min-width: 10px;
}
.re_coupon_c {
    display: block;
    margin: 15px auto;
    padding: 0 15px;
    border-left: 2px #FFF solid;
    border-right: 2px #FFF solid;
}
.re_coupon_r {
    min-width: 10px;
}

.re_coupon1:not(.contents_box) {
    font-size: 12px;
    margin: 0 auto 5px;
}

.re_coupon2 {
    margin: 0 auto;
    text-align: center;
    width: 209px;
}
    
.re_coupon3:not(.contents_box) {
    font-size: 30px;
}

.re_coupon4:not(.contents_box) {
    font-size: 50px;
    margin: 0 5px -3px 5px;
}

.re_coupon5 {
    gap: 10px;
}

.re_coupon6:not(.contents_box) {
line-height: 120%;
}

.re_coupon7:not(.contents_box) {
    font-size: 25px;
}

.re_red_box {
    margin: 30px auto;
    padding: 18px 20px;
}

.re_red_tit {
    margin: 0px auto 10px;
    padding: 5px;
}

.re_red_tit_img {
    width: 25px;
}

.re_red_tit_p:not(.contents_box) {
    font-size: 18px;
}

.re_box_p {
    font-size: 13px;
}
	
.re_br-sp {
  display: block;
}
	
}

.under_wrap .contents_box p.not_login{
	margin-bottom: 0;
}
.under_wrap .contents_box p.not_login a{
	color: #fff;
	text-decoration: underline;
}
.under_wrap .contents_box p.not_login a:hover{
	color: #fff;
	text-decoration:none;
}

.woocommerce .woocommerce-breadcrumb.tokuten{
	margin-top: 10px;
}
@media screen and (max-width: 850px){
.woocommerce .woocommerce-breadcrumb.tokuten {
    margin-bottom: 10px !important;
    margin: 80px 0 auto;
    padding: 10px 10px 0;
}
}

.calendars.xo-months .calendar.xo-month-wrap{
	display: none;
}
.calendars.xo-months .calendar.xo-month-wrap:first-child{
	display: block;
}
.woocommerce div.product div.images img.slide-arrow {
    width: auto;
    max-width: 15px;
}
.woocommerce div.product div.images .prev-arrow {
    left: -30px;
    bottom: 40px;
    position: absolute;
    z-index: 10;
    margin-top: 0;
    cursor: pointer;
}
.woocommerce div.product div.images .next-arrow {
    right: -30px;
    bottom: 40px;
    position: absolute;
    z-index: 10;
    margin-top: 0;
    cursor: pointer;
}
.woocommerce div.product div.images .slick-list {
    margin: 0 auto;
    height: 100px;
    /*padding: 0 0 0 20px;
    box-sizing: border-box;*/
}
.woocommerce div.product div.images .slick-list .woocommerce-product-gallery__image {
	width: 104px;
    display: inline-block;
    padding: 0;
    border: solid 1px #efefef;
    margin: 0 15px 0 0 !important;
    box-sizing: border-box;
	cursor: pointer;
}


.currentSlide{
	margin-bottom: 10px;
	display: none;
}
.woocommerce-product-gallery .currentSlide{
	display: block;
	height: 576px;
}
.woocommerce-product-gallery .currentSlide img {
    object-fit: contain;
    height: 100% !important;
    box-sizing: border-box;
}
.woocommerce-product-gallery__image.slick-slide{
	border: solid 1px #efefef!important;
	box-sizing: border-box!important;
	height: 100px!important;
}
.woocommerce-product-gallery__image.slick-slide.slick-current.slick-active{
	border: 2px solid #000!important;
	
}
.woocommerce-product-gallery__image.slick-slide img {
    object-fit: cover;
    height: 100% !important;
	pointer-events: none!important;
	touch-action: none!important;
}
.woocommerce-product-gallery__image.slick-slide a{
	pointer-events: none!important;
	touch-action: none!important;
}

.woocommerce-product-gallery__wrapper{
	display: none;
	width: 100%;
}

@media only screen and (max-width:1250px){	
    .woocommerce-product-gallery__wrapper.slick-initialized.slick-slider {
        width: 90%;
        margin: 0 auto !important;
        max-width: 460px;
    }
}

/* @media only screen and (max-width: 850px) and (-webkit-min-device-pixel-ratio: 1) {
    .woocommerce div.product div.images .slick-list .woocommerce-product-gallery__image {
        pointer-events: none;
    }
} */

.woocommerce div.product div.images .slick-list .woocommerce-product-gallery__image a {
    pointer-events: none;
    display: block;
}

@media only screen and (max-width:600px){	
    .woocommerce-product-gallery__wrapper.slick-initialized.slick-slider {
        max-width: 260px;
    }
	.woocommerce-product-gallery .currentSlide {
		height: 320px;
	}
	.woocommerce div.product div.images .slick-list {
		margin: 0 auto;
		height: 55px;
	}
	.woocommerce div.product div.images .slick-list .woocommerce-product-gallery__image {
		width: 55px;
	}
	
	.woocommerce-product-gallery__image.slick-slide {
	    height: 55px !important;
	}
	.woocommerce div.product div.images .prev-arrow {
		left: -32px;
		bottom: 17px;
	}
	.woocommerce div.product div.images .next-arrow {
		right: -32px;
		bottom: 17px;
	}
	
}

/* 20250114追記：商品ページ画像4枚以下の場合スライド無効化 */
.no-transform{
    width: 100% !important;
    transform: none !important;
}
.woocommerce div.product div.images .slick-list .slick-track.no-transform .woocommerce-product-gallery__image{
    margin: 0 13px 0 0 !important;
}
.woocommerce div.product div.images .slick-list .slick-track.no-transform .woocommerce-product-gallery__image:last-child{
    margin-right: 0 !important;
}


/* 20250312 footerレイアウト変更 */
.footer_box02 .flex {
    flex-direction: column;
}
.footer_box02 .flex .nav_box02 ul li.ttl {
    border-bottom: 1px solid #fff;
    margin-bottom: 1rem;
}
.footer_box02 .flex .nav_box02 ul li.ttl a {
    color: #f08c00;
}
.footer_box02 .flex .footer_box1 {
    display: flex;
    justify-content: center;
    gap: 50px;
}
.footer_box02 .flex .footer_box1 .footer_box_left {
    width: calc(100% - 50px - 300px);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 10px;
}
@media screen and (max-width: 768px){
    .footer_box02 .flex .footer_box1 .footer_box_left {
        width: 100%;
    }
}
.footer_box02 .flex .footer_box1 .footer_box_left .footer_box_left__01 {
    width: fit-content;
}
.footer_box02 .flex .footer_box1 .footer_box_left .footer_box_left__03 {
    width: 100%;
    display: flex;
    gap: 10px;
}
.footer_box02 .flex .footer_box1 .footer_box_left .footer_box_left__03 figure {
    width: fit-content;
    height: fit-content;
}
.footer_box02 .flex .footer_box1 .footer_box_left .footer_box_left__03 figure a {
    display: block;
}
.footer_box02 .flex .footer_box1 .calender_resize {
    max-width: 300px;
    width: 100%;
}
@media screen and (max-width:768px) {
    .footer_box02 .flex .footer_box1 .calender_resize {
        margin: 0 auto;
    }
}
@media screen and (max-width:768px){
    .footer_box02 .flex .footer_box1 {
        flex-direction: column;
    }
}
.footer_box02.footer_box .flex .nav_box {
    justify-content: center;
    gap: 30px;
    margin-top: 30px;
}

/* 202510 英語ページ改修 */
.en_btn_area {
	display:flex;
    justify-content: space-between;
    gap: 20px;
    margin:0px auto 40px;
}
.en_btn_area img {
	width:100%;
}
.en_btn_area a {
	width:32%;
}
.en_accordion_tit {
display:block flex;
align-items:center;
gap:20px;
justify-content:space-between;
background:#D2D2D2;
border-radius:10px;
text-align:center;
padding:10px 30px 10px 20px;
font-weight: bold;
border:none;
cursor:pointer;
margin:0 auto 30px;
font-size: 2.8rem;
letter-spacing:0.1rem;
user-select: none;
}
.en_accordion_tit:after {
content: "";
background:url(images/english/en_plus.svg)center center no-repeat;
background-size: contain;
width:25px;
height:25px;
display: block; 
}
.open.en_accordion_tit:after {
content: "";
background:url(images/english/en_minus.svg)center center no-repeat;
background-size: contain;
width:25px;
height:25px;
display: block; 
}
.en_accordion_tit.en_tit01:before {
content: "";
display: block;  
background:url(images/english/icon1.jpg)left center no-repeat;
background-size: contain;
width:100px;
height:70px;
}
.en_accordion_tit.en_tit02:before {
content: "";
display: block;  
background:url(images/english/icon2.jpg)left center no-repeat;
background-size: contain;
width:100px;
height:70px;
}
.en_accordion_tit.en_tit03:before {
content: "";
display: block;  
background:url(images/english/icon3.jpg)left center no-repeat;
background-size: contain;
width:100px;
height:70px;
}
.en_content {
 display: none;
margin:0 auto 60px;
user-select: none;
}
h3.en_title {
text-align:center;
font-weight: bold;
font-size:2.5rem;
}
.en_contact_area {
display:flex;
justify-content:center;
gap:30px;
margin:20px auto;
}
.en_contact_btn {
display:block;
text-align:center;
padding:7px 10px 10px 10px;
width:250px;
background: #E4001A;
border-radius:100vh;
color:#FFF;
font-size:1.7rem;
font-weight:bold;
}
.en_cost_waku {
display:block flex;
justify-content:center;
align-items:center;
border:3px #E38F15 solid;
margin:0 auto;
width:440px;
}
.en_cost1 {
display:block;
background:#E38F15;
padding:5px 10px;
font-size:1.7rem;
font-weight:bold;
width:220px;
text-align:center;
}
.en_cost2 {
display:block;
color:#E38F15;
padding:5px 10px;
font-size:1.7rem;
font-weight:bold;
width:220px;
text-align:center;
}
.en_faq_tit {
display:block;
background:#000;
color:#FFF;
padding:2px 10px;
font-size:2.5rem;
font-weight:bold;
text-align:center;
}
.en_faq_q {
display:block flex;
align-items:center;
gap:20px;
justify-content:space-between;
padding:20px 30px 20px 0px;
font-size:1.8rem;
font-weight: bold;
cursor:pointer;
user-select: none;
}
.en_faq_q:after {
content: "";
background:url(images/english/en_plus.svg)center center no-repeat;
background-size: contain;
width:20px;
height:20px;
display: block; 
flex-shrink: 0;
}
.open.en_faq_q:after {
content: "";
background:url(images/english/en_minus.svg)center center no-repeat;
background-size: contain;
width:20px;
height:20px;
display: block; 
}
.en_faq_a {
display:none;
padding:0px 0px 30px 0px;
font-size:1.8rem;
user-select: none;
}
.en_accordion_faq_container {
border-bottom:1px #000 dotted;
}
.en_accordion_faq {
margin:0 auto 50px;
}
.en_artist_tit {
font-size: 2.5rem;
    margin: 0 auto 35px;
    color: #000000;
    text-align: left;
    letter-spacing: 0.05em;
    position: relative;
    font-weight: normal;
    padding-bottom: 10px;
    border-bottom: 1px solid #000;
}
.en_map_area{
	display: flex;
    justify-content: center;
    gap: 20px;
    margin:40px auto;
}
.en_map_area img {
max-width:400px;
flex-shrink:0;
}
.en_map_area2{
	display:flex;
    justify-content: space-between;
    gap: 20px;
    margin:0px auto 40px;
	align-items:flex-start;
}
.en_map_area2 img {
width:28%;
}
.en_map_area2 div {
width:69%;
}
.en_review_tit {
text-align: center;
font-weight: bold;
font-size: 2.5rem;
letter-spacing:0.1rem;
display:flex;
align-items:center;
justify-content:center;
gap:20px;
}
.en_review_tit:before {
content: "";
display: block;
background: url(images/english/fukidashi.svg) left center no-repeat;
background-size: contain;
width: 55px;
height: 40px;
}
.en_review {
display:block;
border:2px #E4001A solid;
border-radius:10px;
padding: 20px 30px;
margin:15px auto 0px;
}
.en_review span {
display:block;
font-size:2rem;
margin-bottom:10px;
font-weight: bold;
}
.en_review_btn {
    display: block;
    text-align: center;
    padding: 7px 10px 10px 10px;
    width: 250px;
    background: #E4001A;
    border-radius: 100vh;
    color: #FFF;
    font-size: 1.7rem;
    font-weight: bold;
	margin:25px auto 40px;
}
.en_welove {
    display: block;
    text-align: center;
    width: 400px;
	margin:0px auto;
}
.modal {
  display: none;
  height: 100vh;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 100;
}
.modal__overlay {
  background: rgba(0, 0, 0, 0.8);
  height: 100vh;
  position: absolute;
  width: 100%;
}
.modal__content {
display:block;
  background: #fff;
  padding: 60px 15px 50px 35px;
  position: absolute;
  top: 50%;
 left: 50%;
  transform: translate(-50%, -50%);
  max-width: 800px;
  width: 90%;
max-height: 90vh;
	border-radius:10px;
	text-align:left;
}
.modal__content_scroll {
display:block;
padding-right:20px;
overflow-y: auto;
width: 100%;
max-height: 75vh;
-webkit-overflow-scrolling: touch; /* 慣性スクロール */
}
.modal__content_scroll::-webkit-scrollbar {
width: 3px;
}
.modal__content_scroll::-webkit-scrollbar-track {
background-color: #fff;
}
.modal__content_scroll::-webkit-scrollbar-thumb {
background-color: #999;
border-radius: 100vw;
}
.fixed {
  height: 100%;
  position: fixed;
  width: 100%;
}
.modal_close_btn {
  display: block;
  position: absolute;
right:20px;
top:20px;
  width: 30px;
  height: 30px;
cursor:pointer;
}
.modal_close_btn::before, .modal_close_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 3px; /* 棒の幅（太さ） */
  height: 30px; /* 棒の高さ */
  background: #333; /* バツ印の色 */
}
.modal_close_btn::before {
  transform: translate(-50%,-50%) rotate(45deg);
}
.modal_close_btn::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}
.en_shipping_tit {
    font-size: 2rem;
    font-weight: bold;
	margin-bottom:10px;
}
.modal__content_scroll .ul_check {
margin-bottom: 10px!important;
}
.en_pricemap {
margin: 20px auto;
max-width:800px;
}

#select2-billing_state-container, #select2-shipping_state-container {
    padding: 0 !important;
    margin: 0 !important;
}

@media screen and (max-width:768px){
.en_btn_area {
	display:block;
	width:80%;
	max-width:300px;
    margin:0px auto 20px;
}
.en_btn_area img {
	width:100%;
	margin:0px auto 10px;
}
.en_btn_area a {
	width:100%;
}
.en_accordion_tit {
font-size:2.2rem;
gap:10px;
padding:5px 15px 5px 10px;
margin:0 auto 15px;
}
.en_accordion_tit:after {
width:20px!important;
height:20px!important;
}
.open .en_accordion_tit:after {
width:20px!important;
height:20px!important;
}
.en_accordion_tit.en_tit01:before {
width:70px;
height:50px;
}
.en_accordion_tit.en_tit02:before {
width:70px;
height:50px;
}
.en_accordion_tit.en_tit03:before {
width:70px;
height:50px;
}
.en_content {
margin:0 auto 40px;
}
h3.en_title {
font-size:2.2rem;
}
.en_contact_area {
display:block;
margin:10px auto 0;
}
.en_contact_btn {
padding:6px 8px 8px 8px;
width:200px;
font-size:1.5rem;
margin:0px auto 10px;
}
.en_cost_waku {
display:block;
width:250px;
}
.en_cost1 {
padding:5px 10px;
font-size:1.5rem;
width:248px;
}
.en_cost2 {
padding:5px 10px;
font-size:1.5rem;
width:248px;
}
.en_faq_tit {
padding:1px 10px;
font-size:1.8rem;
}
.en_faq_q {
padding:12px 10px 12px 0px;
font-size:1.5rem;
}
.en_faq_q:after {
width:16px;
height:16px;
}
.open.en_faq_q:after {
width:16px;
height:16px; 
}
.en_faq_a {
display:none;
padding:0px 0px 16px 0px;
font-size:1.5rem;
}
.en_accordion_faq {
margin:0 auto 30px;
}
.en_artist_tit {
font-size: 1.8rem;
margin: 0 auto 20px;
}
.en_map_area{
	display:block;
    margin:25px auto;
}
.en_map_area img {
width:100%;
max-width:400px;
display:block;
margin:0 auto 15px;
}
.en_map_area2{
display:block;
margin:0px auto 20px;
}
.en_map_area2 img {
width:70%;
max-width:250px;
display:block;
margin:0 auto 10px;
}
.en_map_area2 div {
width:100%;
}
.en_review_tit {
font-size: 2rem;
gap:15px;
margin-top:30px;
}
.en_review_tit:before {
width: 45px;
height: 40px;
}
.en_review {
padding: 10px 20px;
margin:15px auto 0px!important;
}
.en_review span {
font-size:1.7rem;
margin-bottom:5px;
}
.en_review_btn {
padding: 6px 8px 8px 8px;
width: 200px;
font-size: 1.5rem;
margin:20px auto 40px;
}
.en_welove {
    width:80%;
    max-width: 400px;
}
.modal__content {
  padding: 50px 10px 35px 18px;
}
.modal__content_scroll {
  padding-right: 8px;
max-height: 80vh;
}
.fixed {
  height: 100%;
  position: fixed;
  width: 100%;
}
.modal_close_btn {
right:15px;
top:15px;
  width: 25px;
  height: 25px;
}
.modal_close_btn::before, .modal_close_btn::after {
  width: 3px; /* 棒の幅（太さ） */
  height: 25px; /* 棒の高さ */
}
.en_shipping_tit {
    font-size: 1.4rem;
	margin-bottom:0px;
}
.modal__content_scroll .ul_check li {
padding: 5px!important;
}
}