@charset "UTF-8";
/* Scss Document */
/* Scss Document */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

html {
  font-size: 62.5%; }

body {
  line-height: 1; }

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

ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

a {
  margin: 0;
  padding: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

/* change colours to suit your needs */
ins {
  background-color: #ff9;
  color: #000;
  text-decoration: none; }

/* change colours to suit your needs */
mark {
  background-color: #ff9;
  color: #000;
  font-style: italic;
  font-weight: bold; }

del {
  text-decoration: line-through; }

abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help; }

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

/* change border colour to suit your needs */
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0; }

input, select {
  vertical-align: middle; }

input, textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none; }

/* Scss Document */
/* Scss Document */
html {
  min-height: 100vh; }

body {
  min-height: 100vh;
  box-sizing: border-box;
  font-family: "ヒラギノ丸ゴ W5 JIS2004", "Hiragino Maru Gothic W5 JIS2004", "Yu Gothic medium", "A1 Gothic M", "Hiragino Kaku Gothic ProN", "sans-serif";
  color: #434343;
  background: #F5F6FD;
  font-size: 1.3rem;
  letter-spacing: 0.1em;
  line-height: 2;
  word-wrap: break-word;
  text-align: justify;
  text-justify: inter-ideograph;
  text-justify: inter-character; }
  @media (min-width: 375px) {
    body {
      font-size: calc( 1.3rem + ( 1vw - 3.75px ) * 0.1503759398 ); } }
  @media (min-width: 1040px) {
    body {
      font-size: 1.4rem; } }

.t-center {
  text-align: center; }

.t-left {
  text-align: left; }

.t-right {
  text-align: right; }

.sp {
  display: block; }
  @media screen and (min-width: 769px) {
    .sp {
      display: none; } }
  @media screen and (min-width: 861px) {
    .sp {
      display: none; } }

.tab {
  display: none; }
  @media screen and (min-width: 769px) {
    .tab {
      display: block; } }
  @media screen and (min-width: 861px) {
    .tab {
      display: block; } }
  @media screen and (min-width: 1041px) {
    .tab {
      display: none; } }

.sp-tab {
  display: block; }
  @media screen and (min-width: 769px) {
    .sp-tab {
      display: block; } }
  @media screen and (min-width: 861px) {
    .sp-tab {
      display: block; } }
  @media screen and (min-width: 1041px) {
    .sp-tab {
      display: none; } }

.pc-tab {
  display: none; }
  @media screen and (min-width: 769px) {
    .pc-tab {
      display: block; } }
  @media screen and (min-width: 861px) {
    .pc-tab {
      display: block; } }
  @media screen and (min-width: 1041px) {
    .pc-tab {
      display: block; } }

.pc {
  display: none; }
  @media screen and (min-width: 769px) {
    .pc {
      display: none; } }
  @media screen and (min-width: 861px) {
    .pc {
      display: none; } }
  @media screen and (min-width: 1041px) {
    .pc {
      display: inherit; } }

a, button {
  text-decoration: none;
  color: inherit;
  transition: .4s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  overflow: hidden; }

button {
  background-color: transparent;
  border: none;
  cursor: pointer;
  outline: none;
  padding: 0;
  appearance: none;
  font-family: "ヒラギノ丸ゴ W5 JIS2004", "Hiragino Maru Gothic W5 JIS2004", "Yu Gothic medium", "A1 Gothic M", "Hiragino Kaku Gothic ProN", "sans-serif";
  font-weight: bold;
  color: #fff; }

a[href*="tel:"] {
  display: block; }

.event-none {
  pointer-events: none !important; }

img {
  width: 100%;
  vertical-align: bottom; }

.inner {
  box-sizing: border-box;
  width: 100%;
  max-width: 1160px;
  margin: auto;
  padding: 0% 5.33% 0% 5.33%;
  box-sizing: border-box; }
  @media screen and (min-width: 769px) {
    .inner {
      padding: 0% 1.72% 0% 1.72%; } }
  @media screen and (min-width: 1240px) {
    .inner {
      padding: 0; } }

.s-inner {
  box-sizing: border-box;
  width: 100%;
  max-width: 980px;
  margin: auto;
  padding: 0% 5.33% 0% 5.33%; }
  @media screen and (min-width: 769px) {
    .s-inner {
      padding: 0% 1.72% 0% 1.72%; } }
  @media screen and (min-width: 1240px) {
    .s-inner {
      padding: 0; } }
  @media screen and (min-width: 980px) {
    .s-inner {
      padding: 0; } }

.ss-inner {
  box-sizing: border-box;
  width: 100%;
  max-width: 800px;
  margin: auto;
  padding: 0% 5.33% 0% 5.33%; }
  @media screen and (min-width: 769px) {
    .ss-inner {
      padding: 0% 1.72% 0% 1.72%; } }
  @media screen and (min-width: 1240px) {
    .ss-inner {
      padding: 0; } }
  @media screen and (min-width: 800px) {
    .ss-inner {
      padding: 0; } }

.mb-box {
  margin: 0% 0% 12.71% 0%; }

.cotents__bottom {
  margin-bottom: 20%; }

.no_data_txt {
  margin: 30px auto 40px;
  text-align: center; }

h1, h2, h3, h4 {
  font-weight: normal; }

p {
  font-size: 100%; }

address {
  font-style: normal; }

#contents {
  margin-top: 75px; }

.mb-10 {
  margin-bottom: 10px; }
.mb-15 {
  margin-bottom: 15px; }
.mb-20 {
  margin-bottom: 20px; }
.mb-25 {
  margin-bottom: 25px; }
.mb-30 {
  margin-bottom: 30px; }

.s-txt {
  font-size: 70%; }

.l-txt {
  font-size: 140%; }

.fs-10 {
  font-size: 1.0rem; }
.fs-11 {
  font-size: 1.1rem; }
.fs-12 {
  font-size: 1.2rem; }
.fs-13 {
  font-size: 1.3rem; }
.fs-14 {
  font-size: 1.4rem; }
.fs-15 {
  font-size: 1.5rem; }
.fs-16 {
  font-size: 1.6rem; }
.fs-17 {
  font-size: 1.7rem; }
.fs-18 {
  font-size: 1.8rem; }

::selection {
  color: #fff;
  background: #7A71AA; }

.en {
  font-family: "Roboto", Arial, Helvetica, sans-serif;
  font-weight: normal;
  letter-spacing: 0.1em; }

.num {
  font-family: "Roboto", Arial, Helvetica, sans-serif;
  letter-spacing: 0.1em; }

.mincho {
  font-family: "A1 Mincho", "Ryumin Medium KL", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif; }

.gothic {
  font-family: "ヒラギノ丸ゴ W5 JIS2004", "Hiragino Maru Gothic W5 JIS2004", "Yu Gothic medium", "A1 Gothic M", "Hiragino Kaku Gothic ProN", "sans-serif"; }

.gothic-m {
  font-family: "ヒラギノ丸ゴ W3 JIS2004", "Hiragino Maru Gothic W3 JIS2004", "Yu Gothic medium", "A1 Gothic M", "Hiragino Kaku Gothic ProN", "sans-serif"; }

.icon {
  margin-right: 5px; }

.attent {
  font-size: 1.1rem;
  letter-spacing: normal; }

.link {
  color: #4A3F8B;
  text-decoration: underline; }

.fit {
  object-fit: cover;
  object-position: center;
  font-family: "object-fit: cover; object-position: center;"; }

#ab-contact {
  position: relative; }
  #ab-contact .ab-contact__img {
    position: relative;
    border-radius: 5px;
    height: 195px;
    box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16);
    background: url("/img/about/about_contact.jpg") center right 35%/cover no-repeat; }
    #ab-contact .ab-contact__img::after {
      position: absolute;
      display: block;
      border-radius: 5px;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background: rgba(71, 60, 131, 0.8);
      content: ""; }
  #ab-contact .ab-contact__wp {
    position: absolute;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #fff;
    text-align: center; }
    #ab-contact .ab-contact__wp .ab-contact__ttl {
      margin-bottom: 15px;
      font-size: 1.6rem; }
      @media (min-width: 375px) {
        #ab-contact .ab-contact__wp .ab-contact__ttl {
          font-size: calc( 1.6rem + ( 1vw - 3.75px ) * 0.6611570248 ); } }
      @media (min-width: 980px) {
        #ab-contact .ab-contact__wp .ab-contact__ttl {
          font-size: 2rem; } }
    #ab-contact .ab-contact__wp .ab-contact__ttl-box {
      margin-bottom: 10px;
      line-height: normal; }
      #ab-contact .ab-contact__wp .ab-contact__ttl-box .ab-contact__txt {
        flex: 0 1 auto;
        width: auto;
        box-sizing: border-box;
        border-radius: 50px;
        margin-right: 10px;
        padding: 5px 10px;
        color: #DD4C00;
        background: #fff;
        font-size: 1.4rem; }
        @media (min-width: 375px) {
          #ab-contact .ab-contact__wp .ab-contact__ttl-box .ab-contact__txt {
            font-size: calc( 1.4rem + ( 1vw - 3.75px ) * 0.9917355372 ); } }
        @media (min-width: 980px) {
          #ab-contact .ab-contact__wp .ab-contact__ttl-box .ab-contact__txt {
            font-size: 2rem; } }
      #ab-contact .ab-contact__wp .ab-contact__ttl-box a {
        font-size: 3rem;
        letter-spacing: 0.08em; }
        @media (min-width: 375px) {
          #ab-contact .ab-contact__wp .ab-contact__ttl-box a {
            font-size: calc( 3rem + ( 1vw - 3.75px ) * 1.652892562 ); } }
        @media (min-width: 980px) {
          #ab-contact .ab-contact__wp .ab-contact__ttl-box a {
            font-size: 4rem; } }
    #ab-contact .ab-contact__wp .ab-contact__txt-box {
      font-size: 1.2rem; }
      @media (min-width: 375px) {
        #ab-contact .ab-contact__wp .ab-contact__txt-box {
          font-size: calc( 1.2rem + ( 1vw - 3.75px ) * 0.4958677686 ); } }
      @media (min-width: 980px) {
        #ab-contact .ab-contact__wp .ab-contact__txt-box {
          font-size: 1.5rem; } }

