<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">@charset "utf-8";

/* ----------------------------------------------------------------------
 * RESET
 * ---------------------------------------------------------------------- */
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
input,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-style: normal;
  font-weight: 400;
  vertical-align: top;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

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

html {
  font-size: 62.5%;
  background: #fff;
}

.g-Body {
  color: #333333;
  font-family: "Noto Sans JP", Avenir, "Open Sans", "Helvetica Neue", Helvetica,
    Arial, Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro",
    "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-optical-sizing: auto;
  font-weight: &lt;weight&gt;;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 400;
  line-height: 1;
  -webkit-font-feature-settings: "palt";
  font-feature-settings: "palt";
  letter-spacing: 0.025em;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: unset;
  -webkit-text-size-adjust: 100%;
  cursor: default;
}

.g-Body:after {
  content: "";
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
}

blockquote,
q {
  quotes: none;
}

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

input,
textarea {
  margin: 0;
  padding: 0;
}

ol,
ul {
  list-style: none;
}

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

caption,
th {
  text-align: left;
}

a,
a:before,
a:after,
a img,
input[type="image"] {
  color: #333;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.no-touch a:hover,
.no-touch a:visited:hover,
.no-touch a:hover img,
.no-touch a:visited:hover img,
.no-touch input[type="image"]:hover {
  text-decoration: none;
  opacity: 0.85;
}

a {
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

a:focus {
  outline: none;
}

a:hover {
  opacity: 0.5;
}

img {
  max-width: 100%;
  height: auto;
  /*	image-rendering: -webkit-optimize-contrast;*/
}

b {
  /* font-weight: bold; */
  font-weight: 600;
}

button {
  margin: 0;
  padding: 0;
  border: 0;
  background: transparent;
}

::-moz-selection {
  color: #fff;
  background: rgba(181, 154, 91, 0.5);
}

::selection {
  color: #fff;
  background: rgba(181, 154, 91, 0.5);
}

/* ----------------------------------------------------------------------
 * GLOBAL - UTILITY
 * ---------------------------------------------------------------------- */
.u-inner {
  max-width: 800px;
  margin-right: auto;
  margin-left: auto;
  position: relative;
  background-color: transparent;
}

.u-inner--bg-none {
  background: transparent;
}

.u-show__mobile {
  display: none !important;
}

.u-hide__mobile {
  display: block !important;
}

.u-show__tablet {
  display: none !important;
}

.u-hide__tablet {
  display: block !important;
}

.u-hide_media {
  display: block !important;
}

/* ----------------------------------------------------------------------
 * GLOBAL - Font
 * ---------------------------------------------------------------------- */

.u-text-center {
  text-align: center;
}

.u-text-right {
  text-align: right;
}

.u-bg-clear {
  background: transparent;
}

/* ----------------------------------------------------------------------
 * GLOBAL - Table
 * ---------------------------------------------------------------------- */

.u-table {
  width: 100%;
  margin: 0 0 30px;
  border: 1px solid #ddd;
  position: relative;
}

.u-table-title {
  color: #000;
  line-height: 1.75;
  font-weight: 700;
  width: 200px;
  padding: 15px 0 15px 40px;
  background: #f3f3f3;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}

.u-table-item {
  line-height: 1.75;
  padding: 15px 0 15px 40px;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  position: relative;
}

/* ----------------------------------------------------------------------
 * GLOBAL - Title
 * ---------------------------------------------------------------------- */

.l-section-subtitle {
  text-align: center;
  border-top: 3px double #000;
  border-bottom: 3px double #000;
  padding: 20px 0px;
  font-size: 2.5rem;
  margin: 0 0 40px 0;
  line-height: 1.4;
}

.
/* ----------------------------------------------------------------------
 * GLOBAL - Margin Padding
 * ---------------------------------------------------------------------- */

/* ----------------------------------------------------------------------
 * LAYOUT
 * ---------------------------------------------------------------------- */

.l-content {
  width: 100%;
  height: 100%;
}

.l-section_block {
  line-height: 1.6;
}

/* SNS */

.g-sns-list {
  /* float: right; */
  text-align: center;
}

.g-sns-list .e-item {
  display: inline-block;
}

.g-sns-list .e-link {
  width: 36px;
  height: 36px;
  margin: 0 0 0 10px;
  display: block;
  border-radius: 50%;
  background-size: 100% auto;
}

.g-sns-list .is-fb .e-link {
  background-image: url(../../img/common/sns_fb.png);
}

.g-sns-list .is-tw .e-link {
  background-image: url(../../img/common/sns_twi.png);
}

.g-map,
.g-location-map {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 4100;
  display: none;
}

.g-map .e-image:after,
.g-location-map .e-image:after {
  content: "";
  width: 30px;
  height: 2px;
  background: #000;
  display: inline-block;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: -30px;
  right: -60px;
  right: 6px;
}

.g-map .e-image:before,
.g-location-map .e-image:before {
  content: "";
  width: 30px;
  height: 2px;
  background: #000;
  display: inline-block;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: -30px;
  right: -60px;
  right: 6px;
}

.g-location-map .e-image {
  width: 916px;
}

.l-cover {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.95);
  z-index: 4000;
  display: none;
  cursor: pointer;
}

.g-wrap {
  overflow: hidden;
  position: relative;
  z-index: 10;
}

.l-btn_container {
  margin: 0 auto;
  margin-top: 40px;
}

.l-btn {
  text-align: center;
  position: relative;
  -webkit-transition: 0.5s;
}

.l-btn:before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 12px;
  background-image: url(../../img/common/arrow_W.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  background-repeat: no-repeat;
  right: 20px;
  top: 40%;
  background-color: transparent;
  left: auto;
}

.l-btn :hover:before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 12px;
  background-image: url(../../img/common/arrow_B.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  background-repeat: no-repeat;
  right: 20px;
  top: 40%;
  background-color: transparent;
  left: auto;
}

.l-btn a {
  display: block;
  width: 100%;
  text-decoration: none;
  padding: 20px 0;
  color: #fff;
  background-color: rgba(5, 15, 30, 0.85);
  border: 1px solid #031d42;
  -webkit-transition: 0.5s;
  transition: 0.5s;
}

.l-btn a:hover {
  color: #031d42;
  border: 1px solid #031d42;
  background: #fff;
}

/* ------------------------------------------------------------------------------------------------
 * Header
 * ------------------------------------------------------------------------------------------------ */
.g-header {
  width: 100%;
  height: 80px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  background-color: rgba(255, 255, 255, 1);
  position: fixed;
  top: 0;
  left: 0;
  z-index: 3000;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.016);
  box-shadow: 0px 6px 6px 0px rgba(0, 0, 0, 0.016);
}

.g-header-logo {
  text-align: center;
  /* width: 155px;
	min-width: 155px; */
  padding: 0 20px;
  position: relative;
}

.g-header-title {
  padding: 5px 0 0;
  position: absolute;
  top: 0;
  left: 0;
}

.g-header-name {
  padding: 42px 0 0 20px;
  display: table-cell;
  -webkit-transform-origin: left center;
  -ms-transform-origin: left center;
  transform-origin: left center;
  -webkit-transform: scaleX(0.9);
  -ms-transform: scaleX(0.9);
  transform: scaleX(0.9);
}

.g-header-name .e-link {
  color: #bd9d6d;
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-decoration: none;
  position: relative;
}

.g-header .g-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.g-header .g-nav-item {
  position: relative;
}

.g-header .g-nav-item:before {
  content: "";
  width: 1px;
  height: 15px;
  background: rgba(255, 255, 255, 0.25);
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.g-header .g-nav-item:first-child:before {
  content: none;
}

.g-header .g-nav-item .c-new:after {
  content: "NEW";
  color: #fff;
  background: #924848;
  font-size: 1.2rem;
  padding: 1px;
  display: block;
  top: 8px;
  left: 20%;
  margin: 0 auto;
  width: 60%;
  text-align: center;
  /*	-webkit-transform: scale(0.9);
	-ms-transform: scale(0.9);
	transform: scale(0.9);*/
  position: absolute;
  letter-spacing: 0.1rem;
}

.g-header .g-nav-item a {
  color: #fff;
  font-size: 1.2rem;
  line-height: 1;
  text-decoration: none;
  letter-spacing: 0;
  padding: 0 10px;
  -webkit-transform: scale(0.005deg);
  -ms-transform: scale(0.005deg);
  transform: scale(0.005deg);
}

.g-nav-item--off &gt; * {
  pointer-events: none;
  opacity: 0.2;
}

.g-header-inquiry {
  text-align: center;
  text-shadow: 0px 1px 1px #000000;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: 20px;
}

.g-header-inquiry-item {
  padding: 0 5px;
  font-size: 1.2rem;
  font-weight: 600;
  text-decoration: none;
  position: relative;
  color: #fff;
}

.g-header-inquiry-item:hover {
  opacity: 0.8;
}

.g-header-inquiry-item .is-pamphlet {
  position: relative;
}

.g-header-inquiry-item .is-pamphlet:before {
  content: "";
  width: 32px;
  height: 24px;
  display: inline-block;
  background: url(../../img/common/header-pamphlet.png) no-repeat center / 100%
    auto;
  top: -30px;
  left: 50%;
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  transform: translate(-50%, 0);
  position: absolute;
}

.g-header-inquiry-item .is-catalog {
  position: relative;
}

/*.g-header-inquiry-item .is-catalog:before {
	content: '';
	width: 21px;
	height: 23px;
	display: inline-block;
	background: url(../../img/common/header_catalog.png) no-repeat center / 100% auto;
	top: -30px;
	right: 35%;
	position: absolute;
}*/

.g-header-inquiry-item .is-visit {
  position: relative;
}

.g-header-inquiry-item .is-visit:before {
  content: "";
  width: 21px;
  height: 21px;
  /* margin: 0; */
  display: inline-block;
  background: url(../../img/common/header_visit.png) no-repeat center / 100%
    auto;
  top: -30px;
  right: 17px;
  position: absolute;
}

.g-header-inquiry-item .is-guide:before {
  content: "";
  width: 21px;
  height: 21px;
  /* margin: 0; */
  display: inline-block;
  background: url(../../img/common/header-guide.png) no-repeat center / 100%
    auto;
  top: -30px;
  right: 20px;
  position: absolute;
}

.g-header-inquiry-item .is-guide {
  position: relative;
}

.g-header-inquiry-sp {
  display: none;
}

.g-nav-wrap {
  padding: 6px 20px 6px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.g-header-inner .g-header-logo {
  display: none;
}

/*
.g-nav-wrap li:last-child {
	display: none;
}
*/

.g-header-nav_name_pc {
  margin-right: 150px;
  position: relative;
}

.g-header-nav_name_pc:after {
  content: "";
  position: absolute;
  top: 1px;
  left: -17px;
  width: 14px;
  height: 15px;
  background-image: url(../../img/common/icon_hurman.svg);
  background-position: left 0% top 0;
  background-repeat: no-repeat;
  background-size: contain;
}

.g-header-nav_name_SP {
  margin-left: 95px;
  margin-right: 0;
  margin-bottom: 30px;
  position: relative;
}

.g-header-nav_name_SP:after {
  content: "";
  position: absolute;
  top: 0px;
  left: -17px;
  width: 14px;
  height: 15px;
  background-image: url(../../img/common/icon_hurman.svg);
  background-position: left 0% top 0;
  background-repeat: no-repeat;
  background-size: contain;
}

/* Smartphone Nav Button */
.g-header-nav_button {
  width: 80px;
  height: 80px;
  background: transparent;
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  border: none;
}

.g-header-nav_button:after {
  color: #d60a13;
  font-size: 1.1rem;
  text-align: center;
  letter-spacing: 0.1em;
  width: 100%;
  display: inline-block;
  position: absolute;
  bottom: 10px;
  left: 1px;
}

.g-header-nav_button .e-line {
  display: block;
  width: 35px;
  height: 2px;
  background: #d60a13;
  position: absolute;
  top: 50%;
  left: 55%;
  -webkit-transform: translate(-60%, -7px);
  -ms-transform: translate(-60%, -7px);
  transform: translate(-60%, -7px);
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  z-index: 10;
}

.g-header-nav_button .e-line.is-top {
  margin-top: -7px;
}

.g-header-nav_button .e-line.is-center {
  margin-top: 8px;
}

.g-header-nav_button .e-line.is-bottom {
  margin-top: 23px;
}

.is-open .g-header-nav_button,
.is-open .g-header-nav_button:before {
  /*background: #ccc;*/
}

.is-open .g-header-nav_button:before {
  width: 76px;
  right: 0px;
  height: 2px;
  bottom: -2px;
}

.is-open .g-header-nav_buttom {
  width: 28px;
  background: #ccc;
}

.is-open .g-header-nav_button .e-line.is-top {
  margin-top: auto;
  -webkit-transform: translate(-60%, -7px) rotate(-150deg);
  -ms-transform: translate(-60%, -7px) rotate(-150deg);
  transform: translate(-60%, -7px) rotate(-150deg);
}

.is-open .g-header-nav_button .e-line.is-center {
  opacity: 0;
}

.is-open .g-header-nav_button .e-line.is-bottom {
  margin-top: auto;
  -webkit-transform: translate(-60%, -7px) rotate(150deg);
  -ms-transform: translate(-60%, -7px) rotate(150deg);
  transform: translate(-60%, -7px) rotate(150deg);
}

.g-header .g-nav-item:before {
  background: none;
  content: none;
}

.g-header-inquiry {
  margin-top: 20px;
}

.g-header-inquiry-sp {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  float: right;
  margin: 0 80px 0 0px;
}

.g-header-inquiry-sp li .e-link {
  padding: 39px 7px 6px 7px;
  font-size: 0.95rem;
  border-left: 2px solid #ededed;
  display: block;
  text-align: center;
}

.g-header-inquiry-sp a {
  text-decoration: none;
}

.g-header .g-nav .is-blank {
  position: relative;
}

/*.g-header .g-nav .is-blank:before {
content: '';
display: inline-block;
width: 8px;
height: 12px;
background-image: url(../../img/common/icon-window-01.png);
background-size: contain;
vertical-align: middle;
position: absolute;
background-repeat: no-repeat;
right: 10px;
top: 43%;
background-color: transparent;
left: auto;
}*/

.g-header-inner:before {
  display: none;
}

.g-header-inner {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 80px;
  left: 0;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease-in-out;
  z-index: 9999;
}

/* `.g-nav` は右からスライドイン */
.g-header .g-nav {
  width: 300px; /* ナビゲーションの幅 */
  height: 100vh;
  position: fixed;
  top: 80px;
  right: -300px; /* 初期状態では画面外 */
  background: rgba(0, 0, 0, 0.9);
  transition: right 0.6s ease-in-out;
}

/* `is-open` クラスがついたら表示 */
.is-open .g-header-inner {
  opacity: 1;
  visibility: visible;
}

.is-open .g-header .g-nav {
  right: 0; /* 右からスライドイン */
}

.g-header-inner:after {
  display: none;
}

.g-header-inner-scroll {
  width: 100%;
  height: 100%;
  padding: 0 0 40px;
  position: absolute;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
}

.g-header .g-nav {
  text-align: left;
  height: auto;
  padding: 35px 20px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;

  background: #f6f6f6;
  width: calc(100% - 38px);
  margin-right: 0;
  margin-left: auto;
  height: calc(100vh);
  overflow-y: auto;
}

.g-header .g-nav-wrap {
  margin-top: 20px;
  padding: 0;
  border: none;
  /*		border-top: 1px solid rgba(255, 255, 255, .25);
	border-right: 1px solid rgba(255, 255, 255, .25);
	border-left: 1px solid rgba(255, 255, 255, .25);
	border-bottom: 1px solid rgba(255, 255, 255, .25);*/
  position: relative;
  width: 100%;
  -webkit-box-pack: start;
  -ms-flex-pack: start;
  justify-content: flex-start;
}

/*	.g-header .g-nav-wrap:before {
content: '';
width: 1px;
height: 100%;
display: inline-block;
background: rgba(255, 255, 255, .25);
position: absolute;
bottom: 0;
left: 50%;
}*/

.g-header .g-nav-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  height: auto;
  margin: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}

/*
.g-header .g-nav-item--outline {
border-bottom: 0;
}
*/

.g-header .g-nav-item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
  color: #fff;
  font-size: 1.2rem;
  height: auto;
  padding: 25px 0 5px 0;
}

.g-header .g-nav-news-button {
  display: none;
}

.g-nav_menu {
  max-width: 800px;
  max-height: 800px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -ms-flex-line-pack: start;
  align-content: flex-start;
}

/* ------------------------------------------------------------------------------------------------
 * Footer
 * ------------------------------------------------------------------------------------------------ */

.g-footer {
  opacity: 1;
  background: #fff;
  font-size: 1.4rem;
  position: relative;
  z-index: 20;
  padding: 60px 0;
  border-top: 1px solid #ddd;
}

.g-footer-inner {
  width: 100%;
  padding: 0 60px;
  position: relative;
  z-index: 100;
}

.g-footer .g-nav {
  width: 100%;
  margin: 0 0 30px;
}

.g-footer .g-nav-wrap {
  letter-spacing: -0.4em;
  border-right: 1px solid rgba(255, 255, 255, 0.2);
}

.g-footer .g-nav-item {
  letter-spacing: 0;
  width: calc(100% / 9.001);
  display: inline-block;
}

.g-footer .g-nav-item .e-link {
  color: #ddd;
  font-size: 1.3rem;
  text-align: center;
  text-decoration: none;
  padding: 15px 0;
  display: block;
  background: rgba(0, 0, 0, 0.5);
}

.g-footer-useful {
  display: table;
}

.g-footer-useful:after {
  content: "";
  display: block;
  clear: both;
}

.g-footer-useful-title {
  width: 20%;
  padding: 20px 0 0 20px;
  border: 2px solid #b5a27c;
  display: table-cell;
  position: relative;
}

.g-footer-useful-title:after {
  content: "Useful information";
  font-family: "Crimson Text", serif;
  color: #000;
  font-size: 1.8rem;
  font-weight: 700;
  font-style: italic;
  text-align: right;
  letter-spacing: -0.025em;
  background: #b5a27c;
  width: calc(100% + 10px);
  margin: 0 -5px;
  padding: 5px 10px;
  display: inline-block;
  position: absolute;
  top: 80px;
  left: 0;
  -webkit-transform: skewY(-5deg);
  -ms-transform: skewY(-5deg);
  transform: skewY(-5deg);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.g-footer-useful-title .e-sub {
  color: #b5a27c;
  font-size: 1.3rem;
  margin: 0 0 5px;
  display: block;
}

.g-footer-useful-title .e-main {
  color: #b5a27c;
  font-size: 2.2rem;
  font-weight: 700;
  display: block;
}

.g-footer-useful-wrap {
  letter-spacing: -0.4em;
  padding: 0 0 0 10px;
  display: table-cell;
}

.g-footer-useful-item {
  letter-spacing: 0;
  width: calc(25% - 20px);
  margin: 0 0 0 20px;
  display: inline-block;
  border-bottom: 1px solid #3b3b3b;
}

.g-footer-useful-item:nth-child(-n + 4) {
  border-top: 1px solid #3b3b3b;
}

.g-footer-useful-item .e-link {
  color: #fff;
  font-size: 1.3rem;
  text-decoration: none;
  padding: 17px 0 17px 30px;
  display: block;
  position: relative;
}

.g-footer-useful-item .e-link:before {
  content: "";
  width: 4px;
  height: 4px;
  display: inline-block;
  border: 4px solid transparent;
  border-left: 4px solid #b4b4b4;
  position: absolute;
  top: 50%;
  left: 10px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.g-footer-info {
  margin: 30px -60px 0;
  background: #fff;
}

.g-footer-info:after {
  content: "";
  display: block;
  clear: both;
}

.g-footer-info-merchant-wrap {
  float: left;
  display: table;
}

.g-footer-info-merchant-item {
  min-width: 247px;
  text-align: center;
  vertical-align: middle;
  display: table-cell;
  border-right: 1px solid #ddd;
}

.g-footer-info-merchant-item .e-link {
  text-decoration: none;
  min-height: 100px;
  padding: 20px 25px 0;
  display: block;
}

.g-footer-info-merchant-item .e-caption {
  font-size: 1rem;
}

.g-footer-info-merchant-item:nth-child(2) .e-caption {
  margin: 0 0 13px;
}

.g-footer-info-merchant-item.is-hankyu-link .e-link {
  font-size: 1.4rem;
  font-weight: 700;
  text-decoration: underline;
  padding-top: 45px;
}

.no-touch .g-footer-info-merchant-item.is-hankyu-link .e-link:hover {
  text-decoration: none;
}

.g-footer-info-tel-title {
  font-size: 1.2rem;
  letter-spacing: 0.075em;
  margin: 0 0 5px;
}

.g-footer-info-tel-time {
  font-size: 1.1rem;
  line-height: 1.35;
  padding: 3px 0 0;
  display: inline-block;
}

.g-footer-info-tel .e-desc {
  font-size: 1rem;
  position: absolute;
  bottom: -16px;
  left: 30px;
}

.g-footer-pagetop {
  text-align: center;
  width: 100px;
  position: fixed;
  bottom: 50px;
  right: 0;
  z-index: 50;
  opacity: 0.8;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

.fp-viewing-contents-keyvisual .g-footer-pagetop,
.fp-viewing-l-kv .g-footer-pagetop,
.is-footer-open .g-footer-pagetop {
  opacity: 0;
}

/*
.g-footer-pagetop:before {
	content: 'PAGETOP';
	color: #000;
	font-size: 1rem;
	text-shadow: 0 0 5px #fff,
	0 0 10px #fff,
	0 0 15px #fff;
	display: block;
}
*/

.g-footer-pagetop .e-link {
  display: block;
  margin-bottom: 15px;
}

.g-footer {
  /*	color: #333;
	width: 100%;
	min-width: 1400px;
	display: block;
	background: #fff;*/
  /* z-index: 3500; */
}

.g-footer a {
  color: #333;
}

.g-footer_container {
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  width: 100%;
  border-bottom: none;
  padding: 20px 0px 20px 0;
}

.g-footer_container.is-menu {
  padding: 0;
}

.g-footer_container.is-recommend {
}

.g-footer_recommend {
  letter-spacing: -0.5rem;
  margin: 0 -10px 0 0;
  width: 60%;
  float: right;
  overflow: hidden;
  text-align: right;
}

.g-footer_recommend li {
  display: inline-block;
  width: 33.3%;
  letter-spacing: 0.8px;
  padding: 0 10px 0 0;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}

.g-footer_recommend li a {
  text-decoration: none;
  color: #fff;
}

.g-footer_recommend li:hover {
  opacity: 0.8;
}

.g-footer_recommend_item {
  font-size: 1.7rem;
  position: relative;
  padding: 20px;
  text-align: left;
}

.g-footer_recommend_item:before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 12px;
  background-image: url(../../img/common/arrow_W.png);
  background-size: contain;
  vertical-align: middle;
  position: absolute;
  background-repeat: no-repeat;
  right: 10.5%;
  top: 40%;
}

.g-footer_recommend_item:after {
  content: "";
  border: solid 1px #fff;
  position: absolute;
  top: 2px;
  left: 2px;
  width: calc(100% - 6px);
  height: calc(100% - 6px);
}

.g-footer_recommend li:nth-child(2) {
}

.g-footer_recommend__note {
  font-size: 1rem;
  letter-spacing: 0;
  line-height: 1.35;
  text-align: center;
  margin: 0.75em 0 0;
  display: block;
}

.f-footer_logo {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.f-footer_logo img {
  width: 20%;
}

.f-footer_logo p {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  padding: 10px 0px 0px 10px;
  font-size: 1.8rem;
  color: #b59a5b;
  font-weight: bold;
  letter-spacing: -0.1rem;
}

.g-footer_inner {
  max-width: 1080px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  width: 100%;
}

.g-footer_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 50%;
}

.g-footer_list li {
  width: 50%;
  padding-bottom: 25px;
}

.g-footer_list li a {
  text-decoration: none;
  position: relative;
  padding-left: 15px;
}

.g-footer_list li a:after {
  content: "";
  position: absolute;
  top: 45%;
  left: 0;
  width: 6px;
  height: 6px;
  border-top: 1px solid #868686;
  border-right: 1px solid #868686;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* ------------------------------------------------------------------------------------------------
 * hankyu Navigation - footer
 * ------------------------------------------------------------------------------------------------ */

.g-hankyu-nav {
  width: 100%;
  /*	min-height: 120px;*/
  /*	padding: 0 120px 0 40px;*/
  background: #fff;
  position: relative;
  z-index: 10;
}

.g-hankyu-nav-wrap {
  padding: 20px 0;
  /*float: left;*/
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 auto;
}

.g-hankyu-nav-item {
  margin: 0 35px;
  padding: 5px 10px 0 10px;
  display: inline-block;
  position: relative;
  /*border-right: 1px solid #444b56;*/
}

/*.g-hankyu-nav-item:after {
	content: '';
	width: 6px;
	height: 6px;
	border-top: solid 1px #ddd;
	border-right: solid 1px #ddd;
	position: absolute;
	left: -5px;
	top: 6px;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}*/

.g-hankyu-nav-item:last-child {
  border-right: none;
}

.g-hankyu-nav-item .e-link {
  color: #cbcbcb;
  font-size: 1.2rem;
  letter-spacing: 0.15em;
  text-decoration: none;
}

.g-hankyu-nav-copyright {
  color: #333333;
  float: none;
  font-size: 1.1rem;
  /* letter-spacing: .2em; */
  padding: 20px 0;
  border-top: 1px solid #ccc;
  /*	background: rgba(0, 0, 0, .3);*/
  display: block;
  width: 100%;
  text-align: center;
}

.g-hankyu-nav h1 {
  color: #fff;
  text-align: center;
  font-size: 1rem;
  padding: 20px 0 20px 0;
  border-bottom: 1px solid #333;
  line-height: 1.4;
}

.g-map,
.g-location-map {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  z-index: 4100;
}

.g-map {
  width: 100%;
  height: 100%;
  display: none;
  overflow-y: scroll;
}

.g-map-inner {
  text-align: center;
  padding: 60px 0;
}

.g-map-inner .e-img {
  width: 50%;
}

.g-map-inner .e-button {
  padding: 60px 0 0;
  display: block;
}

.g-map-inner .e-button input {
  font-size: 2rem;
  font-weight: 700;
  padding: 10px 40px;
  border-radius: 10px;
  border: 2px solid #999;
  cursor: pointer;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}

.g-map-inner .e-button input:hover {
  color: #fff;
  background: #999;
}

.is-map-open {
  overflow: hidden;
}

.g-map .e-close-button {
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 60px;
  right: 40px;
}

.g-map .e-close-button:after {
  content: "";
  width: 40px;
  height: 3px;
  background: #000;
  display: inline-block;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 0;
  right: 0;
}

.g-map .e-close-button:before {
  content: "";
  width: 40px;
  height: 3px;
  background: #000;
  display: inline-block;
  -webkit-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 0;
  right: 0;
}

.l-cover {
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  left: 0;
  background: rgba(255, 255, 255, 0.95);
  z-index: 4000;
  display: none;
  cursor: pointer;
}

/* ------------------------------------------------------------------------------------------------
 * Content Layout
 * ------------------------------------------------------------------------------------------------ */

.c-content-wrap {
  width: 960px;
  margin: 0 auto;
  padding: 40px 0 0;
}

.c-content-wrap:after {
  content: "";
  display: block;
  clear: both;
}

.c-main_section {
  width: 700px;
  float: left;
}

.c-side-section {
  width: 216px;
  padding-bottom: 40px;
  float: right;
}

/* ------------------------------------------------------------------------------------------------
 * Content Title
 * ------------------------------------------------------------------------------------------------ */

.g-content-title {
  padding: 0 0 30px;
}

.g-content-title .e-title {
  color: #000;
  font-size: 3.4rem;
  text-align: center;
  padding: 50px 0 0;
}

/* ------------------------------------------------------------------------------------------------
 * Breadcrumb
 * ------------------------------------------------------------------------------------------------ */

.g-breadcrumb {
  width: 100%;
  position: absolute;
  z-index: 100;
}

.g-breadcrumb .u-inner {
  padding: 20px 0 0;
}

.g-breadcrumb .e-item {
  padding: 0 25px 0 0;
  display: inline-block;
  position: relative;
}

.g-breadcrumb .e-item:after {
  content: "";
  width: 4px;
  height: 7px;
  display: inline-block;
  /*
	background: url(/_assets/img/common/breadcrumb-arrow.png) no-repeat center / 100% auto;
*/
  position: absolute;
  top: 3px;
  right: 8px;
}

.g-breadcrumb .e-item:last-child:after {
  display: none;
}

.g-breadcrumb .e-link {
  color: #ddd;
}

.g-breadcrumb .e-item:last-child .e-link {
  color: #fff;
}

.no-touch .g-breadcrumb .e-link:hover {
}

/* ------------------------------------------------------------------------------------------------
 * Local page
 * ------------------------------------------------------------------------------------------------ */
.l-headline {
  min-height: 400px;
}

.l-content-title {
  position: absolute;
  top: 30px;
  left: 30px;
}

.l-content-title .e-sub {
  font-size: 2.8rem;
  font-weight: 200;
  letter-spacing: -0.025em;
  position: relative;
}

.l-content-title .e-sub:after {
  content: "";
  width: 2px;
  height: 130px;
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
  top: -15px;
  right: -20px;
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg);
}

@media all and (-ms-high-contrast: none) {
  .l-content-title .e-sub:after {
    top: -50px;
  }
}

.l-content-title .e-main {
  font-size: 3rem;
  font-weight: 300;
  letter-spacing: 0;
  padding: 50px 0 0 30px;
  display: inline-block;
}

.l-content-catch {
  font-size: 4rem;
  font-weight: 700;
  text-align: center;
  margin: 0 0 50px;
  padding: 100px 0 0;
}

.is-color-white .e-sub,
.is-color-white .e-main,
.is-color-white .l-content-catch {
  color: #fff;
}

.is-color-white .l-content-title .e-sub:after {
  background: rgba(255, 255, 255, 0.5);
}

/* ------------------------------------------------------------------------------------------------
* ADD
* ------------------------------------------------------------------------------------------------ */

.section-title {
  text-align: center;
  border: 3px double #333;
  padding: 15px 0;
  color: #333;
  background-image: url(../../img/common/corner_rt.png),
    url(../../img/common/corner_lt.png), url(../../img/common/corner_rb.png),
    url(../../img/common/corner_lb.png);
  background-position: right 2px top 2px, left 2px top 2px, right 2px bottom 2px,
    left 2px bottom 2px;
  background-repeat: no-repeat, no-repeat, no-repeat, no-repeat;
  margin: 0 0px 40px 0;
  line-height: 1.4;
  position: relative;
}

.section-title_eng {
  font-size: 3rem;
  /*font-weight: bold;*/
  letter-spacing: 0.15em;
  padding-bottom: 3px;
}

.section-title_jp {
  font-size: 1rem;
  letter-spacing: 0.5em;
}

.section-title.is-white {
  background-image: url(../../img/common/corner_rt_w.png),
    url(../../img/common/corner_lt_w.png), url(../../img/common/corner_rb_w.png),
    url(../../img/common/corner_lb_w.png);
}

.u-sp-zoom {
  color: rgba(0, 0, 0, 0.5);
  font-size: 1rem;
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  width: 100%;
  margin: 15px 0 0;
  padding: 7px 10px;
  display: block;
  background: rgba(100, 100, 100, 0.2);
  border-radius: 50px;
}

.l-subtitle .section-title {
}

.l-subtitle {
  width: 100%;
  padding: 65px 0 0;
  background: -webkit-gradient(
    linear,
    left top,
    right top,
    from(#091614),
    color-stop(50%, #142d2a),
    to(#091614)
  );
  background: linear-gradient(to right, #091614 0%, #142d2a 50%, #091614 100%);
}

.l-subtitle .u-inner {
  background: transparent;
  padding: 40px 40px;
  margin: 0 auto;
}

.l-subtitle .section-title {
  margin: 0 auto;
  border-color: #979797;
  color: #cdcdcd;
}

/* Add ログイン関連のCSS */
.l-loginEnter {
  color: #fff;
  text-shadow: 0 1px 4px #000;
  margin: 60px -40px -40px;
  padding: 40px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: url("../../../login/_assets/img/bg-01.jpg") no-repeat left 50% top
    10% / 100% auto;
}

.l-loginEnter &gt; div:nth-child(1) {
  padding: 0 30px 0 0;
}

.l-loginEnter em {
  font-size: 1.8rem;
  letter-spacing: 0.1em;
  display: block;
}

.l-loginEnter small {
  font-size: 1.1rem;
  line-height: 1.5;
  text-indent: -1em;
  margin: 10px 0 0;
  padding: 0 0 0 1em;
  display: block;
  opacity: 0.75;
}

.l-loginEnter__button {
  position: relative;
}

.l-loginEnter__button a {
  font-family: "Crimson Text", "Noto Serif JP", sans-serif;
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.5;
  text-decoration: none;
  letter-spacing: 0.15em;
  padding: 1.25em 2.5em 1.25em 2em;
  -webkit-box-shadow: 0 0 10px 0 #fff, 0 0 40px 0 #fff, 0 0 50px 0 #fff;
  box-shadow: 0 0 10px 0 #fff, 0 0 40px 0 #fff, 0 0 50px 0 #fff;
  display: block;
  background: #6b0f12 url("../../../login/_assets/img/arrow-01.png") no-repeat
    right 16px top 50% / 7px auto;
  -webkit-transition: 0.3s cubic-bezier(0.75, 0, 0.35, 1);
  transition: 0.3s cubic-bezier(0.75, 0, 0.35, 1);
}

.l-loginEnter__button a:hover {
  background-color: #000;
}

.l-loginEnter__button small {
  text-shadow: none;
  color: #000;
  letter-spacing: 0;
  white-space: nowrap;
  text-align: center;
  width: 100%;
  display: block;
  position: absolute;
  bottom: -10px;
  left: 50%;
  -webkit-transform: translate(-50%, 100%);
  -ms-transform: translate(-50%, 100%);
  transform: translate(-50%, 100%);
}

.g-container {
  padding-top: 80px;
  background: #fff;
}

.c-login .g-container {
  padding-top: 80px;
  background: #f6f6f6;
}

/*note*/
.u-note ul li {
  font-size: 1.1rem;
  line-height: 1.25;
  text-indent: -1em;
  margin: 0.25em 0 0;
  padding: 0 0 0 1em;
}

.g-main {
  padding: 60px 0;
  background: #fff;
}

.c-title {
  font-size: 20px;
  text-align: center;
  padding-bottom: 40px;
  font-weight: 600;
}

.c-title_min {
  font-size: 20px;
  text-align: center;
  padding-bottom: 40px;
}

.c-subTitle_min {
  font-size: 1.6rem;
  padding-bottom: 20px;
  font-weight: 600;
}

/* ----------------------------------------------------------------------
* GLOBAL - login
* ---------------------------------------------------------------------- */
.c-login {
}

.c-login .g-main {
  background: transparent;
}

.c-login_container {
  max-width: 476px;
  margin: 0 auto;
  background-color: #ffff;
  border-radius: 12px;
  -webkit-box-shadow: 0px 1px 6px 6px rgba(0, 0, 0, 0.016);
  box-shadow: 0px 1px 6px 6px rgba(0, 0, 0, 0.016);
  padding: 40px;
}

.c-login .c-form-group:last-child {
  border-top: 1px solid #cccccc;
  padding-top: 40px;
  margin-top: 40px;
}

.c-form-group {
  margin-bottom: 35px;
  text-align: center;
}

.c-form-group:last-child {
  margin-bottom: 0;
}

.c-form-group input {
  display: block;
  width: 100%;
  margin-top: 10px;
  padding-right: 15px;
  padding-left: 15px;
  font-size: 16px;
  line-height: 40px;
  color: #333;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 3px;
}

::-webkit-input-placeholder {
  color: #ccc;
}

.c-form-group label {
  display: block;
  text-align: left;
  margin-bottom: 12px;
}

.c-form-group input :-ms-input-placeholder {
  color: #ccc;
}

.c-form-group input ::-webkit-input-placeholder {
  color: #ccc;
}

.c-form-group input ::placeholder {
  color: #ccc;
}

.c-form_button {
  font-size: 1.6rem;
  position: relative;
  width: 100%;
  margin: 10px auto;
  padding: 15px;
  outline: none;
  border: 1px solid #d60a13;
  border-radius: 50px;
  text-transform: uppercase;
  background: #d60a13;
  color: rgba(255, 255, 255, 1);
  font-weight: 800;
  cursor: pointer;
}

.c-form_button_line {
  font-size: 1.6rem;
  position: relative;
  width: 100%;
  padding: 15px;
  outline: none;
  border: none;
  border-radius: 50px;
  text-transform: uppercase;
  background: #fff;
  color: #d60a13;
  border: 1px solid #d60a13;
  font-weight: 800;
  cursor: pointer;
  margin: 10px auto;
}

.c-btn_area.c-btn__2.c-btn__min .c-button_block {
  width: calc(50% - 220px);
  padding-right: 20px;
}

.c-form_button_line__min {
  font-size: 1.6rem;
  position: relative;
  width: 100%;
  padding: 6px;
  outline: none;
  border: none;
  border-radius: 3px;
  text-transform: uppercase;
  background: #fff;
  color: #d60a13;
  border: 1px solid #d60a13;
  font-weight: normal;
  cursor: pointer;
  margin: 10px auto;
}

.c-form-group a,
.c-form-group p {
  font-size: 1.4rem;
}

.c-login_button {
  margin-top: 10px;
  padding: 10px 12.5% 0;
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  border: none !important;
}
.c-login_button.regist {
  border-top: solid 1px #ccc !important;
}

.c-menu_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -32px;
  padding: 0 80px 30px 80px;
  position: relative;
}

.c-menu_list:after {
  content: "";
  position: absolute;
  background: #ccc;
  height: 1px;
  width: calc(100% - 32px);
  left: 0;
  bottom: 0;
}

.c-menu_item {
  width: calc(100% / 3);
  padding-right: 32px;
  padding-bottom: 32px;
}

.c-menu_tumb {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  border: 2px solid #cccccc;
  border-radius: 5px;
  height: 107px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -ms-flex-line-pack: end;
  align-content: flex-end;
  text-decoration: none;
  font-size: 1.6rem;
  position: relative;
  padding-bottom: 20px;
  position: relative;
  background-color: #fff;
}

.c-menu_tumb.c-nemu-01 {
  background-image: url("../../img/common/menu_01.svg");
  background-position: left 50% top 25%;
  background-repeat: no-repeat;
  background-size: 22%;
}

.c-menu_tumb.c-nemu-02 {
  background-image: url("../../img/common/menu_02.svg");
  background-position: left 50% top 25%;
  background-repeat: no-repeat;
  background-size: 22%;
}

.c-menu_tumb.c-nemu-03 {
  background-image: url("../../img/common/menu_03.svg");
  background-position: left 50% top 20%;
  background-repeat: no-repeat;
  background-size: 16%;
}

.c-menu_tumb.c-nemu-04 {
  background-image: url("../../img/common/menu_04.svg");
  background-position: left 50% top 20%;
  background-repeat: no-repeat;
  background-size: 17%;
}

.c-menu_tumb.c-nemu-05 {
  background-image: url("../../img/common/menu_05.svg");
  background-position: left 50% top 20%;
  background-repeat: no-repeat;
  background-size: 15%;
}

.c-menu_tumb.c-nemu-06 {
  background-image: url("../../img/common/menu_06.svg");
  background-position: left 50% top 23%;
  background-repeat: no-repeat;
  background-size: 17%;
}

.c-menu_tumb.c-nemu-07 {
  background-image: url("../../img/common/menu_07.svg");
  background-position: left 50% top 25%;
  background-repeat: no-repeat;
  background-size: 17%;
}

.c-menu_tumb.c-nemu-08 {
  background-image: url("../../img/common/menu_08.svg");
  background-position: left 50% top 25%;
  background-repeat: no-repeat;
  background-size: 20%;
}

.c-menu_name {
  font-size: 1.6rem;
}

.c-copy {
  background: crimson;
  display: block;
  padding: 30px !important;
  font-size: 1.6rem;
  padding: 15px;
  text-align: center;
}
.c-copy a {
  text-decoration: none;
  color: white;
}

.c-news_list {
  background-image: linear-gradient(to right, #ccc 3px, transparent 3px);
  background-size: 10px 3px;
  background-repeat: repeat-x;
  background-position: top;
  margin: 40px auto;
  position: relative;
}

.c-news_item {
  background-image: linear-gradient(to right, #ccc 3px, transparent 3px);
  background-size: 10px 3px;
  background-repeat: repeat-x;
  background-position: bottom;
  padding: 20px 0;
}

.c-news_day {
  font-size: 1.4rem;
  color: #acacac;
  display: inline-block;
  padding: 2px 0px;
}

.select_box {
  position: relative;
  text-align: left;
}

.select_box::after {
  content: "";
  position: absolute;
  top: 35%;
  right: 12px;
  width: 8px;
  height: 8px;
  border-right: 1px solid #333;
  border-bottom: 1px solid #333;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

.select_box select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 10px 15px;
  border: 1px solid #ccc;
  border-radius: 2px;
  font-size: 1.6rem;
}

.c-news_label {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  color: #967400;
  font-size: 1.2rem;
  border: 1px solid;
  border-radius: 20px;
  padding: 2px 10px;
  margin-left: 15px;
}

.c-link__qestion {
  position: relative;
  padding-left: 20px;
  display: inline-block;
  font-size: 1.6rem;
}

.c-link__qestion:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 17px;
  height: 17px;
  background-image: url(../../img/common/icon_q.svg);
  background-position: left 0% top 0;
  background-repeat: no-repeat;
  background-size: contain;
}

.c-news_text {
  font-size: 1.4rem;
  line-height: 1.4;
  padding-top: 10px;
}

.c-sub_area {
  padding-top: 60px;
}

.c-link__contact {
  text-decoration: none;
  border: 2px solid #cccccc;
  display: inline-block;
  padding: 20px;
  min-width: 312px;
  text-align: center;
  border-radius: 4px;
  position: relative;
  font-size: 1.6rem;
}

.c-contact_block {
  padding-top: 40px;
}

.c-link__contact span {
  position: relative;
  display: inline-block;
  padding-left: 5px;
}

.c-link__contact span:before {
  content: "";
  position: absolute;
  top: -30%;
  left: -20%;
  width: 40px;
  height: 22px;
  background-image: url(../../img/common/icon_mail.svg);
  background-position: left 0% top 0;
  background-repeat: no-repeat;
  background-size: contain;
}

.c-banner_area {
  margin-bottom: 100px;
  padding: 0 80px;
}

.c-banner_items {
  width: 100%;
  height: 100%;
}

.c-banner_items img {
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.c-section_block {
  margin-bottom: 60px;
}

.c-section_block p {
  line-height: 1.4;
}

.c-banner_items .slick-dots {
  left: 50%;
  bottom: -35px;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}

.c-banner_items .slick-dots li {
  width: 15px;
}

.slick-dots li button:before {
  color: #f4f4f4 !important;
  opacity: 1 !important;
  font-size: 12px !important;
  display: none;
}

.slick-dots li.slick-active button:before {
  color: #bcbcbc !important;
}

.spinner-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  user-select: none;
  -ms-user-select: none;
  -moz-user-select: none;
  -webkit-user-select: none;
  -webkit-touch-callout: none;
  margin-bottom: 40px;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

/* ボタンに挟まれた真ん中の数値 */

.spinner {
  color: #333333;
  font-size: 16px;
  width: 42px;
  padding: 0;
  text-align: center;
  border: 1px solid #b9b9b9;
  border-left: 0;
  border-right: 0;
  background: none;
  outline: none;
  pointer-events: none;
  margin: 0;
}

.spinner::-webkit-inner-spin-button,
.spinner::-webkit-outer-spin-button {
  -webkit-appearance: none;
}

/* ベースになる円 */

.spinner-sub,
.spinner-add {
  position: relative;
  background: #f6f6f6;
  display: block;
  width: 26px;
  height: 26px;
  text-align: center;
  cursor: pointer;
  line-height: 22px;
  border: 1px solid #cccccc;
  color: #0089ff;
}
.spinner-sub {
  border-radius: 2px 0 0 2px;
}
.spinner-add {
  border-radius: 0 2px 2px 0;
}

/* + -はテキスト */

.spinner-p {
  display: block;
  position: absolute;
  top: 0%;
  left: 15%;
  font-size: 17px;
  font-weight: 600;
  color: #0089ff;
}

.c-buy_cart__btn {
  display: inline-block;
  color: #d60a13;
  text-decoration: none;
  font-size: 1.6rem;
  border: 1px solid #d60a13;
  padding: 7px 7px 7px 24px;
  text-align: center;
  width: 168px;
  border-radius: 2px;
  position: relative;
}

.c-buy_cart__btn span {
  position: relative;
  display: inline-block;
  padding-left: 5px;
}

.c-buy_cart__btn span:before {
  content: "";
  position: absolute;
  top: 0;
  left: -15%;
  width: 19px;
  height: 16px;
  background-image: url(../../img/common/icon_cart_red.svg);
  background-position: left 0% top 0;
  background-repeat: no-repeat;
  background-size: contain;
}

.c-pick__btn {
  display: inline-block;
  color: #d60a13;
  text-decoration: none;
  font-size: 1.6rem;
  border: 1px solid #d60a13;
  padding: 7px;
  text-align: center;
  width: 100px;
  border-radius: 2px;
  position: relative;
}

.c-buy_list {
  border-top: 1px solid #cccccc;
  margin-bottom: 20%;
}

.c-buy_items {
  border-bottom: 1px solid #cccccc;
}

.c-buy_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 30px 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.c-buy_image {
  width: 160px;
  padding-right: 20px;
  position: relative;
}

.c-buy_image.c-new {
  position: relative;
  padding-top: 25px;
}

.c-buy_image.c-new:after {
  content: "オススメ";
  position: absolute;
  color: #fff;
  background: #d60a13;
  border-radius: 20px;
  padding: 3px;
  font-size: 1.2rem;
  text-align: center;
  width: 64px;
  top: 0;
  left: 15%;
}

.c-text-color__red {
  color: #d60a13 !important;
}

.c-text-color__blue {
  color: #428bca;
}

.c-buy_image figure {
  width: calc(100% - 20px);
}

.c-buy_datail {
  width: calc(100% - 160px);
  padding-right: 20px;
  line-height: 1.5;
}

.c-buy_datail h4 {
  padding-bottom: 15px;
  font-size: 1.6rem;
  font-weight: bold;
}

.c-buy_datail p {
  padding-bottom: 10px;
  font-size: 1.4rem;
}

.c-buy_datail h5 {
  padding-top: 10px;
  font-size: 1.6rem;
}

.c-buy_datail .c-buy_datail_option {
  font-size: 1.4rem;
  font-weight: bold;
  padding-top: 20px;
  padding-bottom: 10px;
}

.c-buy_datail .c-buy_datail_option__link {
  font-size: 1.4rem;
}

.c-buy_datail .c-buy_datail_option__note {
  font-size: 1.2rem;
}

.c-buy_datail_option__link {
  display: inline-block;
}

.c-buy_datail_option__link span {
  display: inline-block;
  color: #428bca;
}

.c-tori_datail {
  display: flex; /* 横並びに配置 */
  justify-content: space-between; /* 子要素を左右に配置 */
  align-items: center; /* 縦方向の中央揃え */
}

.c-tori_datail h4 {
  margin: 0; /* 不要な余白を削除 */
  flex-shrink: 0; /* 必要に応じて幅縮小を防止 */
}

.c-tori_datail .del_price {
  margin-left: auto; /* 親要素の右端に寄せる */
  display: flex; /* 削除リンクと価格を横並びに */
  align-items: center; /* 縦方向の中央揃え */
  gap: 8px; /* 削除リンクと価格の間隔 */
}
.c-tori_block {
  padding: 30px;
}
.c-tori_block h4 {
  font-weight: bold;
}
.c-tori_block .price {
  font-weight: bold;
  padding-left: 20px;
}

.c-cart input {
  -webkit-appearance: checkbox;
}

.c-list_note {
  margin-bottom: 60px;
  line-height: 1.8;
}

.c-list_note li {
  padding-bottom: 30px;
  font-size: 1.6rem;
  text-align: left;
}

.c-list_note li:last-child {
  padding-bottom: 0;
}

.c-list_note__min {
  line-height: 1.8;
  display: block;
  width: 100%;
  padding: 10px 0;
}

.c-list_note__min li {
  padding-bottom: 20px;
  font-size: 1.4rem;
}

.c-list_note__min li:last-child {
  padding-bottom: 0;
}

.c-list_cart .c-buy_datail {
  width: calc(100% - 340px);
}

.c-list_cart .c-buy_list {
  margin-bottom: 20px;
}

.c-list_cart .c-buy_list {
}

.c-title__min {
  background: #ebebeb;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 15px 10px;
  font-size: 1.6rem;
  margin-bottom: 30px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

.c-buy_datail dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.4rem;
  padding-bottom: 10px;
}

.c-buy_datail dl:last-child {
  padding-bottom: 0;
}

.c-list_price {
  width: calc(100% - 160px);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-left: auto;
  margin-right: 0;
}

.c-radioItem {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-column-gap: 10px;
  column-gap: 10px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  line-height: 1.8;
  cursor: pointer;
}

.c-radioItem:not(:last-of-type) {
  margin-bottom: 40px;
}

.c-radioButton {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  width: 16px;
  height: 16px;
  border: 1px solid #333333;
  border-radius: 3px;
  cursor: pointer;
}

.c-radioButton:checked::after {
  content: "";
  position: absolute;
  inset: 0;
  width: 8px;
  height: 8px;
  margin: auto;
  border-radius: 3px;
  background-color: #333333;
}

.c-select {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.c-select::after {
  content: "";
  position: absolute;
  right: 15px;
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 0.5em;
  height: 0.5em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: translateY(-25%) rotate(135deg);
  -ms-transform: translateY(-25%) rotate(135deg);
  transform: translateY(-25%) rotate(135deg);
}

.c-select select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  min-width: 230px;
  height: 2.8em;
  padding: 0.4em calc(0.8em + 30px) 0.4em 0.8em;
  border: 1px solid #d0d0d0;
  border-radius: 3px;
  background-color: #fff;
  color: #333333;
  font-size: 1em;
  cursor: pointer;
}

.c-select__min {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.c-select__min::after {
  content: "";
  position: absolute;
  right: 15px;
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  width: 0.5em;
  height: 0.5em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: translateY(-25%) rotate(135deg);
  -ms-transform: translateY(-25%) rotate(135deg);
  transform: translateY(-25%) rotate(135deg);
}

.c-select__min select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  min-width: 130px;
  height: 2.2em;
  padding: 0.2em calc(0.8em + 30px) 0.4em 0.8em;
  border: 1px solid #d0d0d0;
  border-radius: 3px;
  background-color: #fff;
  color: #333333;
  font-size: 1em;
  cursor: pointer;
  margin-left: 1rem;
}

.c-select_box__01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-bottom: 40px;
}

.c-caption_list {
  font-size: 1.4rem;
  color: #868686;
  line-height: 1.8;
  margin-top: 20px;
}

.c-caption_list li {
  padding-bottom: 10px;
}

.c-btn_area {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-right: auto;
  margin-left: auto;
  -ms-flex-line-pack: center;
  align-content: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.c-btn_area.c-btn__2 {
  margin-right: -30px;
}

.c-btn_area.c-btn__2 .c-button_block {
  width: calc(50% - 100px);
  padding-right: 20px;
}

.c-link_block {
  text-align: center;
}

.c-link_text {
  display: inline-block;
  text-decoration: none;
  font-size: 1.6rem;
  color: #428bca;
}

.c-link_pick {
  display: inline-block;
  text-decoration: none;
  font-size: 1.2rem;
  color: #428bca;
  margin-left: 10px;
  vertical-align: baseline;
}

.c-select__btn {
  display: inline-block;
  color: #d60a13;
  text-decoration: none;
  font-size: 1.6rem;
  border: 1px solid #d60a13;
  padding: 7px;
  text-align: center;
  width: 60px;
  border-radius: 2px;
  position: relative;
}

.c-link_confirm {
  display: inline-block;
  text-decoration: none;
  font-size: 1.2rem;
  color: #428bca;
  margin-right: 10px;
  vertical-align: baseline;
}

.c-buy_button__box {
  margin-top: auto;
  margin-bottom: 0;
  width: 120px;
  text-align: right;
}

.c-buy_button__box.kohin_button {
  margin-top: auto;
  margin-bottom: 0;
  width: 300px;
  text-align: right;
  display: flex;
  align-items: center;
  justify-content: flex-end;
}

.c-buy_list .c-list__box_1 .c-buy_block {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.c-buy_list .c-list__box_1 .c-buy_button__box {
  margin-top: auto;
  margin-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: end;
}

.c-block_toggle {
}

.c-block_toggle .c-buy_block {
  padding-left: 20px;
}

.c-title__toggle {
  position: relative;
  font-weight: normal !important;
}

.c-title__toggle:before {
  content: "";
  position: absolute;
  display: inline-block;
  vertical-align: middle;
  color: #868686;
  line-height: 1;
  width: 12px;
  height: 12px;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transform: translateY(0%) rotate(180deg);
  -ms-transform: translateY(0%) rotate(180deg);
  transform: translateY(0%) rotate(180deg);
  left: -20px;
}

.c-title_num_book {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  position: relative;
  margin-left: 60px;
  font-weight: 700;
}

.c-title_num_book:before {
  content: "";
  position: absolute;
  top: 0;
  left: -20px;
  width: 17px;
  height: 16px;
  background-image: url(../../img/common/icon_book.svg);
  background-position: left 0% top 0;
  background-repeat: no-repeat;
  background-size: contain;
}

.c-list__pick_up {
  border-top: 1px solid #cccccc;
  width: 100%;
}

.c-list__pick_up th {
  background-color: #f6f6f6;
  vertical-align: baseline;
  padding: 25px 12px;
  font-weight: 700;
  width: 160px;
  border-bottom: 1px solid #cccccc;
}

.c-list__pick_up .c-buy_block {
  padding: 25px 0 25px 25px;
  border-bottom: 1px solid #ccc;
}

.c-list__pick_up .c-buy_block:last-child {
}

.c-list__pick_up .c-buy_datail dt {
  width: 60px;
}

.c-list__pick_up .c-buy_datail h4 {
  font-weight: normal;
}

.c-block_price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 25px 0 25px 10px;
  border-bottom: 1px solid #cccccc;
}

.c-block_price p {
  font-weight: 700 !important;
}

.c-block_price_list {
  border-top: 1px solid #cccccc;
  border-bottom: 1px solid #cccccc;
  padding: 25px 0;
}

.c-block_price_list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 6px 10px;
}

.c-block_price_list__min {
  border-top: none;
  border-bottom: none;
  padding: 25px 0;
}

.c-block_price_list__min li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 6px 0;
}

.c-block_price_list li:last-child {
  padding-top: 10px;
}

.c-block_price_list li:last-child p {
  font-weight: 700 !important;
}

.c-btn_edit {
  text-decoration: none;
  font-size: 1.4rem;
  border: 1px solid #cccccc;
  background-color: #fff;
  padding: 6px 12px;
  border-radius: 3px;
}

.c-list_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px 0;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  border-bottom: 1px solid #ccc;
}

.c-list_block dt {
  width: 70px;
  padding-right: 10px;
  font-size: 1.6rem;
}

.c-list_block dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.4rem;
  padding-bottom: 10px;
}

.c-list_datail__01 dt {
  width: 100px !important;
}

.c-list_datail__min {
  padding-bottom: 15px;
}

.c-list_datail__price {
  padding: 0;
}

.c-list_datail__price dl {
  padding: 0;
  width: 100%;
}

.c-list_datail__price dt {
  padding: 20px 10px;
  width: 188px;
  background: #f6f6f6;
  font-weight: bold;
}

.c-list_datail__price dd {
  padding: 20px 10px;
  text-align: right;
  width: calc(100% - 188px);
  font-weight: bold;
}

input {
  color: #333333;
  font-size: 1.6rem;
}

input[type="text"] {
  width: 100%;
  margin: 0 0 8px 0;
  border: 1px solid #ccc;
  border-radius: 1px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

input[type="text"]:focus {
  border-color: #dddddd;
  outline: none;
}

input[type="radio"] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 16px;
  height: 16px;
  border: 1px solid #868686;
  border-radius: 50% !important;
  outline: none;
  cursor: pointer;
  margin-right: 10px;
  padding: 0;
}

input[type="radio"]:checked {
  background-color: #428bca;
  border-color: #868686;
}

label {
  font-size: 16px;
  margin-right: 20px;
}

button {
  background-color: #d60a13;
  color: white;
  padding: 15px 20px;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  width: 282px;
  display: block;
  margin: 0 auto;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  border: 1px solid #d60a13;
}

button:hover {
  background: #fff;
  color: #d60a13;
  border: 1px solid #d60a13;
}

button.c-button_type1 {
  background-color: #d60a13;
  color: white;
  padding: 15px 20px;
  border: none;
  border-radius: 50px;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
  width: 282px;
  display: block;
  margin: 0 auto;
  -webkit-transition: 0.5s;
  transition: 0.5s;
  border: 1px solid #d60a13;
}

button.c-button_type1:hover {
  background: #fff;
  color: #d60a13;
  border: 1px solid #d60a13;
}

button.c-button_type2 {
  background: #fff;
  color: #d60a13;
  border: 1px solid #d60a13;
}

button.c-button_type2:hover {
  background: #d60a13;
  color: #fff;
}

.c-form_min {
  max-width: 600px;
  padding: 30px 0;
}

.c-form {
  max-width: 800px;
  padding: 30px 0;
}

::-webkit-input-placeholder {
  color: #ccc;
}

:-ms-input-placeholder {
  color: #ccc;
}

::placeholder {
  color: #ccc;
}

.c-label_check {
  color: #868686;
  padding-bottom: 20px;
  text-align: left;
  font-size: 1.6rem;
}

.c-form-group .c-text_check {
  font-size: 1.6rem;
  text-align: left;
}

.c-form-group .c-label_check {
  font-size: 1.6rem;
  text-align: left;
}

.c-text_check {
  text-align: left;
  font-size: 1.6rem;
}

.c-button_block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  text-align: center;
  margin: 50px auto;
}

.c-button_block-2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 600px;
  margin: 50px auto;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.c-button_block-2 button {
  margin-bottom: 15px;
}

.c-form_title_item {
  text-align: left;
  font-weight: bold;
  margin-bottom: 20px;
}

.c-form-line2 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin-right: -20px;
}

.c-form-line2 .c-form-line2-mtem {
  width: calc(100% / 2);
  padding-right: 20px;
}

.c-form_name_label {
  color: #868686;
  margin-bottom: 12px;
}

.c-form_caption {
  font-size: 1.2rem;
  color: #868686;
  text-align: left;
}

.c-form_list {
  table-layout: fixed;
  width: 100%;
}

.c-form_list_item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  margin-bottom: 20px;
}

.c-form_list_item td {
  width: 100%;
}

.c-form-line2_small {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.c-form-line2_small .c-form-line2-mtem {
  margin-right: 20px;
}

.c-select_job,
.c-select_address {
  width: 200px;
}

.c-select_year {
  width: 160px;
}

.c-select_month,
.c-select_day {
  width: 100px;
}

.c-select_month,
.c-select_day {
  width: 100px;
}

.c-form_list_item h4 {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: left;
  margin-top: 10px;
}

.address_post_box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.address_post_box input {
  padding-right: 10px;
  width: 90px;
}

.address_post_box p {
  line-height: 3;
  padding: 0 5px;
  color: #868686;
}

.c-input_box {
  width: 600px;
}

.c-input_box_half {
  width: 400px;
}

input.c-input_box_half {
  width: 400px;
}

input[type="checkbox"] {
  position: relative;
  width: 18px;
  height: 18px;
  border: 1px solid #cccccc;
  vertical-align: -5px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  background-color: #fff;
}

input[type="checkbox"]:checked {
  background-color: #428bca;
  border: 1px solid #428bca;
}

input[type="checkbox"]:checked:before {
  position: absolute;
  top: 1px;
  left: 4px;
  -webkit-transform: rotate(50deg);
  -ms-transform: rotate(50deg);
  transform: rotate(50deg);
  width: 4px;
  height: 8px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  content: "";
}

.c-form_check {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-line-pack: center;
  align-content: center;
}

.c-form_check label {
  margin-left: 5px;
}

.c-form_check input {
  margin-bottom: none;
  margin-top: 0;
}

.c-form_agreement {
  height: 243px;
  overflow-y: scroll;
  border: 1px solid #cccccc;
  padding: 10px;
  text-align: left;
}

.c-form_confirm {
  text-align: left;
  font-size: 1.6rem;
}

.c-form_confirm p {
  text-align: left;
  font-size: 1.6rem;
}

.c-form_list.c-form_confirm th {
  color: #868686;
  width: 280px;
  padding-right: 20px;
}

.c-form_list.c-form_confirm td {
  color: #333333;
  width: auto;
}

.c-form_list.c-form_confirm .c-form_list_item {
  margin-bottom: 35px;
}

.c-form_pay {
}

.c-form_pay p {
  text-align: left;
  font-size: 1.6rem;
}

.c-form_pay .c-form_list .c-form_list_item {
  text-align: left;
}

.c-form_radio-1 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.c-form_radio-1 input[type="radio"] {
  margin-top: 0;
}

.c-link_01 {
  color: #428bca;
  font-size: 1.6rem;
}

.c-input_text_area {
  width: 100%;
  padding: 15px;
  text-align: left;
  line-height: 1.5;
  border: 1px solid #cccccc;
  min-height: 240px;
  font-size: 1.6rem;
}

.c-buy_list.c-form_confirm {
}

.c-buy_list.c-form_confirm .c-form_name_label {
  margin-bottom: 0;
}

.c-form_confirm .c-buy_image {
  width: 250px;
}

.c-form_check input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;

  border-radius: 50%;
  width: 16px;
  height: 16px;

  border: 1px solid #999;
  -webkit-transition: 0.2s all linear;
  transition: 0.2s all linear;
  margin-right: 5px;

  position: relative;
  top: 4px;
}

.c-form_check input:checked {
  border: 6px solid black;
}

.c-form_check button,
.c-form_check legend {
  color: white;
  background-color: black;
  padding: 5px 10px;
  border-radius: 0;
  border: 0;
  font-size: 14px;
}

.c-form_check button:hover,
.c-form_check button:focus {
  color: #999;
}

.c-form_check button:active {
  background-color: white;
  color: black;
  outline: 1px solid black;
}

.c-form_confirm .c-form_name_label {
  color: #868686;
  font-size: 1.6rem;
}

.c-list-type-1 {
  margin-top: 20px;
}

.c-list-type-1 li {
  position: relative;
  list-style: none;
  line-height: 1.5;
  margin-left: 10px;
  padding: 10px 0;
}

.c-list-type-1 li::before {
  content: "";
  display: block;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: #000;
  position: absolute;
  left: -10px;
  top: 20px;
}

.c-subtitle__min {
  font-weight: bold;
  text-align: left;
  font-size: 1.6rem;
  margin-bottom: 30px;
}

.c-error_text {
  font-size: 1.6rem;
  font-weight: bold;
  color: #d60a13;
}

/* 追加CSS */
.w100 {
  width: 100%;
}
.err {
  color: crimson;
}
.content {
  padding: 20px;
  min-height: 150vh; /* ページの高さを増やしてスクロールできるようにする例 */
}

.cart_count {
  position: fixed; /* 固定配置 */
  bottom: 20px; /* 下から20pxの位置 */
  left: 50%; /* 横方向の中央 */
  transform: translateX(-50%); /* 中央揃えの調整 */
  max-width: 800px; /* 最大幅を800pxに制限 */
  width: calc(100% - 40px); /* 横幅を画面幅から左右20pxを引いた値に設定 */
  background-color: #6f6f6f;
  color: #fff;
  text-align: center;
  padding: 10px 20px; /* 内側の余白 */
  border-radius: 5px; /* 角を丸くする */
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); /* 影をつける */
  z-index: 10; /* 他の要素の上に表示 */
  display: flex; /* フレックスボックスを有効化 */
  justify-content: center; /* 子要素を水平方向中央に配置 */
  align-items: center; /* 子要素を垂直方向中央に配置 */
  height: 60px;
  cursor: pointer;
}
.cart_count::after {
  content: "";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px; /* 画像の幅 */
  height: 16px; /* 画像の高さ */
  background-image: url("/_assets/img/common/icon_cart_arrow.svg"); /* 画像のURL */
  background-size: contain; /* 画像を要素に収める */
  background-repeat: no-repeat; /* 画像を繰り返さない 
}
.cart_count span.cart{
	display: inline-flex; /* 親要素をフレックスボックスに設定 */
  align-items: center; /* 縦方向の中央揃え */
}
.cart_count span.cart::before {
  content: "";
  display: inline-block;
  width: 20px; /* アイコンの幅 */
  height: 20px; /* アイコンの高さ */
  background-image: url("/_assets/img/common/icon_mod_cart.png"); /* アイコン画像のパス */
  background-size: contain; /* アイコン画像をサイズ調整 */
  background-repeat: no-repeat; /* 画像の繰り返しを防ぐ */
  margin-right: 8px; /* テキストとの間隔 */
  transform: translateY(6px);
}

