@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box; }

a {
  color: black;
  text-decoration: none; }

li {
  list-style-type: none; }

/* 変数定義 */
.pc {
  display: block; }

.sp {
  display: none; }

/* hero */
#hero {
  width: 100%;
  height: 650px;
  background-image: url("../img/top/hero.jpg");
  background-size: cover;
  position: relative;
  background-position: center center; }
  #hero img {
    width: 30px;
    position: absolute;
    left: 30px;
    top: 250px; }

/* message */
#message {
  padding: 100px 0; }
  #message div {
    width: auto;
    display: table;
    margin: 0 auto; }
    #message div h1 {
      font-family: "din-2014-narrow", sans-serif;
      font-weight: 300;
      font-style: normal;
      font-size: 60px;
      margin: 0;
      line-height: 1;
      color: #a37b51; }
    #message div .h1Sub {
      font-size: 16px;
      color: #a37b51;
      margin-bottom: 50px;
      width: 100%; }
    #message div .left {
      width: 220px;
      padding-left: 100px;
      display: inline-block;
      vertical-align: top;
      margin-right: 50px; }
      #message div .left img {
        width: 220px; }
      #message div .left .company,
      #message div .left .position,
      #message div .left .name {
        font-family: "Sawarabi Gothic", sans-serif;
        font-weight: 400;
        font-style: normal;
        color: #de9982;
        width: 220px;
        text-align: center; }
      #message div .left .company {
        font-size: 19px;
        margin-top: 15px; }
      #message div .left .position {
        font-size: 15px;
        margin-top: 15px; }
      #message div .left .name {
        font-size: 23px;
        margin-top: 5px;
        margin-bottom: 10px; }
      #message div .left a {
        width: 200px;
        padding: 5px 0 5px 15px;
        margin: 0 auto;
        display: block;
        border: solid thin #4e4d4d;
        border-radius: 30px;
        position: relative;
        transition: 0.3s all; }
        #message div .left a img {
          position: absolute;
          top: 13px;
          right: 16px;
          width: 30px;
          transition: 0.3s all; }
        #message div .left a:hover {
          background-color: #e4d7cf; }
          #message div .left a:hover img {
            transform: translateX(3px); }
    #message div .right {
      width: 545px;
      height: auto;
      display: inline-block;
      vertical-align: top;
      margin-left: 70px;
      font-size: 17px;
      line-height: 1.8;
      text-align: justify; }

/* news */
#news {
  width: 100%;
  padding: 100px 0;
  background-color: #e3d6cf; }
  #news h1 {
    font-family: "din-2014-narrow", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 60px;
    margin: 0 auto;
    line-height: 1;
    color: #a37b51;
    width: 960px;
    display: block;
    text-align: right; }
  #news .h1Sub {
    font-size: 16px;
    color: #808080;
    margin: 0 auto 50px auto;
    width: 960px;
    display: block;
    text-align: right; }
  #news ul {
    width: 600px;
    margin: 0 auto;
    padding-top: 70px; }
    #news ul li {
      margin-bottom: 30px; }
      #news ul li .news-date {
        display: block;
        font-size: 15px;
        color: #787878; }
      #news ul li .news-title {
        display: block;
        font-size: 25px; }
      #news ul li a img {
        width: 100%;
        margin-bottom: 10px;
        transition: 0.3s all; }
      #news ul li a dl {
        font-family: "Sawarabi Gothic", sans-serif;
        font-weight: 400;
        font-style: normal; }
        #news ul li a dl dt {
          font-size: 18px;
          color: #666;
          transition: 1s all; }
        #news ul li a dl dd {
          font-size: 18px;
          color: #1a1a1a;
          transition: 1s all; }
      #news ul li a:hover img {
        opacity: 0.5; }
      #news ul li a:hover dt, #news ul li a:hover dd {
        text-decoration: underline; }

