@charset "UTF-8";
/*!
* ress.css • v1.2.2
* MIT License
* github.com/filipelinhares/ress
*/
/* # =================================================================
# Global selectors
# ================================================================= */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-y: scroll;
  /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%;
  /* iOS 8+ */
}

*,
::before,
::after {
  background-repeat: no-repeat;
  /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit;
  /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

* {
  padding: 0;
  /* Reset `padding` and `margin` of all elements */
  margin: 0;
}

/* # =================================================================
# General elements
# ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) {
  display: none;
  height: 0;
}

hr {
  overflow: visible;
  /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

summary {
  display: list-item;
  /* Add the correct display in all browsers */
}

small {
  font-size: 80%;
  /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
  display: none;
  /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: 1px dotted;
  /* Add a bordered underline effect in all browsers */
  text-decoration: none;
  /* Remove text decoration in Firefox 40+ */
}

a {
  background-color: transparent;
  /* Remove the gray background on active links in IE 10 */
  -webkit-text-decoration-skip: objects;
  /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
  outline-width: 0;
  /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  /* Specify the font family of code elements */
}

b,
strong {
  font-weight: bolder;
  /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
  font-style: italic;
  /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* # =================================================================
# Forms
# ================================================================= */
input {
  border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type="button"],
[type="reset"],
[type="submit"],
[role="button"] {
  cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type="number"] {
  width: auto;
  /* Firefox 36+ */
}

[type="search"] {
  -webkit-appearance: textfield;
  /* Safari 8+ */
}

[type="search"]::-webkit-search-cancel-button,
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
  /* Safari 8 */
}

textarea {
  overflow: auto;
  /* Internet Explorer 11+ */
  resize: vertical;
  /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit;
  /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold;
  /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible;
  /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: 0;
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS */
}

button,
select {
  text-transform: none;
  /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
}

/* Style select like a standard input */
select {
  -moz-appearance: none;
  /* Firefox 36+ */
  -webkit-appearance: none;
  /* Chrome 41+ */
}

select::-ms-expand {
  display: none;
  /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor;
  /* Internet Explorer 11+ */
}

legend {
  border: 0;
  /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit;
  /* Correct the color inheritance from `fieldset` elements in IE */
  display: table;
  /* Correct the text wrapping in Edge and IE */
  max-width: 100%;
  /* Correct the text wrapping in Edge and IE */
  white-space: normal;
  /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit;
  /* Change font properties to `inherit` in Chrome and Safari */
}

[type="search"] {
  -webkit-appearance: textfield;
  /* Correct the odd appearance in Chrome and Safari */
  outline-offset: -2px;
  /* Correct the outline style in Safari */
}

/* # =================================================================
# Specify media element style
# ================================================================= */
img {
  border-style: none;
  /* Remove border when inside `a` element in IE 8/9/10 */
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden;
  /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
  display: inline-block;
  /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
# Accessibility
# ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~="screen"] {
    display: inherit;
  }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}

/* Specify the progress cursor of updating elements */
[aria-busy="true"] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
# Selection
# ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc;
  /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

pre,
form,
fieldset,
input,
textarea,
p,
blockquote,
th,
td,
p {
  margin: 0px;
  padding: 0px;
}

li {
  list-style-type: none;
}

.ac {
  text-align: center !important;
}

.ar {
  text-align: right !important;
}

.al {
  text-align: left !important;
}

@media screen and (min-width: 751px) {
  html {
    font-size: 16px;
    font-size: 1.6162vw;
  }
}

@media screen and (min-width: 990px) {
  html {
    min-width: 990px;
    font-size: 16px;
  }
}

@media screen and (max-width: 750px) {
  html {
    font-size: 3.4667vw;
  }
}

html > body {
  width: 100%;
  color: #7b4200;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  -webkit-text-size-adjust: 100%;
}

html > body a {
  color: #7b4200;
}

html > body img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

@media all and (-ms-high-contrast: none) {
  html > body {
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  }
}

.clearfix {
  zoom: 1;
}

.clearfix:before, .clearfix:after {
  display: table;
  content: '';
}

.clearfix:after {
  clear: both;
}

#wrap {
  overflow: hidden;
}

@media screen and (min-width: 751px) {
  #wrap {
    padding-bottom: 4.938rem;
  }
  #wrap a[href*='tel:'] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}

@media screen and (max-width: 750px) {
  #wrap {
    padding-bottom: 5.385rem;
  }
}

.container {
  position: relative;
  width: 100%;
  margin: 0 auto;
}

@media screen and (min-width: 990px) {
  .container {
    max-width: 990px;
  }
}

.pc_none {
  display: none;
}

@media screen and (max-width: 750px) {
  .pc_none {
    display: inline;
  }
}

.sp_none {
  display: inline;
}

@media screen and (max-width: 750px) {
  .sp_none {
    display: none;
  }
}

@media screen and (min-width: 751px) {
  #fv {
    background: url(../img/fv_bg01.jpg) no-repeat center top/125rem;
  }
  #fv h2 {
    position: absolute;
    left: 0;
    top: 1rem;
    z-index: 1;
    width: 13.125rem;
  }
}

@media screen and (max-width: 750px) {
  #fv {
    background: url(../img/fv_bg01_sp.jpg) no-repeat center top/100%;
  }
  #fv h2 {
    position: absolute;
    left: 0;
    top: 0.731rem;
    z-index: 1;
    width: 32.27%;
  }
}

@media screen and (min-width: 751px) {
  #cv01 {
    margin-top: -1.875rem;
    background: url(../img/cv_bg01.png) no-repeat center top/125rem;
    height: 50.688rem;
  }
}

@media screen and (max-width: 750px) {
  #cv01 {
    margin-top: -1.154rem;
    background: url(../img/cv_bg01_sp.png) no-repeat center top/100%;
    height: 41rem;
  }
}

@media screen and (min-width: 751px) {
  dl.cv_wrap {
    position: relative;
  }
  dl.cv_wrap dd {
    position: absolute;
    z-index: 1;
    color: #7b4200;
  }
  dl.cv_wrap dd:first-of-type {
    left: 11.01%;
    top: 15rem;
    width: 49.49%;
    text-align: center;
    font-size: 0.875rem;
    padding: 0.438rem 0;
    border-top: 0.063rem solid #7b4200;
    border-bottom: 0.063rem solid #7b4200;
  }
  dl.cv_wrap dd:nth-of-type(2) {
    left: 9.6%;
    top: 18.25rem;
    height: 2.375rem;
    width: 52.53%;
    background: #e6e6e6;
    border-radius: 1.188rem;
    font-size: 1rem;
    line-height: 2.375rem;
    padding: 0 1.375rem;
  }
  dl.cv_wrap dd:nth-of-type(2) span.map {
    padding-left: 1.5rem;
    background: url(../img/icon_map.png) no-repeat left center/1.188rem;
  }
  dl.cv_wrap dd:nth-of-type(2) span.fb {
    font-weight: bold;
  }
}

