@charset "UTF-8";
/* Common
----------------------------------------- */
.block-title {
  position: relative;
  padding-bottom: 5px;
  margin-bottom: 40px;
  text-align: center;
}
.block-title span {
  font-size: 46px;
}
.block-title:after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: -8px;
  width: 440px;
  height: 6px;
  margin-left: -220px;
}

html, article, section {
  max-width: 100%;
  width: 100%;
}

/* html, article
----------------------------------------- */
html {
  width: 760px;
  margin: 0 auto;
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  font-family: "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro";
  background-color: #f1ece6;
}

article {
  width: 760px;
  margin: 0 auto;
  color: #333;
  background-color: #FFF;
}

/* common class Clearfix
----------------------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  line-height: 0;
}

.clearfix {
  display: inline-block;
}

/* Hides from IE-mac \*/
* html .clearfix {
  height: 1%;
}

.clearfix {
  display: block;
}

/* contact-block *** フッター固定
----------------------------------------- */
#contact-block {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 15px 0 30px;
  background: #e8dbc7;
  z-index: 999;
}
#contact-block .txt {
  margin-bottom: 15px;
  text-align: center;
  font-size: 32px;
  color: #caa46c;
}
#contact-block .button-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: space-evenly;
      -ms-flex-pack: space-evenly;
          justify-content: space-evenly;
  width: 740px;
  margin: 0 auto;
}
#contact-block .button-list li {
  width: 350px;
}
#contact-block .button-list li a {
  display: block;
  line-height: 3em;
  font-size: 28px;
  color: #FFF;
  text-align: center;
  text-decoration: none;
  border-radius: 12px;
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
}
#contact-block .button-list .tel a {
  background: #faa2cb url(../img/icon-mobile02.png) 1.5em center/auto 1.2em no-repeat;
}
#contact-block .button-list .line a {
  background: #6ccac4 url(../img/icon-line.png) 0.5em center/auto 1em no-repeat;
}

/* mv-block
----------------------------------------- */
#mv-block {
  position: relative;
  width: 760px;
  height: 1040px;
  overflow: hidden;
  background: #FFF url(../img/mv-bg.jpg) center center/contain no-repeat;
}
#mv-block h1, #mv-block h2 {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
#mv-block h1 {
  top: 150px;
}
#mv-block h1 img {
  width: 455px;
  height: auto;
}
#mv-block h2 {
  top: 210px;
}
#mv-block h2 img {
  width: 598px;
  height: auto;
}
#mv-block .job {
  position: absolute;
  top: 50px;
  left: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
#mv-block .job .call {
  display: inline-block;
  line-height: 1.4;
  padding: 0 10px;
  -webkit-transform: rotate(-15deg);
          transform: rotate(-15deg);
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
  font-size: 32px;
  font-weight: 700;
  color: #c59a55;
}
#mv-block .job .call .underline {
  position: relative;
  display: inline-block;
  padding-bottom: 3px;
}
#mv-block .job .call .underline::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 5px;
  background: #adebe7;
  z-index: -1;
}
#mv-block .job .call .san {
  font-size: 28px;
  font-weight: 300;
  opacity: 0.7;
  padding-bottom: 6px;
}
#mv-block .mv {
  position: absolute;
  top: 250px;
  left: 0;
  width: 100%;
}
#mv-block .mv .catch03, #mv-block .mv .catch04, #mv-block .mv .no1 {
  position: absolute;
  height: auto;
}
#mv-block .mv .catch03 {
  top: 160px;
  left: 30px;
  width: 280px;
}
#mv-block .mv .catch04 {
  top: 160px;
  right: 100px;
  width: 165px;
}
#mv-block .mv .charactor {
  position: absolute;
  top: 20px;
  left: 0;
  width: 100%;
  text-align: center;
}
#mv-block .mv .charactor img {
  width: 234px;
  height: auto;
}
#mv-block .mv .no1 {
  top: 380px;
  right: 30px;
  width: 200px;
}
#mv-block .merit-list {
  position: absolute;
  top: 840px;
  left: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
}
#mv-block .merit-list li {
  width: 32%;
  line-height: 1.4em;
  padding: 15px 0;
  font-size: 26px;
  text-align: center;
  color: #333;
  background: url(../img/mv-point-bg.png) center center/contain no-repeat;
}
#mv-block .merit-list li:nth-child(3) {
  padding: 5px 0;
  line-height: 1.1em;
}
#mv-block .catch-line {
  position: absolute;
  top: 960px;
  left: 0;
  width: 100%;
  text-align: center;
}
#mv-block .catch-line img {
  width: 90%;
  height: auto;
}