#ab-btn .ttl__wp {
  margin-bottom: 15px; }
  #ab-btn .ttl__wp h4 {
    color: #4A3F8B;
    font-size: 1.8rem;
    text-align: center; }
    @media (min-width: 375px) {
      #ab-btn .ttl__wp h4 {
        font-size: calc( 1.8rem + ( 1vw - 3.75px ) * 0.380952381 ); } }
    @media (min-width: 900px) {
      #ab-btn .ttl__wp h4 {
        font-size: 2rem; } }
#ab-btn .ab-btn__list li {
  margin-bottom: 15px; }
  #ab-btn .ab-btn__list li a {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 5px;
    background: #fff; }
    #ab-btn .ab-btn__list li a .ab-btn__list-img {
      position: absolute;
      top: 0;
      left: 0;
      width: 35%;
      height: 100%; }
    #ab-btn .ab-btn__list li a .ab-btn__list-box {
      margin: 0 0 0 auto;
      padding: 15px 20px 15px 0;
      width: 55%;
      line-height: normal; }
      #ab-btn .ab-btn__list li a .ab-btn__list-box .ab-btn__list-ttl {
        color: #4A3F8B;
        font-size: 1.5rem;
        letter-spacing: 0.06em;
        transition: .3s; }
        @media (min-width: 375px) {
          #ab-btn .ab-btn__list li a .ab-btn__list-box .ab-btn__list-ttl {
            font-size: calc( 1.5rem + ( 1vw - 3.75px ) * 0.5714285714 ); } }
        @media (min-width: 900px) {
          #ab-btn .ab-btn__list li a .ab-btn__list-box .ab-btn__list-ttl {
            font-size: 1.8rem; } }
      #ab-btn .ab-btn__list li a .ab-btn__list-box .ab-btn__list-txt {
        margin-bottom: 5px;
        font-size: 1.2rem;
        letter-spacing: normal;
        transition: .3s; }
        @media (min-width: 375px) {
          #ab-btn .ab-btn__list li a .ab-btn__list-box .ab-btn__list-txt {
            font-size: calc( 1.2rem + ( 1vw - 3.75px ) * 0.380952381 ); } }
        @media (min-width: 900px) {
          #ab-btn .ab-btn__list li a .ab-btn__list-box .ab-btn__list-txt {
            font-size: 1.4rem; } }
    #ab-btn .ab-btn__list li a .ab-btn__list-more {
      position: relative;
      padding-right: 10px;
      color: #4A3F8B;
      font-size: 1.3rem;
      text-align: right;
      transition: .3s; }
      @media (min-width: 375px) {
        #ab-btn .ab-btn__list li a .ab-btn__list-more {
          font-size: calc( 1.3rem + ( 1vw - 3.75px ) * 0.380952381 ); } }
      @media (min-width: 900px) {
        #ab-btn .ab-btn__list li a .ab-btn__list-more {
          font-size: 1.5rem; } }
      #ab-btn .ab-btn__list li a .ab-btn__list-more::before {
        position: absolute;
        width: 100%;
        top: 50%;
        transform: translateY(-50%);
        display: block;
        right: 0;
        width: 6px;
        height: 6px;
        transform: translateY(-50%) rotate(45deg);
        border-top: solid 1px #4A3F8B;
        border-right: solid 1px #4A3F8B;
        transition: .3s;
        content: ""; }
  #ab-btn .ab-btn__list li:first-child a .ab-btn__list-img {
    background: url("/img/about/list_01.jpg") center/cover no-repeat; }
  #ab-btn .ab-btn__list li:nth-child(2) a .ab-btn__list-img {
    background: url("/img/about/list_02.jpg") center/cover no-repeat; }
  #ab-btn .ab-btn__list li:nth-child(3) a .ab-btn__list-img {
    background: url("/img/about/list_03.jpg") center/cover no-repeat; }
  #ab-btn .ab-btn__list li:last-child a .ab-btn__list-img {
    background: url("/img/about/list_04.jpg") center/cover no-repeat; }

#ab-list .ab-list__list {
  padding: 35px 20px 0;
  border-top: solid 1px #707070; }
  #ab-list .ab-list__list li {
    margin-bottom: 30px; }
    #ab-list .ab-list__list li a {
      position: relative;
      display: block;
      overflow: hidden;
      border-radius: 5px;
      box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.21); }
      #ab-list .ab-list__list li a .ab-list__img {
        position: relative;
        height: 120px; }
        #ab-list .ab-list__list li a .ab-list__img::before {
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background: rgba(0, 0, 0, 0.5);
          transition: .3s;
          content: ""; }
      #ab-list .ab-list__list li a .ab-list__ttl {
        position: absolute;
        width: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        width: auto;
        color: #fff;
        font-size: 1.8rem;
        text-align: center;
        transition: .3s; }
        @media (min-width: 375px) {
          #ab-list .ab-list__list li a .ab-list__ttl {
            font-size: calc( 1.8rem + ( 1vw - 3.75px ) * 0.3305785124 ); } }
        @media (min-width: 980px) {
          #ab-list .ab-list__list li a .ab-list__ttl {
            font-size: 2rem; } }
        #ab-list .ab-list__list li a .ab-list__ttl::after {
          position: absolute;
          width: 100%;
          top: 50%;
          transform: translateY(-50%);
          display: block;
          right: -30px;
          width: 8px;
          height: 8px;
          transform: translateY(-50%) rotate(45deg);
          border-top: solid 1px #fff;
          border-right: solid 1px #fff;
          transition: .3s;
          content: ""; }
    #ab-list .ab-list__list li:first-child a .ab-list__img {
      background: url("/img/about/btn_about.jpg") top 0% left 0%/cover no-repeat; }
    #ab-list .ab-list__list li:nth-child(2) a .ab-list__img {
      background: url("/img/about/btn_proce.jpg") center/cover no-repeat; }
    #ab-list .ab-list__list li:last-child {
      margin-bottom: 0; }
      #ab-list .ab-list__list li:last-child a .ab-list__img {
        background: url("/img/about/btn_health.jpg") center/cover no-repeat; }

/*------------------------------
		769px以上
------------------------------*/
@media screen and (min-width: 769px) {
  #ab-contact .ab-contact__img {
    height: 180px; }
  #ab-contact .ab-contact__wp .ab-contact__ttl-box .ab-contact__txt {
    padding: 5px 15px; }
  #ab-contact .ab-contact__wp .ab-contact__txt-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center; }
    #ab-contact .ab-contact__wp .ab-contact__txt-box .ab-contact__time {
      margin-right: 20px; }

  #ab-btn .ttl__wp {
    margin-bottom: 50px; }
  #ab-btn .ab-btn__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    #ab-btn .ab-btn__list li {
      flex: 0 1 48%;
      width: 48%;
      max-width: 48%;
      margin-bottom: 35px; }
      #ab-btn .ab-btn__list li a .ab-btn__list-box .ab-btn__list-ttl {
        margin-bottom: 5px;
        letter-spacing: normal; }
      #ab-btn .ab-btn__list li a .ab-btn__list-box .ab-btn__list-txt {
        line-height: 1.5; }
      #ab-btn .ab-btn__list li a:hover {
        opacity: 1;
        background: #4A3F8B; }
        #ab-btn .ab-btn__list li a:hover .ab-btn__list-box .ab-btn__list-ttl {
          color: #fff; }
        #ab-btn .ab-btn__list li a:hover .ab-btn__list-box .ab-btn__list-txt {
          color: #fff; }
        #ab-btn .ab-btn__list li a:hover .ab-btn__list-more {
          color: #fff; }
          #ab-btn .ab-btn__list li a:hover .ab-btn__list-more::before {
            border-color: #fff; }
      #ab-btn .ab-btn__list li:nth-child(n+3) {
        margin-bottom: 0; }

  #ab-list .ab-list__list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 65px 0 0; }
    #ab-list .ab-list__list li {
      flex: 0 1 32%;
      width: 32%;
      max-width: 32%;
      margin-bottom: 0; }
      #ab-list .ab-list__list li a .ab-list__img {
        height: 200px; }
      #ab-list .ab-list__list li a .ab-list__ttl {
        width: 62%; }
        #ab-list .ab-list__list li a .ab-list__ttl::after {
          right: -20px; }
      #ab-list .ab-list__list li a:hover {
        opacity: 1; }
        #ab-list .ab-list__list li a:hover .ab-list__img::before {
          opacity: 0; }
        #ab-list .ab-list__list li a:hover .ab-list__ttl {
          color: #4A3F8B; }
          #ab-list .ab-list__list li a:hover .ab-list__ttl::after {
            border-color: #4A3F8B; } }
/*------------------------------
		861px以上
------------------------------*/
@media screen and (min-width: 861px) {
  a {
    transition: all .4s; }
    a:hover {
      opacity: .7; }

  a[href*="tel:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; }

  a[href*="fax:"] {
    pointer-events: none;
    cursor: default;
    text-decoration: none; }

  .mb-box {
    margin-bottom: 120px; }

  #ab-btn .ttl__wp {
    margin-bottom: 25px; } }
/*------------------------------
		1041px以上
------------------------------*/
@media screen and (min-width: 1041px) {
  #ab-contact .ab-contact__wp .ab-contact__ttl-box {
    margin-bottom: 10px; }

  #ab-btn {
    margin-bottom: 75px; }
    #ab-btn .ttl__wp {
      margin-bottom: 25px; }
    #ab-btn .ab-btn__list li a .ab-btn__list-img {
      width: 38%; }
    #ab-btn .ab-btn__list li a .ab-btn__list-box {
      width: 52%; }

  #ab-list .ab-list__list {
    padding-top: 70px; }
    #ab-list .ab-list__list li {
      flex: 0 1 32%;
      width: 32%;
      max-width: 32%;
      margin-bottom: 0; }
      #ab-list .ab-list__list li a .ab-list__ttl {
        width: 60%; } }
@media screen and (min-width: 1141px) {
  #contents {
    margin-top: 90px; } }
/*//////////////////////////////////////////////////

	header設定

//////////////////////////////////////////////////*/
.wi-1141 {
  display: none; }

