/*----------------------------------------------------------
 *      Initialize
 *----------------------------------------------------------*/
html {
  width: 100%;
  min-width: 100%;
  height: 100%;
  font-family: "Noto Sans Japanese", sans-serif;
  font-size: 16px; }
  @media only screen and (max-width: 768px) {
    html {
      min-width: 100%;
      font-size: 10px !important; } }

body {
  display: block;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  background: #ffffff;
  font-size: 16px;
  font-family: "Noto Sans Japanese", sans-serif !important;
  color: #565947; }
  @media only screen and (max-width: 768px) {
    body {
      min-width: 100%;
      font-size: 12px !important; } }

p {
  margin: 0; }

ul, li {
  margin: 0;
  padding: 0;
  list-style: none; }

h1, h2, h3, h4, h5 {
  margin: 0;
  padding: 0; }

strong {
  font-weight: bold; }

a {
  color: #b28378;
  text-decoration: none;
  transition: all 0.3s; }
  @media only screen and (max-width: 768px) {
    a {
      transition: none; } }
  a:hover {
    color: #333333;
    text-decoration: underline; }
  a:focus {
    color: #333333; }

/*----------------------------------------------------------
 *      Common
 *----------------------------------------------------------*/
.contents--wrap {
  width: 100%;
  min-width: 100%;
  margin: 0 auto; }
  @media only screen and (max-width: 768px) {
    .contents--wrap {
      width: 100%;
      min-width: 100%; } }

.tool__more {
  width: 200.95px;
  height: 55.95px;
  margin: 0 auto; }
  .tool__more a {
    overflow: hidden;
    text-indent: 101%;
    white-space: nowrap;
    display: block;
    width: 200.95px;
    height: 55.95px;
    background: url("images/tool__more.svg") no-repeat;
    background-size: 200.95px 55.95px; }
  .tool__more a:hover {
    opacity: 0.6; }
  @media only screen and (max-width: 768px) {
    .tool__more {
      width: 100.475px;
      height: 27.975px; }
      .tool__more a {
        overflow: hidden;
        text-indent: 101%;
        white-space: nowrap;
        display: block;
        width: 100.475px;
        height: 27.975px;
        background: url("images/tool__more.svg") no-repeat;
        background-size: 100.475px 27.975px; }
      .tool__more a:hover {
        opacity: 0.6; } }

.tool__more--2 {
  width: 201.32px;
  height: 57.29px;
  margin: 0 auto; }
  .tool__more--2 a {
    overflow: hidden;
    text-indent: 101%;
    white-space: nowrap;
    display: block;
    width: 201.32px;
    height: 57.29px;
    background: url("images/tool__more--2.svg") no-repeat;
    background-size: 201.32px 57.29px; }
  .tool__more--2 a:hover {
    opacity: 0.6; }
  @media only screen and (max-width: 768px) {
    .tool__more--2 {
      width: 100.66px;
      height: 28.645px; }
      .tool__more--2 a {
        overflow: hidden;
        text-indent: 101%;
        white-space: nowrap;
        display: block;
        width: 100.66px;
        height: 28.645px;
        background: url("images/tool__more--2.svg") no-repeat;
        background-size: 100.66px 28.645px; }
      .tool__more--2 a:hover {
        opacity: 0.6; } }

.tool__top {
  width: 128.5px;
  height: 36.92px;
  margin: 0 auto; }
  .tool__top a {
    overflow: hidden;
    text-indent: 101%;
    white-space: nowrap;
    display: block;
    width: 128.5px;
    height: 36.92px;
    background: url("images/tool__top.svg") no-repeat;
    background-size: 128.5px 36.92px; }
  .tool__top a:hover {
    opacity: 0.6; }
  @media only screen and (max-width: 768px) {
    .tool__top {
      width: 79.5335px;
      height: 23.019px; }
      .tool__top a {
        overflow: hidden;
        text-indent: 101%;
        white-space: nowrap;
        display: block;
        width: 79.5335px;
        height: 23.019px;
        background: url("images/tool__top.svg") no-repeat;
        background-size: 79.5335px 23.019px; }
      .tool__top a:hover {
        opacity: 0.6; } }

/*----------------------------------------------------------
 *      FadeIn-Out
 *----------------------------------------------------------*/
body:after,
.page__overlay:after {
  z-index: 9999;
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  pointer-events: none;
  opacity: 0;
  -webkit-transition: opacity .4s ease;
  transition: opacity .4s ease; }

body.page--fade::after,
.page__overlay.page--fade::after {
  opacity: 1; }

/*----------------------------------------------------------
 *      Slide Nav
 *----------------------------------------------------------*/
.slide__gnav {
  position: fixed;
  top: -100px;
  left: 0;
  width: 100%;
  height: 90px;
  background: linear-gradient(180deg, rgba(218, 206, 190, 0.5), rgba(218, 206, 190, 0));
  z-index: 3; }
  @media only screen and (max-width: 768px) {
    .slide__gnav {
      height: 60px; } }
  .slide__gnav .contents--wrap {
    position: relative; }
  .slide__gnav h1 {
    position: absolute;
    top: 30px;
    left: 58px;
    font-family: "Helvetica Neue", "Arial", sans-serif;
    font-size: 1.5rem;
    font-weight: 300;
    letter-spacing: 0.05em;
    z-index: 2; }
    @media only screen and (max-width: 768px) {
      .slide__gnav h1 {
        top: 22px;
        left: 40px; } }
  .slide__gnav ul {
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    top: 30px;
    right: 60px; }
    @media only screen and (max-width: 768px) {
      .slide__gnav ul {
        top: 22px;
        right: 50px; } }
  .slide__gnav li {
    margin: 0 0 0 25px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.125rem;
    font-weight: 200;
    letter-spacing: 0.05em; }
  .slide__gnav a {
    color: #565947; }

/*----------------------------------------------------------
 *      FOOTER
 *----------------------------------------------------------*/
footer {
  padding: 60px 0 30px 0;
  background: #dacebe; }
  @media only screen and (max-width: 768px) {
    footer {
      padding: 35px 0 20px 0; } }

.foot__tool--wrap ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 0 50px 0; }
  @media only screen and (max-width: 768px) {
    .foot__tool--wrap ul {
      margin: 0 0 18px 0; } }

.foot__tool--wrap li {
  margin: 0 15px; }
  @media only screen and (max-width: 768px) {
    .foot__tool--wrap li {
      margin: 0 12px; } }

.foot__tool--wrap li:nth-child(1) {
  width: 50px;
  height: 50px; }
  .foot__tool--wrap li:nth-child(1) a {
    overflow: hidden;
    text-indent: 101%;
    white-space: nowrap;
    display: block;
    width: 50px;
    height: 50px;
    background: url("../images/foot__sns--1.png") no-repeat;
    background-size: 50px 50px; }
  .foot__tool--wrap li:nth-child(1) a:hover {
    opacity: 0.6; }
  @media only screen and (max-width: 768px) {
    .foot__tool--wrap li:nth-child(1) {
      width: 40px;
      height: 40px; }
      .foot__tool--wrap li:nth-child(1) a {
        overflow: hidden;
        text-indent: 101%;
        white-space: nowrap;
        display: block;
        width: 40px;
        height: 40px;
        background: url("../images/foot__sns--1.png") no-repeat;
        background-size: 40px 40px; }
      .foot__tool--wrap li:nth-child(1) a:hover {
        opacity: 0.6; } }

.foot__tool--wrap li:nth-child(2) {
  width: 50px;
  height: 50px; }
  .foot__tool--wrap li:nth-child(2) a {
    overflow: hidden;
    text-indent: 101%;
    white-space: nowrap;
    display: block;
    width: 50px;
    height: 50px;
    background: url("../images/foot__sns--2.png") no-repeat;
    background-size: 50px 50px; }
  .foot__tool--wrap li:nth-child(2) a:hover {
    opacity: 0.6; }
  @media only screen and (max-width: 768px) {
    .foot__tool--wrap li:nth-child(2) {
      width: 40px;
      height: 40px; }
      .foot__tool--wrap li:nth-child(2) a {
        overflow: hidden;
        text-indent: 101%;
        white-space: nowrap;
        display: block;
        width: 40px;
        height: 40px;
        background: url("../images/foot__sns--2.png") no-repeat;
        background-size: 40px 40px; }
      .foot__tool--wrap li:nth-child(2) a:hover {
        opacity: 0.6; } }

.foot__copyright {
  font-size: 0.75rem;
  color: #ffffff;
  text-align: center; }
  @media only screen and (max-width: 768px) {
    .foot__copyright {
      font-size: 1rem; } }

/*----------------------------------------------------------
 *      Header
 *----------------------------------------------------------*/
header {
  width: 100%;
  height: 100px;
  z-index: 3; }
  @media only screen and (max-width: 768px) {
    header {
      height: 60px; } }
  header .contents--wrap {
    position: relative;
    min-width: 1080px; }
    @media only screen and (max-width: 768px) {
      header .contents--wrap {
        width: 100%;
        min-width: 100%; } }
  header h1 {
    position: absolute;
    top: 66px;
    left: 58px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.5rem;
    font-weight: 300;
    letter-spacing: 0.05em;
    z-index: 2; }
    @media only screen and (max-width: 768px) {
      header h1 {
        top: 55px;
        left: 50px; } }
  header ul {
    display: flex;
    flex-wrap: wrap;
    position: absolute;
    top: 66px;
    right: 60px; }
    @media only screen and (max-width: 768px) {
      header ul {
        top: 55px;
        right: 50px; } }
  header li {
    margin: 0 0 0 25px;
    font-family: "Noto Sans Japanese", sans-serif;
    font-size: 1.125rem;
    font-weight: 200;
    letter-spacing: 0.05em; }
  header a {
    color: #565947; }

/*----------------------------------------------------------
 *      Entry
 *----------------------------------------------------------*/
.entry--area {
  padding: 110px 0 100px 0; }
  @media only screen and (max-width: 768px) {
    .entry--area {
      padding: 80px 0 0 0; } }
  .entry--area .contents--wrap {
    min-width: 1080px; }
    @media only screen and (max-width: 768px) {
      .entry--area .contents--wrap {
        width: 100%;
        min-width: 100%; } }

.entry__mainVisual {
  display: none;
  height: 800px;
  width: 100%;
  margin: 0 0 90px 0;
  background-position: center center;
  background-size: cover; }
  @media only screen and (max-width: 768px) {
    .entry__mainVisual {
      width: 100%;
      height: calc(100vh - 150px);
      margin: 0 0 40px 0; } }

.entry--wrap {
  margin: 0 auto;
  text-align: center; }
  @media only screen and (max-width: 768px) {
    .entry--wrap {
      width: 100%;
      min-width: 100%; } }
  .entry--wrap img {
    margin: 0 0 160px 0; }
    @media only screen and (max-width: 768px) {
      .entry--wrap img {
        width: 88%;
        margin: 0 0 50px 0; } }

.entry__title {
  margin: 0 0 26px 0;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.5rem;
  font-weight: 300;
  letter-spacing: 0.05em; }
  @media only screen and (max-width: 768px) {
    .entry__title {
      margin: 0 0 10px 0; } }

.entry__subtitle {
  margin: 0 0 32px 0;
  font-family: "Helvetica Neue", "Arial", sans-serif;
  font-size: 1.25rem;
  font-weight: 300;
  letter-spacing: 0.05em; }
  @media only screen and (max-width: 768px) {
    .entry__subtitle {
      margin: 0 0 12px 0; } }

.entry__type {
  margin: 0 0 100px 0;
  font-size: 0.9375rem;
  font-weight: 200;
  letter-spacing: 0.05em; }
  @media only screen and (max-width: 768px) {
    .entry__type {
      margin: 0 0 45px 0; } }

/*----------------------------------------------------------
 *      Footer
 *----------------------------------------------------------*/
footer {
  min-width: 1080px; }
  @media only screen and (max-width: 768px) {
    footer {
      width: 100%;
      min-width: 100%; } }
