#header,
#tree,
#insta,
#fnav,
#footer,
#container,
#homefooter,
#hfaq {
  width: 100%;
  font-size: 11px;
  line-height: 20px;
}

.wide-contents{
  width:100%;
  position:relative;
}
.wide-inner{
  padding:0 5%;
  position:relative;
  box-sizing:border-box;
}

#headerbox {
}
#header #hnav {
  width: 100%;
  padding-right: 1px;
  left: 0px;
}
#header {
  padding-top: 36px;
}
#header #hnav a {
  width: 33.33%;
}
#header #hnav a#bringinb {
  display: none;
}
#header h1 {
}
#header h2 {
  width: 253px;
  height: 20px;
  line-height: 20px;
}
#nav a {
  width: 20%;
  text-align: center;
  box-sizing: border-box;
}
#nav {
  margin-top: -5px;
  border-top: solid 1px #dcb7b7;
}
#nav a {
  font-size: 13px;
  line-height: 20px;
  padding: 5px 0px;
}
#htel {
  display: none;
}


#tree {
  font-size: 10px;
  padding: 3px 10px;
  box-sizing: border-box;
}


#insta {
  padding-top: 50px;
  margin-bottom: -25px;
}

a.line {
  display: block;
  margin-top: 40px;
  margin-bottom: -25px;
  padding: 0 10px;
}

#fnavbox {
  margin-top: 50px;
}
#fnav {
  box-sizing: border-box;
}
#fnav a {
  font-size: 12px;
  padding: 4px 10px;
}

#fn {
  font-size: 0.85em;
  padding-top: 40px;
  padding-bottom: 40px;
}
#fn > div {
  padding-right: 4vw;
  padding-left: 4vw;
}
#fn > div > div {
  float: left;
  width: 50%;
}
#fn > div > div.left,
#fn > div > div.right {
  width: 48%;
}
#fn > div > div.right {
  float: right;
}
#fn > div > ul li {
  min-width: 50%;
}
#fn > div > div > ul li {
  min-width: 100%;
}

#footer {
  padding-bottom: 36px;
}
#toinsta {
  width: 94vw;
  margin-top: 30px;
  margin-bottom: 30px;
}
#footer small {
  font-size: 10px;
}
#footer #ffb {
  padding: 15px 10px 20px;
  overflow: hidden;
}
#footer #fcredit {
  text-align: center;
}
#footer #fcredit h2 {
  font-size: 15px;
}
#footer #fcredit h2 span {
  padding-left: 10px;
}
/*
#fbringin {
  display:block !important;
  width:100%;
  padding:0 !important;
  box-sizing:border-box;
  border-top:solid 1px #aa8658;
  position: fixed;
  bottom: 44px;
  left: 0;
  z-index: 999;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
}
*/
#fbringin {
  display: block;
  background: #eedbdb;
  width: 100%;
  color: #8c0f0f;
  font-size: 12px;
  line-height: 2em;
  text-decoration: none;

  position: fixed;
  bottom: 44px;
  left: 0;
  z-index: 999;
}
#fbringin:after {
  font-size: 0.75em;
  vertical-align: 0.09em;
  content: ' ▶';
}

#ftel {
  display: block;
  background: #aa8657;
  width: 100%;
  padding: 10px 0px;
  position: fixed;
  bottom: 0px;
  left: 0px;
  z-index: 1000;
}
#ftel img {
  display: block;
  height: 24px;
}

#side {
  text-align: center;
}
#side a.bs > div {
  background: no-repeat left / auto 2em;
  padding-left: 2.75em;
}
#side #th_bottle > div { background-image: url('image/side/th_bottle.png'); }
#side #th_3d > div { background-image: url('image/side/th_3d.png'); }
#side #th_pressed > div { background-image: url('image/side/th_pressed.png'); }
#side #th_crystalflower > div { background-image: url('image/side/th_crystalflower.png'); }
#side #th_photoplan > div { background-image: url('image/side/th_photoplan.png'); }
#side #th_set > div { background-image: url('image/side/th_set.png'); }

#side a#stel,
#side a#allp,
#side a.bp {
  width: 50%;
}
#side h2 {
  clear: both;
  font-size: 16px;
  padding: 35px 10px 5px;
}
#side ul {
}
#side li {
  float: left;
  width: 50%;
  font-size: 10px;
}
#side li a {
  padding: 8px 0px;
}

a#spropose,
a#svoice {
  float: left;
  width: 50%;
  box-sizing: border-box;
}
a#svoice {
  height: 14.58vw;
}
.blogselect {
  height: 36px;
  padding: 0 1em;
}
#side .blogselect {
  width: 90%;
  margin-top: 10px;
}

#navigation {
  padding: 40px 10px 0px;
}



.spn {
  display: none;
}



#slider,
#slider ul li {
  height: 55vw;
  max-height: 205px;
}
#slider {
  margin-top: 5px;
  padding-bottom: 15px;
}
#slider ul li {
  width: 88vw;
  max-width: 330px;
}
#slider .slider_prev,
#slider .slider_next {
  background-position: center;
  background-size: 8vw 8vw;
}
#slider .pagination {
  height: 14px;
  line-height: 14px;
}
#slider .pagination a {
  width: 6px;
  height: 6px;
  margin: 4px 3px;
}

#hfea {
  margin-top: 40px;
  padding: 25px 0;
}
#hfea > a {
  width: 45.5vw;
  margin-top: 3vw;
  margin-left: 3vw;
}
#hfea > a figure {
  padding-top: 120%;
}
#hfea > a figure > div {
  width: 50%;
  padding-top: 50%;
}

#hgreeting25 {
  margin-top: 40px;
}
#hgreeting25 div {
  width: 90vw;
  margin-top: -80px;
  padding-top: 3em;
  padding-bottom: 1em;
}
#hgreeting25 div h6 {
  font-size: 10px;
}
#hgreeting25 div h2 {
  font-size: 20px;
}
#hgreeting25 div p {
  font-size: min(1.2em, 3.5vw);
  text-align: center;
}
#hgreeting25 div p:nth-of-type(2) {
  white-space: nowrap;
}
#hgreeting25 nav.mo a {
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
}

#home #hgreeting {
  margin-top: 30px;
}
#home #hgreeting > article img:nth-of-type(1) { height: 28px; }
#home #hgreeting > article img:nth-of-type(2) { height: 10px; }
#home #hgreeting > article h2 {
  font-size: 4.2vw;
  letter-spacing: 0.05em;
  padding-top: 0.5em;
  padding-bottom: 0.5em;
  padding-left: 0.05em;
}
#home #hgreeting h3 {
  font-size: 1.1em;
}
#home #hgreeting > h3 {
  margin-top: -3.5em;
}
#home #hgreeting > img {
  margin-bottom: 10px;
}
#home #hgreeting > h2 {
  font-size: 11px;
  line-height: 18px;
  padding-top: 8px;
}
#home #hgreeting > h2 span {
  display: block;
}
#home #hgreeting > div {
  padding-top: 10px;
}
#home #hgreeting > div a {
  width: 48.5%;
  line-height: 32px;
  margin-top: 1%;
  margin-left: 1%;
}
#home #hmenu {
  padding-top: 15px;
}
#home #hmenu a {
/*
  width: 45.5%;
  margin-top: 5%;
  margin-left: 3%;
*/
  width: 32%;
  width: 29.33%;
  margin-top: 1%;
  margin-left: 3%;
}
#home #hmenu a img.hmt {
  max-height: 20px;
}
#home #hmenu a#hpcr {
  display: none;
}
#home #hmenu a#hspr {
  background: #fdfbf6;
  width: 94%;
  color: #aa8657;
  font-size: 12px;
  text-align: center;
  margin-top: 5%;
  padding: 8px 0px;
  border: solid 1px #f3e6cb;
  box-sizing: border-box;
}
#home h3.ht {
  font-size: 1.5em;
}
#hfaq h3.ht,
#home h3.ht,
#home h1 {
  padding-top: 40px;
}
#home h3.ht span,
#home h1 span {
  min-width: 60%;
}


#home #hbb a {
  font-size: 9px;
  margin-top: 2.5%;
  margin-left: 2%;
}
#home #hbb a:nth-of-type(1) {
  margin-bottom: 5%;
}
#home #hbb h2 {
  margin-top: 10px;
}
#home #hbb h3 {
  font-size: 1em;
}
#home #hbb a.clear {
  width: 96%;
}
#home #hbb a img {
  margin-bottom: 3px;
}
#home #hbb .ifilter a {
  width: 47%;
}
#home #hbb .ifilter a:nth-of-type(2n+1) {
  clear: both;
}
#home #hbb .ifilter a h3,
#home #hbb .ifilter a h3 * {
  line-height: 1.3em;
}
#home #hbb .ifilter a h3 {
  padding-top: 0.75em;
  padding-bottom: 0.75em;
  white-space: nowrap;
}
#home #hbb .ifilter2 aside {
  font-size: 12px;
  padding-bottom: 2em;
}
#home #hbb .ifilter2 article a h4 {
  font-size: 1em;
}
#hp2.ifilter2 article {
  width: 30%;
  margin-top: 0%;
  margin-left: 2%;
}
#hp2.ifilter2 article:nth-of-type(3n+1) {
  clear: both;
  margin-left: 3%;
}
#hp3.ifilter2 article {
  width: 23.25%;
  margin-top: 0%;
  margin-left: 1%;
}
#hp3.ifilter2 article:nth-of-type(4n+1) {
  clear: both;
  margin-left: 2%;
}
#hp4 {
  margin-top: 20px;
}

#home #hrss {
  padding-top: 10px;
}
#home #hrss a {
  width: 98%;
  font-size: 10px;
  padding: 10px 2% 10px 0px;
}
#home #hrss a img {
  margin-right: 10px;
}
#home #hrss a div {
  float: left;
  height: 100px;
  margin-right: 10px;
}
#home #hrss a span,
#home #hrss a font {
  line-height: 18px;
}
#home #hrss a span {
  min-width: 90px;
  font-size: 9px;
}
#home #hrss a h2 {
  font-size: 12px;
}
#home #hrss a p {
  height: 48px;
  line-height: 16px;
  padding-top: 4px;
}
#home #hgal {
  padding-top: 15px;
}
#home #hgal a {
  width: 22.5%;
  margin-top: 2%;
  margin-left: 2%;
}
#home a.hlink {
  margin-top: 3%;
  margin-right: 3%;
  margin-left: 1%;
}
#home #hpu {
  padding-top: 2%;
}
#home #hpu a {
  width: 50%;
}



.page {
  padding: 20px 10px;
}
.page h1.title {
  font-size: 13px;
}
.gallery h1.title,
.voice h1.title,
.blog h1.title {
  margin-bottom: 2%;
}



.gallery a.glink {
  width: 70px;
  font-size: 10px;
  line-height: 16px;
  margin-top: 1px;
}
.gallery .gbox,
.voice .vimg {
  width: 47%;
  margin-left: 2%;
  box-sizing: border-box;
}
.gallery .gbox {
  font-size: 12px;
}
.gallery .gimg {
  margin-bottom: 6px;
}
.voice .vtext {
  clear: both;
  width: 100%;
}
a.vlink {
  margin-top: 15px;
}
a.tovoice {
  margin-right: 10px;
  margin-left: 10px;
}


.blog {
}
.blog.page.large > p{
  font-size:1.2em;
}
.blog h1.title span,
a.bloglist span {
  font-size: 11px;
}
.blog img {
  display: block;
  max-width: 90%;
}

a.bloglist {
  min-height: 30vw;
  padding-top: 3vw;
  padding-right: 2.5vw;
  padding-bottom: 3vw;
  padding-left: 35vw;
}
a.bloglist div {
  width: 30vw;
  height: 30vw;
  top: 3vw;
  left: 2.5vw;
}



#shopping,
#propose,
#shpbanner {
  margin-top: 20px;
}
#shpbanner {
}
#shpmes {
  width: 100%;
  line-height: 24px;
  position: fixed;
  bottom: 44px;
  left: 0;
}

.ilist {
  padding: 10px 10px 25px;
}
.ilist figure {
  width: 70%;
  height: 0;
  padding-top: 70%;
}
.ilist h1 {
  font-size: 11px;
  text-align: center;
}
.ilist h1 font {
  display: block;
  padding-bottom: 0.25em;
}
.ilist h1 > span {
  font-size: 15px;
}
.ilist article > font {
  width: 75%;
  font-size: 120%;
  line-height: 2.6em;
  margin-top: 20px;
}
.ilistthumb {
  margin-top: 10px;
}
.ilistthumb li {
  width: 11.625%;
  padding-top: 11.625%;
}
.ilistthumb li:nth-of-type(-n+8) {
  margin-top: 0;
}
.ilistthumb li:nth-of-type(8n+1) {
  margin-left: 0;
}