@media screen and (max-width: 750px) {
  dl.cv_wrap {
    position: relative;
  }
  dl.cv_wrap dd {
    position: absolute;
    z-index: 1;
    color: #7b4200;
  }
  dl.cv_wrap dd:first-of-type {
    left: 7.73%;
    top: 11.077rem;
    width: 52%;
    font-size: 0.923rem;
    line-height: 1.378rem;
    padding: 0.269rem 0;
    border-top: 0.038rem solid #7b4200;
    border-bottom: 0.038rem solid #7b4200;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  dl.cv_wrap dd:first-of-type span {
    display: block;
    white-space: nowrap;
  }
  dl.cv_wrap dd:first-of-type span.left {
    width: 3.846rem;
    margin-right: 0.462rem;
  }
  dl.cv_wrap dd:first-of-type span.right {
    width: 10.962rem;
  }
  dl.cv_wrap dd:nth-of-type(2) {
    left: 7.73%;
    top: 16.923rem;
    width: 84%;
    background: #e6e6e6;
    border-radius: 0.731rem;
    font-size: 1rem;
    line-height: 1.231rem;
    padding: 0.692rem 3rem 0.692rem 0.846rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-line-pack: center;
        align-content: center;
  }
  dl.cv_wrap dd:nth-of-type(2) span.map {
    padding-left: 2.538rem;
    background: url(../img/icon_map_sp.png) no-repeat left center/1.769rem;
    width: 7.769rem;
    display: block;
    line-height: 2.692rem;
    height: 2.692rem;
    white-space: nowrap;
  }
  dl.cv_wrap dd:nth-of-type(2) span.fb {
    font-weight: bold;
    width: 12.308rem;
    display: block;
  }
  dl.cv_wrap dd:nth-of-type(3) {
    position: absolute;
    z-index: 1;
    text-align: right;
    width: 100%;
    padding: 0 4%;
    bottom: 1.538rem;
    font-size: 0.846rem;
    line-height: 1;
    left: 50%;
    margin-left: -50%;
  }
}

@media screen and (min-width: 751px) {
  #merit .bg01 {
    background: url(../img/merit_bg01.jpg) no-repeat center top/125rem;
    height: 196.25rem;
  }
  #merit .bg01 .merit_txt01 {
    position: relative;
  }
  #merit .bg01 .merit_txt01 dd {
    position: absolute;
    z-index: 1;
    width: 12.625rem;
    padding-top: 3.625rem;
    text-align: center;
    font-size: 1rem;
    line-height: 1.5rem;
  }
  #merit .bg01 .merit_txt01 dd span {
    font-weight: bold;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(75%, #ffe460), to(transparent));
    background: linear-gradient(transparent 40%, #ffe460 75%, transparent 100%);
  }
  #merit .bg01 .merit_txt01 dd:first-of-type {
    top: 8.563rem;
    left: 12%;
  }
  #merit .bg01 .merit_txt01 dd:nth-of-type(2) {
    top: 2rem;
    left: 29%;
  }
  #merit .bg01 .merit_txt01 dd:nth-of-type(3) {
    top: 2.375rem;
    left: 50%;
  }
  #merit .bg01 .merit_txt01 dd:nth-of-type(4) {
    top: 9rem;
    left: 67.47%;
  }
  #merit .bg01 .merit_txt01 p.txt {
    position: absolute;
    z-index: 1;
    text-align: center;
    font-size: 1.625rem;
    left: 50%;
    margin-left: -50%;
    width: 100%;
    top: 23.75rem;
    font-weight: bold;
  }
  #merit .bg01 .merit_txt02 {
    position: relative;
  }
  #merit .bg01 .merit_txt02 ul {
    position: absolute;
    left: 10.81%;
    bottom: 0;
  }
  #merit .bg01 .merit_txt02 ul li {
    font-size: 1.25rem;
    width: 20.313rem;
    height: 2.25rem;
    line-height: 2.25rem;
    padding-left: 0.625rem;
    background: url(../img/merit_p01_bg01.jpg) no-repeat right center/0.875rem, #ffffff;
  }
  #merit .bg01 .merit_txt02 ul li span.icon {
    background: url(../img/merit_p01_check.png) no-repeat left center/1.125rem;
    padding-left: 1.625rem;
  }
  #merit .bg01 .merit_txt02 ul li span.fb {
    font-weight: bold;
  }
  #merit .bg01 .merit_txt02 ul li:not(:last-child) {
    margin-bottom: 0.5rem;
  }
  #merit .bg01 .merit_txt03 {
    position: relative;
    margin-bottom: 1.125rem;
  }
  #merit .bg01 .merit_txt03 dd {
    text-align: center;
    font-size: 1.25rem;
    line-height: 1.938rem;
    font-weight: bold;
    position: absolute;
    width: 14.813rem;
    left: 65.66%;
    top: 8.563rem;
  }
  #merit .bg01 .merit_txt04 {
    position: relative;
    margin-bottom: 5.313rem;
  }
  #merit .bg01 .merit_txt04 dt {
    width: 20.2%;
    left: 50%;
    top: -1.125rem;
    margin-left: -10.1%;
    position: absolute;
    z-index: 1;
    height: 2.5rem;
    color: #ffffff;
    font-size: 1.375rem;
    line-height: 2.5rem;
    font-weight: bold;
    text-align: center;
    background: #d8b829;
    border-radius: 1.25rem;
  }
  #merit .bg01 .merit_txt04 dd {
    height: 13.125rem;
    width: 94.95%;
    margin: 0 auto;
    border-radius: 6.563rem;
    background: #ffffff;
    -webkit-box-shadow: 1.25rem 1.25rem 0.875rem rgba(0, 0, 0, 0.2);
            box-shadow: 1.25rem 1.25rem 0.875rem rgba(0, 0, 0, 0.2);
  }
  #merit .bg01 .merit_txt04 dd ul {
    width: 100%;
    left: 50%;
    top: 2.125rem;
    margin-left: -50%;
    position: absolute;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #merit .bg01 .merit_txt04 dd ul li {
    width: 6.875rem;
    padding-top: 7.188rem;
    text-align: center;
    font-size: 1rem;
    line-height: 1.313rem;
  }
  #merit .bg01 .merit_txt04 dd ul li:not(:last-child) {
    margin-right: 0.563rem;
  }
  #merit .bg01 .merit_txt04 dd ul li:first-of-type {
    background: url(../img/merit_p01_icon01.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(2) {
    background: url(../img/merit_p01_icon02.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(3) {
    background: url(../img/merit_p01_icon03.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(4) {
    background: url(../img/merit_p01_icon04.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(5) {
    background: url(../img/merit_p01_icon05.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(6) {
    background: url(../img/merit_p01_icon06.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(7) {
    background: url(../img/merit_p01_icon07.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt05 {
    position: relative;
    width: 95.96%;
    margin: 0 auto 5.938rem;
    -webkit-box-shadow: 1rem 1rem 1rem rgba(0, 0, 0, 0.2);
            box-shadow: 1rem 1rem 1rem rgba(0, 0, 0, 0.2);
  }
  #merit .bg01 .merit_txt05 dd {
    position: absolute;
    font-size: 1rem;
    line-height: 1.688rem;
    color: #7b4200;
    left: 2rem;
    z-index: 1;
  }
  #merit .bg01 .merit_txt05 dd.txt01 {
    top: 4.5rem;
    width: 33.875rem;
  }
  #merit .bg01 .merit_txt05 dd.txt02 {
    top: 16.375rem;
    width: 54.375rem;
  }
  #merit .bg01 .merit_txt05 dd.txt02 span:first-of-type {
    display: block;
    width: 33.875rem;
    margin-bottom: 1.25rem;
  }
  #merit .bg01 .merit_txt05 dd.name {
    font-size: 0.875rem;
    width: 10rem;
    height: 1.75rem;
    line-height: 1.75rem;
    text-align: center;
    top: 15.625rem;
    left: 45.313rem;
    border-radius: 0.875rem;
    color: #7b4200;
    background: #ffffff;
    -webkit-box-shadow: 1rem 1rem 0.75rem rgba(0, 0, 0, 0.2);
            box-shadow: 1rem 1rem 0.75rem rgba(0, 0, 0, 0.2);
  }
  .merit_txt05_img {
    position: relative;
  }
  .merit_txt05_img picture{
    position: relative;
    z-index: 1;
  }
  .merit_txt05_img_main {
    display: block;
    left: -12.5%;
    top: 0;
    max-width: 1138px;
    position: absolute;
    width: 115%;
  }
  #merit .bg01 .merit_txt06 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin-bottom: 3.125rem;
  }
  #merit .bg01 .merit_txt06 li {
    width: 18.75rem;
  }
  #merit .bg01 .merit_txt06 li:not(:last-child) {
    margin-right: 0.875rem;
  }
  #merit .bg01 .merit_txt07 {
    width: 62.12%;
    margin: 0 auto;
  }
  #merit .bg02 {
    background: url(../img/merit_bg02.jpg) no-repeat center top/125rem;
    height: 109.375rem;
    padding-top: 8.313rem;
  }
  #merit .bg02 .merit_txt01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding-top: 16.438rem;
    margin-bottom: 4.375rem;
  }
  #merit .bg02 .merit_txt01 dl {
    width: 19.375rem;
  }
  #merit .bg02 .merit_txt01 dt {
    text-align: center;
    margin-bottom: 1.188rem;
  }
  #merit .bg02 .merit_txt01 dt img {
    width: 17.5rem;
  }
  #merit .bg02 .merit_txt01 dd {
    font-size: 1rem;
    line-height: 1.688rem;
  }
  #merit .bg02 .merit_txt01 dd span.fb {
    font-weight: bold;
  }
  #merit .bg02 .merit_txt01 dd span.att {
    font-size: 0.875rem;
    display: block;
    padding-top: 0.5rem;
  }
  #merit .bg02 .merit_txt02 dd {
    margin-top: -9rem;
  }
}

