@charset "UTF-8";

/*
 * style.css
*/
/*
	File Name   : webfont.scss
	Description : webfont用
*/
/*------------------------------------------------------*/
/* web font */
@import url("https://fonts.googleapis.com/css2?family=Zen+Old+Mincho:wght@400;700;900&display=swap");
/*
font-family: 'Zen Old Mincho', serif;
font-weight:400; Regular
font-weight:700; bold
font-weight:900; Black
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;700;900&display=swap");
/*
font-family: 'Noto Sans JP', sans-serif;
font-weight:300; Light
font-weight:400; Regular
font-weight:500; Medium
font-weight:700; bold
font-weight:900; Black
*/
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;700;900&display=swap");
/*
font-family: 'Noto Serif JP', serif;
font-weight:400; Regular
font-weight:500; Medium
font-weight:700; bold
font-weight:900; Black
*/
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: 1em;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

/*
コンテンツ幅について
*/
/*#231815
#040000
#221714

#000000*/
/*
	File Name   : module.scss
	Description : 共通モジュールcss
*/
/* original
----------------------------------------------- */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form,
fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

dl, ol, ul {
  list-style: none outside;
}

fieldset, img {
  border: 0;
}

figure {
  margin: 0;
  padding: 0;
  line-height: 0;
}

a {
  text-decoration: none;
}

a.link-line {
  color: #2fa4ec;
  text-decoration: underline;
}

a.link-line:hover {
  text-decoration: none;
}

a.no-line {
  color: #2fa4ec;
  text-decoration: none;
}

a.no-line:hover {
  text-decoration: underline;
}

a:link, a:active {
  color: #2fa4ec;
}

a:link.red, a:active.red {
  color: #ff0004;
}

a:link.btn-arw--corner, a:active.btn-arw--corner {
  color: #fff;
}

p a {
  color: #2fa4ec;
  text-decoration: underline;
}

p a:hover {
  text-decoration: none;
}

table td, table th {
  word-break: break-all;
}

body {
  /* かわさきの「農業」 ディレクトリ */
}

body#agri main a.link-line {
  color: #e9a530;
}

body#agri main a:link, body#agri main a:active {
  color: #e9a530;
}

body#agri main a:link.btn-arw--corner, body#agri main a:active.btn-arw--corner {
  color: #fff;
}

body#agri main p a {
  color: #e9a530;
}

body#agri .btn-detail a {
  color: #fff;
}

body#agri .btn-detail a:link, body#agri .btn-detail a:active {
  color: #fff;
}

body {
  /* セレサモス ディレクトリ */
}

body#ceresamos main a.link-line {
  color: #69c626;
}

body#ceresamos main a:link, body#ceresamos main a:active {
  color: #69c626;
}

body#ceresamos main a:link.btn-arw--corner, body#ceresamos main a:active.btn-arw--corner {
  color: #fff;
}

body#ceresamos main p a {
  color: #69c626;
}

body#ceresamos .btn-detail a {
  color: #fff;
}

body#ceresamos .btn-detail a:link, body#ceresamos .btn-detail a:active {
  color: #fff;
}

body {
  /* 店舗・施設・ＡＴＭ ディレクトリ */
}

body#store main a.link-line {
  color: #9fc739;
}

body#store main a:link, body#store main a:active {
  color: #9fc739;
}

body#store main a:link.btn-arw--corner, body#store main a:active.btn-arw--corner {
  color: #fff;
}

body#store main p a {
  color: #9fc739;
}

body#store .btn-detail a {
  color: #fff;
}

body#store .btn-detail a:link, body#store .btn-detail a:active {
  color: #fff;
}

body {
  /* 予約フォーム関連 ディレクトリ */
}

body#reserve main a.link-line {
  color: #926be6;
}

body#reserve main a:link, body#reserve main a:active {
  color: #926be6;
}

body#reserve main a:link.btn-arw--corner, body#reserve main a:active.btn-arw--corner {
  color: #fff;
}

body#reserve main p a {
  color: #926be6;
}

body#reserve .btn-detail a {
  color: #fff;
}

body#reserve .btn-detail a:link, body#reserve .btn-detail a:active {
  color: #fff;
}

body {
  /* JAセレサ川崎について ディレクトリ */
}

body#about main a.link-line {
  color: #dd95ec;
}

body#about main a:link, body#about main a:active {
  color: #dd95ec;
}

body#about main a:link.btn-arw--corner, body#about main a:active.btn-arw--corner {
  color: #fff;
}

body#about main p a {
  color: #dd95ec;
}

body#about .btn-detail a {
  color: #fff;
}

body#about .btn-detail a:link, body#about .btn-detail a:active {
  color: #fff;
}

body {
  /* その他 ディレクトリ */
}

body#info main a.link-line {
  color: #7798d9;
}

body#info main a:link, body#info main a:active {
  color: #7798d9;
}

body#info main a:link.btn-arw--corner, body#info main a:active.btn-arw--corner {
  color: #fff;
}

body#info main p a {
  color: #7798d9;
}

body#info .btn-detail a {
  color: #fff;
}

body#info .btn-detail a:link, body#info .btn-detail a:active {
  color: #fff;
}

/* common
----------------------------------------------- */
hr {
  margin: 4em auto;
}

img {
  max-width: 100%;
  height: auto;
}

th img,
td img {
  max-width: inherit;
  height: inherit;
}

.none {
  display: none !important;
}

/* color */
.bg-white {
  background-color: #fff;
}

.bg-green {
  background-color: #a2d5d7;
}

.bg-lightgreen {
  background-color: #ebf4f5;
}

.bg-lightgray {
  background-color: #ebebeb;
}

.bg-lightgray_f2 {
  background-color: #f2f2f2;
}

.bg-lightgray_f4 {
  background-color: #f4f4f4;
}

.bg-lightblue {
  background-color: #f1f8fc;
}

.bg-lightorange {
  background-color: #fbf8f4;
}

.bg-lightpurple {
  background-color: #d2ddf3 !important;
}

.bg-lightpink {
  background-color: #fff5fe !important;
}

.bg-lightpink2 {
  background-color: #fef5fd !important;
}

.bg-ceresamos {
  background-color: #f1fbe8;
}

.red {
  color: #ff0004;
}

.pink {
  color: #dd95ec !important;
}

/* font系 */
.bold {
  font-weight: 700 !important;
}

.normal {
  font-weight: normal !important;
}

.small {
  font-size: 10px !important;
}

.fs-mid {
  font-size: 1.5rem;
}

/**/
.mt0 {
  margin-top: 0 !important;
}

.mt05 {
  margin-top: .5em !important;
}

.mt1 {
  margin-top: 1em !important;
}

.mt2 {
  margin-top: 2em !important;
}

.mt3 {
  margin-top: 3em !important;
}

.mt4 {
  margin-top: 4em !important;
}

.mt5 {
  margin-top: 5em !important;
}

.mt6 {
  margin-top: 6em !important;
}

.mt7 {
  margin-top: 7em !important;
}

.mt8 {
  margin-top: 8em !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb05 {
  margin-bottom: .5em !important;
}

.mb1 {
  margin-bottom: 1em !important;
}

.mb2 {
  margin-bottom: 2em !important;
}

.mb3 {
  margin-bottom: 3em !important;
}

.mb4 {
  margin-bottom: 4em !important;
}

.mb5 {
  margin-bottom: 5em !important;
}

.mb6 {
  margin-bottom: 6em !important;
}

.mb7 {
  margin-bottom: 7em !important;
}

.mb8 {
  margin-bottom: 8em !important;
}

.pt0 {
  padding-top: 0 !important;
}

.pb0 {
  padding-bottom: 0 !important;
}

.pt1 {
  padding-top: 1em !important;
}

.pt2 {
  padding-top: 2em !important;
}

.pt3 {
  padding-top: 3em !important;
}

.pb1 {
  padding-bottom: 1em !important;
}

.pb2 {
  padding-bottom: 2em !important;
}

.pb3 {
  padding-bottom: 3em !important;
}

.pb4 {
  padding-bottom: 4em !important;
}

.pl1 {
  padding-left: 1em !important;
}

.pl2 {
  padding-left: 2em !important;
}

.pl3 {
  padding-left: 3em !important;
}

.pr1 {
  padding-right: 1em !important;
}

.pr2 {
  padding-right: 2em !important;
}

.pr3 {
  padding-right: 3em !important;
}

/**/
.width10 {
  width: 10%;
}
.width15 {
  width: 15%;
}

.width20 {
  width: 20%;
}

.width25 {
  width: 25%;
}

.width30 {
  width: 30%;
}

.width40 {
  width: 40%;
}

.width60 {
  width: 60%;
}

.width50 {
  width: 50%;
}

.width70 {
  width: 70%;
}

.width100 {
  width: 100%;
}

/**/
.sec-space {
  padding: 80px 0;
}

/**/
.align_r {
  text-align: right !important;
}

.align_c {
  text-align: center !important;
}

.align_l {
  text-align: left !important;
}

.v-align-top {
  vertical-align: top !important;
}

.nowrap {
  white-space: nowrap;
}

.hover:hover {
  opacity: .7;
  transition: .4s all;
}

/* PC
----------------------------------------------- */
@media screen and (min-width: 767px) {
  /* view */
  .sp_view {
    display: none !important;
  }
  .pc_view {
    display: inline-block !important;
  }
  .print_viwe {
    display: none !important;
  }
}

/* SP
----------------------------------------------- */
@media screen and (max-width: 960px) {
  .fs-mid {
    font-size: 1.2rem;
  }
  .sp_width100 {
    width: 100% !important;
  }
  /* view */
  .sp_view {
    display: inline-block !important;
  }
  .pc_view {
    display: none !important;
  }
  .print_viwe {
    display: none !important;
  }
  /**/
  .align_r_sp {
    text-align: right !important;
  }
  .align_c_sp {
    text-align: center !important;
  }
  .align_l_sp {
    text-align: left !important;
  }
  /**/
  .sec-space {
    padding: 3em 0;
  }
}

/*
  File Name   : parts.scss
  Description : パーツ用のスタイル
*/
/* common style
------------------------------------------------------------------------------- */
/* Layout
------------------------------------------------------------------------------- */
main {
  display: block;
  width: 100%;
}

section {
  display: block;
  position: relative;
  z-index: 5;
}

.container {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  padding: 0 1em 100px;
}

.container-fluid {
  width: 100%;
  margin: 0 auto;
  padding: 0 0 100px;
}

.content {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  padding: 0 50px;
  position: relative;
  box-sizing: border-box;
}

.content.row {
  display: flex;
  align-items: center;
}

.content .content-inner {
  width: 100%;
  padding: 0 20px;
  margin: 50px auto 0;
  box-sizing: border-box;
}

.content .content-inner + .ttl-h2 {
  margin-top: 50px;
}

.column-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 30px;
       column-gap: 30px;
  row-gap: 40px;
}

.column-3 {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 40px;
}

/* SP */
@media screen and (max-width: 960px) {
  .container {
    max-width: 100%;
    padding: 0 1em 5em;
  }
  .container-fluid {
    padding: 0 0 5em;
  }
  .content {
    max-width: 100%;
    width: 100%;
    padding: 0 1em;
  }
  .content .content-inner {
    padding: 0 0.5em;
    margin: 2em auto 0;
  }
  .content .content-inner + .ttl-h2 {
    margin-top: 3em;
  }
  .column-2 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 1em;
  }
  .column-3 {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    -moz-column-gap: 0;
         column-gap: 0;
    row-gap: 1em;
  }
}

