@charset "UTF-8";
/*============================
これはmodule.scss
============================*/
/*============================
これは_reset.scss
============================*/
/* =Reset
-----------------------------------------------------------------------------*/
*,
*:before,
*:after {
  box-sizing: border-box;
}

html {
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

html {
  font-size: 62.5%;
}

body {
  font-size: 1rem;
  line-height: 1.2;
}

html,
body {
  height: 100%;
}

html,
div,
span,
object,
iframe,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent;
}

body {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
}

a:active,
a:hover {
  outline: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
embed,
object,
iframe,
audio,
video,
canvas,
progress,
meter,
output,
textarea {
  display: block;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

/* To prevent some browsers from inserting quotes on q and p */
blockquote,
q {
  quotes: none;
}

blockquote p:before,
blockquote p:after,
q:before,
q:after {
  content: "";
  content: none;
}

/* Table reset */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption,
th,
td {
  text-align: left;
  vertical-align: top;
}

thead th,
thead td {
  font-weight: bold;
  vertical-align: bottom;
}

a {
  text-decoration: none;
}

/* Image inside */
a img,
th img,
td img {
  vertical-align: top;
}

button,
input,
select,
textarea {
  margin: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
  resize: vertical;
}

/* Normalize buttons in IE */
button {
  width: auto;
  overflow: visible;
}

/* Hand cursor on clickable controls */
input[type=reset],
input[type=submit],
input[type=file],
input[type=radio],
input[type=checkbox],
select,
button {
  cursor: pointer;
}

/* Trick with vertical align for radio and checkbox  */
input[type=radio],
input[type=checkbox] {
  font-size: 110%;
  position: relative;
  top: -1px;
  margin-right: 3px;
}

/* Normalize search fields */
input[type=search] {
  -webkit-appearance: textfield;
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button {
  -webkit-appearance: none;
}

/* Normalize horizontal line */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #ddd;
}

/* Responsive media */
img,
video,
audio,
embed,
object {
  max-width: 100%;
}

img,
video,
embed,
object {
  height: auto;
}

embed,
object {
  height: 100%;
}

img {
  vertical-align: middle;
  -ms-interpolation-mode: bicubic;
}

article, aside, details, figcaption, figure, footer, header, hgroup,
menu, nav, section, main {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

.clearfix:after {
  content: url(../images/clearfix.gif);
  display: block;
  clear: both;
  height: 0;
}

.clearfix {
  display: inline-block;
}

.clearfix {
  display: block;
}

.hidden {
  position: absolute;
  left: -9999px;
}

.visible-hidden {
  visibility: hidden;
}

/* Assets */
/*-----------------------------
padding
-----------------------------*/
.pTop00 {
  padding-top: 0px !important;
}

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

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

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

.pTop4em {
  padding-top: 4em !important;
}

.pTop5em {
  padding-top: 5em !important;
}

.pTop05 {
  padding-top: 5px !important;
}

.pTop10 {
  padding-top: 10px !important;
}

.pTop15 {
  padding-top: 15px !important;
}

.pTop20 {
  padding-top: 20px !important;
}

.pTop30 {
  padding-top: 30px !important;
}

.pTop40 {
  padding-top: 40px !important;
}

.pTop50 {
  padding-top: 50px !important;
}

.pTop60 {
  padding-top: 60px !important;
}

.pTop80 {
  padding-top: 80px !important;
}

.pTop200sp100 {
  padding-top: 200px !important;
}
@media (min-width: 1px) and (max-width: 35.4em) {
  .pTop200sp100 {
    padding-top: 100px !important;
  }
}

.pRight00 {
  padding-right: 0px !important;
}

.pRight05 {
  padding-right: 5px !important;
}

.pRight10 {
  padding-right: 10px !important;
}

.pRight12 {
  padding-right: 12px !important;
}

.pRight15 {
  padding-right: 15px !important;
}

.pRight20 {
  padding-right: 20px !important;
}

.pRight30 {
  padding-right: 30px !important;
}

.pleft00 {
  padding-left: 0px !important;
}

.pleft02 {
  padding-left: 2px !important;
}

.pleft05 {
  padding-left: 5px !important;
}

.pleft10 {
  padding-left: 10px !important;
}

.pleft20 {
  padding-left: 20px !important;
}

.pleft30 {
  padding-left: 30px !important;
}

.pleft40 {
  padding-left: 40px !important;
}

.pleft80 {
  padding-left: 80px !important;
}

.pBottom00 {
  padding-bottom: 0px !important;
}

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

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

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

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

.pBottom5em {
  padding-bottom: 5em !important;
}

.pBottom02 {
  padding-bottom: 2px !important;
}

.pBottom05 {
  padding-bottom: 5px !important;
}

.pBottom10 {
  padding-bottom: 10px !important;
}

.pBottom15 {
  padding-bottom: 15px !important;
}

.pBottom20 {
  padding-bottom: 20px !important;
}

.pBottom25 {
  padding-bottom: 25px !important;
}

.pBottom30 {
  padding-bottom: 30px !important;
}

.pBottom40 {
  padding-bottom: 40px !important;
}

.pBottom50 {
  padding-bottom: 50px !important;
}

.pBottom60 {
  padding-bottom: 60px !important;
}

.pBottom70 {
  padding-bottom: 70px !important;
}

.pBottom80 {
  padding-bottom: 80px !important;
}

.pBottom90 {
  padding-bottom: 90px !important;
}

.pBottom100 {
  padding-bottom: 100px !important;
}

.pBottom110 {
  padding-bottom: 110px !important;
}

.pBottom140 {
  padding-bottom: 140px !important;
}

/*-----------------------------
margin
-----------------------------*/
.mTop-20 {
  margin-top: -20px !important;
}

.mTop-10 {
  margin-top: -10px !important;
}

.mTop00 {
  margin-top: 0px !important;
}

.mTop05 {
  margin-top: 5px !important;
}

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

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

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

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

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

.mTop10 {
  margin-top: 10px !important;
}

.mTop20 {
  margin-top: 20px !important;
}

.mTop30 {
  margin-top: 30px !important;
}

.mTop40 {
  margin-top: 40px !important;
}

.mRight00 {
  margin-right: 0px !important;
}

.mRight05 {
  margin-right: 5px !important;
}

.mRight07 {
  margin-right: 7px !important;
}

.mRight10 {
  margin-right: 10px !important;
}

.mRight15 {
  margin-right: 15px !important;
}

.mRight20 {
  margin-right: 20px !important;
}

.mRight30 {
  margin-right: 30px !important;
}

.mleft02 {
  margin-left: 2px !important;
}

.mleft05 {
  margin-left: 5px !important;
}

.mleft10 {
  margin-left: 10px !important;
}

.mleft20 {
  margin-left: 20px !important;
}

.mleft30 {
  margin-left: 30px !important;
}

.mleft80 {
  margin-left: 80px !important;
}

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

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

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

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

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

.mBottom00 {
  margin-bottom: 0px !important;
}

.mBottom05 {
  margin-bottom: 5px !important;
}

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

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

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

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

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

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

.mBottom60 {
  margin-bottom: 60px !important;
}

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

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

.ws0mRight10 {
  margin-right: 10px !important;
}

.ws0pTop50 {
  padding-top: 50px !important;
}

.ws0pTop40 {
  padding-top: 40px !important;
}

.ws0pRight10 {
  padding-right: 10px !important;
}

.ws0pRight20 {
  padding-right: 20px !important;
}

.ws0pRight05 {
  padding-right: 5px !important;
}

.ws0pleft05 {
  padding-left: 5px !important;
}

.ws10pBottom00 {
  padding-Bottom: 0px !important;
}

.ws0pBottom20 {
  padding-Bottom: 20px !important;
}

.ws0pleft10 {
  padding-left: 10px !important;
}

@media (max-width: 35.5em) {
  .ws0pRight10 {
    padding-right: 0px !important;
  }
  .ws0pRight20 {
    padding-right: 0px !important;
  }
  .ws0pTop50 {
    padding-top: 0px !important;
  }
  .ws0pTop40 {
    padding-top: 0px !important;
  }
  .ws0pBottom00 {
    padding-bottom: 0px !important;
  }
  .ws0pRight05 {
    padding-right: 0px !important;
  }
  .ws0pleft05 {
    padding-left: 0px !important;
  }
  .ws0pleft10 {
    padding-left: 0px !important;
  }
  .ws10pBottom00 {
    padding-bottom: 10px !important;
  }
  .ws0mRight10 {
    margin-right: 0px !important;
  }
  .ws0pBottom20 {
    padding-bottom: 0px !important;
  }
}
.ws10mdpBottom00 {
  padding-bottom: 0px !important;
}

@media (max-width: 63em) {
  .ws10mdpBottom00 {
    padding-Bottom: 10px !important;
  }
}
input,
select {
  vertical-align: middle;
}

.clear-both {
  clear: both;
}

.test-line {
  border: 1px solid red;
}

/*============================
これは_typography.scss
============================*/
@font-face {
  font-family: "Source Han Sans JP";
  src: url("../fonts/SourceHanSansJP-Bold.otf") format("opentype");
  font-weight: 700;
  font-style: normal;
  font-display: swap;
}
body {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
  font-weight: 700;
}
body article#pagecont h2 {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont p {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont ul li {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont ol li {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont dl dt {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont dl dd h3 {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont dl dd p {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont dl dd p span {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}
body article#pagecont .pagemaincont dl dd span {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif !important;
  font-weight: 700;
}

body.ja div.infocnt_cont strong {
  font-weight: 700;
}
body.ja p strong {
  font-weight: 700;
}

body.ja h1,
body.ja h2,
body.ja h3,
body.ja h4,
body.ja h5,
body.ja h6,
body.ja dt,
body.ja .h1,
body.ja .h2,
body.ja .h3 {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
  font-weight: 700;
}
body.ja dd,
body.ja li,
body.ja p {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
  font-weight: 700;
}

body {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
  font-weight: 700;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

p {
  color: #000;
  letter-spacing: 0.05em;
}

.GothicB {
  font-family: "源ノ角ゴシック JP Bold", "源ノ角ゴシック Bold", "Source Han Sans JP Bold", "Source Han Sans Bold", "源ノ角ゴシック JP", "源ノ角ゴシック", "Source Han Sans JP", "Source Han Sans", "Noto Sans CJK JP", "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", sans-serif;
  font-weight: 700;
}

.Mincho {
  font-family: serif;
}

.buttons {
  letter-spacing: -0.1em;
}

h4.w-names_en {
  font-family: "Montserrat_Italic", sans-serif !important;
  font-style: italic !important;
}

/*============================
これは_base.scss
============================*/
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    margin-top: 0px;
  }
}
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
    margin-top: 0px;
  }
}
[指定したいタグ] {
  -webkit-background-size: 320px auto;
  -moz-background-size: 320px auto;
  -ms-background-size: 320px auto;
  -o-background-size: 320px auto;
  background-size: 320px auto;
  background-position: left top;
}