@media only screen and (min-width: 751px) and (max-width: 989px) {
  #merit .bg01 {
    background: url(../img/merit_bg01.jpg) no-repeat center top/202.02%;
    height: 310.38vw;
  }
}

@media screen and (max-width: 750px) {
  #merit .bg01 {
    background: url(../img/merit_bg01_sp.jpg) no-repeat center top/100%, #eae5d9;
    padding-bottom: 2.038rem;
  }
  #merit .bg01 .merit_txt01 {
    position: relative;
  }
  #merit .bg01 .merit_txt01 dd {
    position: absolute;
    z-index: 1;
    width: 8.154rem;
    padding-top: 2.308rem;
    text-align: center;
    font-size: 1rem;
    line-height: 1.521rem;
    white-space: nowrap;
  }
  #merit .bg01 .merit_txt01 dd span {
    font-weight: bold;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(40%, transparent), color-stop(75%, #ffe460), to(transparent));
    background: linear-gradient(transparent 40%, #ffe460 75%, transparent 100%);
  }
  #merit .bg01 .merit_txt01 dd:first-of-type {
    top: 11.154rem;
    left: 0;
  }
  #merit .bg01 .merit_txt01 dd:nth-of-type(2) {
    top: 1.154rem;
    left: 14.7%;
  }
  #merit .bg01 .merit_txt01 dd:nth-of-type(3) {
    top: 1.154rem;
    left: 52%;
  }
  #merit .bg01 .merit_txt01 dd:nth-of-type(4) {
    top: 11.538rem;
    left: 67.47%;
  }
  #merit .bg01 .merit_txt01 p.txt {
    position: absolute;
    z-index: 1;
    text-align: center;
    font-size: 1.385rem;
    left: 50%;
    margin-left: -50%;
    width: 100%;
    top: 27.462rem;
    font-weight: bold;
  }
  #merit .bg01 .merit_txt02 {
    position: relative;
  }
  #merit .bg01 .merit_txt02 ul {
    position: absolute;
    left: 4%;
    bottom: 0.462rem;
    z-index: 1;
  }
  #merit .bg01 .merit_txt02 ul li {
    font-size: 1.077rem;
    width: 16.577rem;
    height: 1.923rem;
    line-height: 1.923rem;
    padding-left: 0.538rem;
    background: #fff;
    position: relative;
  }
  #merit .bg01 .merit_txt02 ul li:after {
    position: absolute;
    content: '';
    z-index: 1;
    right: -0.615rem;
    top: 0;
    height: 1.923rem;
    width: 0.615rem;
    background: url(../img/merit_p01_bg01_sp.png) no-repeat right center/100%;
  }
  #merit .bg01 .merit_txt02 ul li span.icon {
    background: url(../img/merit_p01_check_sp.png) no-repeat left center/0.885rem;
    padding-left: 1.346rem;
  }
  #merit .bg01 .merit_txt02 ul li span.fb {
    font-weight: bold;
  }
  #merit .bg01 .merit_txt02 ul li:not(:last-child) {
    margin-bottom: 0.385rem;
  }
  #merit .bg01 .merit_txt03 {
    position: relative;
    margin-bottom: 0.923rem;
  }
  #merit .bg01 .merit_txt03 dd {
    text-align: center;
    font-size: 1.077rem;
    line-height: 1.615rem;
    font-weight: bold;
    position: absolute;
    width: 100%;
    margin-left: -50%;
    left: 50%;
    top: 14.231rem;
  }
  #merit .bg01 .merit_txt04 {
    position: relative;
    margin-bottom: 2.192rem;
  }
  #merit .bg01 .merit_txt04 dt {
    width: 31.47%;
    left: 50%;
    top: -0.923rem;
    margin-left: -15.745%;
    position: absolute;
    z-index: 1;
    height: 1.815rem;
    color: #ffffff;
    font-size: 1.077rem;
    line-height: 1.815rem;
    font-weight: bold;
    text-align: center;
    background: #d8b829;
    border-radius: 1rem;
  }
  #merit .bg01 .merit_txt04 dd {
    height: 20.808rem;
    width: 92%;
    margin: 0 auto;
    border-radius: 3.577rem;
    background: #ffffff;
    -webkit-box-shadow: 0.769rem 0.769rem 0.538rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.769rem 0.769rem 0.538rem rgba(0, 0, 0, 0.2);
  }
  #merit .bg01 .merit_txt04 dd ul {
    width: 100%;
    left: 50%;
    top: 2.115rem;
    margin-left: -50%;
    position: absolute;
    z-index: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  #merit .bg01 .merit_txt04 dd ul li {
    width: 5.385rem;
    padding-top: 5.769rem;
    text-align: center;
    font-size: 1rem;
    line-height: 1.155rem;
    white-space: nowrap;
    margin-bottom: 1.308rem;
  }
  #merit .bg01 .merit_txt04 dd ul li:not(:last-child) {
    margin-right: 0.462rem;
  }
  #merit .bg01 .merit_txt04 dd ul li:first-of-type {
    background: url(../img/merit_p01_icon01_sp.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(2) {
    background: url(../img/merit_p01_icon02_sp.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(3) {
    background: url(../img/merit_p01_icon03_sp.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(4) {
    background: url(../img/merit_p01_icon04_sp.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(5) {
    background: url(../img/merit_p01_icon05_sp.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(6) {
    background: url(../img/merit_p01_icon06_sp.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt04 dd ul li:nth-of-type(7) {
    background: url(../img/merit_p01_icon07_sp.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt05 {
    position: relative;
    width: 92%;
    margin: 0 auto 1.846rem;
    -webkit-box-shadow: 0.615rem 0.615rem 0.615rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.615rem 0.615rem 0.615rem rgba(0, 0, 0, 0.2);
    background: url(../img/merit_p01_img03_sp.png) no-repeat center top/100%;
    border-radius: 0.385rem;
    height: 40rem;
  }
  .merit_txt05_img_main{
    display: none;
  }
  #merit .bg01 .merit_txt05.on {
    height: 63.077rem;
    background: url(../img/merit_p01_img03on_sp.png) no-repeat center top/100%;
  }
  #merit .bg01 .merit_txt05.on dd.txt02 {
    height: auto;
    /*チェックされていたら、高さを戻す*/
    -ms-filter: none;
    -webkit-filter: none;
            filter: none;
  }
  #merit .bg01 .merit_txt05 dt {
    display: none;
  }
  #merit .bg01 .merit_txt05 dd {
    font-size: 1.077rem;
    line-height: 1.731rem;
    color: #7b4200;
    padding: 0 1.385rem;
  }
  #merit .bg01 .merit_txt05 dd.txt01 {
    padding-top: 3.846rem;
  }
  #merit .bg01 .merit_txt05 dd.txt01:before {
    content: '';
    width: 12.308rem;
    height: 12.077rem;
    display: block;
    float: right;
  }
  #merit .bg01 .merit_txt05 dd.txt02 {
    height: 13.308rem;
    position: relative;
    overflow: hidden;
    -ms-filter: blur(6px);
    -webkit-filter: blur(6px);
            filter: blur(6px);
  }
  #merit .bg01 .merit_txt05 dd.txt02 span {
    display: block;
  }
  #merit .bg01 .merit_txt05 dd.name {
    position: absolute;
    z-index: 1;
    font-size: 1rem;
    width: 11.154rem;
    height: 1.923rem;
    line-height: 1.923rem;
    text-align: center;
    top: 13.462rem;
    left: 14.231rem;
    padding: 0;
    border-radius: 0.538rem;
    color: #7b4200;
    white-space: nowrap;
    background: #ffffff;
    -webkit-box-shadow: 0.615rem 0.615rem 0.462rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.615rem 0.615rem 0.462rem rgba(0, 0, 0, 0.2);
  }
  #merit .bg01 .merit_txt05 .grad-btn {
    position: absolute;
    left: 50%;
    width: 21.154rem;
    margin-left: -10.577rem;
    z-index: 1;
    top: 33.846rem;
  }
  #merit .bg01 .merit_txt05 .grad-trigger {
    display: none;
    /*チェックボックスは常に非表示*/
  }
  #merit .bg01 .merit_txt05 .grad-trigger:checked + .grad-btn {
    display: none;
    /*チェックされていたら、grad-btnを非表示にする*/
  }
  #merit .bg01 .merit_txt05 .grad-trigger:checked ~ .txt02 {
    height: auto;
    /*チェックされていたら、高さを戻す*/
    -ms-filter: none;
    -webkit-filter: none;
            filter: none;
  }
  #merit .bg01 .merit_txt05 .grad-trigger:checked ~ .txt02::before {
    display: none;
    /*チェックされていたら、grad-itemのbeforeを非表示にする*/
  }
  #merit .bg01 .merit_txt06 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
  }
  #merit .bg01 .merit_txt06 li {
    width: 45.33%;
  }
  #merit .bg01 .merit_txt06 li:first-of-type {
    margin-right: 0.385rem;
  }
  #merit .bg01 .merit_txt06 li:not(:last-child) {
    margin-bottom: 0.385rem;
  }
  #merit .bg01 .merit_txt06 li:nth-of-type(3) {
    width: 100%;
  }
  #merit .bg01 .merit_txt07 {
    width: 82%;
    margin: -2.423rem auto 0;
  }
  #merit .bg02 {
    background: url(../img/merit_bg02_sp.jpg) no-repeat center top/100%, #b1dad1;
    padding-top: 3.962rem;
  }
  #merit .bg02 .merit_txt01 dl:nth-of-type(2) {
    margin-top: -1.269rem;
    margin-bottom: 1.538rem;
  }
  #merit .bg02 .merit_txt01 dd {
    font-size: 1.077rem;
    line-height: 1.654rem;
    margin: 0 4%;
  }
  #merit .bg02 .merit_txt01 dd span.fb {
    font-weight: bold;
  }
  #merit .bg02 .merit_txt01 dd span.att {
    font-size: 0.923rem;
    display: block;
    text-align: right;
    padding-top: 0.846rem;
  }
}

