@charset "UTF-8";
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # =================================================================
   # Global selectors
   # ================================================================= */
html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  overflow-y: scroll; /* All browsers without overlaying scrollbars */
  -webkit-text-size-adjust: 100%; /* iOS 8+ */
}

*,
::before,
::after {
  background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

::before,
::after {
  text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */
  vertical-align: inherit;
}

html,
body,
div,
h1,
h2,
h3,
h4,
h5,
h6,
table,
section,
a,
span,
p {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
  padding: 0;
  margin: 0;
  list-style: none;
}

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

hr {
  overflow: visible; /* Show the overflow in Edge and IE */
}

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
menu,
nav,
section,
summary {
  display: block;
}

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

small {
  font-size: 80%; /* Set font-size to 80% in `small` elements */
}

[hidden],
template {
  display: none; /* Add the correct display in IE */
}

abbr[title] {
  border-bottom: 1px dotted; /* Add a bordered underline effect in all browsers */
  text-decoration: none; /* Remove text decoration in Firefox 40+ */
}

a {
  background-color: transparent; /* Remove the gray background on active links in IE 10 */
  -webkit-text-decoration-skip: objects; /* Remove gaps in links underline in iOS 8+ and Safari 8+ */
}

a:active,
a:hover {
  outline-width: 0; /* Remove the outline when hovering in all browsers */
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace; /* Specify the font family of code elements */
}

b,
strong {
  font-weight: bolder; /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */
}

dfn {
  font-style: italic; /* Address styling not present in Safari and Chrome */
}

/* Address styling not present in IE 8/9 */
mark {
  background-color: #ff0;
  color: #000;
}

/* https://gist.github.com/unruthless/413930 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* # =================================================================
   # Forms
   # ================================================================= */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

input {
  border-radius: 0;
}

/* Apply cursor pointer to button elements */
button,
[type=button],
[type=reset],
[type=submit],
[role=button] {
  cursor: pointer;
}

/* Replace pointer cursor in disabled elements */
[disabled] {
  cursor: default;
}

[type=number] {
  width: auto; /* Firefox 36+ */
}

[type=search] {
  -webkit-appearance: textfield; /* Safari 8+ */
}

[type=search]::-webkit-search-cancel-button,
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none; /* Safari 8 */
}

textarea {
  overflow: auto; /* Internet Explorer 11+ */
  resize: vertical; /* Specify textarea resizability */
}

button,
input,
optgroup,
select,
textarea {
  font: inherit; /* Specify font inheritance of form elements */
}

optgroup {
  font-weight: bold; /* Restore the font weight unset by the previous rule. */
}

button {
  overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */
}

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  padding: 0;
}

/* Replace focus style removed in the border reset above */
button:-moz-focusring,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  outline: 1px dotted ButtonText;
}

button,
html [type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */
}

button,
select {
  text-transform: none; /* Firefox 40+, Internet Explorer 11- */
}

/* Remove the default button styling in all browsers */
button,
input,
select,
textarea {
  color: inherit;
}

/* Style select like a standard input */
select::-ms-expand {
  display: none; /* Internet Explorer 11+ */
}

select::-ms-value {
  color: currentColor; /* Internet Explorer 11+ */
}

legend {
  border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */
  color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */
  display: table; /* Correct the text wrapping in Edge and IE */
  max-width: 100%; /* Correct the text wrapping in Edge and IE */
  white-space: normal; /* Correct the text wrapping in Edge and IE */
}

::-webkit-file-upload-button {
  -webkit-appearance: button; /* Correct the inability to style clickable types in iOS and Safari */
  font: inherit; /* Change font properties to `inherit` in Chrome and Safari */
}

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

/* # =================================================================
   # Specify media element style
   # ================================================================= */
img {
  margin: 0;
  padding: 0;
  border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */
}

figure {
  margin: 0;
  padding: 0;
}

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress {
  vertical-align: baseline;
}

svg:not(:root) {
  overflow: hidden; /* Internet Explorer 11- */
}

audio,
canvas,
progress,
video {
  display: inline-block; /* Internet Explorer 11+, Windows Phone 8.1+ */
}

/* # =================================================================
   # Accessibility
   # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen {
  [hidden~=screen] {
    display: inherit;
  }
  [hidden~=screen]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important;
  }
}
/* Specify the progress cursor of updating elements */
[aria-busy=true] {
  cursor: progress;
}

/* Specify the pointer cursor of trigger elements */
[aria-controls] {
  cursor: pointer;
}

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] {
  cursor: default;
}

/* # =================================================================
   # Selection
   # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection {
  background-color: #b3d4fc; /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

::selection {
  background-color: #b3d4fc; /* Required when declaring ::selection */
  color: #000;
  text-shadow: none;
}

html {
  font-size: 62.5%;
}

body {
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN,", "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 1.4;
  font-size: 1.4rem;
  color: #333333;
  background: #fff;
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  body {
    line-height: 1.7;
    font-size: 1.6rem;
  }
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
  font-family: inherit;
  line-height: 1.4;
}

a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  text-decoration: none;
  color: inherit;
}
@media screen and (min-width: 768px) {
  a {
    -webkit-transition: color 0.3s, background 0.3s, border 0.3s;
    transition: color 0.3s, background 0.3s, border 0.3s;
  }
  a:hover {
    text-decoration: underline;
  }
}

.container {
  width: 100%;
  max-width: 120rem;
  padding: 0 3rem;
  margin: auto;
}
@media screen and (min-width: 1200px) {
  .container {
    padding: 0 6rem;
  }
}

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

  ■大見出し1

=====================================*/
.largeHeadline01 {
  margin: 0 0 2rem;
  color: #333333;
  text-align: center;
}
.largeHeadline01 .el_text {
  display: block;
  line-height: 1.3;
  font-size: 2.4rem;
  font-weight: bold;
  margin: 0 0 0.5rem;
}
@media screen and (min-width: 768px) {
  .largeHeadline01 .el_text {
    font-size: 3.2rem;
  }
}

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

  ■中見出し1

=====================================*/
.mediumHeadline01 {
  margin: 0 0 2rem;
  padding: 0 0 1rem;
  border-bottom: 2px solid #333333;
  color: #333333;
  text-align: left;
}
.mediumHeadline01 .el_text {
  display: block;
  line-height: 1.3;
  font-size: 1.6rem;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .mediumHeadline01 .el_text {
    font-size: 2.4rem;
  }
}

/*本文*/
.text {
  background: none;
  width: 100%;
  padding: 0;
  margin: 0 0 3rem;
  border: none;
  line-height: 1.7;
  color: #333333;
}
@media screen and (min-width: 768px) {
  .text.--big {
    font-size: 2.4rem;
  }
}

.textLink {
  color: #333333;
  text-decoration: underline;
}
.textLink:hover {
  color: #926398;
}

.c_white,
.c-white {
  color: #fff;
}

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

  ■汎用リスト