/* 00.共通
----------------------------------------------------------- */
/* breadcrumb */
#breadcrumb {
  width: 100%;
  margin-bottom: 3em;
}

#breadcrumb .breadcrumb-list {
  display: flex;
  align-items: center;
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  padding: 20px 1rem 10px;
  overflow: hidden;
}

#breadcrumb .breadcrumb-list li {
  display: inline-block;
  font-weight: 400;
  font-size: 14px;
  white-space: nowrap;
  padding: 0 24px 0 0;
  position: relative;
}

#breadcrumb .breadcrumb-list li + li::before {
  content: '';
  position: absolute;
  top: 50%;
  left: -18px;
  width: 5px;
  height: 5px;
  border-top: 1px solid #000;
  border-right: 1px solid #000;
  transform: rotate(45deg) translateY(-50%);
}

#breadcrumb .breadcrumb-list li a {
  text-decoration: none;
  color: #000;
  position: relative;
}

#breadcrumb .breadcrumb-list li a::after {
  content: '';
  width: 100%;
  height: 1px;
  background-color: #000;
  position: absolute;
  left: 0;
  bottom: -1px;
}

#breadcrumb .breadcrumb-list li a:hover::after {
  content: none;
}

/* SP */
@media screen and (max-width: 960px) {
  #breadcrumb {
    display: none;
  }
}

/* ICON
----------------------------------------------------------- */
/**/
.pdf span {
  line-height: 1.3;
}

.icon-pdf {
  display: inline-block;
  width: 16px;
  height: 16px;
  position: relative;
  top: 4px;
  padding-left: 6px;
}

.icon-pdf img {
  width: 100%;
}

/**/
.newwin span {
  line-height: 1.5;
}

.icon-newwin {
  display: inline-block;
  width: 15px;
  height: 15px;
  position: relative;
  top: 2px;
  margin-left: 0.5em;
}

.icon-newwin img {
  width: 100%;
}

/**/
.cirarr span {
  line-height: 1.5;
}

.icon-cirarr {
  display: inline-block;
  width: 16px;
  height: 16px;
  position: relative;
  top: 2px;
  margin-left: 0.5em;
}

.icon-cirarr img {
  width: 100%;
  transform: rotate(-90deg);
}

.cirarr-back span {
  line-height: 1.5;
}

.cirarr-back .icon-cirarr {
  margin-left: 0;
  margin-right: 0.5em;
}

.cirarr-back .icon-cirarr img {
  width: 100%;
  transform: rotate(100deg);
}

/* タグリスト */
.tag-list {
  display: flex;
  flex-wrap: wrap;
  margin: 0.4em 0;
}

.tag-list i {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 90px;
  height: 30px;
  margin-right: 5px;
  padding: 1px 10px;
  box-sizing: border-box;
  border: 1px solid #150f00;
  color: #150f00;
  font-style: normal;
  font-weight: 700;
  border-radius: 5px;
}

/* SP */
@media screen and (max-width: 960px) {
  /* タグリスト */
  .tag-list i {
    min-width: calc(120 / 750 * 100vw);
    height: calc(50 / 750 * 100vw);
    padding: 1px 1em;
  }
}

/* LINK(BUTTON/TEXT)
----------------------------------------------------------- */
/* 矢印付きコーナーボタン */
.btn-arw--corner {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  max-width: 340px;
  width: 100%;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 2.8em 0.1em 1.6em;
  box-sizing: border-box;
  background-color: #2fa4ec;
  position: relative;
  letter-spacing: -0.03em;
}

.btn-arw--corner::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_btn_arw_white.svg") no-repeat 100% 50%/12px 9px;
  width: 12px;
  height: 9px;
}

.btn-arw--corner:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-arw--corner:hover::after {
  right: 1.1em;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-arw--corner.wdt-auto {
  width: auto;
  max-width: none;
}

.btn-arw--corner.btn-small {
  display: inline-flex;
  width: auto;
  max-width: none;
  height: auto;
  padding: 0.1em 1em 0.2em 1em;
  font-size: 14px;
  font-weight: normal;
}

.btn-arw--corner.btn-small::after {
  content: none;
}

.btn-corner {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #2fa4ec;
  font-size: 16px;
  font-weight: 900;
  max-width: 310px;
  width: 100%;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 1.6em;
  line-height: 1.2;
  background-color: #fff;
  position: relative;
  border: 3px solid #2fa4ec;
  box-sizing: border-box;
  letter-spacing: -0.03em;
}

.btn-corner:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-corner.arw::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_btn_arw_purple.svg") no-repeat 100% 50%/12px 9px;
  width: 12px;
  height: 9px;
}

.btn-corner.arw:hover::after {
  right: 1.2em;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

/* アンカーリンク矢印付きコーナーボタン */
.btn-anchor--corner {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #2fa4ec;
  font-size: 16px;
  font-weight: 900;
  max-width: 310px;
  width: 100%;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 2.8em 0.1em 1.6em;
  line-height: 1.2;
  background-color: #fff;
  position: relative;
  border: 3px solid #2fa4ec;
  box-sizing: border-box;
  letter-spacing: -0.03em;
}

.btn-anchor--corner::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_down-arw_blue.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

.btn-anchor--corner:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-anchor--corner:hover::after {
  top: 58%;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

/* LINK(画像を伴ったリンク) */
ul.img-link-list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}

ul.img-link-list li {
  width: calc(50% - 15px);
  background: #fff;
  display: flex;
}

ul.img-link-list li:nth-child(n + 3) {
  margin-top: 1.8em;
}

ul.img-link-list li > div {
  padding: 65px 35px 0;
  position: relative;
  width: calc(100% - 190px);
  box-sizing: border-box;
  line-height: 1.5;
}

ul.img-link-list figure {
  width: 190px;
  margin: 0;
}

ul.img-link-list.wide li {
  justify-content: space-between;
  width: 100%;
  margin-bottom: 1.8em;
}

ul.img-link-list.wide figure {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200px;
  width: 40%;
}

ul.img-link-list.wide figure img {
  width: 70%;
}

ul.img-link-list.wide li > div {
  width: 45%;
}

ul.img-link-list .hl {
  font-size: 20px;
  font-weight: bold;
}

ul.img-link-list .hl-large {
  font-size: 28px;
  font-weight: bold;
}

ul.img-link-list .btn-detail {
  width: 150px;
  position: absolute;
  z-index: 10;
  bottom: 25px;
  right: 25px;
}

ul.img-link-list .btn-detail a {
  display: flex;
  justify-content: center;
  align-items: center;
  background: #2fa4ec;
  color: #fff;
  font-size: 16px;
  font-weight: bold;
  border-radius: 20px;
  height: 40px;
  text-decoration: none;
  position: relative;
  transition: 0.3s all;
  letter-spacing: -0.03em;
}

ul.img-link-list .btn-detail a::after {
  content: '';
  width: 0;
  height: 0;
  border: 5px solid transparent;
  border-left-color: #fff;
  position: absolute;
  top: calc(50% - 2);
  right: 5px;
  z-index: 15;
  transform: scaleY(0.7);
}

ul.img-link-list .btn-detail a:hover {
  opacity: 0.7;
}

/* アイコン付きコーナーボタン */
.btn-icon {
  /* PDFアイコン */
  /* 別ウィンドウアイコン */
}

.btn-icon--pdf {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #2fa4ec;
  font-size: 18px;
  font-weight: 900;
  width: 310px;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 2.8em 0.1em 1.6em;
  background-color: #fff;
  position: relative;
  border: 3px solid #2fa4ec;
  box-sizing: border-box;
  text-decoration: none;
  letter-spacing: -0.03em;
  line-height: 1.2;
}

.btn-icon--pdf::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_pdf.svg") no-repeat 100% 50%/20px 20px;
  width: 20px;
  height: 20px;
}

.btn-icon--pdf:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-icon--newwin {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #2fa4ec;
  font-size: 18px;
  font-weight: 900;
  width: 310px;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 2.8em 0.1em 1.6em;
  background-color: #fff;
  position: relative;
  border: 3px solid #2fa4ec;
  box-sizing: border-box;
  text-decoration: none;
  letter-spacing: -0.03em;
  line-height: 1.2;
}

.btn-icon--newwin::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_newwin.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

.btn-icon--newwin:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-more-frame {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #e9a530;
  max-width: 295px;
  width: 100%;
  height: 40px;
  border-radius: 20px;
  background-color: transparent;
  position: relative;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.2;
}

.btn-more-frame span {
  color: #000000;
}

.btn-more-frame::after {
  content: '';
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
  box-sizing: border-box;
  width: 5px;
  height: 5px;
  border: 5px solid transparent;
  border-left: 5px solid #000000;
}

.btn-more-frame:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

/* ボタンセンタリング */
.btn-center {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
}

@media screen and (max-width: 960px) {
  .btn-center a {
    width: 100%;
    margin-bottom: 10px;
  }
}

/* ボタンカラムセット */
.btn-column {
  display: flex;
  justify-content: center;
  margin: 0 auto;
}

.btn-column p + p {
  margin-left: 1.5em;
}

/* SERVICE TOP BUTTON */
.btn-more-blue {
  display: flex;
  justify-content: center;
  align-items: center;
  max-width: 510px;
  width: 100%;
  height: 50px;
  border-radius: 17px;
  background: url("/assets/images/service/common/bg_btn-more-blue.png") no-repeat 50% 50%/cover;
}

.btn-more-blue span {
  color: #fff;
  font-weight: 700;
  line-height: 1.2;
}

.btn-more-blue:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-more-yellow {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 510px;
  height: 40px;
  border-radius: 20px;
  background: url("/assets/images/service/common/bg_btn-more-yellow.png") no-repeat 50% 50%/cover;
}

.btn-more-yellow span {
  color: #040000;
  font-weight: 900;
  line-height: 1.2;
}

.btn-more-yellow:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

body {
  /* かわさきの「農業」 ディレクトリ */
}

body#agri {
  /* 矢印付きコーナーボタン */
  /* アンカーリンク矢印付きコーナーボタン */
  /* LINK(画像を伴ったリンク) */
  /* アイコン付きコーナーボタン */
}

body#agri .btn-arw--corner {
  background-color: #e9a530;
}

body#agri .btn-anchor--corner {
  color: #e9a530;
  border: 3px solid #e9a530;
}

body#agri .btn-anchor--corner::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_down-arw_orange.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

body#agri ul.img-link-list .btn-detail a {
  background: #e9a530;
}

body#agri .btn-icon {
  /* PDFアイコン */
  /* 別ウィンドウアイコン */
}

body#agri .btn-icon--pdf {
  color: #e9a530;
  border: 3px solid #e9a530;
}

body#agri .btn-icon--newwin {
  color: #e9a530;
  border: 3px solid #e9a530;
}

body {
  /* セレサモス ディレクトリ */
}

body#ceresamos {
  /* 矢印付きコーナーボタン */
  /* アンカーリンク矢印付きコーナーボタン */
  /* LINK(画像を伴ったリンク) */
  /* アイコン付きコーナーボタン */
}

body#ceresamos .btn-arw--corner {
  background-color: #689f3a;
}

body#ceresamos .btn-anchor--corner {
  color: #689f3a;
  border: 3px solid #689f3a;
}