@media screen and (min-width: 751px) {
  #service {
    background: -webkit-gradient(linear, left bottom, left top, color-stop(15%, #faf6ee), color-stop(85%, transparent)), no-repeat center top url(../img/service_bg01.jpg), #faf6ee;
    background: linear-gradient(to top, #faf6ee 15%, transparent 85%), no-repeat center top url(../img/service_bg01.jpg), #faf6ee;
    background-size: 125rem;
    padding-bottom: 7.188rem;
  }
  #service .service_wrap {
    width: 90.91%;
    margin: 0 auto;
  }
  #service .service_wrap .service_content:not(:last-child) {
    margin-bottom: 1.688rem;
  }
  #service .service_wrap .service_content:first-of-type dl:first-of-type {
    background: url(../img/service_p01.png) no-repeat left top, url(../img/service_p_bg01.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content:first-of-type dl:nth-of-type(2) {
    background: url(../img/service_p02.png) no-repeat left top, url(../img/service_p_bg01.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content:first-of-type dl:nth-of-type(3) {
    background: url(../img/service_p03.png) no-repeat left top, url(../img/service_p_bg01.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content:nth-of-type(2) dl:first-of-type {
    background: url(../img/service_p01.png) no-repeat left top, url(../img/service_p_bg02.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content:nth-of-type(2) dl:nth-of-type(2) {
    background: url(../img/service_p02.png) no-repeat left top, url(../img/service_p_bg02.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content:nth-of-type(2) dl:nth-of-type(3) {
    background: url(../img/service_p03.png) no-repeat left top, url(../img/service_p_bg02.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content:nth-of-type(3) dl:first-of-type {
    background: url(../img/service_p01.png) no-repeat left top, url(../img/service_p_bg03.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content:nth-of-type(3) dl:nth-of-type(2) {
    background: url(../img/service_p02.png) no-repeat left top, url(../img/service_p_bg03.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content:nth-of-type(3) dl:nth-of-type(3) {
    background: url(../img/service_p03.png) no-repeat left top, url(../img/service_p_bg03.png) no-repeat left top;
    background-size: 7.125rem, 7.125rem;
  }
  #service .service_wrap .service_content h3 {
    position: relative;
  }
  #service .service_wrap .service_content h3:hover {
    cursor: pointer;
  }
  #service .service_wrap .service_content h3.on:after {
    background: url(../img/service_icon_minus.png) no-repeat center top/100%;
  }
  #service .service_wrap .service_content h3:after {
    content: '';
    background: url(../img/service_icon_plus.png) no-repeat center top/100%;
    width: 2.625rem;
    height: 2.625rem;
    position: absolute;
    z-index: 1;
    display: block;
    right: 1rem;
    margin-top: -1.313rem;
    top: 50%;
  }
  #service .service_wrap .service_content .service_txt01 {
    background: #ffffff;
    padding: 1.563rem 1.875rem 2.375rem;
    border-radius: 0 0 1.875rem 1.875rem;
    display: none;
  }
  #service .service_wrap .service_content .service_txt01 p {
    font-size: 1rem;
    line-height: 1.688rem;
    margin-bottom: 2.063rem;
  }
  #service .service_wrap .service_content .service_txt01 dl {
    padding-left: 8.25rem;
    padding-right: 1.625rem;
  }
  #service .service_wrap .service_content .service_txt01 dl:not(:last-child) {
    margin-bottom: 1.375rem;
    padding-bottom: 1.375rem;
    border-bottom: 0.125rem solid #e5dfcf;
  }
  #service .service_wrap .service_content .service_txt01 dl dt {
    font-weight: bold;
    font-size: 1.125rem;
    line-height: 1.688rem;
    margin-bottom: 0.188rem;
  }
  #service .service_wrap .service_content .service_txt01 dl dd {
    font-size: 1rem;
    line-height: 1.688rem;
  }
}

@media screen and (max-width: 750px) {
  #service {
    background: -webkit-gradient(linear, left bottom, left top, color-stop(15%, #faf6ee), color-stop(85%, transparent)), no-repeat center top url(../img/service_bg01_sp.jpg), #faf6ee;
    background: linear-gradient(to top, #faf6ee 15%, transparent 85%), no-repeat center top url(../img/service_bg01_sp.jpg), #faf6ee;
    background-size: 100%;
    padding-bottom: 1.769rem;
  }
  #service .service_wrap {
    width: 92%;
    margin: 0 auto;
  }
  #service .service_wrap .service_content:not(:last-child) {
    margin-bottom: 0.769rem;
  }
  #service .service_wrap .service_content:first-of-type dl:first-of-type {
    background: url(../img/service_p01.png) no-repeat left top, url(../img/service_p_bg01.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content:first-of-type dl:nth-of-type(2) {
    background: url(../img/service_p02.png) no-repeat left top, url(../img/service_p_bg01.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content:first-of-type dl:nth-of-type(3) {
    background: url(../img/service_p03.png) no-repeat left top, url(../img/service_p_bg01.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content:nth-of-type(2) dl:first-of-type {
    background: url(../img/service_p01.png) no-repeat left top, url(../img/service_p_bg02.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content:nth-of-type(2) dl:nth-of-type(2) {
    background: url(../img/service_p02.png) no-repeat left top, url(../img/service_p_bg02.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content:nth-of-type(2) dl:nth-of-type(3) {
    background: url(../img/service_p03.png) no-repeat left top, url(../img/service_p_bg02.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content:nth-of-type(3) dl:first-of-type {
    background: url(../img/service_p01.png) no-repeat left top, url(../img/service_p_bg03.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content:nth-of-type(3) dl:nth-of-type(2) {
    background: url(../img/service_p02.png) no-repeat left top, url(../img/service_p_bg03.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content:nth-of-type(3) dl:nth-of-type(3) {
    background: url(../img/service_p03.png) no-repeat left top, url(../img/service_p_bg03.png) no-repeat left top;
    background-size: 6.038rem, 6.038rem;
  }
  #service .service_wrap .service_content h3 {
    position: relative;
  }
  #service .service_wrap .service_content h3:hover {
    cursor: pointer;
  }
  #service .service_wrap .service_content h3.on:after {
    background: url(../img/service_icon_minus.png) no-repeat center top/100%;
  }
  #service .service_wrap .service_content h3:after {
    content: '';
    background: url(../img/service_icon_plus.png) no-repeat center top/100%;
    width: 1.538rem;
    height: 1.538rem;
    position: absolute;
    z-index: 1;
    display: block;
    right: 1.5rem;
    margin-top: -0.769rem;
    top: 50%;
  }
  #service .service_wrap .service_content .service_txt01 {
    background: #ffffff;
    padding: 0.962rem 1.077rem 1.846rem;
    border-radius: 0 0 1.154rem 1.154rem;
    display: none;
  }
  #service .service_wrap .service_content .service_txt01 p {
    font-size: 1.077rem;
    line-height: 1.654rem;
    margin-bottom: 1.269rem;
  }
  #service .service_wrap .service_content .service_txt01 dl {
    padding-left: 6.846rem;
    padding-right: 0.692rem;
    padding-top: 0.192rem;
  }
  #service .service_wrap .service_content .service_txt01 dl:not(:last-child) {
    margin-bottom: 1.654rem;
    padding-bottom: 1.308rem;
    border-bottom: 0.077rem solid #e5dfcf;
  }
  #service .service_wrap .service_content .service_txt01 dl dt {
    font-weight: bold;
    font-size: 1.231rem;
    line-height: 1.769rem;
    white-space: nowrap;
    margin-bottom: 0.769rem;
  }
  #service .service_wrap .service_content .service_txt01 dl dd {
    font-size: 1.077rem;
    line-height: 1.654rem;
  }
}

@media screen and (min-width: 751px) {
  #plan {
    background: url(../img/plan_bg01.jpg) no-repeat center top, #faf6ee;
    background-size: 125rem;
    height: 81.5rem;
    padding-top: 5.375rem;
  }
  #plan .plan_wrap {
    width: 86.87%;
    margin: -1.875rem auto 0;
  }
  #plan .plan_txt01 {
    border-top: 0.063rem solid #7b4200;
    padding: 1.125rem 0.75rem;
  }
  #plan .plan_txt01 p {
    font-size: 0.875rem;
    line-height: 1.375rem;
  }
  #plan .plan_txt01 p:not(:last-child) {
    margin-bottom: 0.75rem;
  }
  #plan .plan_txt02 dl {
    border-top: 0.063rem solid #7b4200;
    padding: 0 0.75rem 1.125rem;
  }
  #plan .plan_txt02 dl:not(:last-child) {
    margin-bottom: 0.75rem;
  }
  #plan .plan_txt02 dl:last-of-type {
    border-bottom: 0.063rem solid #7b4200;
  }
  #plan .plan_txt02 dl dt {
    height: 1.625rem;
    font-weight: bold;
    color: #ffffff;
    font-size: 0.875rem;
    line-height: 1.625rem;
    width: 11rem;
    text-align: center;
    background: #7b4200;
    border-radius: 0 0 0.75rem 0.75rem;
    margin-bottom: 0.813rem;
  }
  #plan .plan_txt02 dl dd {
    font-size: 0.875rem;
    line-height: 1.375rem;
  }
}