#item {
  padding-top: 30px;
}
#item #iname {
  font-size: 11px;
}
#item #iname span {
  font-size: 15px;
}
#item #icopy {
  font-size: 1em;
}
#item .revico-star-zone {
  margin-right: 10px;
}
#item #view {
  width: 80%;
}
#item #icom {
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
}
#item #cart {
  padding-top: 30px;
}
#item #cart p.cnotice,
#item #cart p.cnotice2 {
  font-size: 10px;
  line-height: 14px;
}

#ioption {
  width: 100%;
}
#ioption #ge {
}
#ioption #ge div {
  font-size: 10px;
  line-height: 12px;
  padding: 4px;
}



#preservation {
}
#preservation #p11 img {
  display: block;
  width: 50%;
}
#preservation #p12 {
  float: left;
  width: 35%;
  margin-right: 10px;
  margin-bottom: 5px;
}
#preservation #p21 img {
  display: block;
  width: 90%;
  margin-bottom: -20px;
}
#preservation #p22 img {
  display: block;
  width: 70%;
}
#preservation #p3 {
  float: right;
  width: 35%;
  margin-left: 10px;
  margin-bottom: 5px;
}



#policy #p1,
#policy #p5,
#policy #p7 {
  float: right;
  width: 40%;
  margin-bottom: 5px;
  margin-left: 10px;
}
#policy #p5,
#policy #p7 {
  width: 30%;
}
#policy #p4,
#policy #p8 {
  float: left;
  width: 40%;
  margin-bottom: 5px;
  margin-right: 10px;
}
#policy #p8 {
  width: 35%;
}
#policy #p2 img,
#policy #p9 img {
  display: block;
  width: 60%;
}
#policy th,
#policy td {
  font-size: 10px;
  line-height: 14px;
  xvertical-align: top;
  padding: 10px 5px;
}
#policy th {
  width: 30%;
  padding-left: 0px;
}
#policy #poa img {
  height: 20px;
}



#support {
}
#support table {
}
#support th,
#support td {
  display: block;
}
#support th {
  padding-top: 15px;
}
#support th a {
  display: block;
  font-size: 12px;
}



.notice {
  font-size: 10px;
}
#option table {
  width: 100%;
}
#option th,
#option td {
  font-size: 10px;
}
#option #gei img {
  display: block;
}
#option .opframe,
#option .opic {
  width: 33.33%;
  padding-right: 5px;
  padding-left: 5px;
}
#option .opic {
  width: 25%;
  line-height: 14px;
}
#option .opframe img,
#option .opic img {
  margin-bottom: 6px;
}



#order {
}
#order #orderf {
  float: left;
  width: 100px;
  padding-right: 10px;
}
#order #orderf img.pcn {
  display: block;
}



.step h2 {
  padding: 5px 10px;
}
.step h3 {
  padding: 5px;
}
.step h3 em {
  line-height: 19px;
  padding: 1px 10px 0px;
}
.step h4 {
  font-size: 12px;
  margin-bottom: -8px;
  padding: 18px 5px 0px;
}
#sending .step img {
  height: 100px;
}
#sending .step .scomm {
  min-height: 100px;
  margin-top: -110px;
  margin-left: 110px;
}
#flow img,
#quick img {
  float: right;
  width: 100px;
}



#faq h2.title {
  font-size: 13px;
}
.faq span.an {
  left: 0px;
}
.faq dt {
  font-size: 12px;
}
.faq dt p {
  margin-top: -24px;
}
.faq dd {
  padding-left: 40px;
}
.faq dd th,
.faq dd td {
  display: block;
}
.faq dd th {
  font-size: 10px;
}



.staff h1 span {
  font-size: 11px;
}
.staff img {
  width: 90px;
}



#dealer #dmap {
  width: 180px;
}
#dealer .dtable {
  width: 100% !important;
}
#dealer #dnow {
  font-size: 10px;
}



#concept #c5 {
  margin-top: 40px;
  padding-top: 20px;
}



#profile table,
#law table {
  margin-left: -10px;
}
#profile th,
#profile td,
#law th,
#law td {
  display: block;
  width: 100%;
  text-align: left;
  padding-left: 10px;
  padding-bottom: 10px;
  padding-right: 10px;
}
#profile th,
#law th {
  padding-top: 10px;
}
#profile td th,
#profile td td {
  display: table-cell;
}
#profile td th {
  white-space: normal;
}
#profile td td {
  white-space: nowrap;
}



#sitemap div {
  width: 100%;
}



#form {
  margin-top: 15px;
}
#form th,
#form td {
  display: inline-block;
  width: 100%;
  padding: 0px;
}
#form th {
  padding-top: 12px;
  border-bottom: 0;
}
#form td {
  padding-top: 5px;
  padding-bottom: 15px;
}
#form #acc th,
#form #acc td {
  width: auto;
  padding-top: 12px;
  padding-bottom: 15px;
  border-bottom: 0;
}
#form #acc td {
  padding-left: 30px;
}
#form td input[type="text"],
#form input[type="email"],
#form td textarea {
  font-size: 10px;
}
#form td textarea {
  height: 80px;
  line-height: 16px;
}

#submit {
  padding-top: 20px;
}
#submit input[type="submit"],
#submit input[type="reset"] {
  width: 120px;
}

div.wpcf7-response-output,
div.wpcf7-display-none,
div.wpcf7-validation-errors {
  line-height: 16px;
  padding: 10px 20px;
}



#shgbox,
#shv {
  margin-top: 40px;
}
#shgbox {
  padding: 20px 10px 30px;
}
#shgbox #shgt div {
  width: 20%;
}


.taglist {
  padding-right: 4px;
  padding-left: 4px;
}



#homefooter {
  margin-top: 25px;
  width: 96vw;
  Xbox-sizing: border-box;
}
#homefooter div {
  padding: 0 3vw;
}
#homefooter td {
  padding: 2em 0;
  border-top: solid 1px rgba(170, 134, 87, 0.15);
  border-bottom: solid 1px rgba(170, 134, 87, 0.15);
}
#homefooter td img {
  max-width: 60%;
}


#hfaq {
  margin-top: 25px;
}
#hfaq .faq,
#hfaq nav {
  width: 96vw;
}


#gmenu {
  width: 88vw;
}
#gmenu > div a {
  width: 16.2%;
  font-size: 1.9vw;
  margin-left: 0.56%;
}
#gmenu > div a:nth-of-type(6n+1) {
  clear: both;
  margin-left: 0;
}
#gmenu > div a div {
  border-width: 2px;
}



.vw {
  padding-right: 5vw;
  padding-left: 5vw;
  box-sizing: border-box;
}
.vw2 {
  padding-right: 2vw;
  padding-left: 2vw;
  box-sizing: border-box;
}



.iscreen,
.iscreen ul li {
  height: 66.66vw;
}
.iscreen ul li {
  width: 100vw;
}

.iscreen .slider_prev,
.iscreen .slider_next {
  width: 6vw !important;
  height: 12vw !important;
}

.iscreen .pagination a {
/*
  width: 15%;
  margin-top: 1.428%;
  margin-left: 1.428%;
  padding-top: 15%;
*/
  width: 13%;
  margin-top: 1%;
  margin-left: 1%;
  padding-top: 13%;
}
.iscreen .pagination a:nth-child(7n+1) {
  margin-left: 1.5%;
}
.iscreen .pagination a p {
  border-width: 2px;
}

#share {
  display: block;
  background: rgba(255, 255, 255, 0.5);
  background: rgba(170, 134, 87, 0.3);
  width: 2.7em;
  height: 2.7em;
  color: #ffffff;
  font-size: 1.2em;

  border: 0;
  outline: 0;

  position: absolute;
  top: calc(65.16vw - 2.7em);
  left: 1.5vw;
  Xz-index: 999;
  cursor: pointer;
}

#icomm {
  margin: 20px 10px -20px;
}



#htp {
  margin-top: 1em;
  padding-right: 2vw;
  padding-left: 2vw;
}
#htp li {
  margin-top: 1%;
  margin-left: 1%;
}
#home #htp li {
/*
  width: 40%;
*/
  width: 49.5%;
}
#htp li:nth-of-type(-n+2) {
  margin-top: 0;
}
#htp li:nth-of-type(2n+1) {
  margin-left: 0;
}
#htp li > a {
  padding: 0.75em 0.5em 0.75em 0;
}
#data #htp {
  padding-right: 10px;
  padding-left: 10px;
  box-sizing: border-box;
}
#data #htp ul {
  margin-left: 0;
  padding-left: 0;
  padding: 0;
}
#data #htp li {
  width: 49.5%;
}

#htd.mo a {
  font-size: 1em;
}

#hflow {
  margin-top: 40px;
  padding-top: 40px;
  padding-bottom: 40px;
}
h3.hst {
  font-size: 1.4em;
}
#hflow ul {
  margin-top: 20px;
}
#hflow li:not(:nth-of-type(1)):before {
  border-top-width: 6px;
  border-bottom-width: 6px;
  border-left-width: 8px;
}
#hflow li figure {
  width: 60%;
}
#hflow li p span {
  display: block;
  font-size: 2.2vw;
  padding-top: 0.25em;
}
#hflow #htd.mo a {
  width: 220px;
}
#hflow nav a > h4 {
  font-size: 1.3em;
  font-size: 1.1em;
  padding: 0.5em 0;
}
#hflow nav a > h6 {
  min-width: 40%;
  font-size: 0.85em;
}

#hfil {
}

#p11558 td {
  padding: 1em 0.5em;
}
#p11558 #t0 {
  table-layout: fixed;
}

table.ta_dubb td {
  padding: 1em 0.5em;
}



#optionbox h4 {
  margin-bottom: -15px;
}
.opbox {
  padding-top: 35px;
  padding-bottom: 35px;
}
.opbox h5 {
  font-size: 1.35em;
}
.opbox aside {
  padding: 4vw;
}

.imgselect article > font {
  width: calc(100% - 12px);
}
.imgselect div {
  padding: 2px;
}
.c63 article { width: 33.33%; }
.c63 article:nth-of-type(3n+1) { clear: both; }
.c64 article { width: 25%; }
.c64 article:nth-of-type(4n+1) { clear: both; }

.zbox > aside {
  width: 30px;

  top: 70px;
}
.zbox > div {
  width: 90vmin;
  padding: 3vw;
}
.zbox > div > h6 {
  width: 100px;
}
.zbox > div > h3 {
  margin-left: 115px;
}

#addcart {
  padding-top: 10vw;
  padding-bottom: 10vw;
}
#addcart span {
  display: block;
  padding-bottom: 1em;
}
#addcart input[type='submit'] {
  width: 100%;
}

