@charset "UTF-8";
.mainColor {
  color: #C83B2C; }

.c-red {
  color: red; }

.bg-gray {
  background: #f2f2f2; }

.bg-yellow {
  background: #FFFDDB; }

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

.section-line {
  border: none;
  width: calc(100% - 32px);
  max-width: 1200px;
  height: 1px;
  margin: auto;
  background: #161925; }

/* Document
 * ========================================================================== */
/**
 * Add border box sizing in all browsers (opinionated).
 */
*,
::before,
::after {
  box-sizing: border-box; }

/**
 * 1. Add text decoration inheritance in all browsers (opinionated).
 * 2. Add vertical alignment inheritance in all browsers (opinionated).
 */
::before,
::after {
  text-decoration: inherit;
  /* 1 */
  vertical-align: inherit;
  /* 2 */ }

/**
 * 1. Use the default cursor in all browsers (opinionated).
 * 2. Change the line height in all browsers (opinionated).
 * 3. Use a 4-space tab width in all browsers (opinionated).
 * 4. Remove the grey highlight on links in iOS (opinionated).
 * 5. Prevent adjustments of font size after orientation changes in
 *    IE on Windows Phone and in iOS.
 * 6. Breaks words to prevent overflow in all browsers (opinionated).
 */
html {
  cursor: default;
  /* 1 */
  line-height: 1.5;
  /* 2 */
  -moz-tab-size: 4;
  /* 3 */
  tab-size: 4;
  /* 3 */
  -webkit-tap-highlight-color: transparent;
  -ms-text-size-adjust: 100%;
  /* 5 */
  -webkit-text-size-adjust: 100%;
  /* 5 */
  word-break: break-word;
  /* 6 */ }

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

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Edge, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/* Grouping content
 * ========================================================================== */
/**
 * Remove the margin on nested lists in Chrome, Edge, IE, and Safari.
 */
dl dl,
dl ol,
dl ul,
ol dl,
ul dl {
  margin: 0; }

/**
 * Remove the margin on nested lists in Edge 18- and IE.
 */
ol ol,
ol ul,
ul ol,
ul ul {
  margin: 0; }

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

/**
 * Add the correct display in IE.
 */
main {
  display: block; }

/**
 * Remove the list style on navigation lists in all browsers (opinionated).
 */
nav ol,
nav ul {
  list-style: none;
  padding: 0; }

/**
 * 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; }

/**
 * Add the correct text decoration in Edge 18-, IE, and Safari.
 */
abbr[title] {
  text-decoration: underline;
  text-decoration: underline dotted; }

/**
 * 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%; }

/* Embedded content
 * ========================================================================== */
/*
 * Change the alignment on media elements in all browsers (opinionated).
 */
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle; }

/**
 * Add the correct display in IE 9-.
 */
audio,
video {
  display: inline-block; }

/**
 * Add the correct display in iOS 4-7.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Remove the border on iframes in all browsers (opinionated).
 */
iframe {
  border-style: none; }

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

/**
 * Change the fill color to match the text color in all browsers (opinionated).
 */
svg:not([fill]) {
  fill: currentColor; }

/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden; }

/* Tabular data
 * ========================================================================== */
/**
 * Collapse border spacing in all browsers (opinionated).
 */
table {
  border-collapse: collapse; }

/* Forms
 * ========================================================================== */
/**
 * Remove the margin on controls in Safari.
 */
button,
input,
select {
  margin: 0; }

/**
 * 1. Show the overflow in IE.
 * 2. Remove the inheritance of text transform in Edge 18-, Firefox, and IE.
 */
button {
  overflow: visible;
  /* 1 */
  text-transform: none;
  /* 2 */ }

/**
 * Correct the inability to style buttons in iOS and Safari.
 */
 /* 送信、修正ボタンのコード*/
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  height: 56px;
  color: #fff;
  font-weight: 700;
  background: #378ABE;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  max-width: 344px;
  font-size: 16px;
  margin: 0 auto;
  margin-top: 10px;
  border-radius: 8px;
  box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.25);
  cursor: pointer; 
   }
/* 送信、修正ボタンのコード*/
button,
[type="button"],
[type="reset"],
[type="submit"] {
      width: 83.2%;
      height: 48px;
      color: #378ABE;
      margin-top: 16px;
      border: 1px solid #378ABE;
      height: 56px;
      color: #fff;
      font-weight: 700;
      background: #378ABE;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      width: 100%;
      max-width: 344px;
      font-size: 16px;
      margin: 0 auto;
       margin-top: 10px;
      border-radius: 8px;
      box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.25);
      cursor: pointer;
}
/* 送信、修正ボタンのコード*/
button,
[type="button"],
[type="reset"],
[type="submit"] {
      transition: opacity .15s; }
button,
[type="button"],
[type="reset"],
[type="submit"]:hover {
   opacity: .7;
}
button,
[type="button"],
[type="reset"],
[type="submit"]:active {
  position:relative;
  top:1px;
}
input[type="checkbox"],
input[type="radio"] {
    /* デフォルトcheckボックス非表示*/
    display: none;
}
.FormNav [type="submit"] + [type="submit"]{
  width: 83.2%;
  height: 48px;
  color: #378ABE;
  margin-top: 16px;
  background: #fff;
  border: 1px solid #378ABE;
}
/* mw formプラグイン用のコード*/
.mwform-checkbox-field-text {
  position: relative;
  display: inline-block;
  padding-left: 34px;
  cursor: pointer;
  -webkit-transition: all .2s;
  -moz-transition: all .2s;
  transition: all .2s;
}
.mwform-checkbox-field-text::before,
.mwform-checkbox-field-text::after {
    position: absolute;
    content: '';
}
.mwform-checkbox-field-text::before {
    top: 50%;
    left: 0;
    width: 24px;
    height: 24px;
    margin-top: -12px;
    background: #fff;
    border: 1px solid #ccc;
    border-radius: 3px;
}
.mwform-checkbox-field-text::after {
  opacity: 0;
  top: 50%;
  left: 5px;
  width: 14px;
  height: 8px;
  margin-top: -6px;
  border-left: 3px solid #3498db;
  border-bottom: 3px solid #3498db;
  -webkit-transform: rotate(-45deg) scale(0.5);
  -moz-transform: rotate(-45deg) scale(0.5);
  transform: rotate(-45deg) scale(0.5);
}
.mwform-checkbox-field-text:hover::before {
  background: #fff;
}
input[type="checkbox"]:checked + .mwform-checkbox-field-text::before {
    /* css擬似要素 :checked が付加されているときは表示  */
    background: #fff;
    border: 1px solid #3498db;
}
input[type="checkbox"]:checked + .mwform-checkbox-field-text::after {
    /* css擬似要素 :checked が付加されているときは表示  */
    opacity: 1;
    -webkit-transform: rotate(-45deg) scale(1);
    -moz-transform: rotate(-45deg) scale(1);
    transform: rotate(-45deg) scale(1);
}
@media screen and (min-width: 835px) {
  .mwform-radio-field-text {
     font-size: 16px;
   }
  }
  /*input[type="radio"] + .mwform-radio-field-text {
    /*width: calc(100% / 3);
    max-width: 172px;
    font-size: 14px;
    text-align: center;
    border: 1px solid #ccc;
    background-color: #fff;
    padding: 15px 0;
    padding-left: 30px;
    padding-right: 30px;
  }*/
  .contactForm__inner:nth-child(10) .horizontal-item{
  	width: calc(100% / 3);
    max-width: 172px;
  }
  .horizontal-item input[type="radio"] + .mwform-radio-field-text{
  	display: inline-block;
    width: 100%;
  	border-radius: 0!important;
    padding: 15px 0!important;
    cursor: pointer;
  }
  .horizontal-item:first-of-type input[type="radio"] + .mwform-radio-field-text {
  	border-radius: 4px 0 0 4px!important;
  }
  .horizontal-item:nth-of-type(2) input[type="radio"] + .mwform-radio-field-text {
  	border-left: none!important;
  }
  .horizontal-item:last-of-type input[type="radio"] + .mwform-radio-field-text {
  	border-left: none!important;
  	border-radius: 0 4px 4px 0!important;
  }
  .contactForm__inner:first-child .horizontal-item{
  	display: inline-block;
    width: 100%;
    margin: 8px 0;
  }
  .contactForm__inner:first-child .mwform-checkbox-field-text{
  	display: inline-block;
    width: 100%;
  }
  @media screen and (min-width: 835px) {
  	.contactForm__inner:first-child .horizontal-item{
  		width: auto;
  		margin: 0;
  	}
  }
  .contactForm__inner:nth-child(12) .mwform-checkbox-field-text{
  	padding-left: 34px!important;
  	padding-right: 0!important;
  }