@media only screen and (min-width: 751px) and (max-width: 989px) {
  #plan {
    height: 130.5vw;
  }
}

@media screen and (max-width: 750px) {
  #plan {
    background: #e0c654;
    padding-bottom: 3.077rem;
  }
  #plan .plan_wrap {
    width: 92%;
    margin: 0 auto;
  }
  #plan .plan_wrap p.att {
    text-align: right;
    font-size: 0.846rem;
    padding-top: 0.231rem;
  }
  #plan .plan_txt01 {
    border-top: 0.038rem solid #7b4200;
    padding: 1.385rem 0.462rem;
    margin-top: -1.154rem;
  }
  #plan .plan_txt01 p {
    font-size: 1.077rem;
    line-height: 1.654rem;
  }
  #plan .plan_txt01 p:not(:last-child) {
    margin-bottom: 1.769rem;
  }
  #plan .plan_txt01 p span.fb {
    font-weight: bold;
  }
  #plan .plan_txt02 dl {
    border-top: 0.038rem solid #7b4200;
    padding: 0 0.462rem 0.846rem;
  }
  #plan .plan_txt02 dl:not(:last-child) {
    margin-bottom: 0.308rem;
  }
  #plan .plan_txt02 dl:last-of-type {
    border-bottom: 0.038rem solid #7b4200;
  }
  #plan .plan_txt02 dl dt {
    height: 2.154rem;
    font-weight: bold;
    color: #ffffff;
    font-size: 1.154rem;
    line-height: 2.154rem;
    width: 14.538rem;
    text-align: center;
    background: #7b4200;
    border-radius: 0 0 0.462rem 0.462rem;
    margin-bottom: 1.308rem;
  }
  #plan .plan_txt02 dl dd {
    font-size: 1.077rem;
    line-height: 1.654rem;
  }
}