/* ご来店予約ページ用(20230530) */
.reservation-contents{
  padding:60px 0;
  color:#222;
}
.reservation-contents img{
  display:block;
  max-width:100%;
  min-height:auto;
}
.reservation-contents img.inline{
  display:inline-block;
}
.reservation-contents .pc{
  display:none;
}
.reservation-contents .min,
.reservation-contents .min *,
#picture-frame .min {
  font-feature-settings: "palt" 1;
  font-weight:normal;
  font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  -webkit-font-smoothing: antialiased;
}
.reservation-contents .desc,
.reservation-contents .desc *{
  line-height:2.1em;
  font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  -webkit-font-smoothing: antialiased;
}
.reservation-contents .desc{
  font-size:1.25em;
}
.reservation-contents .desc strong{
  font-size:1.1em;
  font-weight:normal;
  line-height:1.8em;
}
.reservation-contents .desc-wrap,
.desc-wrap .desc:not(:last-child){
  margin:0 0 2em;
}
.desc-wrap .desc-image{
  border:solid 1px #aa8658;
}
.desc-wrap .desc-image.noborder{
  border:none;
}
.desc-wrap .desc p:not(:last-child){
  margin-bottom:1em;
}
.desc-wrap .desc p.desc-subtitle{
   margin-bottom:0.5em;
   font-size:1.3em;
   line-height:1.8em;
}
.reservation-contents .text-red{
  color:#9e3026;
}
.reservation-contents .text-center{
  text-align:center;
}
.reservation-contents .link-bn{
  display:block;
  padding:18px;
  margin:0;
  box-sizing:border-box;
  line-height:1;
  font-size:1.06em;
  font-weight:bold;
  font-feature-settings: "palt" 1;
  font-family: 'Meiryo', 'メイリオ', 'arial', 'helvetica', 'ＭＳ Ｐゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'osaka', sans-serif;
  -webkit-font-smoothing: antialiased;
  text-align:center;
  color:#fff !important;
  background:#b10a0a;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
  transition: filter 0.2s ease 0s, opacity 0.2s ease 0s;
  border-radius:4px;
}
.reservation-contents .link-bn.line{
  background:#43a516;
}
.reservation-contents .link-bn:hover{
  text-decoration:none !important;
  opacity:0.8;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0));
}
.reservation-contents .link-bn img{
  width:1.2em;
  margin:0 4px 0 0;
}
.reservation-header{
  padding:20px 0;
}
.reservation-title{
  display:inline-block;
  padding: 0 0 10px;
  margin: 0 0 12px;
  border-bottom:solid 1px #896837;
  font-size:2.2em;
  line-height:1.4em;
  letter-spacing:0.05em;
  color:#896837;
  .sp-hide{
    display:none;
  }
}
.reservation-title-en{
  font-size:1.1em;
  line-height:1;
  letter-spacing:0.05em;
  color:#896837;
}
.reservation-contents-header{
  margin:0 0 30px;
  text-align:center;
}
.reservation-contents-title{
  display:inline-block;
  padding:0 0 12px;
  border-bottom:solid 1px #896837;
  font-size:2.3em;
  line-height:1.2em;
  letter-spacing:0.05em;
  color:#896837;
}
.reservation-contents-subtitle-ja{
  margin:14px 0 0;
  font-size:1.5em;
  line-height:1.3em;
  letter-spacing:0.05em;
  color:#896837;
}
.reservation-contents-subtitle{
  margin:0 0 30px;
  position:relative;
  text-align:center;
}
.reservation-contents-subtitle:before{
  content:"";
  display:block;
  width:100%;
  height:1px;
  position:absolute;
  top:calc(50% - 2px);
  left:0;
  background:#896837;
}
.reservation-contents-subtitle span{
  display:inline-block;
  padding:0 15px;
  position:relative;
  font-size:2em;
  line-height:1em;
  letter-spacing:0.05em;
  color:#896837;
  background:#fcf7f7;
}
#reservation-header-karte{
  padding:15px 0;
  text-align:center;
  background:#ede2e2;
}
#reservation-intro{
  /*background: linear-gradient(to bottom, #ede2e2  110px, #ffffff 110px);*/
  text-align:center;
}
.reservation-menu{
   padding:15px 0;
   margin:0 0 10px;
   overflow-x:scroll;
}
.reservation-menu ul{
   display: flex;
   align-items:center;
   justify-content: flex-start;
}
.reservation-menu li{
   margin:0;
   padding:0 1.6em;
   position:relative;
   list-style:none;
   list-style-type:none;
   flex-shrink:0;
}
.reservation-menu li:not(:last-child):after{
   content:"";
   display:block;
   width:1px;
   height:1.2em;
   background: #896837;
   position:absolute;
   right:0;
   top:50%;
   margin-top:-0.6em;
   opacity:0.6;
}
.reservation-menu a{
   display:block;
   font-size: 1.3em;
   line-height: 1.3em;
   letter-spacing: 0.05em;
   color: #896837;
   transition: opacity 0.2s ease 0s;
}
.reservation-menu a:hover{
   text-decoration:none;
   opacity:0.6;
}

#reservation-intro.reservation-contents{
  padding:0 0 30px;
}
.reservation-intro-image{
  margin:0 auto 30px;
}
.reservation-intro-image img{
  border:solid 1px #896837;
}
.reservation-intro-image figcaption,
.reservation-about-image figcaption{
  margin: 6px 0 0;
  line-height: 1.3em;
  text-align: right;
  color:#664f1b;
  font-size:1.1em;
  text-align:center;
}
.reservation-intro-desc{
  display:inline-block;
  margin:0 0 20px;
  text-align:left;
}
.reservation-intro-desc strong{
  display:inline-block;
  font-weight: normal;
  font-size:1.1em !important;
  color: #9e3026;
  line-height:1.6em !important;
}
.reservation-intro-movie{
  padding:30px 0 40px;
  margin:0 0 20px;
  position:relative;
}
.reservation-intro-movie:before{
  content:"";
  display:block;
  width:1px;
  height:100%;
  position:absolute;
  top:0;
  left:50%;
  background:#896837;
}
.reservation-intro-movie:after{
  content:"";
  display:block;
  width:9px;
  height:9px;
  position:absolute;
  bottom:0;
  left:50%;
  margin-left:-4px;
  background:#896837;
  border-radius:9px;
}
.reservation-intro-movie-embed{
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
}
.reservation-intro-movie-embed iframe{
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

.reservation-cta{
  text-align:center;
}
.reservation-cta-title{
  display:inline-block;
  padding:8px 8px 6px;
  position:relative;
  z-index:1;
  border-radius:4px;
  background:#fff;
  line-height:1;
  font-size:1.2em;
  font-weight:bold;
  color:#896837;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
}
.reservation-cta-title:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0 8px;
  border-color: #fff transparent transparent transparent;
  position: absolute;
  bottom:-8px;
  left: 50%;
  margin-left: -8px;
}
.reservation-cta-bn{
   display:inline-block;
  transition:opacity 0.2s ease 0s;
}
.reservation-cta-bn:hover{
  text-decoration:none !important;
  opacity:0.8;
}
/*
.reservation-cta-bn{
  display:block;
  padding:18px 10px;
  margin-top:-5px;
  box-sizing:border-box;
  position:relative;
  z-index:0;
  line-height:1;
  font-size:1.6em;
  font-weight:bold;
  font-feature-settings: "palt" 1;
  -webkit-font-smoothing: antialiased;
  color:#fff !important;
  background: linear-gradient(to bottom,  #cf497e 0%,#b8185a 100%);
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
  transition: filter 0.2s ease 0s, opacity 0.2s ease 0s;
  border-radius:4px;
}
.reservation-cta-bn:hover{
  text-decoration:none !important;
  opacity:0.8;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0));
}
.reservation-cta-bn span{
    filter: drop-shadow(0px 0px 2px rgba(255,255,255,0));
  transition: filter 0.2s ease 0s;
}
.reservation-cta-bn:hover span{
    filter: drop-shadow(0px 0px 2px rgba(255,255,255,0.7));
}
.reservation-cta-bn img{
  width:0.9em;
  margin:0 5px 0 0;
  position:relative;
  top:-2px;
  vertical-align: middle;
}
*/
#reservation-about{
  background: linear-gradient(to bottom,  #ffffff 0%,#fcf7f7 5%);
  text-align:center;
  padding-bottom:0;
}
.reservation-about-image{
  display:block;
  margin:0 0 20px;
}
.reservation-about-image figure:not(:last-child){
  margin:0 0 10px;
}
.reservation-about-image img{
  width:100%;
  border:solid 1px #896837;
}
.reservation-about-image img:last-child{
  margin:0;
}
.reservation-about-point{
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin:0 auto 10px;
}
.reservation-about-point-item{
  width:29%;
  padding:18px 0;
  color:#9e3026;
  text-align:center;
  font-size:1.3em;
  line-height:1.4em;
  background:url(/wordpress/wp-content/themes/xing16/image/reservation/about_point_item.svg) no-repeat center center/contain;
}
.reservation-about-desc {
  display: inline-block;
  margin: 0 0 30px;
  text-align: left;
}
#reservation-about .reservation-cta,
#reservation-about .reservation-intro-image{
  margin:0 0 50px;
}
#reservation-about .reservation-intro-image:last-child{
  margin:0 auto;
}
#reservation-ig,
#reservation-slide,
#reservation-salon{
  background:#fcf7f7;
  text-align:center;
}
#reservation-ig,
#reservation-slide{
  padding-top:0;
  padding-bottom:0;
  #sl7709{
    margin-bottom:0;
  }
  .ecbn-selection-widget {
    margin:auto 0;
    padding:30px 0 0;
  }
}
#reservation-salon{
  border-bottom:solid 1px #896837;
}
#reservation-intro-flow{
  margin:60px 0;
}
#reservation-intro-map{
   padding-top:60px;
   margin-top:-60px;
}
.reservation-intro-map-inner{
  margin:0 0 30px;
}
.reservation-intro-map-iframe{
  width:100%;
}
.reservation-intro-map-iframe iframe{
  height:250px;
}
.reservation-intro-map-text{
  margin:0 0 20px;
  box-sizing:border-box;
  font-size:1.2em;
  line-height:1.9em;
  text-align:left;
}
.reservation-intro-map-text p:not(:last-child){
  margin:0 0 1em;
}
.reservation-intro-map-text p,
.reservation-intro-map-text h5{
  font-size:1.05em;
  font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  -webkit-font-smoothing: antialiased;
}
.reservation-intro-map-text h5{
  font-size:1.05em;
  line-height:1.7em;
  text-align:left;
  color:#896837;
}
.tel-bn{
  display:inline-block;
  margin:6px 0 0;
  line-height:1;
  font-size:1.6em;
}
.tel-bn:hover{
  color:#d1000b;
  text-decoration:none !important;
}
.tel-bn small{
  display:inline-block;
  margin:0 7px 0 0;
  padding:2px 6px 2px 0;
  font-size:0.65em;
  position:relative;
  top:-2px;
  border-right:solid 1px #b10a0a;
}
.tel-notice{
  color: #b10a0a;
  font-size:0.95em;
}
.reservation-intro-flow-inner{
  display:inline-block;
  position:relative;
}
.reservation-intro-flow-inner:before{
  content:"";
  display:block;
  width:1px;
  height:100%;
  position:absolute;
  left:25px;
  top:0;
  background: linear-gradient(to bottom,  #d19f9f 0%,#9e3026 100%);
}
.reservation-intro-flow-item{
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin:0 0 20px;
  position:relative;
}
.reservation-intro-flow-item:last-child{
  margin:0;
  background: #fcf7f7;
}
.reservation-intro-flow-num{
  display: flex;
  justify-content: center;
  align-items: center;
  width:50px;
  height:50px;
  flex-shrink:0;
  text-align:center;
  background:#d19f9f;
  border-radius:25px;
}
.reservation-intro-flow-item:nth-child(2) .reservation-intro-flow-num{
  background:#c67171;
}
.reservation-intro-flow-item:nth-child(3) .reservation-intro-flow-num{
  background:#b25757;
}
.reservation-intro-flow-item:nth-child(4) .reservation-intro-flow-num{
  background:#9e3026;
}
.reservation-intro-flow-num span{
  font-size:2.2em;
  color:#fff;
}
.reservation-intro-flow-text{
  flex-grow:1;
  padding:0 0 0 15px;
  box-sizing:border-box;
  text-align:left;
}
.reservation-intro-flow-text p{
  font-size:1.35em;
  font-weight:bold;
}
.reservation-intro-flow-text  span{
  display:block;
  line-height:1.4em;
}

#reservation-form{
  background:#fff;
  text-align:center;
  border-bottom:solid 1px #896837;
}
#reservation-form .desc{
  text-align:left;
  line-height:1.8em;
}
.reservation-form-iframe{
  margin:30px 0 0;
  border:solid 1px #896837;
}
.reservation-form-iframe iframe{
  display:block;
  width:100%;
}

#reservation-okayama,
#reservation-other{
  background:#fcf7f7;
}
#reservation-okayama .reservation-intro-map-inner{
  margin:0;
}