/* inonego-block
----------------------------------------- */
#inonego-block {
  width: 100%;
  position: relative;
  padding: 30px 0 5px;
  background-color: #fbeef5;
}
#inonego-block .block-title {
  font-weight: 700;
  font-size: 36px;
  color: #faa2cb;
}
#inonego-block .block-title:after {
  background-color: #6ccac4;
}
#inonego-block .lead {
  width: 90%;
  padding-bottom: 15px;
  margin: 0 auto 40px;
  line-height: 1.5em;
  font-size: 26px;
  background: url(../img/cut01.png) right bottom/contain no-repeat;
}

/* step-block
----------------------------------------- */
#step-block {
  width: 100%;
  padding: 30px 0;
}
#step-block .block-title {
  font-weight: 700;
  font-size: 36px;
  color: #caa46c;
}
#step-block .block-title span {
  font-size: 48px;
  color: #6ccac4;
}
#step-block .block-title:after {
  background-color: #faa2cb;
}
#step-block h4 {
  margin-bottom: 30px;
  text-align: center;
  font-size: 32px;
  font-weight: normal;
}
#step-block .step-list {
  width: 660px;
  margin: 0 auto 20px;
}
#step-block .step-list dt, #step-block .step-list dd {
  margin-bottom: 30px;
}
#step-block .step-list dt {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 120px;
  height: 120px;
  padding-top: 26px;
  font-weight: bold;
  font-size: 28px;
  text-align: center;
  color: #caa46c;
  border-radius: 100%;
  border: 2px solid #caa46c;
  float: left;
  clear: both;
}
#step-block .step-list dt .num {
  font-weight: 900;
  font-size: 48px;
}
#step-block .step-list dd {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 520px;
  padding-top: 15px;
  float: right;
}
#step-block .step-list dd .summary {
  margin-bottom: 10px;
  font-size: 32px;
  font-weight: bold;
  color: #6ccac4;
}
#step-block .step-list dd .explain {
  line-height: 1.4em;
  margin-left: 6px;
  font-size: 28px;
}

/* about-block
----------------------------------------- */
#about-block {
  padding: 50px 0 10px;
  background-color: #d1f5f3;
}
#about-block .inner-box {
  width: 560px;
  padding: 30px 40px 70px;
  margin: 0 auto -60px;
  border-radius: 20px;
  background-color: #FFF;
}
#about-block .inner-box h3 {
  margin: -40px 0 20px;
  text-align: center;
}
#about-block .inner-box p {
  line-height: 1.4em;
  font-size: 30px;
}
#about-block .cut {
  text-align: center;
}
#about-block .cut img {
  width: 118px;
  height: auto;
}