body {
  overflow-x: hidden;
  background-color: #fed600;
}

/*============================
.wrapper コンテナ
============================*/
.wrapper {
  position: relative;
  width: 100%;
  padding: 0;
  overflow: hidden;
}
@media only screen and (max-width: 768px) {
  .wrapper {
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
}

main {
  padding-top: 0px;
}
@media only screen and (max-width: 768px) {
  main {
    padding-top: 0px;
  }
}

.contwp_l {
  width: 100%;
}
@media only screen and (max-width: 768px) {
  .contwp_l {
    width: 98%;
  }
}
@media only screen and (max-width: 575px) {
  .contwp_l {
    width: 96%;
  }
}

.container-gr {
  width: 96%;
  max-width: 1280px;
  margin: 0 auto;
}

.contwph {
  width: 96%;
  margin: 0 auto;
  max-width: 1800px;
}

.contwp-gr {
  width: 96%;
  max-width: 1400px;
  margin: 0 auto;
}

.contwp {
  width: 90%;
  max-width: 1400px;
  margin: 0 auto;
}

@media (min-width: 981px) and (max-width: 1200px) {
  .container-gr,
  .contwp {
    margin: 0 auto;
  }
  .contwph {
    width: 96%;
    margin: 0 auto;
  }
  .contwp-gr {
    width: 94%;
    margin: 0 auto;
  }
}
@media (min-width: 766px) and (max-width: 1090px) {
  .container-gr,
  .contwp-gr,
  .contwph {
    width: 96%;
  }
}
@media only screen and (max-width: 768px) {
  .contwp {
    width: 90%;
    margin: 0 auto;
  }
  .container-gr,
  .contwp-gr,
  .contwph {
    width: 94%;
    margin: 0 auto;
  }
}
/*============================
カラム
============================*/
@media only screen and (max-width: 768px) {
  main {
    padding-bottom: 0px;
  }
}
main article {
  margin: 0;
  padding: 0;
}

.main_img {
  padding-bottom: 2em;
}

/*============================
グリッド
============================*/
div.grid {
  margin-bottom: 40px;
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-align-items: stretch;
  align-items: stretch;
}
div.grid.borderred, div.grid.bordergrey {
  border: 1px solid #666;
  padding: 1em !important;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-align-items: center;
  align-items: center;
}
@media only screen and (max-width: 768px) {
  div.grid.borderred, div.grid.bordergrey {
    display: block;
  }
}
div.grid.borderred {
  border: 1px solid red;
}
@media only screen and (max-width: 768px) {
  div.grid {
    display: block;
  }
}
div.grid div.grid67 {
  width: 67%;
}
@media only screen and (max-width: 1350px) {
  div.grid div.grid67.W1350grid50 {
    width: 48%;
  }
}
@media only screen and (max-width: 768px) {
  div.grid div.grid67 {
    width: 100% !important;
  }
}
div.grid div.grid30 {
  width: 30%;
}
@media only screen and (max-width: 1350px) {
  div.grid div.grid30.W1350grid50 {
    width: 48%;
  }
}
@media only screen and (max-width: 768px) {
  div.grid div.grid30 {
    width: 100% !important;
    text-align: center;
  }
}
div.grid img {
  width: 100%;
  height: auto;
}
@media only screen and (max-width: 768px) {
  div.grid img {
    width: 70%;
    margin: 0 auto;
  }
}
@media only screen and (max-width: 575px) {
  div.grid img {
    width: 100%;
    margin: 0 auto;
  }
}
div.grid .grid50 {
  width: 48%;
}
@media only screen and (max-width: 768px) {
  div.grid .grid50 {
    width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  div.grid .grid50:last-of-type {
    padding-top: 1em;
  }
}

/*============================
リード
============================*/
.lede_txt01 {
  line-height: 1.3 !important;
  width: 100%;
  margin-bottom: 0px;
  display: block;
  padding: 0px 0px 0px 0px;
  letter-spacing: 0.1em;
  font-weight: bold;
  font-size: 19px;
}
@media only screen and (max-width: 992px) {
  .lede_txt01 {
    font-size: 18px;
  }
}
@media only screen and (max-width: 768px) {
  .lede_txt01 {
    font-size: 19px;
  }
}
@media only screen and (max-width: 575px) {
  .lede_txt01 {
    font-size: 17px;
  }
}
@media only screen and (max-width: 320px) {
  .lede_txt01 {
    font-size: 16px;
  }
}
.lede_txt01 small {
  font-weight: normal;
  font-size: 80%;
}

.lede_txt02 {
  line-height: 1.3 !important;
  width: 100%;
  margin-bottom: 0px;
  display: block;
  padding: 0px 0px 0px 1.2em;
  padding-bottom: 5px !important;
  letter-spacing: 0.1em;
  font-size: 16px;
  font-weight: bold;
}
@media only screen and (max-width: 992px) {
  .lede_txt02 {
    font-size: 15px;
  }
}
@media only screen and (max-width: 768px) {
  .lede_txt02 {
    font-size: 16px;
  }
}
@media only screen and (max-width: 575px) {
  .lede_txt02 {
    font-size: 15px;
  }
}
@media only screen and (max-width: 320px) {
  .lede_txt02 {
    font-size: 14px;
  }
}
.lede_txt02 span.titlehic {
  display: inline-block;
  font-size: 80%;
  margin-left: -1.2em;
  margin-right: 5px;
  position: relative;
  top: -0.1em;
}

.lede_txt03 {
  line-height: 1.3 !important;
  width: 100%;
  margin-bottom: 0px;
  display: block;
  padding: 0px 0px 0px 1.2em;
  padding-bottom: 5px !important;
  letter-spacing: 0.1em;
  font-size: 16px;
}
@media only screen and (max-width: 992px) {
  .lede_txt03 {
    font-size: 15px;
  }
}
@media only screen and (max-width: 768px) {
  .lede_txt03 {
    font-size: 16px;
  }
}
@media only screen and (max-width: 575px) {
  .lede_txt03 {
    font-size: 15px;
  }
}
@media only screen and (max-width: 320px) {
  .lede_txt03 {
    font-size: 14px;
  }
}
.lede_txt03 span.titlehic {
  display: inline-block;
  font-size: 80%;
  margin-left: -1.2em;
  margin-right: 5px;
  position: relative;
  top: -0.1em;
}

.head_ictxt00 {
  position: relative;
  line-height: 1.3 !important;
  width: 100%;
  margin-bottom: 0px;
  display: block;
  padding: 0px 0px 0px 1.1em;
  padding-bottom: 5px !important;
  letter-spacing: 0.1em;
}
.head_ictxt00 span.titlehic {
  position: absolute;
  font-size: 100%;
  top: 0;
  left: 0;
  margin-right: 0px;
}

.head_ictxt01 {
  line-height: 1.3 !important;
  width: 100%;
  margin-bottom: 0px;
  display: block;
  padding: 0px 0px 0px 1.2em;
  padding-bottom: 5px !important;
  letter-spacing: 0.1em;
  font-size: 16px;
}
@media only screen and (max-width: 992px) {
  .head_ictxt01 {
    font-size: 15px;
  }
}
@media only screen and (max-width: 768px) {
  .head_ictxt01 {
    font-size: 16px;
  }
}
@media only screen and (max-width: 575px) {
  .head_ictxt01 {
    font-size: 15px;
  }
}
@media only screen and (max-width: 320px) {
  .head_ictxt01 {
    font-size: 14px;
  }
}
.head_ictxt01 span.titlehic {
  display: inline-block;
  font-size: 80%;
  margin-left: -1.2em;
  margin-right: 5px;
  position: relative;
  top: -0.1em;
}

ul.head_ictxt001 {
  padding-top: 0.2em;
  width: 100%;
  padding-left: 1em;
}
ul.head_ictxt001 li {
  line-height: 1.3 !important;
  margin-bottom: 5px;
  display: block;
  padding: 0px 0px 0px 1.2em;
  padding-bottom: 5px !important;
  letter-spacing: 0.1em;
  font-size: 16px;
}
@media only screen and (max-width: 992px) {
  ul.head_ictxt001 li {
    font-size: 15px;
  }
}
@media only screen and (max-width: 768px) {
  ul.head_ictxt001 li {
    font-size: 16px;
  }
}
@media only screen and (max-width: 575px) {
  ul.head_ictxt001 li {
    font-size: 15px;
  }
}
@media only screen and (max-width: 320px) {
  ul.head_ictxt001 li {
    font-size: 14px;
  }
}
ul.head_ictxt001 li span.titlehic {
  display: inline-block;
  font-size: 80%;
  margin-left: -1.2em;
  margin-right: 5px;
  position: relative;
  top: -0.1em;
}

ul.head_ic_list {
  width: 100%;
}
ul.head_ic_list li {
  line-height: 1.3 !important;
  margin-bottom: 5px;
  display: block;
  padding: 0px 0px 0px 1.2em;
  padding-bottom: 5px !important;
  letter-spacing: 0.1em;
  font-size: 16px;
}
@media only screen and (max-width: 992px) {
  ul.head_ic_list li {
    font-size: 15px;
  }
}
@media only screen and (max-width: 768px) {
  ul.head_ic_list li {
    font-size: 16px;
  }
}
@media only screen and (max-width: 575px) {
  ul.head_ic_list li {
    font-size: 15px;
  }
}
@media only screen and (max-width: 320px) {
  ul.head_ic_list li {
    font-size: 14px;
  }
}
ul.head_ic_list li span.titlehic {
  display: inline-block;
  font-size: 80%;
  margin-left: -1.2em;
  margin-right: 5px;
  position: relative;
  top: -0.1em;
}
ul.head_ic_list li a {
  color: rgb(55.4398340249, 98.3609958506, 160.0601659751);
  padding-bottom: 0.3em;
  background: linear-gradient(rgba(25, 172, 217, 0.1), rgba(25, 172, 217, 0.1)) 0 100%/0 40% no-repeat;
  transition: background 0.4s;
  text-decoration: none;
}
ul.head_ic_list li a.reverse {
  background-position: 100% 100%;
}
ul.head_ic_list li a:hover {
  background-size: 100% 40%;
}

/*============================
リボンNEW
============================*/
.ribbonnew {
  display: inline-block;
  position: absolute;
  top: -6px;
  right: 10px;
  margin: 0;
  z-index: 2;
  text-align: center;
  color: #3e6eb3;
  background: #3e6eb3;
  border-radius: 2px 0 0 0;
  width: 40px;
  font-size: 10px;
  padding: 10px 0 7px;
  font-weight: bold;
}
@media only screen and (max-width: 575px) {
  .ribbonnew {
    width: 30px;
    font-size: 8px;
    padding: 7px 0 5px;
  }
}
@media only screen and (max-width: 320px) {
  .ribbonnew {
    width: 26px;
    font-size: 6px;
    padding: 7px 0 5px;
  }
}
.ribbonnew:before {
  position: absolute;
  content: "";
  top: 0;
  right: -5px;
  border: none;
  border-bottom: solid 6px rgb(42.3195020747, 75.0829875519, 122.1804979253);
  border-right: solid 5px transparent;
}
.ribbonnew:after {
  content: "";
  position: absolute;
  left: 0;
  top: 100%;
  height: 0;
  width: 0;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 10px solid #3e6eb3;
}
@media only screen and (max-width: 575px) {
  .ribbonnew:after {
    border-left: 15px solid transparent;
    border-right: 15px solid transparent;
    border-top: 10px solid #3e6eb3;
  }
}
@media only screen and (max-width: 320px) {
  .ribbonnew:after {
    border-left: 13px solid transparent;
    border-right: 13px solid transparent;
    border-top: 10px solid #3e6eb3;
  }
}

/*============================
テキスト色
============================*/
.txt_red {
  color: red !important;
}

.txt_gray {
  color: #666666 !important;
}

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

.txt_fwb {
  font-weight: bold !important;
}

/*============================
細かい指定
============================*/
.mTop5em {
  margin-top: 5em !important;
}

.mTop4em {
  margin-top: 4em;
}
@media only screen and (max-width: 768px) {
  .mTop4em {
    margin-top: 3em !important;
  }
}

.mTop3em {
  margin-top: 3em;
}

.mTop2em {
  margin-top: 2em;
}

.mTop1em {
  margin-top: 1em;
}

@media only screen and (max-width: 768px) {
  .md_mTop2em {
    margin-top: 2em !important;
  }
}

@media only screen and (max-width: 768px) {
  .md_mTop1em {
    margin-top: 1em !important;
  }
}

.contsdline {
  background: #fff;
  padding: 15px;
  transform: translateZ(0);
  -webkit-filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.3));
  filter: drop-shadow(0px 0px 5px rgba(0, 0, 0, 0.3));
}
@media only screen and (max-width: 575px) {
  .contsdline {
    padding: 10px;
  }
}