#reservation-other.reservation-contents{
  padding-top:0;
}
.reservation-other-main{
  width:90%;
  margin:0 auto;
  padding:25px 20px;
  box-sizing:border-box;
  background:#fff;
  border:solid 1px #896837;
}
.reservation-other-title,
.reservation-other-subtitle{
  margin:0 0 20px;
  font-size:2em;
  line-height:1em;
  letter-spacing:0.05em;
  color:#896837;
  text-align:center;
}
.reservation-other-title{
   margin-top:-60px;
   padding-top:60px;
}
.reservation-other-desc{
  margin:0 0 15px;
}
.reservation-other-nav{
  margin:0 0 30px;
  font-size: 1.2em;
}
.reservation-other-nav a:not(:last-child){
  margin:0 0 10px 0;
}
.reservation-other-subtitle{
  margin:0 0 20px;
  font-size:1.7em;
}
.reservation-other-sub{
  margin:20px 0 0;
  padding:20px 0 0;
  border-top:solid 1px #896837;
}
.reservation-other-tel-item{
}
.reservation-other-tel-item:not(:last-child){
  margin:0 0 15px;
}
.reservation-other-tel-item p{
  margin:0 0 10px;
  font-weight:bold;
  text-align:center;
  font-size:1.35em;
  line-height:1;
}
.reservation-other-tel-item a{
  display:block;
  text-align:center;
  font-size:2em;
  letter-spacing:0;
  transition: opacity 0.2s ease 0s;
}
.reservation-other-tel-item a:hover{
  opacity:0.7;
  color:inherit !important;
  text-decoration:none !important;
}
.reservation-other-tel-item a small{
  display:inline-block;
  margin:0 3px 0 0;
  font-size:0.6em;
  position:relative;
  top:-2px;
}
.reservation-other-line-inner a{
  display:block;
  max-width:400px;
  margin:0 auto;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
  transition: filter 0.2s ease 0s, opacity 0.2s ease 0s;
}
.reservation-other-line-inner a:hover{
  opacity:0.8;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0));
}

#revico_user_content{
  padding: 1em;
}

/* 額縁素材のこだわりページ用(20230627) */
#picture-frame .pf-top {
   margin: 30px 0;
}
#picture-frame .pf-top img {
   margin-bottom: 15px;
   width: 100%;
   height: auto;
}
#picture-frame .pf-top p.min {
  font-size: 1.2em;
  line-height: 2.1em;
  text-align: center;
}
#picture-frame .nav-wrap {
  margin-bottom: 30px;
}
#picture-frame .nav-wrap .pf-nav {
  margin-bottom: 10px;
  width: 100%;
}
#picture-frame .nav-wrap .pf-nav-ttl {
  font-size: 1.3em;
  line-height: 40px;
  color: #782629;
  background-color: #f9f3f3;
  border-top: 1px solid #782629;
  padding: 0 0 0 15px;
  position: relative;
}
#picture-frame .nav-wrap .pf-nav-ttl span {
  font-family: inherit;
  font-size: 1em;
  color: #d19f9f;
  margin-left: 10px;
}
#picture-frame .nav-wrap .pf-nav-ttl:before {
  content: "";
  background-color: #fff;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 10px;
}
#picture-frame .nav-wrap .pf-nav-ttl:after {
  content: '';
  width: 0.4em;
  height: 0.4em;
  border: 0.1em solid #d19f9f;
  border-left: 0;
  border-bottom: 0;
  transform: rotate(45deg);
  transform-origin: top right;
  position: absolute;
  top: 50%;
  transform: rotate(135deg);
  transform-origin: center;
  top: 36%;
  right: 16px;
}
#picture-frame .nav-wrap .pf-nav-ttl.active:after {
  transform: rotate(-45deg);
  top: 43%;
}
#picture-frame .nav-wrap .pf-nav > div {
    display: none;
}
#picture-frame .nav-wrap .pf-nav-menu {
  list-style: none;
  margin: 15px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  row-gap: 6px;
}
#picture-frame .nav-wrap .pf-nav-menu li {
  margin: 0;
  padding: 0;
}
#picture-frame .nav-wrap .pf-nav-menu li img {
  margin-right: 3px;
}
#picture-frame .nav-wrap .pf-nav-menu li a {
  color: initial;
  font-size: .9em;
}
#picture-frame .nav-wrap .pf-nav-menu li a:hover {
  text-decoration: none;
  color: #d19f9f;
}
#picture-frame .title span {
  color: #d19f9f;
  margin-left: 10px;
}
#picture-frame .frame-item {
  padding: 80px 0 30px;
  margin-top: -50px;
  display: grid;
  grid-template-columns: 135px 1fr;
  grid-template-rows: auto 1fr;
  grid-template-areas: "img top" "txt txt";
  column-gap: 20px;
}
#picture-frame .frame-item:not(:last-child) {
  border-bottom: 1px solid #dfdfdf;
}
#picture-frame .frame-item .frame-ttl {
  grid-area: top;

  margin: 0;
}
#picture-frame .frame-item .frame-ttl .frame-name {
  font-size: 1.2em;
  font-weight: bold;
  margin: 0 0 5px;
}
#picture-frame .frame-item .frame-ttl .frame-cat {
  background-color: #782629;
  color: #fff;
  width: 71px;
  font-size: .9em;
  line-height: 16px;
  text-align: center;
  display: inline-block;
  margin: 0;
}
#picture-frame .frame-item .frame-txt {
  grid-area: txt;
  position: relative;

}
/* ボタン */
#picture-frame .ac-btn {
  bottom: 0;
  cursor: pointer;
  display: inline-block;
  font-size: 1em;
  color: #bfbfbf;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  text-align: center;
  transition: all .2s;
  width: fit-content;
  z-index: 1;
}
/* 続きを読むボタンの表記 */
#picture-frame .ac-btn:before {
  content: "説明を読む";
}
#picture-frame .ac-btn:after {
  content: "+";
  width: 20px;
  height: 20px;
  line-height: 20px;
  background-color: #bfbfbf;
  color: #fff;
  display: inline-block;
  text-align: center;
  vertical-align: middle;
  margin-left: 10px;
}
#picture-frame .ac-txt {
  overflow: hidden;
  position: relative;
  padding-bottom: 3em;
}
#picture-frame .ac-txt.is-hide {
  height: 80px;
}
#picture-frame .ac-txt:before {
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,.9) 50%, rgba(255,255,255,.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,.9) 50%, rgba(255,255,255,.9) 50%, #fff 100%);
  bottom: 0;
  content: "";
  height: 60px; /* グラデーションで隠す高さ */
  position: absolute;
  width: 100%;
}
#picture-frame .ac-btn.is-show {
  bottom: 0;
}
/* 閉じるボタンの表記 */
#picture-frame .ac-btn.is-show:before {
  content: "閉じる";
}
#picture-frame .ac-btn.is-show:after {
  content: "ー";
  font-size: .8em;
}
/* 続きを見るボタンをクリックしたらテキストを隠しているグラデーションを消す */
#picture-frame .ac-btn.is-show + .ac-txt:before {
  display: none;
}

#picture-frame .frame-item .frame-txt {
  text-align: justify;
  line-height: 26px;
  font-size: 1.2em;
}

#picture-frame .frame-item img {
  grid-area: img;
  margin: 0;
}


/* シンフラワーのブーケについて ページ用(20230711) */
.preservation-section-title{
  padding-top:60px;
  margin-top:-60px;
  position:relative;
}
#preservation-intro{
  background:#ede2e2;
}
#preservation-intro:before,
#preservation-ordermade:before,
#pressed-merit:before{
  content:"";
  display:block;
  width:100%;
  height:80px;
  background:#fff;
  position:absolute;
  left:0;
  bottom:0;
  border-top: solid 1px #896837;
}
#preservation-intro.reservation-contents{
  padding:0;
}
.preservation-intro-menu{
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  flex-direction: row;
  margin:0 0 15px;
}
.preservation-intro-menu a{
  display: flex;
  justify-content: center;
  align-items: center;
  width:46%;
  padding:10px 5px 8px;
  margin:0 2%;
  box-sizing:border-box;
  border-bottom: solid 1px #896837;
  font-size:15px;
  line-height:1;
}

#preservation-bouquet.reservation-contents{
  padding-top:20px;
}
#preservation-bouquet .desc{
  margin:0 0 2em;
}
#preservation-bouquet .preservation-bouquet-image-02{
  width:55%;
  margin:0 auto;
  border:none;
}
.preservation-bouquet-naming{
  display:inline-block;
  margin:3em 0 0;
  padding:0 1.5em 1.5em;
  position:relative;
  box-sizing:border-box;
  border:solid 1px #aa8658;
}
.preservation-bouquet-naming-title{
  display:inline-block;
  padding:0 5px;
  margin:0 0 2em;
  margin-top:-2.5em;
  position:relative;
  background:#fff;
}
.preservation-bouquet-naming-title h4{
  margin:0 0 12px;
  color:#9e3026;
  font-size:2.5em;
  line-height:1;
}
.preservation-bouquet-naming-title p{
  color:#896837;
  font-size:1.5em;
  line-height:1;
  letter-spacing:0.05em;
}
.preservation-bouquet-naming-desc p{
  margin:0 0 1em;
  font-size:1.2em;
  line-height:1.8em;
  text-align:left;
}
.preservation-bouquet-naming-desc p:last-child{
  margin:0;
}

#preservation-ordermade,
#pressed-merit{
  padding-top:0;
  background: linear-gradient(to bottom,  #ede2e2 0%,#fcf7f7 60%);
  border-bottom: solid 1px #896837;
}
#preservation-ordermade:before,
#pressed-merit:before{
  top:0;
  bottom:auto;
  border-top:none;
  border-bottom: solid 1px #896837;
}
.preservation-ordermade-header-image{
  margin:0 0 50px;
}
#preservation-ordermade .preservation-ordermade-image-03{
  width:60%;
  margin:0 auto;
  border:none;
}

#preservation-arrange{
  margin-top:50px;
}
.preservation-arrange-item:not(:last-child){
  margin:0 auto 30px;
}
.preservation-arrange-image{
  width:80%;
  margin:0 auto 35px;
  position:relative;
  border: solid 1px #896837;
}
.preservation-arrange-image:before{
  content:"";
  display:block;
  width:1px;
  height:26px;
  background:#896837;
  position:absolute;
  bottom:-26px;
  left:50%;
}
.preservation-arrange-image:after{
  content:"";
  display:block;
  width:7px;
  height:7px;
  background:#896837;
  position:absolute;
  bottom:-26px;
  left:50%;
  margin-left:-3px;
  border-radius:3px;
}
.preservation-arrange-title{
  margin:0 0 10px;
  color:#9e3026;
  font-size:1.9em;
  line-height:1;
  text-align:center;
}
.preservation-arrange-item .desc{
  line-height:1.8em;
}

.reservation-contents .desc-wrap.preservation-warranty-image{
  margin:2em 0 0;
}
.desc-wrap .preservation-warranty-image-02{
  margin:0 0 20px;
  border:none;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.2));
}

.preservation-link{
  display: block;
  margin:50px 0 0;
  padding:50px 0 0;
  border-top:solid 1px #aa8658;
  text-align:center;
}
.preservation-link.catalog{
   margin:0 0 50px;
   padding:0;
   border-top:none;
}
.preservation-link-bn{
  display:block;
  width:100%;
  max-width:460px;
  box-sizing:border-box;
  padding:30px 10px;
  margin:0 0 15px;
  border:solid 1px #aa8658;
  background:url(/wordpress/wp-content/themes/xing16/image/preservation/link-product.jpg) no-repeat center center/cover;
}
.preservation-link-bn#preservation-link-reserve{
  background:url(/wordpress/wp-content/themes/xing16/image/preservation/link-reserve.jpg) no-repeat center center/cover;
}
.preservation-link-bn-inner{
  display:inline-block;
  min-width: 64%;
  padding:12px 16px;
  box-sizing:border-box;
  color:#fff;
  font-size:1.3em;
  background:#b10a0a;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.3));
}
.preservation-link-bn-inner h4{
  margin:6px 0 0;
  box-sizing:border-box;
  font-size:1.5em;
}

#preservation-catalog{
  padding-top:60px;
  margin-top:-60px;
  position:relative;
}
.preservation-catalog-wrap:not(:last-child){
  margin:0 0 35px;
  padding:0 0 25px;
  border-bottom:solid 1px #aa8658;
}
.preservation-catalog-title{
  padding:0 0 20px;
  margin:0 0 25px;
  position:relative;
  color:#896837;
  font-size:1.8em;
  line-height:1;
  text-align:center;
}
.preservation-catalog-title:after{
  content:"";
  display:block;
  width:40px;
  height:1px;
  background:#896837;
  position:absolute;
  bottom:0px;
  left:50%;
  margin-left:-20px;
}
.preservation-catalog-nav{
  display: flex;
  justify-content: flex-start;
  flex-wrap: wrap;
  flex-direction: row;
}
.preservation-catalog-item{
  display:block;
  width:calc(100% / 3);
  flex-shrink:0;
  padding:0 2% 3%;
  margin:0;
  box-sizing:border-box;
  transition:color 0.2s ease 0s, opacity 0.2s ease 0s;
}
.preservation-catalog-item:hover{
  color:#d1000b;
  text-decoration:none !important;
  opacity:0.7;
}
.preservation-catalog-item p{
  margin:5px 0 0;
  text-align:center;
  font-size:1.2em;
  line-height:1.2em;
}

