@charset "utf-8";

/*- 共用 -*/
html {
background:#e8e8e8;
}
body {
background:#fff url(../img/back.png) repeat top center;
color:#333;
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo,Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
position:relative;
min-width:0;
max-width:100%;
width:100%;
margin-left:auto;
margin-right:auto;
}

a:link {text-decoration:none;}
a:visited {}
a:hover {text-decoration:underline;}

.mr5 {
margin:5px;
}
.mr10 {
margin:10px;
}
.mrl5 {
margin-left:5px;
}
.mrr5 {
margin-right:5px;
}
.mrt5 {
margin-top:5px;
}
.mrb5 {
margin-bottom:5px;
}
.mrl10 {
margin-left:10px;
}
.mrr10 {
margin-right:10px;
}
.mrt10 {
margin-top:10px;
}
.mrb10 {
margin-bottom:10px;
}
.mrl20 {
margin-left:20px;
}
.mrr20 {
margin-right:20px;
}
.mrt20 {
margin-top:20px;
}
.mrb20 {
margin-bottom:20px;
}
.mrl25 {
margin-left:25px;
}
.mrr25 {
margin-right:25px;
}
.mrt25 {
margin-top:25px;
}
.mrb25 {
margin-bottom:25px;
}
.mrlauto {
margin-left:auto;
}
.mrrauto {
margin-right:auto;
}

.pd5 {
padding:5px;
}
.pdt5 {
padding-top:5px;
}
.pdb5 {
padding-bottom:5px;
}
.pdl5 {
padding-left:5px;
}
.pdr5 {
padding-right:5px;
}
.pd10 {
padding:10px;
}
.pdt10 {
padding-top:10px;
}
.pdb10 {
padding-bottom:10px;
}
.pdl10 {
padding-left:10px;
}
.pdr10 {
padding-right:10px;
}

.line5 {
margin:5px 0;
padding:0;
height:1px;
border-top:1px dotted #cdd2d7;
border-bottom:none;
border-left:none;
border-right:none;
background:none;
}
.line10 {
margin:10px 0;
padding:0;
height:1px;
border-top:1px dotted #cdd2d7;
border-bottom:none;
border-left:none;
border-right:none;
background:none;
}

.spa5 {
margin:0;
padding:0;
height:5px;
border:none;
background:none;
}
.spa10 {
margin:0;
padding:0;
height:10px;
border:none;
background:none;
}
.spa25 {
margin:0;
padding:0;
height:25px;
border:none;
background:none;
}

.tx_tal {
text-align:left;
}
.tx_tac {
text-align:center;
}
.tx_tar {
text-align:right;
}
.tx_bld {
font-weight:bold;
}
.tx_r {
color:#FF0033;
}
.tx_bu {
color:#0066FF;
}
.tx_gr {
color:#808080;
}
.tx_thr {
text-decoration:line-through;
}
.tx_str {
font-size:110%;
}
.tx_sm {
font-size:80%;
}

.bg_alrt {
background:#FFFF77;
}

.tx_bdtdot {
border-top:1px dotted #cdd2d7;
}
.tx_bdbdot {
border-bottom:1px dotted #cdd2d7;
}
.tx_bdldot {
border-left:1px dotted #cdd2d7;
}
.tx_bdrdot {
border-right:1px dotted #cdd2d7;
}

.tx_bdht {
border-top:5px solid #febebf;
}
.tx_bdkk {
border-top:5px solid #ffaf78;
}
.tx_bdtk {
border-top:5px solid #ffdc64;
}
.tx_bdk {
border-top:5px solid #91dc9b;
}
.tx_bdcs {
border-top:5px solid #87befa;
}
.tx_bdko {
border-top:5px solid #d2aaff;
}

.wd10 {
width:10%;
}
.wd20 {
width:20%;
}
.wd30 {
width:30%;
}
.wd40 {
width:40%;
}
.wd50 {
width:50%;
}
.wd60 {
width:60%;
}
.wd70 {
width:70%;
}
.wd80 {
width:80%;
}
.wd90 {
width:90%;
}

.clear {
clear:both;
}
.disnon {
display:none;
}
.bx {
background:rgba(255,255,255,0.7);
}
.bx .inr {
background:#fff;
-moz-box-shadow: 0 0 6px 1px #ccc;
-webkit-box-shadow: 0 0 6px 1px #ccc;
box-shadow: 0 0 6px 1px #ccc;
}

p {
font-size:80%;
line-height:160%;
}

.tl_h2 {
font-size:120%;
font-weight:bold;
color:#666;
text-shadow: 1px 1px 1px #fff, -1px -1px 0px #333;
border-top:3px solid #e94b65;
border-bottom:1px solid #c8c8c8;
background:#dcdcdc;
}
.tl_h3 {
font-size:100%;
font-weight:bold;
color:#fff;
text-shadow:-1px -1px 0px #e94b65;
background:#f9acb9;
}

.newregular span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#f00000;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.regular span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#ff3caa;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.newmdl span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#ff6900;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.mdl span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#ffaa00;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.newotl span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#af0087;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.otl span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#cd64c3;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.newprm span {
padding:2px;
height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#1e74f6;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.prm span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#69b9ff;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.newgoods span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#06980d;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}
.goods span {
padding:2px;
height:30px;
line-height:30px;
text-shadow:-1px -1px 0px #333;
color:#fff;
background:#4bc742;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
display:block;
}

.btnic a {
padding:0 3px;
font-weight:bold;
text-decoration:none;
color:#333;
border:1px solid #999;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
behavior: url(/js/PIE.htc);
}
.btnic a:hover {
background:#d0d0d0;
}

.btn_row {
width:80%;
}
.btn_row li {
width:50%;
float:left;
}

.btn_inline {
padding:2px 5px;
background:#ffe600 url(../img/back_btn.png) repeat-x;
-moz-box-shadow: 0 0 3px 1px #b7b7b7;
-webkit-box-shadow: 0 0 3px 1px #b7b7b7;
box-shadow: 0 0 3px 1px #b7b7b7;
-moz-border-radius:8px;
-webkit-border-radius:8px;
border-radius:8px;
border:2px solid #333;
}

.btn {
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
behavior: url(/js/PIE.htc);
}
.btn a {
font-size:80%;
font-weight:bold;
text-align:center;
text-decoration:none;
display:block;
}
.go {
background:#ffe600 url(../img/back_btn.png) repeat-x;
-moz-box-shadow: 0 0 3px 1px #b7b7b7;
-webkit-box-shadow: 0 0 3px 1px #b7b7b7;
box-shadow: 0 0 3px 1px #b7b7b7;
-moz-border-radius:8px;
-webkit-border-radius:8px;
border-radius:8px;
border:2px solid #333;
}
.go:hover {
background:#e60014 url(../img/back_btn.png) repeat-x;
}
.go a {
padding:5px 0;
font-size:140%;
color:#333;
}