=====================================*/
.list01 {
  padding: 0;
  margin: 0 0 3rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: calc(100% + 2rem);
  margin: 0 0 0 -1rem;
}
@media screen and (min-width: 768px) {
  .list01 {
    width: calc(100% + 3rem);
    margin: 0 0 0 -1.5rem;
  }
}
.list01 li {
  list-style: none;
  width: 100%;
  max-width: calc(50% - 2rem);
  margin: 0 1rem;
  padding: 0;
  border-bottom: 1px solid #C2D1D6;
}
@media screen and (min-width: 768px) {
  .list01 li {
    max-width: calc(50% - 3rem);
    margin: 0 1.5rem;
  }
}
.list01 li a {
  padding: 2rem 2rem 2rem 0;
  display: block;
  text-decoration: none;
  font-weight: bold;
  background-image: url(../img/icon_rightarrow02_blue.svg);
  background-repeat: no-repeat;
  background-position: center right;
}
@media screen and (min-width: 768px) {
  .list01 li a {
    padding: 2rem 3rem 2rem 0;
    background-position: center right 1rem;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .list01 li a:hover {
    opacity: 0.7;
  }
}

.textlink {
  text-decoration: underline;
}

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

.img {
  text-align: center;
  margin: 0 0 3rem;
  line-height: 1;
}

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

  ■ボタン1

=====================================*/
.btn01 {
  display: inline-block;
  width: 100%;
  max-width: 40rem;
  position: relative;
  color: #fff;
  border: 1px solid #926398;
  text-decoration: none;
  text-align: center;
  position: relative;
  font-weight: bold;
  padding: 20px 65px;
  margin: 0 0 3rem;
  border-radius: 6rem;
  background-color: #926398;
  background-image: url(../img/icon_link01_white.svg);
  background-position: center right 1rem;
  background-repeat: no-repeat;
  background-size: 6rem auto;
}
@media screen and (min-width: 768px) {
  .btn01 {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .btn01:hover {
    text-decoration: none;
    color: #fff;
    background-color: #d598a3;
    border: 1px solid #d598a3;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}

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

  ■ボタン2

=====================================*/
.btn02 {
  position: relative;
  overflow: hidden;
  display: inline-block;
  width: 100%;
  max-width: 40rem;
  color: #fff;
  text-decoration: none;
  text-align: center;
  position: relative;
  font-weight: bold;
  padding: 1.5rem;
  margin: 0 0 3rem;
  border-radius: 6rem;
  -webkit-box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.3);
          box-shadow: 0 0.5rem 0.5rem rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 768px) {
  .btn02 {
    max-width: 76.7rem;
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .btn02:hover {
    text-decoration: none;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    color: #fff;
  }
  .btn02:hover::after {
    opacity: 0;
  }
}
.btn02 .el_inner {
  position: relative;
  z-index: 5;
}
.btn02 .el_inner .el_text {
  position: relative;
  font-size: 1.5rem;
}
@media screen and (min-width: 1200px) {
  .btn02 .el_inner .el_text {
    font-size: 3rem;
  }
}
.btn02::before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-left-width: 0;
  width: 100%;
  height: 100%;
  background-color: #40367f;
  border-radius: 6rem;
  z-index: 1;
}
.btn02::after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  border-left-width: 0;
  width: 100%;
  height: 100%;
  background: #40367f;
  background: -webkit-gradient(linear, left top, right top, from(#86599B), color-stop(50%, #DA9DA4), to(#ECD261));
  background: linear-gradient(90deg, #86599B 0%, #DA9DA4 50%, #ECD261 100%);
  border-radius: 6rem;
  z-index: 2;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}

.tableScroll {
  overflow: auto;
}

.table01 {
  text-align: center;
  border-top: 1px solid #e1e1dd;
  border-left: 1px solid #e1e1dd;
  width: 100%;
  border-collapse: collapse;
  margin: 0 auto 30px;
}
@media screen and (max-width: 767px) {
  .table01 {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .table01 tbody {
    display: block;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .table01 tr {
    display: block;
    width: 100%;
    border-left: none;
  }
}
.table01 th {
  border-right: 1px solid #e1e1dd;
  border-bottom: 1px solid #e1e1dd;
  background: #e1e1dd;
  font-weight: 500;
  padding: 15px 10px 15px 15px;
  text-align: center;
  font-size: 1.5rem;
  color: #333333;
  width: 40%;
}
@media screen and (max-width: 767px) {
  .table01 th {
    display: block;
    width: 100%;
    padding: 10px;
    font-size: 1.4rem;
    text-align: left;
  }
}
.table01 td {
  text-align: left;
  font-weight: normal;
  border-right: 1px solid #e1e1dd;
  border-bottom: 1px solid #e1e1dd;
  background: #fff;
  padding: 15px 10px 15px 15px;
  letter-spacing: 1px;
}
@media screen and (max-width: 767px) {
  .table01 td {
    display: block;
    width: 100%;
    padding: 10px;
    word-break: break-all;
    font-size: 1.4rem;
  }
}
.table01 td a {
  color: #926398;
}

/*ヘッダー固定の高さ調整*/
#pagetop {
  height: 5.5rem;
}
@media screen and (min-width: 768px) {
  #pagetop {
    height: 12rem;
  }
}

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

　■ページトップ

=====================================*/
#footer {
  padding: 6rem 0 9rem;
  background-color: #fcf5ec;
  color: #403782;
}
@media screen and (min-width: 768px) {
  #footer {
    padding: 9rem 0 11rem;
  }
}
#footer .footerText01 {
  text-align: center;
  font-weight: 600;
  margin: 0 0 4rem;
}
@media screen and (min-width: 1200px) {
  #footer .footerText01 {
    font-size: 2rem;
  }
}
@media screen and (min-width: 768px) {
  #footer .footerText01 .el_small {
    font-size: 1.4rem;
    vertical-align: middle;
  }
}
#footer .footerTitle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  max-width: 142.6rem;
  margin: 0 auto 1.5rem;
}
@media screen and (min-width: 768px) {
  #footer .footerTitle {
    margin: 0 auto 3rem;
  }
}
#footer .footerTitle .el_line {
  width: 1rem;
  height: 2px;
  background-color: #403782;
}
@media screen and (min-width: 768px) {
  #footer .footerTitle .el_line {
    width: 100%;
  }
}
#footer .footerTitle .el_text {
  width: 100%;
  font-size: 2rem;
  max-width: 30rem;
  font-weight: 600;
  text-align: center;
}
#footer .footerText02 {
  text-align: center;
  font-weight: 600;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  #footer .footerText02 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #footer .footerText02 .sp_1 {
    font-size: 1.8rem;
  }
}
@media screen and (max-width: 767px) {
  #footer .footerText02 .sp_2 {
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 767px) {
  #footer .footerText02 .sp_2 * {
    font-size: 1.6rem;
  }
}
#footer .footerOpt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  max-width: 46rem;
  margin: 1.5rem auto;
}
@media screen and (max-width: 767px) {
  #footer .footerOpt {
    max-width: 33rem;
  }
}
#footer .footerOpt dt {
  border: 1px solid #333333;
  padding: 0.5rem 0.6rem;
  margin: 0 1rem 0 0;
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
  min-width: 7rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  #footer .footerOpt dt {
    padding: 0 0.6rem;
  }
}
#footer .footerOpt dd {
  line-height: 1.4;
  margin-top: 0;
  font-weight: 500;
}
#footer .footerOpt dd .el_small {
  font-size: 1.1rem;
}
@media screen and (max-width: 767px) {
  #footer .footerOpt .el_tel {
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 767px) {
  #footer .footerOpt .el_mail {
    font-size: 1.1rem;
  }
}
#footer .footerText03 {
  text-align: left;
  font-size: 1.1rem;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  #footer .footerText03 {
    text-align: center;
    font-size: 1.6rem;
    margin: 3rem 0 3rem;
  }
}

.bg01 {
  background-image: url(../img/main_bg.png);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}

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

  ■メインビジュアル