#preservation-other{
  padding-top:0;
}
#preservation-other .reservation-other-main {
  max-width:850px;
  padding-top:0;
  text-align:center;
}
.preservation-other-title{
  display:inline-block;
  padding:0 10px;
  top: -0.5em;
  position:relative;
  color:#896837;
  font-size:1.8em;
  line-height:1;
  text-align:center;
  background:#fff;
}
.preservation-other-desc{
  margin:0 0 30px;
  text-align:left;
}

/* LINEページ用(20230802) */
#line .line-top {
  margin: 30px 0 50px;
}
#line .line-top img {
    margin-bottom: 15px;
    width: 100%;
    height: auto;
}
#line .line-top p.min {
  font-size: 1.2em;
  line-height: 2.1em;
  text-align: center;
  margin-bottom: 20px;
}
#line p.line-btn {
  text-align: center;
}
#line p.line-btn a {
  font-size: 1.3em;
  padding: .9em 3.5em;
  margin: 0 auto;
  color: #fff;
  background: #06c755 url(https://www.xing-flower.com/wordpress/wp-content/themes/xing16/image/a.png) no-repeat 95% center;
  background-size: 6px 11px;
}
#line .line-case {
  margin-bottom: 50px;
}
#line .line-case h1.title {
  font-size: 1.8em;
  font-weight: 100;
  color: #782629;
  line-height: 1.5;
  text-align: center;
  border-top: solid 1px #dcb7b7;
  padding: .8em 10px;
  margin-left: -10px;
  margin-bottom: 30px;
}
#line .line-case img {
    margin-bottom: 10px;
    width: 75%;
    height: auto;
}
#line .line-case .case-list {
  text-align: center;
  margin-bottom: 25px;
}
#line .line-case .case-list ul {
  width: 75%;
  margin: 0 auto;
  text-align: left;
}
#line .line-case .case-wrap .case-list ul li {
  list-style-type: none;
  padding: 0 0 0 1.5em;
  font-size: 1.1em;
  line-height: 1.6;
}
#line .line-case .case-wrap .case-list ul li::before {
  position: relative;
  top: 1em;
  left: -1.4em;
  display: block;
  width: 8px;
  height: 8px;
  content: '';
  border-radius: 100%;
  background: #d19f9f;
}
#line .line-faq {
  margin-bottom: 50px;
}
#line .line-faq h1 {
  padding-left: 20px;
  padding-right: 0;
  margin-bottom: 1em;
}
#line .line-faq .faq-list {
  padding-bottom: 1.8em;
  margin-bottom: 1em;
  border-bottom: solid 1px #dfdfdf;
}
#line .line-faq .faq-list:last-of-type {
  padding-bottom: .8em;
  margin-bottom: 0;
  border-bottom: none;
}
#line .line-faq .faq-list {
  width: 90%;
}
#line .line-faq .faq-list dt {
  font-size: 1.5em;
  line-height: 1.5;
  padding: .8em 0 .8em 2em;
  background: url(https://www.xing-flower.com/wordpress/wp-content/uploads/2023/07/line_faq_ico01.jpg) no-repeat left .9em;
}
#line .line-faq .faq-list dd {
  padding-left: 2.5em;
  line-height: 2;
  background: url(https://www.xing-flower.com/wordpress/wp-content/uploads/2023/07/line_faq_ico02.jpg) no-repeat left .3em;
  font-size: 1.1em;
}
#line .line-faq .faq-contact {
  text-align: center;
}
#line .line-voice h1 {
  margin-bottom: 1.8em;
}
#line .line-voice .voice-list {
  box-shadow: 0px 0px 10px 0px #ddd;
  border-radius: 10px;
  padding: 1em 2em 2em;
  margin-bottom: 15px;
}
#line .line-voice .voice-list:last-of-type {
  margin-bottom: 50px;
}
#line .line-voice .voice-list .voice-title {
  float: left;
  width: 65%;
  font-size: 1.6em;
}
#line .line-voice .voice-list .voice-title span {
  background: #d19f9f;
  color: #fff;
  font-size: .6em;
  margin: 0 0 8px;
  display: block;
  width: 7em;
  text-align: center;
}
#line .line-voice .voice-list .customer {
  float: right;
  width: 25%;
  padding-right: 10%;
  margin-top: 2.8em;
  text-align: right;
  font-size: 1.1em;
}
#line .line-voice .voice-list .customer.male {
  color: #6b90b3;
  background: url(https://www.xing-flower.com/wordpress/wp-content/uploads/2023/07/line_voice_ico01.jpg) no-repeat right .7em;
}
#line .line-voice .voice-list .customer.female {
  color: #d19f9f;
  background: url(https://www.xing-flower.com/wordpress/wp-content/uploads/2023/07/line_voice_ico02.jpg) no-repeat right .7em;
}
#line .line-voice .voice-list .voice-content {
  clear: both;
  font-size: 1.1em;
  line-height: 2;
}

/* シンフラワーの押し花 ページ用(20230920) */
#pressed-intro{
   background: linear-gradient(to bottom, #ede2e2 370px, #ffffff 370px);
}
#pressed-intro.reservation-contents{
  padding:0;
}
#pressed-intro .preservation-intro-menu {
  margin: 0 0 30px;
}
#pressed-about{
   padding-top:0;
}
#pressed-merit {
   padding-top:0;
   border-bottom:none;
}
#pressed-merit .preservation-ordermade-header-image{
   margin:0 0 10px;
}
.pressed-merit-item{
   padding:20px 20px 15px;
   margin:0 auto 15px;
   box-sizing:border-box;
   background:#fff;
   border:solid 1px #aa8658;
}
.pressed-merit-item-text{
   width:100%;
}
.pressed-merit-item-image{
   width:100%;
   margin:0 0 15px;
}
.pressed-merit-item-num{
   margin:0 0 14px;
   font-size:12px;
   color:#9e3026;
   line-height:1;
   text-align:center;
}
.pressed-merit-item-num span{
   display:inline-block;
   margin:0 0 0 2px;
   position:relative;
   bottom:-2px;
   font-size:3em;
}
.pressed-merit-item-title{
   margin:0 0 14px;
   padding:0 0 14px;
   border-bottom:solid 1px #aa8658;
   font-size:1.8em;
   color:#9e3026;
   line-height:1.2em;
   text-align:center;
}
.pressed-merit-item-desc p:not(:last-child){
   margin:0 0 1em;
}
.pressed-pickup{
   padding:30px 20px 20px;
   margin:50px auto 0;
   position:relative;
   box-sizing:border-box;
   border:solid 1px #aa8658;
}
.pressed-pickup-title{
   width:100%;
   text-align:center;
   position:absolute;
   top:-1em;
   left:0;
}
.pressed-pickup-title.with_caption{
   top:-3em;
}
.pressed-pickup-title span{
   display:inline-block;
   padding:0 1em;
   font-size:2.2em;
   color:#9e3026;
   line-height:1em;
   background:#fcf7f7;
}
.pressed-pickup-title span small{
   display:block;
   font-size:0.7em;
}
.pressed-pickup-item{
   display: flex;
   justify-content:flex-start;
   align-items:center;
   margin:0 auto 15px;
   text-decoration:none;
}
.pressed-pickup-item:last-child{
   margin:0 auto;
}
.pressed-pickup-item > div{
   width:60%;
   padding:0 0 0 10px;
   box-sizing:border-box;
}
.pressed-pickup-image{
   width:40%;
   margin:0;
}
.pressed-pickup-image.large{
   width:70%;
}
.pressed-pickup-item-title{
   margin:0 0 0.5em;
   font-size:1.8em;
   color:#9e3026;
   line-height:1em;
}
.pressed-pickup-desc{
   font-size:1.15em;
   line-height:1.4em;
   color:#111;
}

#pressed-flow{
   border-top:none;
   background:#fcf7f7;
   text-align:center;
}
.pressed-flow-wrap{
   display:inline-block;
   margin:20px 0 0;
   position:relative;
}
.pressed-flow-wrap:before{
   content:"";
   display:block;
   width:1px;
   height:100%;
   position:absolute;
   left:20px;
   top:0;
   background:#9e3026;
}
.pressed-flow-item{
   display: flex;
   justify-content: flex-start;
   margin:0 0 45px;
   text-align:left;
   position:relative;
}
.pressed-flow-item:last-child{
   margin:0;
   background:#fcf7f7;
}
.pressed-flow-item-num{
   width:40px;
}
.pressed-flow-item-text{
   width:calc(100% - 40px);
   padding:8px 0 0 15px;
   box-sizing:border-box;
}
.pressed-flow-item-title{
   margin:0 0 0.5em;
   font-size:2em;
   color:#9e3026;
   line-height:1em;
}
.pressed-flow-item-desc.desc{
   margin:0 0 1em;
   line-height:1.8em;
}
.pressed-flow-item-image{
   max-width:384px;
   margin:0;
   border: solid 1px #aa8658;
}

#pressed-catalog{
   background:#fff;
   border-top:solid 1px #aa8658;
}
.pressed-catalog-item{
   margin:0 auto 15px;
   padding:0 20px;
   box-sizing:border-box;
   border: solid 1px #aa8658;
   background:#fff;
}
.pressed-catalog-item.combi{
   padding:0 10px;
}
.pressed-catalog-item:last-child{
   margin:0;
}
.pressed-catalog-item-title{
   display: flex;
   justify-content: center;
   align-items:center;
   padding:20px 0;
   color:#9e3026;
}
.pressed-catalog-item-title .en{
   margin: 0;
   padding:0 10px 0 0;
   font-size:1.8em;
   line-height:1em;
   border-right: solid 1px #aa8658;
}
.pressed-catalog-item-title .ja{
   margin: 0;
   padding:0 0 0 10px;
   font-size:1.2em;
   line-height:1em;
}
.pressed-catalog-item-slide{
   margin:0 0 20px;
}
.pressed-catalog-item-image img{
   width:82%;
   margin:0 auto;
}
.pressed-catalog-item-slide .slick-prev, .pressed-catalog-item-slide .slick-next {
    top: 50%;
    display: block;
    width: 20px;
    height: 42px;
    margin-top: -21px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    z-index: 1;
    opacity: 1;
    transition: opacity 0.2s ease 0s;
}
.pressed-catalog-item-slide .slick-prev {
    left:0;
}
.pressed-catalog-item-slide .slick-next {
    right:0;
}
.pressed-catalog-item-slide .slick-prev:hover, .pressed-catalog-item-slide .slick-next:hover {
    opacity: 0.7;
}
.pressed-catalog-item-slide .slick-prev:before, .pressed-catalog-item-slide .slick-next:before {
    display: block;
    content: "" !important;
    width: 20px;
    height: 42px;
    background: url(./image/pressed/icon_arrow_prev.svg) no-repeat center center transparent;
    opacity: 1;
}
.pressed-catalog-item-slide .slick-next:before {
    background: url(./image/pressed/icon_arrow_next.svg) no-repeat center center transparent;
}
.pressed-catalog-item-slogan{
   margin: 0 0 0.5em;
   font-size:1.6em;
   line-height:1.4em;
   text-align:center;
   color:#896837;
}
.pressed-catalog-item-desc{
   margin: 0 0 1em;
   font-size:1.2em;
   line-height:1.6em;
}
.pressed-catalog-item-cta{
   padding:18px 0 18px;
   border-top: solid 1px #aa8658;
   text-align:center;
}