/* reason-block
----------------------------------------- */
#reason-block {
  padding: 30px 0 20px;
}
#reason-block .block-title {
  font-size: 40px;
  color: #caa46c;
}
#reason-block .block-title .small {
  margin: 0.3em;
  font-size: 34px;
  color: #ada29f;
}
#reason-block .block-title .blue {
  color: #6ccac4;
}
#reason-block .block-title:after {
  background-color: #faa2cb;
}
#reason-block .explain {
  width: 620px;
  line-height: 1.4em;
  margin: 0 auto 20px;
  font-size: 31px;
}
#reason-block .point-list {
  width: 680px;
  margin: 0 auto 20px;
}
#reason-block .point-list li {
  margin-bottom: 20px;
}
#reason-block .point-list li .num {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 182px;
  height: 84px;
  padding: 20px 0 0 118px;
  margin-bottom: -90px;
  font-size: 40px;
  font-weight: 900;
  color: #FFF;
  background: url(../img/point-bg.png) left center/contain no-repeat;
  z-index: 2;
}
#reason-block .point-list li .box {
  position: relative;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 590px;
  padding: 25px 30px 28px;
  margin: 28px 0 0 56px;
  background-color: #f1f7f7;
  z-index: 1;
}
#reason-block .point-list li .box .summary {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1.4em;
  padding-left: 110px;
  margin-bottom: 15px;
  font-size: 34px;
  font-weight: 900;
  color: #6ccac4;
}
#reason-block .point-list li .box .detail {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  line-height: 1.4em;
  padding: 0 10px;
  font-size: 30px;
}

/* tokyolife-block
----------------------------------------- */
#tokyolife-block {
  padding: 30px 0;
  background-color: #f4e5ce;
}
#tokyolife-block .block-title {
  font-size: 36px;
  color: #caa46c;
}
#tokyolife-block .block-title:after {
  background-color: #6ccac4;
}
#tokyolife-block .explain {
  width: 630px;
  line-height: 1.4em;
  margin: 0 auto 20px;
  font-size: 30px;
}
#tokyolife-block .inner-box {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 650px;
  padding: 30px 30px 10px;
  margin: 0 auto;
  border-radius: 20px;
  background-color: #FFF;
}
#tokyolife-block .inner-box h4 {
  margin-bottom: 20px;
  text-align: center;
  font-size: 26px;
  color: #6ccac4;
}
#tokyolife-block .inner-box .problem-box {
  margin-bottom: 25px;
}
#tokyolife-block .inner-box .problem-box .problem-serifu {
  box-sizint: border-box;
  position: relative;
  line-height: 1.2em;
  padding: 20px;
  margin-bottom: 20px;
  text-align: center;
  font-size: 28px;
  color: #825b22;
  border-radius: 30px;
  background-color: #f1ece6;
}
#tokyolife-block .inner-box .problem-box .problem-serifu:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 100px;
  border-style: solid;
  border-width: 30px 30px 0 0;
  border-color: #f1ece6 transparent transparent;
  translate: calc(-50% - 1px) 100%;
}
#tokyolife-block .inner-box .answer {
  padding-left: 142px;
  background: url(../img/cut03.png) 18px 20px/95px auto no-repeat;
}
#tokyolife-block .inner-box .answer p {
  box-sizint: border-box;
  line-height: 1.4em;
  padding: 20px;
  font-size: 26px;
  border-radius: 20px;
  border: 3px solid #faa2cb;
}

/* faq-block
----------------------------------------- */
#faq-block {
  padding: 30px 0;
}
#faq-block .block-title {
  font-size: 36px;
  color: #faa2cb;
}
#faq-block .block-title:after {
  background-color: #6ccac4;
}
#faq-block .faq-list {
  width: 680px;
  margin: 0 auto;
}
#faq-block .faq-list dt, #faq-block .faq-list dd {
  min-height: 70px;
  line-height: 1.4em;
  padding: 5px 0 0 70px;
}
#faq-block .faq-list dt {
  margin-bottom: 10px;
  font-size: 30px;
  color: #9e7c48;
  background: url(../img/icon-q.png) left top/60px 60px no-repeat;
}
#faq-block .faq-list dd {
  margin-bottom: 20px;
  font-size: 25px;
  background: url(../img/icon-a.png) left top/60px 60px no-repeat;
}