.search a {
padding:5px 0;
font-size:120%;
color:#fff;
}
.prtsht {
background:#ff7800 url(../img/back_btn.png) repeat-x;
-moz-box-shadow: 0 0 3px 1px #b7b7b7;
-webkit-box-shadow: 0 0 3px 1px #b7b7b7;
box-shadow: 0 0 3px 1px #b7b7b7;
-moz-border-radius:8px;
-webkit-border-radius:8px;
border-radius:8px;
border:2px solid #333;
}
.prtsht:hover {
background:#b95700 url(../img/back_btn.png) repeat-x;
}
.prtsht a {
padding:5px 0;
font-size:120%;
color:#fff;
}
.choice,
.choice_rg {
background:#ff0041 url(../img/back_btn.png) repeat-x;
-moz-box-shadow: 0 0 3px 1px #b7b7b7;
-webkit-box-shadow: 0 0 3px 1px #b7b7b7;
box-shadow: 0 0 3px 1px #b7b7b7;
-moz-border-radius:8px;
-webkit-border-radius:8px;
border-radius:8px;
border:2px solid #333;
}
.choice:hover,
.choice_rg:hover {
background:#b9002f url(../img/back_btn.png) repeat-x;
}
.choice a {
padding:5px 0;
font-size:80%;
color:#fff;
}
.choice_rg a {
padding:5px 0;
font-size:120%;
color:#fff;
}
.watch a {
font-size:100%;
color:#fff;
background:#ffb400;
-moz-box-shadow: 0 0 3px 1px #b7b7b7;
-webkit-box-shadow: 0 0 3px 1px #b7b7b7;
box-shadow: 0 0 3px 1px #b7b7b7;
}
.watch a:hover {
background:#ffd570;
}
.gs {
background:#707070 url(../img/back_btn.png) repeat-x;
-moz-box-shadow: 0 0 3px 1px #b7b7b7;
-webkit-box-shadow: 0 0 3px 1px #b7b7b7;
box-shadow: 0 0 3px 1px #b7b7b7;
-moz-border-radius:8px;
-webkit-border-radius:8px;
border-radius:8px;
border:2px solid #333;
}
.gs:hover {
background:#303030 url(../img/back_btn.png) repeat-x;
}
.gs a {
padding:5px 0;
font-size:80%;
color:#fff;
}
.gs span {
padding:5px 0;
font-size:80%;
font-weight:bold;
color:#000;
text-align:center;
display:block;
}



/*- エラー -*/
.error {
margin:0 auto;
width:100px;
height:100px;
font-family: Georgia, "Times New Roman", Times, serif;
font-size:600%;
line-height:100px;
text-align:center;
color:#fff;
background:#FF9933;
-moz-box-shadow: 0 0 3px 1px #c7ae82;
-webkit-box-shadow: 0 0 3px 1px #c7ae82;
box-shadow: 0 0 3px 1px #c7ae82;
}



/*- フォーム -*/
.fset p {
font-size:80%;
line-height:160%;
}

.fset fieldset {
margin-bottom:5px;
padding:5px;
background:#f0f0f0;
}
.fset fieldset p img {
height:150px;
}
.fset label {
font-size:90%;
font-weight:bold;
line-height:160%;
display:block;
}
.fset fieldset input,
.fset fieldset textarea,
.fset fieldset select {
padding:5px;
font-size:100%;
color:#333333;
border:1px solid #ccc;
box-shadow:0 0 4px #ccc;
-moz-box-shadow:0 0 4px #ccc;
-webkit-box-shadow:0 0 4px #ccc;
}
.fset input[type=submit] {
margin:5px auto;
padding:0 10px;
color:#fff;
font-size:110%;
font-weight:bold;
line-height:180%;
border:none;
background:#14beb9;
-moz-box-shadow: 0 0 3px 1px #99b9b6;
-webkit-box-shadow: 0 0 3px 1px #99b9b6;
box-shadow: 0 0 3px 1px #99b9b6;
cursor:pointer;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
behavior: url(/js/PIE.htc);
}
.fset input:hover[type=submit] {
background:#96e1dc;
}
.fset input[type=button],
.fset input[type=reset] {
margin:5px auto;
padding:0 10px;
color:#fff;
font-size:110%;
font-weight:bold;
line-height:180%;
border:none;
box-shadow:0 0 4px #aaa;
-moz-box-shadow:0 0 4px #aaa;
-webkit-box-shadow:0 0 4px #aaa;
background:#aaaaaa;
cursor:pointer;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
behavior: url(/js/PIE.htc);
}
.fset input:hover[type=button],
.fset input:hover[type=reset] {
background:#d0d0d0;
}

.radio-group {
margin:0 auto;
text-align:center;
}
.radio-group input {
/*
opacity: 0;
 filter: alpha(opacity=0);
*/
}
.radio-group div {
position: relative;
}
.radio-group input {
position: absolute;
left: 0px;
outline:none;
}
.radio-group label {
cursor: pointer;
padding: 5px 10px;
float: left;
font-size:80%;
text-shadow:-1px -1px 2px #fff;
border: solid 1px #aaa;
margin-right: -1px;
background:#efefef;
box-shadow: 2px 2px 6px #ddd;
-webkit-box-shadow: 2px 2px 6px #ddd;
-moz-box-shadow: 2px 2px 6px #ddd;
display:inline-block;
behavior: url(/js/PIE.htc);
}
.radio-group label.checked  {
color: #fff;
background:#14beb9;
text-shadow: 0px 0px 0px #fff;
}

.check-group {
margin:0 auto;
}
.check-group input {
display: none;
}
.check-group label {
cursor: pointer;
padding:5px 10px;
float:left;
font-size:80%;
text-shadow:-1px -1px 2px #fff;
border: solid 1px #aaa;
margin-right: -1px;
margin-bottom: -1px;
background:#efefef;
box-shadow: 2px 2px 6px #ddd;
-webkit-box-shadow: 2px 2px 6px #ddd;
-moz-box-shadow: 2px 2px 6px #ddd;
display:inline-block;
behavior: url(/js/PIE.htc);
}
.check-group input:checked+label {
color: #fff;
background:#14beb9;
text-shadow: 0px 0px 0px #fff;
}
.check-group p {
margin:5px 0 0 0;
}