@media screen and (min-width: 751px) {
  #voice {
    padding-top: 6.125rem;
    background: url(../img/voice_bg01.jpg) no-repeat center top/125rem;
    height: 97.25rem;
  }
  #voice h2 {
    margin-bottom: 2.063rem;
  }
  #voice .voice_wrap dl {
    position: relative;
  }
  #voice .voice_wrap dl:not(:last-child) {
    margin-bottom: 0.375rem;
  }
  #voice .voice_wrap dl:first-of-type dd:first-of-type {
    width: 28.25rem;
    top: 13.063rem;
    left: 27.375rem;
  }
  #voice .voice_wrap dl:first-of-type dd:nth-of-type(2) {
    top: 31rem;
  }
  #voice .voice_wrap dl:nth-of-type(2) dd:first-of-type {
    width: 26.875rem;
    top: 14.625rem;
    left: 3.125rem;
  }
  #voice .voice_wrap dl:nth-of-type(2) dd:nth-of-type(2) {
    top: 27.25rem;
  }
  #voice .voice_wrap dl dd {
    position: absolute;
    z-index: 1;
    font-size: 1rem;
    line-height: 1.688rem;
  }
  #voice .voice_wrap dl dd:first-of-type span {
    font-weight: bold;
    color: #ec486a;
  }
  #voice .voice_wrap dl dd:nth-of-type(2) {
    color: #ffffff;
    width: 39.875rem;
    left: 15.688rem;
  }
}

@media screen and (max-width: 750px) {
  #voice {
    background: url(../img/voice_bg01_sp.jpg) no-repeat center top/cover;
    height: 100rem;
  }
  #voice .voice_wrap dl {
    position: relative;
    width: 100%;
  }
  #voice .voice_wrap dl:not(:last-child) {
    margin-bottom: 1.038rem;
  }
  #voice .voice_wrap dl:first-of-type dd:first-of-type {
    top: 8.846rem;
  }
  #voice .voice_wrap dl:first-of-type dd:first-of-type:before {
    content: '';
    width: 9.038rem;
    height: 11.077rem;
    display: block;
    float: left;
  }
  #voice .voice_wrap dl:first-of-type dd:nth-of-type(2) {
    top: 71.192%;
  }
  #voice .voice_wrap dl:first-of-type dd:nth-of-type(2):before {
    content: '';
    width: 9.846rem;
    height: 6.538rem;
    display: block;
    float: left;
  }
  #voice .voice_wrap dl:nth-of-type(2) dd:first-of-type {
    top: 7.962rem;
    width: 12.615rem;
  }
  #voice .voice_wrap dl:nth-of-type(2) dd:nth-of-type(2) {
    top: 67%;
  }
  #voice .voice_wrap dl:nth-of-type(2) dd:nth-of-type(2):before {
    content: '';
    width: 9.846rem;
    height: 6.923rem;
    display: block;
    float: left;
  }
  #voice .voice_wrap dl dd {
    position: absolute;
    z-index: 1;
    width: 81.33%;
    margin-left: -40.675%;
    left: 50%;
  }
  #voice .voice_wrap dl dd:first-of-type {
    font-size: 1.077rem;
    line-height: 1.654rem;
  }
  #voice .voice_wrap dl dd:first-of-type span {
    font-weight: bold;
    color: #ec486a;
  }
  #voice .voice_wrap dl dd:nth-of-type(2) {
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.462rem;
  }
}