/* voice-block
----------------------------------------- */
#voice-block {
  padding: 30px 0;
  background-color: #d4f2f0;
}
#voice-block .block-title {
  font-size: 36px;
  color: #caa46c;
}
#voice-block .block-title:after {
  background-color: #6ccac4;
}
#voice-block .voice-box {
  position: relative;
  width: 650px;
  margin: 0 auto 20px;
}
#voice-block .voice-box .cut {
  position: absolute;
  top: 50%;
  left: 0;
  width: 140px;
  height: 140px;
  margin-top: -70px;
  z-index: 2;
}
#voice-block .voice-box .cut img {
  width: 100%;
  height: auto;
}
#voice-block .voice-box .text {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 620px;
  padding: 30px 30px 25px 130px;
  margin: 0 0 0 30px;
  border-radius: 30px;
  background-color: #FFF;
  z-index: 1;
}
#voice-block .voice-box .text .name {
  margin-bottom: 10px;
  font-size: 30px;
  font-weight: 900;
  color: #caa46c;
}
#voice-block .voice-box .text .name span {
  font-size: 20px;
  font-weight: normal;
  color: #959490;
}
#voice-block .voice-box .text .voice-text {
  line-height: 1.4em;
  font-size: 26px;
}

/* company-block
----------------------------------------- */
#company-block {
  padding: 30px 0 10px;
  background-color: #FFF;
}
#company-block .block-title {
  font-size: 36px;
}
#company-block .block-title:after {
  background-color: #caa46c;
}
#company-block .tel-contact, #company-block .address-map {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
#company-block .tel-contact {
  width: 680px;
  margin: 0 auto 20px;
}
#company-block .tel-contact .tel-link {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  width: 440px;
  padding-right: 20px;
}
#company-block .tel-contact .tel-link a {
  display: block;
  padding: 16px 0 14px;
  font-size: 33px;
  font-weight: 900;
  text-align: center;
  text-decoration: none;
  color: #FFF;
  border-radius: 60px;
  background: #caa46c url(../img/icon-mobile01.png) 50px center/auto 1em no-repeat;
}
#company-block .tel-contact .tel-explain {
  width: 220px;
  line-height: 1.2em;
  font-size: 18px;
}
#company-block .address-map {
  width: 640px;
  margin: 0 auto;
}
#company-block .address-map .address-data {
  width: 320px;
}
#company-block .address-map .address-data .address {
  line-height: 1.4em;
  padding-top: 15px;
  margin-bottom: 20px;
  font-size: 21px;
}
#company-block .address-map .address-data .access {
  line-height: 1.4em;
  margin-bottom: 30px;
  font-size: 22px;
}
#company-block .address-map .address-data .access li {
  margin-bottom: 5px;
}
#company-block .address-map .address-data .access span {
  color: #58bdb8;
}
#company-block .address-map .address-data .company-data {
  font-size: 15px;
}
#company-block .address-map .address-data .company-data dt, #company-block .address-map .address-data .company-data dd {
  display: inline-block;
  margin-bottom: 10px;
}
#company-block .address-map .address-data .company-data dt {
  width: 26%;
}
#company-block .address-map .address-data .company-data dd {
  width: 72%;
}
#company-block .address-map .map-box {
  width: 320px;
}

/* footer-block
----------------------------------------- */
#footer-block {
  padding: 30px 0 170px;
  text-align: center;
  background-color: #FFF;
}
#footer-block .copyright {
  line-height: 2em;
  font-size: 15px;
  color: #b9b9b9;
}

/* pagetop
----------------------------------------- */
#topcontrol {
  z-index: 999;
}

#pagetop {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  position: relative;
  width: 90px;
  height: 100px;
  padding-top: 40px;
  text-align: center;
  font-size: 18px;
  color: #FFF;
  background-color: #6ccac4;
}
#pagetop:after {
  position: absolute;
  top: 10px;
  left: 50%;
  margin-left: -10px;
  content: "";
  border: 10px solid transparent;
  border-bottom: 10px solid #FFF;
}