.cart_count span.count {
  font-weight: bold; /* 数字を強調 */
  color: #fff; /* 数字の色を変更 */
  background-color: #d60a13;
  display: inline-block;
  margin-left: 10px;
  border-radius: 20px;
  padding: 5px 5px;
  min-width: 35px;
  height: 26px;
}

.cart_count span.hako_cart {
  display: inline-flex; /* 親要素をフレックスボックスに設定 */
  align-items: center; /* 縦方向の中央揃え */
}
.cart_count span.hako_cart::before {
  content: "";
  display: inline-block;
  width: 20px; /* アイコンの幅 */
  height: 20px; /* アイコンの高さ */
  background-image: url("/_assets/img/common/icon_mod_hako_cart.png"); /* アイコン画像のパス */
  background-size: contain; /* アイコン画像をサイズ調整 */
  background-repeat: no-repeat; /* 画像の繰り返しを防ぐ */
  margin-right: 8px; /* テキストとの間隔 */
  margin-top: 5px;
}

/* モーダル全体のスタイル */
.modal {
  display: none; /* 初期状態では非表示 */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 5000;
}

.modal .cart_title {
  position: relative;
  background-color: #6f6f6f;
  height: 60px;
  border-radius: 5px 5px 0 0;
  display: flex; /* フレックスボックスを有効化 */
  justify-content: center; /* 水平方向に中央揃え */
  align-items: center; /* 垂直方向に中央揃え */
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.modal .cart_title::before {
  content: "";
  display: inline-block;
  width: 20px; /* アイコンの幅 */
  height: 20px; /* アイコンの高さ */
  background-image: url("/_assets/img/common/icon_mod_cart.png"); /* アイコン画像のパス */
  background-size: contain; /* アイコン画像をサイズ調整 */
  background-repeat: no-repeat; /* 画像の繰り返しを防ぐ */
  margin-right: 8px; /* テキストとの間隔 */
  margin-top: 3px; /* 3px下に調整 */
}

.modal .hako_cart_title {
  position: relative;
  background-color: #6f6f6f;
  height: 60px;
  border-radius: 5px 5px 0 0;
  display: flex; /* フレックスボックスを有効化 */
  justify-content: center; /* 水平方向に中央揃え */
  align-items: center; /* 垂直方向に中央揃え */
  color: #fff;
  font-weight: bold;
  text-align: center;
}
.modal .hako_cart_title::before {
  content: "";
  display: inline-block;
  width: 20px; /* アイコンの幅 */
  height: 20px; /* アイコンの高さ */
  background-image: url("/_assets/img/common/icon_mod_hako_cart.png"); /* アイコン画像のパス */
  background-size: contain; /* アイコン画像をサイズ調整 */
  background-repeat: no-repeat; /* 画像の繰り返しを防ぐ */
  margin-right: 8px; /* テキストとの間隔 */
  margin-top: 3px; /* 3px下に調整 */
}

/* モーダルコンテンツのスタイル */
.modal-content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  padding: 0;
  border-radius: 5px;
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
  width: calc(100% - 40px);
  max-width: 800px;
}
.mod_content {
  padding: 30px;
}