@media screen and (min-width: 751px) {
  #flow .bg01 {
    background: #fff1af;
    padding: 3.438rem 0 4rem;
  }
  #flow .bg01 .flow_wrap {
    width: 93.94%;
    margin: 0 auto;
  }
  #flow .bg01 h2 {
    margin-bottom: 0.813rem;
  }
  #flow .bg01 ul li {
    position: relative;
  }
  #flow .bg01 ul li:not(:last-child) {
    margin-bottom: 0.625rem;
  }
  #flow .bg01 ul li dd {
    position: absolute;
    left: 20.313rem;
    width: 34.375rem;
    font-size: 1rem;
    line-height: 1.688rem;
  }
  #flow .bg01 ul li:first-of-type dd {
    top: 6rem;
  }
  #flow .bg01 ul li:nth-of-type(2) dd {
    top: 4.375rem;
  }
  #flow .bg01 ul li:nth-of-type(3) dd {
    top: 5.75rem;
  }
  #flow .bg02 {
    padding-top: 3.5rem;
    background: url(../img/flow_bg01.jpg) no-repeat center top/125rem;
    height: 38.75rem;
  }
  #flow .bg02 h2 {
    margin-bottom: 1.188rem;
  }
  #flow .bg02 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  #flow .bg02 ul li {
    width: 15rem;
    background: url(../img/flow_policy_bg02.png) no-repeat center top/100%;
    margin-top: 0.625rem;
    -webkit-box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
  }
  #flow .bg02 ul li:not(:last-child) {
    margin-right: 0.625rem;
  }
  #flow .bg02 ul li.policy {
    width: 10rem;
    margin-top: 3.75rem;
    margin-right: 0;
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  #flow .bg02 ul li.bears {
    height: 26.25rem;
    background: url(../img/flow_policy_bg01.png) no-repeat center top/100%;
    margin-top: 0;
  }
  #flow .bg02 ul li.bears dt {
    font-size: 1.625rem;
    height: 3.75rem;
    line-height: 3.75rem;
  }
  #flow .bg02 ul li dt {
    text-align: center;
    color: #ffffff;
    font-size: 1.375rem;
    line-height: 3rem;
    height: 3rem;
    font-weight: bold;
  }
  #flow .bg02 ul li dd {
    padding-bottom: 0.75rem;
  }
  #flow .bg02 ul li dd.date {
    margin: 1rem auto 1.125rem;
    width: 11.25rem;
    height: 1.875rem;
    background: #e5dfcf;
    border-radius: 0.938rem;
    font-size: 1rem;
    text-align: center;
    font-weight: bold;
    color: #7b4200;
    line-height: 1.875rem;
    position: relative;
  }
  #flow .bg02 ul li dd.date:after {
    content: '';
    position: absolute;
    left: 50%;
    margin-left: -0.25rem;
    bottom: -1rem;
    width: 0;
    height: 0;
    border-top: solid 0.5rem #e5dfcf;
    border-right: solid 0.5rem transparent;
    border-bottom: solid 0.5rem transparent;
    border-left: solid 0.5rem transparent;
  }
  #flow .bg02 ul li dd.txt {
    padding: 0 0.938rem;
    font-size: 0.875rem;
    line-height: 1.438rem;
  }
  #flow .bg03 {
    padding: 4.563rem 0 4.875rem;
    background: #b1dad1;
  }
  #flow .bg03 .policy_wrap {
    width: 93.94%;
    margin: 0 auto;
  }
  #flow .bg03 dl {
    border-top: 0.063rem solid #7b4200;
  }
  #flow .bg03 dl:last-of-type {
    border-bottom: 0.063rem solid #7b4200;
  }
  #flow .bg03 dl dt {
    font-size: 1.125rem;
    height: 3.375rem;
    line-height: 3.375rem;
    font-weight: bold;
    position: relative;
  }
  #flow .bg03 dl dt:after {
    content: '';
    position: absolute;
    right: 1.125rem;
    top: 50%;
    margin-top: -0.375rem;
    width: 0;
    height: 0;
    border-top: solid 0.75rem #7b4200;
    border-right: solid 0.75rem transparent;
    border-bottom: solid 0.75rem transparent;
    border-left: solid 0.75rem transparent;
  }
  #flow .bg03 dl dt.on:after {
    border-top: solid 0.75rem transparent;
    border-bottom: solid 0.75rem #7b4200;
    margin-top: -1.125rem;
  }
  #flow .bg03 dl dt:hover {
    cursor: pointer;
  }
  #flow .bg03 dl dd {
    border-top: 0.063rem dotted #7b4200;
    padding: 1.25rem 0;
    font-size: 0.813rem;
    line-height: 1.313rem;
    display: none;
  }
  #flow .bg04 {
    background: url(../img/flow_bg02.jpg) no-repeat center top/125rem;
    padding: 5.375rem 0 5rem;
  }
  #flow .bg04 h2 {
    margin-bottom: 2.938rem;
    text-align: center;
  }
  #flow .bg04 h2 img {
    width: 93.94%;
  }
  #flow .bg04 .flow_movie {
    width: 62.42%;
    margin: 0 auto;
  }
}