=====================================*/
.mainvisual {
  overflow: hidden;
  background-color: #fcf5ec;
  background-image: url(../img/mainvisual_bg.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
  padding: 10rem 3rem 3rem;
}
@media screen and (min-width: 768px) {
  .mainvisual {
    padding: 3rem;
  }
}
@media screen and (min-width: 1200px) {
  .mainvisual {
    padding: 6rem 3rem 5rem;
  }
}
.mainvisual .mainvisualImg {
  text-align: left;
}
@media screen and (min-width: 768px) {
  .mainvisual .mainvisualImg {
    text-align: center;
  }
}
.mainvisual .mainvisualImg .el_img {
  position: relative;
  display: inline-block;
  text-align: center;
}
.mainvisual .mainvisualImg .el_img > img {
  width: 100%;
  max-width: calc(100% - 0rem);
}
@media screen and (min-width: 768px) {
  .mainvisual .mainvisualImg .el_img > img {
    max-width: calc(100% - 10rem);
  }
}
@media screen and (min-width: 1200px) {
  .mainvisual .mainvisualImg .el_img > img {
    max-width: 70rem;
  }
}
@media screen and (min-width: 1400px) {
  .mainvisual .mainvisualImg .el_img > img {
    max-width: 80rem;
  }
}
.mainvisual .mainvisualImg .el_img .el_img_inner {
  position: absolute;
  display: inline-block;
  top: -11rem;
  right: -5rem;
  max-width: 14rem;
}
@media screen and (min-width: 768px) {
  .mainvisual .mainvisualImg .el_img .el_img_inner {
    max-width: 17.3rem;
    top: 14rem;
    right: -5rem;
  }
}
@media screen and (min-width: 1400px) {
  .mainvisual .mainvisualImg .el_img .el_img_inner {
    max-width: 26rem;
    top: -6rem;
    right: -22rem;
  }
}
.mainvisual .mainvisualImg .el_img .el_img_inner > img {
  max-width: 100%;
}
.mainvisual .mainvisualText {
  margin: 0 0 4rem;
}
@media screen and (min-width: 768px) {
  .mainvisual .mainvisualText {
    text-align: center;
    font-size: 2rem;
  }
}

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

  ■概要

=====================================*/
.summarySec {
  padding: 6rem 0 1rem;
}
@media screen and (min-width: 1200px) {
  .summarySec {
    padding: 10.7rem 0 7.7rem;
  }
}

.summaryItem {
  margin: 0 0 5rem;
  position: relative;
  z-index: 5;
}
@media screen and (min-width: 768px) {
  .summaryItem {
    margin: 0 0 4rem;
  }
}
@media screen and (min-width: 1200px) {
  .summaryItem {
    margin: 0 0 6rem;
  }
}

.summaryHeadline {
  margin: 0 0 1.5rem;
}
@media screen and (min-width: 768px) {
  .summaryHeadline {
    margin: 0 0 3rem;
  }
}
.summaryHeadline .el_img {
  display: inline-block;
  position: relative;
  overflow: hidden;
  padding-right: 20px;
}
.summaryHeadline .el_img::before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: -1rem;
  /*
  background: #946398;
  background: linear-gradient(90deg, rgb(148, 99, 152) 0%, rgb(219, 162, 160) 50%, rgb(255, 190, 31) 100%);
  */
  background-color: #403782;
  -webkit-transform: skewX(15deg);
          transform: skewX(15deg);
}
.summaryHeadline .el_img .el_text {
  display: inline-block;
  position: relative;
  z-index: 5;
  line-height: 1.4;
  color: #fff;
  font-weight: 600;
  font-size: 1.8rem;
  width: 100%;
  padding: 0.5rem 2rem 0.8rem;
  text-align: left;
}
@media screen and (min-width: 768px) {
  .summaryHeadline .el_img .el_text {
    font-size: 2.8rem;
    min-width: 20rem;
  }
}
.summaryHeadline .el_img img {
  display: none;
  max-width: 13.2rem;
}
@media screen and (min-width: 768px) {
  .summaryHeadline .el_img img {
    max-width: 21rem;
  }
}

.summaryText {
  font-weight: 600;
  font-size: 1.8rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .summaryText {
    font-size: 2.2rem;
    padding: 0 0 0 4rem;
    margin: 0 0 1rem;
  }
}
.summaryText .el_small {
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .summaryText .el_small {
    font-size: 1.3rem;
    line-height: 1.3;
    margin: 0.5rem 0 0;
  }
}

.summaryImg {
  margin: 1rem 0 2rem;
}
@media screen and (min-width: 768px) {
  .summaryImg {
    margin: 0;
  }
}
.summaryImg figcaption {
  font-weight: 500;
  font-size: 1.3rem;
}
@media screen and (min-width: 768px) {
  .summaryImg figcaption {
    font-size: 1.8rem;
  }
}

.summaryImg02 {
  text-align: center;
  background-color: #fff;
}
.summaryImg02 img {
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .summaryImg02 img {
    max-width: 80rem;
  }
}

.summaryBg {
  position: relative;
  margin: 0 0 5rem;
}
@media screen and (min-width: 768px) {
  .summaryBg {
    margin: 0 0 1rem;
  }
}
.summaryBg > img {
  display: block;
  max-width: 55%;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .summaryBg > img {
    position: absolute;
    top: 0;
    right: 0;
    max-width: 50%;
    margin: 0;
  }
}
@media screen and (min-width: 992px) {
  .summaryBg > img {
    max-width: 40rem;
  }
}
@media screen and (min-width: 1200px) {
  .summaryBg > img {
    top: -7rem;
    max-width: 34rem;
    right: 11rem;
  }
}

.summaryList {
  padding: 0 0 0 3rem;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .summaryList {
    margin: 0 0 6rem;
    padding: 0 0 0 5rem;
  }
}
.summaryList li {
  position: relative;
  list-style: none;
  padding: 0;
  margin: 0 0 1.5rem;
  font-size: 1.4rem;
  font-weight: 600;
}
@media screen and (min-width: 768px) {
  .summaryList li {
    margin: 0;
    font-size: 2rem;
  }
}
.summaryList li::before {
  content: "";
  display: inline-block;
  border-radius: 100%;
  width: 1.5rem;
  height: 1.5rem;
  background-color: #926398;
  position: absolute;
  top: 0.6rem;
  left: -2.5rem;
}
@media screen and (min-width: 768px) {
  .summaryList li::before {
    width: 1.9rem;
    height: 1.9rem;
    top: 0.8rem;
    left: -2.7rem;
  }
}

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

  ■概要

=====================================*/
.dxSec {
  padding: 6rem 0 3rem;
  background-image: url(../img/dx_bg.jpg);
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
}
@media screen and (min-width: 1200px) {
  .dxSec {
    padding: 9rem 0 6rem;
  }
}
.dxSec .dxHeadline .el_inner .el_text {
  color: #fff;
  border-bottom: 0.2rem solid #fff;
}

.dxHeadline {
  text-align: center;
  margin: 0 0 5rem;
}
@media screen and (min-width: 768px) {
  .dxHeadline {
    margin: 0 0 6rem;
  }
}
.dxHeadline .el_inner {
  display: inline-block;
  position: relative;
}
.dxHeadline .el_inner .el_text {
  text-align: center;
  z-index: 5;
  line-height: 1.4;
  color: #40367f;
  font-weight: bold;
  font-size: 2.3rem;
  width: 100%;
  display: inline-block;
  padding: 0 0 1rem;
  border-bottom: 0.2rem solid #40367f;
}
@media screen and (min-width: 768px) {
  .dxHeadline .el_inner .el_text {
    font-size: 4rem;
  }
}