/* 閉じるボタン */
.modal .close-button {
  position: absolute;
  bottom: 10px; /* モーダルの右下に配置 */
  right: 10px; /* モーダルの右下に配置 */
  width: 40px; /* ボタンの幅 */
  height: 40px; /* ボタンの高さ */
  display: flex; /* フレックスボックスで中央揃え */
  justify-content: center; /* 水平方向に中央揃え */
  align-items: center; /* 垂直方向に中央揃え */
  font-size: 18px; /* 「✗」のサイズ */
  font-weight: bold; /* 「✗」を太字に */
  color: #cccccc; /* 「✗」の色を指定 */
  background-color: transparent; /* 背景を透明に */
  border: 2px solid #cccccc; /* 丸枠の色を指定 */
  border-radius: 50%; /* 丸い形にする */
  cursor: pointer; /* カーソルをポインターに変更 */
  transition: all 0.3s ease; /* ホバー時のスムーズな色変更 */
}

/* ボタンのホバー時 */
.modal .close-button:hover {
  color: #aaaaaa; /* 「✗」の色を変更 */
  border-color: #aaaaaa; /* ボタン外枠の色を変更 */
}

.modal .c-buy_datail {
  text-align: left;
}
.modal .c-buy_block {
  padding: 30px;
}

.modal .total {
  display: flex; /* フレックスボックスを有効化 */
  justify-content: space-between; /* 子要素を左右に配置 */
  align-items: center; /* 縦方向を中央揃え */
  width: 100%;
  padding-right: 0px !important;
}