/**
*ボタンのサイズを統一するためにコメントとして扱っています。
*
*input[type="radio"] + .mwform-radio-field-text:first-of-type {
*    border-radius: 4px 0 0 4px;
*}
*input[type="radio"] + .mwform-radio-field-text:last-of-type {
*    border-radius: 4px 0 0 4px;
*}
*/
input[type="radio"]:checked + .mwform-radio-field-text{
  /* css擬似要素 :checked が付加されているときは表示  */
  color: #fff;
  background-color: #3498db;
  cursor: pointer;
  -webkit-transition: all .2s;
  -moz-transition: all .2s;
  transition: all .2s;
}
/**
 * 1. Change the inconsistent appearance in all browsers (opinionated).
 * 2. Correct the padding in Firefox.
 */
fieldset {
  border: 1px solid #a0a0a0;
  /* 1 */
  padding: 0.35em 0.75em 0.625em;
  /* 2 */ }

/**
 * Show the overflow in Edge 18- and IE.
 */
input {
  overflow: visible; }

/**
 * 1. Correct the text wrapping in Edge 18- and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 */
legend {
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  white-space: normal;
  /* 1 */ }

/**
 * 1. Add the correct display in Edge 18- and IE.
 * 2. Add the correct vertical alignment in Chrome, Edge, and Firefox.
 */
progress {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */ }

/**
 * Remove the inheritance of text transform in Firefox.
 */
select {
  text-transform: none; }

/**
 * 1. Remove the margin in Firefox and Safari.
 * 2. Remove the default vertical scrollbar in IE.
 * 3. Change the resize direction in all browsers (opinionated).
 */
textarea {
  margin: 0;
  /* 1 */
  overflow: auto;
  /* 2 */
  resize: vertical;
  /* 3 */ }

/**
 * Remove the padding in IE 10-.
 */
[type="checkbox"],
[type="radio"] {
  padding: 0; }

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

/**
 * Correct the cursor style of increment and decrement buttons in Safari.
 */
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto; }

/**
 * Correct the text style of placeholders in Chrome, Edge, and Safari.
 */
::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54; }

/**
 * Remove the inner padding in Chrome, Edge, and Safari on macOS.
 */
::-webkit-search-decoration {
  -webkit-appearance: none; }

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

/**
 * Remove the inner border and padding of focus outlines in Firefox.
 */
::-moz-focus-inner {
  border-style: none;
  padding: 0; }

/**
 * Restore the focus outline styles unset by the previous rule in Firefox.
 */
:-moz-focusring {
  outline: 1px dotted ButtonText; }

/**
 * Remove the additional :invalid styles in Firefox.
 */
:-moz-ui-invalid {
  box-shadow: none; }

/* Interactive
 * ========================================================================== */
/*
 * Add the correct display in Edge 18- and IE.
 */
details {
  display: block; }

/*
 * Add the correct styles in Edge 18-, IE, and Safari.
 */
dialog {
  background-color: white;
  border: solid;
  color: black;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content; }

dialog:not([open]) {
  display: none; }

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

/* Scripting
 * ========================================================================== */
/**
 * Add the correct display in IE 9-.
 */
canvas {
  display: inline-block; }

/**
 * Add the correct display in IE.
 */
template {
  display: none; }

/* User interaction
 * ========================================================================== */
/*
 * 1. Remove the tapping delay in IE 10.
 * 2. Remove the tapping delay on clickable elements
      in all browsers (opinionated).
 */
a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
  /* 1 */
  touch-action: manipulation;
  /* 2 */ }

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

/* Accessibility
 * ========================================================================== */
/**
 * Change the cursor on busy elements in all browsers (opinionated).
 */
[aria-busy="true"] {
  cursor: progress; }

/*
 * Change the cursor on control elements in all browsers (opinionated).
 */
[aria-controls] {
  cursor: pointer; }

/*
 * Change the cursor on disabled, not-editable, or otherwise
 * inoperable elements in all browsers (opinionated).
 */
[aria-disabled="true"],
[disabled] {
  cursor: not-allowed; }

/*
 * Change the display on visually hidden accessible elements
 * in all browsers (opinionated).
 */
[aria-hidden="false"][hidden] {
  display: initial; }

[aria-hidden="false"][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute; }

* {
  margin: 0;
  padding: 0; }

body {
  width: 100%;
  color: #161925;
  font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.63;
  background-color: #fff; }
  @media screen and (min-width: 835px) {
    body {
      line-height: 1.75; } }

li {
  list-style-type: none; }

a {
  color: #161925;
  text-decoration: none; }

button {
  border: none; }

#wrapper {
  overflow: hidden; }

input, button, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none; }

input[type="checkbox"],
input[type="radio"] {
  display: none; }

@media screen and (min-width: 835px) {
  .pc {
    display: inherit !important; } }
@media only screen and (max-width: 834px) {
  .pc {
    display: none !important; } }

@media screen and (min-width: 835px) {
  .sp {
    display: none !important; } }
@media only screen and (max-width: 834px) {
  .sp {
    display: inherit; } }