/*- ヘッダー -*/
.hset {
/*! background: url(../img/back_head.gif) repeat top center; */
/*! -moz-box-shadow: 0 0 6px 1px #50001e; */
/*! -webkit-box-shadow: 0 0 6px 1px #50001e; */
/*! box-shadow: 0 0 6px 1px #50001e; */
}
.hset .inr {
margin:0 auto;
max-width:100%;
width:100%;
position:relative;
}
.hset h1 {
width:215px;
height:265px;
overflow:hidden;
text-indent:-9999px;
background:url(../img/logo.png) no-repeat;
}
.hset .shopinfo {
width:690px;
background:#fff;
position:absolute;
top:0;
right:30px;
-moz-box-shadow: 0 0 6px 1px #50001e;
-webkit-box-shadow: 0 0 6px 1px #50001e;
box-shadow: 0 0 6px 1px #50001e;
}
.hset .shopinfo ul {
padding:5px 10px;
}
.hset .shopinfo li {
width:50%;
float:left;
}
.hset .shopinfo_sp {
display:none;
}
.hset .tl_head {
width:690px;
height:190px;
overflow:hidden;
text-indent:-9999px;
background:url(../img/tl_head_anime.gif?v2) no-repeat;
position:absolute;
top:55px;
right:30px;
}
.hset .mnopen {
display:none;
}
.hset nav {
background:url(../img/back_nav.png) repeat-x;
}
.hset nav ul {
margin:0 auto;
max-width:100%;
width:100%;
}
.hset nav ul li {
width:20%;
height:65px;
float:left;
}
.hset nav ul li a {
height:65px;
color:#666;
text-shadow: 1px 1px 1px #fff, -1px -1px 0px #333;
text-align:center;
text-decoration:none;
background:url(../img/back_nav.png) repeat-x;
display:block;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
}
.hset nav ul li a:hover {
background:url(../img/back_nav_on.png) repeat-x;
}
.hset nav ul li p {
padding-top:25px;
font-size:110%;
font-weight:bold;
}



/*- ヘッダー管理システム -*/
.mshset {
background:#e94b65;
-moz-box-shadow: 0 0 6px 1px #50001e;
-webkit-box-shadow: 0 0 6px 1px #50001e;
box-shadow: 0 0 6px 1px #50001e;
}
.mshset .inr {
margin:0 auto;
width:970px;
position:relative;
}
.mshset h1 {
margin:0 auto;
width:940px;
height:172px;
overflow:hidden;
text-indent:-9999px;
background:url(../img/logo_ms.png) no-repeat;
}



/*- フッター -*/
.ftset {
background:#fff;
}
.ftset nav {
background:#dcdcdc;
-moz-box-shadow: 0 0 6px 1px #50001e;
-webkit-box-shadow: 0 0 6px 1px #50001e;
box-shadow: 0 0 6px 1px #50001e;
}
.ftset nav ul {
margin:0 auto;
width:970px;
}
.ftset nav ul li {
width:20%;
float:left;
}
.ftset nav ul li a {
padding:5px 0;
font-size:70%;
color:#333;
text-align:center;
text-decoration:none;
display:block;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
behavior: url(/js/PIE.htc);
}
.ftset nav ul li a:hover {
background:#fff;
}
.ftset small {
padding:20px 0;
font-size:70%;
color:#fff;
text-align:center;
display:block;
}



/*- 共用枠組 -*/
.wrrp {
/*! padding-top:10px; */
padding-bottom:10px;
}
.cnt {
margin:0 auto;
max-width:100%;
width:100%;
position:relative;
}


/*- ページング -*/
.pgn {
text-align:center;
}
.pgn li {
display:-moz-inline-box;
display:inline-block;
}
.pgn li a {
padding:2px 5px;
font-size:100%;
color:#333;
border:2px solid #999;
text-align:center;
text-decoration:none;
display:block;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
behavior: url(/js/PIE.htc);
}
.pgn li a:hover {
background:#d0d0d0;
}


/*- パンくず枠 -*/
.brdl {
font-size:80%;
background:#fff;
-moz-box-shadow: 0 0 6px 1px #ccc;
-webkit-box-shadow: 0 0 6px 1px #ccc;
box-shadow: 0 0 6px 1px #ccc;
behavior: url(/js/PIE.htc);
position: relative;
}



/*- 新着情報 -*/
.news .fradmn {
background:#ffebf0;
}
.news dd {
margin-bottom:5px;
padding-bottom:5px;
border-bottom:1px dotted #c0c5ca;
}
.news dd:last-child {
margin-bottom:0px;
padding-bottom:0px;
border-bottom:none;
}



/*- オーダー -*/
.stodr {
width:460px;
float:left;
background:#f0f0f0;
}
.mlodr {
width:460px;
float:right;
background:#f0f0f0;
}
.stodr .in,
.mlodr .in {
margin:5px;
background:#fff;
}
.stodr h3,
.mlodr h3 {
padding:8px 0 13px 0;
font-size:120%;
font-weight:bold;
text-align:center;
text-shadow: 1px 1px 0px #b62139, -1px -1px 0px #e94b64;
color:#e94b64;
background:url(../img/odr_h3.gif) no-repeat center bottom;
}
.stodr h4,
.mlodr h4 {
margin:5px 10px;
font-size:110%;
font-weight:bold;
text-shadow: 1px 1px 0px #b62139;
color:#e94b64;
}
.no1 {
padding:9px 0 9px 45px;
background:url(../img/no1.png) no-repeat left top;
}
.no2 {
padding:9px 0 9px 45px;
background:url(../img/no2.png) no-repeat left top;
}
.no3 {
padding:9px 0 9px 45px;
background:url(../img/no3.png) no-repeat left top;
}
.no4 {
padding:9px 0 9px 45px;
background:url(../img/no4.png) no-repeat left top;
}
.no5 {
padding:9px 0 9px 45px;
background:url(../img/no5.png) no-repeat left top;
}
.no6 {
padding:9px 0 9px 45px;
background:url(../img/no6.png) no-repeat left top;
}
.stodr .fl,
.mlodr .fl {
text-align:center;
}



/*- 注意事項 -*/
.attn li {
margin:5px;
width:300px;
float:left;
background:#f0f0f0;
}
.attn .in {
margin:5px;
background:#fff;
}
.attn h3 {
padding:8px 0 13px 0;
font-size:120%;
font-weight:bold;
text-align:center;
text-shadow: 1px 1px 0px #b62139, -1px -1px 0px #e94b64;
color:#e94b64;
background:url(../img/odr_h3.gif) no-repeat center bottom;
}



/*- カタログ -*/
/*
.catalog li {
margin:5px;
width:120px;
float:left;
background:#e0e0e0;
}
.catalog li .frm {
margin:5px auto;
width:110px;
background:#fff;
}
.catalog li img {
width:100%;
height:74px;
}
.catalog li p {
font-size:70%;
line-height:140%;
}

.ctlgdtl {
width:100%;
}
.ctlgdtl img {
width:100%;
}
.ctlgdtl p {
font-size:70%;
line-height:140%;
}
.ctlgdtl table {
width:100%;
border-top:1px dotted #999999;
}
.ctlgdtl table tr {
border-bottom:1px dotted #999999;
}
.ctlgdtl table th {
width:30%;
background:#f0f0f0;
}
.ctlgdtl table td {
width:70%;
}
.ctlgdtl table p {
padding:3px;
}
*/
.catalog li {
margin:5px;
/*width:120px;*/
width: 30%;    
float:left;
background:#e0e0e0;
}
.catalog li .frm,
.catalog li .frmsub {
margin:5px auto;
padding-bottom:5px;
width:110px;
background:#fff;
position:relative;
}
.catalog li .frm .ctlg img {
width:100%;
height:74px;
}
.catalog li .frm .ic_soldout {
width:100%;
height:74px;
background:url(../img/back_blk.png) repeat;
position:absolute;
top:0;
left:0;
text-align:center;
}
.catalog li .frm .ic_soldout img {
margin:4px;
width:66px;
height:66px;
}
.catalog li .frm .ic_limited {
width:114px;
height:22px;
position:absolute;
top:59px;
left:-2px;
text-align:center;
}
.catalog li .frm .ic_limited img {
width:114px;
height:22px;
}