.modal .total span {
  font-weight: bold !important;
}
.modal .c-buy_items.border-none {
  border: 0px !important;
}
.modal .c-buy_button__box.right {
  display: flex;
  flex-direction: column; /* 子要素を縦方向に配置 */
  justify-content: space-between; /* 上下の端に子要素を配置 */
  height: 100px; /* 高さを動的に調整できるように */
  margin: 0px !important;
}

.modal .del {
  align-self: flex-start; /* 左揃えにする場合 */
  font-size: 1.4rem;
  color: #428bca;
}

.modal .price {
  align-self: flex-start; /* 左揃えにする場合 */
}
.modal .empty {
  margin: 80px 0;
  text-align: center;
}

.modal .c-buy_list {
  margin-bottom: 30px !important;
}
.modal button {
  display: inline-block;
  border-radius: 5px;
  margin: 0px 5px 5px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.modal button.empty {
  background: #fff;
  color: #d60a13;
  border: 1px solid #d60a13;
  display: inline-block;
  border-radius: 5px;
  margin: 0px 15px 5px;
  padding-top: 10px;
  padding-bottom: 10px;
}

.modal .button_area {
  text-align: center;
  margin-top: 30px;
}

.modal .cng_detail {
  padding: 30px;
}

.modal .cng_detail #button {
  display: inline-block !important;
  color: #d60a13 !important;
  text-decoration: none !important;
  font-size: 1.6rem !important;
  border: 1px solid #d60a13 !important;
  padding: 7px !important;
  text-align: center !important;
  width: 100px !important;
  border-radius: 2px !important;
  position: relative !important;
  line-height: 14px;
  cursor: pointer;
}