body#ceresamos .btn-anchor--corner::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_down-arw_green.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

body#ceresamos ul.img-link-list .btn-detail a {
  background: #689f3a;
}

body#ceresamos .btn-icon {
  /* PDFアイコン */
  /* 別ウィンドウアイコン */
}

body#ceresamos .btn-icon--pdf {
  color: #689f3a;
  border: 3px solid #689f3a;
}

body#ceresamos .btn-icon--newwin {
  color: #689f3a;
  border: 3px solid #689f3a;
}

body {
  /* 店舗・施設・ＡＴＭ ディレクトリ */
}

body#store {
  /* 矢印付きコーナーボタン */
  /* アンカーリンク矢印付きコーナーボタン */
  /* LINK(画像を伴ったリンク) */
  /* アイコン付きコーナーボタン */
}

body#store .btn-arw--corner {
  background-color: #9ac91e;
}

body#store .btn-anchor--corner {
  color: #9fc739;
  border: 3px solid #9fc739;
}

body#store .btn-anchor--corner::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_down-arw_green.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

body#store ul.img-link-list .btn-detail a {
  background: #e1f0bf;
}

body#store .btn-icon {
  /* PDFアイコン */
  /* 別ウィンドウアイコン */
}

body#store .btn-icon--pdf {
  color: #9fc739;
  border: 3px solid #9fc739;
}

body#store .btn-icon--newwin {
  color: #9fc739;
  border: 3px solid #9fc739;
}

body {
  /* 予約フォーム関連 ディレクトリ */
}

body#reserve {
  /* 矢印付きコーナーボタン */
  /* アンカーリンク矢印付きコーナーボタン */
  /* LINK(画像を伴ったリンク) */
  /* アイコン付きコーナーボタン */
}

body#reserve .btn-arw--corner {
  background-color: #916ae6;
}

body#reserve .btn-corner {
  color: #916ae6;
  border: 3px solid #916ae6;
}

body#reserve .btn-anchor--corner {
  color: #916ae6;
  border: 3px solid #916ae6;
}

body#reserve .btn-anchor--corner::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_down-arw_purple.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

body#reserve .btn-anchor--corner.none-arw {
  max-width: 235px;
  width: 100%;
  height: 60px;
  border-radius: 30px;
  padding: 0.1em 1.6em 0.1em 1.6em;
}

body#reserve .btn-anchor--corner.none-arw::after {
  content: none;
}

body#reserve .btn-anchor--corner.none-arw:hover {
  color: #fff;
  background-color: #916ae6;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

body#reserve ul.img-link-list .btn-detail a {
  background: #916ae6;
}

body#reserve .btn-icon {
  /* PDFアイコン */
  /* 別ウィンドウアイコン */
}

body#reserve .btn-icon--pdf {
  color: #9fc739;
  border: 3px solid #916ae6;
}

body#reserve .btn-icon--newwin {
  color: #916ae6;
  border: 3px solid #916ae6;
}

body {
  /* JAセレサ川崎について ディレクトリ */
}

body#about {
  /* 矢印付きコーナーボタン */
  /* アンカーリンク矢印付きコーナーボタン */
  /* LINK(画像を伴ったリンク) */
  /* アイコン付きコーナーボタン */
}

body#about .btn-arw--corner {
  background-color: #dd95ec;
}

body#about .btn-corner {
  color: #916ae6;
  border: 3px solid #dd95ec;
}

body#about .btn-anchor--corner {
  color: #dd95ec;
  border: 3px solid #dd95ec;
}

body#about .btn-anchor--corner::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_down-arw_lightpurple.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

body#about .btn-anchor--corner.none-arw {
  max-width: 235px;
  width: 100%;
  height: 60px;
  border-radius: 30px;
  padding: 0.1em 1.6em 0.1em 1.6em;
}

body#about .btn-anchor--corner.none-arw::after {
  content: none;
}

body#about .btn-anchor--corner.none-arw:hover {
  color: #fff;
  background-color: #dd95ec;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

body#about ul.img-link-list .btn-detail a {
  background: #dd95ec;
}

body#about .btn-icon {
  /* PDFアイコン */
  /* 別ウィンドウアイコン */
}

body#about .btn-icon--pdf {
  color: #dd95ec;
  border: 3px solid #dd95ec;
}

body#about .btn-icon--newwin {
  color: #dd95ec;
  border: 3px solid #dd95ec;
}

body {
  /* その他 ディレクトリ */
}

body#info {
  /* 矢印付きコーナーボタン */
  /* アンカーリンク矢印付きコーナーボタン */
  /* LINK(画像を伴ったリンク) */
  /* アイコン付きコーナーボタン */
}

body#info .btn-arw--corner {
  background-color: #7798d9;
}

body#info .btn-corner {
  color: #7798d9;
  border: 3px solid #7798d9;
}

body#info .btn-anchor--corner {
  color: #7798d9;
  border: 3px solid #7798d9;
}

body#info .btn-anchor--corner::after {
  content: '';
  position: absolute;
  right: 1.5em;
  top: 50%;
  transform: translateY(-50%);
  background: url("/assets/images/common/icon_down-arw_lightpurple.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

body#info .btn-anchor--corner.none-arw {
  max-width: 235px;
  width: 100%;
  height: 60px;
  border-radius: 30px;
  padding: 0.1em 1.6em 0.1em 1.6em;
}

body#info .btn-anchor--corner.none-arw::after {
  content: none;
}

body#info .btn-anchor--corner.none-arw:hover {
  color: #fff;
  background-color: #7798d9;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

body#info ul.img-link-list .btn-detail a {
  background: #7798d9;
}

body#info .btn-icon {
  /* PDFアイコン */
  /* 別ウィンドウアイコン */
}

body#info .btn-icon--pdf {
  color: #7798d9;
  border: 3px solid #7798d9;
}

body#info .btn-icon--newwin {
  color: #7798d9;
  border: 3px solid #7798d9;
}

/* SP */
@media screen and (max-width: 960px) {
  /* 矢印付き丸ボタン */
  .btn-arw--blue {
    font-size: calc(26 / 750 * 100vw);
    width: calc(340 / 750 * 100vw);
    height: calc(100 / 750 * 100vw);
    border-radius: calc(50 / 750 * 100vw);
  }
  .btn-arw--blue::after {
    background: url("/assets/images/common/icon_btn_arw_white.svg") no-repeat 100% 50%/calc(12 / 750 * 100vw) calc(9 / 750 * 100vw);
    width: calc(12 / 750 * 100vw);
    height: calc(9 / 750 * 100vw);
  }
  ul.img-link-list {
    flex-direction: column;
  }
  ul.img-link-list li {
    width: 100%;
    background: #fff;
    display: flex;
  }
  ul.img-link-list li ~ li {
    margin-top: 0.8em;
  }
  ul.img-link-list li:nth-child(n + 3) {
    margin-top: 0.8em;
  }
   ul.img-link-list.wide li {
    margin-bottom: 0.8em;
   }
  ul.img-link-list li > div,
  ul.img-link-list.wide li > div {
    padding: 1em;
    width: calc(100% - (180 / 750 * 100vw));
  }
  ul.img-link-list figure,
  ul.img-link-list.wide figure {
    width: calc(180 / 750 * 100vw);
  }
  ul.img-link-list.wide figure {
    height: 94px;
  }
  ul.img-link-list.wide figure img {
    width: 100%;
  }
  ul.img-link-list .hl,
  ul.img-link-list .hl-large {
    font-size: calc(28 / 750 * 100vw);
    font-weight: bold;
  }
  ul.img-link-list .btn-detail {
    width: calc(200 / 750 * 100vw);
    bottom: 0.8em;
    right: 0.5em;
  }
  ul.img-link-list .btn-detail a {
    font-size: calc(22 / 750 * 100vw);
    height: calc(60 / 750 * 100vw);
    letter-spacing: -0.03em;
  }
  ul.img-link-list .btn-detail a::after {
    border: 4px solid transparent;
    border-left-color: #fff;
    top: calc(50% - 2);
    right: 6px;
  }
  /* 別ウィンドウ印付き丸ボタン
  ※ここも下のアイコン付きコーナーボタンの中で統一したい※ */
  /*.btn-newwin{
    &--blue{
      font-size: calc(26/750*100vw);
      width: 100%;
      height: calc(100/750*100vw);
      border-radius: calc(50/750*100vw);
      &::after{
        background: url("/assets/images/common/icon_newwin.svg") no-repeat 100% 50% / calc(20/750*100vw) calc(22/750*100vw);
        width: calc(20/750*100vw);
        height: calc(22/750*100vw);
      }
    }
  }*/
  /* アイコン付きコーナーボタン */
  .btn-icon {
    /* PDFアイコン */
    /* 別ウィンドウアイコン */
  }
  .btn-icon--pdf {
    font-size: calc(26 / 750 * 100vw);
    width: 100%;
    height: calc(100 / 750 * 100vw);
    border-radius: calc(50 / 750 * 100vw);
  }
  .btn-icon--pdf::after {
    background: url("/assets/images/common/icon_pdf.svg") no-repeat 100% 50%/calc(26 / 750 * 100vw) calc(26 / 750 * 100vw);
    width: calc(26 / 750 * 100vw);
    height: calc(26 / 750 * 100vw);
  }
  .btn-icon--newwin {
    font-size: calc(26 / 750 * 100vw);
    width: 100%;
    height: calc(100 / 750 * 100vw);
    border-radius: calc(50 / 750 * 100vw);
  }
  .btn-icon--newwin::after {
    background: url("/assets/images/common/icon_newwin.svg") no-repeat 100% 50%/calc(20 / 750 * 100vw) calc(22 / 750 * 100vw);
    width: calc(20 / 750 * 100vw);
    height: calc(22 / 750 * 100vw);
  }
  /* SERVICE TOP BUTTON */
  .btn-more-blue {
    width: 100%;
    height: calc(100 / 750 * 100vw);
    border-radius: calc(40 / 750 * 100vw);
  }
  .btn-more-yellow {
    width: 100%;
    height: calc(80 / 750 * 100vw);
    border-radius: calc(40 / 750 * 100vw);
  }
  /* ボタンカラムセット */
  .btn-column {
    display: flex;
    justify-content: center;
    flex-direction: column;
    margin: 0 auto;
  }
  .btn-column p + p {
    margin-left: auto;
    margin-top: 1em;
  }
}

/* PARAGRAPH
----------------------------------------------------------- */
.text-description {
  line-height: 2;
  margin-bottom: 2em;
}

.text-description p {
  font-feature-settings: 'palt';
}

.text-description p + p {
  margin-top: 1.5em;
}

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

.note.indent {
  text-indent: -1.3em;
  margin-left: 1.3em;
}
.note.indent1em {
  text-indent: -1em;
  margin-left: 1em;
}

.note + .note {
  margin-top: 0.4em;
}

.note.sml {
  font-size: 14px;
}

.text-lead {
  font-size: 24px;
  font-weight: 700;
  margin-bottom: 2em;
  text-align: left;
  line-height: 1.5;
}

.text-lead.sml {
  font-size: 20px;
}

.text-lead.big {
  font-size: 36px;
}

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

.text-lead.flex-column {
  display: flex;
  align-items: center;
  flex-direction: column;
  line-height: 1.4;
}

.text-lead.flex-column small {
  font-size: 16px;
}