#header {
  display: none;
  position: fixed;
  z-index: 999;
  top: 0;
  left: 0;
  width: 100%;
  height: 75px;
  background: #fff;
  transition: .4s; }
  #header .header__wrap {
    -webkit-box-pack: start;
    -webkit-justify-content: flex-start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    position: absolute;
    padding: 0% 4.26% 0% 4.26%;
    padding-top: 12px;
    box-sizing: border-box;
    width: 100%;
    z-index: 1;
    transition: 0.3s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden; }
  #header .header__logo {
    max-width: 135px; }
  #header .header__shop-logo {
    margin-left: 20px;
    color: #9D7E28;
    font-size: 1.2rem;
    line-height: normal; }
    #header .header__shop-logo .en {
      display: inline-block;
      margin-top: 5px;
      font-size: 1.6rem;
      letter-spacing: 0.1em;
      line-height: 1; }
  #header .header__menubtn {
    position: absolute;
    top: 0;
    right: 0;
    width: 70px;
    height: 75px; }
    #header .header__menubtn .header__menubtn-line {
      position: absolute;
      bottom: 30%;
      left: 50%;
      width: 35px;
      height: 20px;
      transform: translate(-50%, 0); }
      #header .header__menubtn .header__menubtn-line span {
        display: block;
        position: absolute;
        width: 100%;
        height: 1px;
        background: #4A3F8B;
        transition: .4s; }
        #header .header__menubtn .header__menubtn-line span:first-child {
          top: 0; }
        #header .header__menubtn .header__menubtn-line span:nth-child(2) {
          top: 50%;
          left: auto;
          right: 0;
          width: 80%;
          transform: translateY(-50%);
          transition: .4s;
          opacity: 1; }
        #header .header__menubtn .header__menubtn-line span:last-child {
          bottom: 0; }
  #header .header__nav {
    display: none;
    position: absolute;
    overflow: scroll;
    top: 75px;
    left: 0;
    width: 100%;
    height: calc(100vh - 75px);
    background: #F5F6FD;
    box-sizing: border-box;
    padding: 5.33% 5.33% 5.33% 5.33%; }
  #header .header__nav-list {
    margin-bottom: 20px; }
    #header .header__nav-list li {
      border-bottom: 1px solid #4A3F8B;
      line-height: 1.5; }
      #header .header__nav-list li a {
        display: block;
        padding: 15px 10px; }
  #header .header__nav-contact {
    text-align: center; }
    #header .header__nav-contact .header__nav-contact-txt {
      color: #fff;
      font-size: 1.3rem;
      text-align: center; }
      #header .header__nav-contact .header__nav-contact-txt a {
        display: inline-block;
        border-radius: 50px;
        padding: 2px 30px;
        background: #4A3F8B;
        font-size: 1.3rem;
        color: #FFF; }
    #header .header__nav-contact a {
      color: #DD4C00;
      font-size: 3rem;
      font-weight: bold;
      line-height: normal; }
      @media (min-width: 375px) {
        #header .header__nav-contact a {
          font-size: calc( 3rem + ( 1vw - 3.75px ) * -1.2738853503 ); } }
      @media (min-width: 1160px) {
        #header .header__nav-contact a {
          font-size: 2rem; } }
      #header .header__nav-contact a span {
        font-size: 1.5rem; }
        @media (min-width: 375px) {
          #header .header__nav-contact a span {
            font-size: calc( 1.5rem + ( 1vw - 3.75px ) * -0.2547770701 ); } }
        @media (min-width: 1160px) {
          #header .header__nav-contact a span {
            font-size: 1.3rem; } }
    #header .header__nav-contact .header__nav-contact-time {
      font-size: 1.1rem;
      letter-spacing: -.05em; }

.open {
  overflow: hidden; }
  .open #header .header__menubtn .header__menubtn-line span:first-child {
    top: 4px;
    transform: rotate(320deg); }
  .open #header .header__menubtn .header__menubtn-line span:nth-child(2) {
    opacity: 0; }
  .open #header .header__menubtn .header__menubtn-line span:last-child {
    bottom: 15px;
    transform: rotate(-320deg); }
  .open #header .header__menubtn .header__menubtn-txt {
    top: 45%;
    left: -50px;
    transform: translateY(-50%);
    font-size: 1.4rem; }
    .open #header .header__menubtn .header__menubtn-txt .open-txt {
      opacity: 0; }
    .open #header .header__menubtn .header__menubtn-txt .close-txt {
      opacity: 1; }

/*------------------------------
		861px以上
------------------------------*/
@media screen and (min-width: 769px) {
  #header .header__wrap {
    padding-top: 10px; }
  #header .header__nav-list li a:hover {
    opacity: 1;
    color: #fff;
    background: #4A3F8B; } }
/*------------------------------
		1041px以上
------------------------------*/
/*------------------------------
		1141px以上
------------------------------*/
@media screen and (min-width: 1141px) {
  .wi-1141 {
    display: inherit; }

  .sp-1141 {
    display: none; }

  #header {
    height: 90px; }
    #header .header__wrap {
      padding-top: 10px; }
    #header .header__logo {
      max-width: 155px; }
    #header .header__shop-logo {
      line-height: 1.5; }
    #header .header__menubtn {
      display: none; }
    #header .header__nav {
      display: block !important;
      overflow: inherit;
      padding: 0;
      z-index: 99;
      top: 50%;
      left: auto;
      right: 260px;
      transform: translateY(-50%);
      width: 50%;
      max-width: 740px;
      height: auto;
      background: transparent; }
    #header .header__nav-contact {
      position: absolute;
      top: 50%;
      right: -240px;
      transform: translateY(-50%);
      text-align: center; }
    #header .header__nav-list {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
      align-content: flex-start;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-align-content: flex-end;
      -ms-flex-line-pack: end;
      align-content: flex-end;
      margin-bottom: 0; }
      #header .header__nav-list li {
        flex: 0 1 auto;
        width: auto;
        position: relative;
        border: none; }
        #header .header__nav-list li a {
          padding: 7px 5px; }
          #header .header__nav-list li a:hover {
            background: transparent;
            color: #434343; }
          #header .header__nav-list li a::after {
            display: none; }
        #header .header__nav-list li:nth-child(n+5) {
          border: none; }
        #header .header__nav-list li:nth-child(odd) {
          border: none; }
        #header .header__nav-list li::after {
          position: absolute;
          width: 100%;
          left: 50%;
          transform: translateX(-50%);
          display: block;
          opacity: 0;
          border-radius: 100%;
          top: -5px;
          width: 6px;
          height: 6px;
          background: #DD4C00;
          content: "";
          transition: .4s; }
        #header .header__nav-list li:hover::after {
          opacity: 1; }
        #header .header__nav-list li.active::after {
          opacity: 1; }

  .open {
    overflow: auto; }

  .on #header .header__nav-list li.header__nav-menu .menu-wp-ttl::after {
    transform: translateX(-50%) rotate(135deg); } }
#header .header__nav-list li.header__nav-menu {
  position: relative; }
  #header .header__nav-list li.header__nav-menu .menu-wp {
    position: relative;
    transition: .3s; }
    #header .header__nav-list li.header__nav-menu .menu-wp:hover .menu-wp-ttl::after {
      transform: translateX(-50%) rotate(135deg); }
    #header .header__nav-list li.header__nav-menu .menu-wp:hover .menu-wp-list-outer {
      opacity: 1;
      pointer-events: auto; }
      #header .header__nav-list li.header__nav-menu .menu-wp:hover .menu-wp-list-outer .menu-wp-list {
        pointer-events: auto; }
        #header .header__nav-list li.header__nav-menu .menu-wp:hover .menu-wp-list-outer .menu-wp-list a:hover .menu-wp-list-img::before {
          background: #ABB1D9;
          box-shadow: 0px 0px 12px rgba(74, 63, 139, 0.34); }
    #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-ttl {
      display: block;
      padding: 7.5px 5px;
      cursor: pointer; }
      #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-ttl::after {
        position: absolute;
        width: 100%;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        width: 100%;
        top: 50%;
        transform: translateY(-50%);
        top: auto;
        bottom: 0;
        right: auto;
        display: block;
        right: 10px;
        transform: translateX(-50%) rotate(135deg);
        width: 4px;
        height: 4px;
        border-right: solid 1px #4A3F8B;
        border-top: solid 1px #4A3F8B;
        transition: .4s;
        content: ""; }
    #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list-outer {
      opacity: 0;
      position: absolute;
      top: 100%;
      left: -162px;
      width: 710px;
      padding: 40px 0 0;
      pointer-events: none;
      transition: .3s;
      cursor: pointer;
      pointer-events: none; }
      #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list-outer--s {
        left: -70px;
        width: 400px;
        padding-bottom: 0; }
        #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list-outer--s a {
          flex: 0 1 48%;
          width: 48%;
          max-width: 48%; }
        #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list-outer--s .layout__flex {
          justify-content: center; }
    #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list {
      box-sizing: border-box;
      position: relative;
      border-radius: 10px;
      padding: 20px;
      background: #F5F6FD;
      transition: .3s; }
      #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list--s {
        left: 100%;
        transform: translateX(-50%); }
      #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list::after {
        position: absolute;
        display: block;
        top: -18px;
        left: 30%;
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 20px 20px 20px;
        border-color: transparent transparent #f5f6fd transparent;
        content: ""; }
      #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a {
        flex: 0 1 24.5%;
        width: 24.5%;
        max-width: 24.5%;
        padding: 0;
        transition: .3s; }
        #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a:last-of-type {
          margin-bottom: 20px; }
        #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a .menu-wp-list-img {
          position: relative;
          margin: 20px auto 10px;
          width: 80%; }
          #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a .menu-wp-list-img::before {
            position: absolute;
            width: 100%;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            display: block;
            border-radius: 100%;
            width: calc(100% + 10px);
            height: calc(100% + 10px);
            background: #FFF;
            box-shadow: 0px 0px 12px rgba(255, 255, 255, 0.34);
            transition: .4s;
            content: ""; }
          #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a .menu-wp-list-img figure {
            position: relative;
            overflow: hidden;
            border-radius: 100%;
            z-index: 1; }
            #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a .menu-wp-list-img figure img {
              position: absolute;
              width: 100%;
              top: 50%;
              left: 50%;
              transform: translate(-50%, -50%);
              height: 100%; }
            #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a .menu-wp-list-img figure::after {
              display: block;
              padding-top: 100%;
              content: ""; }
        #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a .menu-con-ttl {
          font-size: 1.3rem;
          color: #4A3F8B;
          text-align: center;
          letter-spacing: normal; }
          @media (min-width: 375px) {
            #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a .menu-con-ttl {
              font-size: calc( 1.3rem + ( 1vw - 3.75px ) * 0.2547770701 ); } }
          @media (min-width: 1160px) {
            #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list a .menu-con-ttl {
              font-size: 1.5rem; } }
    #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list--m {
      width: 400px;
      padding-bottom: 0; }
      #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list--m a {
        flex: 0 1 48%;
        width: 48%;
        max-width: 48%; }
      #header .header__nav-list li.header__nav-menu .menu-wp .menu-wp-list--m .layout__flex {
        justify-content: center; }