.modal .input_form {
  display: grid; /* グリッドレイアウトで横並びに設定 */
  grid-template-columns: auto 1fr; /* 1列目は&lt;dt&gt;、2列目は&lt;dd&gt; */
  gap: 8px 16px; /* 行間（縦）と列間（横）のスペース */
}

.modal .input_form dt {
  display: flex; /* フレックスボックスを有効に */
  align-items: center; /* 垂直方向の中央揃え */
  color: #333333;
  text-align: left;
}

.modal .input_form dd {
  margin: 0;
  display: flex; /* 必要に応じて中央揃え */
  align-items: center; /* 垂直方向の中央揃え */
}
.modal .input_form dd.select {
  display: inline-block;
  max-width: 400px;
  width: 100%;
  margin-bottom: 8px;
}
.modal .input_form dd .select_box {
  display: inline-block;
  width: 100%;
}
.modal .input_form dd .select_box select {
  width: 100%;
}

.modal .input_form dd input[type="text"] {
  max-width: 400px;
}
.modal .input_form dd select {
  max-width: 400px;
}

.modal .modal_cart {
  overflow-y: auto; /* 縦方向にスクロールを許可 */
  overflow-x: hidden; /* 横方向のスクロールは隠す */
  max-height: 80vh;
}

/* メディアクエリで狭い画面の場合、縦並びにする */
@media (max-width: 600px) {
  .modal .input_form {
    grid-template-columns: 1fr; /* 1列に切り替える */
  }

  .modal .input_form dt,
  .modal .input_form dd {
    margin-bottom: 8px; /* 縦並びのときの間隔調整 */
  }
}