.text-lead.flex-column span {
  font-size: 30px;
}

.text-caption {
  font-weight: 700;
  color: #2fa4ec;
  margin-bottom: 1em;
  text-align: left;
}

/* SP */
@media screen and (max-width: 960px) {
  .text-description {
    line-height: 1.8;
    margin-bottom: 2em;
  }
  .text-description p {
    font-size: calc(32 / 750 * 100vw);
  }
  .text-description p + p {
    margin-top: 1.5em;
  }
  .text-lead {
    font-size: calc(32 / 750 * 100vw);
  }
  .text-lead.sml {
    font-size: calc(30 / 750 * 100vw);
  }
  .text-lead.big {
    font-size: calc(38 / 750 * 100vw);
  }
  .text-lead + .ttl-h2 {
    margin-top: -1em;
  }
  .text-caption {
    font-size: calc(30 / 750 * 100vw);
  }
}

/* HEADLIEN
----------------------------------------------------------- */
.headline {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  width: 100%;
  height: 250px;
  padding-top: 140px;
}

.headline.service {
  background: url("/assets/images/service/common/bg_headline-service.jpg") no-repeat 50% 50%/cover;
}

.headline.agri {
  background: url("/assets/images/agri/common/bg_headline-agri.jpg") no-repeat 50% 50%/cover;
}

.headline.ceresamos {
  background: url("/assets/images/agri/ceresamos/common/bg_headline-ceresamos.jpg") no-repeat 50% 50%/cover;
}

.headline.store {
  background: url("/assets/images/store/common/bg_headline-store.jpg") no-repeat 50% 50%/cover;
}

.headline.reserve {
  background: url("/assets/images/reserve/common/bg_headline-reserve.jpg") no-repeat 50% 50%/cover;
}

.headline.about {
  background: url("/assets/images/about/common/bg_headline-about.jpg") no-repeat 50% 50%/cover;
}

.headline.info {
  background: url("/assets/images/info/common/bg_headline-info.jpg") no-repeat 50% 50%/cover;
}

.headline .page-title h1 {
  font-size: 36px;
  font-weight: 700;
}

/* SP */
@media screen and (max-width: 960px) {
  .headline {
    min-height: calc(300 / 750 * 100vw);
    height: auto;
    margin-bottom: 2em;
    padding-top: calc(140 / 750 * 100vw);
  }
  .headline .page-title h1 {
    font-size: calc(42 / 750 * 100vw);
  }
}

.news-cat {
  display: flex;
  justify-content: flex-end;
  flex-wrap: wrap;
  padding-bottom: 2em;
}

@media screen and (max-width: 960px) {
  .news-cat {
    justify-content: flex-start;
  }
}

.news-cat a {
  display: inline-block;
  margin: 5px;
  padding: 0 1em;
  border: solid 1px #916ae6;
  border-radius: 5px;
  font-size: 14px;
  text-decoration: none !important;
}

/* Title
----------------------------------------------------------- */
/*
 * 見出しのパターン
 * 今後の可能性として対象のブロックごとに色の変更の可能性あり
*/
/* 背景色付き */
.ttl-h2 {
  margin-bottom: 1em;
  font-size: 30px;
  font-weight: 900;
  background-color: #d3e8f5;
  padding: 0.3em 20px;
}

/* 左に罫線マーカー */
.ttl-h3 {
  margin-bottom: 1em;
  font-size: 24px;
  font-weight: 900;
}

.ttl-h3 span {
  position: relative;
  display: inline-block;
  padding-left: 20px;
  line-height: 1.4;
}

.ttl-h3 span::after {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #9ad1f3;
  width: 5px;
  height: 100%;
}

.ttl-h3 a {
  color: #2fa4ec;
  text-decoration: underline;
}

.ttl-h3 a:hover {
  text-decoration: none;
  opacity: 0.7;
}

.ttl-h3 a .icon-newwin {
  top: 0;
}

.ttl-h3 a .icon-cirarr {
  top: 0;
}

.ttl-h3 i .ttl-h3-pdf {
  font-style: normal;
  font-size: 16px;
  display: inline-flex;
  align-items: center;
  vertical-align: text-bottom;
}

.ttl-h3 i .ttl-h3-pdf::before {
  content: '';
  width: 27px;
  height: 27px;
  background: url(/assets/images/common/icon_pdf.svg) 0 0 no-repeat;
  margin-left: 1em;
}

/* 文字大・色 */
.ttl-h4 {
  margin-bottom: 0.5em;
  font-size: 24px;
  font-weight: 700;
  color: #2fa4ec;
  line-height: 1.5;
}

.ttl-h4.sml {
  font-size: 18px;
}

.ttl-h4 a {
  text-decoration: underline;
  color: #2fa4ec;
}

.ttl-h4 a:hover {
  text-decoration: none;
}

/* 領域別のカラー設定 */
body {
  /* かわさきの「農業」 ディレクトリ */
}

body#agri {
  /* 背景色付き */
  /* 左に罫線マーカー */
  /* 文字大・色 */
}

body#agri .ttl-h2 {
  background-color: #e9c68b;
}

body#agri .ttl-h3 span::after {
  background-color: #ebac47;
}

body#agri .ttl-h3 a {
  color: #e9a530;
}

body#agri .ttl-h4 {
  color: #e9a530;
}

body#agri .ttl-h4 a {
  color: #e9a530;
}

body {
  /* セレサモス ディレクトリ */
}

body#ceresamos {
  /* 背景色付き */
  /* 左に罫線マーカー */
  /* 文字大・色 */
}

body#ceresamos .ttl-h2 {
  background-color: #e3f2df;
}

body#ceresamos .ttl-h3 span::after {
  background-color: #8ead71;
}

body#ceresamos .ttl-h3 a {
  color: #689f3a;
}

body#ceresamos .ttl-h4 {
  color: #689f3a;
}

body#ceresamos .ttl-h4 a {
  color: #689f3a;
}

body {
  /* 店舗・施設・ＡＴＭ ディレクトリ */
}

body#store {
  /* 背景色付き */
  /* 左に罫線マーカー */
  /* 文字大・色 */
}

body#store .ttl-h2 {
  background-color: #e1f0bf;
}

body#store .ttl-h3 span::after {
  background-color: #9fc739;
}

body#store .ttl-h3 a {
  color: #9fc739;
}

body#store .ttl-h4 {
  color: #9fc739;
}

body#store .ttl-h4 a {
  color: #9fc739;
}

body {
  /* 予約フォーム関連 ディレクトリ */
}

body#reserve {
  /* 背景色付き */
  /* 左に罫線マーカー */
  /* 文字大・色 */
}

body#reserve .ttl-h2 {
  background-color: #dccff8;
}

body#reserve .ttl-h3 span::after {
  background-color: #916ae6;
}

body#reserve .ttl-h3 a {
  color: #916ae6;
}

body#reserve .ttl-h4 {
  color: #916ae6;
}

body#reserve .ttl-h4 a {
  color: #916ae6;
}

body {
  /* JAセレサ川崎について ディレクトリ */
}

body#about {
  /* 背景色付き */
  /* 左に罫線マーカー */
  /* 文字大・色 */
}

body#about .ttl-h2 {
  background-color: #eed6ec;
}

body#about .ttl-h3 span::after {
  background-color: #dd95ec;
}

body#about .ttl-h3 a {
  color: #dd95ec;
}

body#about .ttl-h4 {
  color: #dd95ec;
}

body#about .ttl-h4 a {
  color: #dd95ec;
}

body {
  /* その他 ディレクトリ */
}

body#info {
  /* 背景色付き */
  /* 左に罫線マーカー */
  /* 文字大・色 */
}

body#info .ttl-h2 {
  background-color: #c8d6f0;
}

body#info .ttl-h3 span::after {
  background-color: #7798d9;
}

body#info .ttl-h3 a {
  color: #7798d9;
}

body#info .ttl-h4 {
  color: #7798d9;
}

body#info .ttl-h4 a {
  color: #7798d9;
}

/* SP */
@media screen and (max-width: 960px) {
  /* 背景色付き */
  .ttl-h2 {
    font-size: calc(40 / 750 * 100vw);
    padding: 0.8em;
  }
  /* 左に罫線マーカー */
  .ttl-h3 {
    font-size: calc(34 / 750 * 100vw);
  }
  .ttl-h3 span {
    padding-left: calc(24 / 750 * 100vw);
  }
  /* 文字大・色 */
  .ttl-h4 {
    font-size: calc(28 / 750 * 100vw);
  }
  .ttl-h4.sml {
    font-size: calc(30 / 750 * 100vw);
  }
}

/* LIST
----------------------------------------------------------- */
/* 「.」付きのナンバーリスト */
.list-number {
  counter-reset: item;
  list-style-type: none;
  padding-left: 0;
}

.list-number li {
  text-indent: -1.4em;
  padding-left: 1.4em;
}

.list-number li + li {
  margin-top: 0.2em;
}

.list-number li::before {
  counter-increment: item;
  content: counter(item) ".";
  padding-right: 0.5em;
  font-weight: 700;
}

.list-number_inlist {
  counter-reset: item;
  list-style-type: none;
  padding-left: 0;
}

.list-number_inlist .parent {
  text-indent: -1.4em;
  padding-left: 1.4em;
}

.list-number_inlist .parent + .parent {
  margin-top: 0.2em;
}

.list-number_inlist .parent::before {
  counter-increment: item;
  content: counter(item) ".";
  padding-right: 0.5em;
  font-weight: 700;
}

.list-number_inlist .parent .icon-newwin {
  margin-left: 1.7em;
}

/* 円形ナンバーリスト */
.list-number-circle {
  counter-reset: item;
  list-style-type: none;
  padding-left: 0;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -moz-column-gap: 30px;
       column-gap: 30px;
  row-gap: 30px;
}

.list-number-circle li a {
  color: #e9a530;
  position: relative;
  padding-left: 50px;
  font-size: 18px;
  font-weight: 700;
  text-decoration: underline;
  letter-spacing: -0.03em;
}

.list-number-circle li a::before {
  counter-increment: item;
  content: counter(item);
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: #e9a530;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  box-sizing: border-box;
  line-height: 1.1;
}

.list-number-circle li a:hover {
  text-decoration: none;
}

/* 「・」付きのリスト */
.list-dot {
  list-style-type: none;
  padding-left: 0;
}

.list-dot li {
  text-indent: -1.2em;
  padding-left: 1.2em;
}

.list-dot li + li {
  margin-top: 0.2em;
}

.list-dot li::before {
  content: '・';
  padding-right: 0.3em;
  font-weight: 700;
}

.list-dot li .icon-pdf,
.list-dot li .icon-newwin,
.list-dot li .icon-cirarr {
  text-indent: 0;
}

/* アンカーリンクリスト */
.list-anchor {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 30px;
       column-gap: 30px;
  row-gap: 30px;
}

.list-tag {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 20px;
}

/* SP */
@media screen and (max-width: 960px) {
  /* 円形ナンバーリスト */
  .list-number-circle {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 1em;
         column-gap: 1em;
    row-gap: 2em;
  }
  .list-number-circle li a {
    padding-left: calc(70 / 750 * 100vw);
    font-size: calc(24 / 750 * 100vw);
  }
  .list-number-circle li a::before {
    font-size: calc(24 / 750 * 100vw);
    width: calc(60 / 750 * 100vw);
    height: calc(60 / 750 * 100vw);
  }
  .list-anchor {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
    row-gap: 0.5em;
  }
  .list-anchor .btn-anchor--corner {
    max-width: 100%;
  }
  .list-tag {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
    row-gap: 0.5em;
  }
  .list-tag .btn-corner {
    max-width: 100%;
  }
}