@media screen and (min-width: 1200px) {
  #header .header__nav-list li.header__nav-menu .menu-wp-list::after {
    top: -28px;
    border-width: 0 30px 30px 30px; } }
/*//////////////////////////////////////////////////

	footer設定

//////////////////////////////////////////////////*/
.wi-1041 {
  display: none; }

#pageTop a {
  position: fixed;
  display: block;
  z-index: 99;
  border-radius: 50px;
  bottom: 20px;
  right: 20px;
  width: 50px;
  height: 50px;
  background: #4A3F8B; }
  #pageTop a::after {
    position: absolute;
    width: 100%;
    left: 50%;
    transform: translateX(-50%);
    display: block;
    transform: translateX(-50%) rotate(45deg);
    top: 40%;
    width: 15px;
    height: 15px;
    border-top: solid 2px #fff;
    border-left: solid 2px #fff;
    content: ""; }

#footer {
  position: relative;
  z-index: 2;
  border-radius: 30px 30px 0 0;
  margin-top: -50px;
  padding: 35px 0 25px;
  background: #fff;
  color: #4A3F8B; }
  #footer .footer__wrap {
    padding: 0 20px; }
  #footer .footer__adrss-wp {
    margin-bottom: 15px; }
    #footer .footer__adrss-wp .footer__isshinin {
      margin-bottom: 10px;
      padding-bottom: 10px;
      border-bottom: solid 1px #E2E2E2; }
    #footer .footer__adrss-wp .footer__logo {
      margin-bottom: 20px;
      width: 155px; }
    #footer .footer__adrss-wp .footer__adrss {
      font-size: 1.4rem;
      letter-spacing: .05em;
      line-height: 1.7; }
      @media (min-width: 375px) {
        #footer .footer__adrss-wp .footer__adrss {
          font-size: calc( 1.4rem + ( 1vw - 3.75px ) * 0.2547770701 ); } }
      @media (min-width: 1160px) {
        #footer .footer__adrss-wp .footer__adrss {
          font-size: 1.6rem; } }
    #footer .footer__adrss-wp .footer__mikumari {
      color: #9D7E28; }
      #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-name {
        font-size: 1.7rem;
        line-height: normal; }
        @media (min-width: 769px) {
          #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-name {
            font-size: calc( 1.7rem + ( 1vw - 7.69px ) * 0.7672634271 ); } }
        @media (min-width: 1160px) {
          #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-name {
            font-size: 2rem; } }
        #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-name span {
          display: inline-block;
          margin-left: 10px;
          font-size: 2.4rem; }
          @media (min-width: 769px) {
            #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-name span {
              font-size: calc( 2.4rem + ( 1vw - 7.69px ) * 1.0230179028 ); } }
          @media (min-width: 1160px) {
            #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-name span {
              font-size: 2.8rem; } }
      #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-adrss {
        font-size: 1.4rem; }
        @media (min-width: 769px) {
          #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-adrss {
            font-size: calc( 1.4rem + ( 1vw - 7.69px ) * 0.2557544757 ); } }
        @media (min-width: 1160px) {
          #footer .footer__adrss-wp .footer__mikumari .footer__mikumari-adrss {
            font-size: 1.5rem; } }
  #footer .footer__nav {
    margin-bottom: 20px; }
  #footer .footer__nav-list {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 30px;
    font-size: 1.4rem;
    position: relative; }
    @media (min-width: 375px) {
      #footer .footer__nav-list {
        font-size: calc( 1.4rem + ( 1vw - 3.75px ) * 0.2547770701 ); } }
    @media (min-width: 1160px) {
      #footer .footer__nav-list {
        font-size: 1.6rem; } }
    #footer .footer__nav-list li {
      flex: 0 1 48%;
      width: 48%;
      max-width: 48%; }
      #footer .footer__nav-list li:nth-of-type(even) .footer__list-nav-wp {
        left: -108%; }
      #footer .footer__nav-list li a {
        position: relative;
        display: block;
        padding: 10px; }
        #footer .footer__nav-list li a::after {
          position: absolute;
          width: 100%;
          top: 50%;
          transform: translateY(-50%);
          display: block;
          right: 5px;
          transform: translateY(-50%) rotate(45deg);
          width: 5px;
          height: 5px;
          border-top: solid 1px #4A3F8B;
          border-right: solid 1px #4A3F8B;
          content: ""; }
      #footer .footer__nav-list li .footer__nav-ttl {
        position: relative;
        padding: 10px;
        cursor: pointer; }
        #footer .footer__nav-list li .footer__nav-ttl::after {
          display: none; }
        #footer .footer__nav-list li .footer__nav-ttl .footer__nav-arrow {
          position: absolute;
          width: 100%;
          top: 50%;
          transform: translateY(-50%);
          right: 5px;
          width: 7px;
          height: 7px; }
          #footer .footer__nav-list li .footer__nav-ttl .footer__nav-arrow::before, #footer .footer__nav-list li .footer__nav-ttl .footer__nav-arrow::after {
            position: absolute;
            width: 100%;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            display: block;
            background: #4A3F8B;
            transition: .4s;
            content: ""; }
          #footer .footer__nav-list li .footer__nav-ttl .footer__nav-arrow::before {
            width: 100%;
            height: 1px; }
          #footer .footer__nav-list li .footer__nav-ttl .footer__nav-arrow::after {
            width: 1px;
            height: 100%; }
        #footer .footer__nav-list li .footer__nav-ttl.active .footer__nav-arrow::after {
          transform: translate(-50%, -50%) rotate(90deg); }
      #footer .footer__nav-list li .footer__list-nav-wp {
        display: none;
        position: relative;
        left: 0;
        width: calc(100vw - calc(40px + 10.66vw));
        box-sizing: border-box; }
      #footer .footer__nav-list li .footer__list-nav {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 0 auto;
        border-top: 1px solid #4A3F8B; }
        #footer .footer__nav-list li .footer__list-nav a {
          flex: 0 1 48%;
          width: 48%;
          max-width: 48%;
          box-sizing: border-box;
          line-height: normal;
          margin: auto 0; }
      #footer .footer__nav-list li.footer__list {
        border-top: 1px solid #4A3F8B;
        display: none;
        flex: 0 1 100%;
        width: 100%;
        max-width: 100%;
        border-top: solid 1px #4A3F8B; }
        #footer .footer__nav-list li.footer__list a {
          flex: 0 1 48%;
          width: 48%;
          max-width: 48%;
          box-sizing: border-box;
          line-height: normal;
          margin: auto 0; }
  #footer .footer__contact {
    box-sizing: border-box;
    margin-bottom: 20px;
    padding: 20px 15px 15px;
    border-radius: 5px;
    background: #F5F6FD;
    text-align: center; }
    #footer .footer__contact .footer__contact-mail {
      margin-bottom: 10px; }
    #footer .footer__contact .footer__contact-ttl {
      margin-bottom: 5px;
      font-size: 1.6rem; }
    #footer .footer__contact .footer__contact-tel {
      font-size: 2.4rem;
      line-height: normal;
      letter-spacing: 0.08em; }
      #footer .footer__contact .footer__contact-tel span {
        font-size: 1.3rem;
        font-weight: bold; }
    #footer .footer__contact .footer__contact-time {
      color: #434343;
      letter-spacing: .05em;
      margin-top: 5px; }
    #footer .footer__contact .footer__contact-btn .btn a {
      padding: 10px 0; }

.copyright {
  color: #434343;
  font-size: 1.3rem;
  text-align: center;
  letter-spacing: normal; }
  @media (min-width: 375px) {
    .copyright {
      font-size: calc( 1.3rem + ( 1vw - 3.75px ) * -0.3007518797 ); } }
  @media (min-width: 1040px) {
    .copyright {
      font-size: 1.1rem; } }

/*------------------------------
		769px以上
------------------------------*/
@media screen and (min-width: 769px) {
  #pageTop {
    bottom: 2%;
    right: 2%; }

  #footer {
    border-radius: 50px 50px 0 0; }
    #footer .footer__flex {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
      align-content: flex-start;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between; }
    #footer .footer__adrss-wp {
      flex: 0 1 35%;
      width: 35%;
      max-width: 35%;
      margin-bottom: 0; }
      #footer .footer__adrss-wp .footer__isshinin {
        margin-bottom: 15px;
        padding-bottom: 15px; }
      #footer .footer__adrss-wp .footer__logo {
        margin-bottom: 30px;
        width: 220px; }
    #footer .footer__right-wp {
      flex: 0 1 60%;
      width: 60%;
      max-width: 60%; }
    #footer .footer__nav {
      margin-bottom: 30px; }
    #footer .footer__nav-list {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
      align-content: flex-start;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-pack: end;
      -webkit-justify-content: flex-end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      margin-top: 0;
      margin-bottom: 0;
      padding: 0; }
      #footer .footer__nav-list li {
        flex: 0 1 33.333%;
        width: 33.333%;
        max-width: 33.333%; }

  .copyright {
    letter-spacing: 0.1em; }

  #footer .footer__nav-list li:nth-of-type(2) .footer__list-nav-wp, #footer .footer__nav-list li:nth-of-type(5) .footer__list-nav-wp {
    left: -100%; }
  #footer .footer__nav-list li:nth-of-type(3n) .footer__list-nav-wp {
    left: -200%; }
  #footer .footer__nav-list li .footer__list-nav-wp {
    left: 0;
    width: calc(calc(100vw - calc(40px + 3.38vw))*0.6); }
    #footer .footer__nav-list li .footer__list-nav-wp .footer__list-nav {
      justify-content: flex-start; }
      #footer .footer__nav-list li .footer__list-nav-wp .footer__list-nav a {
        flex: 0 1 33.333%;
        width: 33.333%;
        max-width: 33.333%; } }