.catalog li .frmsub .ctlg img {
width:100%;
height:110px;
}
.catalog li .frmsub .ic_soldout {
width:100%;
height:110px;
background:url(../img/back_blk.png) repeat;
position:absolute;
top:0;
left:0;
text-align:center;
}
.catalog li .frmsub .ic_soldout img {
margin:22px 0;
width:66px;
height:66px;
}
.catalog li .frmsub .ic_limited {
width:114px;
height:22px;
position:absolute;
top:90px;
left:-2px;
text-align:center;
}
.catalog li .frmsub .ic_limited img {
width:114px;
height:22px;
}

.catalog li p {
font-size:70%;
line-height:140%;
}

.ctlgdtl {
width:100%;
}
.ctlgdtl img {
width:100%;
}
.ctlgdtl p {
font-size:70%;
line-height:140%;
}
.ctlgdtl table {
width:100%;
border-top:1px dotted #999999;
}
.ctlgdtl table tr {
border-bottom:1px dotted #999999;
}
.ctlgdtl table th {
width:30%;
background:#f0f0f0;
}
.ctlgdtl table td {
width:70%;
}
.ctlgdtl table p {
padding:3px;
}



/*- 商品詳細 -*/
.itmdtl .itmthml {
margin:0 auto 5px auto;
width:500px;
display:block;
position:relative;
}
.itmdtl .itmthm {
margin-bottom:5px;
width:410px;





height:275px;
display:block;

float:left;
position:relative;
}
.itmdtl img {
width:100%;
}
.itmdtl .itmthml img {
width:100%;
height:auto;
}
.itmdtl .itmthm img {
width:100%;
height:100%;
}
.itmdtl .itmthm .ic_soldout {
width:100%;
height:100%;
background:url(../img/back_blk.png) repeat;
position:absolute;
top:0;
left:0;
}
.itmdtl .itmthm .ic_soldout img {
margin-top:-65px;
margin-left:-65px;
width:130px;
height:130px;
position:absolute;
top:50%;
left:50%;
}
.itmdtl .itmthml .ic_soldout {
width:100%;
height:100%;
background:url(../img/back_blk.png) repeat;
position:absolute;
top:0;
left:0;
text-align:center;
}
.itmdtl .itmthml .ic_soldout img {
margin-top:-82px;
margin-left:-82px;
width:165px;
height:165px;
position:absolute;
top:50%;
left:50%;
}
.itmdtl .limited {
margin-bottom:5px;
background:url(../img/back_limited.gif) repeat-x;
text-align:center;
}
.itmdtl .limited img {
width:500px;
height:50px;
}

.itmdtl .movie {
margin-bottom:5px;
width:515px;
height:265px;
border:5px solid #e0e0e0;
background:#e0e0e0;
float:right;
}
.itmdtl .itmtx {
margin-bottom:5px;
width:620px;
float:left;
}
.itmdtl table {
margin-bottom:5px;
width:310px;
border-top:1px dotted #999999;
float:right;
}
.itmdtl table tr {
border-bottom:1px dotted #999999;
}
.itmdtl table th {
width:30%;
background:#f0f0f0;
}
.itmdtl table td {
width:70%;
}
.itmdtl table p {
padding:3px;
}



/*- カート -*/
.cart {
margin:0 auto;
width:30%;
}
.cart table {
width:100%;
border:3px solid #e0e0e0;
}
.cart tr {
border-bottom:1px dotted #cdd2d7;
}
.cart table p {
padding:0 3px;
}



/*- 店舗情報 -*/
.shpdtl .shpts {
background:#f0f5fa;
}
.shpdtl .shpnm {
width:53%;
float:left;
}
.shpdtl dt,
.shpdtl dd {
padding:5px;
}
.shpdtl .shpnm h3 {
font-size:120%;
font-weight:bold;
}
.shpdtl .shptel {
width:15%;
float:right;
}
.shpdtl .shpfax {
width:15%;
float:right;
}
.shpdtl .shpml {
width:15%;
float:right;
}
.shpdtl .shptel dt,
.shpdtl .shptel dd,
.shpdtl .shpfax dt,
.shpdtl .shpfax dd,
.shpdtl .shpml dt,
.shpdtl .shpml dd {
text-align:center;
}
.shpdtl .shptel dt,
.shpdtl .shpfax dt,
.shpdtl .shpml dt {
font-size:90%;
}
.shpdtl .shptel dd p,
.shpdtl .shpfax dd p,
.shpdtl .shpml dd a {
font-size:100%;
font-weight:bold;
}

.shpdtl table {
width:100%;
border-top:1px solid #c0c5ca;
border-left:1px solid #c0c5ca;
}
.shpdtl th {
background:#e0e5ea;
border-bottom:1px solid #c0c5ca;
border-right:1px solid #c0c5ca;
}
.shpdtl th p {
padding:2px 4px;
border-top:1px solid #fff;
}
.shpdtl td {
background:#fff;
border-bottom:1px solid #c0c5ca;
border-right:1px solid #c0c5ca;
}
.shpdtl td p {
padding:2px 4px;
border-top:1px solid #fff;
}



/*- 注文票 -*/
.odst {
position:relative;
}
.odst h1 {
padding:2px;
font-size:80%;
font-weight:bold;
text-align:center;
color:#fff;
background:#000;
}
.odst h2 {
padding:2px;
font-size:70%;
font-weight:bold;
text-align:center;
color:#fff;
background:#000;
}
.odst p {
font-size:60%;
line-height:120%;
}
.odst img {
width:100px;
height:100px;
}

.odst .ic_no1 {
width:30px;
height:30px;
position:absolute;
top:5%;
left:2%;
background:#fff;
}
.odst .ic_no2 {
width:30px;
height:30px;
position:absolute;
top:5%;
left:50%;
background:#fff;
}
.odst .ic_no3 {
width:30px;
height:30px;
position:absolute;
top:18%;
left:2%;
background:#fff;
}
.odst .ic_no4 {
width:30px;
height:30px;
position:absolute;
top:40%;
left:2%;
background:#fff;
}
.odst .ic_no5 {
width:30px;
height:30px;
position:absolute;
top:55%;
left:2%;
background:#fff;
}
.odst .ic_no6 {
width:30px;
height:30px;
position:absolute;
top:75%;
left:2%;
background:#fff;
}
.odst .ic_no1 img,
.odst .ic_no2 img,
.odst .ic_no3 img,
.odst .ic_no4 img,
.odst .ic_no5 img,
.odst .ic_no6 img {
width:100%;
height:100%;
}