/* salonMenu */
#salonMenu {
  padding: 100px 0 200px 0; }
  #salonMenu h1 {
    font-family: "din-2014-narrow", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 60px;
    margin: 0 auto;
    line-height: 1;
    color: #a37b51;
    width: 1000px;
    display: block; }
  #salonMenu .h1Sub {
    font-size: 16px;
    color: #a37b51;
    margin: 0 auto 50px auto;
    width: 1000px;
    display: block; }
  #salonMenu ul:first-of-type {
    width: 1000px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; }
    #salonMenu ul:first-of-type li {
      width: 300px;
      height: auto;
      margin-bottom: 50px; }
      #salonMenu ul:first-of-type li img {
        width: 100%; }
      #salonMenu ul:first-of-type li dl dt {
        width: 300px;
        border: solid thin #231815;
        height: 45px;
        font-family: "Sawarabi Gothic", sans-serif;
        font-weight: 400;
        font-style: normal;
        text-align: center;
        padding-top: 7px;
        position: relative;
        font-size: 18px;
        margin-top: 10px; }
        #salonMenu ul:first-of-type li dl dt:after {
          content: "";
          width: 20px;
          height: 5px;
          background: white;
          position: absolute;
          top: -1px;
          left: 10px; }
        #salonMenu ul:first-of-type li dl dt:before {
          content: "";
          width: 20px;
          height: 5px;
          background: white;
          position: absolute;
          bottom: -1px;
          right: 10px; }
      #salonMenu ul:first-of-type li dl dd {
        width: 120px;
        text-align: center;
        background-color: #de9982;
        color: white;
        margin-top: 15px;
        padding: 5px 0;
        border-radius: 30px; }
  #salonMenu ul:nth-of-type(2) {
    width: 1000px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 0 auto; }
    #salonMenu ul:nth-of-type(2) li {
      width: 480px;
      position: relative; }
      #salonMenu ul:nth-of-type(2) li a {
        position: absolute;
        top: 0;
        left: 0;
        transition: 0.3s all; }
        #salonMenu ul:nth-of-type(2) li a:hover {
          transform: translateY(-5px); }
      #salonMenu ul:nth-of-type(2) li img {
        width: 100%; }

/* salon */
#salon {
  padding: 100px 0;
  background-color: #b2afb8; }
  #salon h1 {
    font-family: "din-2014-narrow", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 60px;
    margin: 0 auto;
    line-height: 1;
    color: #a37b51;
    width: 960px;
    display: block;
    text-align: right; }
  #salon .h1Sub {
    font-size: 16px;
    color: white;
    margin: 0 auto 50px auto;
    width: 960px;
    display: block;
    text-align: right; }
  #salon ul {
    display: table;
    margin: 0 auto; }
    #salon ul li {
      margin-bottom: 70px; }
      #salon ul li img {
        height: 237px;
        display: inline-block;
        vertical-align: top;
        margin-right: 20px; }
      #salon ul li div {
        display: inline-block;
        vertical-align: top; }
        #salon ul li div .shopName {
          font-size: 15px;
          font-family: "Sawarabi Gothic", sans-serif;
          font-weight: 400;
          font-style: normal;
          display: inline-block; }
          #salon ul li div .shopName span {
            display: inline-block;
            margin: 0 10px; }
        #salon ul li div .type {
          display: inline-block;
          width: 180px;
          background: #4d4d4d;
          text-align: center;
          color: white;
          border-radius: 5px;
          padding: 3px 0; }
        #salon ul li div table {
          border-collapse: collapse;
          margin-top: 10px;
          font-size: 15px;
          font-family: "Sawarabi Gothic", sans-serif;
          font-weight: 400;
          font-style: normal; }
          #salon ul li div table tr {
            border-top: solid thin black; }
            #salon ul li div table tr:last-of-type {
              border-bottom: solid thin black; }
            #salon ul li div table tr td {
              padding: 10px 20px;
              position: relative; }
              #salon ul li div table tr td:nth-of-type(2) {
                width: 500px;
                border-left: solid thin black; }
              #salon ul li div table tr td .map {
                width: 100px;
                padding: 5px 0 5px 15px;
                margin: 0 auto;
                display: block;
                border-radius: 30px;
                position: absolute;
                top: 15px;
                right: 20px;
                transition: 0.3s all;
                color: white;
                background-color: #928178; }
                #salon ul li div table tr td .map img {
                  position: absolute;
                  top: 11px;
                  right: -3px;
                  width: 30px;
                  transition: 0.3s all;
                  height: auto; }
                #salon ul li div table tr td .map:hover {
                  background-color: #e4d7cf; }
                  #salon ul li div table tr td .map:hover img {
                    transform: translateX(3px); }