/*------------------------------
		961px以上
------------------------------*/
/*------------------------------
		1041px以上
------------------------------*/
@media screen and (min-width: 1041px) {
  .wi-1041 {
    display: inherit; }

  #footer {
    border-radius: 80px 80px 0 0;
    margin-top: -80px;
    padding: 60px 0 40px; }
    #footer .footer__adrss-wp {
      flex: 0 1 25%;
      width: 25%;
      max-width: 25%; }
    #footer .footer__right-wp {
      flex: 0 1 70%;
      width: 70%;
      max-width: 70%; }
    #footer .footer__nav-list li {
      flex: 0 1 auto;
      width: auto;
      max-width: none; }
      #footer .footer__nav-list li a {
        padding: 5px 10px; }
        #footer .footer__nav-list li a::after {
          display: none; }
      #footer .footer__nav-list li .footer__nav-ttl {
        padding: 5px 10px; }
        #footer .footer__nav-list li .footer__nav-ttl .footer__nav-arrow {
          display: none; }
      #footer .footer__nav-list li .footer__list-nav-wp {
        display: block; }
      #footer .footer__nav-list li .footer__list-nav {
        display: block;
        width: 100%;
        border: none; }
        #footer .footer__nav-list li .footer__list-nav a {
          flex: 0 1 100%;
          width: 100%;
          max-width: 100%;
          position: relative;
          padding: 0 0 0 20px;
          font-size: 1.4rem; }
          #footer .footer__nav-list li .footer__list-nav a::before {
            position: absolute;
            width: 100%;
            top: 50%;
            transform: translateY(-50%);
            display: block;
            left: 10px;
            width: 8px;
            height: 1px;
            background: #4A3F8B;
            content: ""; }
          #footer .footer__nav-list li .footer__list-nav a.cymatics {
            line-height: normal; }
            #footer .footer__nav-list li .footer__list-nav a.cymatics::before {
              top: 9px;
              transform: none; }
      #footer .footer__nav-list li.footer__list {
        display: block; }
      #footer .footer__nav-list li:nth-child(1) {
        order: 1; }
      #footer .footer__nav-list li:nth-child(2) {
        order: 2; }
      #footer .footer__nav-list li:nth-child(3) {
        order: 4; }
      #footer .footer__nav-list li:nth-child(4) {
        order: 6; }
      #footer .footer__nav-list li:nth-child(5) {
        order: 3; }
      #footer .footer__nav-list li:nth-child(6) {
        order: 5; }
      #footer .footer__nav-list li:nth-child(7), #footer .footer__nav-list li:nth-child(8) {
        display: none; }
    #footer .footer__contact {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
      align-content: flex-start;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-align: end;
      -webkit-align-items: flex-end;
      -ms-flex-align: end;
      align-items: flex-end;
      margin: 0 0 0 auto;
      padding: 15px 20px 15px 35px;
      max-width: 565px;
      text-align: left; }
      #footer .footer__contact .footer__contact-mail {
        flex: 0 1 55%;
        width: 55%;
        max-width: 55%;
        margin-bottom: 0; }
      #footer .footer__contact .footer__contact-btn {
        flex: 0 1 45%;
        width: 45%;
        max-width: 45%;
        margin-bottom: 10px; }
        #footer .footer__contact .footer__contact-btn .btn a {
          margin: 0 0 0 auto;
          padding: 10px 0; }

  #footer .footer__nav-list li:nth-of-type(2) .footer__list-nav-wp, #footer .footer__nav-list li:nth-of-type(5) .footer__list-nav-wp {
    left: auto; }
  #footer .footer__nav-list li:nth-of-type(3n) .footer__list-nav-wp {
    left: auto; }
  #footer .footer__nav-list li .footer__list-nav-wp {
    left: 0;
    width: 100%; }
    #footer .footer__nav-list li .footer__list-nav-wp .footer__list-nav a {
      flex: 0 1 100%;
      width: 100%;
      max-width: 100%;
      margin-bottom: 5px; }
      #footer .footer__nav-list li .footer__list-nav-wp .footer__list-nav a:last-of-type {
        margin-bottom: 0; }
    #footer .footer__nav-list li .footer__list-nav-wp .footer__list-nav .sp-tab {
      display: none; } }
@media screen and (min-width: 1100px) {
  #footer .footer__adrss-wp {
    flex: 0 1 35%;
    width: 35%;
    max-width: 35%;
    max-width: 345px; }
    #footer .footer__adrss-wp .footer__adrss .pc-tab {
      display: none; }
  #footer .footer__right-wp {
    flex: 0 1 66%;
    width: 66%;
    max-width: 66%; }

  .copyright {
    margin-top: -20px; } }
@media screen and (min-width: 1300px) {
  #footer .footer__nav-list li a {
    padding: 5px 15px; }
  #footer .footer__nav-list li .footer__nav-ttl {
    padding: 5px 15px; }
  #footer .footer__nav-list li .footer__list-nav a {
    padding: 0 0 0 25px; }
    #footer .footer__nav-list li .footer__list-nav a::before {
      left: 15px; }
    #footer .footer__nav-list li .footer__list-nav a.cymatics {
      line-height: normal; }
      #footer .footer__nav-list li .footer__list-nav a.cymatics::before {
        top: 9px;
        transform: none; } }
/* Scss Document */
/*------------------------------
		下層タイトル
------------------------------*/
#title {
  position: relative;
  height: 150px; }
  #title .title__wp {
    position: absolute;
    box-sizing: border-box;
    bottom: -1px;
    left: 0;
    border-radius: 0 50px 0 0;
    width: calc(100% - 40px);
    max-width: 680px;
    height: 70px;
    background: #F5F6FD; }
    #title .title__wp h3 {
      position: absolute;
      display: inline-block;
      top: 50%;
      left: 40px;
      color: #4A3F8B;
      letter-spacing: 2px;
      border-bottom: 2px solid #F5F6FD;
      font-size: 2.4rem; }
      @media (min-width: 375px) {
        #title .title__wp h3 {
          font-size: calc( 2.4rem + ( 1vw - 3.75px ) * 0.7453416149 ); } }
      @media (min-width: 1180px) {
        #title .title__wp h3 {
          font-size: 3rem; } }
      #title .title__wp h3::after {
        position: absolute;
        width: 100%;
        left: 50%;
        transform: translateX(-50%);
        display: block;
        bottom: -10px;
        width: 60px;
        height: 1px;
        background: #4A3F8B;
        content: ""; }

/* ページャー */
#pager .pager_wrap {
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: auto;
  max-width: 420px; }
  #pager .pager_wrap .pager__btn-box {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex: 0 1 auto;
    width: auto;
    box-sizing: border-box;
    border-radius: 50px;
    padding: 10px 20px;
    background: #fff;
    margin: 0 22px; }
    #pager .pager_wrap .pager__btn-box .pager__btn a {
      position: relative;
      display: block;
      padding: 0 15px;
      height: 30px;
      color: #4A3F8B;
      text-align: center; }
      #pager .pager_wrap .pager__btn-box .pager__btn a p {
        position: absolute;
        width: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 1; }
      #pager .pager_wrap .pager__btn-box .pager__btn a::after {
        position: absolute;
        width: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        display: block;
        border-radius: 50px;
        width: 25px;
        height: 25px;
        background: #4A3F8B;
        opacity: 0;
        transition: .4s;
        content: ""; }
    #pager .pager_wrap .pager__btn-box .pager__btn.active a {
      color: #fff; }
      #pager .pager_wrap .pager__btn-box .pager__btn.active a::after {
        opacity: 1; }
  #pager .pager_wrap .pager__btn-arrow {
    flex: 0 1 auto;
    width: auto; }
    #pager .pager_wrap .pager__btn-arrow a {
      position: relative;
      display: block;
      border-radius: 50px;
      width: 50px;
      height: 50px;
      background: #fff; }
      #pager .pager_wrap .pager__btn-arrow a::before {
        position: absolute;
        width: 100%;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        display: block;
        width: 5px;
        height: 5px;
        border-top: solid 2px #4A3F8B;
        content: ""; }
    #pager .pager_wrap .pager__btn-arrow.prev a::before {
      transform: translate(-50%, -50%) rotate(-45deg);
      border-left: solid 2px #4A3F8B; }
    #pager .pager_wrap .pager__btn-arrow.next a::before {
      transform: translate(-50%, -50%) rotate(45deg);
      border-right: solid 2px #4A3F8B; }

/*------------------------------
		ボタン
------------------------------*/
.btn a, .btn button, .btn .btn__input, .btn input {
  display: block;
  margin: auto;
  padding: 20px 0;
  width: 90%;
  max-width: 295px;
  background: #4A3F8B;
  border: solid 1px #4A3F8B;
  color: #fff;
  box-sizing: border-box;
  border-radius: 50px;
  font-size: 1.6rem;
  text-align: center;
  line-height: 1.5; }