.news-list {
  margin-bottom: 1.2em;
}

.news-list li {
  display: flex;
  align-items: center;
  padding: 20px 0;
  border-bottom: 1px solid #d4d4d4;
}

.news-list li span {
  display: inline-block;
}

.news-list li span.date {
  padding-right: 50px;
  padding-top: 6px;
}

.news-list li span.title {
  flex: 1;
}

.news-list li span.title a span {
  font-weight: 700;
  text-decoration: underline;
}

.news-list li span.title a:hover span {
  text-decoration: none;
}

/* SP */
@media screen and (max-width: 960px) {
  .news-list li {
    flex-direction: column;
    align-items: flex-start;
    padding: 1.2em 0 1.5em;
  }
  .news-list li span {
    display: inline-block;
  }
  .news-list li span.date {
    padding-right: 0;
    padding-top: 0;
  }
}

/* BOX
----------------------------------------------------------- */
/* 年率表示用のカードブロック */
.card-rate {
  background-color: #f0f4f7;
  padding: 40px 30px 40px;
  margin-bottom: 0.5em;
}

.card-rate .rate {
  font-size: 24px;
  font-weight: 700;
}

.card-rate .rate .rate-number {
  font-size: 45px;
  font-weight: 700;
  color: #0f6aa2;
  line-height: 1.2;
  display: inline-block;
  padding: 0 10px;
}

.card-rate--note {
  margin-top: 0.5em;
  font-size: 16px;
  font-weight: 700;
}

.card-rate.row {
  display: flex;
  align-items: flex-end;
}

.card-rate.row .rate {
  margin-right: 20px;
}

/* SP */
@media screen and (max-width: 960px) {
  .card-rate {
    padding: 1.5em 1em 1.5em;
  }
  .card-rate .rate {
    font-size: calc(26 / 750 * 100vw);
  }
  .card-rate .rate .rate-number {
    font-size: calc(45 / 750 * 100vw);
    padding: 0 0.3em;
  }
  .card-rate--note {
    font-size: calc(22 / 750 * 100vw);
  }
  .card-rate.row {
    align-items: flex-start;
    flex-direction: column;
  }
  .card-rate.row .rate {
    margin-right: 0;
    margin-bottom: 0.3em;
  }
}

/* 動画 */
.movie-box {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.movie-box iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/* 画像２×２ */
.column-img {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 20px;
}

.column-img02 {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: 20px;
       column-gap: 20px;
  row-gap: 20px;
}

.column-img figure {
  width: 100%;
  line-height: 1.2;
}

.column-img figure img {
  width: 100%;
}

@media screen and (max-width: 960px) {
  .column-img.sp-col-1 {
    grid-template-columns: repeat(1, 1fr);
  }
  .column-img.sp-col-1 .text-description {
    order: 2;
  }
  .column-img.sp-col-1 figure {
    order: 1;
  }
}

/* テキスト×画像 */
.column-ph {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.column-ph figure {
  max-width: 365px;
  width: 100%;
  line-height: 0;
  margin-left: 25px;
}

.column-ph figure img {
  width: 100%;
}

/* NEWS 詳細*/
.article-post {
  margin-bottom: 5em;
}

.article-post h1.info-title {
  margin-bottom: 2em;
  font-size: 28px;
}

.article-post p + p {
  margin-top: 1em;
}

.article-post p + h2 {
  margin-top: 2em;
}

.article-post p + h3 {
  margin-top: 2em;
}

.article-post a {
  text-decoration: underline;
}

.article-post a:hover {
  text-decoration: none;
}

/* SP */
@media screen and (max-width: 960px) {
  /* テキスト×画像 */
  .column-ph {
    flex-direction: column;
  }
  .column-ph figure {
    max-width: 100%;
    width: 100%;
    margin: 0 auto 2em;
  }
}

/* Table
----------------------------------------------------------- */
.table-wrap {
  width: 100%;
  overflow-x: auto;
  padding-bottom: 9px;
}

.table-wrap::-webkit-scrollbar {
  height: 6px;
  background: #f6f6f6;
}

.table-wrap:-webkit-scrollbar-track {
  border-radius: 3px;
  background: #f6f6f6;
}

.table-wrap::-webkit-scrollbar-thumb {
  border-radius: 3px;
  background: #2fa4ec;
}

[class^='table-'] {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  margin-bottom: 1em;
}

[class^='table-'] th,
[class^='table-'] td {
  border: 1px solid #d8d8d8;
  vertical-align: middle;
  text-align: center;
  padding: 18px 15px;
  font-size: 16px;
  font-weight: 700;
  box-sizing: border-box;
}

[class^='table-'] thead th {
  letter-spacing: -0.03em;
  font-weight: 700;
  line-height: 1.4;
}

[class^='table-'] tbody.th-lightgray th {
  background-color: #f2f2f2;
}

[class^='table-'] tbody.th-lightgreen th {
  background-color: #ecf5d8;
}

[class^='table-'] tbody.th-lightpurple th {
  background-color: #f4f8ff;
}

[class^='table-'] tbody.th-lightpink th {
  background-color: #fff5fe;
}

[class^='table-'] tbody.all-center th,
[class^='table-'] tbody.all-center td {
  text-align: center;
}

[class^='table-'].narrow th,
[class^='table-'].narrow td {
  padding: 10px;
}

/* ローン年率表 */
.table-loan caption {
  font-size: 18px;
  font-weight: 700;
  color: #2fa4ec;
  margin-bottom: 1em;
  text-align: left;
}

.table-loan th,
.table-loan td {
  font-size: 18px;
}

.table-loan th.w25,
.table-loan td.w25 {
  width: 25%;
}

.table-loan th.w37,
.table-loan td.w37 {
  width: 37%;
}

.table-loan thead th {
  font-size: 24px;
}

.table-loan thead th.none-line {
  border-top: 0;
  border-left: 0;
}

/* THEAD：ライトブルー見出し  */
.table-detail th,
.table-detail td {
  font-size: 16px;
  text-align: left;
}

.table-detail th p + p,
.table-detail td p + p {
  margin-top: 0.8em;
}

.table-detail thead th {
  background-color: #e2edf4;
}

.table-detail thead th.green {
  background-color: #f2fbe8;
}

/* THEAD：グレー見出し  */
.table-detail-docs th,
.table-detail-docs td {
  font-size: 16px;
}

.table-detail-docs thead th {
  background-color: #f6f6f6;
  position: relative;
}

.table-detail-docs thead th.required span {
  position: relative;
}

.table-detail-docs thead th.required span::after {
  content: '必須';
  width: 60px;
  height: 30px;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ea6363;
  font-size: 16px;
  color: #fff;
  position: absolute;
  right: -70px;
  top: 50%;
  transform: translateY(-50%);
}

.table-history tbody th.history-year {
  width: 120px;
}

.table-history tbody th.history-month {
  width: 100px;
}

.table-history tbody th.history-day {
  width: 100px;
}

.table-history tbody td {
  text-align: left;
}

/* SP */
@media screen and (max-width: 960px) {
  [class^='table-'] th,
  [class^='table-'] td {
    padding: 1.2em 1em;
    font-size: calc(30 / 750 * 100vw);
  }
  .table-wrap [class^='table-'] {
    width: 200%;
  }
  /* ローン年率表 */
  .table-loan caption {
    font-size: calc(30 / 750 * 100vw);
  }
  .table-loan thead th {
    font-size: calc(28 / 750 * 100vw);
  }
  .table-detail.column-type th,
  .table-detail.column-type td {
    display: block;
  }
  /* THEAD：グレー見出し  */
  .table-detail-docs th,
  .table-detail-docs td {
    font-size: calc(26 / 750 * 100vw);
  }
  .table-detail-docs thead th.required span {
    padding-right: calc(20 / 750 * 100vw);
  }
  .table-detail-docs thead th.required span::after {
    width: calc(65 / 750 * 100vw);
    height: calc(44 / 750 * 100vw);
    border-radius: calc(25 / 750 * 100vw);
    font-size: calc(18 / 750 * 100vw);
    right: calc(-60 / 750 * 100vw);
  }
  .table-history tbody {
    border: 1px solid #d8d8d8;
  }
  .table-history tbody tr {
    display: flex;
    flex-wrap: wrap;
    background-color: #fff5fe;
  }
  .table-history tbody th.history-year {
    width: auto;
    border: 0;
    padding: 1.2em 0.1em 1.2em 1.2em;
  }
  .table-history tbody th.history-month {
    width: auto;
    border: 0;
    padding: 1.2em 0.1em 1.2em 0.1em;
  }
  .table-history tbody th.history-day {
    width: auto;
    border: 0;
    padding: 1.2em 0.1em 1.2em 0.1em;
  }
  .table-history tbody td {
    display: block;
    width: 100%;
    text-align: left;
    background-color: #fff;
    border-left: 0;
    border-right: 0;
  }
}

.tbl-description {
  margin-bottom: 1em;
}

.tbl-description th {
  text-align: left;
  white-space: nowrap;
}

.is-flex-space-around {
  display: flex;
  justify-content: space-around;
}

/*
	File Name   : base.scss
	Description : 各ブロックのレイアウト
*/
/* Body setting
------------------------------------------------------------------------------- */
body {
  color: #040000;
  font-family: "Zen Old Mincho", serif;
  font-style: normal;
  font-weight: 400;
  font-size: 16px;
  line-height: 1.6;
  position: relative;
  overflow-x: hidden;
  width: 100%;
  background: #fff;
  box-sizing: border-box;
  letter-spacing: 0.03em;
}

/* SP */
@media screen and (max-width: 960px) {
  body {
    width: 100%;
    min-width: 100%;
    font-size: calc(32 / 750 * 100vw);
    overflow-x: hidden;
  }
  /*-------------*/
}

/* Header
------------------------------------------------------------------------------- */
header {
  width: 100%;
  max-width: 100%;
  padding: 8px 1em 15px;
  height: 140px;
  box-sizing: border-box;
  position: fixed;
  top: 0;
  z-index: 2500;
  background-color: #fff;
}

header.move {
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

header .header-top {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto 15px;
}

header .header-top__nav {
  display: flex;
  justify-content: flex-end;
}

header .header-top__nav li {
  position: relative;
}

header .header-top__nav li + li::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  width: 1px;
  height: 20px;
  background-color: #000000;
}

header .header-top__nav li a {
  display: flex;
  align-items: center;
  height: 30px;
  padding: 0 10px;
  font-size: 12px;
  font-weight: 700;
  color: #040000;
}

header .header-top__nav li.recruit::after {
  content: none;
}

header .header-top__nav li.recruit a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 80px;
  height: 30px;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  background-color: #1d2974;
  border-radius: 15px;
  box-sizing: border-box;
}

header .header-top__nav li.recruit a:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

header .header-top__nav li.site-search {
  padding: 0 10px;
  width: 250px;
}

header .header-inner {
  max-width: 1100px;
  width: 100%;
  margin: 0 auto;
  position: relative;
  display: flex;
  align-items: flex-end;
}

header .header-inner .logo {
  display: block;
  line-height: 0;
  width: 323px;
  margin-bottom: 12px;
}

header .header-inner .logo img {
  width: 100%;
}

header .header-inner .logo:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

header .gnav {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}

header .gnav li + li {
  margin-left: 20px;
}

header .gnav li a {
  display: inline-block;
  position: relative;
  font-size: 14px;
  font-weight: 700;
  min-width: 80px;
  text-align: center;
  padding-top: 53px;
  color: #040000;
}

header .gnav li a::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 0;
  transform: translateX(-50%) rotate(0deg);
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
  background-position: 0 0;
  background-repeat: no-repeat;
  background-size: 80px 46px;
  width: 86px;
  height: 46px;
}