@media screen and (max-width: 860px) {
  .c-buy_button__box {
    padding-top: 20px !important;
  }
}
.g-footer {
  z-index: 5 !important;
}
.g-hankyu-nav {
  z-index: 5 !important;
}

/* 新規登録CSS調整 */
.c-form_check input:checked {
  border: 1px solid #868686;
}

.c-form_check input[type="checkbox"] {
  border-radius: 0 !important;
}
.c-form_check input[type="radio"] {
  border-radius: 50% !important;
}
.c-form_button_line {
  /* width:282px; */
}

.c-link__logout {
  position: relative;
  padding-left: 20px;
  display: inline-block;
  font-size: 1.6rem;
}
.c-link__logout:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 17px;
  height: 17px;
  background-image: url(/_assets/img/common/icon_logout.png);
  background-position: left 0% top 0;
  background-repeat: no-repeat;
  background-size: contain;
}

.c-button_block {
  margin: 50px 15px;
}

.c-news_text a {
  text-decoration: none;
}

.document {
  max-width: 800px;
  text-align: left;
  line-height: 1.5em;
}
.document h4,
.document h3 {
  width: 100%;
  font-size: 1.2em;
  padding: 20px 0 10px;
}
.document p {
  width: 100%;
}

/* 取り出し*/
.search-container {
  display: flex; /* 子要素を横並びに配置 */
  width: 100%; /* 親要素を100%幅に設定 */
  gap: 8px; /* 要素間の間隔 */
}
.c-form-group .search-container input {
  line-height: 24px !important;
}
.c-form-group .search-container input[type="text"] {
  border-radius: 4px;
}