.txt_right {
  text-align: right !important;
}

.line_height13 {
  line-height: 1.3 !important;
}

@media only screen and (max-width: 768px) {
  .mb_txt_left {
    text-align: left !important;
  }
}

.imgw100p img {
  width: 100%;
  height: auto;
}

small {
  font-size: 80% !important;
}

.txt_center {
  text-align: center;
  margin: 0 auto;
}

.fs_115b {
  font-size: 115% !important;
  font-weight: bold !important;
}

.fs_115 {
  font-size: 115% !important;
}

.fs_105b {
  font-size: 105% !important;
  font-weight: bold !important;
  color: #666;
}

@media only screen and (max-width: 768px) {
  .display_pc {
    display: none;
  }
}

@media only screen and (min-width: 769px) {
  .display_mb {
    display: none;
  }
}

/*============================
ページカラム
============================*/
@media only screen and (min-width: 769px) {
  #page_column {
    display: flex;
    padding-top: 30px;
    justify-content: space-between;
  }
  #main_column {
    flex-basis: 70%;
  }
  #sideNav {
    flex-basis: 22.5%;
  }
}
@media only screen and (max-width: 992px) {
  #page_column {
    display: flex;
    padding-top: 30px;
    justify-content: space-between;
  }
  #main_column {
    flex-basis: 70%;
  }
  #sideNav {
    flex-basis: 22.5%;
  }
}
@media only screen and (max-width: 768px) {
  #page_column {
    display: block;
    padding-top: 4%;
  }
  #page_column div {
    min-height: 0%;
  }
  #main_column {
    flex-basis: 100%;
    margin-right: 0%;
  }
}
div.ggmap {
  width: 100%;
  position: relative;
  height: 0;
  padding-top: 49.89%;
  overflow: hidden;
}
@media only screen and (max-width: 768px) {
  div.ggmap {
    padding-top: 76.717%;
  }
}
div.ggmap iframe {
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  width: 100% !important;
  height: 100% !important;
}

div.youmov {
  width: 100%;
  position: relative;
  height: 0;
  padding-top: 70%;
  overflow: hidden;
}
div.youmov iframe {
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  width: 100% !important;
  height: 100% !important;
}

div.youmov169 {
  width: 100%;
  position: relative;
  height: 0;
  padding-top: 56.25%;
  overflow: hidden;
}
div.youmov169 iframe {
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  width: 100% !important;
  height: 100% !important;
}

/*============================
チェックボックス階層化など
============================*/
ul.search_check {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  justify-content: space-between;
}
ul.search_check li.fc_li {
  position: relative;
  padding-left: 30px;
  flex-basis: 48%;
  padding-bottom: 2%;
  box-sizing: border-box;
  max-width: 48%;
  font-size: 13px;
  line-height: 13px;
}
@media only screen and (max-width: 768px) {
  ul.search_check li.fc_li {
    padding-bottom: 4%;
  }
}
@media only screen and (max-width: 768px) {
  ul.search_check li.fc_li {
    flex-basis: 100%;
    max-width: 100%;
  }
}
ul.search_check li.fc_li input.form-check-input {
  display: inline-block;
  vertical-align: top;
}
ul.search_check li.fc_li label.form-check-label {
  display: inline-block;
  vertical-align: top;
  position: relative;
  top: 3px;
}
ul.search_check li.fc_li.list_parents {
  flex-basis: 100%;
  box-sizing: border-box;
  max-width: 100%;
}
ul.search_check li.fc_li.list_parents ul.ul_children {
  flex-basis: 100%;
  padding-top: 2%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  ul.search_check li.fc_li.list_parents ul.ul_children {
    padding-top: 4%;
  }
}
ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li {
  flex-basis: 48%;
  box-sizing: border-box;
  max-width: 48%;
}
@media only screen and (max-width: 768px) {
  ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li {
    flex-basis: 100%;
    max-width: 100%;
  }
}
ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li label.form-check-label {
  color: #000 !important;
}
ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li ul.ul_children_sub {
  padding-top: 2%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li ul.ul_children_sub {
    padding-top: 4%;
  }
}
ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li ul.ul_children_sub li.fc_li {
  flex-basis: 48%;
  box-sizing: border-box;
  max-width: 48%;
}
@media only screen and (max-width: 768px) {
  ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li ul.ul_children_sub li.fc_li {
    flex-basis: 100%;
    max-width: 100%;
  }
}
ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li ul.ul_children_sub li.fc_li label.form-check-label {
  color: #000 !important;
}
ul.search_check li.fc_li.list_parents ul.ul_children li.fc_li.list_parents_sub {
  flex-basis: 100%;
  box-sizing: border-box;
  max-width: 100%;
}
/*IE用ハック*/
@media all and (-ms-high-contrast: none) {
  /* IE10 */
  /*IEラベルの位置調整*/
  ul.search_check li.fc_li label.form-check-label {
    position: relative;
    top: 5px;
  }
} /*IE用ハック*/
.hover-marker {
  padding-bottom: 0.3em;
  background: linear-gradient(rgba(25, 172, 217, 0.3), rgba(25, 172, 217, 0.3)) 0 100%/0 40% no-repeat;
  transition: background 0.4s;
  text-decoration: none;
}

.hover-marker.reverse {
  background-position: 100% 100%;
}

.hover-marker:hover {
  background-size: 100% 40%;
}

.hover-marker-ｇ {
  padding-bottom: 0.1em;
  background: linear-gradient(rgba(150, 150, 150, 0.3), rgba(150, 150, 150, 0.3)) 0 100%/0 40% no-repeat;
  transition: background 0.4s;
  text-decoration: none;
}

.hover-marker-ｇ.reverse {
  background-position: 100% 100%;
}

