@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
   # ================================================================= */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

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 {
  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 {
  color: inherit;
}

/* Style select like a standard input */
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;
}

* {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  padding: 0;
  margin: 0;
}

html {
  font-size: 62.5%;
}

body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.8;
  font-size: 1.6rem;
}

@-moz-document url-prefix() {
  body {
    font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  }
}
section {
  padding: 0 0 10px;
}
@media screen and (min-width: 768px) {
  section {
    padding: 0 0 40px;
  }
}

a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: color 0.3s, background 0.3s, border 0.3s;
  transition: color 0.3s, background 0.3s, border 0.3s;
}

dl, ol, ul {
  padding: 0;
  margin: 0;
}

li {
  list-style: none;
}

.wrap {
  min-height: 800px;
}

.container {
  width: 100%;
  padding: 0 15px;
  max-width: 1050px;
  margin: auto;
}
@media screen and (min-width: 992px) {
  .container {
    padding: 0 60px;
    max-width: 1140px;
  }
}

/*2カラム*/
@media screen and (min-width: 768px) {
  .separate {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.separate__main {
  width: 100%;
  margin-bottom: 30px;
}
@media screen and (min-width: 768px) {
  .separate__main {
    width: calc(100% - 239px);
    margin-bottom: 0;
  }
}

.separate__sub {
  max-width: none;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .separate__sub {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .separate__sub {
    width: 100%;
    margin: 0 0 50px 18px;
    max-width: 239px;
  }
}
@media screen and (min-width: 992px) {
  .separate__sub {
    margin: 0 0 50px 54px;
  }
}

/*404*/
.sectionError {
  padding: 50px 0 10px;
}
@media screen and (min-width: 768px) {
  .sectionError {
    padding: 90px 50px;
  }
}

.error404 {
  text-align: center;
  margin: 0 0 30px;
  font-family: "Open Sans", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 6rem;
  line-height: 1.2;
  color: #988E8E;
}
.error404 span {
  display: block;
  font-size: 2rem;
}

.neck {
  background: #F5F5F5;
  padding: 10px 0 20px;
  margin: 0 0 50px;
}
@media screen and (min-width: 768px) {
  .neck {
    padding: 20px 0 90px;
    margin: 0 0 95px;
  }
}

.pageTitle {
  text-align: center;
}
.pageTitle .pageTitle__sub {
  display: block;
  font-size: 1.3rem;
  font-weight: normal;
  color: #962E34;
  font-family: "Open Sans", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.pageTitle .pageTitle__main {
  display: block;
  font-size: 2.6rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .pageTitle .pageTitle__main {
    font-size: 4rem;
  }
}

.breadcrumbs {
  font-size: 1.3rem;
  margin: 0 0 17px;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .breadcrumbs {
    margin: 0 0 50px;
  }
}
.breadcrumbs span {
  display: inline-block;
  margin: 0 30px 0 0;
  position: relative;
  color: #141C2D;
}
.breadcrumbs span::after {
  content: "＞";
  display: inline-block;
  position: absolute;
  top: 1px;
  right: -24px;
}
.breadcrumbs span a {
  display: inline-block;
  color: inherit;
  min-height: 12px;
  text-decoration: none;
  margin: 0 0 5px;
}
.breadcrumbs span a:hover {
  color: #962E34;
}
.breadcrumbs span.breadcrumbs__home a {
  padding: 0 0 0 20px;
  background: url(../img/icon_home.svg) no-repeat center left;
}
.breadcrumbs span:last-child::after {
  display: none;
}

.largeHeadline01 {
  text-align: center;
  margin: 0 0 30px;
  line-height: 1.4;
  position: relative;
}
.largeHeadline01 .largeHeadline01__sub {
  display: block;
  font-size: 1.3rem;
  font-weight: normal;
  color: #962E34;
  font-family: "Open Sans", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin: 0 0 5px;
}
.largeHeadline01 .largeHeadline01__main {
  display: block;
  font-size: 2.6rem;
  margin: 0 0 5px;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .largeHeadline01 .largeHeadline01__main {
    font-size: 3.2rem;
  }
}
.largeHeadline01 .largeHeadline01__link {
  position: absolute;
  z-index: 1;
  top: -35px;
  right: 0;
  display: none;
  font-size: 1.3rem;
  border-bottom: 1px solid #CCC;
  padding: 5px 30px 5px 5px;
  font-weight: 500;
  background: url(../img/icon_right.svg) no-repeat center right;
  text-decoration: none;
  color: #141C2D;
}
@media screen and (min-width: 768px) {
  .largeHeadline01 .largeHeadline01__link {
    display: inline-block;
    top: 5px;
    font-size: 1.6rem;
  }
}
.largeHeadline01 .largeHeadline01__link::after {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #962E34;
  position: absolute;
  bottom: -1px;
  left: 0;
}
.largeHeadline01 .largeHeadline01__link:hover {
  color: #962E34;
}
.largeHeadline01 .largeHeadline01__link:hover::after {
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.largeHeadline01.largeHeadline01--left {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .largeHeadline01.largeHeadline01--left {
    text-align: left;
  }
}
.largeHeadline01.largeHeadline01--white * {
  color: #fff;
}
.largeHeadline01.largeHeadline01--news {
  text-align: left;
  margin: 0 0 33px;
  padding: 0 0 10px;
  border-bottom: 1px solid #141C2D;
}
.largeHeadline01.largeHeadline01--news .largeHeadline01__sub {
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.3rem;
  font-weight: bold;
  color: #962E34;
  margin: 0 0 6px;
}
.largeHeadline01.largeHeadline01--news .largeHeadline01__main {
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .largeHeadline01.largeHeadline01--news .largeHeadline01__main {
    font-size: 2.3rem;
  }
}

.largeHeadline02 {
  margin: 0 0 25px;
  font-weight: 500;
  text-align: center;
  line-height: 1.4;
}
.largeHeadline02 .largeHeadline02__main {
  display: inline-block;
  font-size: 2.4rem;
  padding: 0 0 10px;
  border-bottom: 2px solid #962E34;
}
@media screen and (min-width: 768px) {
  .largeHeadline02 .largeHeadline02__main {
    font-size: 2.8rem;
  }
}
@media screen and (min-width: 992px) {
  .largeHeadline02 .largeHeadline02__main {
    font-size: 3.2rem;
  }
}
.largeHeadline02.largeHeadline02--left {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .largeHeadline02.largeHeadline02--left {
    text-align: left;
  }
}

.largeHeadline03 {
  margin: 0 0 25px;
  font-weight: 500;
  text-align: left;
  font-size: 1.8rem;
  padding: 0 0 5px;
  border-bottom: 2px solid #962E34;
}
@media screen and (min-width: 768px) {
  .largeHeadline03 {
    font-size: 2rem;
  }
}

.mediumHeadline01 {
  font-weight: 500;
  line-height: 1.4;
  margin: 0 0 20px;
  position: relative;
  text-align: center;
}
.mediumHeadline01 .mediumHeadline01__main {
  display: block;
  font-size: 2.2rem;
  margin: 0 0 5px;
}
.mediumHeadline01 .mediumHeadline01__sub {
  display: block;
  font-family: "Open Sans", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color: #988E8E;
  font-size: 1.2rem;
}
.mediumHeadline01::after {
  content: "";
  display: block;
  margin: 17px auto 0;
  height: 2px;
  width: 34px;
  background: #962E34;
}

.mediumHeadline02 {
  margin: 0 0 33px;
  text-align: center;
}
.mediumHeadline02 .mediumHeadline02__sub {
  display: block;
  font-size: 3rem;
  margin: 0 0 5px;
  font-weight: 500;
  color: #962E34;
}
.mediumHeadline02 .mediumHeadline02__main {
  display: inline-block;
  width: 100%;
  text-align: center;
  font-weight: 500;
  font-size: 1.8rem;
  color: #fff;
  background: #962E34;
  padding: 10px 15px;
}
@media screen and (min-width: 768px) {
  .mediumHeadline02 .mediumHeadline02__main {
    font-size: 1.6rem;
  }
}
@media screen and (min-width: 992px) {
  .mediumHeadline02 .mediumHeadline02__main {
    font-size: 1.8rem;
  }
}

/*本文*/
.text {
  margin: 0 0 33px;
}
.text p {
  margin: 0 0 33px;
}
.text p:last-child {
  margin: 0;
}

/*リードテキスト*/
.iiRead {
  text-align: center;
  font-size: 2rem;
  font-weight: bold;
  margin: 0 0 33px;
  line-height: 1.5;
}
@media screen and (min-width: 768px) {
  .iiRead {
    font-size: 2.4rem;
    font-weight: 500;
  }
}
.iiRead span {
  color: #ea562a;
}
@media screen and (max-width: 767px) {
  .iiRead.iiRead--about {
    font-size: 4vw;
  }
}

.textLink {
  text-decoration: underline;
  color: #141C2D;
}
.textLink:hover {
  color: #962E34;
}

ul.listIndent {
  margin: 0 0 33px;
}
ul.listIndent li {
  margin: 0 0 14px;
  padding: 0px 0 10px 20px;
  text-indent: -20px;
  border-bottom: 1px solid #CCC;
}
ul.listIndent li span {
  display: inline-block;
  text-indent: 0;
  margin: 0 5px 0 0;
}

dl.listIndent {
  margin: 0 0 33px;
}
dl.listIndent dt {
  padding: 7px 5px 5px 30px;
  text-indent: -20px;
  background: #F9F8F6;
  margin: 0 0 10px;
  border-bottom: 1px solid #CCC;
}
dl.listIndent dt span {
  display: inline-block;
  text-indent: 0;
  margin: 0 5px 0 0;
}
dl.listIndent dd {
  margin: 0 0 33px;
}

@media screen and (min-width: 768px) {
  .privacypolicyName {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
@media screen and (min-width: 768px) {
  .privacypolicyName .img {
    width: 100%;
    max-width: 200px;
    margin: 0 30px 0 0;
  }
}
@media screen and (min-width: 768px) {
  .privacypolicyName .text {
    width: 100%;
  }
}

img {
  display: inline-block;
  max-width: 100%;
  height: auto;
  line-height: 1;
}

.img {
  text-align: center;
  margin: 0 0 40px;
  line-height: 1;
}

.map {
  width: 100%;
  margin: 0 0 40px;
}

.btn01 {
  display: inline-block;
  width: 100%;
  max-width: 341px;
  padding: 18px 25px 15px 18px;
  background: rgba(255, 255, 255, 0) url(../img/icon_right.svg) no-repeat center right 15px;
  border: 1px solid #CCC;
  border-radius: 5px;
  text-decoration: none;
  color: #141C2D;
  margin: 0 0 40px;
  -webkit-transition: color 0.3s, background 0.3s, border 0.3s;
  transition: color 0.3s, background 0.3s, border 0.3s;
}
@media screen and (min-width: 601px) {
  .btn01:hover {
    background: #962E34 url(../img/icon_right-white.svg) no-repeat center right 15px;
    color: #fff;
  }
}
.btn01.btn01--white {
  color: #fff;
  background: rgba(255, 255, 255, 0) url(../img/icon_right-white.svg) no-repeat center right 15px;
  border: 1px solid #fff;
  border-radius: 5px;
}
@media screen and (min-width: 601px) {
  .btn01.btn01--white:hover {
    background: #962E34 url(../img/icon_right-white.svg) no-repeat center right 15px;
  }
}
@media screen and (min-width: 768px) {
  .btn01.btn--mini {
    max-width: 253px;
    padding: 11px 25px 10px 18px;
  }
}
.btn01.btn--inactive {
  pointer-events: none;
  background: none;
}
.btn01.btn01--return {
  padding: 18px 18px 15px 25px;
  background: rgba(255, 255, 255, 0) url(../img/icon_right_return.svg) no-repeat center left 15px;
}
@media screen and (min-width: 601px) {
  .btn01.btn01--return:hover {
    background: #962E34 url(../img/icon_right_return-white.svg) no-repeat center left 15px;
  }
}

.btn02 {
  display: inline-block;
  width: 100%;
  max-width: 341px;
  padding: 18px 25px 15px 18px;
  background: rgba(255, 255, 255, 0) url(../img/icon_link.svg) no-repeat top 7px right 7px;
  border: 1px solid #CCC;
  border-radius: 5px;
  text-decoration: none;
  color: #141C2D;
  margin: 0 0 40px;
  -webkit-transition: color 0.3s, background 0.3s, border 0.3s;
  transition: color 0.3s, background 0.3s, border 0.3s;
}
@media screen and (min-width: 601px) {
  .btn02:hover {
    background: #962E34 url(../img/icon_link-white.svg) no-repeat top 7px right 7px;
    color: #fff;
  }
}
.btn02.btn01--white {
  color: #fff;
  background: rgba(255, 255, 255, 0) url(../img/icon_link-white.svg) no-repeat top 7px right 7px;
  border: 1px solid #fff;
  border-radius: 5px;
}
@media screen and (min-width: 601px) {
  .btn02.btn01--white:hover {
    background: #962E34 url(../img/icon_link-white.svg) no-repeat top 7px right 7px;
  }
}
@media screen and (min-width: 768px) {
  .btn02.btn--mini {
    max-width: 253px;
    padding: 11px 25px 10px 18px;
  }
}
.btn02.btn--inactive {
  pointer-events: none;
  background: none;
}
.btn02.btn--long {
  max-width: 440px;
}

.btn03 {
  display: inline-block;
  width: 100%;
  max-width: 140px;
  padding: 1px 10px 2px;
  background: #962E34;
  border: 1px solid #962E34;
  border-radius: 5px;
  text-decoration: none;
  color: #fff;
  margin: 0 0 40px;
  -webkit-transition: color 0.3s, background 0.3s, border 0.3s;
  transition: color 0.3s, background 0.3s, border 0.3s;
}
@media screen and (min-width: 601px) {
  .btn03:hover {
    background: #fff;
    color: #962E34;
  }
}

.table01 {
  text-align: center;
  border-top: 1px solid #CCC;
  border-left: 1px solid #CCC;
  background-color: #fff;
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto 40px;
}
@media screen and (max-width: 767px) {
  .table01 tr {
    display: block;
    width: 100%;
    border-left: none;
  }
}
.table01 th {
  text-align: left;
  border-right: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
  background-color: #F5F5F5;
  font-weight: normal;
  padding: 15px 10px 15px 30px;
  width: 30%;
}
@media screen and (max-width: 767px) {
  .table01 th {
    display: block;
    width: 100%;
    padding: 15px;
  }
}
.table01 th label {
  display: block;
  margin: 0;
  padding: 0 20px 0 0;
  position: relative;
}
.table01 th label .el_required {
  font-size: 1.3rem;
  background: #fff;
  color: #962E34;
  border: 1px solid #962E34;
  padding: 3px 6px;
  display: inline-block;
  line-height: 1;
  border-radius: 3px;
  position: absolute;
  top: 50%;
  right: 0;
  transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -moz-transform: translate(0, -50%);
}
.table01 td {
  text-align: left;
  font-weight: normal;
  border-right: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
  padding: 15px 30px 15px 30px;
  letter-spacing: 1px;
  width: 70%;
}
@media screen and (max-width: 767px) {
  .table01 td {
    display: block;
    width: 100%;
    padding: 15px;
    word-break: break-all;
  }
}
.table01 td p {
  margin: 4px 0 0;
  font-size: 1.4rem;
  line-height: 1.4;
}
.table01 td a:hover {
  color: #962E34;
}
.table01 td.td_signature {
  padding: 3px 30px 1px 0;
  font-size: 1.2rem;
  background: #CCC;
  color: #fff;
}

.radioList {
  margin: 0;
  padding: 4px 0 0;
  display: block;
}
.radioList li {
  display: inline-block;
  margin: 0 20px 0 0;
  padding: 0;
}
.radioList li label {
  margin: 0;
  padding: 0;
}
.radioList li label input {
  margin: 0 5px 0 0;
}

.yubinGroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.yubinGroup .yubinGroup__left {
  width: 100%;
}
.yubinGroup .yubinGroup__right {
  width: 100%;
  max-width: 140px;
  margin: 0 0 0 15px;
}

input,
textarea,
.form-control {
  font-size: 1.5rem;
}

.seimeiGroup {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.seimeiGroup .seimeiGroup__left {
  clear: both;
  width: calc(50% - 12px);
}
.seimeiGroup .seimeiGroup__left label {
  float: left;
}
.seimeiGroup .seimeiGroup__left input {
  float: right;
  width: calc(100% - 20px);
}
.seimeiGroup .seimeiGroup__right {
  clear: both;
  width: calc(50% - 12px);
}
.seimeiGroup .seimeiGroup__right label {
  float: left;
}
.seimeiGroup .seimeiGroup__right input {
  float: right;
  width: calc(100% - 20px);
}
.seimeiGroup p {
  clear: both;
  float: none;
}

/*Cookieポリシー*/
.cookieTable {
  width: 100%;
  margin: 0 0 50px;
}
.cookieTable th {
  text-align: center;
  padding: 10px;
  background: #F5F5F5;
  font-weight: normal;
}
.cookieTable th.cell01 {
  width: 25%;
  border-right: 2px solid #fff;
}
.cookieTable th.cell02 {
  width: 50%;
  border-right: 2px solid #fff;
}
.cookieTable th.cell03 {
  width: 25%;
}
.cookieTable td {
  padding: 10px 10px 10px 25px;
  border-bottom: 1px solid #CCC;
}
/*サイトマップ*/
.sitemapTable {
  text-align: center;
  border-top: 1px solid #fff;
  border-left: 1px solid #fff;
  background-color: #fff;
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto 40px;
}
.sitemapTable td {
  text-align: left;
  font-weight: normal;
  border-right: 1px solid #fff;
  border-bottom: 1px solid #e7e7e7;
  padding: 9px 0 7px;
  letter-spacing: 1px;
  vertical-align: top;
  height: 45px;
}
.sitemapTable td a {
  display: inline-block;
  position: relative;
  padding: 0 0 0 20px;
  background: url(../img/icon_next.svg) no-repeat center left;
}
.sitemapTable td .el_border {
  display: block;
  position: relative;
  height: 100%;
}
.sitemapTable td .el_border::before {
  content: "";
  position: absolute;
  display: inline-block;
  top: -5px;
  left: -17px;
  width: 3px;
  height: 39px;
  background: #fff;
}

/*! 通知バーのアニメーション用 */
@-webkit-keyframes ga-cookie-accept-bar-slide-in {
  from {
    -webkit-transform: translateY(120px);
    transform: translateY(120px);
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@keyframes ga-cookie-accept-bar-slide-in {
  from {
    -webkit-transform: translateY(120px);
    transform: translateY(120px);
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
@-webkit-keyframes ga-cookie-accept-bar-slide-out {
  from {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(400px);
    transform: translateY(400px);
  }
}
@keyframes ga-cookie-accept-bar-slide-out {
  from {
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
  to {
    -webkit-transform: translateY(400px);
    transform: translateY(400px);
  }
} /*! 通知バー */
.module-ga-cookie-accept-bar {
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-name: ga-cookie-accept-bar-slide-in;
  animation-name: ga-cookie-accept-bar-slide-in;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: block;
  position: fixed;
  bottom: 0;
  width: 100%;
  font-size: 1.4rem;
  color: #fff;
  background: rgba(0, 0, 0, 0.8);
  padding: 40px 15px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  z-index: 100;
  position: fixed;
  bottom: 0;
  width: 100%;
  font-size: 1.4rem;
  color: #fff;
  background: rgba(0, 0, 0, 0.8);
  padding: 40px 15px;
  box-sizing: border-box;
  visibility: hidden;
}

.module-ga-cookie-accept-bar.state-remove {
  -webkit-animation-duration: 0.6s;
  animation-duration: 0.6s;
  -webkit-animation-name: ga-cookie-accept-bar-slide-out;
  animation-name: ga-cookie-accept-bar-slide-out;
}

.module-ga-cookie-accept-bar.is-show {
  visibility: visible;
}

.module-ga-cookie-accept-bar a {
  color: #fff;
  -webkit-transition: background 0.3s, color 0.3s;
  transition: background 0.3s, color 0.3s;
}

.cookie-agree {
  display: block;
  color: #fff;
  border: 1px solid #fff;
  padding: 7px 15px;
  border-radius: 5px;
  background: none;
  -webkit-transition: background 0.3s, color 0.3s;
  transition: background 0.3s, color 0.3s;
  width: 100%;
  max-width: 200px;
  margin: 0 auto;
  text-align: center;
}
.cookie-agree:hover {
  cursor: pointer;
  background: #962E34;
  border: 1px solid #962E34;
  color: #fff;
}

.cookie-text {
  margin: 0 auto 20px;
  max-width: 870px;
}

/* パッと消える */
.cc-hide1 {
  display: none;
}

/* ゆっくり消える */
.cc-hide2 {
  -webkit-animation: hide 1s linear 0s;
          animation: hide 1s linear 0s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

/*
.module-ga-cookie-accept-bar p {
    margin: 1em 0
}
.module-ga-cookie-accept-bar a {
    color: inherit;
    text-decoration: underline
}
.module-ga-cookie-accept-bar .material-icons {
    vertical-align: middle;
    margin-right: 0.2em
}
*/
/*
.module-ga-cookie-accept-bar p button:first-child {
    margin-right: 1em
}
*/
/*! ボタン */
/*
.module-ga-cookie-accept-btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    display: inline-block;
    background-color: #d32f2f;
    border: 2px solid #b71c1c;
    color: #fff;
    font-family: inherit;
    font-size: 1em;
    margin-bottom: 0.5em;
    padding: 0.5em 1.5em;
    border-radius: 3px;
    -webkit-box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .14), 0 1px 5px 0 rgba(0, 0, 0, .12), 0 3px 1px -2px rgba(0, 0, 0, .2);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, .14), 0 1px 5px 0 rgba(0, 0, 0, .12), 0 3px 1px -2px rgba(0, 0, 0, .2);
    -webkit-transition: 0.3s ease-out;
    transition: 0.3s ease-out
}
.module-ga-cookie-accept-btn:hover {
    -webkit-box-shadow: 0 3px 3px 0 rgba(0, 0, 0, .14), 0 1px 7px 0 rgba(0, 0, 0, .12), 0 3px 1px -1px rgba(0, 0, 0, .2);
    box-shadow: 0 3px 3px 0 rgba(0, 0, 0, .14), 0 1px 7px 0 rgba(0, 0, 0, .12), 0 3px 1px -1px rgba(0, 0, 0, .2);
    cursor: pointer
}
.module-ga-cookie-accept-btn.module-ga-cookie-deny-btn {
    background-color: transparent;
    border-color: #fff
}
*/
header {
  line-height: 1.5;
}

#pagetop {
  height: 77px;
}
@media screen and (min-width: 768px) {
  #pagetop {
    height: 108px;
  }
}

#shadow {
  content: "";
  position: fixed;
  z-index: 10;
  width: 100%;
  height: calc(100Vh - 78px);
  top: 78px;
  left: 0;
  background: rgba(0, 0, 0, 0.2);
}
@media screen and (min-width: 768px) {
  #shadow {
    height: calc(100Vh - 109px);
    top: 109px;
  }
}

.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  z-index: 100;
}
@media screen and (min-width: 768px) {
  .header {
    border-bottom: 1px solid #CCC;
  }
}

.headerWrap {
  max-width: 1020px;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .headerWrap {
    padding: 0 15px;
    max-width: 1050px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width: 992px) {
  .headerWrap {
    max-width: 1140px;
    padding: 0 60px;
  }
}
.headerWrap .headerWrap__left {
  padding: 15px;
  border-bottom: 1px solid #141C2D;
  clear: both;
}
@media screen and (min-width: 768px) {
  .headerWrap .headerWrap__left {
    padding: 15px 0 0;
    width: 100%;
    max-width: 115px;
    border: none;
  }
}
@media screen and (min-width: 768px) {
  .headerWrap .headerWrap__left .headerLinks {
    display: none;
  }
}
.headerWrap .headerWrap__left .headerLinks div:first-child {
  width: 100%;
  max-width: 124px;
  margin: 0 5px 0 auto;
}
.headerWrap .headerWrap__left .headerLinks div:first-child .headerBrand {
  padding: 1px 0 1px 14px;
  font-size: 1.1rem;
  display: block;
  margin: 0 0 6px;
}
.headerWrap .headerWrap__left .headerLinks div:first-child .headerContact {
  font-size: 1.1rem;
  display: block;
  padding: 1px;
  margin: 0;
  border: 1px solid #141C2D;
  border-radius: 15px;
  max-width: 144px;
  text-align: center;
}
.headerWrap .headerWrap__right {
  padding: 0;
}
@media screen and (min-width: 768px) {
  .headerWrap .headerWrap__right {
    width: 100%;
    max-width: 650px;
    padding: 15px 0 0;
    max-height: none !important;
  }
}
.headerWrap .headerWrap__right .headerLinks {
  display: none;
}
@media screen and (min-width: 768px) {
  .headerWrap .headerWrap__right .headerLinks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.headerLogo {
  max-width: 63px;
  float: left;
  margin: 6px 0 0;
}
@media screen and (min-width: 768px) {
  .headerLogo {
    max-width: 100%;
    float: none;
  }
}
.headerLogo a {
  display: inline-block;
}

.headerLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
}

.headerBrand {
  font-size: 1.3rem;
  color: #962E34;
  border: 1px solid #962E34;
  border-radius: 15px;
  text-decoration: none;
  padding: 4px 0 4px 14px;
  width: 100%;
  max-width: 144px;
  text-align: center;
  position: relative;
  background: #fff url(../img/icon_link.svg) no-repeat center left 15px;
}
.headerBrand img {
  display: inline-block;
  margin: 0 2px 0 0;
}
@media screen and (min-width: 601px) {
  .headerBrand:hover {
    color: #fff;
    background: #962E34 url(../img/icon_link-white.svg) no-repeat center left 15px;
  }
}

.headerContact {
  margin: 0 15px;
  padding: 0 20px 0 15px;
  border-right: 1px solid #CCC;
  border-left: 1px solid #CCC;
  font-size: 1.3rem;
  text-decoration: none;
  color: #141C2D;
}
@media screen and (min-width: 768px) {
  .headerContact {
    padding: 0 15px;
  }
}
.headerContact img {
  display: inline-block;
  margin: 0 3px 0 0;
  vertical-align: -1px;
  max-width: 11px;
}
@media screen and (min-width: 768px) {
  .headerContact img {
    margin: 0 5px 0 0;
    max-width: 100%;
  }
}
@media screen and (min-width: 601px) {
  .headerContact:hover {
    opacity: 0.6;
    text-decoration: none;
    color: inherit;
  }
}

.headerSearch {
  display: none;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .headerSearch {
    display: block;
  }
}
.headerSearch img {
  margin: 5px 0 0;
  vertical-align: top;
}
.headerSearch:hover {
  opacity: 0.6;
}

.globalNavBtn {
  background: none;
  height: 40px;
  width: 31px;
  border: none;
  margin: 0 0 0 15px;
  position: relative;
}
.globalNavBtn .icon-bar {
  background-color: #962E34;
}
.globalNavBtn .icon-bar:nth-of-type(1) {
  display: block;
  height: 3px;
  position: static;
  margin: 0 auto 8px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.globalNavBtn .icon-bar:nth-of-type(2) {
  display: block;
  height: 3px;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  position: static;
  margin-bottom: 8px;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.globalNavBtn .icon-bar:last-child {
  display: block;
  height: 3px;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
  position: static;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.globalNavBtn .sr-only {
  display: none;
}
.globalNavBtn.on {
  height: 31px;
}
.globalNavBtn.on .icon-bar:nth-of-type(1) {
  display: none;
  width: 90%;
}
.globalNavBtn.on .icon-bar:nth-of-type(2) {
  width: 90%;
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.globalNavBtn.on .icon-bar:last-child {
  width: 90%;
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.siteSearch {
  padding: 15px 15px 20px;
}
@media screen and (min-width: 768px) {
  .siteSearch {
    padding: 0;
    position: fixed;
    top: 109px;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 100;
    border-top: 1px solid #CCC;
    z-index: 10;
  }
}

.siteSearchWrap {
  background: #fff;
  position: relative;
  z-index: 2;
}

.siteSearchWrap__inner {
  position: relative;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .siteSearchWrap__inner {
    padding: 35px 15px;
    max-width: 1140px;
  }
}
@media screen and (min-width: 992px) {
  .siteSearchWrap__inner {
    padding: 35px 60px;
    max-width: 1140px;
  }
}
.siteSearchWrap__inner h2 {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .siteSearchWrap__inner h2 {
    font-size: 1.8rem;
    margin: 0 0 15px;
  }
}

.siteSearchClose {
  display: none;
}
@media screen and (min-width: 768px) {
  .siteSearchClose {
    display: block;
    background: #F5F5F5;
    width: 33px;
    height: 33px;
    position: absolute;
    top: 30px;
    right: 15px;
    cursor: pointer;
    z-index: 20;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .siteSearchClose span {
    display: inline-block;
    width: 85%;
    height: 1px;
    background: #524E50;
  }
  .siteSearchClose span:first-child {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .siteSearchClose span:last-child {
    -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .siteSearchClose:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 992px) {
  .siteSearchClose {
    right: 60px;
  }
}

#cse-search-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  max-width: 883px;
  margin: auto;
  position: relative;
}
#cse-search-box input[type=text] {
  width: 100%;
  background: #F5F5F5;
  padding: 0 10px;
  min-height: 42px;
  border: none;
  border-radius: 5px 0 0 5px;
}
#cse-search-box input[type=text]::-webkit-input-placeholder {
  color: #524E50;
}
#cse-search-box input[type=text]::-moz-placeholder {
  color: #524E50;
}
#cse-search-box input[type=text]:-ms-input-placeholder {
  color: #524E50;
}
#cse-search-box input[type=text]::-ms-input-placeholder {
  color: #524E50;
}
#cse-search-box input[type=text]::placeholder {
  color: #524E50;
}
#cse-search-box input[type=submit] {
  width: 100%;
  max-width: 50px;
  background: #962E34 url(../img/icon_search-big-white.svg) no-repeat center center;
  padding: 5px 0;
  min-height: 50px;
  border: none;
  border-radius: 0 5px 5px 0;
}

@media screen and (min-width: 768px) {
  .globalNav > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.globalNav > ul > li {
  list-style: none;
}
@media screen and (min-width: 768px) {
  .globalNav > ul > li {
    font-size: 1.6rem;
    margin: 0 0 0 auto;
    border: none;
  }
}
.globalNav > ul > li > a {
  width: 100%;
  display: block;
  text-decoration: none;
  padding: 10px 15px;
  position: relative;
  color: #141C2D;
  border-bottom: 1px solid #CCC;
}
@media screen and (min-width: 768px) {
  .globalNav > ul > li > a {
    padding: 20px 5px;
    border: none;
  }
}
@media screen and (min-width: 992px) {
  .globalNav > ul > li > a {
    padding: 20px 10px;
  }
}
@media screen and (min-width: 1200px) {
  .globalNav > ul > li > a {
    padding: 20px 20px;
  }
}
.globalNav > ul > li > a.el_arrow span {
  display: inline-block;
  padding: 0 20px 0 0;
  background: url(../img/icon_underarrow.svg) no-repeat center right;
}
.globalNav > ul > li > a:hover {
  background: rgb(245, 245, 245);
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(245, 245, 245, 0)), to(rgb(245, 245, 245)));
  background: linear-gradient(180deg, rgba(245, 245, 245, 0) 0%, rgb(245, 245, 245) 100%);
}
.globalNav > ul > li:last-child {
  margin-right: 0;
}
.globalNav > ul > li.globalNavDown > a {
  pointer-events: none;
}
@media screen and (min-width: 768px) {
  .globalNav > ul > li.globalNavDown > a {
    pointer-events: auto;
  }
}

.globalNavContents {
  position: relative;
}
@media screen and (min-width: 768px) {
  .globalNavContents {
    position: fixed;
    top: 109px;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 100;
    border-top: 1px solid #CCC;
  }
}
.globalNavContents .globalNavContentsWrap {
  background: #fff;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 767px) {
  .globalNavContents .globalNavContentsWrap {
    max-height: none !important;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__inner {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    padding: 35px 15px;
    max-width: 1050px;
    margin: auto;
  }
}
@media screen and (min-width: 992px) {
  .globalNavContents .globalNavContents__inner {
    padding: 35px 60px;
    max-width: 1140px;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavClose {
    background: #F5F5F5;
    width: 33px;
    height: 33px;
    position: absolute;
    top: 37px;
    right: 15px;
    cursor: pointer;
    z-index: 20;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .globalNavContents .globalNavClose span {
    display: inline-block;
    width: 85%;
    height: 1px;
    background: #524E50;
  }
  .globalNavContents .globalNavClose span:first-child {
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .globalNavContents .globalNavClose span:last-child {
    -webkit-transform: rotate(-135deg);
            transform: rotate(-135deg);
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
  }
  .globalNavContents .globalNavClose:hover {
    opacity: 0.7;
  }
}
@media screen and (min-width: 992px) {
  .globalNavContents .globalNavClose {
    right: 60px;
  }
}
.globalNavContents ul li {
  list-style: none;
}
.globalNavContents ul li a {
  display: block;
  padding: 10px 15px 10px 32px;
  border-bottom: 1px solid #CCC;
  text-decoration: none;
  color: #141C2D;
  font-size: 1.3rem;
  background: url(../img/icon_next.svg) no-repeat center left 15px;
}
@media screen and (max-width: 767px) {
  .globalNavContents ul li a {
    background-size: 6px auto;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents ul li a {
    border: none;
  }
}
.globalNavContents ul li a:hover {
  opacity: 0.6;
}
@media screen and (min-width: 768px) {
  .globalNavContents ul li a.el_small {
    font-size: 1.5rem;
    letter-spacing: -1px;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__left {
    width: 100%;
    max-width: 230px;
    padding: 0 20px 0 0;
    margin: 0 20px 0 0;
    border-right: 1px solid #CCC;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__left {
    max-width: 254px;
    padding: 0 30px 0 0;
    margin: 0 30px 0 0;
  }
}
.globalNavContents .globalNavContents__left > ul > li {
  list-style: none;
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__left > ul > li {
    margin: 0 0 30px;
  }
}
@media screen and (min-width: 768px) and (min-width: 768px) {
  .globalNavContents .globalNavContents__left > ul > li > a {
    position: relative;
    display: block;
    padding: 10px 0;
    margin: 0;
    background: url(../img/icon_right.svg) no-repeat center right;
    font-weight: bold;
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  .globalNavContents .globalNavContents__left > ul > li.el_message {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__left > ul > li.el_message {
    margin: 0;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__left > ul > li.el_message img {
    vertical-align: top;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__left > ul > li.el_message > a {
    display: block;
    padding: 10px 10px 10px 30px;
    margin: 0;
    background: #F5F5F5 url(../img/icon_next.svg) no-repeat center left 15px;
    font-size: 1.4rem;
    font-weight: 500;
  }
}
.globalNavContents .globalNavContents__left > ul > li:last-child {
  margin: 0;
}
.globalNavContents .globalNavContents__right {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    position: relative;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li {
    width: 100%;
    margin: 0 0 3px;
  }
}
@media screen and (max-width: 767px) {
  .globalNavContents .globalNavContents__right > ul > li > a {
    background-position: center left 33px;
    padding: 10px 15px 10px 50px;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li > a {
    border: none;
    font-size: 1.6rem;
    font-weight: bold;
    padding: 17px 15px 11px 20px;
    background-position: top 20px left;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li > ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding: 0 0 10px 0;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li > ul > li {
    width: 50%;
  }
}
@media screen and (min-width: 1200px) {
  .globalNavContents .globalNavContents__right > ul > li > ul > li {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li > ul > li {
    width: 33.3333333333%;
  }
}
@media screen and (max-width: 767px) {
  .globalNavContents .globalNavContents__right > ul > li > ul > li > a {
    background-position: center left 53px;
    padding: 10px 15px 10px 70px;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li > ul > li > a {
    background: url(../img/icon_next.svg) no-repeat top 4px left 21px;
    background-size: 6px auto;
    padding: 0 0 10px 34px;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li > ul.el_col4 > li {
    width: 50%;
  }
}
@media screen and (min-width: 1200px) {
  .globalNavContents .globalNavContents__right > ul > li > ul.el_col4 > li {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li > ul.el_col4 > li {
    width: 25%;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width1 {
    width: 100%;
  }
}
@media screen and (min-width: 992px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width1 {
    width: 50%;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width1 {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width2 {
    width: 100%;
  }
}
@media screen and (min-width: 992px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width2 {
    width: 50%;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width2 {
    width: 66.6666666667%;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width3 {
    width: 100%;
    border-top: 1px solid #CCC;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width3.el_width3--first {
    border-bottom: 1px solid #CCC;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li.el_width3 + .el_width3 {
    border-top: none;
    border-bottom: 1px solid #CCC;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li:nth-last-child(3) {
    /*border: none;*/
  }
  .globalNavContents .globalNavContents__right > ul > li:nth-last-child(3) > a {
    padding-bottom: 0;
    background-position: top 21px left;
  }
}
@media screen and (min-width: 992px) {
  .globalNavContents .globalNavContents__right > ul > li:nth-last-child(2) {
    /*border: none;*/
  }
  .globalNavContents .globalNavContents__right > ul > li:nth-last-child(2) > a {
    padding-bottom: 0;
    background-position: top 21px left;
  }
}
@media screen and (min-width: 768px) {
  .globalNavContents .globalNavContents__right > ul > li:last-child {
    /*border: none;*/
  }
  .globalNavContents .globalNavContents__right > ul > li:last-child > a {
    padding-bottom: 0;
    background-position: top 21px left;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li.el_ir-library > ul > li:nth-child(1), .globalNavContents .globalNavContents__right > ul > li.el_ir-library > ul > li:nth-child(5) {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li.el_ir-library > ul > li:nth-child(2), .globalNavContents .globalNavContents__right > ul > li.el_ir-library > ul > li:nth-child(3) {
    width: 25%;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li.el_ir-library > ul > li:nth-child(4) {
    width: 16.6666666667%;
  }
}
@media screen and (min-width: 1400px) {
  .globalNavContents .globalNavContents__right > ul > li.el_highlight > ul > li:nth-child(2) {
    width: 25%;
  }
}
.globalNavContents img {
  display: none;
}
@media screen and (min-width: 768px) {
  .globalNavContents img {
    display: inline-block;
  }
}

#footer {
  border-top: 1px solid #CCC;
}

.footerWrap {
  position: relative;
  padding: 35px 0 5px;
}
@media screen and (min-width: 768px) {
  .footerWrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.footerLogo {
  text-align: center;
  margin: 0 0 25px;
}
@media screen and (min-width: 768px) {
  .footerLogo {
    width: 100%;
    max-width: 115px;
    margin: 0 30px 25px 0;
  }
}

.footerNav {
  margin: 0 0 25px;
}
@media screen and (min-width: 768px) {
  .footerNav {
    width: 100%;
    max-width: 612px;
    margin: 0 0 25px auto;
  }
}
@media screen and (min-width: 768px) {
  .footerNav ul {
    text-align: right;
  }
}
.footerNav ul li {
  list-style: none;
  display: inline-block;
  width: calc(50% - 10px);
  margin: 0 0 10px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .footerNav ul li {
    width: auto;
    margin: 0 28px 0 0;
  }
}
.footerNav ul li a {
  font-size: 1.5rem;
  display: inline-block;
  text-decoration: none;
  color: #141C2D;
}
.footerNav ul li a:hover {
  color: #962E34;
}

.footerBrand {
  width: 100%;
  max-width: 148px;
  margin: 0 auto 25px;
}
@media screen and (min-width: 768px) {
  .footerBrand {
    margin: 0 0 25px;
  }
}
.footerBrand a {
  display: inline-block;
  font-size: 1.3rem;
  color: #962E34;
  border: 1px solid #962E34;
  border-radius: 20px;
  text-decoration: none;
  padding: 6px 0 6px 16px;
  width: 100%;
  max-width: 144px;
  text-align: center;
  background: url(../img/icon_link.svg) no-repeat center left 15px;
}
.footerBrand a img {
  display: inline-block;
  margin: 0 2px 0 0;
}
.footerBrand a:hover {
  background: #962E34 url(../img/icon_link-white.svg) no-repeat center left 15px;
  color: #fff;
}

.footerLinks {
  border-top: 1px solid #CCC;
}
.footerLinks ul {
  padding: 20px 0 8px;
  text-align: center;
}
.footerLinks ul li {
  list-style: none;
  display: inline-block;
  margin: 0px 7px 15px 0;
  padding: 0 7px 0 0;
  border-right: 1px solid #CCC;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .footerLinks ul li {
    margin: 0px 15px 15px 0;
    padding: 0 15px 0 0;
  }
}
.footerLinks ul li a {
  font-size: 1.4rem;
  display: inline-block;
  text-decoration: none;
  color: #141C2D;
  line-height: 1;
}
.footerLinks ul li a:hover {
  color: #962E34;
}
.footerLinks ul li:last-child {
  border-right: none;
}

#page-top {
  position: fixed;
  right: 15px;
  bottom: 15px;
  line-height: 1;
  width: 30px;
  z-index: 10;
}
@media screen and (min-width: 992px) {
  #page-top {
    width: 60px;
    right: 0;
    bottom: 0;
  }
}
#page-top a {
  display: inline-block;
}
#page-top a img {
  vertical-align: bottom;
}

.copyright {
  background: #962E34;
  color: #fff;
  padding: 5px 0;
  font-size: 1.2rem;
  text-align: center;
}

/*サイドナビ*/
.sideNavi {
  /*共通*/
  margin-bottom: 40px;
  /*共通　ここまで*/
}
@media screen and (min-width: 768px) {
  .sideNavi {
    margin-top: -10px;
  }
}
.sideNavi li {
  list-style: none;
  padding-left: 15px;
}
.sideNavi li a {
  display: block;
  color: inherit;
  text-decoration: none;
  position: relative;
  padding-left: 15px;
  font-size: 1.5rem;
  background: url(../img/icon_next.svg) no-repeat center left;
}
.sideNavi li a:hover {
  color: #962E34;
}
.sideNavi > li {
  padding: 0;
}
.sideNavi > li > a {
  font-size: 1.7rem;
  padding: 10px 0px 10px 15px;
  border-bottom: 1px solid #F5F5F5;
}
.sideNavi > li > ul > li {
  padding: 10px 0 5px 15px;
  border-bottom: 1px solid #F5F5F5;
}
.sideNavi > li > ul > li > a {
  font-size: 1.5rem;
  margin: 0 0 5px;
}
.sideNavi > li > ul > li > ul > li {
  margin: 0 0 4px;
}
.sideNavi > li > ul > li > ul > li > a {
  font-size: 1.3rem;
  background: url(../img/icon_next.svg) no-repeat center left;
  background-size: 5px auto;
}

.mainvisual {
  position: relative;
  padding: 0;
  margin: 0 0 50px;
  overflow: hidden;
}
.mainvisual .slick-dots {
  bottom: -25px;
  height: 10px;
}
.mainvisual .slick-dots li {
  padding: 0;
  margin: 0 5px;
  width: auto;
  height: auto;
  vertical-align: top;
}
.mainvisual .slick-dots li button {
  width: 10px;
  height: 10px;
  padding: 0;
}
.mainvisual .slick-dots li button::before {
  width: 10px;
  height: 10px;
  margin: 0;
  background: #962E34;
  border-radius: 100%;
  content: "";
}

.mainvisualText {
  z-index: 1;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  width: 100%;
  font-size: 4.8vw;
  font-weight: 500;
  text-align: center;
  letter-spacing: 5px;
}
@media screen and (min-width: 768px) {
  .mainvisualText {
    font-size: 3rem;
    letter-spacing: 7px;
  }
}
@media screen and (min-width: 992px) {
  .mainvisualText {
    font-size: 4rem;
    letter-spacing: 7px;
  }
}
.mainvisualText.mainvisualText--shadow {
  color: #fff;
  text-shadow: 0 0 7px rgba(0, 0, 0, 0.7);
}
.mainvisualText.white {
  color: #fff;
  text-shadow: 0 0 7px rgba(0, 0, 0, 0.7);
}

.mainvisualItem {
  overflow: hidden;
}
.mainvisualItem img,
.mainvisualItem picture {
  width: 100%;
}

.frontNews {
  margin: 0 0 40px;
}
.frontNews li {
  list-style: none;
}
.frontNews li a {
  text-decoration: none;
  display: block;
  position: relative;
  padding: 0 0 15px;
  margin: 0 0 20px;
  border-bottom: 1px solid #CCC;
}
.frontNews li a .frontNews__date {
  display: block;
  font-size: 1.3rem;
  font-weight: bold;
  color: #962E34;
  margin: 0 0 3px;
}
.frontNews li a .frontNews__text {
  display: block;
  color: #141C2D;
  font-size: 1.5rem;
}
.frontNews li a::after {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #962E34;
  position: absolute;
  bottom: -1px;
  left: 0;
}
.frontNews li a:hover .frontNews__text {
  color: #962E34;
}
.frontNews li a:hover::after {
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.frontNews li:last-child a {
  margin: 0;
}

.frontMessage {
  margin: 0 0 34px;
}
@media screen and (min-width: 768px) {
  .frontMessage {
    min-height: 379px;
    background: #f8f8f8 url(../img/front_message.jpg) no-repeat top right 40%;
    background-size: cover;
  }
}
@media screen and (min-width: 1400px) {
  .frontMessage {
    min-height: 479px;
    background: #f8f8f8 url(../img/front_message.jpg) no-repeat top right;
  }
}

.frontMessage__inner {
  width: calc(100% + 30px);
  margin-left: -15px;
  background: #F5F5F5;
}
@media screen and (min-width: 768px) {
  .frontMessage__inner {
    background: none;
    width: 100%;
    padding: 74px 0 0;
    margin: 0;
  }
  .frontMessage__inner .img {
    display: none;
  }
}
@media screen and (min-width: 1400px) {
  .frontMessage__inner {
    padding: 130px 0 0;
  }
}
.frontMessage__inner .img {
  margin: 0 0 20px;
}
.frontMessage__inner .largeHeadline01 {
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .frontMessage__inner .largeHeadline01 {
    padding: 0;
  }
}
@media screen and (max-width: 767px) {
  .frontMessage__inner .largeHeadline01 .largeHeadline01__main {
    font-size: 1.9rem;
  }
}
.frontMessage__inner .text {
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .frontMessage__inner .text {
    padding: 0;
  }
}
@media screen and (min-width: 768px) {
  .frontMessage__inner .btn01 {
    max-width: 253px;
    padding: 11px 25px 10px 18px;
  }
}

.frontLinks {
  margin: 0 0 40px;
}
@media screen and (min-width: 768px) {
  .frontLinks {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 0 40px -5px;
    width: calc(100% + 10px);
  }
}
.frontLinks li {
  list-style: none;
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .frontLinks li {
    width: calc(50% - 10px);
    margin: 0 5px 10px;
  }
}
.frontLinks li a {
  margin: 0;
  padding: 25px 48px 23px 25px;
  max-width: 100%;
  background-position: center right 25px;
}
@media screen and (min-width: 768px) {
  .frontLinks li a {
    padding: 25px 40px 23px 15px;
  }
}
@media screen and (min-width: 992px) {
  .frontLinks li a {
    padding: 25px 48px 23px 25px;
  }
}
.frontLinks li a:hover {
  background-position: center right 25px;
}
.frontLinks li.el_wide {
  margin: 0 auto 10px;
}
@media screen and (min-width: 768px) {
  .frontLinks li.el_wide {
    width: calc(100% - 10px);
  }
}
.frontLinks li.el_wide a {
  border-radius: 0;
  border-top: none;
  border-right: none;
  border-left: none;
  max-width: 100%;
  font-size: 2.2rem;
  padding: 10px 60px 15px 25px;
  position: relative;
  background-position: center right 25px;
}
.frontLinks li.el_wide a::after {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #962E34;
  position: absolute;
  bottom: -1px;
  left: 0;
}
.frontLinks li.el_wide a:hover {
  color: #962E34;
  background: rgba(255, 255, 255, 0) url(../img/icon_right.svg) no-repeat center right 25px;
}
.frontLinks li.el_wide a:hover::after {
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.frontLinks.frontLinks--3col {
  margin-top: 80px;
}
@media screen and (min-width: 992px) {
  .frontLinks.frontLinks--3col li {
    width: calc(33.3333333333% - 10px);
    margin: 0 5px 10px;
  }
}

.sectionFrontAbout {
  overflow: hidden;
}

.frontBnr {
  padding: 0 0 10px;
  width: calc(100% + 30px);
  margin: 0 0 0 -15px;
}
@media screen and (min-width: 768px) {
  .frontBnr {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 40px 0 40px;
    width: calc(100% + 10px);
    margin: 0 0 0 -5px;
  }
}
@media screen and (min-width: 992px) {
  .frontBnr {
    width: calc(100% + 36px);
    margin: 0 0 0 -18px;
  }
}
@media screen and (min-width: 1200px) {
  .frontBnr {
    max-width: 796px;
    margin: auto;
  }
}
.frontBnr a {
  display: block;
  text-decoration: none;
  margin: 0 0 40px;
  color: #141C2D;
  background: #F5F5F5;
}
@media screen and (min-width: 768px) {
  .frontBnr a {
    width: calc(50% - 10px);
    margin: 0 5px 30px;
  }
}
@media screen and (min-width: 992px) {
  .frontBnr a {
    width: calc(50% - 18px);
    margin: 0 18px 30px;
  }
}
.frontBnr a .img {
  overflow: hidden;
  margin: 0 0 20px;
}
.frontBnr a .img img {
  vertical-align: top;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  min-width: 100%;
  height: auto;
}
.frontBnr a .text {
  padding: 0 15px 30px;
  text-align: center;
  margin: 0;
}
.frontBnr a:hover .img img {
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
}

.frontAboutOuter {
  overflow: hidden;
  margin: 0 0 30px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .frontAboutOuter {
    background: #141C2D;
  }
}

@media screen and (min-width: 768px) {
  .frontAboutBg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/front_about_normal.jpg) no-repeat center top;
    background-size: cover;
  }
}

.frontAbout {
  -webkit-transition: 0.3s;
  transition: 0.3s;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .frontAbout {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}

.frontAboutItem {
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid #fff;
}
@media screen and (min-width: 768px) {
  .frontAboutItem {
    width: 50%;
    min-height: 625px;
    border-right: 1px solid #fff;
    border-bottom: none;
  }
}
.frontAboutItem .frontAboutItem__shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #141C2D;
  opacity: 0.3;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .frontAboutItem .frontAboutItem__shadow {
    display: block !important;
  }
}
@media screen and (min-width: 768px) {
  .frontAboutItem .frontAboutItem__shadow {
    display: none;
  }
}
.frontAboutItem .frontAboutItem__inner {
  position: relative;
  padding: 40px 15px 0;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .frontAboutItem .frontAboutItem__inner {
    padding: 0;
    position: absolute;
    bottom: 0px;
    left: 30px;
    width: calc(100% - 60px);
    z-index: 2;
  }
}
@media screen and (max-width: 767px) {
  .frontAboutItem .frontAboutItem__hover {
    display: block !important;
  }
}
@media screen and (min-width: 768px) {
  .frontAboutItem .frontAboutItem__hover {
    display: none;
  }
}
.frontAboutItem .frontAboutItem__hover .text {
  color: #fff;
  text-align: center;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  .frontAboutItem .frontAboutItem__hover .text {
    text-align: left;
    opacity: 0;
    font-size: 1.6rem;
  }
}
.frontAboutItem .frontAboutItem__hover .left {
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
@media screen and (min-width: 768px) {
  .frontAboutItem .frontAboutItem__hover .left {
    opacity: 0;
  }
}
.frontAboutItem.frontAboutItem00 {
  width: 0;
  min-height: auto;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .frontAboutItem.frontAboutItem00 {
    background: none;
  }
}
.frontAboutItem.frontAboutItem01 {
  background: url(../img/front_about_business.jpg) no-repeat top center;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .frontAboutItem.frontAboutItem01 {
    background: none;
  }
}
.frontAboutItem.frontAboutItem02 {
  background: url(../img/front_about_philosophy.jpg) no-repeat top center;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .frontAboutItem.frontAboutItem02 {
    background: none;
  }
}
.frontAboutItem.frontAboutItem03 {
  background: url(../img/front_about_history.jpg) no-repeat top center;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .frontAboutItem.frontAboutItem03 {
    background: none;
  }
}
.frontAboutItem:last-child {
  border-bottom: none;
}
@media screen and (min-width: 768px) {
  .frontAboutItem:last-child {
    border-right: none;
  }
}

@media screen and (min-width: 768px) {
  .companyLink {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    width: 100%;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.companyLink .companyLink__item {
  display: block;
  margin: 0 0 50px;
  color: inherit;
  text-decoration: none;
  color: #141C2D;
  clear: both;
}
@media screen and (min-width: 768px) {
  .companyLink .companyLink__item {
    width: calc(50% - 18px);
    margin: 0 0 40px;
  }
}
.companyLink .companyLink__item .img {
  overflow: hidden;
  margin: 0 0 20px;
  float: left;
  width: 35%;
}
@media screen and (min-width: 768px) {
  .companyLink .companyLink__item .img {
    float: none;
    width: 100%;
  }
}
.companyLink .companyLink__item .img img {
  vertical-align: top;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  min-width: 100%;
  height: auto;
}
.companyLink .companyLink__item .companyLinkHeadline {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 0 0 5px;
  width: calc(65% - 15px);
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .companyLink .companyLink__item .companyLinkHeadline {
    float: none;
    width: 100%;
    font-size: 2.2rem;
    margin: 0 0 8px;
    font-weight: normal;
  }
}
.companyLink .companyLink__item .text {
  width: calc(65% - 15px);
  margin-left: auto;
  min-height: 86px;
}
@media screen and (min-width: 768px) {
  .companyLink .companyLink__item .text {
    float: none;
    width: 100%;
    min-height: auto;
  }
}
.companyLink .companyLink__item:hover {
  color: #962E34;
}
.companyLink .companyLink__item:hover .img img {
  -webkit-transform: scale(1.01);
          transform: scale(1.01);
}
.companyLink .companyLink__item.companyLink__item01 {
  width: 100%;
  margin: 0 0 50px;
}
@media screen and (min-width: 768px) {
  .companyLink .companyLink__item.companyLink__item01 {
    margin: 0 0 72px;
  }
}
.companyLink .companyLink__item.companyLink__item01:hover {
  color: #141C2D;
}

.companyPickup {
  background: #F5F5F5;
}
@media screen and (min-width: 768px) {
  .companyPickup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.companyPickup .companyPickup__left {
  text-align: center;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .companyPickup .companyPickup__left {
    width: 50%;
  }
}
.companyPickup .companyPickup__left img {
  width: 100%;
}
.companyPickup .companyPickup__right {
  padding: 25px 15px 30px;
}
@media screen and (min-width: 768px) {
  .companyPickup .companyPickup__right {
    width: 50%;
    padding: 15px;
    position: relative;
  }
}
@media screen and (min-width: 768px) {
  .companyPickup .companyPickup__right .companyPickup__rightinner {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    width: 100%;
    padding: 0 10px;
  }
}
.companyPickup .companyPickup__right .text {
  float: none;
  text-align: center;
  width: 100%;
  min-height: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .companyPickup .companyPickup__right .text {
    font-size: 1.6rem;
  }
}
.companyPickup .companyPickup__right .btn01 {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .companyPickup .companyPickup__right .btn01 {
    max-width: 253px;
    padding: 11px 25px 10px 18px;
  }
}

.companyPickupHeadline {
  font-size: 2.2rem;
  margin: 0 0 25px;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .companyPickupHeadline {
    font-size: 2rem;
    margin: 0 0 17px;
  }
}
@media screen and (min-width: 992px) {
  .companyPickupHeadline {
    font-size: 2.2rem;
    margin: 0 0 25px;
  }
}
.companyPickupHeadline::after {
  content: "";
  display: block;
  height: 2px;
  max-width: 34px;
  margin: 15px auto 0;
  background: #962E34;
}
@media screen and (min-width: 768px) {
  .companyPickupHeadline::after {
    margin: 8px auto 0;
  }
}
@media screen and (min-width: 992px) {
  .companyPickupHeadline::after {
    margin: 15px auto 0;
  }
}

.historyList {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  margin: 0 0 40px;
}
.historyList::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #CCC;
  position: absolute;
  top: 0;
  left: 115px;
}
.historyList dt {
  font-weight: bold;
  width: 120px;
  position: relative;
}
.historyList dt::after {
  content: "";
  display: block;
  position: absolute;
  top: 12px;
  right: 2px;
  width: 5px;
  height: 5px;
  background: #962E34;
  border-radius: 100%;
}
.historyList dd {
  width: calc(100% - 140px);
  margin: 0 0 40px;
}
.historyList dd:last-child {
  margin: 0;
}

.sectionManagementphilosophy .text {
  line-height: 2;
}
@media screen and (min-width: 768px) {
  .sectionManagementphilosophy .text {
    text-align: center;
  }
}

.managementphilosophyTitle {
  /*
  background: variable.$color-main;
  color: variable.$color-white;
  font-family: variable.$mincho;
  padding: 38px 0px;
  */
  text-align: center;
  font-weight: bold;
  font-size: 4vw;
  max-width: 690px;
  margin: 0 auto 45px;
  padding: 0 0 30px;
  border-bottom: 1px solid #962E34;
}
@media screen and (min-width: 768px) {
  .managementphilosophyTitle {
    font-weight: 500;
    font-size: 3.2rem;
  }
}

.managementphilosophyImg {
  text-align: center;
  margin: 0 0 50px;
}

.greetingRead {
  text-align: center;
  /*font-family: variable.$mincho;*/
  font-size: 4vw;
  font-weight: bold;
  margin: 0 auto 50px;
}
@media screen and (min-width: 768px) {
  .greetingRead {
    font-size: 3.2rem;
    font-weight: 500;
  }
}

.greetingMessageImg {
  position: relative;
  text-align: center;
  margin: 0 0 40px;
  /*
  h2{
  	@include mixins.mq(min-xs) {
  		position: absolute;
  	}
  }
  */
}

.greetingMessageText {
  margin: 0 0 40px;
}
.greetingMessageText p {
  margin: 0 0 15px;
}

.greetingName {
  margin: 30px 0 40px;
  text-align: right;
}
.greetingName span {
  display: block;
}

.sectionOurbusinessHead {
  position: relative;
  padding: 0 15px 10px;
}
@media screen and (min-width: 768px) {
  .sectionOurbusinessHead {
    padding: 143px 15px 0;
    margin: 0 0 133px;
  }
}
@media screen and (min-width: 992px) {
  .sectionOurbusinessHead {
    padding: 143px 60px 0;
  }
}
@media screen and (min-width: 768px) {
  .sectionOurbusinessHead::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 80%;
    height: 100%;
    background: #F5F5F5;
  }
}
@media screen and (min-width: 1200px) {
  .sectionOurbusinessHead::before {
    width: 60%;
  }
}

.ourbusinessHead {
  position: relative;
  z-index: 1;
  max-width: 1197px;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .ourbusinessHead {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width: 1200px) {
  .ourbusinessHead {
    padding-left: 88.5px;
  }
}
.ourbusinessHead .ourbusinessHead__left {
  margin: 0 0 40px;
}
@media screen and (min-width: 768px) {
  .ourbusinessHead .ourbusinessHead__left {
    width: calc(45% - 35px);
    min-width: 460px;
    margin: 0 38px 0 0;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.ourbusinessHead .ourbusinessHead__right {
  margin: 0 0 40px;
}
@media screen and (min-width: 768px) {
  .ourbusinessHead .ourbusinessHead__right {
    width: calc(55% - 35px);
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (min-width: 768px) {
  .ourbusinessHead .ourbusinessHead__right .img {
    text-align: right;
  }
}
.ourbusinessItem {
  padding: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .ourbusinessItem {
    padding: 0 0 55px;
  }
}
@media screen and (min-width: 768px) {
  .ourbusinessItem:last-child {
    padding: 0 0 10px;
  }
}
@media screen and (min-width: 768px) {
  .ourbusinessText {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  .ourbusinessText .ourbusinessText__left {
    width: 100%;
    max-width: 258px;
  }
}
@media screen and (min-width: 1200px) {
  .ourbusinessText .ourbusinessText__left {
    max-width: 328px;
  }
}
@media screen and (min-width: 768px) {
  .ourbusinessText .ourbusinessText__right {
    width: 100%;
  }
}

/*IR セレクト*/
.irfileSwitch {
  margin: 0 0 30px;
}

.irfileSwitch__select {
  border: 1px solid #CCC;
  border-radius: 3px;
  padding: 7px 18px 7px 5px;
  -webkit-box-shadow: 2px 3px 3px 0px #F5F5F5;
          box-shadow: 2px 3px 3px 0px #F5F5F5;
  font-size: 1.5rem;
  min-width: 200px;
  cursor: pointer;
  cursor: hand;
}
/*IR リスト*/
.irfileMenu {
  margin: 0 0 60px;
}
.irfileMenu li a {
  font-size: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  padding: 20px 0;
  border-bottom: 1px solid #CCC;
  position: relative;
}
@media screen and (min-width: 768px) {
  .irfileMenu li a {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}
.irfileMenu li a::after {
  content: "";
  display: block;
  width: 0;
  height: 1px;
  background: #962E34;
  position: absolute;
  bottom: -1px;
  left: 0;
}
.irfileMenu li a:hover .irfileMenu__date,
.irfileMenu li a:hover .irfileMenu__text {
  color: #962E34;
}
.irfileMenu li a:hover::after {
  width: 100%;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
.irfileMenu li:first-child a {
  padding: 0 0 20px;
}
.irfileMenu.irfileMenu--inactive li {
  font-size: 1.5rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  width: 100%;
  padding: 20px 0;
  border-bottom: 1px solid #CCC;
  position: relative;
}
@media screen and (min-width: 768px) {
  .irfileMenu.irfileMenu--inactive li {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.irfileMenu__date {
  width: 100%;
  max-width: 130px;
}

.irfileMenu__term {
  width: 100%;
  max-width: 70px;
  padding: 3px;
  text-align: center;
  background: #962E34;
  color: #fff;
  font-size: 1.3rem;
  line-height: 1;
  margin: 6px 22px 0 0px;
}

.irfileMenu__text {
  width: 100%;
}
.irfileMenu__text .irMenu__textinner {
  display: inline-block;
  text-decoration: none;
  display: block;
}

.irfileMenu__name {
  display: inline-block;
  margin: 0 10px 0 0;
}

.irfileMenu__pdf {
  display: inline-block;
  position: relative;
  padding: 0 0 0 20px;
  background: url(../img/icon_pdf.png) no-repeat left center;
}

.irfileTab {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 2px);
  margin: 0 0 65px -1px;
}
.irfileTab li {
  text-align: center;
  color: #fff;
  width: calc(33.3333333333% - 2px);
  margin: 0 1px 2px;
}
@media screen and (min-width: 768px) {
  .irfileTab li {
    width: calc(16.6666666667% - 2px);
  }
}
.irfileTab li a {
  font-size: 1.4rem;
  padding: 1px 5px;
  text-decoration: none;
  display: block;
  background: #988E8E;
}
.irfileTab li a:hover {
  opacity: 0.6;
}

.color__settlement {
  background: #9d565a !important;
}

.color__timely {
  background: #8b5f85 !important;
}

.color__legal {
  background: #68b0bb !important;
}

.color__docments {
  background: #90ab8c !important;
}

.color__info {
  background: #d77c61 !important;
}

/*PDFReader*/
.pdfReader {
  margin: 100px 0 40px;
  background: #F9F8F6;
  padding: 40px 25px 5px 30px;
  overflow: hidden;
}

.pdfreaderBtn {
  display: inline-block;
  width: 100%;
  max-width: 341px;
  padding: 18px 25px 15px 18px;
  background: #fff url(../img/icon_link.svg) no-repeat top 7px right 7px;
  border: 1px solid #CCC;
  border-radius: 5px;
  text-decoration: none;
  color: #141C2D;
  margin: 0 0 40px;
}
.pdfreaderBtn:hover {
  background: #962E34 url(../img/icon_link-white.svg) no-repeat top 7px right 7px;
  color: #fff;
}

/*====================================

グラフ

=====================================*/
.ir-graphWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}

.ir-graphWrap__table {
  width: 100%;
  margin: 0 0 50px;
}
@media screen and (min-width: 992px) {
  .ir-graphWrap__table {
    width: calc(50% - 10px);
  }
}
@media screen and (min-width: 1200px) {
  .ir-graphWrap__table {
    width: calc(50% - 33px);
  }
}

.ir-graphWrap__image {
  width: 100%;
  margin: 0 0 15px;
}

.ir-graphWrap__text {
  width: 100%;
}

.XJSImage_Title {
  margin: 0 0 25px;
  font-weight: 500;
  text-align: left;
  font-size: 1.7rem;
  padding: 0 0 5px;
  border-bottom: 2px solid #962E34;
}
@media screen and (min-width: 1200px) {
  .XJSImage_Title {
    font-size: 2rem;
  }
}

.XJSImage_UnitL {
  color: #CCC;
  font-size: 1.3rem;
  margin: 0 auto 10px;
  line-height: 1;
  max-width: 240px;
}
@media screen and (min-width: 768px) {
  .XJSImage_UnitL {
    max-width: 100%;
  }
}

.XJSImage_Main {
  text-align: center;
}
.XJSImage_Main img {
  display: inline-block;
  max-width: 100%;
}

.xj_chart_table {
  width: 100%;
  border-top: 1px solid #CCC;
  border-left: 1px solid #CCC;
}
.xj_chart_table tbody tr th {
  font-size: 1.1rem;
  border-right: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
  background: #F5F5F5;
  padding: 5px 3px;
  white-space: nowrap;
}
@media screen and (min-width: 768px) {
  .xj_chart_table tbody tr th {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 1200px) {
  .xj_chart_table tbody tr th {
    padding: 6px 5px;
  }
}
.xj_chart_table tbody tr td {
  font-size: 1.1rem;
  border-right: 1px solid #CCC;
  border-bottom: 1px solid #CCC;
  padding: 5px 3px;
  word-break: break-all;
  text-align: right;
}
@media screen and (min-width: 768px) {
  .xj_chart_table tbody tr td {
    font-size: 1.3rem;
  }
}
@media screen and (min-width: 1200px) {
  .xj_chart_table tbody tr td {
    padding: 6px 10px 6px 5px;
  }
}
.xj_chart_table tbody tr td.xj_chart_q, .xj_chart_table tbody tr td.xj_chart_header, .xj_chart_table tbody tr td.xj_chart_q_last, .xj_chart_table tbody tr td.xj_chart_header_first {
  background: #F5F5F5;
  text-align: center;
  padding: 5px 0;
  white-space: nowrap;
}
@media screen and (min-width: 1200px) {
  .xj_chart_table tbody tr td.xj_chart_q, .xj_chart_table tbody tr td.xj_chart_header, .xj_chart_table tbody tr td.xj_chart_q_last, .xj_chart_table tbody tr td.xj_chart_header_first {
    padding: 6px 0;
  }
}

/*====================================

よくある質問

=====================================*/
.faqblock {
  margin: 0 0 50px;
}

.faqblock__item {
  border-bottom: 1px solid #CCC;
  margin: 0 0 40px;
  position: relative;
}

.faqblock__btn {
  display: inline-block;
  width: 23px;
  height: 23px;
  position: absolute;
  top: 0;
  right: 20px;
  cursor: pointer;
}
.faqblock__btn span {
  display: inline-block;
  width: 75%;
  height: 2px;
  background: #962E34;
}
.faqblock__btn span:first-child {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}
.faqblock__btn span:last-child {
  display: inline-block;
  width: 2px;
  height: 75%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
}

.faqblock__question {
  padding: 0px 60px 2px 0px;
  cursor: pointer;
}
.faqblock__question p {
  position: relative;
  padding: 0 0 0 35px;
  margin: 0 0 20px;
}
.faqblock__question p::before {
  content: "Q.";
  position: absolute;
  top: -4px;
  left: 0;
  display: inline-block;
  font-size: 2.1rem;
  color: #962E34;
  font-weight: bold;
}
.faqblock__question.on .faqblock__btn span:last-child {
  display: none;
}
.faqblock__question:hover {
  opacity: 0.7;
}

.faqblock__answer {
  display: none;
  padding: 0px 60px 2px 0px;
  background: #fff;
}
.faqblock__answer p {
  position: relative;
  padding: 0 0 0 35px;
  margin: 0 0 20px;
  font-size: 1.5rem;
}
.faqblock__answer p::before {
  content: "A.";
  position: absolute;
  top: -4px;
  left: 0;
  display: inline-block;
  font-size: 2.1rem;
  color: #ea562a;
  font-weight: bold;
}
.faqblock__answer a:hover {
  color: #962E34;
}
.faqblock__answer a.btn02 {
  width: auto;
  padding: 5px 50px 5px 20px;
}
@media screen and (min-width: 992px) {
  .faqblock__answer a.btn02 {
    padding: 5px 50px 5px 20px;
  }
}
.faqblock__answer a.btn02:hover {
  color: #fff;
}

/*====================================

コーポレート・ガバナンス

=====================================*/
.irAddText {
  width: 100%;
  margin: 0 0 50px;
}

.irAddText__left {
  width: 100%;
  font-size: 1.4rem;
  padding: 30px 15px 0;
}
.irAddText__right {
  width: 100%;
  padding: 0 15px;
}
@media screen and (min-width: 768px) {
  .irAddText__right {
    width: 100%;
    max-width: 340px;
    padding: 30px 15px 0;
  }
}
.irAddText__right .btnBlock {
  text-align: center;
}

.managementMessage {
  margin: 0 0 60px;
}
@media screen and (min-width: 992px) {
  .managementMessage {
    min-height: 379px;
    background: #f8f8f8 url(../img/front_message.jpg) no-repeat top right 55%;
    background-size: cover;
  }
}
@media screen and (min-width: 1400px) {
  .managementMessage {
    min-height: 379px;
    background: #f8f8f8 url(../img/front_message.jpg) no-repeat top right 52%;
    background-size: auto 100%;
  }
}

.managementMessage__inner {
  width: calc(100% + 30px);
  margin-left: -15px;
  background: #F5F5F5;
}
@media screen and (min-width: 768px) {
  .managementMessage__inner {
    margin: 0;
    width: 100%;
  }
}
@media screen and (min-width: 992px) {
  .managementMessage__inner {
    background: none;
    padding: 74px 0 0 36px;
  }
}
@media screen and (min-width: 1400px) {
  .managementMessage__inner {
    padding: 70px 0 0 36px;
  }
}
.managementMessage__inner .img {
  margin: 0 0 20px;
}
@media screen and (min-width: 992px) {
  .managementMessage__inner .img {
    display: none;
  }
}
.managementMessage__inner .largeHeadline01 {
  padding: 0 15px;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .managementMessage__inner .largeHeadline01 {
    padding: 0;
    text-align: left;
  }
}
@media screen and (max-width: 991px) {
  .managementMessage__inner .largeHeadline01 .largeHeadline01__main {
    font-size: 1.9rem;
  }
}
.managementMessage__inner .text {
  padding: 0 15px;
  text-align: center;
}
@media screen and (min-width: 992px) {
  .managementMessage__inner .text {
    padding: 0;
    text-align: left;
  }
}
@media screen and (min-width: 992px) {
  .managementMessage__inner .btn01 {
    max-width: 253px;
    padding: 11px 25px 10px 18px;
  }
}

/*乃が美ホールディングスについて*/
.iiAboutList {
  margin: 0 0 20px;
}
.iiAboutList li {
  margin: 0 0 10px;
  list-style: none;
  padding: 0 0 10px 20px;
  border-bottom: 1px solid #CCC;
  position: relative;
  font-weight: bold;
  font-size: 1.5rem;
}
.iiAboutList li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #962E34;
  position: absolute;
  top: 11px;
  left: 5px;
}

.iiAboutText01 {
  margin: 0 0 15px;
  font-size: 2rem;
  font-weight: 500;
  color: #ea562a;
}

.iiAboutText02 {
  margin: 0 0 33px;
}

/*高級「生」食パンの発祥について*/
.iiOriginWrap01 {
  margin: 0 auto;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .iiOriginWrap01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    max-width: 600px;
  }
}
@media screen and (min-width: 1200px) {
  .iiOriginWrap01 {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    max-width: 100%;
  }
}
.iiOriginWrap01 .iiOriginWrap01__left {
  padding: 70px 0;
  background: #F5F5F5;
  border: 1px solid #DCB07A;
  border-radius: 100%;
  position: relative;
  margin: 0 auto 60px;
  width: 100%;
  max-width: 266px;
  min-height: 266px;
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .iiOriginWrap01 .iiOriginWrap01__left {
    margin: 0 0 60px;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
@media screen and (min-width: 1200px) {
  .iiOriginWrap01 .iiOriginWrap01__left {
    margin: 0 0 100px;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.iiOriginWrap01 .iiOriginWrap01__left span {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  width: 100%;
}
.iiOriginWrap01 .iiOriginWrap01__right {
  padding: 70px 0;
  background: #F5F5F5;
  border: 1px solid #DCB07A;
  border-radius: 100%;
  position: relative;
  margin: 0 auto 60px;
  width: 100%;
  max-width: 266px;
  min-height: 266px;
  font-size: 1.8rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .iiOriginWrap01 .iiOriginWrap01__right {
    margin: 0 0 60px;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
@media screen and (min-width: 1200px) {
  .iiOriginWrap01 .iiOriginWrap01__right {
    margin: 0 0 100px;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
  }
}
.iiOriginWrap01 .iiOriginWrap01__right span {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  -moz-transform: translate(-50%, -50%);
  width: 100%;
}
.iiOriginWrap01 .iiOriginWrap01__center {
  font-weight: normal;
  font-size: 4vw;
  position: relative;
  line-height: 1.5;
  margin: 0 0 50px;
}
@media screen and (min-width: 768px) {
  .iiOriginWrap01 .iiOriginWrap01__center {
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    width: 100%;
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 1200px) {
  .iiOriginWrap01 .iiOriginWrap01__center {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.iiOriginWrap01 .iiOriginWrap01__center .text {
  text-align: center;
  margin: 0 0 30px;
}
.iiOriginWrap01 .iiOriginWrap01__center .text span {
  font-weight: bold;
}
.iiOriginWrap01 .iiOriginWrap01__center .text span.el_big {
  font-size: 3rem;
}
.iiOriginWrap01 .iiOriginWrap01__center .text span.el_red {
  color: #962E34;
  font-size: 5vw;
}
@media screen and (min-width: 768px) {
  .iiOriginWrap01 .iiOriginWrap01__center .text span.el_red {
    font-size: 2.4rem;
  }
}
.iiOriginWrap01 .iiOriginWrap01__center .img {
  margin: 0 0 5px;
}
.iiOriginWrap01 .iiOriginWrap01__center .iiOriginText01 {
  display: inline-block;
  text-align: center;
  font-weight: bold;
  font-size: 1.8rem;
  color: #141C2D;
}

.iiArrow {
  position: absolute;
  width: 100px;
  height: 100px;
}
.iiArrow::before {
  content: "";
  display: inline-block;
}
.iiArrow::after {
  content: "";
  display: inline-block;
}
.iiArrow.iiArrow--left {
  bottom: -50px;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  z-index: -1;
}
@media screen and (min-width: 1200px) {
  .iiArrow.iiArrow--left {
    top: 50%;
    bottom: auto;
    left: auto;
    right: -65px;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
  }
}
.iiArrow.iiArrow--left::before {
  width: 100px;
  height: 50px;
  background: #DCB07A;
}
@media screen and (min-width: 1200px) {
  .iiArrow.iiArrow--left::before {
    width: 50px;
    height: 100px;
  }
}
.iiArrow.iiArrow--left::after {
  border-top: 40px solid #DCB07A;
  border-right: 70px solid transparent;
  border-left: 70px solid transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
}
@media screen and (min-width: 1200px) {
  .iiArrow.iiArrow--left::after {
    border-top: 70px solid transparent;
    border-left: 40px solid #DCB07A;
    border-bottom: 70px solid transparent;
    top: 50%;
    left: auto;
    right: -85px;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
  }
}
.iiArrow.iiArrow--right {
  bottom: -50px;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
  z-index: -1;
}
@media screen and (min-width: 1200px) {
  .iiArrow.iiArrow--right {
    top: 50%;
    bottom: auto;
    left: -65px;
    right: auto;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
  }
}
.iiArrow.iiArrow--right::before {
  width: 100px;
  height: 50px;
  background: #DCB07A;
}
@media screen and (min-width: 1200px) {
  .iiArrow.iiArrow--right::before {
    width: 50px;
    height: 100px;
  }
}
.iiArrow.iiArrow--right::after {
  border-top: 40px solid #DCB07A;
  border-right: 70px solid transparent;
  border-left: 70px solid transparent;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, 0);
  -webkit-transform: translate(-50%, 0);
  -ms-transform: translate(-50%, 0);
  -moz-transform: translate(-50%, 0);
}
@media screen and (min-width: 1200px) {
  .iiArrow.iiArrow--right::after {
    border-top: 70px solid transparent;
    border-right: 40px solid #DCB07A;
    border-bottom: 70px solid transparent;
    top: 50%;
    left: -85px;
    transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
  }
}

.iiList {
  margin: 0 0 20px;
}
.iiList li {
  margin: 0 0 11px;
  list-style: none;
  padding: 0 0 11px 20px;
  border-bottom: 1px solid #CCC;
  position: relative;
  font-weight: bold;
  font-size: 1.7rem;
}
.iiList li::before {
  content: "";
  display: inline-block;
  width: 5px;
  height: 5px;
  background: #962E34;
  position: absolute;
  top: 11px;
  left: 5px;
}

.iiOriginText02 {
  text-align: center;
  margin: 0 0 33px;
  line-height: 1.4;
  font-size: 2.4rem;
}
@media screen and (min-width: 768px) {
  .iiOriginText02 {
    font-size: 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .iiOriginText02 {
    font-size: 5rem;
  }
}
.iiOriginText02 span {
  color: #ea562a;
}

/*乃が美の成長の歴史*/
.iiHistoryWarp01 {
  margin: 0 0 40px;
}
@media screen and (min-width: 768px) {
  .iiHistoryWarp01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width: 768px) {
  .iiHistoryWarp01 .iiDl {
    width: calc(50% - 18px);
  }
}

.iiDl {
  margin: 0 0 20px;
  border-bottom: 1px solid #CCC;
  padding: 0 0 0 78px;
  /*
  &.iiDl--img01{
  	background: url(../ir/individualinvestors/img/ii_history_list01.svg) no-repeat top left;
  }
  &.iiDl--img02{
  	background: url(../ir/individualinvestors/img/ii_history_list02.svg) no-repeat top left;
  }
  &.iiDl--img03{
  	background: url(../ir/individualinvestors/img/ii_history_list03.svg) no-repeat top left;
  }
  &.iiDl--img04{
  	background: url(../ir/individualinvestors/img/ii_history_list04.svg) no-repeat top left;
  }
  */
}
.iiDl dt {
  margin: 0 0 3px;
  list-style: none;
  position: relative;
  font-weight: bold;
  font-size: 1.8rem;
  line-height: 1.4;
}
.iiDl dd {
  font-size: 1.6rem;
  margin: 0 0 15px;
}

@media screen and (min-width: 768px) {
  .iiOriginWrap02 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.iiOriginWrap02 .iiOriginWrap02__left {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .iiOriginWrap02 .iiOriginWrap02__left {
    width: 100%;
    max-width: calc(40% - 18px);
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.iiOriginWrap02 .iiOriginWrap02__right {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .iiOriginWrap02 .iiOriginWrap02__right {
    width: 100%;
    max-width: calc(60% - 18px);
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}

/*高級「生」食パンをブームから文化へ*/
@media screen and (min-width: 768px) {
  .iiCultureWrap01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.iiCultureWrap01 .iiCultureWrap01__left {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .iiCultureWrap01 .iiCultureWrap01__left {
    width: 100%;
    max-width: calc(50% - 18px);
  }
}
.iiCultureWrap01 .iiCultureWrap01__right {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .iiCultureWrap01 .iiCultureWrap01__right {
    width: 100%;
    max-width: calc(50% - 18px);
  }
}

.iiCultureWrap02 {
  padding: 40px 15px 0;
  max-width: 800px;
  margin: 0 auto 40px;
  background: #F9F8F6;
  overflow: hidden;
  border-radius: 5px;
}
.iiCultureWrap02 .img {
  margin: 0 0 15px;
}
.iiCultureWrap02 .text {
  max-width: 611px;
  margin: 0 auto 40px;
}

@media screen and (min-width: 768px) {
  .iiCultureWrap03 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 0 10px;
  }
}
.iiCultureWrap03 .iiCultureWrap03__left {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .iiCultureWrap03 .iiCultureWrap03__left {
    width: 100%;
    max-width: calc(50% - 18px);
  }
}
.iiCultureWrap03 .iiCultureWrap03__right {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .iiCultureWrap03 .iiCultureWrap03__right {
    width: 100%;
    max-width: calc(50% - 18px);
  }
}

/*今後の出店戦略*/
@media screen and (min-width: 768px) {
  .iiStrategyWrap01 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
.iiStrategyWrap01 .iiStrategyWrap01__left {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .iiStrategyWrap01 .iiStrategyWrap01__left {
    width: 100%;
    max-width: calc(50% - 18px);
  }
}
.iiStrategyWrap01 .iiStrategyWrap01__right {
  margin: 0 0 10px;
}
@media screen and (min-width: 768px) {
  .iiStrategyWrap01 .iiStrategyWrap01__right {
    width: 100%;
    max-width: calc(50% - 18px);
  }
}

.imgViewerSp {
  overflow: hidden;
}
.imgViewerSp img {
  margin-top: 0;
}
.imgViewerSp.imgViewerSp--sp img {
  margin-top: -60px;
}
@media screen and (min-width: 601px) {
  .imgViewerSp.imgViewerSp--sp img {
    margin-top: -100px;
  }
}

.collectRead {
  text-align: center;
  font-size: 1.9rem;
  line-height: 1.5;
  margin: 0 0 30px;
}
@media screen and (min-width: 768px) {
  .collectRead {
    font-size: 2.4rem;
    margin: 40px 0 40px;
  }
}
@media screen and (min-width: 1200px) {
  .collectRead {
    font-size: 3.2rem;
  }
}

.sectionCollectProperty {
  position: relative;
  padding: 50px 0 10px;
}
@media screen and (min-width: 768px) {
  .sectionCollectProperty {
    padding: 80px 0 40px;
  }
}
.sectionCollectProperty::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 333px;
  background: rgb(248, 248, 248);
  background: -webkit-gradient(linear, left top, left bottom, from(rgb(248, 248, 248)), to(rgb(255, 255, 255)));
  background: linear-gradient(180deg, rgb(248, 248, 248) 0%, rgb(255, 255, 255) 100%);
}
.sectionCollectProperty .container {
  position: relative;
  z-index: 1;
}

.newsContent {
  float: none;
  clear: both;
  overflow: hidden;
  padding: 0 0 20px;
}

/*STEP*/
.contactStep {
  margin: 0 0 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: relative;
  z-index: -1;
}
.contactStep li {
  line-height: 1.4;
  background: #efebe3;
  padding: 15px 2px;
  position: relative;
  width: 33.3333333333%;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contactStep li::after {
    content: "";
    display: inline-block;
    position: absolute;
    top: 0;
    right: -20px;
    border-top: 38px solid transparent;
    border-bottom: 38px solid transparent;
    border-left: 20px solid #efebe3;
    z-index: 1;
  }
}
.contactStep li span {
  color: #962E34;
  display: block;
  font-size: 1.1rem;
}
@media screen and (min-width: 768px) {
  .contactStep li span {
    font-size: 1.3rem;
  }
}
.contactStep li span.el_big {
  font-size: 1.2rem;
}
@media screen and (min-width: 768px) {
  .contactStep li span.el_big {
    font-size: 2rem;
  }
}
.contactStep li:last-child {
  /*background: variable.$color-gray04;*/
}
@media screen and (min-width: 768px) {
  .contactStep li:last-child::after {
    display: none;
  }
}
@media screen and (min-width: 768px) {
  .contactStep li.sepa::before {
    content: "";
    display: inline-block;
    width: 3px;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background: #fff;
    z-index: 1;
  }
}
.contactStep li.on {
  background: #962E34;
}
@media screen and (min-width: 768px) {
  .contactStep li.on::after {
    border-left: 20px solid #962E34;
  }
}
.contactStep li.on span {
  color: #fff;
}

/*エラーメッセージ*/
#error_message {
  color: #962E34;
  margin: 0 0 10px;
}

.alert-danger {
  font-size: 1.4rem;
  border: none;
  padding: 0px 15px;
  border-radius: 0;
}

.alert-warning {
  color: inherit;
  background-color: inherit;
  border-color: inherit;
}

#powered_by_me {
  text-align: center;
  margin: 0 0 33px;
  color: #CCC;
  font-size: 1.4rem;
}
#powered_by_me a:hover {
  color: #962E34;
}

.alert {
  position: relative;
  padding: 2px 5px;
  margin: 10px 0;
  border: none;
  border-radius: 0;
}

.form-check--agreement {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin: 0 0 10px;
}
.form-check--agreement input {
  position: static;
  margin: 0 5px 0 0;
}
.form-check--agreement .form-check-label {
  line-height: 1;
}

#originaltel_error {
  display: none;
}
#originaltel_error.none {
  display: block;
}

.alert.alert-danger {
  font-size: 1.2rem;
  padding: 2px 1px 2px 5px;
}

.seimeiGroup .seimeiGroup__left,
.seimeiGroup .seimeiGroup__right {
  padding: 0;
  margin: 0;
}

.left {
  text-align: left;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}

@media screen and (max-width: 767px) {
  .xs_left {
    text-align: left;
  }
  .xs_center {
    text-align: center;
  }
  .xs_right {
    text-align: right;
  }
}
@media screen and (max-width: 991px) {
  .sm_left {
    text-align: left;
  }
  .sm_center {
    text-align: center;
  }
  .sm_right {
    text-align: right;
  }
}
@media screen and (max-width: 1199px) {
  .md_left {
    text-align: left;
  }
  .md_center {
    text-align: center;
  }
  .md_right {
    text-align: right;
  }
}
.xxxs_visible {
  display: block;
}
@media screen and (min-width: 421px) {
  .xxxs_visible {
    display: none;
  }
}

.xxxs_hidden {
  display: none;
}
@media screen and (min-width: 421px) {
  .xxxs_hidden {
    display: block;
  }
}

.xxs_visible {
  display: block;
}
@media screen and (min-width: 601px) {
  .xxs_visible {
    display: none;
  }
}

.xxs_hidden {
  display: none;
}
@media screen and (min-width: 601px) {
  .xxs_hidden {
    display: block;
  }
}

.xs_visible {
  display: block;
}
@media screen and (min-width: 768px) {
  .xs_visible {
    display: none;
  }
}

.xs_hidden {
  display: none;
}
@media screen and (min-width: 768px) {
  .xs_hidden {
    display: block;
  }
}

.sm_visible {
  display: block;
}
@media screen and (min-width: 992px) {
  .sm_visible {
    display: none;
  }
}

.sm_hidden {
  display: none;
}
@media screen and (min-width: 992px) {
  .sm_hidden {
    display: block;
  }
}

.md_visible {
  display: block;
}
@media screen and (min-width: 1200px) {
  .md_visible {
    display: none;
  }
}

.md_hidden {
  display: none;
}
@media screen and (min-width: 1200px) {
  .md_hidden {
    display: block;
  }
}

.md2_visible {
  display: block;
}
@media screen and (min-width: 1400px) {
  .md2_visible {
    display: none;
  }
}

.md2_hidden {
  display: none;
}
@media screen and (min-width: 1400px) {
  .md2_hidden {
    display: block;
  }
}

.lg_visible {
  display: block;
}
@media screen and (min-width: 1921px) {
  .lg_visible {
    display: none;
  }
}

.lg_hidden {
  display: none;
}
@media screen and (min-width: 1921px) {
  .lg_hidden {
    display: block;
  }
}

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

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

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}