.odst .info {
margin:0 auto 5px auto;
}
.odst .day {
width:48%;
float:left;
border:1px solid #000;
}
.odst .fax {
width:48%;

float:right;
border:1px solid #000;
}
.odst .ordertl,
.odst .faxtl {
padding:2px;
font-size:60%;
font-weight:bold;
text-align:center;
border-bottom:1px solid #000;
}
.odst .date,
.odst .faxnmb {
padding:2px;
font-size:60%;
text-align:center;
}

.odst table {
width:100%;
font-size:60%;
border-top:1px solid #000;
border-left:1px solid #000;
}
.odst th {
padding:2px;
font-weight:bold;
text-align:center;
border-right:1px solid #000;
border-bottom:1px solid #000;
}
.odst td {
padding:2px;
border-right:1px solid #000;
border-bottom:1px solid #000;
}
.odst .nmb {
width:15%;
}
.odst .name {
width:60%;
}
.odst .count {
width:10%;
}
.odst .pay {
width:15%;
}
.odst .username,
.odst .usertel,
.odst .usermail {
width:20%;
}
.odst .shopname {
width:50%;
}
.odst .shopaddress {
width:50%;
}


/*- キャンペーン -*/
.cp {
border:2px solid #b95ae6;
background:url(../img/cp/back_cp.gif) repeat;
}
.cp h2 {
margin-bottom:5px;
width:100%;
height:208px;
background:url(../img/cp/head.png) no-repeat center top;
text-indent:-9999px;
overflow:hidden;
display:block;
}
.cp h3 {
margin-bottom:5px;
width:100%;
height:212px;
background:url(../img/cp/present.png) no-repeat center top;
text-indent:-9999px;
overflow:hidden;
display:block;
}
.cp .exam {
margin:0 auto 10px auto;
width:90%;
}
.cp .exam .pay {
padding:5px;
background:#CC66CC;
font-size:120%;
font-weight:bold;
color:#fff;
text-align:center;
}
.cp .exam .atr {
font-weight:bold;
text-align:right;
}
.cp .howtocp {
margin:0 auto 10px auto;
width:90%;
background:#fff;
}
.cp .howtocp h4 {
padding:5px;
background:#CC66CC;
font-size:80%;
font-weight:bold;
color:#fff;
text-align:center;
}
.cp .howtocp p {
padding:3px 10px;
}


/* #Media Queries
================================================== */

@media screen {

body {
background:#fff url(../img/back.png) repeat top center;
color:#333;
font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro","メイリオ", Meiryo,Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
position:relative;
min-width:0;
}

.btn_row {
width:80%;
}
.btn_row li {
width:100%;
float:none;
}

/*- ヘッダー -*/
.hset {
/*! background: url(../img/back_head.gif) repeat top center; */
/*! -moz-box-shadow: 0 0 6px 1px #50001e; */
/*! -webkit-box-shadow: 0 0 6px 1px #50001e; */
/*! box-shadow: 0 0 6px 1px #50001e; */
}
.hset .inr {
margin:0 auto;
/*! padding-top:170px; */
width:100%;
/*! position:relative; */
}
.hset h1 {
margin-left:-17px;
width:36px;
height:38px;
overflow:hidden;
text-indent:-9999px;
background:url(../img/logo.png) no-repeat;
background-position:top center;
background-size:100% 100%;
position:absolute;
top:0;
left:50%;
}
.hset .shopinfo {
display:none;
}
.hset .shopinfo_sp {
/*! margin:5px 0 0 0; */
background:#fff;
-moz-box-shadow: 0 0 3px 1px #50001e;
/*! -webkit-box-shadow: 0 0 3px 1px #50001e; */
/*! box-shadow: 0 0 3px 1px #50001e; */
display:block;
}
.hset .tl_head {
margin-left:-155px;
width:310px;
height:90px;
overflow:hidden;
text-indent:-9999px;
background:url(../img/tl_head_anime.gif?v2) no-repeat;
background-position:top center;
background-size:100% 100%;
position:absolute;
top:39px;
left:50%;
}
.hset .mnopen {
display:block;
}
.hset .mnopen a {
padding:20px 0 5px 0;
color:#666;
text-shadow: 1px 1px 1px #fff, -1px -1px 0px #333;
text-align:center;
text-decoration:none;
background:url(../img/back_nav.png) repeat-x;
display:block;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
}
.hset .mnopen a:hover {
background:url(../img/back_nav_on.png) repeat-x;
}
.hset nav {
display:none;
}



/*- ヘッダー管理システム -*/
.mshset {
background:#e94b65;
-moz-box-shadow: 0 0 6px 1px #50001e;
-webkit-box-shadow: 0 0 6px 1px #50001e;
box-shadow: 0 0 6px 1px #50001e;
}
.mshset .inr {
margin:0 auto;
width:100%;
position:relative;
}
.mshset h1 {
margin:0 auto;
width:280px;
height:50px;
overflow:hidden;
text-indent:-9999px;
background:url(../img/logo_ms.png) no-repeat;
background-position:top center;
background-size:100% 100%;
}



/*- メニュー（右ドロワー） -*/
/* PCでも body と同じ 390px 中央カラム内に収める（fixed は viewport 基準のため） */
.sp-menu-drawer {
    position: fixed;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 100%;
    max-width: 100%;
    transform: translateX(-50%);
    z-index: 10000;
    pointer-events: none;
    visibility: hidden;
}

.sp-menu-drawer__overlay {
    position: absolute;
    inset: 0;
    margin: 0;
    padding: 0;
    border: 0;
    background: rgba(0, 0, 0, 0.55);
    opacity: 0;
    cursor: pointer;
    transition: opacity 0.28s ease;
}

.sp-menu-drawer__panel {
    position: absolute;
    top: 0;
    right: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    background: #fff;
    padding: 48px 16px 24px;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    transform: translateX(100%);
    transition: transform 0.3s ease;
}

.sp-menu-drawer__close {
    position: absolute;
    top: 8px;
    right: 10px;
    width: 40px;
    height: 40px;
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    color: #111;
    cursor: pointer;
    font-size: 28px;
    line-height: 40px;
}

body.is-sp-menu-open {
    overflow: hidden;
}

body.is-sp-menu-open .sp-menu-drawer {
    pointer-events: auto;
    visibility: visible;
}

body.is-sp-menu-open .sp-menu-drawer__overlay {
    opacity: 1;
}

body.is-sp-menu-open .sp-menu-drawer__panel {
    transform: translateX(0);
}

.glmenu {
    background: #fff;
    padding: 8px 0 0;
}
.glmenu ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.glmenu li {
    border: none;
    border-bottom: 1px solid #e0e0e0;
}
.glmenu li:last-child {
    border-bottom: none;
}
.glmenu li a {
    padding: 20px 8px;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.45;
    text-decoration: none;
    color: #111;
    text-shadow: none;
    border: none;
    background: transparent;
    display: block;
}
.glmenu li a::before {
    content: "> ";
}



/*- フッター -*/
.ftset {
background:#fff;
}
.ftset nav {
background:#dcdcdc;
-moz-box-shadow: 0 0 6px 1px #50001e;
-webkit-box-shadow: 0 0 6px 1px #50001e;
box-shadow: 0 0 6px 1px #50001e;
}
.ftset nav ul {
margin:0 auto;
width:100%;
}
.ftset nav ul li {
width:100%;
float:none;
border-bottom:1px solid #c8c8c8;
}
.ftset nav ul li a {
padding:5px 0;
font-size:80%;
color:#333;
text-align:center;
text-decoration:none;
display:block;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
transition: 0.5s;
behavior: url(/js/PIE.htc);
}
.ftset nav ul li a:hover {
background:#fff;
}
.ftset small {
padding:20px 0;
font-size:70%;
color:#e94b65;
text-align:center;
display:block;
}

#mapview iframe {
	width: 100%;
	height: 100%;
}