.hover-marker-ｇ:hover {
  background-size: 100% 40%;
}

.hover-marker-w {
  padding-bottom: 0.1em;
  background: linear-gradient(rgba(250, 250, 250, 0.3), rgba(250, 250, 250, 0.3)) 0 100%/0 40% no-repeat;
  transition: background 0.4s;
  text-decoration: none;
}

.hover-marker-w.reverse {
  background-position: 100% 100%;
}

.hover-marker-w:hover {
  background-size: 100% 40%;
}

/* ふわっと  */
.effect-fade {
  　opacity: 0 !important;
  transform: translateY(30%);
  -moz-transform: translateY(30%);
  -webkit-transform: translateY(30%);
  -o-transform: translateY(30%);
  -ms-transform: translateY(30%);
  transition: 0.8s;
  -webkit-transition: 0.8s;
  -webkit-transition: transform 0.8s;
  -webkit-transition: -webkit-transform 0.8s;
  -moz-transition: 0.8s;
  -o-transition: 0.8s;
  -ms-transition: 0.8s;
}

.effect-fade.effect-scroll {
  　opacity: 1 !important;
  transform: translateY(0%);
  -moz-transform: translateY(0%);
  -webkit-transform: translateY(0%);
  -o-transform: translateY(0%);
  -ms-transform: translateY(0%);
}

@media only screen and (min-width: 769px) {
  .effect-fade_pc {
    　opacity: 0 !important;
    transform: translateY(30%);
    -moz-transform: translateY(30%);
    -webkit-transform: translateY(30%);
    -o-transform: translateY(30%);
    -ms-transform: translateY(30%);
    transition: 0.8s;
    -webkit-transition: 0.8s;
    -webkit-transition: transform 0.8s;
    -webkit-transition: -webkit-transform 0.8s;
    -moz-transition: 0.8s;
    -o-transition: 0.8s;
    -ms-transition: 0.8s;
  }
}

@media only screen and (max-width: 768px) {
  .effect-fadeT1_sp {
    animation-name: fade-in1;
    animation-duration: 2s;
    animation-timing-function: ease;
    animation-delay: 0s;
    animation-iteration-count: 1;
    animation-direction: alternate;
    animation-fill-mode: forwards;
  }
}