.c-input_box {
  flex: 1; /* テキスト入力欄が残りの幅を占める */
  padding: 8px; /* 内側余白 */
  font-size: 16px; /* テキストサイズ */
}

.c-submit,
.c-reset {
  flex-shrink: 0; /* サイズが縮まらないように固定 */
  padding: 4px 13px !important;
  font-size: 14px !important;
  cursor: pointer; /* ホバー時のカーソル変更 */
  width: auto !important;
  margin: 4px 0 8px 0 !important;
  border: #868686 solid 1px !important;
  border-radius: 2px;
  height: 32px;
  font-size: 14px;
}
.search-ctarget input[type="radio"] {
  display: inline-block;
  margin-top: 8px !important;
}
.search-cate {
  display: inline-block !important;
}
.hako .c-buy_datail {
  width: calc(100% - 200px);
  padding-right: 0px;
}
.hako .c-buy_datail .edit {
  width: 40px;
  text-align: right;
}
.hako .c-buy_datail .title {
  max-width: calc(100% - 40px);
}

.kohin_hako .c-buy_button__box.kohin_button {
  width: 230px !important;
}
.kohin_hako .c-buy_datail {
  padding-right: 0px !important;
}
.kohin_hako .c-buy_datail .edit {
  width: 40px;
  text-align: right;
}
.kohin_hako .c-buy_datail .title {
  max-width: calc(100% - 40px);
}