/*- 共用枠組 -*/
.cnt {
margin:0 auto;
width:100%;
position:relative;
}



/*- プレミアゲイDVD キャッチ -*/
.prmdvd img {
width:100%;
}



/*- オーダー -*/
.stodr {
padding-top:5px;
padding-bottom:5px;
width:100%;
float:none;
background:#f0f0f0;
}
.mlodr {
margin-top:10px;
padding-top:5px;
padding-bottom:5px;
width:100%;
float:none;
background:#f0f0f0;
}
.stodr .in,
.mlodr .in {
margin:0 5px;
background:#fff;
}
.stodr h3,
.mlodr h3 {
padding:8px 0 13px 0;
font-size:120%;
font-weight:bold;
text-align:center;
text-shadow: 1px 1px 0px #b62139, -1px -1px 0px #e94b64;
color:#e94b64;
background:url(../img/odr_h3.gif) no-repeat center bottom;
}
.stodr h4,
.mlodr h4 {
margin:5px 10px;
font-size:110%;
font-weight:bold;
text-shadow: 1px 1px 0px #b62139;
color:#e94b64;
}
.no1 {
padding:9px 0 9px 45px;
background:url(../img/no1.png) no-repeat left top;
}
.no2 {
padding:9px 0 9px 45px;
background:url(../img/no2.png) no-repeat left top;
}
.no3 {
padding:9px 0 9px 45px;
background:url(../img/no3.png) no-repeat left top;
}
.no4 {
padding:9px 0 9px 45px;
background:url(../img/no4.png) no-repeat left top;
}
.no5 {
padding:9px 0 9px 45px;
background:url(../img/no5.png) no-repeat left top;
}
.stodr .fl,
.mlodr .fl {
margin-left:auto;
margin-right:auto;
width:96%;
text-align:center;
}
.stodr .fl img,
.mlodr .fl img {
width:100%;
}



/*- 商品詳細 -*/
.itmdtl .itmthml {
margin:0 auto 5px auto;
width:100%;
height:auto;
display:block;
}
.itmdtl .itmthm {
margin-bottom:5px;
width:100%;
height:auto;
display:block;
float:none;
}
.itmdtl img {
width:100%;
}
.itmdtl .itmthml img,
.itmdtl .itmthm img {
width:100%;
height:100%;
}
.itmdtl .movie {
margin-bottom:5px;
width:100%;
height:auto;
border:none;
background:#e0e0e0;
float:none;
}
.itmdtl .itmtx {
margin-bottom:5px;
width:100%;
float:none;
}
.itmdtl .limited {
margin-bottom:5px;
background:url(../img/back_limited.gif) repeat-x;
text-align:center;
}
.itmdtl .limited img {
width:100%;
height:auto;
}
.itmdtl table {
margin-bottom:5px;
width:100%;
border-top:1px dotted #999999;
float:none;
}
.itmdtl table tr {
border-bottom:1px dotted #999999;
}
.itmdtl table th {
width:30%;
background:#f0f0f0;
}
.itmdtl table td {
width:70%;
}
.itmdtl table p {
padding:3px;
}



/*- カート -*/
.cart {
margin:0 auto;
width:96%;
}


/*- 店舗情報 -*/
.shpdtl .shpts {
background:#f0f5fa;
}
.shpdtl .shpnm {
width:100%;
float:none;
}
.shpdtl dt,
.shpdtl dd {
padding:5px;
}
.shpdtl .shpnm h3 {
font-size:120%;
font-weight:bold;
}
.shpdtl .shptel {
width:100%;
float:none;
}
.shpdtl .shpfax {
width:100%;
float:none;
}
.shpdtl .shpml {
width:100%;
float:none;
}
.shpdtl .shptel dt,
.shpdtl .shptel dd,
.shpdtl .shpfax dt,
.shpdtl .shpfax dd,
.shpdtl .shpml dt,
.shpdtl .shpml dd {
text-align:center;
}
.shpdtl .shptel dt,
.shpdtl .shpfax dt,
.shpdtl .shpml dt {
font-size:90%;
color:#fff;
background:#b0b5ba;
}
.shpdtl .shptel dd p,
.shpdtl .shpfax dd p,
.shpdtl .shpml dd a {
font-size:100%;
font-weight:bold;
}


/*- 注意事項 -*/
.attn li {
margin:0 0 10px 0;
width:100%;
background:#f0f0f0;
}
.attn li:last-child {
margin:0;
}
.attn .in {
margin:5px;
background:#fff;
}
.attn h3 {
padding:8px 0 13px 0;
font-size:120%;
font-weight:bold;
text-align:center;
text-shadow: 1px 1px 0px #b62139, -1px -1px 0px #e94b64;
color:#e94b64;
background:url(../img/odr_h3.gif) no-repeat center bottom;
}


/*- キャンペーン -*/
.cp h2 {
margin-bottom:5px;
width:100%;
height:80px;
background:url(../img/cp/head.png) no-repeat center top;
background-size:100% 100%;
text-indent:-9999px;
overflow:hidden;
display:block;
}
.cp h3 {
margin-bottom:5px;
width:100%;
height:90px;
background:url(../img/cp/present.png) no-repeat center top;
background-size:100% 100%;
text-indent:-9999px;
overflow:hidden;
display:block;
}
.cp .exam .pay {
padding:5px;
background:#CC66CC;
font-size:100%;
font-weight:bold;
color:#fff;
text-align:center;
}
    