.btn .btn__input {
  transition: .3s;
  padding: 0; }
  .btn .btn__input input {
    width: 100%;
    padding: 25px 0;
    color: #fff; }

/*------------------------------
　　移動時のtopの隙間
------------------------------*/
.move-top {
  padding-top: 90px;
  margin-top: -90px; }

/*------------------------------
		お問い合わせ
------------------------------*/
.contact {
  position: relative;
  z-index: 1;
  padding: 30px 0 80px;
  background: url("/img/common/bg_contact.jpg") center/cover no-repeat;
  color: #fff;
  text-align: center; }
  .contact .contact__ttl {
    font-size: 1.8rem;
    margin-bottom: 5px; }
    @media (min-width: 375px) {
      .contact .contact__ttl {
        font-size: calc( 1.8rem + ( 1vw - 3.75px ) * 0.2547770701 ); } }
    @media (min-width: 1160px) {
      .contact .contact__ttl {
        font-size: 2rem; } }
  .contact .contact__tel {
    font-size: 3rem;
    text-align: center; }
    @media (min-width: 375px) {
      .contact .contact__tel {
        font-size: calc( 3rem + ( 1vw - 3.75px ) * 2.5477707006 ); } }
    @media (min-width: 1160px) {
      .contact .contact__tel {
        font-size: 5rem; } }
    .contact .contact__tel p {
      position: relative;
      display: inline-block;
      padding-left: 40px; }
      .contact .contact__tel p i {
        position: absolute;
        width: 100%;
        top: 50%;
        transform: translateY(-50%);
        left: 0;
        z-index: 1;
        width: auto;
        color: #DD4C00;
        font-size: 2rem; }
        @media (min-width: 375px) {
          .contact .contact__tel p i {
            font-size: calc( 2rem + ( 1vw - 3.75px ) * 0.7643312102 ); } }
        @media (min-width: 1160px) {
          .contact .contact__tel p i {
            font-size: 2.6rem; } }
        .contact .contact__tel p i::after {
          position: absolute;
          width: 100%;
          top: 50%;
          left: 50%;
          transform: translate(-50%, -50%);
          display: block;
          border-radius: 100%;
          z-index: -1;
          width: 40px;
          height: 40px;
          background: #fff;
          content: ""; }
  .contact .contact__con-wp {
    margin: auto;
    width: 80%;
    max-width: 300px;
    text-align: left; }
    .contact .contact__con-wp .contact__con-txt {
      display: inline-block;
      margin-bottom: 5px;
      font-size: 1.4rem; }
      @media (min-width: 375px) {
        .contact .contact__con-wp .contact__con-txt {
          font-size: calc( 1.4rem + ( 1vw - 3.75px ) * 0.2547770701 ); } }
      @media (min-width: 1160px) {
        .contact .contact__con-wp .contact__con-txt {
          font-size: 1.6rem; } }
      .contact .contact__con-wp .contact__con-txt span {
        display: inline-block;
        box-sizing: border-box;
        border-radius: 50px;
        margin-right: 10px;
        padding: 5px;
        width: 80px;
        background: #fff;
        color: #DD4C00;
        font-size: 1.3rem;
        text-align: center;
        line-height: 1; }
        @media (min-width: 375px) {
          .contact .contact__con-wp .contact__con-txt span {
            font-size: calc( 1.3rem + ( 1vw - 3.75px ) * 0.2547770701 ); } }
        @media (min-width: 1160px) {
          .contact .contact__con-wp .contact__con-txt span {
            font-size: 1.5rem; } }
      .contact .contact__con-wp .contact__con-txt:last-child {
        margin-bottom: 0; }
  .contact::before {
    position: absolute;
    display: block;
    z-index: -1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.4);
    content: ""; }