header .gnav li a.agri::after {
  background-image: url("/assets/images/common/nav_img01.png");
}

header .gnav li a.service::after {
  background-image: url("/assets/images/common/nav_img02.png");
}

header .gnav li a.ceresamos::after {
  background-image: url("/assets/images/common/nav_img03.png");
}

header .gnav li a.store::after {
  background-image: url("/assets/images/common/nav_img04.png");
}

header .gnav li a.about::after {
  background-image: url("/assets/images/common/nav_img05.png");
}

header .gnav li a:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

header .gnav li a:hover::after {
  transform: translateX(-50%) rotate(10deg);
}

header .header-top__nav li.site-search {
  padding: 0 10px;
  width: 250px;
}

.form.gsc-search-box {
  margin-bottom: 0;
}

.gsib_a {
  padding: 0 !important;
}

.table.gsc-search-box td.gsc-input {
  padding-right: 5px;
}

.menu-trigger {
  position: absolute;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  z-index: 5000;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 24px;
  transition: 0.6s cubic-bezier(0.33, 1, 0.68, 1);
  cursor: pointer;
  display: none;
}

.menu-trigger .menu-hamburger {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 44px;
  height: 24px;
  z-index: 1100;
}

.menu-trigger .menu-hamburger span {
  position: absolute;
  right: 0;
  height: 4px;
  background-color: #fff;
  width: 100%;
  display: inline-block;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
  box-sizing: border-box;
}

.menu-trigger .menu-hamburger span:nth-of-type(1) {
  top: 0px;
}

.menu-trigger .menu-hamburger span:nth-of-type(2) {
  top: 10px;
}

.menu-trigger .menu-hamburger span:nth-of-type(3) {
  bottom: 0px;
}

.menu-trigger.active .menu-hamburger {
  margin-top: 0.5em;
}

.menu-trigger.active .menu-hamburger span:nth-of-type(1) {
  top: 0;
  transform: translateY(4px) rotate(-45deg);
}

.menu-trigger.active .menu-hamburger span:nth-of-type(2) {
  opacity: 0;
}

.menu-trigger.active .menu-hamburger span:nth-of-type(3) {
  bottom: 1px;
  transform: translateY(-15px) rotate(45deg);
}

/* SP */
@media screen and (max-width: 960px) {
  header {
    display: flex;
    align-items: center;
    padding: 0.2em 1em 0.5em;
    height: calc(140 / 750 * 100vw);
  }
  header .header-top {
    max-width: 100%;
    display: none;
    margin: 0 auto;
  }
  header .header-inner {
    max-width: 100%;
  }
  header .header-inner .logo {
    width: calc(323 / 750 * 100vw);
    margin-bottom: 0;
  }
  header .header-inner .gnav {
    display: none;
  }
  header.move {
    position: fixed;
    top: 0;
    transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
  }
  .menu-trigger {
    display: flex;
    right: 0;
    width: calc(140 / 750 * 100vw);
    height: calc(140 / 750 * 100vw);
    background-color: #1d2974;
  }
  .menu-trigger .menu-hamburger {
    width: calc(60 / 750 * 100vw);
    height: calc(36 / 750 * 100vw);
  }
  .menu-trigger .menu-hamburger span {
    height: calc(4 / 750 * 100vw);
  }
  .menu-trigger .menu-hamburger span:nth-of-type(1) {
    top: 0px;
  }
  .menu-trigger .menu-hamburger span:nth-of-type(2) {
    top: calc(16 / 750 * 100vw);
  }
  .menu-trigger .menu-hamburger span:nth-of-type(3) {
    bottom: 0px;
  }
  .menu-trigger.active {
    transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
  }
  .menu-trigger.active .menu-hamburger {
    margin-top: 0.5em;
  }
  .menu-trigger.active .menu-hamburger span:nth-of-type(1) {
    top: 0;
    transform: translateY(calc(0 / 750 * 100vw)) rotate(-45deg);
  }
  .menu-trigger.active .menu-hamburger span:nth-of-type(2) {
    opacity: 0;
  }
  .menu-trigger.active .menu-hamburger span:nth-of-type(3) {
    bottom: 1px;
    transform: translateY(calc(-30 / 750 * 100vw)) rotate(45deg);
  }
}

/* -----------------------------------------------------------
Modal Menu
----------------------------------------------------------- */
#menu_overlay {
  display: none;
  position: fixed;
  z-index: 2000;
  top: 72px;
  left: 0;
  width: 100%;
  height: 120%;
  background-color: #1d2974;
}

#menu_modal {
  display: none;
  position: fixed;
  top: 72px;
  left: 50%;
  z-index: 2100;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  overflow: auto;
  transform: translateZ(0px) translateX(-50%);
  -webkit-overflow-scrolling: touch;
}

#menu_modal.active {
  display: block;
}

.menu_modal__inner::-webkit-scrollbar {
  width: 3px;
}

.menu_modal__inner::-webkit-scrollbar-thumb {
  border-radius: 4px;
  background: #fff;
}

.menu_modal__inner::-webkit-scrollbar-track {
  background: #403f44;
}

.menu_modal__inner::-webkit-scrollbar-track-piece {
  background: #403f44;
}

.menu_modal__inner .menu_modal__scroll {
  display: flex;
  justify-content: space-between;
  flex-direction: column;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 960px) {
  #menu_overlay {
    width: 100%;
    top: 0;
  }
  #menu_modal {
    margin-top: calc(140 / 750 * 100vw);
    width: 100%;
    height: 100%;
    top: 0;
  }
  .menu_modal__list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
    padding: calc(60 / 750 * 100vw) 0 calc(160 / 750 * 100vw) 0;
  }
  .menu_modal__list .modal-nav {
    display: flex;
    flex-direction: column;
    width: 100%;
    margin: 0 auto;
    padding: 0 1em;
    box-sizing: border-box;
  }
  .menu_modal__list .modal-nav li {
    border-bottom: 1px solid #fff;
  }
  .menu_modal__list .modal-nav li:first-child {
    border-top: 1px solid #fff;
  }
  .menu_modal__list .modal-nav li a {
    display: flex;
    align-items: center;
    width: 100%;
    height: calc(100 / 750 * 100vw);
    padding: 1em;
    color: #fff;
    line-height: 1.2;
    position: relative;
    background-color: #1d2974;
    box-sizing: border-box;
  }
  .menu_modal__list .modal-nav li a span {
    font-size: calc(26 / 750 * 100vw);
    font-weight: 700;
    letter-spacing: 0.06em;
  }
  .menu_modal__list .modal-nav li a:hover {
    opacity: 0.7;
    transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
  }
  .menu_modal__list .modal-nav li.site-search {
    padding: 1em;
  }
}

/* Footer
------------------------------------------------------------------------------- */
footer {
  font-family: "ヒラギノ角ゴ Pro", "Noto Sans JP", YuGothic, "Yu Gothic", "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Helvetica Neue", "メイリオ", Meiryo, "ＭＳ ゴシック", Osaka, sans-serif;
  position: relative;
  z-index: 10;
}

footer .footer-content {
  background: url("/assets/images/common/bg_footer.jpg") no-repeat 50% 0/cover;
  padding: 0 1em;
  min-height: 1000px;
}

footer .footer-content__inner {
  max-width: 1100px;
  padding: 48px 68px;
  margin: 0 auto;
}

footer .footer-content__inner .bnr-list {
  margin-bottom: 105px;
}

footer .footer-content__inner .bnr-list__fix {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  -moz-column-gap: 10px;
       column-gap: 10px;
  row-gap: 10px;
  margin-bottom: 26px;
}

footer .footer-content__inner .bnr-list__fix li a {
  display: block;
  width: 100%;
}

footer .footer-content__inner .bnr-list__fix li a:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

footer .footer-content__inner .bnr-list__fix li a img {
  width: 100%;
}

footer .footer-content__inner .bnr-list__slides {
  padding: 0 70px;
}

footer .footer-content__inner .bnr-list__slides li {
  margin-right: 8px;
  margin-left: 8px;
  width: 161px;
}

footer .footer-content__inner .bnr-list__slides li a {
  display: block;
  width: 100%;
}

footer .footer-content__inner .bnr-list__slides li a:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

footer .footer-content__inner .bnr-list__slides li a img {
  width: 100%;
}

footer .footer-content__inner .nav-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  -moz-column-gap: 20px;
       column-gap: 20px;
}

footer .footer-content__inner .nav-list dl dt {
  font-size: 21px;
  font-weight: 700;
  margin-bottom: 0.4em;
}

footer .footer-content__inner .nav-list dl dt + dt {
  margin-top: 1em;
}

footer .footer-content__inner .nav-list dl dt a {
  color: #040000;
  font-feature-settings: 'palt';
}

footer .footer-content__inner .nav-list dl dt a:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

footer .footer-content__inner .nav-list dl dd {
  margin-bottom: 0.5em;
  font-weight: 400;
}

footer .footer-content__inner .nav-list dl dd a {
  display: inline-block;
  color: #040000;
  margin-left: 1.2em;
  text-indent: -1.2em;
  font-feature-settings: 'palt';
}

footer .footer-content__inner .nav-list dl dd a:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

footer .footer-content__inner .nav-list dl dd a span {
  position: relative;
  padding-left: 20px;
}

footer .footer-content__inner .nav-list dl dd a span::before {
  content: '';
  position: absolute;
  top: 5px;
  left: 5px;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #040000;
  border-right: 0;
}

footer .footer-nav {
  background-color: rgba(225, 230, 221, 0.3);
}

footer .footer-nav__inner {
  max-width: 1100px;
  padding: 26px 68px 64px;
  margin: 0 auto;
  display: flex;
}

footer .footer-nav__inner ul + ul {
  margin-left: 80px;
}

footer .footer-nav__inner ul li a {
  font-size: 12px;
  font-weight: 700;
  color: #3d3a39;
}

footer .copyright {
  padding: 1em;
  text-align: center;
}