ul.main_nav {
    display: flex;
    background: #FFFFFF;
    padding: 10px 0;
    justify-content: center;
    align-items: center;    
} 
ul.main_nav li {
    width: 33%;    
}   
ul.main_nav li.login a {
     display: flex;
    justify-content: center;
    align-items: center;  
    gap: 10px;
    color: #666666;
}    
.head_col_in li.login a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f2f6';
    font-size: 16px;
    font-weight: 900;
    line-height: 15px;
    color: #666666;     
}       
ul.main_nav li.gsearch a {
     display: flex;
    justify-content: center;
    align-items: center;  
    gap: 10px;
    color: #666666;
}    
.head_col_in li.gsearch a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f002';
    font-size: 16px;
    font-weight: 900;
    line-height: 15px;
    color: #666666;     
}      
ul.main_nav li.cart a {
     display: flex;
    justify-content: center;
    align-items: center;  
    gap: 10px;
    color: #666666;
    border-left: 1px solid #DDDDDD; 
    border-right: 1px solid #DDDDDD; 
}  
.head_col_in li.cart a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f07a';
    font-size: 16px;
    font-weight: 900;
    line-height: 15px;
    color: #666666;  
}     
ul.main_nav li.gmenu a {
     display: flex;
    justify-content: center;
    align-items: center;  
    gap: 10px;
    color: #666666; 
}  
.head_col_in li.gmenu a:before {
    font-family: "Font Awesome 5 Free";
    content: '\f0c9';
    font-size: 16px;
    font-weight: 900;
    line-height: 15px;
    color: #666666;   
}  
    
.step {
  position: relative;
  padding-bottom: 40px;
  counter-increment: step-index;
}

.step:not(:last-child)::before {
  position: absolute;
  top: 0;
  left: 25px;
  width: 3px;
  height: 100%;
  content: "";
  background-color: #f9cfdf;
}

.step-title {
  display: grid;
  grid-template-columns: 50px 1fr;
  gap: 20px;
  align-items: center;
  font-size: 18px;
  font-weight: bold;
  color: #666;
}

.step-title::before {
  z-index: 1;
  display: grid;
  place-items: center;
  width: 50px;
  height: 50px;
  font-size: 18px;
  font-weight: bold;
  color: #fff;
  content: counter(step-index);
  background-color: #ff6c85;
    border-radius: 100%;
}

.step-text {
  padding-left: 73px;
  line-height: 1.5;
}
.step_col {
    margin: 15px;
}    
.intro_points {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
}

.intro_point {
  flex: 1 1 250px;
  position: relative;
  padding-top: 150px;
  padding: 150px 20px 20px;
  box-sizing: border-box;
  margin: 20px 0;    
}

.intro_point::before {
  content: attr(data-number);
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 120px;
  height: 120px;
  border: 2px solid #e94b65;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2rem;
  font-weight: bold;
  color: #e94b65;
  background: #fff;
}

.intro_point::after {
  content: "point";
  position: absolute;
  top: 15px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 0.9rem;
  color: #e94b65;
}

.intro_point h3 {
  font-weight: bold;
  color: #e94b65;
  margin-bottom: 20px;
  font-size: 1.2rem;
  text-align: center;
}
.intro_point ul {
font-size: 0.8rem;
  line-height: 3;
  margin: 0 0 15px 0;
  list-style: initial;
    list-style-position: initial;
  list-style-position: outside;
  padding: 0 0 0 21px;
  border-top: 1px dotted #999999;   
  border-bottom: 1px dotted #999999;     
}
.intro_point p {
  font-size: 0.8rem;
  line-height: 2.5;
}

.txt_marker {
    display: inline;
  background-position: left -100% center;
  padding-bottom: 0.6em;
  font-weight: bold;
  background-size: 200% 0.6em;
  background-repeat: repeat-x;
  background-image: linear-gradient(to right, rgba(255, 255, 255, 0) 50%, rgb(255, 230, 240) 50%);
  transition: background-position 2s 0.1s;   
}

.txt_bold {
  font-weight: bold;
}

.intro_section_in {
    padding: 30px;
}
.intro_section_in p {
    margin: 0 0 10px;
}

.step img {
width: 319px;
    margin: 0 0 0 20px;
    height: auto;
}
.head_col {
  display: flex;      
  gap: 15px;
  padding: 10px;    
  align-items: center;
  justify-content: space-between;
  background: #FFF;    
  border-bottom: 3px solid #E91E63;
  margin: 0 0 10px;
} 
  .head_col img {
    width: 25%;
    height: 100%;
  }
  .head_col_in ul {
  display: flex;
  gap: 12px;      
  align-items: center;
  } 
.head_col_in li a {
    color: #666666;    
}  
.head_col_in li a {
    display: flex;
    gap: 7px;
    font-size: 14px;
    width: 100%;
    white-space: nowrap;
    align-items: center;
    font-weight: bold;
}
.shop_name_col {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    /* border-bottom: 1px solid #dddddd; */
    padding: 0 0px 8px;
    margin: 0;
    background: #e94b65;
    border-radius: 10px;
    color: #ffffff;
    padding: 10px;
}
    .shop_name_col h1 {
        font-size: 130%;
        display: flex;
    }    
.shop_sab_col {
  display: flex;
  gap: 20px;
  justify-content: center;
  align-items: center;
  background: #ffe6e6;
  border-radius: 5px;
  padding: 2px 8px;
}
.shop_sab_col ul {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0px;
  font-size: 0.9rem;
  margin: 5px 0;
}
.shop_sab_col ul li a {
  display: flex;
  color: #000000;
  /* border-left: 1px solid #666666; */
  padding: 0 5px;
  /* gap: 5px; */
  justify-content: center;
}
.shop_sab_col ul li:first-child a {
  border-left: none;
}
.shop_sab_col ul li.site a {
  background: #ffffff;
  border-radius: 7px;
  padding: 5px 10px;
  color: #454545;
  border: 1px solid #454545;
  text-decoration: none;
  transition: .3s;
  margin: 0 4px 0 0;
}
.shop_sab_col ul li.site a:hover {
  opacity: 0.8;   
}
.sns01 img, .sns02 img, .sns03 img {
  width: 30px;
}
.shop_sab_col ul li.sns03 a {
  padding: 0 0 0 5px;
}
.favorite_shop a {
  border: 2px solid;
  border-radius: 100px;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
  gap: 0;
  text-align: center;
  color: #DDDDDD;
  transition: .3s;
}
.favorite_shop a:hover {
  color: #FFFF00;
  text-decoration: none;
}
.favorite_shop a:before {
  font-family: "Font Awesome 5 Free";
  content: '\f004';
  font-size: 20px;
  margin: 0;
  font-weight: 900;
  display: block;
  line-height: 1;
  text-align: right;
  padding: 2px 0px 0 0px;
  /* border: 2px solid; */
  /* border-radius: 100px; */
}
.favorite_shop.is_favorite a {
  color: #FFD700;
  border-color: #FFD700;
}
.favorite_shop.is_favorite a:hover {
  color: #FFA500;
  border-color: #FFA500;
}
.search_col {
  display: flex;
  align-items: center;
}
.map_btn {
  background: #ffffff;
  border-radius: 7px;
  padding: 1px 6px;
  color: #454545;
  border: 1px solid #454545;
  line-height: normal;
  box-shadow: 2px 2px;
  position: relative;
  top: 0;
  right: 0;
  transition: .3s;
  margin: 0 auto;
}
.map_btn:hover {
  box-shadow: none;
  top: 2px;
  left: 2px;
  text-decoration: none;
}  
    .map_adress {
        display: flex;
        gap: 10px;
        flex-wrap: wrap;
        align-items: center;
        line-height: 1;
        margin: 0 auto 10px;
    }  
    .tel_time {
        font-size: 90%;
        margin: 0 0 5px 0;
    }