.kohin .c-buy_datail {
  width: calc(100% - 200px) !important;
}

@media screen and (max-width: 860px) {
  .hako .c-buy_datail .title {
    width: 100%;
  }

  .kohin_hako .c-buy_datail .title {
    width: 100%;
  }
  .kohin_hako .c-buy_button__box.kohin_button {
    width: 100% !important;
  }
  .kohin_hako .c-link_confirm {
    margin-right: 10px;
  }
  .kohin .c-buy_datail {
    width: 100% !important;
  }
  .kohin .c-buy_datail .title {
    width: 100%;
  }
}

/* カード決済 */
.c-form_row {
  display: flex; /* 横並びを設定 */
  align-items: center; /* 縦方向の中央揃え */
}

.c-form_name_label {
  margin-right: 16px; /* ラベルと入力欄の間に余白 */
  padding-top: 8px;
}

.c-form_inputs {
  display: flex; /* 横並び */
  align-items: center; /* 縦方向の中央揃え */
  gap: 8px; /* 要素間のスペース */
}

.select_box {
  position: relative; /* 必要に応じてカスタマイズ */
}

.separator {
  margin: 0 8px; /* セパレータ「/」の余白 */
  font-size: 16px; /* フォントサイズ調整 */
}

.modal.sec h4 {
  font-size: 1.3em;
  font-weight: bold;
  margin-bottom: 8px;
}
.modal.sec p {
  line-height: 1.5em;
}
.modal.sec td {
  text-align: center;
}

/* 明細 */
.card_date {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
}

.card_date a {
  margin-left: auto;
}
/*FAQ関連-----------------------------------------------------------------------------*/
.faq h3 {
  font-size: 18px;
  margin-bottom: 20px;
  font-weight: bold;
}
.faq h4 {
  font-size: 14px;
  margin-left: 15px;
  font-weight: bold;
  margin-bottom: 8px;
}
.faq .ans {
  margin-left: 15px;
  margin-bottom: 40px;
  background: #eee;
  padding: 10px;
  line-height: 1.5em;
}

/* 新規登録 -----------------------------------------------------------------------------*/
.c-form-line2-mtem.gender input {
  display: inline-block;
  margin-top: 0px !important;
}
.c-form-line2-mtem.gender label {
  display: inline-block;
}

/*メニュー-----------------------------------------------------------------------------*/
.c-menu_item a:hover {
  opacity: 0.5;
}

/*預かり-----------------------------------------------------------------------------*/
.box_detail dt {
  width: 80px;
}

/*カード未入力アラート-----------------------------------------------------------------------------*/
.card_reregist {
  background-color: crimson;
  color: white; /* 文字色を白に */
  padding: 10px 20px;
  position: fixed;
  top: 80px; /* 画面上部から80pxの位置 */
  left: 0;
  width: 100%; /* 横幅いっぱいにする */
  text-align: center;
  z-index: 1000; /* 他の要素より前面に表示 */
}
@media screen and (max-width: 860px) {
  .card_reregist {
    top: 59px; /* 画面上部から80pxの位置 */
  }
}

/*預かり-----------------------------------------------------------------------------*/
.box_detail dt {
  width: 80px;
}

.pagination-wrapper {
  margin-top: -50px;
}

.pager {
  display: flex;
  justify-content: center;
  list-style: none;
  padding: 0;
  margin: 20px 0;
  gap: 5px;
  flex-wrap: wrap;
}

.pager li {
  display: inline;
}

.pager a,
.pager .current,
.pager .dots {
  display: inline-block;
  padding: 8px 14px;
  text-decoration: none;
  color: #333;
  border: 1px solid #ccc;
  border-radius: 6px;
}

.pager a:hover {
  background-color: #f0f0f0;
}

.pager .current {
  border: 2px solid #333;
  font-weight: bold;
  background-color: #fff;
}

.pager .dots {
  border: none;
  pointer-events: none;
  color: #888;
}

.box_kubun {
  display: flex;
  list-style: none;
  padding: 0;
  margin: 0 0 30px;
  width: 100%;
}

.box_kubun li {
  flex: 1; /* 50%ずつ均等に */
  text-align: center;
  padding: 12px 0;
  cursor: pointer;
  background-color: #f7f7f7;
  border: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  border-top-left-radius: 6px;
  border-top-right-radius: 6px;
  box-sizing: border-box;
  transition: background-color 0.2s;
  z-index: 0;
}
.box_kubun li a {
  text-decoration: none;
  width: 100%;
  display: block;
}

/* 選択中：上に浮かせて白背景・下線を打ち消す */
.box_kubun li.active {
  background-color: #fff;
  font-weight: bold;
  z-index: 1;
  border-bottom: 2px solid white; /* 全体下線と同色で“消す” */
}

/* 非選択中だけ下線を見せる */
.box_kubun li:not(.active)::after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 100%;
  background: #ccc;
  z-index: 2;
}
</pre></body></html>