.home_ef-fademv01 {
  transform: translateZ(0);
  animation-name: fade-in4;
  animation-duration: 4s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

.home_ef-fademv02 {
  transform: translateZ(0);
  animation-name: fade-in1;
  animation-duration: 3s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

.headbgani01 {
  transform: translateZ(0);
  animation-name: headbgkf;
  animation-duration: 1s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

.headbgani02 {
  transform: translateZ(0);
  animation-name: headbgkf02;
  animation-duration: 1s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

.home_ef-fadeT1 {
  transform: translateZ(0);
  animation-name: fade-in1;
  animation-duration: 2s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

.home_ef-fadeT2 {
  transform: translateZ(0);
  animation-name: fade-in1;
  animation-duration: 3s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

.home_ef-fadeT3 {
  transform: translateZ(0);
  animation-name: fade-in1;
  animation-duration: 4s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

.home_ef-fadeT4 {
  animation-name: fade-in1;
  animation-duration: 4s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

.effect-fadeT1 {
  animation-name: fade-in1;
  animation-duration: 2s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

@keyframes fade-in1 {
  0% {
    opacity: 0;
    transform: translateY(20%);
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -o-transform: translateY(20%);
    -ms-transform: translateY(20%);
  }
  80% {
    opacity: 1;
    transform: translateY(0%);
    -moz-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    -o-transform: translateY(0%);
    -ms-transform: translateY(0%);
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
    -moz-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    -o-transform: translateY(0%);
    -ms-transform: translateY(0%);
  }
}
.effect-fadeT2 {
  animation-name: fade-in2;
  animation-duration: 2.5s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}

@keyframes fade-in2 {
  0% {
    opacity: 0;
    transform: translateY(20%);
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -o-transform: translateY(20%);
    -ms-transform: translateY(20%);
  }
  30% {
    opacity: 0;
    transform: translateY(20%);
    -moz-transform: translateY(20%);
    -webkit-transform: translateY(20%);
    -o-transform: translateY(20%);
    -ms-transform: translateY(20%);
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
    -moz-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    -o-transform: translateY(0%);
    -ms-transform: translateY(0%);
  }
}
.effect-fadeT3 {
  animation-name: fade-in3;
  animation-duration: 2.5s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: 1;
  animation-direction: alternate;
  animation-fill-mode: forwards;
}
@media only screen and (max-width: 768px) {
  .effect-fadeT3 {
    animation-name: fade-in2;
  }
}

@keyframes fade-in3 {
  0% {
    opacity: 0;
    transform: translateX(20%);
    -moz-transform: translateX(20%);
    -webkit-transform: translateX(20%);
    -o-transform: translateX(20%);
    -ms-transform: translateX(20%);
  }
  30% {
    opacity: 0;
    transform: translateX(20%);
    -moz-transform: translateX(20%);
    -webkit-transform: translateX(20%);
    -o-transform: translateX(20%);
    -ms-transform: translateX(20%);
  }
  100% {
    opacity: 1;
    transform: translateX(0%);
    -moz-transform: translateX(0%);
    -webkit-transform: translateX(0%);
    -o-transform: translateX(0%);
    -ms-transform: translateX(0%);
  }
}
@keyframes fade-in4 {
  0% {
    opacity: 0;
    transform: translateX(-10%);
    -moz-transform: translateX(-10%);
    -webkit-transform: translateX(-10%);
    -o-transform: translateX(-10%);
    -ms-transform: translateX(-10%);
  }
  30% {
    opacity: 0;
    transform: translateX(-10%);
    -moz-transform: translateX(-10%);
    -webkit-transform: translateX(-10%);
    -o-transform: translateX(-10%);
    -ms-transform: translateX(-10%);
  }
  100% {
    opacity: 1;
    transform: translateX(0%);
    -moz-transform: translateX(0%);
    -webkit-transform: translateX(0%);
    -o-transform: translateX(0%);
    -ms-transform: translateX(0%);
  }
}
@keyframes headbgkf {
  0% {
    opacity: 0;
    transform: translateY(-20%);
    -moz-transform: translateY(-20%);
    -webkit-transform: translateY(-20%);
    -o-transform: translateY(-20%);
    -ms-transform: translateY(-20%);
    transform: translateX(100%);
    -moz-transform: translateX(100%);
    -webkit-transform: translateX(100%);
    -o-transform: translateX(100%);
    -ms-transform: translateX(100%);
  }
  30% {
    opacity: 0;
    transform: translateY(-20%);
    -moz-transform: translateY(-20%);
    -webkit-transform: translateY(-20%);
    -o-transform: translateY(-20%);
    -ms-transform: translateY(-20%);
    transform: translateX(100%);
    -moz-transform: translateX(100%);
    -webkit-transform: translateX(100%);
    -o-transform: translateX(100%);
    -ms-transform: translateX(100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
    -moz-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    -o-transform: translateY(0%);
    -ms-transform: translateY(0%);
    transform: translateX(0%);
    -moz-transform: translateX(0%);
    -webkit-transform: translateX(0%);
    -o-transform: translateX(0%);
    -ms-transform: translateX(0%);
  }
}
@keyframes headbgkf02 {
  0% {
    opacity: 0;
    transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
  }
  30% {
    opacity: 0;
    transform: translateY(-100%);
    -moz-transform: translateY(-100%);
    -webkit-transform: translateY(-100%);
    -o-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
  }
  100% {
    opacity: 1;
    transform: translateY(0%);
    -moz-transform: translateY(0%);
    -webkit-transform: translateY(0%);
    -o-transform: translateY(0%);
    -ms-transform: translateY(0%);
  }
}
/* ブルブル  */
.shaking {
  -webkit-animation: shake 1.5s ease-in-out infinite alternate;
  -moz-animation: shake 1.5s ease-in-out infinite alternate;
  animation: shake 1.5s ease-in-out infinite alternate;
}

.shaking:hover {
  -webkit-animation: none;
  -moz-animation: none;
  animation: none;
  opacity: 0.9 !important;
}

@keyframes shake {
  0% {
    transform: translate(0px, 0px) rotate(-5deg);
  }
  100% {
    transform: translate(0px, 0px) rotate(5deg);
  }
}
@-webkit-keyframes shake {
  0% {
    transform: translate(0px, 0px) rotate(-5deg);
  }
  100% {
    transform: translate(0px, 0px) rotate(5deg);
  }
}
@-moz-keyframes shake {
  0% {
    transform: translate(0px, 0px) rotate(-5deg);
  }
  100% {
    transform: translate(0px, 0px) rotate(5deg);
  }
}
.effect_hnb01 {
  animation-name: anihnb01;
  animation-duration: 5s;
  animation-timing-function: ease;
  animation-delay: 1s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: backwards;
}

.effect_hnb02 {
  animation-name: anihnb01;
  animation-duration: 7s;
  animation-timing-function: ease;
  animation-delay: 3s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: backwards;
}

.effect_hnb03 {
  animation-name: anihnb01;
  animation-duration: 8s;
  animation-timing-function: ease;
  animation-delay: 2s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: backwards;
}

.effect_hnb04 {
  animation-name: anihnb01;
  animation-duration: 6s;
  animation-timing-function: ease;
  animation-delay: 1s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: backwards;
}

.effect_hnb05 {
  animation-name: anihnb01;
  animation-duration: 9s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: backwards;
}

@keyframes anihnb01 {
  0% {
    opacity: 0;
    transform: translateY(20%) scale(0);
    -moz-transform: translateY(20%) scale(0);
    -webkit-transform: translateY(20%) scale(0);
    -o-transform: translateY(20%) scale(0);
    -ms-transform: translateY(20%) scale(0);
  }
  10% {
    opacity: 1;
    transform: translateY(0%) scale(1);
    -moz-transform: translateY(0%) scale(1);
    -webkit-transform: translateY(0%) scale(1);
    -o-transform: translateY(0%) scale(1);
    -ms-transform: translateY(0%) scale(1);
  }
  30% {
    opacity: 0;
    transform: translateY(20%) scale(0);
    -moz-transform: translateY(20%) scale(0);
    -webkit-transform: translateY(20%) scale(0);
    -o-transform: translateY(20%) scale(0);
    -ms-transform: translateY(20%) scale(0);
  }
  100% {
    opacity: 0;
    transform: translateY(20%) scale(0);
    -moz-transform: translateY(20%) scale(0);
    -webkit-transform: translateY(20%) scale(0);
    -o-transform: translateY(20%) scale(0);
    -ms-transform: translateY(20%) scale(0);
  }
}
/* バウンド  */
.animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animated.infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animated.hinge {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
}

.animated.flipOutX,
.animated.flipOutY,
.animated.bounceIn,
.animated.bounceOut {
  -webkit-animation-duration: 0.75s;
  animation-duration: 0.75s;
}

@-webkit-keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
@keyframes bounce {
  from, 20%, 53%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  40%, 43% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0);
  }
  70% {
    -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06);
    -webkit-transform: translate3d(0, -15px, 0);
    transform: translate3d(0, -15px, 0);
  }
  90% {
    -webkit-transform: translate3d(0, -4px, 0);
    transform: translate3d(0, -4px, 0);
  }
}
.bounce {
  -webkit-animation-name: bounce;
  animation-name: bounce;
  -webkit-transform-origin: center bottom;
  transform-origin: center bottom;
  -webkit-animation: bounce 1.5s ease-in-out infinite;
  -moz-animation: bounce 1.5s ease-in-out infinite;
  animation: bounce 1.5s ease-in-out infinite;
}
.bounce:hover {
  animation-play-state: paused;
}

/*============================
レスポンシブテーブル
============================*/
/*============================
改行
============================*/
@media only screen and (max-width: 768px) {
  br.pcbr {
    display: none;
  }
}
br.mdpcbr {
  display: none;
}

@media (min-width: 576px) {
  br.mdpcbr {
    display: block;
  }
}
@media (min-width: 1300px) {
  br.wp1300br {
    display: none;
  }
}
@media (min-width: 1150px) {
  br.wpbr {
    display: none;
  }
}
@media (max-width: 992px) {
  br.wpbrpc {
    display: none;
  }
}
@media (min-width: 769px) {
  br.mdbr {
    display: none;
  }
}
@media (min-width: 575px) {
  br.spbr {
    display: none;
  }
}
br.xsbr {
  display: none;
}

@media only screen and (max-width: 320px) {
  br.xsbr {
    display: block;
  }
}
/*============================
リンク無効





============================*/
.no-links {
  pointer-events: none;
  cursor: default;
  text-decoration: none;
}

/*============================
レスポンシブムービー用
============================*/
.cboth {
  clear: both;
  padding-top: 3em;
}

.move-responsive {
  display: block;
  position: relative;
  width: 100% !important;
  padding-top: 56.25%;
}

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

.no_link {
  pointer-events: none;
}

.pure-g {
  display: flex;
  -webkit-box-pack: justify;
  justify-content: space-between;
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-align-items: stretch;
  align-items: stretch;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  .pure-g {
    display: block;
  }
}

.head_lem01 {
  position: relative;
  padding-left: 1em;
}
.head_lem01 span {
  position: absolute;
  top: 0px;
  left: 0px;
}

.head_lem02 {
  position: relative;
  padding-left: 1.5em;
  padding-bottom: 0.5em;
}
.head_lem02 span {
  position: absolute;
  top: 0px;
  left: 0px;
}

.head_lem03 {
  position: relative;
  padding-left: 2em;
}
.head_lem03 span {
  position: absolute;
  top: 0px;
  left: 0px;
}

.head_lem05 {
  position: relative;
  padding-left: 2.5em;
}
.head_lem05 span {
  position: absolute;
  top: 0px;
  left: 0px;
}

.head_lem04 {
  position: relative;
  padding-left: 3.5em;
}
.head_lem04 span {
  position: absolute;
  top: 0px;
  left: 0px;
}

/*============================
全体影響
============================*/
.pagemaincont.contwp p {
  margin-bottom: 0.5em;
}

a.link_underline {
  text-decoration: underline;
}

h5.nomal_h5 {
  font-weight: bold !important;
  padding-bottom: 1em;
  font-size: 22px;
}
@media only screen and (max-width: 768px) {
  h5.nomal_h5 {
    font-size: 3.8vw;
  }
}

@media only screen and (max-width: 768px) {
  img.spmax200p {
    width: 60%;
    max-width: 200px;
  }
}

/*============================
モーダルウインドウ
============================*/
.modal_open {
  cursor: pointer;
}

.modal_bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 200 !important;
  display: none;
  width: 100%;
  height: 120%;
  background-color: rgba(0, 0, 0, 0.7);
}

.modal_box {
  z-index: 300 !important;
  position: fixed;
  display: none;
  width: 80%;
  max-width: 600px;
  margin: 0;
  padding: 60px 2vw 40px;
  border: 2px solid #aaa;
  background: #fff;
  box-sizing: border-box;
  border-radius: 5px;
}

.modal_close {
  position: absolute;
  cursor: pointer;
  top: 0;
  right: 0;
  display: block;
  width: 50px;
  color: #000;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  .modal_close {
    width: 40px;
  }
}
.modal_close a {
  display: block;
  background: #ccc;
  padding: 5px;
}
.modal_close a img {
  width: 100%;
  height: auto;
}

.fsize36 {
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 5px 0px;
  font-weight: bold !important;
  border-bottom: none;
}
.fsize36 {
  font-size: clamp(28.8px, 9.6vw, 36px);
}
.fsize25 {
  padding: 0px 0px 0px 0px;
  margin: 0px 0px 5px 0px;
  font-weight: bold !important;
  border-bottom: none;
}
.fsize25 {
  font-size: clamp(20px, 6.6666666667vw, 25px);
}
.fsize18 {
  padding: 0px 0px 40px 0px;
  margin: 0px 0px 5px 0px;
  font-weight: 300;
  border-bottom: none;
  line-height: 1.5;
  letter-spacing: 0.05em;
}
.fsize18 {
  font-size: clamp(14.4px, 4.8vw, 18px);
}
.fsize18 strong {
  background: -moz-linear-gradient(transparent 50%, #fae2ed 0%);
  background: -webkit-linear-gradient(transparent 50%, #fae2ed 0%);
  background: -o-linear-gradient(transparent 50%, #fae2ed 0%);
  background: -ms-linear-gradient(transparent 50%, #fae2ed 0%);
  background: linear-gradient(transparent 50%, #fae2ed 0%);
  background: linear-gradient(transparent 50%, #fae2ed 0%);
}
.fsize18 strong.yellowline {
  background: -moz-linear-gradient(transparent 50%, #f3eeb0 0%);
  background: -webkit-linear-gradient(transparent 50%, #f3eeb0 0%);
  background: -o-linear-gradient(transparent 50%, #f3eeb0 0%);
  background: -ms-linear-gradient(transparent 50%, #f3eeb0 0%);
  background: linear-gradient(transparent 50%, #f3eeb0 0%);
  background: linear-gradient(transparent 50%, #f3eeb0 0%);
}
.fsize18 strong.blueline {
  background: -moz-linear-gradient(transparent 50%, #C7E5DF 0%);
  background: -webkit-linear-gradient(transparent 50%, #C7E5DF 0%);
  background: -o-linear-gradient(transparent 50%, #C7E5DF 0%);
  background: -ms-linear-gradient(transparent 50%, #C7E5DF 0%);
  background: linear-gradient(transparent 50%, #C7E5DF 0%);
  background: linear-gradient(transparent 50%, #C7E5DF 0%);
}
.fsize18 strong.bluegline {
  font-size: 110%;
  color: #00b9ef;
  font-weight: bold;
  background: none;
  background: none;
  background: none;
  background: none;
  background: none;
  background: none;
}

.stline {
  background: -moz-linear-gradient(transparent 50%, #f8d2e3 0%);
  background: -webkit-linear-gradient(transparent 50%, #f8d2e3 0%);
  background: -o-linear-gradient(transparent 50%, #f8d2e3 0%);
  background: -ms-linear-gradient(transparent 50%, #f8d2e3 0%);
  background: linear-gradient(transparent 50%, #f8d2e3 0%);
  background: linear-gradient(transparent 50%, #f8d2e3 0%);
}

/*============================
これは_base.scss
============================*/
/*============================
これは_base.scss
============================*/
/*============================
これは_header.scss
============================*/
/*============================
#top-head
============================*/
/*============================
これは_base.scss
============================*/
/*============================
これは_footer.scss
============================*/
/*============================
#フッター
============================*/
/*============================
これは_base.scss
============================*/
/*============================
これは_nav.scss
============================*/
/*
共通
____________________________*/
/* 固定 */
/*============================
これは_base.scss
============================*/
/*============================
これは_button.scss
============================*/
/*============================
これは_tab.scss
============================*/
/*============================
これは_base.scss
============================*/
/*============================
これは_breadcrumb.scss
============================*/
/*============================
これは_base.scss
============================*/
/*============================
これは_home.scss
============================*/
.main-container {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
  padding-left: 60px;
  padding-right: 60px;
}
@media only screen and (max-width: 1350px) {
  .main-container {
    padding-left: 40px;
    padding-right: 40px;
  }
}
@media only screen and (max-width: 768px) {
  .main-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.main-hero-container {
  width: 100%;
  max-width: 1500px;
  margin: 0 auto;
}

/* --------ヒーローエリア------- */
.hero-stage {
  position: relative;
  width: 100%;
  padding-top: 33%;
  overflow: hidden;
}
@media only screen and (max-width: 768px) {
  .hero-stage {
    padding-top: 51%;
  }
}
.hero-object {
  position: absolute;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
}

.OB01 {
  width: 38%;
  height: 39.5%;
  left: 31%;
  top: 6.2%;
  --hero-animation: fade-down;
  --hero-trigger: load;
  --hero-delay: 0s;
  --hero-duration: 0.7s;
  --hero-distance: 30px;
  --hero-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
  transition: 0.3s;
}
@media only screen and (max-width: 768px) {
  .OB01 {
    width: 51.6%;
    height: 34.7%;
    left: 24.2%;
    top: 10.8%;
    --hero-animation: fade-down;
    --hero-trigger: load;
    --hero-delay: 0s;
    --hero-duration: 0.7s;
    --hero-distance: 30px;
    --hero-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
  }
}

.OB02 {
  z-index: 4;
  width: 62%;
  height: 51.4%;
  left: 19%;
  top: 46.6%;
  transition: 0.3s;
  --hero-animation: fade-up;
  --hero-trigger: load;
  --hero-delay: 0.1s;
  --hero-duration: 0.7s;
  --hero-distance: 30px;
  --hero-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
}
@media only screen and (max-width: 768px) {
  .OB02 {
    width: 95.9%;
    height: 51.5%;
    left: 2.2%;
    top: 44.8%;
    --hero-animation: fade-up;
    --hero-trigger: load;
    --hero-delay: 0.1s;
    --hero-duration: 0.7s;
    --hero-distance: 30px;
    --hero-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
  }
}

.OB03 {
  transition: 0.3s;
  width: 14.9%;
  height: 51.4%;
  left: 81.4%;
  top: 34.5%;
  --hero-animation: fade-left;
  --hero-trigger: load;
  --hero-delay: 0.7s;
  --hero-duration: 0.7s;
  --hero-distance: 30px;
  --hero-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
}
@media only screen and (max-width: 768px) {
  .OB03 {
    width: 21.8%;
    height: 37.7%;
    left: 75.6%;
    top: 10.2%;
    --hero-animation: fade-left;
    --hero-trigger: load;
    --hero-delay: 0.2s;
    --hero-duration: 0.7s;
    --hero-distance: 30px;
    --hero-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
  }
}

.OB04 {
  transition: 0.3s;
  width: 17.1%;
  height: 75.8%;
  left: 3.8%;
  top: 15.2%;
  --hero-animation: fade-right;
  --hero-trigger: load;
  --hero-delay: 0.4s;
  --hero-duration: 0.7s;
  --hero-distance: 30px;
  --hero-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
}
@media only screen and (max-width: 768px) {
  .OB04 {
    width: 22.4%;
    height: 64.3%;
    left: 2.3%;
    top: 8.7%;
    --hero-animation: fade-right;
    --hero-trigger: load;
    --hero-delay: 0.4s;
    --hero-duration: 0.7s;
    --hero-distance: 30px;
    --hero-easing: cubic-bezier(0.2, 0.8, 0.2, 1);
  }
}

/* --------スマホでのみ------- */
section.head_txt {
  width: 100%;
}
section.head_txt h3.head_infotxt {
  margin-bottom: 0.5em;
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #000;
  color: #fff;
  width: 100%;
  font-size: clamp(22px, 4.0322580645vw, 35px);
}
section.head_txt h3.head_infotxt br {
  display: none;
}
@media only screen and (max-width: 1090px) {
  section.head_txt h3.head_infotxt br {
    display: block;
  }
}
section.head_txt p.head_infotxt_p {
  font-size: clamp(16px, 3.0241935484vw, 23px);
  margin-bottom: 1em;
}
@media only screen and (max-width: 768px) {
  section.head_txt p.head_infotxt_p {
    text-align: center;
  }
}
@media only screen and (min-width: 769px) {
  section.head_txt p.app_bt {
    display: none;
  }
}
section.head_txt p.app_bt {
  width: 80%;
  margin: 0 auto;
  margin-bottom: 2em;
}
section.head_txt p.app_bt a {
  padding-top: 10px;
  padding-bottom: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: #e75381;
  border-radius: 15px;
}
section.head_txt p.app_bt a span {
  text-align: center;
  color: #fff;
  font-size: clamp(22px, 4.0322580645vw, 35px);
}

/* --------section共通------- */
section.bg_sect {
  width: 100%;
  overflow: hidden;
  position: relative;
  background: #fff;
  border-radius: 15px;
  margin: 0 auto;
  margin-bottom: 2em;
}
section.bg_sect div h3.img_title {
  margin-top: 3em;
  margin-bottom: 3em;
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  section.bg_sect div h3.img_title {
    margin: auto;
    margin-top: 2em;
    margin-bottom: 0em;
    width: 90%;
  }
}
section.bg_sect ul.kakutoku_item,
section.bg_sect ul.open_item,
section.bg_sect ul.flow_item {
  width: 100%;
  display: flex;
  justify-content: center; /* 中央寄せ */
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-align-items: stretch;
  align-items: stretch;
  gap: 30px 10px;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  section.bg_sect ul.kakutoku_item,
  section.bg_sect ul.open_item,
  section.bg_sect ul.flow_item {
    gap: 30px 0px;
  }
}
section.bg_sect ul.kakutoku_item li,
section.bg_sect ul.open_item li,
section.bg_sect ul.flow_item li {
  width: calc(33.3333333333% - 20px); /* 横幅を3等分 */
}
@media only screen and (min-width: 769px) {
  section.bg_sect ul.kakutoku_item li,
  section.bg_sect ul.open_item li,
  section.bg_sect ul.flow_item li {
    display: flex; /* 高さを揃えるための指定 */
    flex-direction: column; /* 高さを揃えるための指定 */
  }
}
@media only screen and (max-width: 1270px) {
  section.bg_sect ul.kakutoku_item li,
  section.bg_sect ul.open_item li,
  section.bg_sect ul.flow_item li {
    width: calc(50% - 10px); /* 横幅を3等分 */
  }
}
@media only screen and (max-width: 768px) {
  section.bg_sect ul.kakutoku_item li,
  section.bg_sect ul.open_item li,
  section.bg_sect ul.flow_item li {
    width: 100%;
  }
}
section.bg_sect ul.kakutoku_item li figure,
section.bg_sect ul.open_item li figure,
section.bg_sect ul.flow_item li figure {
  width: 80%;
  margin: 0 auto;
}
section.bg_sect ul.kakutoku_item li figure img,
section.bg_sect ul.open_item li figure img,
section.bg_sect ul.flow_item li figure img {
  width: 100%;
  height: auto;
}
section.bg_sect ul.kakutoku_item li p,
section.bg_sect ul.open_item li p,
section.bg_sect ul.flow_item li p {
  margin-top: 0.5em;
  text-align: center;
  font-size: clamp(14px, 2.0161290323vw, 18px);
}
section.bg_sect ul.kakutoku_item li p strong,
section.bg_sect ul.open_item li p strong,
section.bg_sect ul.flow_item li p strong {
  color: #e60012;
}
section.bg_sect ul.kakutoku_item li p small,
section.bg_sect ul.open_item li p small,
section.bg_sect ul.flow_item li p small {
  font-size: clamp(11px, 1.814516129vw, 16px);
}
section.bg_sect ul.kakutoku_item li p small span,
section.bg_sect ul.open_item li p small span,
section.bg_sect ul.flow_item li p small span {
  width: 20px;
  display: inline-block;
}
section.bg_sect ul.kakutoku_item li p small span img,
section.bg_sect ul.open_item li p small span img,
section.bg_sect ul.flow_item li p small span img {
  width: 100%;
  height: auto;
}

/* --------sect_flow------- */
.sect_flow div.sect_flow_qr {
  margin-top: 2em;
}
@media only screen and (max-width: 768px) {
  .sect_flow div.sect_flow_qr {
    display: none;
  }
}
.sect_flow div.sect_flow_qr figure {
  width: 60%;
  max-width: 300px;
  margin: 0 auto;
}
.sect_flow div.sect_flow_qr figure img {
  width: 100%;
  height: auto;
}
.sect_flow div.sect_flow_qr figure figcaption {
  margin-top: 0.2em;
  text-align: center;
  font-size: clamp(11px, 1.814516129vw, 16px);
}
.sect_flow div.sect_flow_cont {
  margin-top: 2em;
}
@media only screen and (max-width: 768px) {
  .sect_flow div.sect_flow_cont {
    margin-top: 1em;
  }
}
.sect_flow div.sect_flow_cont div.flow_index {
  width: 100%;
  padding: 1em 1em 4em 1em;
}
@media only screen and (max-width: 768px) {
  .sect_flow div.sect_flow_cont div.flow_index {
    padding: 1em 1em 1em 1em;
  }
}

/* --------sect_open------- */
section.sect_open div.sect_open_cont {
  margin-top: 2em;
}
@media only screen and (max-width: 768px) {
  section.sect_open div.sect_open_cont {
    margin-top: 1em;
  }
}
section.sect_open div.sect_open_cont div.open_index {
  width: 100%;
  padding: 1em 1em 4em 1em;
}
@media only screen and (max-width: 768px) {
  section.sect_open div.sect_open_cont div.open_index {
    padding: 1em 1em 1em 1em;
  }
}

/* --------sect_kakutoku------- */
section.sect_kakutoku div.sect_kakutoku_cont {
  margin-top: 2em;
}
@media only screen and (max-width: 768px) {
  section.sect_kakutoku div.sect_kakutoku_cont {
    margin-top: 1em;
  }
}
section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index ul.kakutoku_item {
  width: 100%;
  padding: 1em 1em 4em 1em;
}
@media only screen and (max-width: 768px) {
  section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index ul.kakutoku_item {
    padding: 1em 1em 1em 1em;
  }
}
section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index p.enquete_note {
  text-align: center;
  color: #e85382;
  padding-bottom: 1em;
  font-size: clamp(14px, 2.5201612903vw, 20px);
}
section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index div.present_info {
  position: relative;
  background: #e85382;
  padding: 10px 20px 20px 20px;
}
@media only screen and (max-width: 768px) {
  section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index div.present_info {
    padding: 10px 10px 0px 10px;
  }
}
section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index div.present_info div.senchaku {
  width: 13%;
  position: absolute;
  top: -10%;
  left: 5%;
}
@media only screen and (max-width: 768px) {
  section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index div.present_info div.senchaku {
    width: 22%;
    top: -2%;
    left: 1.5%;
  }
}
section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index div.present_info div.senchaku img {
  width: 100%;
  height: auto;
}
section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index div.present_info figure {
  width: 100%;
  height: auto;
}
section.sect_kakutoku div.sect_kakutoku_cont div.kakutoku_index div.present_info figure picture img {
  width: 100%;
  height: auto;
}

/* --------sect_map------- */
section.sect_map div.sect_map_cont {
  margin-top: 2em;
}
@media only screen and (max-width: 768px) {
  section.sect_map div.sect_map_cont {
    margin-top: 1em;
  }
}
section.sect_map div.sect_map_cont div.map_index {
  width: 100%;
  padding: 1em 1em 0em 1em;
}
@media only screen and (max-width: 768px) {
  section.sect_map div.sect_map_cont div.map_index {
    padding: 1em 1em 0em 1em;
  }
}
section.sect_map div.sect_map_cont div.map_index ul.map_item {
  width: 100%;
  display: flex;
  justify-content: center; /* 中央寄せ */
  -webkit-box-align: stretch;
  -webkit-align-items: stretch;
  -ms-align-items: stretch;
  align-items: stretch;
  gap: 30px 10px;
  flex-wrap: wrap;
}
@media only screen and (max-width: 768px) {
  section.sect_map div.sect_map_cont div.map_index ul.map_item {
    gap: 30px 0px;
  }
}
section.sect_map div.sect_map_cont div.map_index ul.map_item li {
  width: calc(50% - 10px); /* 横幅を3等分 */
  display: flex; /* 高さを揃えるための指定 */
  flex-direction: column; /* 高さを揃えるための指定 */
}
@media only screen and (max-width: 992px) {
  section.sect_map div.sect_map_cont div.map_index ul.map_item li {
    width: 100%;
  }
}
section.sect_map div.sect_map_cont div.map_index ul.map_item li figure {
  width: 100%;
  margin: 0 auto;
}
section.sect_map div.sect_map_cont div.map_index ul.map_item li figure img {
  width: 100%;
  height: auto;
}

/* --------sect_faq------- */
section.sect_faq div.sect_faq_cont {
  margin-top: 2em;
}
@media only screen and (max-width: 768px) {
  section.sect_faq div.sect_faq_cont {
    margin-top: 1em;
  }
}
section.sect_faq div.sect_faq_cont h3.img_title {
  margin-top: 3em;
  margin-bottom: 1em;
  width: 100%;
  height: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  section.sect_faq div.sect_faq_cont h3.img_title {
    margin: auto;
    margin-top: 2em;
    margin-bottom: 0em;
    width: 90%;
  }
}
section.sect_faq div.sect_faq_cont div.faq_cont {
  width: 100%;
  padding: 1em 1em 0em 1em;
}
@media only screen and (max-width: 768px) {
  section.sect_faq div.sect_faq_cont div.faq_cont {
    padding: 1em 1em 0em 1em;
  }
}
section.sect_faq div.sect_faq_cont div.faq_cont details.js-details {
  margin-bottom: 1em;
}
section.sect_faq div.sect_faq_cont div.faq_cont details.js-details summary.js-summary {
  position: relative;
}
summary {
  position: relative;
  /* display: list-item;以外を指定してデフォルトの三角形アイコンを消します */
  display: block;
  /* Safariで表示されるデフォルトの三角形アイコンを非表示にします */
}
summary::-webkit-details-marker {
  display: none;
}

.summary_inner {
  width: 100%;
  cursor: pointer;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 16px 50px 16px 24px;
  background-color: #c8c8c8;
  font-weight: bold;
  font-size: clamp(16px, 3.0241935484vw, 23px);
}
@media only screen and (max-width: 768px) {
  .summary_inner {
    padding: 16px 30px 16px 16px;
  }
}

.icon {
  z-index: 10;
  display: block;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%); /* Safari用 */
  transform: translateY(-50%);
  right: 20px;
  width: 24px;
  height: 24px;
  flex-shrink: 0;
  transform-origin: center 43%;
  transition: transform 0.4s;
  background-image: url(../images/mfsr_2026_faq_ic.svg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center;
}
@media only screen and (max-width: 768px) {
  .icon {
    width: 18px;
    height: 18px;
    right: 10px;
  }
}

/*details[open] .icon {*/
/*  transform: rotate(180deg);*/
/*}*/
/* is-openedクラスが付与されたときのスタイル */
details.is-opened .icon {
  top: 50%;
  -webkit-transform: translateY(-50%) rotate(180deg); /* Safari用 */
  transform: translateY(-50%) rotate(180deg);
}

/* --------アコーディオンの中身のスタイル-------- */
.content {
  overflow: hidden;
  background-color: #FFF;
  /* details直下のタグにpaddingを設定すると挙動がおかしくなるので、ここには指定しない */
}

.content_inner {
  padding: 10px 10px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  line-height: 1.5;
  font-size: clamp(14px, 2.5201612903vw, 20px);
}

footer {
  width: 100%;
  background-color: #FFF;
  padding: 1em 1em 1em;
}
footer div.footer-container {
  margin: 0 auto;
  width: 100%;
  padding-left: 60px;
  padding-right: 60px;
}
@media only screen and (max-width: 1350px) {
  footer div.footer-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media only screen and (max-width: 768px) {
  footer div.footer-container {
    padding-left: 20px;
    padding-right: 20px;
  }
}
footer div.footer-container {
  max-width: 1500px;
  font-size: 10px;
  font-weight: 600;
}
footer div.footer-container div.flbox {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
@media only screen and (max-width: 768px) {
  footer div.footer-container div.flbox {
    -webkit-box-pack: center;
    justify-content: center;
  }
}
footer div.footer-container div.flbox div.footer_flchild {
  font-size: 10px;
  font-weight: 600;
}
@media only screen and (max-width: 768px) {
  footer div.footer-container div.flbox div.footer_flchild:first-of-type {
    margin-bottom: 10px;
  }
}
footer div.footer-container div.flbox div.footer_flchild p {
  font-size: 12px;
}
footer div.footer-container div.flbox div.footer_flchild p a {
  margin-right: 56px;
  text-decoration: underline;
  font-size: 14px;
  color: #000;
}
@media only screen and (max-width: 768px) {
  footer div.footer-container div.flbox div.footer_flchild p a {
    margin-right: 10px;
  }
}

/*============================
これは_base.scss
============================*/
/*============================
これは_common.scss
============================*/
/*----------------------------------------------------------------------
共通
----------------------------------------------------------------------*/
/* ---------------------------- */
/* --- スプラッシュ画面 --- */
/* ---------------------------- */
.WelcomeLayer {
  position: fixed;
  width: 100%;
  height: 100vh;
  background: #FFF;
  z-index: 10000;
}

.cssload-dots {
  width: 0;
  height: 0;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  outline: 1px solid red;
  filter: url(#goo);
  -o-filter: url(#goo);
  -ms-filter: url(#goo);
  -webkit-filter: url(#goo);
  -moz-filter: url(#goo);
}

.cssload-dot {
  width: 0;
  height: 0;
  position: absolute;
  left: 0;
  top: 0;
}

.cssload-dot:before {
  content: "";
  width: 34px;
  height: 34px;
  border-radius: 49px;
  background: rgb(158, 21, 28);
  position: absolute;
  left: 50%;
  transform: translateY(0);
  -o-transform: translateY(0);
  -ms-transform: translateY(0);
  -webkit-transform: translateY(0);
  -moz-transform: translateY(0);
  margin-left: -17.5px;
  margin-top: -17.5px;
}

.cssload-dot:nth-child(5):before {
  z-index: 100;
  width: 44.5px;
  height: 44.5px;
  margin-left: -21.75px;
  margin-top: -21.75px;
  animation: cssload-dot-colors 4.6s ease infinite;
  -o-animation: cssload-dot-colors 4.6s ease infinite;
  -ms-animation: cssload-dot-colors 4.6s ease infinite;
  -webkit-animation: cssload-dot-colors 4.6s ease infinite;
  -moz-animation: cssload-dot-colors 4.6s ease infinite;
}

.cssload-dot:nth-child(1) {
  animation: cssload-dot-rotate-1 4.6s 0s linear infinite;
  -o-animation: cssload-dot-rotate-1 4.6s 0s linear infinite;
  -ms-animation: cssload-dot-rotate-1 4.6s 0s linear infinite;
  -webkit-animation: cssload-dot-rotate-1 4.6s 0s linear infinite;
  -moz-animation: cssload-dot-rotate-1 4.6s 0s linear infinite;
}

.cssload-dot:nth-child(1):before {
  background-color: rgb(193, 0, 122);
  animation: cssload-dot-move 4.6s 0s ease infinite;
  -o-animation: cssload-dot-move 4.6s 0s ease infinite;
  -ms-animation: cssload-dot-move 4.6s 0s ease infinite;
  -webkit-animation: cssload-dot-move 4.6s 0s ease infinite;
  -moz-animation: cssload-dot-move 4.6s 0s ease infinite;
}

.cssload-dot:nth-child(2) {
  animation: cssload-dot-rotate-2 4.6s 1.15s linear infinite;
  -o-animation: cssload-dot-rotate-2 4.6s 1.15s linear infinite;
  -ms-animation: cssload-dot-rotate-2 4.6s 1.15s linear infinite;
  -webkit-animation: cssload-dot-rotate-2 4.6s 1.15s linear infinite;
  -moz-animation: cssload-dot-rotate-2 4.6s 1.15s linear infinite;
}

.cssload-dot:nth-child(2):before {
  background-color: rgb(243, 240, 233);
  animation: cssload-dot-move 4.6s 1.15s ease infinite;
  -o-animation: cssload-dot-move 4.6s 1.15s ease infinite;
  -ms-animation: cssload-dot-move 4.6s 1.15s ease infinite;
  -webkit-animation: cssload-dot-move 4.6s 1.15s ease infinite;
  -moz-animation: cssload-dot-move 4.6s 1.15s ease infinite;
}

.cssload-dot:nth-child(3) {
  animation: cssload-dot-rotate-3 4.6s 2.3s linear infinite;
  -o-animation: cssload-dot-rotate-3 4.6s 2.3s linear infinite;
  -ms-animation: cssload-dot-rotate-3 4.6s 2.3s linear infinite;
  -webkit-animation: cssload-dot-rotate-3 4.6s 2.3s linear infinite;
  -moz-animation: cssload-dot-rotate-3 4.6s 2.3s linear infinite;
}

.cssload-dot:nth-child(3):before {
  background-color: rgb(37, 30, 28);
  animation: cssload-dot-move 4.6s 2.3s ease infinite;
  -o-animation: cssload-dot-move 4.6s 2.3s ease infinite;
  -ms-animation: cssload-dot-move 4.6s 2.3s ease infinite;
  -webkit-animation: cssload-dot-move 4.6s 2.3s ease infinite;
  -moz-animation: cssload-dot-move 4.6s 2.3s ease infinite;
}

.cssload-dot:nth-child(4) {
  animation: cssload-dot-rotate-4 4.6s 3.45s linear infinite;
  -o-animation: cssload-dot-rotate-4 4.6s 3.45s linear infinite;
  -ms-animation: cssload-dot-rotate-4 4.6s 3.45s linear infinite;
  -webkit-animation: cssload-dot-rotate-4 4.6s 3.45s linear infinite;
  -moz-animation: cssload-dot-rotate-4 4.6s 3.45s linear infinite;
}

.cssload-dot:nth-child(4):before {
  background-color: rgb(158, 21, 28);
  animation: cssload-dot-move 4.6s 3.45s ease infinite;
  -o-animation: cssload-dot-move 4.6s 3.45s ease infinite;
  -ms-animation: cssload-dot-move 4.6s 3.45s ease infinite;
  -webkit-animation: cssload-dot-move 4.6s 3.45s ease infinite;
  -moz-animation: cssload-dot-move 4.6s 3.45s ease infinite;
}

@keyframes cssload-dot-move {
  0% {
    transform: translateY(0);
  }
  18%, 22% {
    transform: translateY(-68px);
  }
  40%, 100% {
    transform: translateY(0);
  }
}
@-o-keyframes cssload-dot-move {
  0% {
    -o-transform: translateY(0);
  }
  18%, 22% {
    -o-transform: translateY(-68px);
  }
  40%, 100% {
    -o-transform: translateY(0);
  }
}
@-ms-keyframes cssload-dot-move {
  0% {
    -ms-transform: translateY(0);
  }
  18%, 22% {
    -ms-transform: translateY(-68px);
  }
  40%, 100% {
    -ms-transform: translateY(0);
  }
}
@-webkit-keyframes cssload-dot-move {
  0% {
    -webkit-transform: translateY(0);
  }
  18%, 22% {
    -webkit-transform: translateY(-68px);
  }
  40%, 100% {
    -webkit-transform: translateY(0);
  }
}
@-moz-keyframes cssload-dot-move {
  0% {
    -moz-transform: translateY(0);
  }
  18%, 22% {
    -moz-transform: translateY(-68px);
  }
  40%, 100% {
    -moz-transform: translateY(0);
  }
}
@keyframes cssload-dot-colors {
  0% {
    background-color: rgba(0, 130, 237, 0.99);
  }
  25% {
    background-color: rgba(193, 0, 122, 0.95);
  }
  50% {
    background-color: rgb(243, 240, 233);
  }
  75% {
    background-color: rgb(158, 21, 28);
  }
  100% {
    background-color: rgb(0, 130, 237);
  }
}
@-o-keyframes cssload-dot-colors {
  0% {
    background-color: rgba(0, 130, 237, 0.99);
  }
  25% {
    background-color: rgba(193, 0, 122, 0.95);
  }
  50% {
    background-color: rgb(243, 240, 233);
  }
  75% {
    background-color: rgb(158, 21, 28);
  }
  100% {
    background-color: rgb(0, 130, 237);
  }
}
@-ms-keyframes cssload-dot-colors {
  0% {
    background-color: rgba(0, 130, 237, 0.99);
  }
  25% {
    background-color: rgba(193, 0, 122, 0.95);
  }
  50% {
    background-color: rgb(243, 240, 233);
  }
  75% {
    background-color: rgb(158, 21, 28);
  }
  100% {
    background-color: rgb(0, 130, 237);
  }
}
@-webkit-keyframes cssload-dot-colors {
  0% {
    background-color: rgba(0, 130, 237, 0.99);
  }
  25% {
    background-color: rgba(193, 0, 122, 0.95);
  }
  50% {
    background-color: rgb(243, 240, 233);
  }
  75% {
    background-color: rgb(158, 21, 28);
  }
  100% {
    background-color: rgb(0, 130, 237);
  }
}
@-moz-keyframes cssload-dot-colors {
  0% {
    background-color: rgba(0, 130, 237, 0.99);
  }
  25% {
    background-color: rgba(193, 0, 122, 0.95);
  }
  50% {
    background-color: rgb(243, 240, 233);
  }
  75% {
    background-color: rgb(158, 21, 28);
  }
  100% {
    background-color: rgb(0, 130, 237);
  }
}
@keyframes cssload-dot-rotate-1 {
  0% {
    transform: rotate(-105deg);
  }
  100% {
    transform: rotate(270deg);
  }
}
@-o-keyframes cssload-dot-rotate-1 {
  0% {
    -o-transform: rotate(-105deg);
  }
  100% {
    -o-transform: rotate(270deg);
  }
}
@-ms-keyframes cssload-dot-rotate-1 {
  0% {
    -ms-transform: rotate(-105deg);
  }
  100% {
    -ms-transform: rotate(270deg);
  }
}
@-webkit-keyframes cssload-dot-rotate-1 {
  0% {
    -webkit-transform: rotate(-105deg);
  }
  100% {
    -webkit-transform: rotate(270deg);
  }
}
@-moz-keyframes cssload-dot-rotate-1 {
  0% {
    -moz-transform: rotate(-105deg);
  }
  100% {
    -moz-transform: rotate(270deg);
  }
}
@keyframes cssload-dot-rotate-2 {
  0% {
    transform: rotate(165deg);
  }
  100% {
    transform: rotate(540deg);
  }
}
@-o-keyframes cssload-dot-rotate-2 {
  0% {
    -o-transform: rotate(165deg);
  }
  100% {
    -o-transform: rotate(540deg);
  }
}
@-ms-keyframes cssload-dot-rotate-2 {
  0% {
    -ms-transform: rotate(165deg);
  }
  100% {
    -ms-transform: rotate(540deg);
  }
}
@-webkit-keyframes cssload-dot-rotate-2 {
  0% {
    -webkit-transform: rotate(165deg);
  }
  100% {
    -webkit-transform: rotate(540deg);
  }
}
@-moz-keyframes cssload-dot-rotate-2 {
  0% {
    -moz-transform: rotate(165deg);
  }
  100% {
    -moz-transform: rotate(540deg);
  }
}
@keyframes cssload-dot-rotate-3 {
  0% {
    transform: rotate(435deg);
  }
  100% {
    transform: rotate(810deg);
  }
}
@-o-keyframes cssload-dot-rotate-3 {
  0% {
    -o-transform: rotate(435deg);
  }
  100% {
    -o-transform: rotate(810deg);
  }
}
@-ms-keyframes cssload-dot-rotate-3 {
  0% {
    -ms-transform: rotate(435deg);
  }
  100% {
    -ms-transform: rotate(810deg);
  }
}
@-webkit-keyframes cssload-dot-rotate-3 {
  0% {
    -webkit-transform: rotate(435deg);
  }
  100% {
    -webkit-transform: rotate(810deg);
  }
}
@-moz-keyframes cssload-dot-rotate-3 {
  0% {
    -moz-transform: rotate(435deg);
  }
  100% {
    -moz-transform: rotate(810deg);
  }
}
@keyframes cssload-dot-rotate-4 {
  0% {
    transform: rotate(705deg);
  }
  100% {
    transform: rotate(1080deg);
  }
}
@-o-keyframes cssload-dot-rotate-4 {
  0% {
    -o-transform: rotate(705deg);
  }
  100% {
    -o-transform: rotate(1080deg);
  }
}
@-ms-keyframes cssload-dot-rotate-4 {
  0% {
    -ms-transform: rotate(705deg);
  }
  100% {
    -ms-transform: rotate(1080deg);
  }
}
@-webkit-keyframes cssload-dot-rotate-4 {
  0% {
    -webkit-transform: rotate(705deg);
  }
  100% {
    -webkit-transform: rotate(1080deg);
  }
}
@-moz-keyframes cssload-dot-rotate-4 {
  0% {
    -moz-transform: rotate(705deg);
  }
  100% {
    -moz-transform: rotate(1080deg);
  }
}
/* ---------------------------- */
/* --- スプラッシュ画面 --- */
/* ---------------------------- */
/*============================
#pagecont
============================*/
/*============================
これは_slick.scss
============================*/
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}