.srch_col:before {
  font-family: "Font Awesome 5 Free";
  content: '\f002';
  font-size: 20px;
  margin: 0;
  font-weight: 900;
  display: block;
}
 .search_allcol {
 padding: 10px;       
    }    
 .search {
    display: flex;
    gap: 10px;
    align-items: center;
  }   
.search a {
    color: #454545;
    display: flex;
    gap: 5px;
    justify-content: center;
    align-items: center;
    padding: 10px;
    margin: 0;
    line-height: 1;
    box-shadow: 2px 2px;
    border-radius: 9px;
    border: 1px solid;
    position: relative;
    top: 0;
    left: 0;
    transition: .3s;
} 
    
/* 全体 */
.filter {
  font-family: system-ui, -apple-system, "Segoe UI", Roboto, "Noto Sans JP", sans-serif;
  max-width: 640px;
}

.filter__group {
  border: 0;
  padding: 0;
  margin: 0;
}

.filter__title {
  font-weight: 700;
  margin-bottom: 5px;
  margin-top: 10px;
}

/* チップ（ボタン風） */
.chip {
  display: inline-block;
  margin: 6px 4px 0 0;
}

/* 入力は見えなくする（でもフォームとしては生きてる） */
.chip__input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

/* 見た目のボタン */
.chip__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 14px;
  /*! border-radius: 999px; */
  border: 1px solid #cfd6df;
  background: #ffffff;
  color: #1f2a37;
  cursor: pointer;
  user-select: none;
  transition: background-color .15s, border-color .15s, color .15s, transform .05s;
}

/* ホバー */
.chip__btn:hover {
  border-color: #9aa6b2;
}

/* 押した感 */
.chip__btn:active {
  transform: translateY(1px);
}

/* ✅ 選択中（チェックされたら色が変わる） */
.chip__input:checked + .chip__btn {
  background: #e94b65;   /* 選択時の色 */
  border-color: #e94b65;
  color: #fff;
}

/* キーボード操作のフォーカスも見えるように */
.chip__input:focus-visible + .chip__btn {
  outline: 3px solid rgba(37, 99, 235, .35);
  outline-offset: 2px;
}

/* 検索ボタン */
.searchBtn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 16px;
  border-radius: 10px;
  border: 1px solid #111827;
  background: #111827;
  color: #fff;
  cursor: pointer;
  transition: transform .05s, opacity .15s;
}

.searchBtn:hover {
  opacity: .92;
}

.searchBtn:active {
  transform: translateY(1px);
}
.filter_search {
  margin: 10px 0;
}

/* 地図モーダル（余白少なめ・画面内に収める） */
.mapmodal_content {
  box-sizing: border-box;
  padding: 8px 8px 10px;
  width: 100%;
}
.mapmodal_content h3 {
  color: #111;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  margin: 0 0 8px;
}
.mapmodal_content .map_iframe_wrap {
  height: 72vh;
  max-height: none;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.mapmodal_content .map_iframe_wrap iframe,
.mapmodal_content__leaflet {
  border: none !important;
  display: block;
  height: 100% !important;
  max-height: 100% !important;
  width: 100% !important;
}
/* Leaflet時のみ：Google埋め込みと同位置（地図左上） */
.mapmodal_content__open {
  align-items: center;
  background: #fff;
  border-radius: 2px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
  color: #1a73e8;
  display: inline-flex;
  font-size: 12px;
  font-weight: 600;
  gap: 4px;
  left: 10px;
  line-height: 1.2;
  padding: 6px 8px;
  position: absolute;
  text-decoration: none;
  top: 10px;
  z-index: 1100;
}
.mapmodal_content__open:hover,
.mapmodal_content__open:focus {
  color: #1557b0;
  text-decoration: underline;
}
.mapmodal_content__open .fas {
  font-size: 11px;
}

/* PC: 地図を大きく（モーダル自体は colorbox fixed で画面基準） */
@media (min-width: 769px) {
  .mapmodal_content .map_iframe_wrap {
    height: 78vh;
    max-height: none;
  }
}

/* ガイド文書ページ共通（Figma 2350:46 / 2350:47） */
body:has(.sp-guide-doc) {
    background: #fff;
}

body:has(.sp-guide-doc) .wrrp {
    background: #fff;
}

body:has(.sp-guide-doc) .head_col {
    border-bottom: 1px solid #e94b65;
    margin-bottom: 8px;
}

body:has(.sp-guide-doc) .brdl {
    display: none;
}

body:has(.sp-guide-doc) .hset .shopinfo,
body:has(.sp-guide-doc) .hset nav {
    display: none;
}

.sp-guide-doc {
    box-sizing: border-box;
    color: #111;
    margin: 0 auto;
    max-width: 100%;
    padding: 24px 16px 40px;
    width: 100%;
}

.sp-guide-doc__title {
    border-bottom: 1px solid #ddd;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.4;
    margin: 0 0 28px;
    padding: 0 0 14px;
    text-align: center;
}

.sp-guide-doc__section {
    margin: 0 0 22px;
}

.sp-guide-doc__heading {
    background: transparent;
    border: 0;
    color: #111;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.5;
    margin: 0 0 10px;
    padding: 0;
    text-shadow: none;
}

.sp-guide-doc__body {
    color: #222;
    font-size: 13px;
    font-weight: 400;
    line-height: 1.7;
    text-align: left;
    word-break: break-word;
}

.sp-guide-doc__body p {
    font-size: inherit;
    line-height: inherit;
    margin: 0 0 0.8em;
}

.sp-guide-doc__body p:last-child {
    margin-bottom: 0;
}

.sp-guide-doc__body a {
    color: #111;
    text-decoration: underline;
    word-break: break-all;
}

.sp-guide-doc__empty {
    color: #666;
    font-size: 13px;
    line-height: 1.6;
    margin: 0;
    text-align: left;
}

/* PC閲覧時のみ390px中央カラム（スマホ実機・エミュレータは全幅） */
@media (min-width: 769px) {
body,
.hset .inr,
.hset nav ul,
.cnt,
.sp-menu-drawer,
.sp-guide-doc {
max-width: 390px;
}
}