@charset 'utf-8';
/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/* ----------------------------------------------------------------
    Normalize
----------------------------------------------------------------- */
.header article, .header aside, .header details, .header figcaption, .header figure, .header footer, .header header, .header main, .header menu, .header nav, .header section, .header summary, .footer article, .footer aside, .footer details, .footer figcaption, .footer figure, .footer footer, .footer header, .footer main, .footer menu, .footer nav, .footer section, .footer summary {
  display: block;
}
.header audio, .header canvas, .header progress, .header video, .footer audio, .footer canvas, .footer progress, .footer video {
  display: inline-block;
}
.header audio:not([controls]), .footer audio:not([controls]) {
  display: none;
  height: 0;
}
.header progress, .footer progress {
  vertical-align: baseline;
}
.header template, .header [hidden], .footer template, .footer [hidden] {
  display: none;
}
.header a, .footer a {
  background-color: transparent;

  -webkit-text-decoration-skip: objects;
}
.header a:active, .header a:hover, .footer a:active, .footer a:hover {
  outline-width: 0;
}
.header abbr[title], .footer abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  text-decoration: underline dotted;
}
.header b, .header strong, .footer b, .footer strong {
  font-weight: inherit;
  font-weight: bolder;
}
.header dfn, .footer dfn {
  font-style: italic;
}
.header h1, .footer h1 {
  margin: .67em 0;
  font-size: 2em;
}
.header mark, .footer mark {
  background: #ff0;
  color: #000;
}
.header small, .footer small {
  font-size: 100%;
}
.header sub, .header sup, .footer sub, .footer sup {
  position: relative;
  vertical-align: baseline;
  font-size: 75%;
  line-height: 0;
}
.header sub, .footer sub {
  bottom: -.25em;
}
.header sup, .footer sup {
  top: -.5em;
}
.header img, .footer img {
  border-style: none;
}
.header svg:not(:root), .footer svg:not(:root) {
  overflow: hidden;
}
.header code, .header kbd, .header pre, .header samp, .footer code, .footer kbd, .footer pre, .footer samp {
  font-size: 1em;
  font-family: monospace, monospace;
}
.header figure, .footer figure {
  margin: 1em 40px;
}
.header hr, .footer hr {
  overflow: visible;
  box-sizing: content-box;
  height: 0;
}
.header button, .header input, .header select, .header textarea, .footer button, .footer input, .footer select, .footer textarea {
  margin: 0;
  font: inherit;
}
.header optgroup, .footer optgroup {
  font-weight: bold;
}
.header button, .header input, .footer button, .footer input {
  overflow: visible;
}
.header button, .header select, .footer button, .footer select {
  text-transform: none;
}
.header button, .header html input[type='button'], .header [type='reset'], .header [type='submit'], .footer button, .footer html input[type='button'], .footer [type='reset'], .footer [type='submit'] {
  -webkit-appearance: button;
}
.header button::-moz-focus-inner, .header [type='button']::-moz-focus-inner, .header [type='reset']::-moz-focus-inner, .header [type='submit']::-moz-focus-inner, .footer button::-moz-focus-inner, .footer [type='button']::-moz-focus-inner, .footer [type='reset']::-moz-focus-inner, .footer [type='submit']::-moz-focus-inner {
  padding: 0;
  border-style: none;
}
.header button:-moz-focusring, .header [type='button']:-moz-focusring, .header [type='reset']:-moz-focusring, .header [type='submit']:-moz-focusring, .footer button:-moz-focusring, .footer [type='button']:-moz-focusring, .footer [type='reset']:-moz-focusring, .footer [type='submit']:-moz-focusring {
  outline: 1px dotted ButtonText;
}
.header fieldset, .footer fieldset {
  margin: 0 2px;
  padding: .35em .625em .75em;
  border: 1px solid #c0c0c0;
}
.header legend, .footer legend {
  display: table;
  box-sizing: border-box;
  padding: 0;
  max-width: 100%;
  color: inherit;
  white-space: normal;
}
.header textarea, .footer textarea {
  overflow: auto;
}
.header [type='checkbox'], .header [type='radio'], .footer [type='checkbox'], .footer [type='radio'] {
  box-sizing: border-box;
  padding: 0;
}
.header [type='number']::-webkit-inner-spin-button, .header [type='number']::-webkit-outer-spin-button, .footer [type='number']::-webkit-inner-spin-button, .footer [type='number']::-webkit-outer-spin-button {
  height: auto;
}
.header [type='search'], .footer [type='search'] {
  outline-offset: -2px;

  -webkit-appearance: textfield;
}
.header [type='search']::-webkit-search-cancel-button, .header [type='search']::-webkit-search-decoration, .footer [type='search']::-webkit-search-cancel-button, .footer [type='search']::-webkit-search-decoration {
  -webkit-appearance: none;
}
.header ::-webkit-input-placeholder, .footer ::-webkit-input-placeholder {
  color: inherit;
  opacity: .54;
}
.header ::-webkit-file-upload-button, .footer ::-webkit-file-upload-button {
  font: inherit;

  -webkit-appearance: button;
}

.header, .footer {
  min-width: 1100px;
  background: #fff;
  color: #333;
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
  line-height: 1.5;
}
.header *, .footer * {
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
  line-height: 1.5;
}
.header h1, .header h2, .header h3, .header h4, .header h5, .header h6, .footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer h6 {
  margin: 0;
  padding: 0;
}
.header ul, .header ol, .footer ul, .footer ol {
  list-style-type: none;
}
.header a, .footer a {
  color: #152666;
  text-decoration: none;
}
.header a:hover, .header a:active, .header a:focus, .footer a:hover, .footer a:active, .footer a:focus {
  text-decoration: underline;
}
.header button, .footer button {
  cursor: pointer;
}
.header em, .footer em {
  color: #333;
  font-weight: bold;
  font-style: normal;
}
.header strong, .footer strong {
  color: #bc1010;
  font-weight: bold;
}
.header img, .footer img {
  max-width: 100%;
  vertical-align: bottom;
}
.header ul > :last-child, .header ol > :last-child, .header dl > :last-child, .footer ul > :last-child, .footer ol > :last-child, .footer dl > :last-child {
  margin-bottom: 0;
}
.header table, .footer table {
  border-collapse: collapse;
}
.header blockquote, .footer blockquote {
  margin: 0;
}
.header iframe, .footer iframe {
  margin: 0;
  padding: 0;
  width: 100%;
  border: 0;
}
.header input[type='text'], .header input[type='search'], .footer input[type='text'], .footer input[type='search'] {
  border-radius: 0;
}
.header input, .header select, .footer input, .footer select {
  padding: 1px;
  font-size: 16px;
}
.header fieldset, .footer fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

.l-header {
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
}
.l-header * {
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, sans-serif;
}
.l-header fieldset {
  margin: 0;
  padding: 0;
  border: 0;
  text-align: left;
}

/* Transition Off
----------------------------------------------- */
.no-trans * {
  transition: none !important;
}

/* ----------------------------------------------------------------
    Centering Content
----------------------------------------------------------------- */
.header-inner, .footer-inner {
  margin: 0 auto;
  width: 960px;
}