#pressed-voice{
   background:#fcf7f7;
   border-top:solid 1px #aa8658;
}
.pressed-voice-item{
   margin:0 auto 15px;
   padding:20px 20px 0;
   box-sizing:border-box;
   border: solid 1px #aa8658;
   background:#fff;
}
.pressed-voice-item-main{
   margin:0 0 15px;
}
.pressed-voice-item-desc{
   width:100%;
   margin:0 0 1em;
}
.pressed-voice-item-desc p{
   font-size:1.15em;
   line-height:1.8em;
}
.pressed-voice-item-desc p:not(:last-child){
   margin:0 0 1em;
}
.pressed-voice-item-image{
   width:100%;
   margin:0;
}
.pressed-voice-item-image figcaption{
   margin:5px 0 0;
   text-align:right;
}
.pressed-voice-item-cta{
   display: flex;
   justify-content: center;
   padding:10px 0 20px;
   border-top: solid 1px #aa8658;
}
.pressed-voice-item-cta-wrap{
   padding:10px 0 0;
}
.pressed-voice-item-cta-wrap .pressed-voice-item-cta{
   padding:0;
   margin:0 0 20px;
   border-top:none;
}
.pressed-voice-item-cta-image{
   max-width:100px;
   margin:0;
}
.pressed-voice-item-cta-text{
   width:calc(100% - 100px);
   margin:0;
   padding:0 0 0 5px;
}
.pressed-voice-item-cta-title{
   margin:0 0 6px;
   font-size:1.1em;
}
.pressed-voice-item-cta-catalog{
   margin:0 0 10px;
   font-size:1.4em;
   line-height:1em;
   color:#9e3026;
}
.pressed-voice-item-cta-catalog small{
   display:block;
   margin:5px 0 0 0;
   font-size:0.7em;
}


/* シンフラワーの108本のバラ ページ用(20230920) */
#roses-about{
  padding-top:0;
}
#roses-method{
  background: linear-gradient(to bottom,  #ede2e2 0%,#fcf7f7 20%);
  /*border-top: solid 1px #896837;*/
}
.roses-method-desc{
   margin:2em 0 3em;
}
.roses-method-pressed{
   margin:0 auto;
   padding:10px 20px 20px;
   box-sizing:border-box;
   border: solid 1px #aa8658;
   background:#fff;
}
.roses-method-pressed-image{
   width:100%;
}
.roses-method-pressed-text{
   width:100%;
}
.roses-method-pressed-label,
.roses-method-pressed-title{
   margin: 0 0 10px;
   font-size:1.2em;
   line-height:1em;
   color:#9e3026;
}
.roses-method-pressed-title{
   margin: 0 0 15px;
   font-size:1.8em;
}
.roses-method-pressed-desc{
   margin: 0 0 1em;
   font-size:1.1em;
   line-height:1.6em;
}
#roses-method .pressed-pickup-title{
   top:-2em;
}
#roses-method .pressed-pickup-title span{
   font-size:1.6em;
   line-height:1.4em;
}
#roses-catalog{
   background: #fcf7f7;
}
#roses-catalog .pressed-catalog-item{
   max-width:960px;
}
#roses-catalog .pressed-catalog-item-title .ja{
   padding:0;
   font-size:1.7em;
   line-height:1.3em;
}
#roses-catalog .pressed-catalog-item-desc,
#roses-catalog .desc{
   font-size:1.15em;
}
#roses-catalog .pressed-catalog-item-slide{
   max-width:700px;
   margin:0 auto 30px;
}

.roses-catalog-combi{
   position:relative;
   margin:20px 0;
}
.roses-catalog-combi-flex{
   display: flex;
   justify-content: space-between;
   position:relative;
}
.roses-catalog-combi-flex:first-child{
   margin:0 0 40px;
   padding:0 0 30px;
   border-bottom:solid 1px #aa8658;
}
.roses-catalog-combi-item{
   width:48%;
   max-width: 360px;
   margin: 0;
   text-align:center;
}
.roses-catalog-combi-image{
   max-width:280px;
   margin:0 auto 15px;
}
.roses-catalog-combi-title{
   margin:0 0 5px;
   font-size:1.4em;
   line-height:1em;
   color:#9e3026;
}
.roses-catalog-combi-title small{
   display:block;
   margin:3px 0 0;
   font-size:0.7em;
}
.roses-catalog-combi-data{
   margin:0 0 10px;
   line-height:1.3em;
}
.roses-catalog-combi-plus{
   width:100%;
   position:relative;
   margin-top:-60px;
}
.roses-catalog-combi-plus img{
   width:40px;
   margin:0 auto;
}

#roses-voice{
   background:#fff;
   border-top:solid 1px #aa8658;
}


/* ブログ記事に監修者表示(20231103) */
.entry_single_supervision{
   margin:2em 0;
   padding:12px;
   box-sizing:border-box;
   position:relative;
   border:solid 1px #dcb7b7;
}
.supervision_inner{
   display:flex;
   align-items:center;
   justify-content:space-between;
   margin:0 0 10px;
}
.supervision_thumb{
   width:100px;
}
.supervision_text{
   width:calc(100% - 110px);
}
.supervision_name{
   margin:0 !important;
   padding:0 !important;
   font-size:1.7em;
   font-weight:normal;
   letter-spacing:0.05em;
   line-height:1;
   color:#997d5b;
}
.supervision_position{
   margin:0 0 0.8em !important;
   padding:0 !important;
   font-size:1.35em;
   letter-spacing:0.05em;
   line-height:1;
}
.supervision_desc{
   margin:0 !important;
   padding:0 !important;
   font-size:1em;
   line-height:1.9em
}

/* ブログ記事の装飾(20231106) */
.blog.page.base > p{
   line-height:2em;
}
.blog.page.base > h2{
   margin:2em 0 0.5em;
   padding:0.6em 0.6em 0.5em;
   position:relative;
   font-size:1.4em;
   font-weight:bold;
   line-height:1.3em;
   background: #fbf7ee;
}
.blog.page.base > h2:after{
   content: "";
   display: block;
   width: 100%;
   height: 1px;
   background: linear-gradient(to right, rgba(170,134,87,1) 0%, rgba(170,134,87,0) 100%);
   position: absolute;
   left: 0;
   bottom: 0;
   z-index:1;
}
.blog.page.base > h3{
   margin:2em 0 0.5em;
   padding:2px 0 0 0.5em;
   border-left:solid 3px rgba(170,134,87,1);
   font-size:1.35em;
   font-weight:bold;
   line-height:1.3em;
}
.blog.page.base > h4{
   margin:2em 0 0.5em;
   font-size:1.3em;
   font-weight:bold;
   line-height:1.3em;
}
.blog_highlight {
   display: inline;
   background: linear-gradient(transparent 50%, #ffff66 0%);
   line-height: 1.3em;
}
.article_pickup_box {
   padding: 0 1.5em 1.5em;
   margin: 3.5em auto 1em;
   position: relative;
   box-sizing: border-box;
   border: solid 1px #d8758d;
}
.article_pickup_box:last-child {
   margin-bottom: 0;
}
.article_pickup_box.blue {
   border: solid 1px #7ba1aa;
}
.article_pickup_box p {
   padding: 0 !important;
   font-size: 1.05em;
}
.article_pickup_box p strong {
   display: block;
   font-size: 1.1em;
   font-weight: bold;
   line-height: 1.3em;
}
.article_pickup_content {
   margin-top: -6px;
}
.article_pickup_title {
   display: inline-block;
   position: relative;
   top: -20px;
   padding: 10px 15px;
   color: #fff;
   background: #d8758d;
   line-height: 1;
   font-size: 1.35em;
}
.article_pickup_box.blue .article_pickup_title {
   background: #7ba1aa;
}
.article_pickup_box ul {
   margin: 0;
}
.article_pickup_box li {
   margin: 0 0 0.3em 1.5em;
   list-style: disc;
   list-style-type: disc;
   font-size: 1.1em;
   line-height: 1.2em;
}
.article_pickup_box li:last-child {
   margin-bottom: 0;
}
.single_xing_cta_banner {
   display: block;
   max-width: 90%;
   margin: 0 auto 2em;
   transition: opacity 0.4s ease 0s;
}
.single_xing_cta_banner:hover {
   opacity: 0.6;
}
.single_xing_cta_banner img, .single_xing_cta_banner picture {
   display: block;
   max-width: 100%;
   height: auto;
}

/* 商品一覧のヘッダー追加(20231221) */
.shopping-header-image{
   margin:0 0 10px;
}
.shopping-header-title{
   text-align:center;
}
.shopping-header-title span{
    display: inline-block;
    padding: 0 0 6px;
    margin:0 0 20px;
    border-bottom: solid 1px #896837;
    font-size: 1.8em;
    line-height: 1.3em;
    letter-spacing: 0.05em;
    color: #896837;
}
.shopping-header-desc{
    margin:0 5% 10px;
}
.shopping-header-nav{
   display: flex;
   justify-content: space-between;
}
.shopping-header-nav-bn{
   display:flex;
   align-items:center;
   width:48%;
   padding:17px 0;
   border:solid 1px #aa8658;
   color:#fff !important;
   transition:opacity 0.2s ease 0s;
   background: url(./image/shopping/header-nav-bn-pressed.webp) no-repeat center center/cover;
}
.shopping-header-nav-bn:hover{
   text-decoration:none;
   opacity:0.7;
}
.shopping-header-nav-bn#shopping-header-nav-108roses{
   background: url(./image/shopping/header-nav-bn-108roses.webp) no-repeat center center/cover;
}
.shopping-header-nav-bn > div{
   display:inline-block;
   padding:6px 12px;
   line-height:1;
   font-size:15px;
   background:#aa8658;
   filter: drop-shadow(rgba(0, 0, 0, 0.3) 0px 0px 3px);
   text-align:center;
}
.shopping-header-nav-bn > div small{
   display:block;
   margin:0 0 3px;
   font-size:0.75em;
}


/* ご注文の流れ ページ用(20240325) */
#flow-intro{
   padding-top:0;
   padding-bottom:50px;
   background:#ede2e2;
}
.flow-intro-col{
   text-align:left;
}
.flow-intro-col:not(:last-child){
   padding:0 0 15px;
   margin:0 0 15px;
   border-bottom:solid 1px #aa8658;
}
.flow-intro-menu-title{
   margin:0 0 20px;
   font-size: 1.7em;
   line-height: 1;
   letter-spacing: 0.05em;
   color: #896837;
}
.flow-intro-col a{
   display:flex;
   justify-content:flex-start;
   align-items:flex-start;
   margin:0 0 10px;
   position:relative;
   font-size:1.4em;
   line-height:1.2em;
   text-decoration:none !important;
   transition:opacity 0.2s ease 0s;
}
.flow-intro-col a:hover{
   color:#b10a0a;
   opacity:0.6;
}
.flow-intro-col a:last-child{
   margin:0;
}
.flow-intro-col .num{
   display:block;
   width:22px;
   line-height:22px;
   border-radius:12px;
   text-align:center;
   color:#fff;
   font-size:13px;
   background: #9e3026;
   flex-shrink:0;
}
.flow-intro-col .title{
   display:block;
   flex-grow:1;
   padding:0 0 0 0.4em;
   box-sizing:border-box;
}
.flow-intro-col .title small{
   font-size:0.7em;
}
.flow-contents{
   position:relative;
}
.flow-block{
   margin:0 0 50px;
   position:relative;
   background:#fff;
   border:solid 1px #aa8658;
}
.flow-block:last-child{
   margin:0;
}
.flow-block:not(:first-child):before{
   content:"";
   display:block;
   width:1px;
   height:52px;
   position:absolute;
   left:50%;
   top:-52px;
   z-index:0;
   background:#aa8658;
}
.flow-block-header{
   position:relative;
   padding:0 0 15px;
   text-align:center;
   border-bottom:solid 1px #aa8658;
}
.flow-block-header-intro{
    display:inline-block;
   margin: -37px 0 20px;
    position:relative;
    z-index:1;
    padding:0.4em 1em;
    background:#896837;
    color:#fff;
    font-size:1.8em;
    letter-spacing:0.05em;
    line-height:1;
    filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.05));
}
.flow-block-header-intro:after{
    content:"";
    display:block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 14px 14px 0 14px;
    border-color: #896837 transparent transparent transparent;
    position:absolute;
    bottom:-14px;
    left:50%;
    margin-left:-14px;
}
.flow-block-header-num{
    position: relative;
    padding-top: 60px;
    margin: -80px 0 10px;
}
.flow-block-header-num span{
   display:block;
   width:40px;
   line-height:40px;
   border-radius:20px;
   text-align:center;
   color:#fff;
   background: #9e3026;
   font-size:20px;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
}
.flow-block-header-title{
   font-size: 1.8em;
   line-height: 1.3em;
   letter-spacing: 0.05em;
   color: #896837;
}
.flow-block-body{
   position:relative;
   padding:15px;
}
.flow-block-desc{
   margin:0 0 1em;
   font-size:1.2em;
   line-height:1.9em;
}
.flow-block-desc:last-child{
   margin:0;
}
.flow-block-heading{
   margin:2em 0 0.5em;
   padding:0 0 10px;
   font-size: 1.4em;
   line-height: 1.3em;
   color: #896837;
   border-bottom:solid 1px #aa8658;
    background: linear-gradient(to bottom, #fff 0%,#f6f3ef 100%);
}

.flow-hidden-wrap{
   margin:0 auto 20px;
   background:#faf9f7;
   border:solid 1px #aa8658;
   filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
}
.flow-hidden-check{
   display:none;
}
.flow-hidden-title{
   position:relative;
}
.flow-hidden-title label{
   display:block;
   width:100%;
   padding:10px;
   box-sizing:border-box;
   line-height:1;
   font-size:1.3em;
   text-align:center;
   cursor:pointer;
   transition:opacity 0.2s ease 0s;
}
.flow-hidden-title label:hover{
   opacity:0.7;
}
.flow-hidden-title label:after {
   content: '';
   display: inline-block;
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 10px 5.5px 0 5.5px;
   border-color: #896837 transparent transparent transparent;
   margin-top: -5px;
   margin-left:5px;
   transition:transform 0.2s ease 0s;
}
.flow-hidden-check:checked ~ .flow-hidden-title label:after {
   transform: rotate(180deg);
}
.flow-hidden-body{
   max-height:0;
   padding:0 10px;
   overflow:hidden;
   border-top:solid 1px transparent;
   transition:all 0.4s ease 0s;
}
.flow-hidden-check:checked ~ .flow-hidden-body{
   max-height:5000px;
   padding:10px;
   border-top:solid 1px #aa8658;
}
.flow-hidden-heading{
   margin:0 0 0.5em;
   color:#9e3026;
   font-size:1.25em;
   font-weight:bold;
}
.flow-hidden-body .flow-block-desc{
   font-size:1.1em;
   line-height: 1.4em;
}

/* flow-order
----------------------------------- */
#flow-order{
   background:#fcf7f1;
}
#flow-order:before{
   content:"";
   display:block;
   width:100%;
   height:150px;
   position:absolute;
   top:0;
   left:0;
   background:#ede2e2;
   border-bottom:solid 1px #aa8658;
}
#flow-order.reservation-contents{
   padding-top:0;
}
#flow-order-01 .preservation-link-bn{
   margin:0 auto 30px;
}
#flow-order-01 .reservation-other-subtitle{
   margin:35px 0 20px;
}