@media screen and (max-width: 750px) {
  #flow .bg01 {
    background: #fff1af;
    padding: 2.038rem 0 0;
  }
  #flow .bg01 h2 {
    margin-bottom: 0.769rem;
  }
  #flow .bg01 ul {
    width: 100%;
  }
  #flow .bg01 ul li {
    position: relative;
  }
  #flow .bg01 ul li dd {
    position: absolute;
    left: 50%;
    margin-left: -11.769rem;
    width: 23.538rem;
    font-size: 1.077rem;
    line-height: 1.654rem;
  }
  #flow .bg01 ul li dd:before {
    content: '';
    width: 7.077rem;
    height: 2.692rem;
    display: block;
    float: left;
  }
  #flow .bg01 ul li:first-of-type dd {
    top: 5.5rem;
  }
  #flow .bg01 ul li:nth-of-type(2) dd {
    top: 5.5rem;
  }
  #flow .bg01 ul li:nth-of-type(3) dd {
    top: 5.5rem;
  }
  #flow .bg02 {
    padding-top: 2.231rem;
    background: url(../img/flow_bg01_sp.jpg) no-repeat center top/cover;
    height: 28.5rem;
  }
  #flow .bg02 h2 {
    margin-bottom: 1.115rem;
  }
  #flow .bg02 ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 92%;
    margin: 0 auto;
  }
  #flow .bg02 ul li {
    width: 7.692rem;
    background: url(../img/flow_policy_bg02_sp.png) no-repeat center top/100%, #fff;
    border-radius: 0.385rem;
    -webkit-box-shadow: 0.308rem 0.308rem 0.308rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.308rem 0.308rem 0.308rem rgba(0, 0, 0, 0.2);
    height: 20.577rem;
  }
  #flow .bg02 ul li:not(:last-child) {
    margin-right: 0.231rem;
  }
  #flow .bg02 ul li.policy {
    width: 2.923rem;
    margin-top: 1.231rem;
    margin-right: 0;
    background: none;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
  #flow .bg02 ul li.bears {
    background: url(../img/flow_policy_bg01_sp.png) no-repeat center top/100%, #fff;
    margin-top: 0;
  }
  #flow .bg02 ul li.bears dt {
    font-size: 1rem;
    height: 1.923rem;
    line-height: 1.923rem;
  }
  #flow .bg02 ul li dt {
    text-align: center;
    color: #ffffff;
    font-size: 0.923rem;
    line-height: 1.923rem;
    height: 1.923rem;
    letter-spacing: -0.038rem;
    white-space: nowrap;
    font-weight: bold;
  }
  #flow .bg02 ul li dd {
    padding-bottom: 0.462rem;
  }
  #flow .bg02 ul li dd.date {
    margin: 0.962rem auto 0.462rem;
    width: 6.538rem;
    height: 1.308rem;
    background: #e5dfcf;
    border-radius: 0.577rem;
    font-size: 0.769rem;
    white-space: nowrap;
    letter-spacing: -0.038rem;
    text-align: center;
    font-weight: bold;
    color: #7b4200;
    line-height: 1.308rem;
    position: relative;
  }
  #flow .bg02 ul li dd.date:after {
    content: '';
    position: absolute;
    left: 50%;
    margin-left: -0.154rem;
    bottom: -0.615rem;
    width: 0;
    height: 0;
    border-top: solid 0.308rem #e5dfcf;
    border-right: solid 0.308rem transparent;
    border-bottom: solid 0.308rem transparent;
    border-left: solid 0.308rem transparent;
  }
  #flow .bg02 ul li dd.txt {
    padding: 0 0.577rem;
    font-size: 0.885rem;
    line-height: 1.154rem;
  }
  #flow .bg03 {
    padding: 2.231rem 0;
    background: #b1dad1;
  }
  #flow .bg03 .policy_wrap {
    width: 92%;
    margin: 0 auto;
  }
  #flow .bg03 dl {
    border-top: 0.038rem solid #7b4200;
  }
  #flow .bg03 dl:last-of-type {
    border-bottom: 0.038rem solid #7b4200;
  }
  #flow .bg03 dl dt {
    font-size: 1.231rem;
    height: 3.385rem;
    line-height: 3.385rem;
    font-weight: bold;
    position: relative;
  }
  #flow .bg03 dl dt:after {
    content: '';
    position: absolute;
    right: 1.154rem;
    top: 50%;
    margin-top: -0.231rem;
    width: 0;
    height: 0;
    border-top: solid 0.462rem #7b4200;
    border-right: solid 0.462rem transparent;
    border-bottom: solid 0.462rem transparent;
    border-left: solid 0.462rem transparent;
  }
  #flow .bg03 dl dt.on:after {
    border-top: solid 0.462rem transparent;
    border-bottom: solid 0.462rem #7b4200;
    margin-top: -0.692rem;
  }
  #flow .bg03 dl dt:hover {
    cursor: pointer;
  }
  #flow .bg03 dl dd {
    border-top: 0.038rem dotted #7b4200;
    padding: 1.154rem 0;
    font-size: 1.077rem;
    line-height: 1.654rem;
    display: none;
  }
  #flow .bg03 dl dd p {
    padding-left: 1em;
    text-indent: -1em;
  }
  #flow .bg03 dl dd p:before {
    content: '･';
  }
  #flow .bg04 {
    background: url(../img/flow_bg02_sp.jpg) no-repeat center top/100%;
    padding: 2.077rem 0 1.808rem;
  }
  #flow .bg04 h2 {
    margin-bottom: 1.192rem;
    text-align: center;
  }
  #flow .bg04 .flow_movie {
    width: 82%;
    margin: 0 auto;
  }
}

@media screen and (min-width: 751px) {
  footer {
    background: #d8b829;
    padding: 0.563rem 0;
  }
  footer p.copy {
    text-align: center;
    color: #ffffff;
    font-size: 0.75rem;
  }
}

@media screen and (max-width: 750px) {
  footer {
    background: #d8b829;
    padding: 0.692rem 0;
  }
  footer p.copy {
    text-align: center;
    color: #ffffff;
    font-size: 0.923rem;
  }
}

.movie_wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.movie_wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

@media screen and (min-width: 751px) {
  .fix_right {
    position: fixed;
    z-index: 2;
    right: 2.875rem;
    bottom: 8.438rem;
    width: 20rem;
  }
}

@media screen and (max-width: 750px) {
  .fix_right {
    display: none;
  }
}

.fix_footer {
  display: none;
}

@media screen and (min-width: 751px) {
  .fix_bnr {
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    padding: 0.938rem 0;
    background: #d8b829;
    bottom: 0;
    left: 50%;
    margin-left: -50%;
    z-index: 2;
  }
  .fix_bnr li:not(:last-child) {
    margin-right: 0.625rem;
  }
}

@media screen and (max-width: 750px) {
  .fix_bnr {
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    padding: 0.692rem 0 0;
    height: 5.385rem;
    background: #d8b829;
    bottom: 0;
    left: 50%;
    margin-left: -50%;
    z-index: 2;
    -webkit-box-shadow: 0 -0.385rem 0.769rem rgba(0, 0, 0, 0.2);
            box-shadow: 0 -0.385rem 0.769rem rgba(0, 0, 0, 0.2);
  }
  .fix_bnr li:first-of-type {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 10.577rem;
  }
  .fix_bnr li:nth-of-type(2) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
    margin-right: 0.462rem;
    width: 15.423rem;
  }
}
/*# sourceMappingURL=style.css.map */