.ContactNav {
  padding: 24px 0; }
  @media screen and (min-width: 835px) {
    .ContactNav {
      padding: 56px 0; } }
  .ContactNav a {
    transition: opacity .15s; }
    .ContactNav a:hover {
      opacity: .7; }
  .ContactNav.yellow-area {
    text-align: center;
    padding: 24px 0;
    background: #FFFDDB; }
    @media screen and (min-width: 835px) {
      .ContactNav.yellow-area {
        padding: 48px 0; } }
    @media screen and (min-width: 835px) {
      .ContactNav.yellow-area .heading {
        font-size: 24px; } }
    .ContactNav.yellow-area p {
      margin-bottom: 16px; }
      @media screen and (min-width: 835px) {
        .ContactNav.yellow-area p {
          font-size: 18px; }
          .ContactNav.yellow-area p br {
            display: none; } }
  .ContactNav__inner {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column; }
    @media screen and (min-width: 835px) {
      .ContactNav__inner {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
    @media screen and (min-width: 835px) {
      .ContactNav__inner {
        flex-direction: row; } }
    @media screen and (min-width: 835px) {
      .ContactNav__inner.reverse {
        flex-direction: row-reverse; } }
    @media screen and (min-width: 835px) {
      .ContactNav__inner.reverse .btn-solid {
        font-size: 20px;
        margin-left: 40px; } }
  .ContactNav__item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    font-weight: 700;
    margin-bottom: 8px;
    box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.25);
    cursor: pointer; }
    @media screen and (min-width: 835px) {
      .ContactNav__item {
        font-size: 18px;
        margin: 0 16px; } }
  .ContactNav .tel_number {
    font-size: 26px;
    line-height: 1;
    letter-spacing: 1px; }
    @media screen and (min-width: 835px) {
      .ContactNav .tel_number {
        font-size: 32px; } }
  .ContactNav .tel_time {
    font-size: 14px;
    padding: 4px 0 0 2em; }
  .ContactNav__Tokuten {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    max-width: 304px;
    font-weight: 700;
    text-align: center;
    padding-top: 8px; }
    @media screen and (min-width: 835px) {
      .ContactNav__Tokuten {
        padding-top: 0; } }
    .ContactNav__Tokuten a {
      transition: opacity .15s; }
      .ContactNav__Tokuten a:hover {
        opacity: .7; }
    .ContactNav__Tokuten .heading {
      color: red;
      margin-bottom: 4px; }
      @media screen and (min-width: 835px) {
        .ContactNav__Tokuten .heading {
          font-size: 16px; } }

.icon-svg {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  flex-direction: row; }
  .icon-svg .icon-tel {
    margin-right: 4px; }
  .icon-svg .c-black {
    color: #161925; }
  .icon-svg .c-white {
    color: #fff; }

.btn-white {
  color: #C83B2C;
  max-width: 368px;
  border: 2px solid #C83B2C;
  border-radius: 8px;
  background-color: #fff; }

.btn-solid {
  max-width: 368px;
  color: #fff;
  border: 2px solid #C83B2C;
  border-radius: 8px;
  background-color: #C83B2C; }

.btn-yellow {
  color: #161925;
  line-height: 48px;
  border-radius: 24px;
  background: #FDF451; }

.btn-size__s {
  height: 40px; }
  @media screen and (min-width: 835px) {
    .btn-size__s {
      height: 72px; } }
.btn-size__m {
  height: 56px; }
  @media screen and (min-width: 835px) {
    .btn-size__m {
      height: 88px; } }
.btn-size__l {
  height: 72px; }
  @media screen and (min-width: 835px) {
    .btn-size__l {
      height: 88px; } }

.Search {
  padding: 24px 0;
  border-top: 2px solid #C83B2C;
  background: #f2f2f2; }
  @media screen and (min-width: 835px) {
    .Search {
      padding: 40px 0; } }
  .Search__inner {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px; }
    @media screen and (min-width: 835px) {
      .Search__inner {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
  .Search__head {
    font-size: 18px;
    font-weight: 700;
    text-align: left;
    margin-bottom: 16px; }
    @media screen and (min-width: 835px) {
      .Search__head {
        font-size: 24px; } }

.SearchNav {
  display: flex;
  flex-wrap: wrap;
  /*justify-content: center;*/ }
  .SearchNav a {
    transition: opacity .15s; }
    .SearchNav a:hover {
      opacity: .7; }
  .SearchNav__item {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    width: 100%;
    height: 56px;
    border-bottom: 1px solid #f2f2f2;
    background: #fff;
    position: relative; }
    @media screen and (min-width: 835px) {
      .SearchNav__item {
        justify-content: center;
        width: 180px;
        height: 160px;
        text-align: center;
        padding: 16px 0;
        margin: 8px; } }
    .SearchNav__item::before {
      display: inline-block;
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      z-index: 1;
      width: 8px;
      height: 8px;
      border-top: 2px solid #888;
      border-right: 2px solid #888;
      transform: rotate(45deg);
      right: 16px; }
      @media screen and (min-width: 835px) {
        .SearchNav__item::before {
          display: none; } }
    .SearchNav__item.is-empty {
      height: 0;
      padding-top: 0;
      padding-bottom: 0;
      margin-top: 0;
      margin-bottom: 0; }
  .SearchNav__icon {
    width: 32px;
    height: 32px;
    margin: 0 16px; }
    @media screen and (min-width: 835px) {
      .SearchNav__icon {
        width: 100%;
        height: 64px; } }

.Product__Icon__area {
  width: 100%;
  height: 22px;
  margin-top: 10px;
  position: relative; }

.Product__Icon {
  position: absolute; }
  .Product__Icon.recommend {
    height: 24px;
    top: 0;
    left: 0; }
    @media screen and (min-width: 835px) {
      .Product__Icon.recommend {
        height: 32px; } }
  .Product__Icon.sales {
    height: 22px;
    left: 0;
    bottom: 0;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex; }
  .Product__Icon span {
    display: none;
    height: 100%;
    margin-right: 4px; }
    .Product__Icon span.show {
      display: inline-block; }
  .Product__Icon__recommend {
    width: 116px;
    background: url(/wp-content/themes/gas_fair/shared/images/product_icon_recommend.png) 0 0/cover; }
    @media screen and (min-width: 835px) {
      .Product__Icon__recommend {
        width: 150px; } }
  .Product__Icon__lease {
    width: 88px;
    background: url(/wp-content/themes/gas_fair/shared/images/product_icon_lease.png) 0 0/cover; }
  .Product__Icon__zaiko {
    width: 88px;
    background: url(/wp-content/themes/gas_fair/shared/images/product_icon_zaiko.png) 0 0/cover; }
  .Product__Icon__hosyou {
    width: 112px;
    background: url(/wp-content/themes/gas_fair/shared/images/product_icon_hosyou.png) 0 0/cover; }

.Header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  min-height: 56px;
  background: #fff;
  border-bottom: 1px solid #f2f2f2; }
  .Header__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    width: 100%;
    padding: 0 4.27%; }
    @media screen and (min-width: 835px) {
      .Header__head {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
    .Header__head__title {
      font-size: 12px;
      line-height: 1.3; }
      @media screen and (min-width: 835px) {
        .Header__head__title {
          font-size: 14px; } }
      .Header__head__title a {
        transition: opacity .15s; }
        .Header__head__title a:hover {
          opacity: .7; }
    .Header__head__kikan {
      color: #C83B2C;
      font-weight: 700; }
  .Header .HeaderNav__btn {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: flex-end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    cursor: pointer; }
  .Header .HeaderNav__item {
    width: 54px;
    max-height: 56px;
    font-size: 11px;
    text-align: center;
    position: relative; }
    .Header .HeaderNav__item::before {
      content: "";
      width: 1px;
      height: 48px;
      background: #f2f2f2;
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      margin: auto; }
    .Header .HeaderNav__item a {
      display: flex;
      flex-direction: column;
      align-items: center;
      padding: 8px 0 7px; }
      .Header .HeaderNav__item a .icon-tel-header {
        display: inline-block;
        width: 24px;
        height: 24px;
        vertical-align: middle;
        background-repeat: no-repeat;
        background-position: center;
        background: url("/wp-content/themes/gas_fair/shared/images/icon-tel.svg") 0 0/cover; }
      .Header .HeaderNav__item a .icon-menu {
        display: inline-block;
        width: 24px;
        height: 24px;
        vertical-align: middle;
        background-repeat: no-repeat;
        background-position: center;
        background: url("/wp-content/themes/gas_fair/shared/images/icon-menu.svg") 0 0/cover; }
  .Header .overlay {
    display: none;
    background-color: rgba(0, 0, 0, 0.49);
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0; }
  .Header .navDrawr {
    background-color: #fff;
    position: fixed;
    width: 100%;
    top: 56px;
    bottom: 0;
    right: -100%;
    overflow: auto;
    -webkit-overflow-scrolling: touch; }
    @media screen and (min-width: 835px) {
      .Header .navDrawr {
        left: 0;
        height: 40px;
        overflow: hidden;
        display: flex;
        align-items: center;
        border-bottom: 1px solid #f2f2f2; } }
  .Header .HeaderMenu {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    padding: 0;
    width: 100%;
    text-align: left; }
    @media screen and (min-width: 835px) {
      .Header .HeaderMenu {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
    @media screen and (min-width: 835px) {
      .Header .HeaderMenu {
        flex-direction: row;
        border: none;
        margin-top: 0;
        margin-bottom: 0; } }
    .Header .HeaderMenu__item {
      padding: 12px 4.27%;
      border-top: 1px solid #ccc; }
      @media screen and (min-width: 835px) {
        .Header .HeaderMenu__item {
          font-size: 15px;
          padding: 0 16px;
          line-height: 24px;
          border-top: none;
          border-right: 1px solid #ccc; } }
      .Header .HeaderMenu__item.title {
        color: #fff;
        font-size: 14px;
        font-weight: 700;
        padding-top: 4px;
        padding-bottom: 4px;
        background: #C83B2C; }
        @media screen and (min-width: 835px) {
          .Header .HeaderMenu__item.title {
            font-size: 12px;
            padding: 0 4px 0 8px;
            margin-right: 4px;
            background: #161925;
            position: relative;
            border: none; }
            .Header .HeaderMenu__item.title::before {
              content: "";
              position: absolute;
              top: 0;
              left: 100%;
              width: 0;
              height: 0;
              border-style: solid;
              border-width: 12px 0 12px 8px;
              border-color: transparent transparent transparent #161925; } }
      .Header .HeaderMenu__item a {
        display: block;
        position: relative; }
        .Header .HeaderMenu__item a::before {
          display: inline-block;
          content: "";
          position: absolute;
          top: 0;
          right: 0;
          bottom: 0;
          margin: auto;
          z-index: 1;
          width: 8px;
          height: 8px;
          border-top: 2px solid #888;
          border-right: 2px solid #888;
          transform: rotate(45deg); }
          @media screen and (min-width: 835px) {
            .Header .HeaderMenu__item a::before {
              display: none; } }
        .Header .HeaderMenu__item a:hover {
          text-decoration: underline; }
    .Header .HeaderMenu.w-half {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      flex-direction: row;
      border-bottom: 1px solid #ccc; }
      .Header .HeaderMenu.w-half .HeaderMenu__item {
        width: calc(100%/2);
        font-size: 12px; }
        .Header .HeaderMenu.w-half .HeaderMenu__item a::before {
          display: none; }
        .Header .HeaderMenu.w-half .HeaderMenu__item:nth-child(even) {
          border-left: 1px solid #ccc; }

.Breadcrumb {
  border-bottom: 1px solid #f2f2f2;
  margin-top: 28px; }
  @media screen and (min-width: 835px) {
    .Breadcrumb {
      margin-top: 64px; } }
  .Breadcrumb__inner {
    /*display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;*/
    width: 100%;
    line-height: 1.1;
    /*padding-left: 16px;
    padding-right: 16px;*/
    padding: 8px 16px;
    min-height: 32px; }
    @media screen and (min-width: 835px) {
      .Breadcrumb__inner {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
  .Breadcrumb__item {
  	display: inline;
    color: #888;
    font-size: 12px;
    word-break: break-all;
    /*line-height: 1.5;
    margin-right: 20px;*/
    position: relative; }
    /*@media screen and (min-width: 835px) {
      .Breadcrumb__item {
        line-height: 1.57; } }*/
    /*.Breadcrumb__item:first-child {
      width: 10px; }*/
    .Breadcrumb__item .icon-home {
      display: inline-block;
      /*width: 24px;
      height: 24px;*/
      width: 14px!important;
    height: 14px!important;
      vertical-align: middle;
      background-repeat: no-repeat;
      background-position: center;
      background-image: url("/wp-content/themes/gas_fair/shared/images/icon-home.svg");
      /*background-size: cover;*/
      background-size: 180%;
      /*position: relative;*/
      /*left: -8px;*/ }
    .Breadcrumb__item + .Breadcrumb__item::before {
      display: inline-block;
      content: "";
      /*position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      z-index: 1;
      width: 8px;
      height: 8px;
      border-top: 2px solid #888;
      border-right: 2px solid #888;*/
      transform: rotate(45deg);
      width: 6px;
      height: 6px;
      border-top: 1px solid #888;
    border-right: 1px solid #888;
    margin-right: 5px;
      /*right: calc(100% + 8px);
      border-width: 1px;*/ }

.Content__head {
  text-align: center;
  padding: 24px 0; }
  @media screen and (min-width: 835px) {
    .Content__head {
      padding: 40px 0; } }
  .Content__head__phrase {
    font-size: 14px;
    margin-bottom: 4px; }
    @media screen and (min-width: 835px) {
      .Content__head__phrase {
        font-size: 16px; } }
  .Content__head__title {
    font-size: 20px;
    font-weight: 700; }
    @media screen and (min-width: 835px) {
      .Content__head__title {
        font-size: 28px; } }

.heading {
  display: inline-block;
  color: #C83B2C;
  font-weight: 700;
  text-align: center;
  margin-bottom: 16px; }
  @media screen and (min-width: 835px) {
    .heading {
      font-size: 18px; } }

.Footer {
  width: 100%;
  padding-top: 24px; }
  @media screen and (min-width: 835px) {
    .Footer {
      padding-top: 40px; } }
  .Footer__Contact {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    text-align: center; }
    @media screen and (min-width: 835px) {
      .Footer__Contact {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
    .Footer__Contact__head {
      font-size: 18px;
      font-weight: 700;
      text-align: left;
      margin-bottom: 16px; }
      @media screen and (min-width: 835px) {
        .Footer__Contact__head {
          font-size: 24px; } }
  .Footer__Company__logo {
    height: 56px;
    margin-bottom: 10px; }
    @media screen and (min-width: 835px) {
      .Footer__Company__logo {
        height: 80px; } }
    .Footer__Company__logo img {
      width: auto;
      height: auto;
      max-width: 100%;
      max-height: 100%; }
  .Footer__Company__name {
    font-size: 18px;
    margin: 0; }
    @media screen and (min-width: 835px) {
      .Footer__Company__name {
        font-size: 24px; } }
  .Footer__Company__address {
    font-size: 14px;
    margin-top: 4px; }
    @media screen and (min-width: 835px) {
      .Footer__Company__address {
        font-size: 16px; } }
  .Footer .ContactNav {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 16px 0 0; }
    @media screen and (min-width: 835px) {
      .Footer .ContactNav {
        padding-top: 32px; } }
    .Footer .ContactNav__item {
      width: calc(100%/2);
      max-width: 200px;
      height: 42px;
      font-size: 12px;
      line-height: 1.3;
      margin: 0 1.066vw; }
      @media screen and (min-width: 835px) {
        .Footer .ContactNav__item {
          max-width: 368px;
          height: 88px;
          font-size: 20px;
          margin: 0 16px; } }
      .Footer .ContactNav__item.btn-white {
        border-width: 1px; }
        @media screen and (min-width: 835px) {
          .Footer .ContactNav__item.btn-white {
            border-width: 2px; } }
    .Footer .ContactNav .tel_text {
      font-size: 12px;
      margin-right: 8px; }
  .Footer .FooterNav {
    margin-top: 32px; }
    @media screen and (min-width: 835px) {
      .Footer .FooterNav {
        margin-top: 48px; } }
    .Footer .FooterNav__Corona {
      width: 100%;
      color: #378ABE;
      background: #E1EEF5;
      border-top: 1px solid #ccc; }
      @media screen and (min-width: 835px) {
        .Footer .FooterNav__Corona {
          text-align: center; } }
      .Footer .FooterNav__Corona #Corona__toggle {
        padding: 0 4.27%;
        cursor: pointer;
        font-size: 14px; }
        @media screen and (min-width: 835px) {
          .Footer .FooterNav__Corona #Corona__toggle {
            font-size: 16px; } }
        .Footer .FooterNav__Corona #Corona__toggle p {
          padding: 8px 0;
          position: relative; }
          @media screen and (min-width: 835px) {
            .Footer .FooterNav__Corona #Corona__toggle p {
              display: inline-block;
              padding: 10px 24px 10px 0; } }
          .Footer .FooterNav__Corona #Corona__toggle p::before {
            display: inline-block;
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            margin: auto;
            z-index: 1;
            width: 8px;
            height: 8px;
            border-top: 2px solid #378ABE;
            border-right: 2px solid #378ABE;
            transform: rotate(45deg);
            transform: rotate(135deg); }
      .Footer .FooterNav__Corona__inner {
        display: none;
        width: 100%;
        padding-left: 16px;
        padding-right: 16px;
        font-size: 12px;
        line-height: 1.5;
        border-top: 1px solid #378ABE;
        padding: 12px 16px; }
        @media screen and (min-width: 835px) {
          .Footer .FooterNav__Corona__inner {
            max-width: 1280px;
            padding-left: 40px;
            padding-right: 40px;
            margin: auto; } }
        @media screen and (min-width: 835px) {
          .Footer .FooterNav__Corona__inner {
            font-size: 14px; } }
        @media screen and (min-width: 835px) {
          .Footer .FooterNav__Corona__inner {
            line-height: 1.57; } }
        @media screen and (min-width: 835px) {
          .Footer .FooterNav__Corona__inner {
            padding: 24px 0; } }
      .Footer .FooterNav__Corona .CoronaPanel {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-top: 8px; }
        @media screen and (min-width: 835px) {
          .Footer .FooterNav__Corona .CoronaPanel {
            justify-content: center;
            margin-top: 16px; } }
        .Footer .FooterNav__Corona .CoronaPanel__item {
          display: -webkit-flex;
          display: -ms-flexbox;
          display: flex;
          -webkit-justify-content: center;
          -ms-flex-pack: center;
          justify-content: center;
          -webkit-align-items: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-flex-direction: column;
          -ms-flex-direction: column;
          flex-direction: column;
          width: calc(100%/3);
          max-width: 120px;
          color: #161925;
          line-height: 1.35;
          text-align: center;
          border: 1px solid #E1EEF5;
          background: #fff; }
        .Footer .FooterNav__Corona .CoronaPanel__icon {
          width: 56px;
          height: 56px; }
        .Footer .FooterNav__Corona .CoronaPanel__text {
          padding: 0 8px 8px; }
    .Footer .FooterNav__Guide {
      border-top: 1px solid #ccc;
      border-bottom: 1px solid #ccc; }
      .Footer .FooterNav__Guide__menu {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        margin: auto; }
      .Footer .FooterNav__Guide__item {
        width: calc(100%/2);
        color: #666;
        font-size: 12px;
        line-height: 1.4;
        padding: 10px 4.27%; }
        @media screen and (min-width: 835px) {
          .Footer .FooterNav__Guide__item {
            font-size: 14px; } }
        @media screen and (min-width: 835px) {
          .Footer .FooterNav__Guide__item {
            width: auto;
            padding: 10px 20px 10px 0;
            margin: 0 16px; } }
        .Footer .FooterNav__Guide__item:nth-child(even) {
          border-left: 1px solid #ccc; }
          @media screen and (min-width: 835px) {
            .Footer .FooterNav__Guide__item:nth-child(even) {
              border-left: none; } }
        .Footer .FooterNav__Guide__item a {
          display: block;
          position: relative; }
          .Footer .FooterNav__Guide__item a::before {
            display: inline-block;
            content: "";
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            margin: auto;
            z-index: 1;
            width: 8px;
            height: 8px;
            border-top: 2px solid #888;
            border-right: 2px solid #888;
            transform: rotate(45deg);
            right: -6px; }
            @media screen and (min-width: 835px) {
              .Footer .FooterNav__Guide__item a::before {
                right: -18px; } }
    .Footer .FooterNav .Copyright {
      display: inherit;
      color: #888;
      font-size: 10px;
      text-align: center;
      padding: 4px 0; }

.topVisual {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  position: relative; }
  @media screen and (min-width: 835px) {
    .topVisual {
      height: 400px;
      margin-top: 64px; } }
  .topVisual::before {
    content: url("/wp-content/themes/gas_fair/shared/images/fig_scroll.svg");
    width: 12px;
    height: 150px;
    position: absolute;
    left: 2%;
    bottom: 10vh; }
    @media screen and (min-width: 835px) {
      .topVisual::before {
        display: none; } }
  .topVisual__inner {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    color: #fff;
    text-align: center; }
    @media screen and (min-width: 835px) {
      .topVisual__inner {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
  .topVisual__head {
    font-size: 6.4vw;
    font-weight: 700;
    line-height: 1.5;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.5); }
    @media screen and (min-width: 835px) {
      .topVisual__head {
        font-size: 32px; } }
  .topVisual__kikan {
    display: inline-block;
    font-weight: 700;
    padding: 4px 16px;
    margin-top: 16px;
    background: #C83B2C; }
    @media screen and (min-width: 835px) {
      .topVisual__kikan {
        font-size: 20px; } }
  .topVisual__presented {
    font-size: 14px;
    margin-top: 24px; }
  .topVisual__Tokuten {
    width: 76.8%;
    max-width: 560px;
    text-align: center;
    border: 1px solid #C83B2C;
    box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
    position: absolute;
    left: 0;
    right: 0;
    bottom: 10vh;
    margin: auto; }
    .topVisual__Tokuten::before {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background-size: auto auto;
      background-color: red;
      background-image: repeating-linear-gradient(90deg, transparent, transparent 6px, rgba(255, 255, 255, 0.2) 5px, rgba(255, 255, 255, 0.2) 10px); }
    .topVisual__Tokuten a {
      display: block;
      width: 100%;
      color: #fff;
      font-size: 14px;
      padding: 10px;
      position: relative;
      z-index: 1; }
    .topVisual__Tokuten__head {
      color: #FDF451;
      font-size: 18px;
      font-weight: 700;
      line-height: 1.4;
      text-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);
      margin-bottom: 4px; }
      .topVisual__Tokuten__head span {
        display: block;
        font-size: 14px; }
    .topVisual__Tokuten .icon-arrow-circle {
      padding-right: 1.25em;
      position: relative; }
      .topVisual__Tokuten .icon-arrow-circle::before {
        content: "";
        width: 14px;
        height: 14px;
        border: 1px solid #fff;
        -webkit-border-radius: 50%;
        border-radius: 50%;
        position: absolute;
        top: 0;
        bottom: 0;
        right: 0;
        margin: auto;
        vertical-align: middle; }
      .topVisual__Tokuten .icon-arrow-circle::after {
        content: "";
        position: absolute;
        top: 0;
        right: 6px;
        bottom: 0;
        margin: auto;
        z-index: 1;
        width: 4px;
        height: 4px;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        vertical-align: middle; }
  .topVisual__img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    margin: 0;
    z-index: -1;
    overflow: hidden; }
    @media screen and (min-width: 835px) {
      .topVisual__img {
        height: 400px; } }
    .topVisual__img img {
      width: auto;
      height: 100%;
      position: relative;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }
      @media screen and (min-width: 835px) {
        .topVisual__img img {
          width: 100%;
          height: auto; } }
  .topVisual .scroll {
    color: #fff;
    position: absolute;
    left: 0;
    bottom: 32px;
    transform: rotate(-90deg); }
.topFree__Movie{
  max-width: 560px;
  padding: 0 16px; 
  margin: 24px auto 0;
}
@media screen and (min-width: 835px) {
  .topFree__Movie{
    padding: 0; 
    margin: 40px auto 16px;
  }
}
.topFree__Movie__item{
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
}
.topFree__Movie__item iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*------------------------------------
 2021.9.9追加
------------------------------------*/
.topFree__2column{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-bottom: 8px;
}
@media screen and (min-width: 835px) {
  .topFree__2column{
    margin: 40px 0;
  }
}
.topFree__2column > div{
  width: 100%;
  padding: 0 16px;
  margin-top: 24px;
}
@media screen and (min-width: 835px) {
  .topFree__2column > div{
    width: calc(50% - 48px);
    max-width: 500px;
    padding: 0;
    margin: 0 24px;
  }
}
.topFree__2column div a{
  display: block;
}
.topFree__2column div img{
  max-width: 100%;
}
.topFree__2column__left.second{
  order: 1;
}
@media screen and (min-width: 835px) {
  .topFree__2column__left.second{
    order: 0;
  }
}
/* -------------------------------- */

.Intro {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }
  @media screen and (min-width: 835px) {
    .Intro {
      padding: 24px 0; } }
  .Intro__Message {
    max-width: 560px;
    margin: 24px 16px;
    padding: 16px 24px;
    font-size: 14px;
    position: relative; }
    @media screen and (min-width: 835px) {
      .Intro__Message {
        font-size: 16px; } }
    @media screen and (min-width: 835px) {
      .Intro__Message {
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        width: 40%;
        max-width: 472px;
        height: 190px;
        line-height: 2;
        padding: 0 32px;
        margin: 0 24px; } }
    .Intro__Message::before, .Intro__Message::after {
      content: "";
      width: 16px;
      height: 100%;
      border: 1px solid #C83B2C;
      position: absolute; }
    .Intro__Message::before {
      border-right: none;
      top: 0;
      left: 0; }
    .Intro__Message::after {
      border-left: none;
      top: 0;
      right: 0; }
  .Intro__Tokuten {
    width: 100%;
    text-align: center;
    padding: 24px 16px;
    position: relative; }
    .Intro__Tokuten::before {
      content: "";
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background-size: auto auto;
      background-color: red;
      background-image: repeating-linear-gradient(90deg, transparent, transparent 6px, rgba(255, 255, 255, 0.2) 5px, rgba(255, 255, 255, 0.2) 10px); }
    @media screen and (min-width: 835px) {
      .Intro__Tokuten {
        width: 45%;
        max-width: 472px;
        padding: 24px;
        margin: 0 24px; } }
    .Intro__Tokuten__inner {
      max-width: 560px;
      padding: 16px 4.27%;
      margin: auto;
      border-radius: 16px;
      background: #fff;
      box-shadow: 0 2px 2px rgba(0, 0, 0, 0.5);
      position: relative;
      z-index: 1; }
    .Intro__Tokuten__head {
      color: red;
      font-size: 20px;
      font-weight: 700;
      margin-bottom: 8px; }
    .Intro__Tokuten p {
      font-size: 14px; }
      @media screen and (min-width: 835px) {
        .Intro__Tokuten p {
          font-size: 16px; } }
    .Intro__Tokuten .ContactNav__Tokuten {
      margin: auto; }
      @media screen and (min-width: 835px) {
        .Intro__Tokuten .ContactNav__Tokuten {
          margin-top: 8px; } }

.Recommend {
  padding-top: 24px; }
  @media screen and (min-width: 835px) {
    .Recommend {
      padding-top: 40px; } }
  .Recommend a {
    transition: opacity .15s; }
    .Recommend a:hover {
      opacity: .7; }
  .Recommend__head {
    width: 100%;
    padding-left: 16px;
    padding-right: 16px; }
    @media screen and (min-width: 835px) {
      .Recommend__head {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
    @media screen and (min-width: 835px) {
      .Recommend__head {
        font-size: 24px; } }
  .Recommend__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-bottom: 32px; }
    @media screen and (min-width: 835px) {
      .Recommend__inner {
        max-width: 1200px;
        margin: auto;
        justify-content: flex-start; } }
  .Recommend__item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    max-width: 368px;
    border: 1px solid #ccc;
    margin: 16px 16px 0 16px; }
    @media screen and (min-width: 835px) {
      .Recommend__item {
        margin-top: 32px; } }
  .Recommend__img {
    width: 160px;
    min-height: 100px; }
  .Recommend__text {
    width: calc(100% - 160px);
    font-size: 13px;
    line-height: 1.5;
    padding: 1em 1em 0;
    border-left: 1px solid #ccc; }
    @media screen and (min-width: 835px) {
      .Recommend__text {
        line-height: 1.57; } }

.Tokuten {
  width: 100%;
  padding-left: 16px;
  padding-right: 16px; }
  @media screen and (min-width: 835px) {
    .Tokuten {
      max-width: 1280px;
      padding-left: 40px;
      padding-right: 40px;
      margin: auto; } }
  .Tokuten__head {
    text-align: center;
    padding-bottom: 16px; }
    .Tokuten__head h3 {
      max-width: 343px;
      color: #fff;
      font-size: 16px;
      font-weight: 700;
      padding: 3px 0;
      margin: auto;
      border-radius: 20px;
      background: red; }
      @media screen and (min-width: 835px) {
        .Tokuten__head h3 {
          font-size: 20px; } }
    .Tokuten__head p {
      font-size: 14px;
      margin-top: 8px; }
      @media screen and (min-width: 835px) {
        .Tokuten__head p {
          font-size: 16px; } }
      @media screen and (min-width: 835px) {
        .Tokuten__head p {
          margin-top: 24px; }
          .Tokuten__head p br {
            display: none; } }
  .Tokuten__item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 8px;
    margin-top: 8px;
    border: 1px solid #F0E100;
    border-radius: 16px;
    background: #fff; }
    @media screen and (min-width: 835px) {
      .Tokuten__item {
        max-width: 912px;
        padding: 16px;
        margin: 16px auto 0; } }
    .Tokuten__item__inner {
      width: calc(100% - 120px);
      padding: 0 1em 8px 8px; }
      @media screen and (min-width: 835px) {
        .Tokuten__item__inner {
          width: calc(100% - 214px);
          min-height: 160px;
          padding: 0 1em 8px 16px; } }
    .Tokuten__item p {
      font-size: 14px;
      font-weight: 700;
      line-height: 1.43;
      margin-top: 8px; }
      @media screen and (min-width: 835px) {
        .Tokuten__item p {
          font-size: 24px;
          margin-top: 16px; } }
      .Tokuten__item p .note {
        display: block;
        font-size: 12px;
        font-weight: 400;
        margin-top: 8px; }
        @media screen and (min-width: 835px) {
          .Tokuten__item p .note {
            font-size: 14px;
            margin-top: 16px; } }
  .Tokuten__number {
    display: inline-block;
    color: #FDF451;
    font-size: 13px;
    font-weight: 700;
    line-height: 24px;
    padding: 0 8px;
    background: red;
    position: relative;
    left: -32px; }
    @media screen and (min-width: 835px) {
      .Tokuten__number {
        font-size: 20px;
        line-height: 40px;
        padding: 0 16px;
        left: -48px; } }
    .Tokuten__number::before, .Tokuten__number::after {
      content: "";
      width: 0;
      height: 0;
      border-style: solid;
      position: absolute;
      left: 100%; }
    .Tokuten__number::before {
      border-width: 12px 6px 0 0;
      border-color: red transparent transparent transparent;
      top: 0; }
      @media screen and (min-width: 835px) {
        .Tokuten__number::before {
          border-width: 20px 6px 0 0; } }
    .Tokuten__number::after {
      border-width: 12px 0 0 6px;
      border-color: transparent transparent transparent red;
      bottom: 0; }
      @media screen and (min-width: 835px) {
        .Tokuten__number::after {
          border-width: 20px 0 0 6px; } }
  .Tokuten__img {
    width: 120px;
    height: 90px; }
    @media screen and (min-width: 835px) {
      .Tokuten__img {
        width: 214px;
        height: 160px; } }

.CurrentNav {
  padding: 0 16px 10px;
  border-bottom: 4px solid #378ABE; }
  .CurrentNav__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    max-width: 400px;
    margin: auto; }
  .CurrentNav__item {
    width: calc(100% / 3.5);
    color: #fff;
    line-height: 40px;
    text-align: center;
    border-radius: 20px;
    background: #ccc;
    position: relative; }
    .CurrentNav__item.active {
      background: #378ABE; }
  .CurrentNav__item + .CurrentNav__item::before {
    display: inline-block;
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
    width: 8px;
    height: 8px;
    border-top: 2px solid #888;
    border-right: 2px solid #888;
    transform: rotate(45deg);
    right: 111%; }

.Form {
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
  padding-top: 16px; }
  @media screen and (min-width: 835px) {
    .Form {
      max-width: 1280px;
      padding-left: 40px;
      padding-right: 40px;
      margin: auto; } }
  @media screen and (min-width: 835px) {
    .Form {
      padding-top: 40px; } }
  .Form__head {
    font-size: 14px; }
    @media screen and (min-width: 835px) {
      .Form__head {
        font-size: 16px; } }
    @media screen and (min-width: 835px) {
      .Form__head {
        text-align: center; } }
  .Form .contactForm .w30 {
    width: 30%;
    max-width: 174px; }
  .Form .contactForm .w50 {
    width: 50%;
    max-width: 343px; }
  .Form .contactForm__inner, .Form .contactForm .detail-input {
    max-width: 800px;
    margin: 32px auto 0;
    padding-top: 32px;
    border-top: 1px solid #ccc; }
  .Form .contactForm__Q {
    display: inline-block;
    font-weight: 700;
    position: relative; }
    .Form .contactForm__Q.required::before {
      position: absolute;
      top: 0;
      left: calc(100% + 8px);
      bottom: 0;
      margin: auto;
      display: inline-block;
      content: "必須";
      color: #fff;
      width: 2.75em;
      height: 20px;
      font-size: 12px;
      font-weight: 400;
      line-height: 20px;
      text-align: center;
      background: red; }
  .Form .contactForm__A {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 6px; }
    .Form .contactForm__A ul {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      width: 100%;
      font-size: 14px; }
      .Form .contactForm__A ul li {
        width: 100%; }
      .Form .contactForm__A ul .contactForm__placeholder + li {
        margin-top: 16px; }
      .Form .contactForm__A ul.checkbox__list li {
        width: 100%;
        font-size: 16px;
        padding: 6px 0; }
        @media screen and (min-width: 835px) {
          .Form .contactForm__A ul.checkbox__list li {
            width: calc(100% / 4); } }
    .Form .contactForm__A__agree {
      font-size: 14px;
      padding-top: 6px;
      padding-bottom: 6px; }
      @media screen and (min-width: 835px) {
        .Form .contactForm__A__agree {
          font-size: 16px; } }
      .Form .contactForm__A__agree a {
        text-decoration: underline; }
  .Form .contactForm__placeholder {
    color: #888;
    font-size: 12px;
    margin-top: 4px; }
  .Form .contactForm__error {
    color: red;
    font-size: 14px; }
  .Form .contactForm .detail-input p {
    color: #378ABE;
    font-size: 14px; }
    @media screen and (min-width: 835px) {
      .Form .contactForm .detail-input p {
        font-size: 16px; } }
  .Form .contactForm .detail-input .contactForm__inner {
    padding-top: 0;
    margin-top: 16px;
    border-top: none; }
  .Form .contactForm .detail-input input[type="text"], .Form .contactForm .detail-input textarea {
    border-color: #378ABE;
    background: #F0F9FF; }
  .Form .contactForm .btn-auto-input {
    display: inline-block;
    color: #fff;
    font-size: 14px;
    line-height: 40px;
    padding: 0 10px;
    margin-left: 10px;
    border-radius: 4px;
    background: #378ABE;
    cursor: pointer; }
  .Form .contactForm.confirm .contactForm__inner, .Form .contactForm.confirm .detail-input {
    margin-top: 16px;
    padding-top: 16px; }
    @media screen and (min-width: 835px) {
      .Form .contactForm.confirm .contactForm__inner, .Form .contactForm.confirm .detail-input {
        margin-top: 24px;
        padding-top: 24px; } }
  .Form .contactForm.confirm .contactForm__inner:last-of-type {
    padding-bottom: 16px;
    border-bottom: 1px solid #ccc;
    border-color: #f2f2f2; }
    @media screen and (min-width: 835px) {
      .Form .contactForm.confirm .contactForm__inner:last-of-type {
        padding-bottom: 24px; } }
  .Form .contactForm.confirm .contactForm__Q {
    color: #378ABE;
    font-size: 14px; }
    @media screen and (min-width: 835px) {
      .Form .contactForm.confirm .contactForm__Q {
        font-size: 16px; } }
    .Form .contactForm.confirm .contactForm__Q::before {
      content: "- "; }
  .Form .contactForm.confirm .contactForm__A {
    margin-top: 0; }
  .Form .contactForm.complete {
    max-width: 880px;
    margin: auto; }
    .Form .contactForm.complete h3 {
      color: #378ABE;
      text-align: center;
      padding: 8px 0 24px; }
    @media screen and (min-width: 835px) {
      .Form .contactForm.complete p {
        line-height: 2; } }
    .Form .contactForm.complete p + p {
      margin-top: 1em; }
  .Form .FormNav {
    padding: 40px 0; }
    @media screen and (min-width: 835px) {
      .Form .FormNav {
        padding-bottom: 80px; } }
    .Form .FormNav a {
      transition: opacity .15s; }
      .Form .FormNav a:hover {
        opacity: .7; }
    .Form .FormNav .btn-submit {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      -webkit-align-items: center;
      -ms-flex-align: center;
      align-items: center;
      width: 100%;
      max-width: 344px;
      font-size: 16px;
      margin: 0 auto;
      border-radius: 8px;
      box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.25);
      cursor: pointer; }
    .Form .FormNav .btn-next {
      height: 56px;
      color: #fff;
      font-weight: 700;
      background: #378ABE; }
    .Form .FormNav .btn-back {
      width: 83.2%;
      height: 48px;
      color: #378ABE;
      margin-top: 16px;
      border: 1px solid #378ABE; }

input[type="text"], textarea {
  width: 100%;
  padding: 8px;
  outline: none;
  border: 1px solid #ccc;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  font-size: 16px; }
  @media screen and (min-width: 835px) {
    input[type="text"], textarea {
      padding: 12px; } }

input[type="text"]:focus, textarea:focus {
  box-shadow: 0 0 6px #3498db;
  border: 1px solid #3498db; }

input[type="checkbox"] + label {
  position: relative;
  display: inline-block;
  padding-left: 34px;
  cursor: pointer;
  -webkit-transition: all .2s;
  -moz-transition: all .2s;
  transition: all .2s; }

input[type="checkbox"] + label::before,
input[type="checkbox"] + label::after {
  position: absolute;
  content: ''; }

input[type="checkbox"] + label::before {
  top: 50%;
  left: 0;
  width: 24px;
  height: 24px;
  margin-top: -12px;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 3px; }

input[type="checkbox"] + label::after {
  opacity: 0;
  top: 50%;
  left: 5px;
  width: 14px;
  height: 8px;
  margin-top: -6px;
  border-left: 3px solid #3498db;
  border-bottom: 3px solid #3498db;
  -webkit-transform: rotate(-45deg) scale(0.5);
  -moz-transform: rotate(-45deg) scale(0.5);
  transform: rotate(-45deg) scale(0.5); }

input[type="checkbox"] + label:hover::before {
  background: #fff; }

input[type="checkbox"]:checked + label::before {
  background: #fff;
  border: 1px solid #3498db; }

input[type="checkbox"]:checked + label::after {
  opacity: 1;
  -webkit-transform: rotate(-45deg) scale(1);
  -moz-transform: rotate(-45deg) scale(1);
  transform: rotate(-45deg) scale(1); }

label.radio-tap {
  width: calc(100% / 3);
  max-width: 172px;
  font-size: 14px;
  text-align: center;
  border: 1px solid #ccc;
  background-color: #fff;
  padding: 10px 0; }
  @media screen and (min-width: 835px) {
    label.radio-tap {
      font-size: 16px; } }
  label.radio-tap:first-of-type {
    border-right: none;
    border-radius: 4px 0 0 4px; }
  label.radio-tap:last-of-type {
    border-left: none;
    border-radius: 0 4px 4px 0; }

input[type="radio"]:checked + label {
  color: #fff;
  background-color: #3498db;
  cursor: pointer;
  -webkit-transition: all .2s;
  -moz-transition: all .2s;
  transition: all .2s; }

.CategoryNav {
  font-size: 14px;
  text-align: center; }
  .CategoryNav__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    padding-left: 16px;
    padding-right: 16px; }
    @media screen and (min-width: 835px) {
      .CategoryNav__inner {
        max-width: 1280px;
        padding-left: 40px;
        padding-right: 40px;
        margin: auto; } }
  .CategoryNav__item {
    width: 100%;
    max-width: 440px;
    line-height: 46px;
    border: 1px solid #C83B2C;
    background: #fff;
    position: relative; }
    @media screen and (min-width: 835px) {
      .CategoryNav__item {
        width: calc(100% / 4); } }
    .CategoryNav__item::before {
      display: inline-block;
      content: "";
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      margin: auto;
      z-index: 1;
      width: 8px;
      height: 8px;
      border-top: 2px solid #C83B2C;
      border-right: 2px solid #C83B2C;
      transform: rotate(45deg);
      right: 16px;
      transform: rotate(135deg); }
    .CategoryNav__item + .CategoryNav__item {
      border-top: none; }
      @media screen and (min-width: 835px) {
        .CategoryNav__item + .CategoryNav__item {
          border-top: 1px solid #C83B2C;
          border-left: none; } }
    .CategoryNav__item a {
      display: block;
      color: #C83B2C;
      transition: all .15s; }

.Category {
  padding-top: 56px; }
  @media screen and (min-width: 835px) {
    .Category {
      padding-top: 96px; } }
  .Category__item {
    padding-top: 56px;
    margin-top: -56px; }
    @media screen and (min-width: 835px) {
      .Category__item {
        padding-top: 96px;
        margin-top: -96px; } }
  .Category__head {
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    text-align: center;
    line-height: 40px;
    background: #C83B2C; }
  .Category .EntryProduct {
    background: #fff; }
    .Category .EntryProduct a {
      transition: opacity .15s; }
      .Category .EntryProduct a:hover {
        opacity: .7; }
    .Category .EntryProduct__inner {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      padding: 0 16px; }
      @media screen and (min-width: 835px) {
        .Category .EntryProduct__inner {
          max-width: 944px;
          padding: 0;
          margin: 0 auto; } }
    .Category .EntryProduct__item {
      display: block;
      width: 100%;
      max-width: 440px;
      padding-top: 24px;
      margin: auto; }
      @media screen and (min-width: 835px) {
        .Category .EntryProduct__item {
          padding-top: 48px;
          margin: 0; } }
      .Category .EntryProduct__item:last-child {
        padding-bottom: 56px; }
        @media screen and (min-width: 835px) {
          .Category .EntryProduct__item:last-child {
            padding-bottom: 96px; } }
  .Category .Product__name {
    margin-bottom: 8px;
    position: relative; }
    .Category .Product__name::before {
      content: "";
      width: 14px;
      height: 14px;
      border: 1px solid #161925;
      -webkit-border-radius: 50%;
      border-radius: 50%;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      margin: auto;
      vertical-align: middle; }
    .Category .Product__name::after {
      content: "";
      position: absolute;
      top: 0;
      right: 6px;
      bottom: 0;
      margin: auto;
      z-index: 1;
      width: 4px;
      height: 4px;
      border-top: 1px solid #161925;
      border-right: 1px solid #161925;
      webkit-transform: rotate(45deg);
      transform: rotate(45deg);
      vertical-align: middle; }
  .Category .Product__Photo {
    margin-top: 8px; }
  .Category .Product__Icon.sales {
    left: 4px;
    bottom: 4px; }

.Product {
  max-width: 1200px;
  margin: auto;
  background: #fff; }
  @media screen and (min-width: 835px) {
    .Product {
      padding-top: 40px; } }
  .Product__Photo {
    max-width: 560px;
    border: 1px solid #ccc;
    margin: 0 auto;
    position: relative; }
  .Product__Info {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 16px 16px 0; }
    @media screen and (min-width: 835px) {
      .Product__Info {
        padding: 40px 0 0; } }
    .Product__Info > div {
      width: 100%;
      max-width: 560px; }
      @media screen and (min-width: 835px) {
        .Product__Info > div {
          max-width: 440px;
          margin: 0 24px; } }
  .Product__name {
    font-size: 16px;
    font-weight: 700; }
    @media screen and (min-width: 835px) {
      .Product__name {
        font-size: 18px; } }
  .Product__point {
    font-size: 14px;
    margin-top: 4px; }
    @media screen and (min-width: 835px) {
      .Product__point {
        font-size: 16px; } }
  .Product__tbl {
    width: 100%;
    max-width: 440px;
    color: #666;
    font-size: 12px;
    line-height: 1.3;
    text-align: left;
    margin: 16px 0 24px;
    vertical-align: middle;
    border-collapse: collapse; }
    @media screen and (min-width: 835px) {
      .Product__tbl {
        font-size: 14px; } }
    @media screen and (min-width: 835px) {
      .Product__tbl {
        margin: 24px 0 0; } }
    .Product__tbl th {
      width: calc(6em + 73px);
      font-weight: 400;
      line-height: 22px;
      padding: 2px 8px;
      border: 1px solid #ccc;
      background: #f2f2f2; }
    .Product__tbl td {
      padding: 2px 8px;
      border: 1px solid #ccc; }
  .Product__Price dl {
    margin-bottom: 16px; }
    @media screen and (min-width: 835px) {
      .Product__Price dl {
        margin-bottom: 24px; } }
    .Product__Price dl dt {
      font-size: 14px;
      margin-bottom: 2px; }
      @media screen and (min-width: 835px) {
        .Product__Price dl dt {
          font-size: 18px; } }
    .Product__Price dl dd {
      font-size: 24px;
      font-weight: 700;
      line-height: 1;
      letter-spacing: 1px; }
      @media screen and (min-width: 835px) {
        .Product__Price dl dd {
          font-size: 40px; } }
      .Product__Price dl dd span {
        letter-spacing: 0; }
  .Product__Price__sales dd {
    color: red; }
  .Product__Price__lease {
    color: #1CB195; }
    .Product__Price__lease dd {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-align-items: flex-end;
      -ms-flex-align: end;
      align-items: flex-end;
      -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      .Product__Price__lease dd .lease-kikan {
        display: inline-block;
        color: #fff;
        font-size: 14px;
        font-weight: 700;
        line-height: 22px;
        padding: 0 6px;
        margin-right: 8px;
        background: #1CB195; }
        @media screen and (min-width: 835px) {
          .Product__Price__lease dd .lease-kikan {
            font-size: 18px; } }
        @media screen and (min-width: 835px) {
          .Product__Price__lease dd .lease-kikan {
            line-height: 28px;
            padding: 0 10px;
            margin-right: 12px; 
			} 
}
.Product__Price__bunkatu {
	color: #6966e8;
}
.Product__Price__bunkatu dd {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.Product__Price__bunkatu dd .bunkatu-kikan {
	display: inline-block;
	color: #fff;
	font-size: 14px;
	font-weight: 700;
	line-height: 22px;
	padding: 0 6px;
	margin-right: 8px;
	background: #6966e8;
}
@media screen and (min-width: 835px) {
	.Product__Price__bunkatu dd .bunkatu-kikan {
		font-size: 18px;
	} 
}
@media screen and (min-width: 835px) {
	.Product__Price__bunkatu dd .bunkatu-kikan {
		line-height: 28px;
		padding: 0 10px;
		margin-right: 12px; 
	} 
}
.Product__Price__rental {
	color: #ff6b00;
}
.Product__Price__rental dd {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: flex-end;
	-ms-flex-align: end;
	align-items: flex-end;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
  .Product__Price .plus-kouji {
    display: inline-block;
    color: #161925;
    font-size: 14px;
    font-weight: 400;
    margin-left: 2px;
    vertical-align: bottom; }
    @media screen and (min-width: 835px) {
      .Product__Price .plus-kouji {
        font-size: 16px; } }
  .Product__notes {
    color: #666;
    font-size: 12px;
    line-height: 1.5; }
    @media screen and (min-width: 835px) {
      .Product__notes {
        font-size: 14px; } }
    @media screen and (min-width: 835px) {
      .Product__notes {
        line-height: 1.57; } }

.ProductDetail {
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
  font-size: 14px;
  padding-top: 8px;
  padding-bottom: 8px; }
  @media screen and (min-width: 835px) {
    .ProductDetail {
      max-width: 1280px;
      padding-left: 40px;
      padding-right: 40px;
      margin: auto; } }
  @media screen and (min-width: 835px) {
    .ProductDetail {
      font-size: 16px; } }
  .ProductDetail__head {
    color: #82A9C7;
    font-weight: 700;
    padding-top: 24px;
    margin-bottom: 16px;
    border-top: 1px solid #82A9C7; }
    @media screen and (min-width: 835px) {
      .ProductDetail__head {
        font-size: 18px; } }
  .ProductDetail__item, .ProductDetail .ProductDetail__Freearea {
    margin-bottom: 24px; }
    @media screen and (min-width: 835px) {
      .ProductDetail__item, .ProductDetail .ProductDetail__Freearea {
        margin-bottom: 56px; } }
  .ProductDetail__item {
    width: 100%; }
    @media screen and (min-width: 835px) {
      .ProductDetail__item {
        width: 46.67%;
        max-width: 560px; } }
  .ProductDetail__System {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
  .ProductDetail__Movie {
    max-width: 560px;
    margin: 24px auto 0; }
    .ProductDetail__Movie__item {
      position: relative;
      padding-bottom: 56.25%;
      height: 0;
      overflow: hidden; }
      .ProductDetail__Movie__item iframe {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; }
  .ProductDetail__Outsite {
    font-size: 12px;
    text-align: right;
    padding-top: 10px;
    border-top: 1px solid #82A9C7; }
    @media screen and (min-width: 835px) {
      .ProductDetail__Outsite {
        font-size: 14px; } }
    .ProductDetail__Outsite a {
      color: #82A9C7; }
      .ProductDetail__Outsite a:hover {
        text-decoration: underline; }
    .ProductDetail__Outsite .icon-outsite {
      display: inline-block;
      width: 24px;
      height: 24px;
      vertical-align: middle;
      background-repeat: no-repeat;
      background-position: center;
      background-image: url("/wp-content/themes/gas_fair/shared/images/icon-outsite.svg");
      background-size: cover; }

.Policy {
  width: 100%;
  padding-left: 16px;
  padding-right: 16px;
  font-size: 14px;
  padding-bottom: 40px; }
  @media screen and (min-width: 835px) {
    .Policy {
      max-width: 1000px;
      padding-left: 40px;
      padding-right: 40px;
      margin: auto; } }
  @media screen and (min-width: 835px) {
    .Policy {
      font-size: 16px; } }
  @media screen and (min-width: 835px) {
    .Policy {
      padding-bottom: 80px; } }
  .Policy__dl dt {
    font-weight: 700;
    margin-top: 2em; }
  .Policy__dl dd {
    margin-top: .25em; }
  .Policy__dl.dt-blue dt {
    color: #82a9c7; }

/*動画掲載ページ用css*/
.MoviePublish {
	width: 100%;
	padding-left: 16px;
	padding-right: 16px;
	font-size: 14px;
	padding-top: 8px;
	padding-bottom: 8px; }
@media screen and (min-width: 835px) {
	.MoviePublish {
		max-width: 1280px;
		padding-left: 40px;
		padding-right: 40px;
		margin: auto;
		font-size: 16px; } }
.MoviePublish__System {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-flex-wrap: wrap;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap; }
.MoviePublish__item {
	width: 100%;
	margin-bottom: 24px; }
@media screen and (min-width: 835px) {
	.MoviePublish__item {
		width: 46.67%;
		max-width: 560px;
		margin-bottom: 56px; } }
.MoviePublish__head {
	color: #82A9C7;
	font-weight: 700;
	padding-top: 24px;
	margin-bottom: 16px; }
@media screen and (min-width: 835px) {
	.MoviePublish__head {
		font-size: 18px; } }
.MoviePublish__Movie {
	max-width: 560px;
	margin: 24px auto 0; }
.MoviePublish__Movie__item {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden; }
.MoviePublish__Movie__item iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%; }
.MoviePublish__Outsite {
	font-size: 12px;
	text-align: right;
	padding-top: 10px;
	border-top: 1px solid #82A9C7;
	margin-top: 25px;}
@media screen and (min-width: 835px) {
	.MoviePublish__Outsite {
		font-size: 14px; } }
.MoviePublish__Outsite .icon-outsite {
	display: inline-block;
	width: 24px;
	height: 24px;
	vertical-align: middle;
	background-repeat: no-repeat;
	background-position: center;
	background-image: url("/wp-content/themes/gas_fair/shared/images/icon-outsite.svg");
	background-size: cover; }
.MoviePublish__Outsite a {
	color: #82A9C7; }
.MoviePublish__Outsite a:hover {
	text-decoration: underline; }