.purchase-flow{
   margin:0 0 30px;
   position:relative;
   text-align:center;
}
.purchase-flow:last-child{
   margin:0;
}
.purchase-flow:not(:last-child):after{
   content: '';
   display: block;
   width: 0;
   height: 0;
   border-style: solid;
   border-width: 15px 10px 0 10px;
   border-color: #9e3026 transparent transparent transparent;
   position: absolute;
   left: 50%;
   bottom:-20px;
   margin-left: -10px;
}
#flow-order-02 .shopping-header-nav{
   margin:0 0 20px;
}
.purchase-flow-image{
   max-width:400px;
   margin:0 auto;
}
.purchase-flow-image img{
   margin:0 0 5px;
   border:solid 1px #aa8658;
}
.purchase-flow-image figcaption{
   text-align:right;
   font-size:12px;
   opacity:0.7;
}
.image_modaal{
   cursor:pointer;
   transition:opacity 0.2s ease 0s;
}
.image_modaal:hover{
   opacity:0.7;
}
.purchase-method-title{
   padding:20px 0 0;
   margin:0 0 10px;
   font-size:1.4em;
   border-top:solid 1px #ccc;
}
.purchase-method-title img{
   display:inline-block;
   height:1.4em;
   margin:0 5px 0 0;
}

/* flow-shipping
----------------------------------- */
#flow-shipping{
   border-top:solid 1px #aa8658;
    background: linear-gradient(to bottom, #ede2e2 0%,#fcf7f7 100%);
}
#flow-shipping .wide-inner.flow-shipping-intro{
    max-width: 990px;
}
#flow-shipping .flow-intro-menu{
   margin:20px 0 30px;
}
.flow-shipping-inner:not(:last-child){
   margin:0 0 40px;
}
.packing-flow-wrap{
}
.packing-flow-wrap:not(:last-child){
   margin:0 0 20px;
   padding:0 0 20px;
   border-bottom:solid 1px #ccc;
}
.packing-flow-wrap small{
   font-size:1em !important;
}
.packing-flow-item{
   width:100%;
   margin:0 0 15px;
   font-size:1.1em;
}
.packing-flow-item:last-child{
   margin:0;
}
.packing-flow-item img{
   border:solid 1px #aa8658;
}
.flow-shipping-salon .reservation-about-image{
   margin:15px 0;
}
.flow-shipping-salon .reservation-about-image figure{
   margin:0 0 10px;
}
.flow-shipping-salon .reservation-about-point-item{
   position:relative;
   background:none;
}
.flow-shipping-salon .reservation-about-point-item:before{
   content:"";
   display:block;
   width:50%;
   padding-top:50%;
   position:absolute;
   left:50%;
   top:50%;
   margin-left:-25%;
   margin-top:-25%;
   border:solid 2px #f7eeee;
   border-radius:50%;
}
.flow-shipping-salon .reservation-about-point-item span{
   position:relative;
}
.flow-shipping-visit .reservation-intro-flow-inner{
   display:inline-block;
   margin:30px 0 0;
}
.flow-shipping-visit .reservation-intro-flow-inner p{
   color:#9e3026;
}
.flow-shipping-visit .reservation-intro-flow-item:last-child {
   background: #fff;
}
.flow-shipping-factory-nav a:not(:last-child){
   margin:0 0 10px;
}

/* flow-process
----------------------------------- */
#flow-process{
   border-top:solid 1px #aa8658;
    background: linear-gradient(to bottom, #fcf7f1 0%,#fcf9f7 100%);
}
.flow-block-flex{
}
.flow-block-flex:not(:last-child){
   margin:0 0 20px;
}
.flow-block-flex .flow-block-body-image{
   width:100%;
   margin:0 0 15px;
}
.flow-block-flex .flow-block-desc{
   width:100%;
   margin:0;
}
#flow-process-04:before{
   display:none;
}

/* ---------------------------------- */


#sl7709 {
  margin-bottom: 60px;
}
#sl7709 .slider ul li {
  width: 60vw;
  height: 40vw;
}
#sl7709 .slider_prev:after,
#sl7709 .slider_next:after {
  font-size: 0.75em;
  width: 6vw;
  padding-top: 3vw;
  padding-bottom: 3vw;
}
#sl7709 h6 {
  font-size: 1.1em;
  margin-top: 0.75em;
}



#himp {
  padding-right: 2vw;
  padding-left: 2vw;
}

#fimpfix {
  font-size: 13px;

  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: upright;

  top: 330px;
/*
  transform: translate3d(0, -50%, 0);
*/
}
#fimpfix a {
  line-height: 2.8em;
  padding: 1em 0;
}



#pricelist header {
  padding-top: 10px;
  padding-bottom: 5px;
}
#pricelist header svg {
  height: 50px;
}
#pricelist main {
  margin-top: 30px;
}
#pricelist footer {
  margin-top: 70px;
}

#pricelist .ilist {
  padding-top: 20px;
  padding-bottom: 40px;
}
#pricelist .ilist h1 {
  font-size: 13px;
}
#pricelist .ilist h1 > span {
  font-size: 18px;
}
#pricelist .ilist p.ilp {
  width: 100%;
  text-align: center;
  font-size: 1.5em;
  box-sizing: border-box;
}
#pricelist .ilist aside {
  clear: both;
  font-size: 0.9em;
  text-align: center;
  padding: 20px 20px 0;
}
#pricelist .ilist aside font {
  display: inline-block;
  text-align: left;
}



table.dllist {
  margin-top: 40px;
}
table.dllist:nth-of-type(1) {
  margin-top: 20px;
}
table.dllist tr *:nth-child(1) {
  width: 30%;
}



#data #contact #htp {
}
#data #contact #htp li {
  margin-top: 0;
}
#cfaq,
#cline,
#cmail,
#ctel {
  padding-top: 80px;
}

#form25 {
  margin-top: 30px;
}
#form25 th,
#form25 td {
  display: block;
  box-sizing: border-box;
}
#form25 th {
  line-height: 1em;
  padding-top: 1.5em;
}
#form25 td {
  padding-top: 0.75em;
  padding-bottom: 1.5em;
}
#form25 #acc th,
#form25 #acc td {
  width: auto;
  padding-top: 1.5em;
  padding-bottom: 1.5em;
}



#hnews {
/*
  margin-top: 20px;
  margin-bottom: 40px;
*/
  margin-top: 40px;
}
#hnews article a time {
  display: block;
  font-size: 0.9em;
  padding-bottom: 0.1em;
}



.fea {
  padding: 40px 5vw 80px;
}
.fea > h2 {
  margin-top: 50px;
}
.fea > figure {
  width: 100vw;
  margin-left: -5vw;
}



#campaignmemo {
  width: fit-content;
}
.clist {
  width: 75%;
}
/*
#campaign:after {
  content: '';
  clear: both;
  display: block;
}
.clist {
  float: left;
  width: 49%;
  margin-left: 2%;
}
.clist:nth-of-type(2n+1) {
  clear: both;
  margin-left: 0;
}
*/



#price {
  padding-top: 40px;
}
#price table#pdl {
  font-size: 2.5vw;
}
#dlcom {
  margin-bottom: -20px;
  padding-top: 50px;
}
#price #cfaq {
  padding-top: 0;
}
#price #freecons {
  padding-top: 80px;
}
#price #freecons h6 {
  font-size: 1em;
}



#maintenance > div {
  width: 90vw;
}

/* 保存方法から選ぶ ページ用(20251126) 
---------------------------------------------------------------- */
.choice-contents{
  .sans,
  .sans *{
    font-family: 'Meiryo', 'メイリオ', 'arial', 'helvetica', 'ＭＳ Ｐゴシック', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', 'osaka', sans-serif;
  }
  .desc,
  .desc *{
    line-height:1.9em;
  }
  sp-hide{
    display:none;
  }
}
.choice-contents-inner{
  max-width:90%;
  margin-left:auto;
  margin-right:auto;
  position:relative;
  box-sizing:border-box;
}
#choice-method-header .choice-contents-inner{
  max-width:100%;
}
.choice-header{
  padding-top:10px;
  padding-bottom:10px;
  background:#ede2e2;
  border-top:solid 1px #e8cfb3;
  border-bottom:solid 1px #e8cfb3;
}
.choice-header-title{
  margin:0 0 10px;
  padding:4.5em 0;
  background: url(./image/choice/method-header-title-bg.webp) no-repeat center center/contain;
  h3{
    display:inline-block;
    padding: 0.4em 0.7em;
    background:#aa8658;
    color:#fff;
    line-height:1em;
    font-size:2.5em;
    filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.1));
  }
  small{
    display:inline-block;
    margin:0 0 0 0.2em;
    font-size:0.65em;
    vertical-align: bottom;
  }
}
.choice-header-menu{
    overflow-x: scroll;
    padding-bottom:18px;
  .simplebar-content{
    display:flex;
    justify-content: flex-start;
  }
  a{
    display:block;
    padding:0 1em;
    margin:0;
    line-height:1em;
    border-right: solid 1px #896837;
    font-size: 1.4em;
    white-space:nowrap;
  }
  a:hover{
   color:#d1000b;
   text-decoration:none !important;
  }
  a:last-child{
    border-right:none;
  }
}

#choice-shape-header{
  .choice-header-title{
    background: url(./image/choice/shape-header-title-bg.webp) no-repeat center center/contain;
  }
}
#choice-flower-header{
  .choice-header-title{
    background: url(./image/choice/flower-header-title-bg.webp) no-repeat center center/contain;
  }
}