/* ----------------------------------------------------------------
    Clearfix
----------------------------------------------------------------- */
.header-group-02::after, .header-inner::after, .header-multifn::after, .header-link-list::after, .header-btn-list::after, .global-inner::after, .footer-grid::after, .footer-grid-02::after, .footer-link-list._grid::after, .header .grid::after, .footer .grid::after, .header .media-lyt::after, .footer .media-lyt::after {
  display: block;
  clear: both;
  content: '';
}

/* ----------------------------------------------------------------
    Pseudo element (Block)
----------------------------------------------------------------- */
.header-form-txt::before, .header-switcher::before, .header-switcher::after, .global-inner > li > a::after, .global-balloon > span::after, .global-link a::before, .global-btn-close button::before, .global-btn-close button::after, .footer-nav-top a::before, .footer-group::before, .footer-link-list a::before, .footer-link-list-02 a::before, .header [class*='btn-']._set-base._icon::before, .footer [class*='btn-']._set-base._icon::before, .btn-close.fn-modal-close button::before, .btn-close.fn-modal-close button::after {
  display: block;
  content: '';
}

/* ----------------------------------------------------------------
    Pseudo element (Inline Block)
----------------------------------------------------------------- */
.header-link-list a::before, .global-inner .-service::before {
  display: inline-block;
  content: '';
}

/* ----------------------------------------------------------------
    Loading Spritesheet
----------------------------------------------------------------- */
.header-form-txt::before, .header-link-list .-doc::before, .header-link-list .-store::before, .global-inner .-service::before, .header .btn-login._icon::before, .footer .btn-login._icon::before, .header .btn-open._icon::before, .footer .btn-open._icon::before, .header .btn-request._icon._doc::before, .footer .btn-request._icon._doc::before, .header .btn-other._icon._doc::before, .footer .btn-other._icon._doc::before, .header .btn-other._icon._store::before, .footer .btn-other._icon._store::before {
  background-image: url(../images/icon/sprite.png);
}

/* ----------------------------------------------------------------
    Header
----------------------------------------------------------------- */
/* .header
----------------------------------------------- */
.header {
  position: relative;
  /* ドロップダウンのエリアと同じ色にする必要有 */
  z-index: 300;
  margin: 0 0 18px;
  background: rgba(229, 229, 229, .25);
  font-size: 14px;
}
.header a {
  text-decoration: none;
}
.header._houjin {
  border-bottom: 1px solid #d3d3d3;
}
.is-dropdown-expand .header {
  margin-bottom: 0;
}
.is-dropdown-collapse .header {
  background: transparent;
}

/* .header-frame
----------------------------------------------- */
.header-frame {
  display: table;
  padding: 0 0 18px;
  width: 100%;
  background: #fff;
  table-layout: fixed;
}

/* .header-group
----------------------------------------------- */
.header-group {
  display: table-footer-group;
  /* 位置の入替え */
  width: 100%;
}

/* .header-group-02
----------------------------------------------- */
.header-group-02 {
  display: table-header-group;
  /* 位置の入替え */
  width: 100%;
  background: #680717;
  color: #fff;
}

/* .header-inner
----------------------------------------------- */
.header-group > .header-inner {
  padding: 15px 0 0;
}

/* .header-logo
----------------------------------------------- */
.header-logo {
  display: inline-block;
  float: left;
  padding: 7px 0 0;
}
.header-logo a {
  display: block;
}
.header-logo img {
  display: inline-block;
  vertical-align: middle;
  line-height: 1;
}

/* .header-multifn
----------------------------------------------- */
.header-multifn {
  float: right;
}
.header-multifn._login {
  display: table;
}

/* .header-search
----------------------------------------------- */
.header-search {
  float: left;
  padding-top: 2px;
}

/* .header-form-radio
----------------------------------------------- */
.header-form-radio {
  position: relative;
  top: 2px;
  margin: 0 3px 0 10px;
  font-size: 13px;
}
.header-form-radio:first-child {
  margin-left: 0;
}
.header-form-radio + label {
  font-size: 13px;
}