/* SP */
@media screen and (max-width: 960px) {
  footer .footer-content {
    background: url("/assets/images/common/bg_footer.jpg") no-repeat 50% 0/cover;
    padding: 0 1em;
    min-height: 100%;
  }
  footer .footer-content__inner {
    max-width: 100%;
    padding: 1.5em 0;
  }
  footer .footer-content__inner .bnr-list {
    margin-bottom: 3em;
  }
  footer .footer-content__inner .bnr-list__fix {
    grid-template-columns: repeat(2, 1fr);
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
    row-gap: 0.5em;
    margin-bottom: 1em;
  }
  footer .footer-content__inner .bnr-list__slides {
    padding: 0 calc(80 / 750 * 100vw);
  }
  footer .footer-content__inner .bnr-list__slides li {
    margin-right: 0.5em;
    margin-left: 0.5em;
    width: 100%;
  }
  footer .footer-content__inner .nav-list {
    grid-template-columns: repeat(1, 1fr);
    -moz-column-gap: 1.5em;
         column-gap: 1.5em;
    padding: 0 1.2em 60em;
  }
  footer .footer-content__inner .nav-list dl {
    margin-bottom: 1.5em;
  }
  footer .footer-content__inner .nav-list dl dt {
    font-size: calc(30 / 750 * 100vw);
    font-weight: 700;
    margin-bottom: 0.6em;
  }
  footer .footer-content__inner .nav-list dl dt + dt {
    margin-top: 1em;
  }
  footer .footer-content__inner .nav-list dl dd {
    margin-bottom: 0.5em;
  }
  footer .footer-content__inner .nav-list dl dd a {
    font-size: calc(26 / 750 * 100vw);
    margin-left: 1.2em;
    text-indent: -1.2em;
  }
  footer .footer-content__inner .nav-list dl dd a span {
    padding-left: 1.2em;
  }
  footer .footer-nav__inner {
    max-width: 100%;
    padding: 1.8em 1.5em 2em;
    flex-direction: column;
  }
  footer .footer-nav__inner ul + ul {
    margin-left: 0;
  }
  footer .footer-nav__inner ul li {
    margin-bottom: 0.5em;
  }
  footer .footer-nav__inner ul li a {
    font-size: calc(26 / 750 * 100vw);
  }
  footer .copyright {
    padding: 1.5em;
    font-size: calc(20 / 750 * 100vw);
  }
}

footer .footer-content {
  position: relative;
  min-height: auto;
}

footer .footer-content::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.3);
}

footer .footer-content__inner {
  position: relative;
  z-index: 10;
}

footer .footer-content__inner .bnr-list {
  margin-bottom: 70px;
}

footer .footer-content__inner .nav-list {
  grid-template-columns: repeat(4, auto);
  text-shadow: 0px 0px 1px white;
}

@media screen and (max-width: 960px) {
  footer .footer-content__inner .nav-list {
    /* grid-template-columns: repeat(1, 1fr);
		padding: 0 1.2em; */
    display: none;
  }
}

footer .footer-content__inner .nav-list dl dt {
  font-size: 18px;
}

footer .footer-content__inner .nav-list dl dd {
  font-size: 14px;
  font-weight: 500;
}

footer .footer-content__inner .nav-list dl dt a span {
  position: relative;
}

footer .footer-content__inner .nav-list dl dt a span::before {
  content: '';
  position: absolute;
  top: 10px;
  left: -16px;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #040000;
  border-right: 0;
}

footer .footer-content__inner .nav-list {
  grid-template-columns: repeat(4, auto);
  text-shadow: 0px 0px 1px white;
}

@media screen and (max-width: 960px) {
  footer .footer-content__inner .nav-list {
    /* grid-template-columns: repeat(1, 1fr);
		padding: 0 1.2em; */
    display: none;
  }
}

footer .footer-content__inner .nav-list dl dt {
  font-size: 18px;
}

footer .footer-content__inner .nav-list dl dd {
  font-size: 14px;
  font-weight: 500;
}

footer .footer-content__inner .nav-list dl dt a span {
  position: relative;
}

footer .footer-content__inner .nav-list dl dt a span::before {
  content: '';
  position: absolute;
  top: 10px;
  left: -16px;
  width: 0;
  height: 0;
  border-style: solid;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid #040000;
  border-right: 0;
}

/*
	File Name   : page.scss
	Description : 各ページの共通用

*/
/* 01.[TOP]
----------------------------------------------------------- */
/*
	File Name   : page-contact.scss
	Description : お問い合わせフォームページ用

*/
/* TABLE
----------------------------------------------------------- */
.table-form {
  width: 100%;
  margin-bottom: 3em;
  border-collapse: collapse;
}

.table-form th,
.table-form td {
  padding: 20px 30px;
  box-sizing: border-box;
  text-align: left;
  border: 1px solid #acacac;
}

.table-form th {
  width: 360px;
  font-size: 18px;
  font-weight: 700;
  vertical-align: top;
  background-color: #f6f6f6;
  position: relative;
}

.table-form th.required span {
  display: flex;
  align-items: center;
}

.table-form th.required span::after {
  content: '必須';
  width: 60px;
  height: 30px;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ea6363;
  font-size: 16px;
  color: #fff;
  position: absolute;
  right: 30px;
  top: 20px;
}

.table-form td label {
  cursor: pointer;
}

.table-form__typelist {
  margin-bottom: 1em;
  display: grid;
  gap: 0.5em;
  grid-template-columns: repeat(auto-fill, minmax(190px, 1fr));
}

.table-form__typelist + p {
  line-height: 1.5;
}

.table-form .label-name {
  display: flex;
}

.table-form .label-name div {
  display: flex;
  align-items: center;
  white-space: nowrap;
}

.table-form .label-name div + div {
  margin-left: 30px;
}

.table-form .label-name div span {
  display: inline-block;
  margin-right: 10px;
  font-weight: 700;
}

.table-form.comform {
  margin-top: 4em;
}

.ttl-type-privacy {
  text-align: center;
  font-size: 18px;
  font-weight: 700;
  margin-bottom: 1.8em;
}

.privacy-box {
  box-sizing: border-box;
  overflow: auto;
  height: 410px;
  padding: 30px 20px;
  text-align: left;
  border: 1px solid #000000;
  background: #fff;
  margin: 0.5rem 0 2rem;
  -webkit-overflow-scrolling: touch;
}

.privacy-box p + p {
  margin-top: 1.5em;
}

.agreement-info .agreement-check {
  display: flex;
  align-items: center;
  justify-content: center;
  padding-right: 70px;
}

.agreement-info .agreement-check.required span {
  display: inline-flex;
  align-items: center;
  letter-spacing: -0.03em;
  font-size: 16px;
  position: relative;
}

.agreement-info .agreement-check.required span::after {
  content: '必須';
  width: 60px;
  height: 30px;
  border-radius: 15px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #ea6363;
  font-size: 16px;
  color: #fff;
  position: absolute;
  right: -70px;
  top: 50%;
  transform: translateY(-50%);
}

.agreement-info input[type='checkbox'] + span {
  font-size: 16px;
}

.btn-submit {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  max-width: 340px;
  width: 100%;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 2.8em 0.1em 1.6em;
  box-sizing: border-box;
  position: relative;
  letter-spacing: -0.03em;
  outline: none;
  border: 0;
  background: #e9a530 url("/assets/images/common/icon_btn_arw_white.svg") no-repeat 93% 50%/12px 9px;
}

.btn-submit:hover {
  opacity: 0.7;
  background: #e9a530 url("/assets/images/common/icon_btn_arw_white.svg") no-repeat 96% 50%/12px 9px;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-submit.reserve {
  background: #916ae6 url("/assets/images/common/icon_btn_arw_white.svg") no-repeat 93% 50%/12px 9px;
}

.btn-submit.reserve:hover {
  opacity: 0.7;
  background: #916ae6 url("/assets/images/common/icon_btn_arw_white.svg") no-repeat 96% 50%/12px 9px;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-submit.info {
  background: #7798d9 url("/assets/images/common/icon_btn_arw_white.svg") no-repeat 93% 50%/12px 9px;
}

.btn-submit.info:hover {
  opacity: 0.7;
  background: #7798d9 url("/assets/images/common/icon_btn_arw_white.svg") no-repeat 96% 50%/12px 9px;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-back {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff !important;
  font-size: 18px;
  font-weight: 900;
  max-width: 340px;
  width: 100%;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 2.8em 0.1em 1.6em;
  box-sizing: border-box;
  position: relative;
  letter-spacing: -0.03em;
  outline: none;
  border: 0;
  background: #aeaeae url("/assets/images/common/icon_btn_arw_back.svg") no-repeat 8% 50%/12px 9px;
}

.btn-back:hover {
  opacity: 0.7;
  background: #aeaeae url("/assets/images/common/icon_btn_arw_back.svg") no-repeat 4% 50%/12px 9px;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-back-frame {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #000000 !important;
  font-size: 18px;
  font-weight: 900;
  max-width: 340px;
  width: 100%;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 2.8em 0.1em 1.6em;
  box-sizing: border-box;
  position: relative;
  letter-spacing: -0.03em;
  outline: none;
  border: 3px solid #000000;
  background: url("/assets/images/common/icon_btn_arw_back-bk.svg") no-repeat 8% 50%/12px 9px;
  line-height: 1.3;
}

.btn-back-frame:hover {
  opacity: 0.7;
  background: url("/assets/images/common/icon_btn_arw_back-bk.svg") no-repeat 4% 50%/12px 9px;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}

.btn-comform {
  display: flex;
  justify-content: center;
  max-width: 880px;
  width: 100%;
  margin: 0 auto;
}

.btn-comform .btn-back {
  margin-right: 1em;
}

@media screen and (max-width: 1280px) {
  .table-form th {
    width: 320px;
  }
}

/* SP */
@media screen and (max-width: 960px) {
  .table-form {
    border-top: 1px solid #aeaeae;
  }
  .table-form tr {
    display: flex;
    flex-wrap: wrap;
  }
  .table-form th,
  .table-form td {
    display: block;
    border-top: 0;
    border-bottom: 1px solid #aeaeae;
    float: left;
    width: 100%;
  }
  .table-form th {
    width: 100%;
    padding: 0.5em 1em 0.8em;
    font-size: calc(28 / 750 * 100vw);
    border-bottom: 0;
    padding-right: calc(80 / 750 * 100vw);
  }
  .table-form th.required span::after {
    width: calc(80 / 750 * 100vw);
    height: calc(50 / 750 * 100vw);
    border-radius: calc(25 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
    right: 1em;
    top: 50%;
    transform: translateY(-50%);
  }
  .table-form td {
    padding: 1em;
  }
  .table-form__typelist {
    margin-bottom: 1em;
    display: flex;
    flex-direction: column;
  }
  .table-form__typelist li + li {
    margin-top: 0.8em;
  }
  .table-form__typelist + p {
    line-height: 1.5;
  }
  .table-form .label-name {
    justify-content: space-between;
    height: 50px;
  }
  .table-form .label-name div {
    width: calc(50% - 10px);
  }
  .table-form .label-name div + div {
    margin-left: 0;
  }
  .table-form .label-name div span {
    margin-right: 10px;
  }
  .table-form.comform {
    margin-top: 2em;
  }
  .ttl-type-privacy {
    margin-bottom: 1em;
    font-size: calc(32 / 750 * 100vw);
  }
  .privacy-box {
    height: calc(500 / 750 * 100vw);
    padding: 1em;
    margin: 0.5rem 0 2rem;
    font-size: calc(22 / 750 * 100vw);
  }
  .privacy-box p + p {
    margin-top: 1.5em;
  }
  .agreement-info .agreement-check.required span {
    font-size: calc(24 / 750 * 100vw);
  }
  .agreement-info .agreement-check.required span::after {
    width: calc(80 / 750 * 100vw);
    height: calc(50 / 750 * 100vw);
    border-radius: calc(25 / 750 * 100vw);
    font-size: calc(20 / 750 * 100vw);
    right: calc(-85 / 750 * 100vw);
    top: 50%;
    transform: translateY(-50%);
  }
  .agreement-info input[type='checkbox'] + span {
    font-size: calc(24 / 750 * 100vw);
  }
  .btn-comform {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column-reverse;
    max-width: 100%;
  }
  .btn-comform .btn-back {
    margin-right: 0;
    margin-top: 1em;
  }
}

/* Form Default
----------------------------------------------------------- */
button {
  cursor: pointer;
}

button,
input[type='button'],
input[type='submit'],
input[type='reset'] {
  cursor: pointer;
}

@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop,
  button,
  input[type='button'],
  input[type='submit'],
  input[type='reset'] {
    -ms-transition: none;
    transition: none;
  }
  /* IE11 */
}