/* choice-intro
----------------------------- */
.choice-intro{
  padding: 30px 0;
  background:#f7f2f2;
  border-bottom:solid 1px #e8cfb3;
}
#choice-intro-title{
  margin:0 0 2.5em;
  small{
    display:block;
  }
}
.choice-intro-desc{
  margin:0 0 1em;
}
.choice-intro-menu-wrap{
  padding:2em 1em;
	background: linear-gradient(to bottom, #f4ebeb 0%,#f7f2f2 100%);
}
.choice-intro-menu-wrap-title{
  margin:0 0 0.8em;
  font-size: 2.2em;
  line-height: 1.3em;
  letter-spacing: 0.05em;
  color: #896837;
}
.choice-intro-menu{
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  flex-direction: row;
  grid-gap:1em;
}
.choice-intro-menu-item{
  display:block;
  margin:0;
  border:solid 1px #e8cfb3;
  background:#fff;
  filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.07));
  transition: filter 0.2s ease 0s, opacity 0.2s ease 0s;
  &:hover{
    text-decoration:none;
    color:inherit;
    opacity:0.6;
    filter: drop-shadow(0px 0px 3px rgba(0,0,0,0));
  }
}
.choice-intro-menu-item-title{
  padding:0.5em 0;
  font-size:1.8em;
  color:#fff;
  line-height:1em;
  text-align:center;
  background:#d19f9f;
  &.purple{
    background:#ccaec2;
  }
}
.choice-intro-menu-item-inner{
  display:flex;
  align-items:center;
  padding:10px;
}
.choice-intro-menu-item-image{
  width:45%;
}
.choice-intro-menu-item-text{
  width:55%;
  padding:0 0 0 10px;
}
.choice-intro-menu-item-text-slogan{
  margin:0 0 0.8em;
  font-weight:bold;
  font-size:1.2em;
  line-height:1.3em;
  letter-spacing:0;
  color:#333;
}
.choice-intro-menu-item-text-bn.link-bn{
  width:100%;
  min-width:0;
  padding: 12px 5px;
  font-size: 1.2em;
}


#choice-flower-intro{
  .choice-intro-menu{
    display:flex;
    justify-content: flex-start;
    grid-gap:4%;
    row-gap:15px;
  }
   .choice-intro-menu-item{
    width:48%;
    box-sizing:border-box;
  }
  .choice-intro-menu-item-title {
    padding: 0.3em 0;
    letter-spacing:0;
    small{
      font-size:0.7em;
    }
  }
  .choice-intro-menu-item-inner{
    display:block;
    text-align:center;
  }
  .choice-intro-menu-item-image {
    width: 100%;
    max-width:100px;
    margin:0 auto 12px;
  }
  .choice-intro-menu-item-text-bn.link-bn {
    width:auto;
    padding: 10px 20px;
  }
}


/* choice-item-header
----------------------------- */
.choice-item-header{
  padding-top:40px;
  padding-bottom:20px;
  background:#fff;
  border-bottom:solid 1px #e8cfb3;
}

.choice-method-item-header-category{
  margin:0 0 1em;
  text-align:center;
  span{
    display:inline-block;
    padding: 0.4em 0.7em;
    background:#d19f9f;
    color:#fff;
    line-height:1em;
    font-size:1.4em;
  }
}
.choice-method-item-header-title,
.choice-method-item-header-slogan{
  margin:0 0 0.3em;
  font-size: 2.6em;
  line-height: 1.3em;
  letter-spacing: 0.05em;
  color: #896837;
  text-align:center;
}
.choice-method-item-header-text{
  max-width:700px;
  padding:15px 0;
  margin:0 auto;
  border-top:solid 1px #aa8658;
  border-bottom:solid 1px #aa8658;
}
.choice-method-item-header-slogan{
  margin:0 0 0.5em;
  font-size: 1.6em;
}
.choice-method-item-header-slide{
  margin:30px 0 0;
}
.choice-method-item-header-slide,
.choice-item-body-recommend-slide{
  .slick-dotted.slick-slider{
  	margin-bottom:3em;
  }
	.slick-dots{
		bottom: -2.5em;
		left:0;
	}
	.slick-dots li {
		margin: 0 2px;
	}
	.slick-dots li button:before{
		font-size: 10px;
		opacity:0.2;
		transition:all 0.2s ease 0s;
    width: 10px;
    height: 10px;
    left: 6px;
    top: 6px;
    border-radius: 6px;
    background: #aaa;
	}
	.slick-dots li:hover button:before,
	.slick-dots li.slick-active button:before{
		opacity:1;
		color:#b10a0c;
    background:#b10a0c;
	}

  .slick-prev,
  .slick-next{
  	top:45%;
  	display:block;
  	width:20px;
  	height:30px;
  	-webkit-transform:none;
  	-ms-transform:none;
  	transform:none;
  	z-index:1;
  	opacity:1;
  	transition:opacity 0.2s ease 0s;
  }
  .slick-prev{
  	left:-30px;
  }
  .slick-next{
  	right:-30px;
  }
  .slick-prev:hover,
  .slick-next:hover{
  	opacity:0.7;
  }
  .slick-prev:before,
  .slick-next:before{
  	display:block;
  	content:"" !important;
  	width:16px;
  	height:30px;
  	background:url(./image/choice/icon_arrow_prev.svg) no-repeat center center transparent;
  	opacity:1;
  }
  .slick-next:before{
  	background:url(./image/choice/icon_arrow_next.svg) no-repeat center center transparent;
  }

}
.choice-method-item-header-slide-inner{
  max-width:90%;
  margin:0 auto;
}

.choice-shape-item-header,
.choice-flower-item-header{
  .choice-method-item-header-image{
    width:50%;
    margin:0 auto 10px;
  }
  .choice-method-item-header-text-flex{
    width:100%;
    text-align:center;
  }
  .choice-method-item-header-title{
    display:inline-block;
    padding-bottom:0.1em;
    margin-bottom:0.5em;
    border-bottom:solid 1px #896837;
    small{
      display:inline-block;
      margin:0 0 0 0.4em;
      font-size:0.5em;
      vertical-align: bottom;
    }
  }
  .choice-method-item-header-desc{
    text-align:left;
  }
}


/* choice-item-body
----------------------------- */
.choice-item-body{
  padding-top:30px;
  background:#f7f2f2;
  border-bottom:solid 1px #e8cfb3;
}
.choice-item-body-heading{
  margin:0 0 1em;
  padding:0.5em;
  background:#fff;
  border-bottom:solid 1px #e8cfb3;
  font-size:1.6em;
  line-height:1.3em;
  strong{
    color:#896837;
  }
  &:not(:first-child){
    margin-top:2em;
  }
}
.choice-item-body-col{
  display:block;
  .choice-item-body-col-image{
    width:100%;
    margin:0 0 1em;
  }
  .choice-item-body-col-text{
    width:100%;
    h6{
      margin: 0 0 0.5em;
      font-size: 2em;
      line-height: 1.2em;
      color:#b10a0c;
    }
    p:not(:last-child){
      margin:0 0 1em;
    }
  }
}
.choice-item-body-point{
  li{
    margin:0 0 0.6em;
    padding:0 0 0 1.3em;
    list-style:none;
    list-style-type:none;
    font-size:1.3em;
    line-height:1.3em;
    background:url(./image/choice/icon_check.svg) no-repeat left top 0.1em/1em;
  }
}

.choice-item-body-recommend-item{
  display:block;
  transition:opacity 0.2s ease 0s;
  &:hover{
    text-decoration:none;
    color:inherit;
    opacity:0.6;
  }
}
.choice-item-body-recommend-item-image{
   margin:0 0 15px;
   aspect-ratio: 1.5;
   overflow: hidden;
   img{
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center center;
      display: block;
   }
}
.choice-item-body-recommend-item-title{
  margin:0 0 10px;
  font-size:2em;
  position:relative;
  *{
    font-family: "游明朝", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "HGS明朝E", "メイリオ", Meiryo, serif;
  }
  small{
    display:inline-block;
    padding:0 0 0 0.5em;
    margin:0 0 0 0.5em;
    font-size:0.7em;
    position:relative;
    border-left:solid 1px #e8cfb3;
  }
}
.choice-item-body-recommend-item-price,
.choice-item-body-recommend-item-desc{
  color:#333;
  letter-spacing:0;
}
.choice-item-body-recommend-item-desc{
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  font-size:1.2em;
}
.choice-item-body-recommend-slide{
  max-width:90%;
  margin:0 auto;
}

.choice-flower-item-body{
  .choice-item-body-col{
    margin-bottom:3em;
  }
}

/* choice-compare
----------------------------- */
.choice-compare-table{
  margin:2em 0 0;
  padding:0 0 14px;
  table{
    width:130%;
    border-collapse: collapse;
    border-spacing: 0;
    border:solid 1px #aa8658;
  }
  thead th{  
    padding:.5em;
    background:#f7f2f2;
    border-right:dotted 1px #aa8658;
    line-height:1.4em !important;
    font-size:0.95em;
    font-weight:bold;
    color: #896837;
    &:first-child{
    }
    &:last-child{
      border-right:none;
    }
    small{
      font-weight:normal;
      font-size:0.7em;
    }
  }
  tbody{
    th, td{
      padding:.5em;
      background:#fff;
      border-top:solid 1px #aa8658;
      border-right:dotted 1px #aa8658;
      line-height:1.4em !important;
      font-size:0.95em;
      vertical-align:middle;
      text-align:left;
      &:last-child{
        border-right:none;
      }
    }
    th{
      white-space:nowrap;
    }
    a{
      line-height:1.4em !important;
    }
  }
} 


/* choice-info
----------------------------- */
.choice-info{
  background:#ede2e2; 
}
.choice-split{
  display:block;
  width:100%;
  height:1px;
  margin:60px 0;
  background:#aa8658;
  border:none;
  outline:none;
}
.qa-item{
	margin:0 auto 10px;
	background:#fff;
	border: solid 1px #aa8658;
	transition:background 0.2s ease 0s, border 0.2s ease 0s, filter 0.2s ease 0s;
	.text-en{
		display:inline-block;
		position:absolute;
		left:10px;
		margin-top:0px;
		color:#aa8658;
		font-size:20px;
	}
}
.qa-title{
	cursor:pointer;
	line-height:1;
	font-size:1.4em;
	position:relative;
	label{
		display:block;
		padding:12px 20px 12px 35px;
		position:relative;
		box-sizing:border-box;
		cursor:pointer;
		transition:text-shadow 0.2s ease 0s, color 0.2s ease 0s;
		&:hover{
			text-shadow: 0px 0px 3px #ffffff;
		}
	}
	&:after{
		display:block;
		content:'';
		position:absolute;
		top:50%;
		right:10px;
		width:10px;
		height:10px;
		margin-top:-7px;
		border-right:2px solid #aa8658;
		border-bottom:2px solid #aa8658;
		-webkit-transform:rotate(45deg);
		transform:rotate(45deg);
	}
}
.qa-text{
	position:relative;
	box-sizing:border-box;
	border-top:solid 1px transparent;
	height: 0;
	padding:0 0 0 35px;
	overflow: hidden;
	opacity: 0;
	transition: all 0.2s ease 0s;
}
.qa-text p:not(:last-child),
.qa-text figure:not(:last-child){
	margin:0 0 0.7em;
}
.qa-text .text-en{
	margin-top:0;
  color:#9e3026;
}
.bn-qa{
	display: none;
}
.bn-qa:checked + .qa-item{
	.qa-title:after{
		margin-top:-5px;
		-webkit-transform:rotate(225deg);
		transform:rotate(225deg);
	}
	.qa-text{
		height: auto;
		padding:12px 12px 12px 35px;
		opacity: 1;
		border-top:solid 1px #aa8658;
	}
}
.answer-subject{
  font-size:1.6em;
  color:#9e3026;
}

/* choice-banner
----------------------------- */
.choice-banner{
  padding-top:40px;
  padding-bottom:10px;
  background:#fff;
  border-top:solid 1px #e8cfb3;
  border-bottom:solid 1px #e8cfb3;
}
.choice-banner-slogan{
  margin:0 0 1em;
  text-align:center;
  font-size:2em;
  line-height:1.3em;
  color:#9e3026;
}
.choice-banner-inner{
  a{
    display:block;
    width:90%;
    margin:0 auto 15px;
    border:solid 1px #aa8658;
    filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.07));
    transition: filter 0.2s ease 0s, opacity 0.2s ease 0s;
    &:hover{
      opacity:0.6;
      filter: drop-shadow(0px 0px 3px rgba(0,0,0,0));
    }
  }
}

/* choice-blog-banner
----------------------------- */
.choice-blog-banner{
   display:block;
   max-width:540px;
   margin:1em auto 2em;
   border:solid 1px #aa8658;
   filter: drop-shadow(0px 0px 3px rgba(0,0,0,0.07));
   transition: filter 0.2s ease 0s, opacity 0.2s ease 0s;
   &:hover{
      opacity:0.6;
      filter: drop-shadow(0px 0px 3px rgba(0,0,0,0));
   }
   img{
      max-width:100% !important;
   }
}

/* ------------------------------------------------------ */



#ranking {
}
#ranking .rank:not(:nth-of-type(1)) {
  width: 80%;
}