.dxText {
  font-weight: 500;
  margin: 0 0 8rem;
  text-shadow: 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff, 0 0 1rem #fff;
  font-size: 1.6rem;
}
@media screen and (min-width: 768px) {
  .dxText {
    font-size: 2.3rem;
    text-align: center;
  }
}

.dxWrap {
  position: relative;
  /*
  &::before {
    @include mixins.mq(min-xs) {
      content: "";
      display: block;
      background-image: url(../img/dx_arrow.svg);
      background-repeat: no-repeat;
      background-position: bottom center;
      background-size: 100% auto;
      width: 100%;
      max-width: 24rem;
      height: 100%;
      position: absolute;
      bottom: 0;
      left: 50%;
      transform: translateX(-50%);
      -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
      -moz-transform: translateX(-50%);
    }
  }
  */
}
.dxWrap .dxInner {
  position: relative;
  z-index: 5;
  margin: 0;
  padding: 0 0 1rem;
}
.dxWrap .dxInner .dxItem {
  max-width: 100%;
  margin: 0 auto 6rem;
  position: relative;
  z-index: 5;
  background-color: rgba(255, 255, 255, 0.8);
  -webkit-box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.3);
          box-shadow: 0 1rem 1rem rgba(0, 0, 0, 0.3);
  padding: 14rem 3rem 3rem;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem {
    max-width: calc(100% - 6rem);
    margin: 0 auto 10rem;
    padding: 14rem 6rem 7rem;
  }
}
.dxWrap .dxInner .dxItem .dxImg {
  text-align: center;
  margin-top: 5rem;
  margin-bottom: 5rem;
}
.dxWrap .dxInner .dxItem .dxImg.dxImg01 img {
  max-width: 55rem;
}
.dxWrap .dxInner .dxItem .dxImg.dxImg02 img {
  max-width: 70rem;
}
.dxWrap .dxInner .dxItem .dxHeadline02 {
  margin: 1rem 0 1rem;
  position: absolute;
  top: 1.5rem;
  left: 0;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem .dxHeadline02 {
    top: 1.5rem;
    left: -3rem;
    width: auto;
  }
}
.dxWrap .dxInner .dxItem .dxHeadline02 .el_inner {
  display: inline-block;
  position: relative;
}
.dxWrap .dxInner .dxItem .dxHeadline02 .el_inner .el_text {
  display: inline-block;
  text-align: center;
  z-index: 5;
  line-height: 1.4;
  background-color: #ea5617;
  background: -webkit-gradient(linear, left top, right top, from(#86599b), color-stop(50%, #da9da4), to(#ecd261));
  background: linear-gradient(90deg, #86599b 0%, #da9da4 50%, #ecd261 100%);
  color: #fff;
  font-weight: bold;
  font-size: 2.1rem;
  width: 100%;
  padding: 1rem 2rem 1.2rem;
  border-radius: 0 10rem 10rem 0;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem .dxHeadline02 .el_inner .el_text {
    min-width: 37rem;
  }
}
.dxWrap .dxInner .dxItem .dxHeadline02 .el_inner .el_text .el_main {
  display: block;
  font-size: 2.1rem;
  margin: 0 0 0.5rem;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem .dxHeadline02 .el_inner .el_text .el_main {
    font-size: 2.4rem;
  }
}
.dxWrap .dxInner .dxItem .dxHeadline02 .el_inner .el_text .el_sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  font-size: 1.5rem;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem .dxHeadline02 .el_inner .el_text .el_sub {
    font-size: 1.5rem;
  }
}
.dxWrap .dxInner .dxItem .dxHeadline02 .el_inner .el_text .el_sub::before {
  content: "";
  display: inline-block;
  width: 3rem;
  height: 0.2rem;
  margin-right: 1rem;
  background-color: #fff;
}
.dxWrap .dxInner .dxItem .dxHeadline02 .el_inner .el_text .el_sub::after {
  content: "";
  display: inline-block;
  width: 3rem;
  height: 0.2rem;
  margin-left: 1rem;
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem .dxHeadline02::before {
    content: "";
    position: absolute;
    bottom: -2rem;
    left: 0;
    display: inline-block;
    width: 0;
    height: 0;
    border-top: 20px solid #86599b;
    border-left: 30px solid transparent;
  }
}
.dxWrap .dxInner .dxItem .dxItemInner {
  position: relative;
  padding: 0 0 0 2rem;
}
.dxWrap .dxInner .dxItem .dxItemInner::before {
  content: "";
  display: inline-block;
  width: 0.2rem;
  height: calc(100% - 2rem);
  background-color: #926398;
  position: absolute;
  top: 0.5rem;
  left: 0;
}
.dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline {
  position: relative;
  text-align: left;
  margin: 3rem 0 1rem;
}
.dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline::before {
  content: "";
  display: inline-block;
  position: absolute;
  top: 0.5rem;
  left: -3rem;
  width: 2rem;
  height: 2rem;
  border-radius: 100%;
  background-color: #926398;
}
.dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline .el_inner {
  display: block;
  position: relative;
  margin: 0;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline .el_inner {
    margin: 0;
  }
}
.dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline .el_inner .el_text {
  display: block;
  z-index: 5;
  line-height: 1.4;
  color: #333333;
  font-weight: bold;
  font-size: 1.6rem;
  width: 100%;
  padding: 0 0 0.5rem 0;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline .el_inner .el_text {
    font-size: 2.3rem;
  }
}
.dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline .el_text02 {
  display: block;
  font-size: 1.5rem;
  color: #926398;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline .el_text02 {
    font-size: 2rem;
  }
}
.dxWrap .dxInner .dxItem .dxItemInner .dxSubHeadline .el_text02.--pt2 {
  color: #84187f;
}
.dxWrap .dxInner .dxItem .dxItemInner p {
  font-weight: 500;
}

.other_select {
  display: none;
}
.other_select.active {
  display: block;
}

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

  ■講師紹介

=====================================*/
.teacherSec {
  padding: 6rem 0 3rem;
}
@media screen and (min-width: 1200px) {
  .teacherSec {
    padding: 12rem 0 9rem;
  }
}

.teacherHeadline {
  margin: 0 0 1rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .teacherHeadline {
    text-align: left;
  }
}
.teacherHeadline .el_inner {
  display: inline-block;
  position: relative;
}
.teacherHeadline .el_inner .el_text {
  position: absolute;
  text-align: left;
  z-index: 5;
  line-height: 1.4;
  color: #fff;
  font-weight: 600;
  font-size: 1.8rem;
  width: 100%;
  padding: 0 0.7rem 0.2rem;
}
@media screen and (min-width: 768px) {
  .teacherHeadline .el_inner .el_text {
    font-size: 3rem;
  }
}

.teacherWrap {
  position: relative;
  z-index: 5;
}
@media screen and (min-width: 768px) {
  .teacherWrap {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}
.teacherWrap .teacherWrap__left {
  width: 100%;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .teacherWrap .teacherWrap__left {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
}
.teacherWrap .teacherWrap__left .teacherCatch {
  display: block;
  font-size: 2.1rem;
  font-weight: bold;
  color: #926398;
  margin: 0 0 1.5rem;
}
@media screen and (min-width: 768px) {
  .teacherWrap .teacherWrap__left .teacherCatch {
    font-size: 2.4rem;
  }
}
@media screen and (min-width: 1200px) {
  .teacherWrap .teacherWrap__left .teacherCatch {
    font-size: 3rem;
  }
}
.teacherWrap .teacherWrap__left .teacherText {
  font-size: 1.4rem;
  text-align: left;
  margin-bottom: 3rem;
}
@media screen and (min-width: 768px) {
  .teacherWrap .teacherWrap__left .teacherText {
    font-size: 1.6rem;
    margin-bottom: 5rem;
  }
}
.teacherWrap .teacherWrap__right {
  width: 100%;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .teacherWrap .teacherWrap__right {
    min-width: 30rem;
    max-width: 30rem;
    margin: 0 0 3rem 5rem;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
}
.teacherWrap .teacherWrap__right .img img {
  max-width: 75%;
}
@media screen and (min-width: 768px) {
  .teacherWrap .teacherWrap__right .img img {
    max-width: 100%;
  }
}
.teacherWrap .teacherName {
  text-align: right;
  margin: 0 0 3rem;
}
@media screen and (min-width: 768px) {
  .teacherWrap .teacherName {
    font-size: 1.6rem;
  }
}
.teacherWrap .teacherName span {
  display: inline-block;
}
.teacherWrap .teacherName span.el_big {
  font-size: 2rem;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .teacherWrap .teacherName span.el_big {
    font-size: 3rem;
  }
}

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

  ■お問い合わせ

=====================================*/
.contactSec {
  padding: 6rem 0 3rem;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .contactSec {
    padding: 9rem 0 6rem;
  }
}

.contactOpt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  margin: -1rem auto 2rem;
}
@media screen and (min-width: 768px) {
  .contactOpt {
    margin: -2rem auto 2rem;
  }
}
.contactOpt dt {
  border: 1px solid #333333;
  padding: 0 0.6rem;
  margin: 0 1rem 0 0;
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  min-width: 7rem;
  line-height: 1.4;
}
@media screen and (min-width: 768px) {
  .contactOpt dt {
    padding: 0 1rem;
    font-size: 3rem;
    margin: 0 1rem 0 0;
  }
}
.contactOpt dd {
  line-height: 1.4;
  margin: 0;
  font-size: 2rem;
}
@media screen and (min-width: 768px) {
  .contactOpt dd {
    font-size: 4rem;
    font-weight: bold;
  }
}

.contactTel {
  padding: 0 0 1rem;
  margin: 0 auto 5rem;
  border-bottom: 0.1rem solid #e1e1dd;
}

.contactForm {
  padding: 0;
  margin: 0 auto;
  max-width: 100rem;
}

.contactPrivacy {
  padding: 0;
  margin: 0 auto;
  max-width: 100rem;
}

.formBg {
  background-color: #fff;
  border-radius: 2rem;
  -webkit-box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 1.5rem rgba(0, 0, 0, 0.1);
  padding: 3rem 2.5rem 0.1rem;
  margin: 0 auto 5rem;
}
@media screen and (min-width: 768px) {
  .formBg {
    padding: 5rem 6rem 2rem;
  }
}

table.set {
  width: 100%;
  background: #fff;
  border-collapse: collapse;
  margin: 0 auto 3rem;
}
@media screen and (max-width: 767px) {
  table.set {
    display: block;
  }
}
@media screen and (max-width: 767px) {
  table.set tbody {
    width: 100%;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  table.set tbody tr {
    width: 100%;
    display: block;
  }
}
table.set tbody tr th {
  position: relative;
  width: 40%;
  min-width: 270px;
  text-align: center;
  padding: 2rem 2rem 2rem 0;
  font-weight: normal;
  background-color: none;
  border-bottom: 1px solid #e1e1dd;
  vertical-align: middle;
  font-weight: bold;
  text-align: left;
}
@media screen and (max-width: 767px) {
  table.set tbody tr th {
    min-width: auto;
    display: block;
    clear: both;
    width: 100%;
    padding: 0 0 0.5rem;
    margin: 0 0 0.5rem;
  }
}
table.set tbody tr th .inner {
  position: relative;
  display: block;
  width: 100%;
}
table.set tbody tr th .el_inner {
  display: block;
  position: relative;
}
table.set tbody tr th .el_required {
  background: #E4002B;
  color: #fff;
  position: absolute;
  top: 4px;
  right: 0;
  font-size: 11px;
  border-radius: 2px;
  text-align: center;
  padding: 2px 5px 3px;
  line-height: 1;
}
table.set tbody tr td {
  position: relative;
  width: 60%;
  padding: 2rem 0 2rem 2rem;
  border-bottom: 1px solid #e1e1dd;
  vertical-align: middle;
  /* 旧Edge対応 */
  /* IE対応 */
}
@media screen and (max-width: 767px) {
  table.set tbody tr td {
    display: block;
    clear: both;
    width: 100%;
    border-bottom: none;
    text-align: left;
    word-break: break-all;
    padding: 0 0 4rem;
  }
}
table.set tbody tr td > label {
  display: block;
}
table.set tbody tr td p {
  line-height: 1.6;
  font-size: 1.4rem;
  color: #666666;
  margin: 0 0 1rem;
}
table.set tbody tr td input[type=text],
table.set tbody tr td input[type=email],
table.set tbody tr td input[type=tel],
table.set tbody tr td select,
table.set tbody tr td textarea {
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  width: 100%;
  line-height: 2;
  padding: 5px 10px;
  background: #f1f1f1;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-size: 1.6rem;
}
table.set tbody tr td select {
  padding: 10px 10px;
  font-size: 1.6rem;
}
table.set tbody tr td textarea {
  resize: vertical;
  height: 100px;
  font-size: 1.6rem;
}
table.set tbody tr td.input_half input, table.set tbody tr td.input_half select {
  width: 50%;
  max-width: 158px;
  font-size: 1.6rem;
}
table.set tbody tr td *::-webkit-input-placeholder {
  color: #999999;
}
table.set tbody tr td *::-moz-placeholder {
  color: #999999;
}
table.set tbody tr td *:-ms-input-placeholder {
  color: #999999;
}
table.set tbody tr td *::-ms-input-placeholder {
  color: #999999;
}
table.set tbody tr td *::placeholder {
  color: #999999;
}
table.set tbody tr td *::-ms-input-placeholder {
  color: #999999;
}
table.set tbody tr td *:-ms-input-placeholder {
  color: #999999;
}
@media screen and (min-width: 768px) {
  table.set tbody tr:last-child th {
    border-bottom: none;
  }
}
table.set tbody tr:last-child td {
  border-bottom: none;
}
@media screen and (max-width: 767px) {
  table.set tbody tr:last-child td {
    padding-bottom: 2rem;
  }
}

.checkbocArea {
  text-align: center;
  margin-top: 2rem;
}
@media screen and (min-width: 768px) {
  .checkbocArea {
    text-align: left;
    margin: 0;
  }
}

.btnFlex {
  display: block;
  width: 100%;
  max-width: 76.7rem;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .btnFlex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    width: 100%;
    margin: 0 auto;
  }
}
.btnFlex .sendBtn {
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .btnFlex .sendBtn {
    max-width: calc(50% - 30px);
    margin-right: 15px;
    margin-left: 15px;
  }
}
.btnFlex .sendBtn button {
  width: 100%;
  min-width: auto;
}

.sendBtn {
  text-align: center;
}
.sendBtn button {
  display: inline-block;
  width: 100%;
  max-width: 40rem;
  position: relative;
  color: #fff;
  border: 1px solid #926398;
  text-decoration: none;
  text-align: center;
  position: relative;
  font-weight: bold;
  padding: 20px 65px;
  margin: 0 0 3rem;
  border-radius: 6rem;
  background-color: #926398;
  background-image: url(../img/icon_link01_white.svg);
  background-position: center right 1rem;
  background-repeat: no-repeat;
  background-size: 6rem auto;
}
@media screen and (min-width: 768px) {
  .sendBtn button {
    -webkit-transition: 0.3s;
    transition: 0.3s;
  }
  .sendBtn button:hover {
    background-color: #40367f;
    border: 1px solid #40367f;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
}
.sendBtn.--back button {
  width: 100%;
  min-width: auto;
  color: #333333;
  background: #e1e1dd;
  border: 1px solid #e1e1dd;
}
.sendBtn.--back button:hover {
  background: #e1e1dd;
}

.formError {
  margin: 5px 0 0 !important;
  display: block !important;
  position: static !important;
}
.formError .formErrorContent {
  width: 100%;
  background: #E4002B !important;
  border: none !important;
  -webkit-box-shadow: none !important;
          box-shadow: none !important;
  border-radius: 0 !important;
}
.formError .formErrorArrow {
  display: none !important;
}

.g-recaptcha > div {
  margin: 0 auto 10px;
}

@media screen and (max-width: 767px) {
  .form_checkbox label {
    margin: 0.5rem 0;
    font-size: 1.3rem;
  }
}
@media screen and (max-width: 767px) {
  .form_checkbox label input {
    vertical-align: -2px;
  }
}

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

  ■お問い合わせ 切り替え処理関連

=====================================*/
#number02 {
  display: none;
}
#number02.active {
  display: block;
}

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

  ■固定バナー

=====================================*/
.fixed {
  display: none;
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background-color: #fafafa;
  padding: 1.5rem 0;
  -webkit-box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
          box-shadow: 0 0 1rem rgba(0, 0, 0, 0.1);
}
.fixed .fixedWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  max-width: 75rem;
  margin: 0 auto;
}
.fixed .fixedWrap .fixedItem {
  width: 100%;
  max-width: 50%;
  padding: 0 1rem;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .fixed .fixedWrap .fixedItem {
    padding: 0 3rem;
  }
}
@media screen and (max-width: 767px) {
  .fixed .fixedWrap .fixedItem {
    line-height: 1;
  }
}
.fixed .fixedWrap .fixedItem a {
  display: inline-block;
  margin: 0;
}
@media screen and (max-width: 767px) {
  .fixed .fixedWrap .fixedItem a {
    width: 100%;
  }
}
.fixed .fixedWrap .fixedItem .btn02 {
  -webkit-box-shadow: none;
          box-shadow: none;
}
@media screen and (max-width: 767px) {
  .fixed .fixedWrap .fixedItem .btn02 {
    padding: 1.2rem 1rem;
  }
}
@media screen and (min-width: 768px) {
  .fixed .fixedWrap .fixedItem .btn02 .el_text {
    font-size: 1.8rem;
  }
}
.fixed .fixedWrap .fixedItem .contactOpt {
  margin: 0;
}
.fixed .fixedWrap .fixedItem .contactOpt dt {
  font-size: 1.5rem;
}
@media screen and (min-width: 768px) {
  .fixed .fixedWrap .fixedItem .contactOpt dt {
    font-size: 2rem;
  }
}
@media screen and (max-width: 767px) {
  .fixed .fixedWrap .fixedItem .contactOpt dt {
    margin: 0;
    width: 100%;
    max-width: 100%;
    border-radius: 5rem;
    padding: 0.7rem 0;
  }
}
@media screen and (min-width: 768px) {
  .fixed .fixedWrap .fixedItem .contactOpt dd {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .fixed .fixedWrap .fixedItem .contactOpt dd {
    display: none;
  }
}
.fixed.active {
  display: block;
}

.left {
  text-align: left;
}

.center {
  text-align: center;
}

.right {
  text-align: right;
}

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

.mt10 {
  margin-top: 1rem !important;
}

.mt15 {
  margin-top: 1.5rem !important;
}

.mt20 {
  margin-top: 2rem !important;
}

.mt25 {
  margin-top: 2.5rem !important;
}

.mt30 {
  margin-top: 3rem !important;
}

.mt40 {
  margin-top: 4rem !important;
}

.mt50 {
  margin-top: 5rem !important;
}

.mt60 {
  margin-top: 6rem !important;
}

.mt70 {
  margin-top: 7rem !important;
}

.mt80 {
  margin-top: 8rem !important;
}

.mt90 {
  margin-top: 9rem !important;
}

.mt100 {
  margin-top: 10rem !important;
}

@media screen and (min-width: 768px) {
  .xs_mt0 {
    margin-top: 0 !important;
  }
  .xs_mt10 {
    margin-top: 1rem !important;
  }
  .xs_mt15 {
    margin-top: 1.5rem !important;
  }
  .xs_mt20 {
    margin-top: 2rem !important;
  }
  .xs_mt25 {
    margin-top: 2.5rem !important;
  }
  .xs_mt30 {
    margin-top: 3rem !important;
  }
  .xs_mt40 {
    margin-top: 4rem !important;
  }
  .xs_mt50 {
    margin-top: 5rem !important;
  }
  .xs_mt60 {
    margin-top: 6rem !important;
  }
  .xs_mt70 {
    margin-top: 7rem !important;
  }
  .xs_mt80 {
    margin-top: 8rem !important;
  }
  .xs_mt90 {
    margin-top: 98rem !important;
  }
  .xs_mt100 {
    margin-top: 10rem !important;
  }
}
@media screen and (min-width: 992px) {
  .sm_mt0 {
    margin-top: 0 !important;
  }
  .sm_mt10 {
    margin-top: 1rem !important;
  }
  .sm_mt15 {
    margin-top: 1.5rem !important;
  }
  .sm_mt20 {
    margin-top: 2rem !important;
  }
  .sm_mt25 {
    margin-top: 2.5rem !important;
  }
  .sm_mt30 {
    margin-top: 3rem !important;
  }
  .sm_mt40 {
    margin-top: 4rem !important;
  }
  .sm_mt50 {
    margin-top: 5rem !important;
  }
  .sm_mt60 {
    margin-top: 6rem !important;
  }
  .sm_mt70 {
    margin-top: 7rem !important;
  }
  .sm_mt80 {
    margin-top: 8rem !important;
  }
  .sm_mt90 {
    margin-top: 9rem !important;
  }
  .sm_mt100 {
    margin-top: 10rem !important;
  }
}
@media screen and (min-width: 1200px) {
  .md_mt0 {
    margin-top: 0 !important;
  }
  .md_mt10 {
    margin-top: 1rem !important;
  }
  .md_mt15 {
    margin-top: 1.5rem !important;
  }
  .md_mt20 {
    margin-top: 2rem !important;
  }
  .md_mt25 {
    margin-top: 2.5rem !important;
  }
  .md_mt30 {
    margin-top: 3rem !important;
  }
  .md_mt40 {
    margin-top: 4rem !important;
  }
  .md_mt50 {
    margin-top: 5rem !important;
  }
  .md_mt60 {
    margin-top: 6rem !important;
  }
  .md_mt70 {
    margin-top: 7rem !important;
  }
  .md_mt80 {
    margin-top: 8rem !important;
  }
  .md_mt80 {
    margin-top: 8rem !important;
  }
  .md_mt100 {
    margin-top: 10rem !important;
  }
}
@media screen and (min-width: 1921px) {
  .lg_mt0 {
    margin-top: 0 !important;
  }
  .lg_mt10 {
    margin-top: 1rem !important;
  }
  .lg_mt15 {
    margin-top: 1.5rem !important;
  }
  .lg_mt20 {
    margin-top: 2rem !important;
  }
  .lg_mt25 {
    margin-top: 2.5rem !important;
  }
  .lg_mt30 {
    margin-top: 3rem !important;
  }
  .lg_mt40 {
    margin-top: 4rem !important;
  }
  .lg_mt50 {
    margin-top: 5rem !important;
  }
  .lg_mt60 {
    margin-top: 6rem !important;
  }
  .lg_mt70 {
    margin-top: 7rem !important;
  }
  .lg_mt80 {
    margin-top: 8rem !important;
  }
  .lg_mt90 {
    margin-top: 9rem !important;
  }
  .lg_mt100 {
    margin-top: 10rem !important;
  }
}
/*=================================
margin-bottom
=================================*/
.mb0 {
  margin-bottom: 0 !important;
}

.mb10 {
  margin-bottom: 1rem !important;
}

.mb15 {
  margin-bottom: 1.5rem !important;
}

.mb20 {
  margin-bottom: 2rem !important;
}

.mb25 {
  margin-bottom: 2.5rem !important;
}

.mb30 {
  margin-bottom: 3rem !important;
}

.mb40 {
  margin-bottom: 4rem !important;
}

.mb50 {
  margin-bottom: 5rem !important;
}

.mb60 {
  margin-bottom: 6rem !important;
}

.mb70 {
  margin-bottom: 7rem !important;
}

.mb80 {
  margin-bottom: 8rem !important;
}

.mb90 {
  margin-bottom: 9rem !important;
}

.mb100 {
  margin-bottom: 10rem !important;
}

@media screen and (min-width: 768px) {
  .xs_mb0 {
    margin-bottom: 0 !important;
  }
  .xs_mb10 {
    margin-bottom: 1rem !important;
  }
  .xs_mb15 {
    margin-bottom: 1.5rem !important;
  }
  .xs_mb20 {
    margin-bottom: 2rem !important;
  }
  .xs_mb25 {
    margin-bottom: 2.5rem !important;
  }
  .xs_mb30 {
    margin-bottom: 3rem !important;
  }
  .xs_mb40 {
    margin-bottom: 4rem !important;
  }
  .xs_mb50 {
    margin-bottom: 5rem !important;
  }
  .xs_mb60 {
    margin-bottom: 6rem !important;
  }
  .xs_mb70 {
    margin-bottom: 7rem !important;
  }
  .xs_mb80 {
    margin-bottom: 8rem !important;
  }
  .xs_mb90 {
    margin-bottom: 98rem !important;
  }
  .xs_mb100 {
    margin-bottom: 10rem !important;
  }
}
@media screen and (min-width: 992px) {
  .sm_mb0 {
    margin-bottom: 0 !important;
  }
  .sm_mb10 {
    margin-bottom: 1rem !important;
  }
  .sm_mb15 {
    margin-bottom: 1.5rem !important;
  }
  .sm_mb20 {
    margin-bottom: 2rem !important;
  }
  .sm_mb25 {
    margin-bottom: 2.5rem !important;
  }
  .sm_mb30 {
    margin-bottom: 3rem !important;
  }
  .sm_mb40 {
    margin-bottom: 4rem !important;
  }
  .sm_mb50 {
    margin-bottom: 5rem !important;
  }
  .sm_mb60 {
    margin-bottom: 6rem !important;
  }
  .sm_mb70 {
    margin-bottom: 7rem !important;
  }
  .sm_mb80 {
    margin-bottom: 8rem !important;
  }
  .sm_mb90 {
    margin-bottom: 9rem !important;
  }
  .sm_mb100 {
    margin-bottom: 10rem !important;
  }
}
@media screen and (min-width: 1200px) {
  .md_mb0 {
    margin-bottom: 0 !important;
  }
  .md_mb10 {
    margin-bottom: 1rem !important;
  }
  .md_mb15 {
    margin-bottom: 1.5rem !important;
  }
  .md_mb20 {
    margin-bottom: 2rem !important;
  }
  .md_mb25 {
    margin-bottom: 2.5rem !important;
  }
  .md_mb30 {
    margin-bottom: 3rem !important;
  }
  .md_mb40 {
    margin-bottom: 4rem !important;
  }
  .md_mb50 {
    margin-bottom: 5rem !important;
  }
  .md_mb60 {
    margin-bottom: 6rem !important;
  }
  .md_mb70 {
    margin-bottom: 7rem !important;
  }
  .md_mb80 {
    margin-bottom: 8rem !important;
  }
  .md_mb80 {
    margin-bottom: 8rem !important;
  }
  .md_mb100 {
    margin-bottom: 10rem !important;
  }
}
@media screen and (min-width: 1921px) {
  .lg_mb0 {
    margin-bottom: 0 !important;
  }
  .lg_mb10 {
    margin-bottom: 1rem !important;
  }
  .lg_mb15 {
    margin-bottom: 1.5rem !important;
  }
  .lg_mb20 {
    margin-bottom: 2rem !important;
  }
  .lg_mb25 {
    margin-bottom: 2.5rem !important;
  }
  .lg_mb30 {
    margin-bottom: 3rem !important;
  }
  .lg_mb40 {
    margin-bottom: 4rem !important;
  }
  .lg_mb50 {
    margin-bottom: 5rem !important;
  }
  .lg_mb60 {
    margin-bottom: 6rem !important;
  }
  .lg_mb70 {
    margin-bottom: 7rem !important;
  }
  .lg_mb80 {
    margin-bottom: 8rem !important;
  }
  .lg_mb90 {
    margin-bottom: 9rem !important;
  }
  .lg_mb100 {
    margin-bottom: 10rem !important;
  }
}
/*=================================
padding-top
=================================*/
.pt0 {
  padding-top: 0 !important;
}

.pt10 {
  padding-top: 1rem !important;
}

.pt15 {
  padding-top: 1.5rem !important;
}

.pt20 {
  padding-top: 2rem !important;
}

.pt25 {
  padding-top: 2.5rem !important;
}

.pt30 {
  padding-top: 3rem !important;
}

.pt40 {
  padding-top: 4rem !important;
}

.pt50 {
  padding-top: 5rem !important;
}

.pt60 {
  padding-top: 6rem !important;
}

.pt70 {
  padding-top: 7rem !important;
}

.pt80 {
  padding-top: 8rem !important;
}

.pt90 {
  padding-top: 9rem !important;
}

.pt100 {
  padding-top: 10rem !important;
}

@media screen and (min-width: 768px) {
  .xs_pt0 {
    padding-top: 0 !important;
  }
  .xs_pt10 {
    padding-top: 1rem !important;
  }
  .xs_pt15 {
    padding-top: 1.5rem !important;
  }
  .xs_pt20 {
    padding-top: 2rem !important;
  }
  .xs_pt25 {
    padding-top: 2.5rem !important;
  }
  .xs_pt30 {
    padding-top: 3rem !important;
  }
  .xs_pt40 {
    padding-top: 4rem !important;
  }
  .xs_pt50 {
    padding-top: 5rem !important;
  }
  .xs_pt60 {
    padding-top: 6rem !important;
  }
  .xs_pt70 {
    padding-top: 7rem !important;
  }
  .xs_pt80 {
    padding-top: 8rem !important;
  }
  .xs_pt90 {
    padding-top: 98rem !important;
  }
  .xs_pt100 {
    padding-top: 10rem !important;
  }
}
@media screen and (min-width: 992px) {
  .sm_pt0 {
    padding-top: 0 !important;
  }
  .sm_pt10 {
    padding-top: 1rem !important;
  }
  .sm_pt15 {
    padding-top: 1.5rem !important;
  }
  .sm_pt20 {
    padding-top: 2rem !important;
  }
  .sm_pt25 {
    padding-top: 2.5rem !important;
  }
  .sm_pt30 {
    padding-top: 3rem !important;
  }
  .sm_pt40 {
    padding-top: 4rem !important;
  }
  .sm_pt50 {
    padding-top: 5rem !important;
  }
  .sm_pt60 {
    padding-top: 6rem !important;
  }
  .sm_pt70 {
    padding-top: 7rem !important;
  }
  .sm_pt80 {
    padding-top: 8rem !important;
  }
  .sm_pt90 {
    padding-top: 9rem !important;
  }
  .sm_pt100 {
    padding-top: 10rem !important;
  }
}
@media screen and (min-width: 1200px) {
  .md_pt0 {
    padding-top: 0 !important;
  }
  .md_pt10 {
    padding-top: 1rem !important;
  }
  .md_pt15 {
    padding-top: 1.5rem !important;
  }
  .md_pt20 {
    padding-top: 2rem !important;
  }
  .md_pt25 {
    padding-top: 2.5rem !important;
  }
  .md_pt30 {
    padding-top: 3rem !important;
  }
  .md_pt40 {
    padding-top: 4rem !important;
  }
  .md_pt50 {
    padding-top: 5rem !important;
  }
  .md_pt60 {
    padding-top: 6rem !important;
  }
  .md_pt70 {
    padding-top: 7rem !important;
  }
  .md_pt80 {
    padding-top: 8rem !important;
  }
  .md_pt80 {
    padding-top: 8rem !important;
  }
  .md_pt100 {
    padding-top: 10rem !important;
  }
}
@media screen and (min-width: 1921px) {
  .lg_pt0 {
    padding-top: 0 !important;
  }
  .lg_pt10 {
    padding-top: 1rem !important;
  }
  .lg_pt15 {
    padding-top: 1.5rem !important;
  }
  .lg_pt20 {
    padding-top: 2rem !important;
  }
  .lg_pt25 {
    padding-top: 2.5rem !important;
  }
  .lg_pt30 {
    padding-top: 3rem !important;
  }
  .lg_pt40 {
    padding-top: 4rem !important;
  }
  .lg_pt50 {
    padding-top: 5rem !important;
  }
  .lg_pt60 {
    padding-top: 6rem !important;
  }
  .lg_pt70 {
    padding-top: 7rem !important;
  }
  .lg_pt80 {
    padding-top: 8rem !important;
  }
  .lg_pt90 {
    padding-top: 9rem !important;
  }
  .lg_pt100 {
    padding-top: 10rem !important;
  }
}
/*=================================
padding-bottom
=================================*/
.pb0 {
  padding-bottom: 0 !important;
}

.pb10 {
  padding-bottom: 1rem !important;
}

.pb15 {
  padding-bottom: 1.5rem !important;
}

.pb20 {
  padding-bottom: 2rem !important;
}

.pb25 {
  padding-bottom: 2.5rem !important;
}

.pb30 {
  padding-bottom: 3rem !important;
}

.pb40 {
  padding-bottom: 4rem !important;
}

.pb50 {
  padding-bottom: 5rem !important;
}

.pb60 {
  padding-bottom: 6rem !important;
}

.pb70 {
  padding-bottom: 7rem !important;
}

.pb80 {
  padding-bottom: 8rem !important;
}

.pb90 {
  padding-bottom: 9rem !important;
}

.pb100 {
  padding-bottom: 10rem !important;
}

@media screen and (min-width: 768px) {
  .xs_pb0 {
    padding-bottom: 0 !important;
  }
  .xs_pb10 {
    padding-bottom: 1rem !important;
  }
  .xs_pb15 {
    padding-bottom: 1.5rem !important;
  }
  .xs_pb20 {
    padding-bottom: 2rem !important;
  }
  .xs_pb25 {
    padding-bottom: 2.5rem !important;
  }
  .xs_pb30 {
    padding-bottom: 3rem !important;
  }
  .xs_pb40 {
    padding-bottom: 4rem !important;
  }
  .xs_pb50 {
    padding-bottom: 5rem !important;
  }
  .xs_pb60 {
    padding-bottom: 6rem !important;
  }
  .xs_pb70 {
    padding-bottom: 7rem !important;
  }
  .xs_pb80 {
    padding-bottom: 8rem !important;
  }
  .xs_pb90 {
    padding-bottom: 98rem !important;
  }
  .xs_pb100 {
    padding-bottom: 10rem !important;
  }
}
@media screen and (min-width: 992px) {
  .sm_pb0 {
    padding-bottom: 0 !important;
  }
  .sm_pb10 {
    padding-bottom: 1rem !important;
  }
  .sm_pb15 {
    padding-bottom: 1.5rem !important;
  }
  .sm_pb20 {
    padding-bottom: 2rem !important;
  }
  .sm_pb25 {
    padding-bottom: 2.5rem !important;
  }
  .sm_pb30 {
    padding-bottom: 3rem !important;
  }
  .sm_pb40 {
    padding-bottom: 4rem !important;
  }
  .sm_pb50 {
    padding-bottom: 5rem !important;
  }
  .sm_pb60 {
    padding-bottom: 6rem !important;
  }
  .sm_pb70 {
    padding-bottom: 7rem !important;
  }
  .sm_pb80 {
    padding-bottom: 8rem !important;
  }
  .sm_pb90 {
    padding-bottom: 9rem !important;
  }
  .sm_pb100 {
    padding-bottom: 10rem !important;
  }
}
@media screen and (min-width: 1200px) {
  .md_pb0 {
    padding-bottom: 0 !important;
  }
  .md_pb10 {
    padding-bottom: 1rem !important;
  }
  .md_pb15 {
    padding-bottom: 1.5rem !important;
  }
  .md_pb20 {
    padding-bottom: 2rem !important;
  }
  .md_pb25 {
    padding-bottom: 2.5rem !important;
  }
  .md_pb30 {
    padding-bottom: 3rem !important;
  }
  .md_pb40 {
    padding-bottom: 4rem !important;
  }
  .md_pb50 {
    padding-bottom: 5rem !important;
  }
  .md_pb60 {
    padding-bottom: 6rem !important;
  }
  .md_pb70 {
    padding-bottom: 7rem !important;
  }
  .md_pb80 {
    padding-bottom: 8rem !important;
  }
  .md_pb80 {
    padding-bottom: 8rem !important;
  }
  .md_pb100 {
    padding-bottom: 10rem !important;
  }
}
@media screen and (min-width: 1921px) {
  .lg_pb0 {
    padding-bottom: 0 !important;
  }
  .lg_pb10 {
    padding-bottom: 1rem !important;
  }
  .lg_pb15 {
    padding-bottom: 1.5rem !important;
  }
  .lg_pb20 {
    padding-bottom: 2rem !important;
  }
  .lg_pb25 {
    padding-bottom: 2.5rem !important;
  }
  .lg_pb30 {
    padding-bottom: 3rem !important;
  }
  .lg_pb40 {
    padding-bottom: 4rem !important;
  }
  .lg_pb50 {
    padding-bottom: 5rem !important;
  }
  .lg_pb60 {
    padding-bottom: 6rem !important;
  }
  .lg_pb70 {
    padding-bottom: 7rem !important;
  }
  .lg_pb80 {
    padding-bottom: 8rem !important;
  }
  .lg_pb90 {
    padding-bottom: 9rem !important;
  }
  .lg_pb100 {
    padding-bottom: 10rem !important;
  }
}
@media screen and (max-width: 767px) {
  .xs_ml0 {
    margin-left: 0 !important;
  }
}
/*# sourceMappingURL=style.css.map */