@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;700&display=swap");
@import url("https://fonts.googleapis.com/earlyaccess/notosansjp.css");
/***** _normalize.scss *****/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

body {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

html {
  width: 100%;
  height: 100%;
  scroll-behavior: smooth;
}

body {
  font-family: 'Noto Serif JP', serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 2;
  color: #685744;
  width: 100%;
}

a {
  color: #685744;
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: top;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

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

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

.wrap {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center center;
}

.wrap#top {
  background-image: url(../img/bg-main.jpg);
  background-size: cover;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .wrap#top {
    background-image: url(../img/bg-main@2x.jpg);
  }
}

.wrap#intro {
  background-image: url(../img/bg-intro.jpg);
  background-size: cover;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .wrap#intro {
    background-image: url(../img/bg-intro@2x.jpg);
  }
}

.wrap#profile {
  background-image: url(../img/bg-profile.jpg);
  background-size: cover;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .wrap#profile {
    background-image: url(../img/bg-profile@2x.jpg);
  }
}

.wrap#foot {
  background-image: url(../img/bg-foot.jpg);
  background-size: cover;
}

@media screen and (-webkit-min-device-pixel-ratio: 2), (-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
  .wrap#foot {
    background-image: url(../img/bg-foot@2x.jpg);
  }
}

.wrap .cnts {
  width: 956px;
  margin: 0 auto;
  padding: 120px 0;
}

.wrap .cnts .while {
  margin: 60px 0;
}

#top {
  position: relative;
}

#top .btn-mju {
  display: block;
  width: 158px;
  height: 40px;
  position: absolute;
  top: 45px;
  left: 60px;
}

#top .cnts {
  height: 700px;
  padding: 0;
  position: relative;
}

#top .cnts .title-area {
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
}

#top .cnts .title-area p {
  margin: 10px 0 0;
  font-weight: 700;
  text-align: center;
  color: #947864;
}

#intro h2, #intro p {
  margin: 0 0 60px;
  text-align: center;
}

#intro p span {
  font-size: 18px;
  font-weight: 700;
  color: #C7747B;
}

#about {
  background-color: #F7F4EF;
}

#about .cnts {
  overflow: hidden;
}

#about .cnts .about-inner-txt {
  float: left;
}

#about .cnts .about-inner-txt h2, #about .cnts .about-inner-txt p {
  margin: 0 0 60px;
}

#about .cnts .about-inner-picture {
  float: right;
}

#menu {
  min-width: 1100px;
  background-color: #D6A8A2;
  background-image: url(../img/bg-menu-left.png), url(../img/bg-menu-right.png);
  background-position: left 30px center, right 30px center;
}

#menu .cnts {
  padding: 60px 0;
}

#menu .cnts h2 {
  text-align: center;
  margin: 0 0 30px;
}

#menu .cnts ul {
  text-align: center;
}

#menu .cnts ul li {
  width: 230px;
  margin: 0 2px 25px;
  display: inline-block;
  color: white;
}

#menu .cnts ul li.snd-line {
  margin: 0 3px 0;
}

#menu .cnts ul li p {
  font-weight: 700;
}

#profile .cnts {
  overflow: hidden;
}

#profile .cnts .profile-inner-img {
  width: 217px;
  float: left;
}

#profile .cnts .profile-inner-txt {
  width: 739px;
  float: right;
}

#profile .cnts .profile-inner-txt h3 {
  padding: 0 0 20px 30px;
  font-size: 28px;
  line-height: 1.5;
  border-bottom: 1px solid #707070;
}

#profile .cnts .profile-inner-txt h3 small {
  font-size: 22px;
}

#profile .cnts .profile-inner-txt p {
  padding: 20px 0 20px 30px;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
}

#profile .cnts .profile-inner-txt p + p {
  border-top: 1px solid #707070;
}

#profile .cnts .profile-inner-txt hr {
  border-color: #707070;
}

#contact {
  text-align: center;
}

#contact .cnts {
  padding: 80px 0;
}

#contact h2, #contact p {
  margin: 0 0 60px;
}

#contact h3 {
  margin: 0 0 10px;
}

#contact a {
  display: block;
  margin: 0 auto 60px;
}

#contact .mail-cnts h3, #contact .tel-cnts h3 {
  font-family: "Noto Sans JP", sans-serif;
}

#contact p.tel {
  display: inline-block;
  width: 320px;
  padding: 15px 0;
  background: #685744;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  line-height: 1;
  letter-spacing: 0.05em;
  text-align: center;
  color: white;
}

#counterplan {
  padding: 75px 0;
  background-color: #F7F4EF;
}

#counterplan .counterplan-inner.cnts {
  width: 956px;
  padding: 45px 135px;
  background-color: white;
  border: 1px solid #685744;
}

#counterplan .counterplan-inner.cnts h3 {
  font-size: 21px;
  margin: 0 0 20px;
  padding: 0 0 20px;
  border-bottom: 1px solid #707070;
}

#counterplan .counterplan-inner.cnts ul {
  padding: 20px 0 0;
}

#counterplan .counterplan-inner.cnts ul li {
  font-size: 15px;
}

#foot .cnts {
  text-align: center;
}

#foot .cnts h2 {
  margin: 0 0 46px;
  font-size: 48px;
  line-height: 1;
}

#foot .cnts h2 span {
  display: block;
  padding: 0 0 38px;
  font-size: 21px;
}

#foot .cnts h2 small {
  display: block;
  padding: 16px 0 0;
  font-size: 16px;
}

#foot .cnts a {
  text-decoration: underline;
}

.copyright {
  width: 100%;
  margin: 0;
  padding: 15px 0;
  background-color: #DA8499;
  display: block;
  font-size: 14px;
  line-height: 1;
  text-align: center;
  color: white;
}