/* video */
#video {
  padding: 100px 0;
  display: table;
  margin: 0 auto; }
  #video h1 {
    font-family: "din-2014-narrow", sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size: 60px;
    margin: 0 auto;
    line-height: 1;
    color: #a37b51;
    width: 960px;
    display: block; }
  #video .h1Sub {
    font-size: 16px;
    color: white;
    margin: 0 auto 50px auto;
    width: 960px;
    display: block; }
  #video .left {
    width: 400px;
    display: inline-block;
    vertical-align: top;
    margin-right: 80px; }
    #video .left img {
      width: 100%;
      margin-bottom: 20px; }
    #video .left > div {
      padding-left: 20px; }
    #video .left .subTitle {
      font-size: 14px;
      background-color: #a17a51;
      display: inline-block;
      padding: 5px 10px;
      color: white;
      vertical-align: middle; }
    #video .left .title {
      font-size: 22px;
      display: inline-block;
      font-size: 22px;
      font-weight: bold;
      font-family: "Noto Sans JP", sans-serif;
      font-optical-sizing: auto;
      font-style: normal;
      vertical-align: middle;
      margin-left: 20px; }
    #video .left .detail {
      font-size: 18px;
      font-family: "Sawarabi Gothic", sans-serif;
      font-weight: 400;
      font-style: normal;
      margin-top: 20px;
      line-height: 1.8; }
    #video .left a {
      padding: 6px 20px 10px 40px;
      background-color: #e27687;
      font-size: 18px;
      width: 300px;
      border-radius: 30px;
      display: block;
      color: white;
      font-family: "Noto Sans JP", sans-serif;
      font-optical-sizing: auto;
      font-style: normal;
      font-weight: 400;
      margin: 30px auto 0 auto;
      position: relative; }
      #video .left a img {
        position: absolute;
        top: 13px;
        right: 30px;
        width: 50px;
        transition: 0.3s all;
        height: auto; }
      #video .left a:hover {
        background-color: #a17a51; }
        #video .left a:hover img {
          transform: translateX(5px); }
  #video .right {
    width: 520px;
    display: inline-block;
    vertical-align: top; }
    #video .right dl {
      margin-bottom: 50px; }
      #video .right dl dt {
        color: #e27687;
        font-size: 35px;
        border-bottom: solid thin #e27687;
        margin-bottom: 20px; }
      #video .right dl dd {
        color: #726356;
        font-size: 17px;
        line-height: 2;
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-style: normal;
        font-weight: bold; }
        #video .right dl dd span {
          padding-left: 1.3em; }
      #video .right dl p {
        text-align: right;
        margin-top: 10px;
        color: #666666;
        font-size: 16px; }