button,
input,
select,
textarea {
  font-family: "Zen Old Mincho", serif;
}

/*----*/
input[type='text'],
input[type='tel'],
input[type='email'],
input[type='password'],
textarea {
  width: 100%;
  padding: 10px 15px;
  border: 1px solid #d0d0d0;
  border-radius: 2px;
  background: #fbfbfb;
  font-size: 16px;
  box-sizing: border-box;
}

input[type='text']::-moz-placeholder, input[type='tel']::-moz-placeholder, input[type='email']::-moz-placeholder, input[type='password']::-moz-placeholder, textarea::-moz-placeholder {
  color: #bfbfbf;
}

input[type='text']:-ms-input-placeholder, input[type='tel']:-ms-input-placeholder, input[type='email']:-ms-input-placeholder, input[type='password']:-ms-input-placeholder, textarea:-ms-input-placeholder {
  color: #bfbfbf;
}

input[type='text']::placeholder,
input[type='tel']::placeholder,
input[type='email']::placeholder,
input[type='password']::placeholder,
textarea::placeholder {
  color: #bfbfbf;
}

input[type='text']:focus,
input[type='tel']:focus,
input[type='email']:focus,
input[type='password']:focus,
textarea:focus {
  outline: none;
  background-color: #fff4e6;
  border: 1px solid #adb57f;
}

textarea {
  width: 100%;
  background-color: #fbfbfb;
  border: 1px solid #d0d0d0;
  border-radius: 3px;
  box-sizing: border-box;
  padding: 17px;
  font-size: 16px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
}

select {
  height: 40px;
  padding: 0 5px;
  border: 1px solid #d0d0d0;
  border-radius: 2px;
  background: #fbfbfb;
  outline: none;
}

/* checkbox */
input[type='checkbox'] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 20px;
  height: 20px;
  transition: all 0.15s ease-out 0s;
  color: #fff;
  cursor: pointer;
  outline: none;
  margin-right: 8px;
  border: 1px solid #d0d0d0;
  border-radius: 3px;
  background: #fbfbfb;
}

input[type='checkbox']::before, input[type='checkbox']::after {
  position: absolute;
  content: '';
  background: #fff;
  transition: all 0.2s ease-in-out;
}

input[type='checkbox']::before {
  left: 3px;
  top: 10px;
  width: 5px;
  height: 2px;
  transform: rotate(45deg);
}

input[type='checkbox']::after {
  right: 7px;
  bottom: 3px;
  width: 2px;
  height: 10px;
  transform: rotate(40deg);
}

input[type='checkbox']:checked {
  background: #ea6363;
}

/* radio */
input[type='radio'] {
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  position: relative;
  display: inline-flex;
  align-items: center;
  width: 25px;
  height: 25px;
  transition: all 0.15s ease-out 0s;
  cursor: pointer;
  outline: none;
  margin-right: 8px;
  border: 1px solid #acacac;
  border-radius: 50%;
  background: #f8f8f8;
}

input[type='radio']:checked {
  background: #fff;
}

input[type='radio']:checked::before {
  position: absolute;
  content: '';
  transition: all 0.2s ease-in-out;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  border-radius: 50%;
  width: 10px;
  height: 10px;
  background: #ea6363;
}

/* SP */
@media screen and (max-width: 960px) {
  /* checkbox */
  input[type='checkbox'] {
    top: 0;
    width: calc(42 / 750 * 100vw);
    height: calc(42 / 750 * 100vw);
    max-height: 25px;
    max-width: 25px;
    vertical-align: middle;
    margin-right: 8px;
  }
  input[type='checkbox']::before {
    left: 4px;
    top: 13px;
    width: 7px;
    height: 2px;
  }
  input[type='checkbox']::after {
    right: 7px;
    bottom: 4px;
    width: 2px;
    height: 15px;
  }
  /* radio */
  input[type='radio'] {
    width: calc(42 / 750 * 100vw);
    height: calc(42 / 750 * 100vw);
    margin-right: calc(18 / 750 * 100vw);
    vertical-align: -0.5rem;
    max-height: 25px;
    max-width: 25px;
  }
  input[type='radio']:checked::before {
    width: calc(18 / 750 * 100vw);
    height: calc(18 / 750 * 100vw);
    max-height: 13px;
    max-width: 13px;
  }
}

/* [BOX] -----------------------------------------*/
.check-group label + label {
  margin-left: 1.5em;
}

.check-group.column {
  display: flex;
  flex-direction: column;
}

.check-group.column label + label {
  margin-left: 0;
  margin-top: 1em;
}

.form-check {
  display: inline-flex;
  align-items: center;
}

.form-column {
  display: flex;
  align-items: center;
}

.form-column label {
  margin-right: 10px;
}

.select-days {
  display: flex;
}

.select-days label {
  display: flex;
  align-items: center;
}

.select-days label.year {
  width: 20%;
  margin-right: 1em;
}

.select-days label.month {
  width: 18%;
  margin-right: 1em;
}

.select-days label.days {
  width: 18%;
}

.select-days label span {
  font-size: 16px;
  padding-left: 8px;
}

.select-days label input[type='text'] {
  text-align: right;
}

.zip-group {
  display: flex;
  align-items: center;
}

.zip-group input {
  width: 20%;
}

.zip-group span {
  padding-right: 5px;
}

/* SP */
@media screen and (max-width: 960px) {
  .check-group label + label {
    margin-left: 1.5em;
  }
  .check-group.sp-row3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    -moz-column-gap: 0.5em;
         column-gap: 0.5em;
    row-gap: 1em;
  }
  .check-group.sp-row3 label + label {
    margin-left: 0;
  }
  .select-days label span {
    font-size: calc(24 / 750 * 100vw);
    padding-left: 0.2em;
  }
}

/* [error] -----------------------------------------*/
input[type='text'].error,
input[type='email'].error,
input[type='tel'].error,
textarea.error,
input[type='radio'].error,
input[type='checkbox'].error,
select.error {
  border-color: #ff0000;
  border-width: 1px;
  background: #fae1ea;
}

.error-msg {
  margin-top: 5px;
  color: #ff0000;
  text-align: left;
}

.error-msg-c {
  margin-bottom: 10px;
  background: #fae1ea;
  padding: 1.5em;
  border: 5px solid #ff0000;
  margin-bottom: 1.5em;
}

.error-msg-c p {
  color: #ff0000;
  font-weight: 700;
}

.error input[type='radio'],
.error input[type='checkbox'] {
  border-color: #ff0000;
  background: #fae1ea;
}

/* SP */
@media screen and (max-width: 960px) {
  .error-msg {
    font-size: 16px;
  }
  .error-msg-c {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  input[type='text'],
  input[type='tel'],
  input[type='email'],
  input[type='password'],
  textarea {
    font-size: 16px;
  }
  .error-msg {
    font-size: 16px;
  }
  .error-msg-c {
    font-size: 16px;
  }
}

/* NEWS 詳細*/
.article-post {
  margin-bottom: 5em;
}

.article-post h1.info-title {
  margin-bottom: 2em;
  padding-bottom: 0.5em;
  border-bottom: solid 1px #916ae6;
  font-size: 28px;
}

.article-post h2 {
  margin-bottom: 0.5em;
  padding-left: 0.5em;
  border-left: solid 8px #916ae6;
}

.article-post h3 {
  margin-bottom: 0.5em;
  padding-bottom: 0.5em;
  border-bottom: solid 1px #916ae6;
}

.article-post p {
  margin-bottom: 1em;
  line-height: 2em;
}

.article-post figure {
  padding: 1em 0;
}

.article-post figcaption {
  padding-top: 0.5em;
}

.article-post img {
  max-width: 100%;
  width: auto;
}

.article-post ul {
  margin: 1em 0 1em 2em;
  list-style: inherit;
}

.article-post ol {
  margin: 1em 0 1em 2em;
  list-style: decimal;
}

.article-post strong {
  font-weight: 900;
}

.article-post table th,
.article-post table td {
  padding: 0.5em;
  line-height: 1.5;
}

.article-post a {
  text-decoration: underline;
}

.article-post a:hover {
  text-decoration: none;
}

.article-post a:not(.wp-element-button) {
  text-decoration: none;
}

.article-post p + h2,
.article-post p + h3,
.article-post p + h4,
.article-post div + h2,
.article-post div + h3,
.article-post div + h4,
.article-post figure + h2,
.article-post figure + h3,
.article-post figure + h4,
.article-post ul + h2,
.article-post ul + h3,
.article-post ul + h4,
.article-post ol + h2,
.article-post ol + h3,
.article-post ol + h4,
.article-post blockquote + h2,
.article-post blockquote + h3,
.article-post blockquote + h4 {
  margin-top: 2em;
}

.wp-block-buttons > .wp-block-button {
  margin: 5px;
}

.wp-block-button__link {
  background-color: #916ae6;
  text-decoration: none !important;
  color: #fff !important;
}

.wp-block-button.is-style-outline > .wp-block-button__link:not(.has-text-color),
.wp-block-button .wp-block-button__link.is-style-outline:not(.has-text-color) {
  color: #916ae6;
}

/*# sourceMappingURL=style.css.map */



/*------------------------------------
2024.03.05 武元追記
-------------------------------------*/
.btn-icon--link {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #2fa4ec;
  font-size: 16px;
  font-weight: 900;
  max-width: 310px;
  width: 100%;
  height: 70px;
  border-radius: 35px;
  padding: 0.1em 2.8em 0.1em 1.6em;
  line-height: 1.2;
  background-color: #fff;
  position: relative;
  border: 3px solid #2fa4ec;
  box-sizing: border-box;
  letter-spacing: -0.03em;
}

.btn-icon--link::after {
  content: '';
  position: absolute;
  right: 1.5em;
  transform: rotate(-90deg);
  background: url("/assets/images/common/icon_down-arw_blue.svg") no-repeat 100% 50%/12px 13px;
  width: 12px;
  height: 13px;
}

.btn-icon--link:hover {
  opacity: 0.7;
  transition: 0.4s cubic-bezier(0.33, 1, 0.68, 1);
}


/* SP */
@media screen and (max-width: 960px) {

  .btn-icon--link {
    max-width: 100%;
  }
}

.frame-wrapper {
  position: relative;
  padding-bottom: 56.25%;
  width: 100%;
  height: 0;
  overflow: hidden;
}

.frame-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/*------------------------------------
2025.02.20 武元追記
-------------------------------------*/

.recruit_bnr {
  border: 1px solid #dcdcdc;
  padding: 5px 20px 0px 20px;
  margin: 0px 10px;
}

@media screen and (max-width: 960px) {
  .recruit_bnr_innner {
    text-align: center;
  }

  .recruit_bnr {
  margin-bottom: 15px;
}


}