/*------------------------------
		769px以上
------------------------------*/
@media screen and (min-width: 769px) {
  /*------------------------------
  		下層タイトル
  ------------------------------*/
  #title {
    height: 250px; }
    #title .title__wp {
      border-radius: 0 70px 0 0;
      height: 150px; }
      #title .title__wp h3::after {
        width: 60px; }

  /* ページャー */
  #pager .pager_wrap .pager__btn-box {
    padding: 10px 30px; }
    #pager .pager_wrap .pager__btn-box .pager__btn a {
      margin: 0 5px;
      padding: 0 15px;
      height: 40px; }
      #pager .pager_wrap .pager__btn-box .pager__btn a::after {
        width: 30px;
        height: 30px; }
      #pager .pager_wrap .pager__btn-box .pager__btn a:hover {
        opacity: 1;
        color: #fff; }
        #pager .pager_wrap .pager__btn-box .pager__btn a:hover::after {
          opacity: 1; }
    #pager .pager_wrap .pager__btn-box .pager__btn.active a {
      color: #fff; }
      #pager .pager_wrap .pager__btn-box .pager__btn.active a::after {
        opacity: 1; }
  #pager .pager_wrap .pager__btn-arrow {
    flex: 0 1 auto;
    width: auto; }
    #pager .pager_wrap .pager__btn-arrow a {
      width: 55px;
      height: 55px; }
      #pager .pager_wrap .pager__btn-arrow a::before {
        width: 8px;
        height: 8px;
        border-width: 3px !important; }
      #pager .pager_wrap .pager__btn-arrow a:hover {
        opacity: 1;
        background: #4A3F8B; }
        #pager .pager_wrap .pager__btn-arrow a:hover::before {
          border-color: #fff; }

  /*------------------------------
          ボタン
  ------------------------------*/
  .btn a, .btn button, .btn .btn__input, .btn input {
    padding: 20px 0;
    max-width: 280px;
    color: #4A3F8B;
    background: #fff;
    border-color: #fff; }
    .btn a:hover, .btn button:hover, .btn .btn__input:hover, .btn input:hover {
      opacity: 1;
      background: #4A3F8B;
      color: #fff;
      border-color: #4A3F8B; }
  .btn .btn__input {
    padding: 0; }
    .btn .btn__input input {
      padding: 35px 0;
      cursor: pointer; }
  .btn.btn_2 a {
    color: #fff;
    background: #4A3F8B;
    border-color: #4A3F8B; }
    .btn.btn_2 a:hover {
      background: #fff;
      color: #4A3F8B; }

  /*------------------------------
  	お問い合わせ
  ------------------------------*/
  .contact {
    padding: 60px 0 100px; }
    .contact .contact__tel p {
      padding-left: 60px; }
      .contact .contact__tel p i::before {
        display: block;
        transform: translate(5%, 5%); }
      .contact .contact__tel p i::after {
        width: 50px;
        height: 50px; }
    .contact .contact__con-wp {
      display: -webkit-box;
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -webkit-flex-flow: row wrap;
      -ms-flex-flow: row wrap;
      flex-flow: row wrap;
      -webkit-align-content: flex-start;
      -ms-flex-line-pack: start;
      align-content: flex-start;
      -webkit-box-pack: justify;
      -webkit-justify-content: space-between;
      -ms-flex-pack: justify;
      justify-content: space-between;
      -webkit-box-pack: center;
      -webkit-justify-content: center;
      -ms-flex-pack: center;
      justify-content: center;
      width: 75%;
      max-width: 550px; }
      .contact .contact__con-wp .contact__con-txt {
        flex: 0 1 auto;
        width: auto; }
        .contact .contact__con-wp .contact__con-txt span {
          width: 90px; }
        .contact .contact__con-wp .contact__con-txt:last-child {
          margin-left: 20px;
          margin-bottom: 0; } }
/*------------------------------
		1041px以上
------------------------------*/
@media screen and (min-width: 861px) {
  /*------------------------------
  		下層タイトル
  ------------------------------*/
  #title .title__wp h3 {
    left: 23.75%; } }
/*------------------------------
		1281px以上
------------------------------*/
@media screen and (min-width: 1041px) {
  /*------------------------------
  	お問い合わせ
  ------------------------------*/
  .contact {
    padding: 60px 0 150px; } }
@media screen and (min-width: 1071px) {
  /*------------------------------
    移動時のtopの隙間
  ------------------------------*/
  .move-top {
    padding-top: 110px;
    margin-top: -110px; } }
input[type="name"],
input[type="num"],
input[type="text"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="email"] {
  width: 100%;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #797979;
  border-radius: 0;
  outline: none;
  font-family: "ヒラギノ丸ゴ W5 JIS2004", "Hiragino Maru Gothic W5 JIS2004", "Yu Gothic medium", "A1 Gothic M", "Hiragino Kaku Gothic ProN", "sans-serif"; }
  input[type="name"].error,
  input[type="num"].error,
  input[type="text"].error,
  input[type="password"].error,
  input[type="number"].error,
  input[type="tel"].error,
  input[type="url"].error,
  input[type="email"].error {
    border-color: #d12610;
    box-shadow: 0 0 3px rgba(209, 38, 16, 0.5); }
  input[type="name"].col-1,
  input[type="num"].col-1,
  input[type="text"].col-1,
  input[type="password"].col-1,
  input[type="number"].col-1,
  input[type="tel"].col-1,
  input[type="url"].col-1,
  input[type="email"].col-1 {
    width: calc(100% / 12 * 1); }
  input[type="name"].col-2,
  input[type="num"].col-2,
  input[type="text"].col-2,
  input[type="password"].col-2,
  input[type="number"].col-2,
  input[type="tel"].col-2,
  input[type="url"].col-2,
  input[type="email"].col-2 {
    width: calc(100% / 12 * 2); }
  input[type="name"].col-3,
  input[type="num"].col-3,
  input[type="text"].col-3,
  input[type="password"].col-3,
  input[type="number"].col-3,
  input[type="tel"].col-3,
  input[type="url"].col-3,
  input[type="email"].col-3 {
    width: calc(100% / 12 * 3); }
  input[type="name"].col-4,
  input[type="num"].col-4,
  input[type="text"].col-4,
  input[type="password"].col-4,
  input[type="number"].col-4,
  input[type="tel"].col-4,
  input[type="url"].col-4,
  input[type="email"].col-4 {
    width: calc(100% / 12 * 4); }
  input[type="name"].col-5,
  input[type="num"].col-5,
  input[type="text"].col-5,
  input[type="password"].col-5,
  input[type="number"].col-5,
  input[type="tel"].col-5,
  input[type="url"].col-5,
  input[type="email"].col-5 {
    width: calc(100% / 12 * 5); }
  input[type="name"].col-6,
  input[type="num"].col-6,
  input[type="text"].col-6,
  input[type="password"].col-6,
  input[type="number"].col-6,
  input[type="tel"].col-6,
  input[type="url"].col-6,
  input[type="email"].col-6 {
    width: calc(100% / 12 * 6); }
  input[type="name"].col-7,
  input[type="num"].col-7,
  input[type="text"].col-7,
  input[type="password"].col-7,
  input[type="number"].col-7,
  input[type="tel"].col-7,
  input[type="url"].col-7,
  input[type="email"].col-7 {
    width: calc(100% / 12 * 7); }
  input[type="name"].col-8,
  input[type="num"].col-8,
  input[type="text"].col-8,
  input[type="password"].col-8,
  input[type="number"].col-8,
  input[type="tel"].col-8,
  input[type="url"].col-8,
  input[type="email"].col-8 {
    width: calc(100% / 12 * 8); }
  input[type="name"].col-9,
  input[type="num"].col-9,
  input[type="text"].col-9,
  input[type="password"].col-9,
  input[type="number"].col-9,
  input[type="tel"].col-9,
  input[type="url"].col-9,
  input[type="email"].col-9 {
    width: calc(100% / 12 * 9); }
  input[type="name"].col-10,
  input[type="num"].col-10,
  input[type="text"].col-10,
  input[type="password"].col-10,
  input[type="number"].col-10,
  input[type="tel"].col-10,
  input[type="url"].col-10,
  input[type="email"].col-10 {
    width: calc(100% / 12 * 10); }
  input[type="name"].col-11,
  input[type="num"].col-11,
  input[type="text"].col-11,
  input[type="password"].col-11,
  input[type="number"].col-11,
  input[type="tel"].col-11,
  input[type="url"].col-11,
  input[type="email"].col-11 {
    width: calc(100% / 12 * 11); }
  input[type="name"].col-12,
  input[type="num"].col-12,
  input[type="text"].col-12,
  input[type="password"].col-12,
  input[type="number"].col-12,
  input[type="tel"].col-12,
  input[type="url"].col-12,
  input[type="email"].col-12 {
    width: 100%; }

textarea {
  width: 100%;
  height: 30vw;
  max-height: 200px;
  padding: 10px;
  box-sizing: border-box;
  border: 1px solid #797979;
  border-radius: 0;
  outline: none;
  font-family: "ヒラギノ丸ゴ W5 JIS2004", "Hiragino Maru Gothic W5 JIS2004", "Yu Gothic medium", "A1 Gothic M", "Hiragino Kaku Gothic ProN", "sans-serif"; }

select {
  width: 100%;
  padding: 10px;
  background: #fff;
  background-image: none;
  border: 1px solid #797979;
  cursor: pointer;
  font-family: "ヒラギノ丸ゴ W5 JIS2004", "Hiragino Maru Gothic W5 JIS2004", "Yu Gothic medium", "A1 Gothic M", "Hiragino Kaku Gothic ProN", "sans-serif";
  color: #4A3F8B; }
  select.selected {
    color: #4A3F8B; }
  select.col-1 {
    width: calc(100% / 12 * 1); }
  select.col-2 {
    width: calc(100% / 12 * 2); }
  select.col-3 {
    width: calc(100% / 12 * 3); }
  select.col-4 {
    width: calc(100% / 12 * 4); }
  select.col-5 {
    width: calc(100% / 12 * 5); }
  select.col-6 {
    width: calc(100% / 12 * 6); }
  select.col-7 {
    width: calc(100% / 12 * 7); }
  select.col-8 {
    width: calc(100% / 12 * 8); }
  select.col-9 {
    width: calc(100% / 12 * 9); }
  select.col-10 {
    width: calc(100% / 12 * 10); }
  select.col-11 {
    width: calc(100% / 12 * 11); }
  select.col-12 {
    width: 100%; }

.parts-selectbox {
  position: relative; }
  .parts-selectbox::after {
    position: absolute;
    content: "";
    top: 35%;
    right: 10px;
    width: 5px;
    height: 5px;
    border-bottom: solid 2px #4A3F8B;
    border-right: solid 2px #4A3F8B;
    transform: rotate(45deg); }
  .parts-selectbox select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none; }
    .parts-selectbox select::-ms-expand {
      display: none; }

.hissu {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px;
  padding: 2px 6px;
  line-height: 1;
  font-size: 1.0rem;
  font-weight: normal;
  color: #fff;
  background: #d12610;
  border-radius: 2px; }

.state_message {
  margin: 40px auto;
  text-align: center; }
  .state_message .class-ng {
    padding: 10px;
    color: #d12610;
    font-weight: bold;
    border: 2px solid #d12610;
    background: #ffe0e0; }
  .state_message .class-ok {
    padding: 10px;
    color: #5bb75b;
    font-weight: bold;
    border: 2px solid #5bb75b;
    background: #e2ffe2; }
  .state_message .descript {
    margin: 15px auto 30px;
    text-align: left; }

#form {
  margin-bottom: 40px; }

.form__ttl {
  margin-bottom: 5px;
  font-size: 1.6rem; }

.form__txt {
  padding: 10px;
  background: #fdfdfb;
  color: #676767; }

.form__box {
  margin-bottom: 20px; }

.input__item {
  margin-right: 12px;
  display: inline-block;
  vertical-align: middle; }

.check {
  display: block;
  height: 30px; }

.checkbox-input, .radio-input {
  position: absolute;
  opacity: 0;
  height: 1px;
  width: 1px;
  -webkit-appearance: none;
  appearance: none; }

.checkbox-parts, .radio-parts {
  padding-left: 25px;
  position: relative;
  line-height: 1.3; }

.checkbox-parts:before {
  content: "";
  display: block;
  position: absolute;
  top: -2px;
  left: 0;
  width: 20px;
  height: 20px;
  box-sizing: border-box;
  border: 1px solid #707070;
  background: #fff;
  cursor: pointer; }

.checkbox-input:checked + .checkbox-parts:before {
  background: #4A3F8B; }
.checkbox-input:checked + .checkbox-parts:after {
  content: "";
  display: block;
  position: absolute;
  top: -1px;
  left: 6px;
  width: 6px;
  height: 10px;
  transform: rotate(40deg);
  border-bottom: 3px solid #fff;
  border-right: 3px solid #fff; }

.radio-parts:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 15px;
  height: 15px;
  box-sizing: border-box;
  border: 1px solid #707070;
  background: #fff;
  border-radius: 50%;
  cursor: pointer; }

.radio-input:checked + .radio-parts:after {
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 3px;
  width: 9px;
  height: 9px;
  background: #4A3F8B;
  border-radius: 50%; }

@media screen and (min-width: 769px) {
  input[type="name"].col-1_tab,
  input[type="num"].col-1_tab,
  input[type="text"].col-1_tab,
  input[type="password"].col-1_tab,
  input[type="number"].col-1_tab,
  input[type="tel"].col-1_tab,
  input[type="url"].col-1_tab,
  input[type="email"].col-1_tab,
  select.col-1_tab {
    width: calc(100% / 12 * 1); }
  input[type="name"].col-2_tab,
  input[type="num"].col-2_tab,
  input[type="text"].col-2_tab,
  input[type="password"].col-2_tab,
  input[type="number"].col-2_tab,
  input[type="tel"].col-2_tab,
  input[type="url"].col-2_tab,
  input[type="email"].col-2_tab,
  select.col-2_tab {
    width: calc(100% / 12 * 2); }
  input[type="name"].col-3_tab,
  input[type="num"].col-3_tab,
  input[type="text"].col-3_tab,
  input[type="password"].col-3_tab,
  input[type="number"].col-3_tab,
  input[type="tel"].col-3_tab,
  input[type="url"].col-3_tab,
  input[type="email"].col-3_tab,
  select.col-3_tab {
    width: calc(100% / 12 * 3); }
  input[type="name"].col-4_tab,
  input[type="num"].col-4_tab,
  input[type="text"].col-4_tab,
  input[type="password"].col-4_tab,
  input[type="number"].col-4_tab,
  input[type="tel"].col-4_tab,
  input[type="url"].col-4_tab,
  input[type="email"].col-4_tab,
  select.col-4_tab {
    width: calc(100% / 12 * 4); }
  input[type="name"].col-5_tab,
  input[type="num"].col-5_tab,
  input[type="text"].col-5_tab,
  input[type="password"].col-5_tab,
  input[type="number"].col-5_tab,
  input[type="tel"].col-5_tab,
  input[type="url"].col-5_tab,
  input[type="email"].col-5_tab,
  select.col-5_tab {
    width: calc(100% / 12 * 5); }
  input[type="name"].col-6_tab,
  input[type="num"].col-6_tab,
  input[type="text"].col-6_tab,
  input[type="password"].col-6_tab,
  input[type="number"].col-6_tab,
  input[type="tel"].col-6_tab,
  input[type="url"].col-6_tab,
  input[type="email"].col-6_tab,
  select.col-6_tab {
    width: calc(100% / 12 * 6); }
  input[type="name"].col-7_tab,
  input[type="num"].col-7_tab,
  input[type="text"].col-7_tab,
  input[type="password"].col-7_tab,
  input[type="number"].col-7_tab,
  input[type="tel"].col-7_tab,
  input[type="url"].col-7_tab,
  input[type="email"].col-7_tab,
  select.col-7_tab {
    width: calc(100% / 12 * 7); }
  input[type="name"].col-8_tab,
  input[type="num"].col-8_tab,
  input[type="text"].col-8_tab,
  input[type="password"].col-8_tab,
  input[type="number"].col-8_tab,
  input[type="tel"].col-8_tab,
  input[type="url"].col-8_tab,
  input[type="email"].col-8_tab,
  select.col-8_tab {
    width: calc(100% / 12 * 8); }
  input[type="name"].col-9_tab,
  input[type="num"].col-9_tab,
  input[type="text"].col-9_tab,
  input[type="password"].col-9_tab,
  input[type="number"].col-9_tab,
  input[type="tel"].col-9_tab,
  input[type="url"].col-9_tab,
  input[type="email"].col-9_tab,
  select.col-9_tab {
    width: calc(100% / 12 * 9); }
  input[type="name"].col-10_tab,
  input[type="num"].col-10_tab,
  input[type="text"].col-10_tab,
  input[type="password"].col-10_tab,
  input[type="number"].col-10_tab,
  input[type="tel"].col-10_tab,
  input[type="url"].col-10_tab,
  input[type="email"].col-10_tab,
  select.col-10_tab {
    width: calc(100% / 12 * 10); }
  input[type="name"].col-11_tab,
  input[type="num"].col-11_tab,
  input[type="text"].col-11_tab,
  input[type="password"].col-11_tab,
  input[type="number"].col-11_tab,
  input[type="tel"].col-11_tab,
  input[type="url"].col-11_tab,
  input[type="email"].col-11_tab,
  select.col-11_tab {
    width: calc(100% / 12 * 11); }
  input[type="name"].col-12_tab,
  input[type="num"].col-12_tab,
  input[type="text"].col-12_tab,
  input[type="password"].col-12_tab,
  input[type="number"].col-12_tab,
  input[type="tel"].col-12_tab,
  input[type="url"].col-12_tab,
  input[type="email"].col-12_tab,
  select.col-12_tab {
    width: 100%; } }
@media screen and (min-width: 861px) {
  input[type="name"].col-1_pc,
  input[type="num"].col-1_pc,
  input[type="text"].col-1_pc,
  input[type="password"].col-1_pc,
  input[type="number"].col-1_pc,
  input[type="tel"].col-1_pc,
  input[type="url"].col-1_pc,
  input[type="email"].col-1_pc,
  select.col-1_pc {
    width: calc(100% / 12 * 1); }
  input[type="name"].col-2_pc,
  input[type="num"].col-2_pc,
  input[type="text"].col-2_pc,
  input[type="password"].col-2_pc,
  input[type="number"].col-2_pc,
  input[type="tel"].col-2_pc,
  input[type="url"].col-2_pc,
  input[type="email"].col-2_pc,
  select.col-2_pc {
    width: calc(100% / 12 * 2); }
  input[type="name"].col-3_pc,
  input[type="num"].col-3_pc,
  input[type="text"].col-3_pc,
  input[type="password"].col-3_pc,
  input[type="number"].col-3_pc,
  input[type="tel"].col-3_pc,
  input[type="url"].col-3_pc,
  input[type="email"].col-3_pc,
  select.col-3_pc {
    width: calc(100% / 12 * 3); }
  input[type="name"].col-4_pc,
  input[type="num"].col-4_pc,
  input[type="text"].col-4_pc,
  input[type="password"].col-4_pc,
  input[type="number"].col-4_pc,
  input[type="tel"].col-4_pc,
  input[type="url"].col-4_pc,
  input[type="email"].col-4_pc,
  select.col-4_pc {
    width: calc(100% / 12 * 4); }
  input[type="name"].col-5_pc,
  input[type="num"].col-5_pc,
  input[type="text"].col-5_pc,
  input[type="password"].col-5_pc,
  input[type="number"].col-5_pc,
  input[type="tel"].col-5_pc,
  input[type="url"].col-5_pc,
  input[type="email"].col-5_pc,
  select.col-5_pc {
    width: calc(100% / 12 * 5); }
  input[type="name"].col-6_pc,
  input[type="num"].col-6_pc,
  input[type="text"].col-6_pc,
  input[type="password"].col-6_pc,
  input[type="number"].col-6_pc,
  input[type="tel"].col-6_pc,
  input[type="url"].col-6_pc,
  input[type="email"].col-6_pc,
  select.col-6_pc {
    width: calc(100% / 12 * 6); }
  input[type="name"].col-7_pc,
  input[type="num"].col-7_pc,
  input[type="text"].col-7_pc,
  input[type="password"].col-7_pc,
  input[type="number"].col-7_pc,
  input[type="tel"].col-7_pc,
  input[type="url"].col-7_pc,
  input[type="email"].col-7_pc,
  select.col-7_pc {
    width: calc(100% / 12 * 7); }
  input[type="name"].col-8_pc,
  input[type="num"].col-8_pc,
  input[type="text"].col-8_pc,
  input[type="password"].col-8_pc,
  input[type="number"].col-8_pc,
  input[type="tel"].col-8_pc,
  input[type="url"].col-8_pc,
  input[type="email"].col-8_pc,
  select.col-8_pc {
    width: calc(100% / 12 * 8); }
  input[type="name"].col-9_pc,
  input[type="num"].col-9_pc,
  input[type="text"].col-9_pc,
  input[type="password"].col-9_pc,
  input[type="number"].col-9_pc,
  input[type="tel"].col-9_pc,
  input[type="url"].col-9_pc,
  input[type="email"].col-9_pc,
  select.col-9_pc {
    width: calc(100% / 12 * 9); }
  input[type="name"].col-10_pc,
  input[type="num"].col-10_pc,
  input[type="text"].col-10_pc,
  input[type="password"].col-10_pc,
  input[type="number"].col-10_pc,
  input[type="tel"].col-10_pc,
  input[type="url"].col-10_pc,
  input[type="email"].col-10_pc,
  select.col-10_pc {
    width: calc(100% / 12 * 10); }
  input[type="name"].col-11_pc,
  input[type="num"].col-11_pc,
  input[type="text"].col-11_pc,
  input[type="password"].col-11_pc,
  input[type="number"].col-11_pc,
  input[type="tel"].col-11_pc,
  input[type="url"].col-11_pc,
  input[type="email"].col-11_pc,
  select.col-11_pc {
    width: calc(100% / 12 * 11); }
  input[type="name"].col-12_pc,
  input[type="num"].col-12_pc,
  input[type="text"].col-12_pc,
  input[type="password"].col-12_pc,
  input[type="number"].col-12_pc,
  input[type="tel"].col-12_pc,
  input[type="url"].col-12_pc,
  input[type="email"].col-12_pc,
  select.col-12_pc {
    width: 100%; }

  select {
    font-size: 1.3rem; } }
/*//////////////////////////////////////////////////////

	flex設定

//////////////////////////////////////////////////////*/
.layout__flex {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -webkit-flex-flow: row wrap;
  -ms-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  -webkit-box-pack: justify;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .layout__flex.option-justify_end {
    -webkit-justify-content: flex-end;
    -ms-justify-content: flex-end;
    ustify-content: flex-end; }
  .layout__flex.option-justify_center {
    -webkit-justify-content: center;
    -ms-justify-content: center;
    justify-content: center; }
  .layout__flex.option-align_center {
    -webkit-align-items: center;
    -ms-align-items: center;
    align-items: center; }
  .layout__flex.option-align_end {
    -webkit-align-items: flex-end;
    -ms-align-items: flex-end;
    align-items: flex-end; }
  .layout__flex .layout__flex-col {
    box-sizing: border-box;
    flex: 0 1 48%;
    width: 48%;
    max-width: 48%; }
    .layout__flex .layout__flex-col.col-none {
      display: none; }
    .layout__flex .layout__flex-col.col-1 {
      flex: 0 1 calc((100% / 12) * 1);
      width: calc((100% / 12) * 1);
      max-width: calc((100% / 12) * 1); }
    .layout__flex .layout__flex-col.col-2 {
      flex: 0 1 calc((100% / 12) * 2);
      width: calc((100% / 12) * 2);
      max-width: calc((100% / 12) * 2); }
    .layout__flex .layout__flex-col.col-3 {
      flex: 0 1 calc((100% / 12) * 3);
      width: calc((100% / 12) * 3);
      max-width: calc((100% / 12) * 3); }
    .layout__flex .layout__flex-col.col-4 {
      flex: 0 1 calc((100% / 12) * 4);
      width: calc((100% / 12) * 4);
      max-width: calc((100% / 12) * 4); }
    .layout__flex .layout__flex-col.col-5 {
      flex: 0 1 calc((100% / 12) * 5);
      width: calc((100% / 12) * 5);
      max-width: calc((100% / 12) * 5); }
    .layout__flex .layout__flex-col.col-6 {
      flex: 0 1 calc((100% / 12) * 6);
      width: calc((100% / 12) * 6);
      max-width: calc((100% / 12) * 6); }
    .layout__flex .layout__flex-col.col-7 {
      flex: 0 1 calc((100% / 12) * 7);
      width: calc((100% / 12) * 7);
      max-width: calc((100% / 12) * 7); }
    .layout__flex .layout__flex-col.col-8 {
      flex: 0 1 calc((100% / 12) * 8);
      width: calc((100% / 12) * 8);
      max-width: calc((100% / 12) * 8); }
    .layout__flex .layout__flex-col.col-9 {
      flex: 0 1 calc((100% / 12) * 9);
      width: calc((100% / 12) * 9);
      max-width: calc((100% / 12) * 9); }
    .layout__flex .layout__flex-col.col-10 {
      flex: 0 1 calc((100% / 12) * 10);
      width: calc((100% / 12) * 10);
      max-width: calc((100% / 12) * 10); }
    .layout__flex .layout__flex-col.col-11 {
      flex: 0 1 calc((100% / 12) * 11);
      width: calc((100% / 12) * 11);
      max-width: calc((100% / 12) * 11); }
    .layout__flex .layout__flex-col.col-12 {
      flex: 0 1 100%;
      width: 100%;
      max-width: 100%; }
    .layout__flex .layout__flex-col.order-1 {
      order: 1; }
    .layout__flex .layout__flex-col.order-2 {
      order: 2; }

@media screen and (min-width: 861px) {
  .layout__flex .layout__flex-col.col-none_pc {
    display: none; }
  .layout__flex .layout__flex-col.col-1_pc {
    flex: 0 1 calc((100% / 12) * 1);
    width: calc((100% / 12) * 1);
    max-width: calc((100% / 12) * 1); }
  .layout__flex .layout__flex-col.col-2_pc {
    flex: 0 1 calc((100% / 12) * 2);
    width: calc((100% / 12) * 2);
    max-width: calc((100% / 12) * 2); }
  .layout__flex .layout__flex-col.col-3_pc {
    flex: 0 1 calc((100% / 12) * 3);
    width: calc((100% / 12) * 3);
    max-width: calc((100% / 12) * 3); }
  .layout__flex .layout__flex-col.col-4_pc {
    flex: 0 1 calc((100% / 12) * 4);
    width: calc((100% / 12) * 4);
    max-width: calc((100% / 12) * 4); }
  .layout__flex .layout__flex-col.col-5_pc {
    flex: 0 1 calc((100% / 12) * 5);
    width: calc((100% / 12) * 5);
    max-width: calc((100% / 12) * 5); }
  .layout__flex .layout__flex-col.col-6_pc {
    flex: 0 1 calc((100% / 12) * 6);
    width: calc((100% / 12) * 6);
    max-width: calc((100% / 12) * 6); }
  .layout__flex .layout__flex-col.col-7_pc {
    flex: 0 1 calc((100% / 12) * 7);
    width: calc((100% / 12) * 7);
    max-width: calc((100% / 12) * 7); }
  .layout__flex .layout__flex-col.col-8_pc {
    flex: 0 1 calc((100% / 12) * 8);
    width: calc((100% / 12) * 8);
    max-width: calc((100% / 12) * 8); }
  .layout__flex .layout__flex-col.col-9_pc {
    flex: 0 1 calc((100% / 12) * 9);
    width: calc((100% / 12) * 9);
    max-width: calc((100% / 12) * 9); }
  .layout__flex .layout__flex-col.col-10_pc {
    flex: 0 1 calc((100% / 12) * 10);
    width: calc((100% / 12) * 10);
    max-width: calc((100% / 12) * 10); }
  .layout__flex .layout__flex-col.col-11_pc {
    flex: 0 1 calc((100% / 12) * 11);
    width: calc((100% / 12) * 11);
    max-width: calc((100% / 12) * 11); }
  .layout__flex .layout__flex-col.col-12_pc {
    flex: 0 1 100%;
    width: 100%;
    max-width: 100%; }
  .layout__flex .layout__flex-col.order-1 {
    order: 1; }
  .layout__flex .layout__flex-col.order-2 {
    order: 2; } }

/*# sourceMappingURL=common.css.map */