/* .header-form-txt
----------------------------------------------- */
.header-form-txt {
  position: relative;
  margin: 4px 0 0;
}
.header-form-txt::before {
  position: absolute;
  top: 6px;
  left: 9px;
  width: 18px;
  height: 17px;
  background-position: -69px -44px;
  background-size: 185px auto;
}
.header-form-txt input {
  box-sizing: border-box;
  padding: 2px 0 0 35px;
  width: 188px;
  height: 30px;
  border: 1px solid #c9c8c8;
  border-right-color: transparent;
  border-radius: 3px 0 0 3px;
  vertical-align: top;
}
.header-form-txt button {
  box-sizing: border-box;
  min-width: 74px;
  min-height: 30px;
  border: 0;
  border-radius: 0 3px 3px 0;
  background: #c1c1c1;
  vertical-align: top;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.header-form-txt button:hover, .header-form-txt button:active, .header-form-txt button:focus {
  background: #e5e5e5;
}

/* .header-tel
----------------------------------------------- */
.header-tel {
  display: table-cell;
  vertical-align: middle;
}
.header-tel > :last-child {
  margin-bottom: 0;
}
.header-tel dt {
  margin: 0 0 2px;
  font-size: 12px;
}
.header-tel dd {
  font-size: 24px;
}
.header-tel dd img {
  vertical-align: top;
}

/* .header-primary
----------------------------------------------- */
.header-primary {
  float: left;
  margin: 0 0 0 30px;
}
.header-multifn._login .header-primary {
  display: table-cell;
  float: none;
  margin: 0;
  padding: 0 0 0 37px;
  vertical-align: middle;
}

/* .header-link-list
----------------------------------------------- */
.header-link-list {
  margin: 0 0 7px -22px;
  font-size: 13px;
}
.header-link-list li {
  float: left;
  margin: 0 0 0 22px;
}
.header-link-list a::before {
  position: relative;
  top: 1px;
  margin: 0 4px 0 0;
}
.header-link-list a:hover, .header-link-list a:active, .header-link-list a:focus {
  text-decoration: underline;
}
.header-link-list .-doc::before {
  width: 13px;
  height: 15px;
  background-position: -15px -164px;
  background-size: 185px auto;
}
.header-link-list .-store::before {
  width: 17px;
  height: 14px;
  background-position: -20px -147px;
  background-size: 185px auto;
}

/* .header-btn-list
----------------------------------------------- */
.header-btn-list {
  margin: 0 0 0 -5px;
}
.header-btn-list li {
  float: left;
  margin: 0 0 0 5px;
  min-width: 130px;
}

/* .header-link-list-02
----------------------------------------------- */
.header-link-list-02 {
  display: table;
  float: left;
  margin: 0;
  font-size: 12px;
  line-height: 1;
}
.header-link-list-02 li {
  display: table-cell;
  vertical-align: middle;
}
.header-link-list-02 a {
  display: block;
  padding: 7px 10px;
  color: inherit;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.header-link-list-02 a:hover, .header-link-list-02 a:active, .header-link-list-02 a:focus {
  background: #260006;
  text-decoration: none;
}
.header-link-list-02 b {
  font-weight: normal;
}
.header-link-list-02 b a {
  background: #260006;
}
.header-link-list-02._right {
  float: right;
}

/* .header-switcher
----------------------------------------------- */
.header-switcher {
  position: relative;
  display: table;
  margin: 0 0 0 10px;
  padding: 0 0 0 20px;
  line-height: 1;
}
.header-switcher::before, .header-switcher::after {
  position: absolute;
  top: 50%;
  width: 1px;
  height: 17px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.header-switcher::before {
  left: 0;
  background: #490510;
}
.header-switcher::after {
  left: 1px;
  background: #7f2c3a;
}
.header-switcher dt, .header-switcher dd {
  display: table-cell;
  vertical-align: middle;
}
.header-switcher dt {
  padding: 0 8px 0 0;
}
.header-switcher button {
  display: block;
  padding: 7px 5px;
  border: 0;
  background: none;
  color: inherit;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.header-switcher button:hover, .header-switcher button:active, .header-switcher button:focus {
  background: #260006;
}
.header-switcher .is-selected {
  background: #260006;
}

/* ----------------------------------------------------------------
    Global Navigation
----------------------------------------------------------------- */
/* .global-nav
----------------------------------------------- */
.global-nav {
  position: relative;
  border-top: 1px solid #e8e8e8;
  border-bottom: 1px solid #d3d3d3;
  background-color: rgba(229, 229, 229, .25);
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiA/Pgo8c3ZnIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjEwMCUiIGhlaWdodD0iMTAwJSIgdmlld0JveD0iMCAwIDEwMCAxMDAiIHByZXNlcnZlQXNwZWN0UmF0aW89Im5vbmUiPjxsaW5lYXJHcmFkaWVudCBpZD0iaGF0MCIgZ3JhZGllbnRVbml0cz0ib2JqZWN0Qm91bmRpbmdCb3giIHgxPSI1MCUiIHkxPSIxMDAlIiB4Mj0iNTAlIiB5Mj0iLTEuNDIxMDg1NDcxNTIwMmUtMTQlIj4KPHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YzZjNmMyIgc3RvcC1vcGFjaXR5PSIxIi8+CjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2ZmZiIgc3RvcC1vcGFjaXR5PSIxIi8+CiAgIDwvbGluZWFyR3JhZGllbnQ+Cgo8cmVjdCB4PSIwIiB5PSIwIiB3aWR0aD0iMTAwIiBoZWlnaHQ9IjEwMCIgZmlsbD0idXJsKCNoYXQwKSIgLz4KPC9zdmc+);
  background-image: linear-gradient(to top, #f3f3f3 0%, #fff 100%);
}

/* .global-inner
----------------------------------------------- */
.global-inner {
  margin: 0 auto;
  width: 1000px;
}
.global-inner > li {
  float: left;
}
.global-inner > li > a {
  position: relative;
  display: inline-block;
  padding: 13px 27px;
  color: #333;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.global-inner > li > a::after {
  position: absolute;
  bottom: -1px;
  left: 50%;
  z-index: 500;
  width: 0;
  height: 0;
  border-right: 13.5px solid transparent;
  border-bottom: 14px solid #5a5959;
  border-left: 13.5px solid transparent;
  opacity: 0;
  transition: all .3s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.global-inner > li > a:hover, .global-inner > li > a:active, .global-inner > li > a:focus {
  background: #e5e5e5;
  text-decoration: none;
}
.global-inner > .is-current > a, .global-inner > .is-expand > a {
  background: #e5e5e5;
}
.global-inner > .is-current > a b, .global-inner > .is-expand > a b {
  font-weight: normal;
}
.global-inner > .is-show > a::after {
  opacity: 1;
}
.global-inner .-service {
  padding-right: 31px;
  padding-left: 32px;
  /* ダイワの特長・サービス */
}
.global-inner .-service::before {
  position: relative;
  top: -1px;
  margin: 0 10px 0 0;
  width: 13px;
  height: 18px;
  background-position: 0 -164px;
  background-size: 185px auto;
  vertical-align: middle;
}

/* .global-balloon
----------------------------------------------- */
.global-balloon {
  position: relative;
  z-index: 1;
}
.global-balloon > span {
  position: absolute;
  top: -24px;
  left: 50%;
  display: inline-block;
  padding: 5px 0px 4px;
  min-width: 11em;
  border-radius: 4px;
  background: #c22112;
  color: #fff;
  text-align: center;
  font-size: 0.7rem;
  line-height: 1;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.global-balloon > span::after {
  position: absolute;
  bottom: -5px;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 5px solid #c22112;
  border-right: 4px solid transparent;
  border-left: 4px solid transparent;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.global-balloon._size-m > span {
  width: 8em;
}
.global-balloon._size-l > span {
  width: 12em;
}

/* .global-content
----------------------------------------------- */
.global-content {
  position: absolute;
  left: 0;
  z-index: 100;
  display: none;
  width: 100%;
  border-top: 1px solid #d3d3d3;
}
.global-content a {
  color: #fff;
}
.global-content a:hover, .global-content a:active, .global-content a:focus {
  text-decoration: underline;
}

/* .global-body
----------------------------------------------- */
.global-body {
  position: relative;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 20px;
  max-width: 1000px;
  background: #5a5959;
}
.global-body > :last-child {
  margin-bottom: 0;
}

/* .global-link
----------------------------------------------- */
.global-link {
  box-sizing: border-box;
  margin: 0 0 10px;
  max-width: 895px;
  font-weight: bold;
  font-size: 16px;
}
.global-link a, .global-link span {
  position: relative;
  display: block;
  padding: 8px 20px 7px 9px;
  border-bottom: 1px dashed #9c9b9b;
  color: #fff;
}
.global-link a {
  padding-left: 23px;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.global-link a::before {
  position: absolute;
  top: 50%;
  left: 7px;
  margin: -4px 0 0;
  width: 6px;
  height: 6px;
  border: 1px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.global-link a:hover, .global-link a:active, .global-link a:focus {
  background: #fff;
  color: #333;
  text-decoration: none;
}
.global-link a:hover::before, .global-link a:active::before, .global-link a:focus::before {
  border-top-color: #333;
  border-right-color: #333;
}
.global-link._lyt-hdg {
  max-width: none;
  background: none;
}

/* .global-link-02
----------------------------------------------- */
.global-link-02 a {
  display: inline-block;
  box-sizing: border-box;
  padding: 4px 8px;
  width: 100%;
  border-radius: 5px;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.global-link-02 a:hover, .global-link-02 a:active, .global-link-02 a:focus {
  background: #fff;
  color: #333;
  text-decoration: none;
}

/* .global-lyt-bnr
----------------------------------------------- */
.global-lyt-bnr {
  margin: -20px -20px 0;
}
.global-lyt-bnr ul {
  display: table;
  margin: 0;
  width: 100%;
  border-spacing: 20px;
  border-collapse: separate;
  table-layout: fixed;
  text-align: right;
}
.global-lyt-bnr li {
  display: table-cell;
  vertical-align: top;
}
.global-lyt-bnr a {
  display: inline-block;
}

/* .global-btn-close
----------------------------------------------- */
.global-btn-close {
  position: absolute;
  top: 10px;
  right: 10px;
  margin: 0;
  min-width: 60px;
}
.global-btn-close button {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 32px 0 3px;
  min-height: 50px;
  width: 100%;
  border: 0;
  border-radius: 5px;
  background: rgba(255, 255, 255, .6);
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.global-btn-close button::before, .global-btn-close button::after {
  position: absolute;
  left: 50%;
  background: #030000;
  -webkit-transform: translateX(-50%) rotate(45deg);
  -ms-transform: translateX(-50%) rotate(45deg);
  transform: translateX(-50%) rotate(45deg);
}
.global-btn-close button::before {
  top: 10px;
  width: 3px;
  height: 19px;
}
.global-btn-close button::after {
  top: 18px;
  width: 19px;
  height: 3px;
}
.global-btn-close button:hover, .global-btn-close button:active, .global-btn-close button:focus {
  background: rgba(255, 255, 255, .4);
}

/* ----------------------------------------------------------------
    Footer
----------------------------------------------------------------- */
/* .footer-nav-top
----------------------------------------------- */
.footer-nav-top {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 100;
  margin: 0;
  width: 100%;
  text-align: center;
}
.footer-nav-top a {
  position: absolute;
  right: 20px;
  bottom: 20px;
  display: table;
  box-sizing: border-box;
  padding: 53px 0 0;
  width: 80px;
  height: 80px;
  border-radius: 2px;
  background: rgba(0, 0, 0, .2);
  color: #fff;
  text-decoration: none;
}
.footer-nav-top a::before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 14px;
  border: 2px solid #fff;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: translate(-50%, -50%) rotate(315deg);
  -ms-transform: translate(-50%, -50%) rotate(315deg);
  transform: translate(-50%, -50%) rotate(315deg);
}
.footer-nav-top a:hover, .footer-nav-top a:active, .footer-nav-top a:focus {
  background: rgba(224, 224, 224, .2);
}

/* .footer-inner
----------------------------------------------- */
.footer-inner > :last-child {
  margin-bottom: 0;
}
.footer-inner a {
  text-decoration: none;
}
.footer-inner a:hover, .footer-inner a:active, .footer-inner a:focus {
  text-decoration: underline;
}

/* .footer-group
----------------------------------------------- */
.footer-group {
  position: relative;
  background: #f2efe9;
}
.footer-group::before {
  position: absolute;
  top: 0;
  left: 50%;
  width: 0;
  height: 0;
  border-top: 14px solid #fff;
  border-right: 13.5px solid transparent;
  border-left: 13.5px solid transparent;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
}
.footer-group > .footer-inner {
  padding: 30px 0 45px;
}
.footer-group._login {
  background: #dfd7c8;
}
.footer-group._login::before {
  display: none;
}

/* .footer-group-02
----------------------------------------------- */
.footer-group-02 {
  border-bottom: 1px solid #000;
  background: url(/content/dam/daiwasecurities/resource-ren/images/footer/bg.jpg) no-repeat 0 0/cover #27130d;
  color: #fff;
}
.footer-group-02 > .footer-inner {
  padding: 40px 0 46px;
}

/* .footer-group-03
----------------------------------------------- */
.footer-group-03 {
  border-top: 1px solid #4c2e25;
  border-bottom: 1px solid #000;
  background: #27130d;
  color: #fff;
}
.footer-group-03 > .footer-inner {
  box-sizing: border-box;
  padding: 25px 35px 27px;
}

/* .footer-group-04
----------------------------------------------- */
.footer-group-04 {
  border-bottom: 1px solid #dedede;
}
.footer-group-04 > .footer-inner {
  box-sizing: border-box;
  padding: 23px 20px 21px;
}

/* .footer-group-05
----------------------------------------------- */
.footer-group-05 > .footer-inner {
  padding: 36px 0 32px;
}

/* .footer-grid
----------------------------------------------- */
.footer-grid .grid-col, .footer-grid .grid-col-02, .footer-grid .grid-col-03 {
  float: left;
}
.footer-grid .grid-col > :last-child, .footer-grid .grid-col-02 > :last-child, .footer-grid .grid-col-03 > :last-child {
  margin-bottom: 0;
}
.footer-grid .grid-col {
  width: 285px;
}
.footer-grid .grid-col-02 {
  margin: 0 0 0 50px;
  width: 360px;
}
.footer-grid .grid-col-03 {
  margin: 0 0 0 50px;
  width: 215px;
}

/* .footer-grid-02
----------------------------------------------- */
.footer-grid-02 {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}
.footer-grid-02 .grid-col {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  float: left;
  margin: 0 0 0 12px;
  /* IE9 で flex がサポートされていないため必要 */
  width: 254px;
}
.footer-grid-02 .grid-col:first-child {
  margin-left: 0;
}
.footer-grid-02 .grid-col > :last-child {
  margin-bottom: 0;
}
.footer-grid-02 .grid-col._narrow {
  width: 161px;
}
.footer-grid-02 .grid-inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  width: 100%;

  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.footer-grid-02 .grid-inner > :last-child {
  margin-bottom: 0;
}
.footer-grid-02 .grid-inner-02 {
  width: 100%;
}
.footer-grid-02 .grid-inner-02 > :last-child {
  margin-bottom: 0;
}

/* .footer-panel
----------------------------------------------- */
.footer-panel {
  box-sizing: border-box;
  margin: 0 0 10px;
  padding: 16px 20px 15px;
  width: 100%;
  background: rgba(242, 239, 233, .8);
  color: #333;
}
.footer-panel > :last-child {
  margin-bottom: 0;
}
.footer-panel > .panel-hdg {
  margin: 0 0 14px;
  color: #30446f;
  font-weight: bold;
  font-size: 1.7rem;
}
.footer-panel > .panel-hdg a {
  color: inherit;
}
.footer-panel > .panel-hdg:last-child {
  margin-bottom: 0;
}

/* .footer-hdg
----------------------------------------------- */
.footer-hdg {
  margin: 0 0 20px;
  font-size: 1.7rem;
}

/* .footer-hdg-02
----------------------------------------------- */
.footer-hdg-02 {
  font-weight: normal;
  font-size: 2.4rem;
}

/* .footer-link-list
----------------------------------------------- */
.footer-link-list {
  margin: -10px 0 30px;
}
.footer-link-list li, .footer-link-list p {
  /* 既存サイトの仕様上 p 要素で動的に出力される部分がある */
  margin: 6px 0 0;
}
.footer-link-list a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 15px;
}
.footer-link-list a::before {
  position: absolute;
  top: 8px;
  left: -1px;
  width: 6px;
  height: 6px;
  border: 1px solid #a28f6c;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}
.footer-link-list._grid {
  margin-left: -22px;
}
.footer-link-list._grid li {
  float: left;
  margin-left: 22px;
  width: 292px;
}
.footer-group .footer-link-list a {
  color: inherit;
}

/* .footer-link-list-02
----------------------------------------------- */
.footer-link-list-02 li {
  margin: 0 0 6px;
}
.footer-link-list-02 li:last-child {
  margin-bottom: 0;
}
.footer-link-list-02 a {
  position: relative;
  display: inline-block;
  padding: 0 0 0 15px;
  color: #333;
}
.footer-link-list-02 a::before {
  position: absolute;
  top: 8px;
  left: -1px;
  width: 6px;
  height: 6px;
  border: 1px solid #152666;
  border-bottom: transparent;
  border-left: transparent;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
}

/* .footer-link-list-03
----------------------------------------------- */
.footer-link-list-03 {
  margin: -3px 0 15px;
  text-align: center;
  letter-spacing: -.4em;
  /* 横並び時の余白を詰める */
}
.footer-link-list-03 li {
  display: inline-block;
  margin: 7px 0 0 25px;
  /* 元に戻す */
  color: #e3dbcd;
  letter-spacing: normal;
}
.footer-link-list-03 li:first-child {
  margin-left: 0;
}
.footer-link-list-03 a {
  color: inherit;
}

/* .footer-btn-list
----------------------------------------------- */
.footer-btn-list li {
  margin: 0 0 10px;
}
.footer-btn-list li:last-child {
  margin-bottom: 0;
}

/* .footer-list-asso
----------------------------------------------- */
.footer-list-asso {
  margin: 0 0 36px;
  text-align: center;
  letter-spacing: -.4em;
  /* 横並び時の余白を詰める */
}
.footer-list-asso dt, .footer-list-asso dd {
  display: inline-block;
  letter-spacing: normal;
  /* 元に戻す */
}
.footer-list-asso dd {
  margin: 0 0 0 25px;
}
.footer-list-asso dt + dd {
  margin-left: 14px;
}

/* .footer-list-trade
----------------------------------------------- */
.footer-list-trade {
  margin: 0 0 16px;
  text-align: center;
}
.footer-list-trade dt, .footer-list-trade dd {
  display: inline-block;
}

/* .footer-list-contact
----------------------------------------------- */
.footer-list-contact {
  margin: 0 0 9px;
}
.footer-list-contact dt {
  margin: 0 0 11px;
}
.footer-list-contact .-tel {
  margin: 0 0 6px;
  font-size: 3.3rem;
  line-height: 1;
}
.footer-list-contact .-tel img {
  vertical-align: top;
}
.footer-list-contact .-time {
  font-size: 1.2rem;
}
.footer-list-contact .-time span {
  padding: 0 0 0 20px;
}

/* .footer-list-note
----------------------------------------------- */
.footer-list-note {
  margin: 0 0 15px;
  color: #680717;
  font-size: 1.2rem;
}

/* .footer-copyright
----------------------------------------------- */
.footer-copyright {
  text-align: center;
}

/* .footer-contact
----------------------------------------------- */
.footer-contact {
  display: table;
  width: 100%;
}
.footer-contact > [class*='footer-col'] {
  display: table-cell;
  vertical-align: middle;
}
.footer-contact > [class*='footer-col'] > :last-child {
  margin-bottom: 0;
}
.footer-contact > .footer-col {
  width: 150px;
}
.footer-contact > .footer-col-02 {
  padding: 0 15px;
  border-right: 1px solid #c0b6a3;
}
.footer-contact > .footer-col-03 {
  box-sizing: border-box;
  padding: 0 0 0 30px;
  width: 340px;
  border-left: 1px solid #f3eee5;
}

/* ----------------------------------------------------------------
    Layout Adjust
----------------------------------------------------------------- */
/* .header-logo
----------------------------------------------- */
.header .header-logo {
  padding: 8px 0 0;
}

/* .header-form-radio
----------------------------------------------- */
.header .header-form-radio {
  margin: 0 3px 0 10px;
  font-size: 13px;
}
.header .header-form-radio:first-child {
  margin-left: 0;
}

/* .global-nav
----------------------------------------------- */
.header .global-nav {
  text-align: left;
}

/* .global-link
----------------------------------------------- */
.header .global-link._lyt-hdg {
  margin: 0 0 10px;
}

/* .global-balloon
----------------------------------------------- */
.header .global-balloon > span,
.l-header .comment-new-infomation p {
  font-size: 11px !important;
}

/* .btn-open
----------------------------------------------- */
.header .btn-open, .footer .btn-open {
  background: #c6911f;
  color: #fff;
}

/* .btn-login
----------------------------------------------- */
.header .btn-login, .footer .btn-login {
  background: #c22112;
  color: #fff;
}

/* .header-link-list-02
----------------------------------------------- */
.header .header-link-list-02 * {
  line-height: 1;
}
.header .header-link-list-02 .icon-blank {
  top: -2px;
  margin: 0 2px;
}

/* .footer
----------------------------------------------- */
.footer {
  text-align: left;
  font-size: 14px;
}

/* .footer-hdg
----------------------------------------------- */
.footer .footer-hdg {
  margin: 0 0 20px;
  background: none;
  font-weight: bold;
  font-size: 17px;
}

/* [class*='btn-']._set-base
----------------------------------------------- */
.footer [class*='btn-']._set-base {
  font-size: 16px;
}

/* .btn-other
----------------------------------------------- */
.footer .btn-other {
  background: #fff;
  color: #c6911f;
}

/* .footer-panel
----------------------------------------------- */
.footer-panel > .panel-hdg {
  background: none;
  font-size: 17px;
}

/* .footer-list-trade
----------------------------------------------- */
.footer-list-trade dd {
  margin-left: 0;
}

/* 既存ページのスタイル・バッティングしているスタイルを上書き */
#content {
  margin: 0 auto 30px;
}
.is-font-l #content {
  font-size: 128.571%;
  /* 14px -> 18px 相当 */
}

#nisa .header {
  position: static;
  min-width: 0;
  background: inherit;
  color: inherit;
  font-size: inherit;
  line-height: inherit;
}
#nisa .listStyle.typeStep .header {
  background: none;
}

/* ----------------------------------------------------------------
    Links
----------------------------------------------------------------- */
/* .link-img
----------------------------------------------- */
.header .link-img {
  position: relative;
  display: block;
  /* [BUGFIX] IE9 で画像が縮小表示されない問題を解消 */
}
.header .link-img img {
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
.header .link-img:hover img, .header .link-img:active img, .header .link-img:focus img {
  opacity: .7;
}

/* ----------------------------------------------------------------
    Icons
----------------------------------------------------------------- */
/* .icon-blank
----------------------------------------------- */
.header .icon-blank, .footer .icon-blank {
  position: relative;
  top: -5px;
  display: inline-block;
  margin: 0 4px 0 0;
}
.header-link-list-02 .header .icon-blank, .header-link-list-02 .footer .icon-blank {
  top: -2px;
  margin: 0 2px;
}

/* .icon-label
----------------------------------------------- */
.header .icon-label {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 3px 8px 1px;
  min-width: 45px;
  background: #e24223;
  color: #fff;
  text-align: center;
  font-size: 1.2rem;
  line-height: 1;
}
.header .icon-label._thick {
  padding: 5px;
  min-width: 85px;
  font-weight: bold;
  font-size: 1.4rem;
}
.header .icon-label._thick > .-num {
  display: inline-block;
  margin: -3px 0 -2px;
  font-size: 2rem;
}
.header .icon-label._primary {
  background: #bc1010;
}
.header .icon-label._consult {
  background: #ee883f;
}
.header .icon-label._direct {
  background: #5989c8;
}
.header .icon-label._other {
  background: #f26933;
}
.header .icon-label._other-02 {
  background: #f2b71a;
}
.header .icon-label._other-03 {
  background: #b7b7b7;
}
.header .link-img .icon-label {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
}
.header .link-img .icon-label._thick {
  min-width: 75px;
}
.header .global-content .link-img .icon-label {
  /* ヘッダーに含まれる場合文字サイズ固定 */
  font-size: 12px;
}
.header .global-content .link-img .icon-label._thick {
  /* ヘッダーに含まれる場合文字サイズ固定 */
  font-size: 14px;
}

/* ----------------------------------------------------------------
    Buttons
----------------------------------------------------------------- */
/* ボタンベーススタイル
----------------------------------------------- */
.header [class*='btn-']._set-base, .footer [class*='btn-']._set-base {
  position: relative;
  display: inline-block;
  box-sizing: border-box;
  padding: 22px 14px 20px;
  width: 100%;
  border-radius: 3px;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-size: 16px;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
}
.header [class*='btn-']._set-base._icon, .footer [class*='btn-']._set-base._icon {
  padding-left: 36px;
}
.header [class*='btn-']._set-base._icon::before, .footer [class*='btn-']._set-base._icon::before {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
.header [class*='btn-']._set-base:hover, .header [class*='btn-']._set-base:active, .header [class*='btn-']._set-base:focus, .footer [class*='btn-']._set-base:hover, .footer [class*='btn-']._set-base:active, .footer [class*='btn-']._set-base:focus {
  text-decoration: none;
}
.header .header-btn-list [class*='btn-']._set-base, .footer .header-btn-list [class*='btn-']._set-base {
  padding: 4px 8px;
  font-weight: normal;
  font-size: 14px;
}
.header .footer-group._login [class*='btn-']._set-base, .footer .footer-group._login [class*='btn-']._set-base {
  padding-top: 11px;
  padding-bottom: 12px;
  font-weight: normal;
}

/* .btn-login
----------------------------------------------- */
.header .btn-login, .footer .btn-login {
  border: 0;
  background: #c22112;
  color: #fff;
}
.header .btn-login._icon::before, .footer .btn-login._icon::before {
  left: 19px;
  width: 22px;
  height: 24px;
  background-position: -153px -38px;
  background-size: 185px auto;
}
.header .btn-login:hover, .header .btn-login:active, .header .btn-login:focus, .footer .btn-login:hover, .footer .btn-login:active, .footer .btn-login:focus {
  background: #d46359;
}

/* .btn-open
----------------------------------------------- */
.header .btn-open, .footer .btn-open {
  border: 0;
  background: #c6911f;
  color: #fff;
}
.header .btn-open._icon::before, .footer .btn-open._icon::before {
  left: 18px;
  width: 22px;
  height: 23px;
  background-position: -153px -64px;
  background-size: 185px auto;
}
.header .btn-open:hover, .header .btn-open:active, .header .btn-open:focus, .footer .btn-open:hover, .footer .btn-open:active, .footer .btn-open:focus {
  background: #d7b262;
}
.footer-group._login .header .btn-open._icon::before, .footer-group._login .footer .btn-open._icon::before {
  left: 11px;
}

/* .btn-request
----------------------------------------------- */
.header .btn-request, .footer .btn-request {
  border: 0;
  background: #f8eed8;
  color: #ad7b0e;
}
.header .btn-request:hover, .header .btn-request:active, .header .btn-request:focus, .footer .btn-request:hover, .footer .btn-request:active, .footer .btn-request:focus {
  background: #fff7e5;
}
.header .btn-request._icon._doc::before, .footer .btn-request._icon._doc::before {
  left: 14px;
  width: 16px;
  height: 24px;
  background-position: -84px -69px;
  background-size: 185px auto;
}
.footer-group._login .header .btn-request, .footer-group._login .footer .btn-request {
  background: #fff;
}
.footer-group._login .header .btn-request:hover, .footer-group._login .header .btn-request:active, .footer-group._login .header .btn-request:focus, .footer-group._login .footer .btn-request:hover, .footer-group._login .footer .btn-request:active, .footer-group._login .footer .btn-request:focus {
  background: #fff7e5;
}

/* .btn-other
----------------------------------------------- */
.header .btn-other, .footer .btn-other {
  border: 2px solid #c6911f;
  background: #fff;
  color: #c6911f;
}
.header .btn-other._icon._doc::before, .footer .btn-other._icon._doc::before {
  left: 18px;
  width: 16px;
  height: 24px;
  background-position: -84px -69px;
  background-size: 185px auto;
}
.header .btn-other._icon._store::before, .footer .btn-other._icon._store::before {
  left: 18px;
  width: 21px;
  height: 21px;
  background-position: -153px -112px;
  background-size: 185px auto;
}
.header .btn-other:hover, .header .btn-other:active, .header .btn-other:focus, .footer .btn-other:hover, .footer .btn-other:active, .footer .btn-other:focus {
  border-color: #d7b262;
}

/* .btn-close.fn-modal-close
----------------------------------------------- */
.btn-close.fn-modal-close {
  margin: 60px 0 15px;
  text-align: center;
}
.btn-close.fn-modal-close button {
  position: relative;
  display: inline-block;
  padding: 0 0 0 22px;
  border: 0;
  background: none;
}
.btn-close.fn-modal-close button::before, .btn-close.fn-modal-close button::after {
  position: absolute;
  top: 50%;
  background: #1d395b;
  -webkit-transform: translateY(-50%) rotate(45deg);
  -ms-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
.btn-close.fn-modal-close button::before {
  left: 6px;
  width: 2px;
  height: 14px;
}
.btn-close.fn-modal-close button::after {
  left: 0;
  width: 14px;
  height: 2px;
}
.btn-close.fn-modal-close button:hover, .btn-close.fn-modal-close button:active, .btn-close.fn-modal-close button:focus {
  text-decoration: underline;
}

/* ----------------------------------------------------------------
    Grid
----------------------------------------------------------------- */
/* .gridCol[data-col="2"]
----------------------------------------------- */
.header .grid[data-col='2'], .footer .grid[data-col='2'] {
  margin-left: -2.08333%;
}
.header .grid[data-col='2'] > .grid-col, .footer .grid[data-col='2'] > .grid-col {
  margin-left: 2.04082%;
  width: 47.95918%;
}
.header .grid[data-col='2'] > .grid-col:nth-child(2n+1), .footer .grid[data-col='2'] > .grid-col:nth-child(2n+1) {
  clear: both;
}
.content-row._col2 .header .grid[data-col='2'], .content-row._col2 .footer .grid[data-col='2'] {
  /* サイドナビありのパターン */
  margin-left: -2.91545%;
}
.content-row._col2 .header .grid[data-col='2'] > .grid-col, .content-row._col2 .footer .grid[data-col='2'] > .grid-col {
  margin-left: 2.83286%;
  width: 47.16714%;
}
.content-row._col2 .panel-contact .header .grid[data-col='2'], .content-row._col2 .panel-contact .footer .grid[data-col='2'] {
  /* お問合わせパネル内の2カラム */
  margin-left: -8.97833%;
}
.content-row._col2 .panel-contact .header .grid[data-col='2'] > .grid-col, .content-row._col2 .panel-contact .footer .grid[data-col='2'] > .grid-col {
  margin-left: 8.23864%;
  width: 41.76136%;
}
.global-nav .grid-col .header .grid[data-col='2'], .global-nav .grid-col .footer .grid[data-col='2'] {
  /* グロナビ内の2カラム内の2カラム */
  margin-left: -4.25532%;
}
.global-nav .grid-col .header .grid[data-col='2'] > .grid-col, .global-nav .grid-col .footer .grid[data-col='2'] > .grid-col {
  margin-left: 4.08163%;
  width: 45.91837%;
}
.global-lyt-horizontal .header .grid[data-col='2'], .global-lyt-horizontal .footer .grid[data-col='2'] {
  margin-top: -7px;
  /* グロナビ内の並列レイアウト内の2カラム */
  margin-left: -4.36681%;
}
.global-lyt-horizontal .header .grid[data-col='2'] > .grid-col, .global-lyt-horizontal .footer .grid[data-col='2'] > .grid-col {
  margin-left: 4.1841%;
  width: 45.8159%;
}
.global-lyt-horizontal .header .grid[data-col='2'] > .grid-col, .global-lyt-horizontal .footer .grid[data-col='2'] > .grid-col {
  margin-top: 7px;
}

/* .gridCol[data-col="3"]
----------------------------------------------- */
.header .grid[data-col='3'], .footer .grid[data-col='3'] {
  margin-left: -2.5%;
}
.header .grid[data-col='3'] > .grid-col, .footer .grid[data-col='3'] > .grid-col {
  margin-left: 2.43902%;
  width: 30.89431%;
}
.header .grid[data-col='3'] > .grid-col:nth-child(3n+1), .footer .grid[data-col='3'] > .grid-col:nth-child(3n+1) {
  clear: both;
}
.content-row._col2 .header .grid[data-col='3'], .content-row._col2 .footer .grid[data-col='3'] {
  /* サイドナビありのパターン */
  margin-left: -2.91545%;
}
.content-row._col2 .header .grid[data-col='3'] > .grid-col, .content-row._col2 .footer .grid[data-col='3'] > .grid-col {
  margin-left: 2.83286%;
  width: 30.45326%;
}

/* .gridCol[data-col="4"]
----------------------------------------------- */
.header .grid[data-col='4'], .footer .grid[data-col='4'] {
  margin-left: -2.08333%;
}
.header .grid[data-col='4'] > .grid-col, .footer .grid[data-col='4'] > .grid-col {
  margin-left: 2.04082%;
  width: 22.95918%;
}
.header .grid[data-col='4'] > .grid-col:nth-child(4n+1), .footer .grid[data-col='4'] > .grid-col:nth-child(4n+1) {
  clear: both;
}
.content-row._col2 .header .grid[data-col='4'], .content-row._col2 .footer .grid[data-col='4'] {
  /* サイドナビありのパターン */
  margin-left: -2.91545%;
}
.content-row._col2 .header .grid[data-col='4'] > .grid-col, .content-row._col2 .footer .grid[data-col='4'] > .grid-col {
  margin-left: 2.83286%;
  width: 22.09632%;
}
.panel-contact .header .grid[data-col='4'], .panel-contact .footer .grid[data-col='4'] {
  /* お問合わせ系のモジュール内で使用されていた場合 */
  margin-top: -10px;
}
.panel-contact .header .grid[data-col='4'] > .grid-col, .panel-contact .footer .grid[data-col='4'] > .grid-col {
  margin-top: 10px;
}

/* .gridCol[data-col="5"]
----------------------------------------------- */
.header .grid[data-col='5'], .footer .grid[data-col='5'] {
  margin-left: -2.08333%;
}
.header .grid[data-col='5'] > .grid-col, .footer .grid[data-col='5'] > .grid-col {
  margin-left: 2.04082%;
  width: 17.95918%;
}
.header .grid[data-col='5'] > .grid-col:nth-child(5n+1), .footer .grid[data-col='5'] > .grid-col:nth-child(5n+1) {
  clear: both;
}

/* .gridCol[data-col="6"]
----------------------------------------------- */
.header .grid[data-col='6'], .footer .grid[data-col='6'] {
  margin-left: -1.875%;
}
.header .grid[data-col='6'] > .grid-col, .footer .grid[data-col='6'] > .grid-col {
  margin-left: 1.84049%;
  width: 14.82618%;
}
.header .grid[data-col='6'] > .grid-col:nth-child(6n+1), .footer .grid[data-col='6'] > .grid-col:nth-child(6n+1) {
  clear: both;
}

/* .grid
----------------------------------------------- */
.header .grid, .footer .grid {
  margin-top: -15px;
  margin-bottom: 15px;
}
.header .grid > .grid-col, .footer .grid > .grid-col {
  float: left;
  margin-top: 15px;
}
.header .grid > .grid-col > :last-child, .footer .grid > .grid-col > :last-child {
  margin-bottom: 0;
}
.header .grid.link-list, .footer .grid.link-list {
  margin-top: -17px;
}
.header .grid.link-list > .grid-col, .footer .grid.link-list > .grid-col {
  margin-top: 17px;
  margin-bottom: 0;
}
.global-nav .header .grid, .global-nav .footer .grid {
  margin-top: -7px;
}
.global-nav .header .grid > .grid-col, .global-nav .footer .grid > .grid-col {
  margin-top: 7px;
}

/* ----------------------------------------------------------------
    Media
----------------------------------------------------------------- */
/* .media
----------------------------------------------- */
.header .media, .footer .media, .fn-modal-inner .media {
  margin: 0 0 15px;
  text-align: center;
}
.header .media > .media-item, .footer .media > .media-item, .fn-modal-inner .media > .media-item {
  display: inline-block;
  margin: 0;
}
.header .media > .media-item img, .footer .media > .media-item img, .fn-modal-inner .media > .media-item img {
  width: 100%;
}
.lyt-invert > .lyt-top > .header .media, .lyt-invert > .lyt-top > .footer .media, .lyt-invert > .lyt-top > .fn-modal-inner .media {
  margin-bottom: 10px;
}
.lyt-app .lyt-qr .header .media img, .lyt-app .lyt-qr .footer .media img, .lyt-app .lyt-qr .fn-modal-inner .media img {
  width: 81px;
}

/* .media-item
----------------------------------------------- */
.header .media-item._iframe img, .footer .media-item._iframe img {
  max-width: 100% !important;
}

/* .media-caption
----------------------------------------------- */
.header .media-caption, .footer .media-caption {
  display: block;
  margin: 7px 0 0;
  text-align: center;
  font-size: 1.4rem;
}

/* .media-lyt
----------------------------------------------- */
.header .media-lyt, .footer .media-lyt {
  overflow: hidden;
  margin: 0 0 15px;
}
.header .media-lyt > .media-col > :first-child, .header .media-lyt > .media-col > :first-child > :first-child, .footer .media-lyt > .media-col > :first-child, .footer .media-lyt > .media-col > :first-child > :first-child {
  margin-top: 0;
}
.header .media-lyt > .media-col > .grid:first-child[data-col='2'] > :nth-child(-n+2), .footer .media-lyt > .media-col > .grid:first-child[data-col='2'] > :nth-child(-n+2) {
  /* 並列になるときは1列目の要素のマージンを全てリセット */
  margin-top: 0;
}
.header .media-lyt > .media-col > :last-child, .footer .media-lyt > .media-col > :last-child {
  margin-bottom: 0;
}
.header .media-lyt > .media-item, .footer .media-lyt > .media-item {
  max-width: 333px;
}
.header .media-lyt._left > .media-item, .footer .media-lyt._left > .media-item {
  float: left;
  margin: 0 20px 0 0;
}
.header .media-lyt._right > .media-item, .footer .media-lyt._right > .media-item {
  float: right;
  margin: 0 0 0 20px;
}
.header .media-lyt._wrap > .media-col, .footer .media-lyt._wrap > .media-col {
  overflow: hidden;
}

/* ----------------------------------------------------------------
    Modal
----------------------------------------------------------------- */
/* .modal
----------------------------------------------- */
.modal > .modal-inner {
  padding: 20px;
  background: #fff;
}
.modal > .modal-inner > :last-child {
  margin-bottom: 0;
}

/* .modal-overlay
----------------------------------------------- */
.modal-overlay {
  background: #000;
}

/* ----------------------------------------------------------------
    Function Header Fixed (JavaScript)
----------------------------------------------------------------- */
/* .fn-header-fixed
----------------------------------------------- */
.fn-header-fixed {
  position: relative;
  transition: -webkit-transform .2s ease;
  transition: transform .2s ease;
  transition: transform .2s ease, -webkit-transform .2s ease;
}
.fn-header-fixed.is-fixed {
  position: fixed;
  top: 0;
  z-index: 150;
}

/* ----------------------------------------------------------------
    Function Nav Top Show (JavaScript)
----------------------------------------------------------------- */
/* .fn-nav-top-show
----------------------------------------------- */
.fn-nav-top-show {
  opacity: 0;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: scale(.5);
  -ms-transform: scale(.5);
  transform: scale(.5);
}
.fn-nav-top-show.is-hidden {
  display: none;
}
.fn-nav-top-show.is-show {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-nav-top-show {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

/* ----------------------------------------------------------------
    Function Dropdown (JavaScript)
----------------------------------------------------------------- */
/* .fn-dropdown
----------------------------------------------- */
.is-dropdown-expand .fn-dropdown {
  position: fixed;
  top: 0;
  bottom: 0;
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;

  will-change: transform;
  /* スクロールバーが発生する確率の方が高いので、予め出現させておく */
}

/* .fn-dropdown-overlay
----------------------------------------------- */
.fn-dropdown-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 100;
  transition: all .3s cubic-bezier(.23, 1, .32, 1);

  will-change: transform;
}
.fn-dropdown-overlay.is-overlay-render {
  opacity: 0;
}
.fn-dropdown-overlay.is-overlay-show {
  opacity: 1;
}
.fn-dropdown-overlay.is-overlay-hide {
  transition-delay: .2s;
}

/* .fn-dropdown-content
----------------------------------------------- */
.fn-dropdown-content {
  display: none;
  overflow: hidden;
}
.is-expand .fn-dropdown-content {
  display: block;
}

/* .fn-dropdown-body
----------------------------------------------- */
.fn-dropdown-body {
  opacity: 0;
  transition: all .3s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(-10px);
  -ms-transform: translateY(-10px);
  transform: translateY(-10px);
}
.is-show .fn-dropdown-body {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
.is-hidden .fn-dropdown-body {
  transition-delay: .2s;
}

/* .is-dropdown-expand
----------------------------------------------- */
.is-dropdown-expand, .is-dropdown-expand body {
  overflow: hidden;
}

/* ----------------------------------------------------------------
    Function Tooltip (JavaScript)
----------------------------------------------------------------- */
/* .fn-tooltip
----------------------------------------------- */
.fn-tooltip {
  display: none;
  opacity: 0;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(10px);
  -ms-transform: translateY(10px);
  transform: translateY(10px);
}
.fn-tooltip[aria-hidden='false'] {
  position: absolute;
  z-index: 30;
  display: block;
}
.fn-tooltip.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-tooltip {
  display: block;
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* ----------------------------------------------------------------
    Function Toggle (JavaScript)
----------------------------------------------------------------- */
/* .fn-toggle
----------------------------------------------- */
.fn-toggle .fn-toggle-content {
  display: none;
}
.fn-toggle .fn-toggle-content[aria-hidden='false'] {
  display: block;
  overflow-y: hidden;
}
.fn-toggle .fn-toggle-content-inner {
  opacity: 0;
  transition: all .5s cubic-bezier(.23, 1, .32, 1) .2s;
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
}
.fn-toggle .fn-toggle-content.is-show .fn-toggle-content-inner {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
.fn-toggle.is-collapse .fn-toggle-content {
  transition: all .3s cubic-bezier(.23, 1, .32, 1);
}

/* .fn-toggle-rank
----------------------------------------------- */
.fn-toggle-rank .fn-toggle-list > * {
  opacity: 0;
  transition: all .5s cubic-bezier(.23, 1, .32, 1) .2s;
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
}
.fn-toggle-rank .fn-toggle-list > .is-none {
  display: none;
}
.fn-toggle-rank .fn-toggle-list > .is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-toggle-hook {
  display: none;
}
.no-js .fn-toggle-content {
  display: block;
}
.no-js .fn-toggle-content-inner, .no-js .fn-toggle-list > * {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* ----------------------------------------------------------------
    Function Modal (JavaScript)
----------------------------------------------------------------- */
/* .fn-modal-overlay
----------------------------------------------- */
.fn-modal-overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 400;
  transition: opacity .5s cubic-bezier(.23, 1, .32, 1);

  will-change: transform;
}
.fn-modal-overlay.is-overlay-render {
  opacity: 0;
}
.fn-modal-overlay.is-overlay-show {
  opacity: .6;
}
.fn-modal-overlay.is-overlay-hide {
  transition-delay: .2s;
}

/* .fn-modal-content
----------------------------------------------- */
.fn-modal-content {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 500;
  display: none;
  -webkit-overflow-scrolling: touch;
  opacity: 0;
  transition: all .5s cubic-bezier(.23, 1, .32, 1) .2s;

  will-change: transform;
}
.fn-modal-content.is-modal-render {
  display: block;
  overflow-x: hidden;
  overflow-y: auto;
}
.fn-modal-content.is-modal-show {
  opacity: 1;
}
.fn-modal-content.is-modal-hide {
  transition-delay: 0s;
}

/* .fn-modal-inner
----------------------------------------------- */
.fn-modal-inner {
  position: relative;
  box-sizing: border-box;
  max-width: 960px;
  transition: all .5s cubic-bezier(.23, 1, .32, 1) .2s;
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);

  will-change: transform;
}
.is-modal-open .fn-modal-inner {
  overflow-y: auto;
}
.is-modal-render .fn-modal-inner {
  margin: 95px auto;
}
.is-modal-show .fn-modal-inner {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}
.is-modal-hide .fn-modal-inner {
  transition-delay: 0s;
}

/* .is-modal-open
----------------------------------------------- */
.is-modal-open, .is-modal-open body {
  overflow: hidden;
}

/* ----------------------------------------------------------------
    Function Tab (JavaScript)
----------------------------------------------------------------- */
/* .fn-tab
----------------------------------------------- */
.fn-tab .fn-tab-item {
  opacity: 0;
  transition: all .5s cubic-bezier(.23, 1, .32, 1);
  -webkit-transform: translateY(-7px);
  -ms-transform: translateY(-7px);
  transform: translateY(-7px);
}
.fn-tab .fn-tab-item[aria-hidden='true'] {
  display: none;
}
.fn-tab .fn-tab-item[aria-hidden='false'] {
  display: block;
}
.fn-tab .fn-tab-item.is-show {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* .fn-tab-list
----------------------------------------------- */
.fn-tab-list.fn-toggle-list[aria-hidden='true'] {
  display: none;
}

/* JavaScript Off
----------------------------------------------- */
.no-js .fn-tab-item {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

/* ----------------------------------------------------------------
    Function Align Height (JavaScript)
----------------------------------------------------------------- */
/* .fn-align-height
----------------------------------------------- */
.fn-align-height {
  margin: 0 0 15px;
}
.fn-align-height > :last-child {
  margin-bottom: 0;
}

/* ----------------------------------------------------------------
    Dropdown
----------------------------------------------------------------- */
/* .dropdown-overlay
----------------------------------------------- */
.dropdown-overlay {
  background: rgba(255, 255, 255, .1);
}