@media (max-width: 768px) {
  .pc {
    display: none; }

  .sp {
    display: block; }

  /* message */
  #message {
    padding: 70px 0; }
    #message div {
      width: 90%;
      margin: 0 auto; }
      #message div h1 {
        font-family: "din-2014-narrow", sans-serif;
        font-weight: 300;
        font-style: normal;
        font-size: 50px;
        margin: 0;
        line-height: 1;
        color: #a37b51; }
      #message div .h1Sub {
        font-size: 14px;
        color: #a37b51;
        margin-bottom: 50px;
        width: 100%; }
      #message div .left {
        width: 220px;
        padding-left: 0px;
        display: block;
        margin: 0 auto; }
        #message div .left img {
          width: 220px; }
        #message div .left .company,
        #message div .left .position,
        #message div .left .name {
          font-family: "Sawarabi Gothic", sans-serif;
          font-weight: 400;
          font-style: normal;
          color: #de9982;
          width: 220px;
          text-align: center; }
        #message div .left .company {
          font-size: 19px;
          margin-top: 15px; }
        #message div .left .position {
          font-size: 15px;
          margin-top: 15px; }
        #message div .left .name {
          font-size: 23px;
          margin-top: 5px;
          margin-bottom: 10px; }
        #message div .left a {
          width: 200px;
          padding: 5px 0 5px 15px;
          margin: 0 auto;
          display: block;
          border: solid thin #4e4d4d;
          border-radius: 30px;
          position: relative;
          transition: 0.3s all; }
          #message div .left a img {
            position: absolute;
            top: 13px;
            right: 16px;
            width: 30px;
            transition: 0.3s all; }
          #message div .left a:hover {
            background-color: #e4d7cf; }
            #message div .left a:hover img {
              transform: translateX(3px); }
      #message div .right {
        width: 100%;
        height: auto;
        display: block;
        margin: 30px auto 0 auto;
        font-size: 17px;
        line-height: 1.8; }

  /* news */
  #news {
    width: 100%;
    padding: 70px 0;
    background-color: #e3d6cf; }
    #news h1 {
      font-family: "din-2014-narrow", sans-serif;
      font-weight: 300;
      font-style: normal;
      font-size: 50px;
      margin: 0 auto;
      line-height: 1;
      color: #a37b51;
      width: 90%;
      display: block;
      text-align: right; }
    #news .h1Sub {
      font-size: 14px;
      color: #808080;
      margin: 0 auto 50px auto;
      width: 90%;
      display: block;
      text-align: right; }
    #news ul {
      width: 70%;
      margin: 0 auto;
      padding-top: 0px;
      display: block; }
      #news ul li {
        width: 100%; }
        #news ul li a img {
          width: 100%;
          margin-bottom: 10px;
          transition: 0.3s all; }
        #news ul li a dl {
          font-family: "Sawarabi Gothic", sans-serif;
          font-weight: 400;
          font-style: normal; }
          #news ul li a dl dt {
            font-size: 16px;
            color: #666;
            transition: 1s all; }
          #news ul li a dl dd {
            font-size: 16px;
            color: #1a1a1a;
            transition: 1s all; }
        #news ul li a:hover img {
          opacity: 0.5; }
        #news ul li a:hover dt, #news ul li a:hover dd {
          text-decoration: underline; }

  /* salonMenu */
  #salonMenu {
    padding: 70px 0 70px 0; }
    #salonMenu h1 {
      font-family: "din-2014-narrow", sans-serif;
      font-weight: 300;
      font-style: normal;
      font-size: 50px;
      margin: 0 auto;
      line-height: 1;
      color: #a37b51;
      width: 90%;
      display: block; }
    #salonMenu .h1Sub {
      font-size: 14px;
      color: #a37b51;
      margin: 0 auto 50px auto;
      width: 90%;
      display: block; }
    #salonMenu ul:first-of-type {
      width: 90%;
      margin: 0 auto;
      display: block; }
      #salonMenu ul:first-of-type li {
        width: 100%;
        height: auto;
        margin-bottom: 50px; }
        #salonMenu ul:first-of-type li img {
          width: 100%; }
        #salonMenu ul:first-of-type li dl dt {
          width: 100%;
          border: solid thin #231815;
          height: 45px;
          font-family: "Sawarabi Gothic", sans-serif;
          font-weight: 400;
          font-style: normal;
          text-align: center;
          padding-top: 7px;
          position: relative;
          font-size: 18px;
          margin-top: 10px; }
          #salonMenu ul:first-of-type li dl dt:after {
            content: "";
            width: 20px;
            height: 5px;
            background: white;
            position: absolute;
            top: -1px;
            left: 10px; }
          #salonMenu ul:first-of-type li dl dt:before {
            content: "";
            width: 20px;
            height: 5px;
            background: white;
            position: absolute;
            bottom: -1px;
            right: 10px; }
        #salonMenu ul:first-of-type li dl dd {
          width: 120px;
          text-align: center;
          background-color: #de9982;
          color: white;
          margin-top: 15px;
          padding: 5px 0;
          border-radius: 30px; }
    #salonMenu ul:nth-of-type(2) {
      width: 90%;
      display: block;
      margin: 0 auto; }
      #salonMenu ul:nth-of-type(2) li {
        width: 100%;
        position: relative;
        margin-bottom: 20px; }
        #salonMenu ul:nth-of-type(2) li a {
          position: relative;
          top: auto;
          left: auto;
          transition: 0.3s all; }
          #salonMenu ul:nth-of-type(2) li a:hover {
            transform: translateY(-5px); }
        #salonMenu ul:nth-of-type(2) li img {
          width: 100%; }

  /* salon */
  #salon {
    padding: 70px 0;
    background-color: #b2afb8;
    width: 100%; }
    #salon h1 {
      font-family: "din-2014-narrow", sans-serif;
      font-weight: 300;
      font-style: normal;
      font-size: 50px;
      margin: 0 auto;
      line-height: 1;
      color: #a37b51;
      width: 90%;
      display: block;
      text-align: right; }
    #salon .h1Sub {
      font-size: 14px;
      color: white;
      margin: 0 auto 50px auto;
      width: 90%;
      display: block;
      text-align: right; }
    #salon ul {
      display: block;
      margin: 0 auto;
      width: 90%; }
      #salon ul li {
        margin-bottom: 70px; }
        #salon ul li img {
          height: auto;
          width: 100%;
          display: block;
          margin-right: 0px;
          margin-bottom: 20px; }
        #salon ul li div {
          display: block; }
          #salon ul li div .shopName {
            font-size: 15px;
            font-family: "Sawarabi Gothic", sans-serif;
            font-weight: 400;
            font-style: normal;
            display: inline-block; }
            #salon ul li div .shopName span {
              display: inline-block;
              margin: 0; }
          #salon ul li div .type {
            display: inline-block;
            width: 140px;
            background: #4d4d4d;
            text-align: center;
            color: white;
            border-radius: 5px;
            padding: 3px 0;
            margin-left: 10px; }
          #salon ul li div table {
            border-collapse: collapse;
            margin-top: 10px;
            font-size: 15px;
            font-family: "Sawarabi Gothic", sans-serif;
            font-weight: 400;
            font-style: normal; }
            #salon ul li div table tr {
              border-top: solid thin black; }
              #salon ul li div table tr:last-of-type {
                border-bottom: solid thin black; }
              #salon ul li div table tr td {
                padding: 10px 20px; }
                #salon ul li div table tr td:nth-of-type(1) {
                  width: 30%; }
                #salon ul li div table tr td:nth-of-type(2) {
                  width: 60%;
                  border-left: solid thin black; }
                #salon ul li div table tr td .map {
                  width: 100px;
                  padding: 5px 0 5px 15px;
                  margin: 10px auto 0 auto;
                  display: inline-block;
                  border-radius: 30px;
                  position: relative;
                  top: auto;
                  right: auto;
                  background-color: #928178; }
                  #salon ul li div table tr td .map img {
                    position: absolute;
                    top: 11px;
                    right: 10px;
                    width: 30px;
                    transition: 0.3s all;
                    height: auto; }
                  #salon ul li div table tr td .map:hover {
                    background-color: #e4d7cf; }
                    #salon ul li div table tr td .map:hover img {
                      transform: translateX(3px); }

  /* video */
  #video {
    padding: 70px 0;
    display: block;
    margin: 0 auto;
    width: 90%; }
    #video h1 {
      font-family: "din-2014-narrow", sans-serif;
      font-weight: 300;
      font-style: normal;
      font-size: 40px;
      margin: 0 auto;
      line-height: 1;
      color: #a37b51;
      width: 100%;
      display: block; }
    #video .h1Sub {
      font-size: 15px;
      color: #333;
      margin: 0 auto 50px auto;
      width: 100%;
      display: block; }
    #video .left {
      width: 100%;
      display: block;
      margin-right: 0px; }
      #video .left img {
        width: 100%;
        margin-bottom: 20px; }
      #video .left > div {
        padding: 0px 10px; }
      #video .left .subTitle {
        font-size: 14px;
        background-color: #a17a51;
        display: inline-block;
        padding: 5px 10px;
        color: white;
        vertical-align: middle; }
      #video .left .title {
        font-size: 22px;
        display: block;
        font-size: 22px;
        font-weight: bold;
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-style: normal;
        vertical-align: middle;
        margin-left: 0px;
        margin-top: 10px; }
      #video .left .detail {
        font-size: 16px;
        font-family: "Sawarabi Gothic", sans-serif;
        font-weight: 400;
        font-style: normal;
        margin-top: 20px;
        line-height: 1.8; }
      #video .left a {
        padding: 10px 20px;
        background-color: #e27687;
        font-size: 18px;
        width: 300px;
        border-radius: 30px;
        display: block;
        color: white;
        font-family: "Noto Sans JP", sans-serif;
        font-optical-sizing: auto;
        font-style: normal;
        font-weight: 400;
        margin: 30px auto 30px auto; }
    #video .right {
      width: 100%;
      display: block; }
      #video .right dl {
        margin-bottom: 50px; }
        #video .right dl dt {
          color: #e27687;
          font-size: 25px;
          border-bottom: solid thin #e27687;
          margin-bottom: 20px; }
        #video .right dl dd {
          color: #726356;
          font-size: 15px;
          line-height: 2;
          font-family: "Noto Sans JP", sans-serif;
          font-optical-sizing: auto;
          font-style: normal;
          font-weight: bold; }
          #video .right dl dd span {
            padding-left: 1.3em; }
        #video .right dl p {
          text-align: left;
          margin-top: 10px;
          color: #666666;
          font-size: 14px; } }
