/*------------------------------
 reset
------------------------------*/
html {
  margin: 0;
  padding: 0;
}

/*,*/
body {
  margin: 0;
  padding: 0;
  background: #fff;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 31px;
  color: #627a86;
}
body div, body span, body object, body iframe,
body h1, body h2, body h3, body h4, body h5, body h6, body p, body blockquote, body pre,
body abbr, body address, body cite, body code,
body del, body dfn, body em, body img, body ins, body kbd, body q, body samp,
body small, body strong, body sub, body var,
body b, body i,
body dl, body dt, body dd, body ol, body ul, body li,
body fieldset, body form, body label, body legend,
body table, body caption, body tbody, body tfoot, body thead, body tr, body th, body td,
body article, body aside, body canvas, body details, body figcaption, body figure,
body summary,
body time, body mark, body audio, body video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background: transparent;
}
body article, body aside, body details, body figcaption, body figure,
body hgroup, body menu, body nav {
  display: block;
}
body ol, body ul {
  list-style: none;
}
body table {
  border-collapse: collapse;
  border-spacing: 0;
}
body blockquote, body q {
  quotes: none;
}
body blockquote:before, body blockquote:after,
body q:before, body q:after {
  content: "";
  content: none;
}
body a {
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  background: transparent;
  outline: none;
}
body del {
  text-decoration: line-through;
}
body abbr[title], body dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
body table {
  border-collapse: collapse;
  border-spacing: 0;
}
body hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #cccccc;
  margin: 1em 0;
  padding: 0;
}
body input, body select {
  vertical-align: middle;
}
body .clearfix:before, body .clearfix:after {
  content: "";
  display: table;
}
body .clearfix:after {
  clear: both;
}
body img {
  width: 100%;
  height: auto;
}

@media screen and (max-width: 750px) {
  body {
    font-size: 15px;
    line-height: 31px;
  }
}
/*------------------------------
  flex
------------------------------*/
.c-flex {
  display: flex;
  margin: 0 auto;
  flex-wrap: wrap;
}

.c-flex__sb {
  display: flex;
  justify-content: space-between;
  margin: 0 auto;
  flex-wrap: wrap;
}

.c-flex__rev {
  flex-direction: row-reverse;
}

.c-flex__center {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  flex-wrap: wrap;
}

.c-flex__sa {
  display: flex;
  justify-content: space-around;
  margin: 0 auto;
  flex-wrap: wrap;
}

/*------------------------------
  br
------------------------------*/
br.brsp {
  display: none;
}

br.brpc {
  display: block;
}

img.sp {
  display: none;
}

img.pc {
  display: inline;
}

@media screen and (max-width: 750px) {
  br.brsp {
    display: block;
  }
  br.brpc {
    display: none;
  }
  img.sp {
    display: inline;
  }
  img.pc {
    display: none;
  }
}
/*------------------------------
  align
------------------------------*/
.c-img__full {
  line-height: 0;
}
.c-img__full img {
  width: 100%;
}

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

@media screen and (max-width: 750px) {
  /*------------------------------
    flex
  ------------------------------*/
  .c-flex {
    display: flex;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  .c-flex__sb {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  .c-flex__rev {
    flex-direction: row-reverse;
  }
  .c-flex__center {
    display: flex;
    justify-content: center;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  .c-flex__sa {
    display: flex;
    justify-content: space-around;
    margin: 0 auto;
    flex-wrap: wrap;
  }
  /*------------------------------
    br
  ------------------------------*/
  br.brsp {
    display: none;
  }
  br.brpc {
    display: block;
  }
  img.sp {
    display: none;
  }
  img.pc {
    display: inline;
  }
  /*------------------------------
    align
  ------------------------------*/
}
@media screen and (max-width: 750px) and (max-width: 750px) {
  br.brsp {
    display: block;
  }
  br.brpc {
    display: none;
  }
  img.sp {
    display: inline;
  }
  img.pc {
    display: none;
  }
}
@media screen and (max-width: 750px) {
  .c-img__full {
    line-height: 0;
  }
  .c-img__full img {
    width: 100%;
  }
  .c-inline__center {
    text-align: center;
  }
}
body section#linebtn {
  position: fixed;
  width: 100%;
  bottom: 0;
  text-align: center;
  padding: 20px 0;
  transition: 0.3s;
  opacity: 0;
  visibility: hidden;
}
body section#linebtn img {
  width: 300px;
}
body section#linebtn.is-active {
  opacity: 1;
  visibility: visible;
}
body .f-xs {
  font-size: 11px;
  line-height: 17px;
  font-weight: 400;
}
body h2 {
  font-size: 25px;
  line-height: 34px;
  font-weight: 600;
  margin: 0 0 45px 0;
  color: #96a9b3;
}
body h2 small {
  padding-left: 1.5em;
  font-size: 19px;
  line-height: 34px;
  font-weight: 500;
  color: #cdd5db;
}
body header .inner {
  width: 1000px;
  padding: 30px 45px;
  align-items: center;
}
body header .inner p {
  width: 255px;
}
body header .inner nav {
  font-size: 12px;
  line-height: 25px;
  font-weight: 500;
}
body header .inner nav li {
  padding: 0 0 0 25px;
}
body header .inner nav li a {
  color: #627a86;
  text-decoration: none;
}
body #mv .inner {
  width: 672px;
  margin: 0 auto;
  height: 750px;
}
body #mv .inner h1 {
  padding: 240px 0 140px 0;
  text-align: center;
  font-size: 70px;
  line-height: 92px;
  font-weight: 600;
}
body #mv .inner h1 img {
  width: 668px;
}
body #mv .inner .f-xs {
  margin-left: 420px;
  width: 310px;
}
body #section1to2 {
  width: 655px;
  padding: 100px 0 145px 0;
  flex-direction: row-reverse;
}
body #section1to2 #about-feature {
  width: 425px;
}
body #section1to2 #about-feature .texts {
  padding: 0 0 80px 0;
}
body #section1to2 #about-feature .texts p {
  padding: 0 0 1.5em 0;
  text-align: justify;
}
body #section1to2 #about-feature #feature dl dt {
  font-size: 17px;
  line-height: 45px;
  font-weight: 500;
}
body #section1to2 #about-feature #feature dl dt strong {
  font-size: 21px;
  line-height: 45px;
  font-weight: 500;
}
body #section1to2 #about-feature #feature dl dd {
  padding: 0 0 35px 0;
  text-align: justify;
}
body #section1to2 #about-feature-ph {
  width: 185px;
  padding: 90px 0 0 0;
}
body #section1to2 #about-feature-ph p:nth-child(2) {
  margin-top: -55px;
}
body #message {
  padding: 140px 0 60px 0;
  background: linear-gradient(135deg, #eff1f3 0%, #eff1f3 55%, #e8ebed 55%, #e8ebed 100%);
}
body #message .inner {
  width: 655px;
  flex-direction: row-reverse;
}
body #message .inner #message-text {
  width: 425px;
}
body #message .inner #message-text h3 {
  font-size: 21px;
  line-height: 34px;
  font-weight: 500;
  margin: 0 0 35px 0;
}
body #message .inner #message-text p.main-text {
  padding: 0 0 1.5em 0;
  text-align: justify;
}
body #message .inner #message-text dl.profile dt {
  font-size: 17px;
  line-height: 31px;
  font-weight: 500;
}
body #message .inner #message-text dl.profile dd {
  font-size: 14px;
  line-height: 28px;
  font-weight: 400;
}
body #message .inner #message-ph {
  width: 185px;
  padding: 90px 0 0 0;
}
body #partners {
  padding: 75px 0;
}
body #partners .inner {
  width: 625px;
  margin: 0 auto;
}
body #partners .inner h2 {
  margin-left: 215px;
}
body #partners .inner ul {
  width: 625px;
}
body #partners .inner ul li {
  width: 283px;
}
body #partners .inner ul li dl dt {
  font-size: 20px;
  line-height: 42px;
  font-weight: 500;
  padding: 0 0 15px 0;
}
body #partners .inner ul li dl dd {
  font-size: 15px;
  line-height: 28px;
  font-weight: 400;
  padding: 0 0 25px 0;
}
body #partners .inner ul li.logo1 {
  padding-top: 10px;
}
body #partners .inner ul li.logo1 p img {
  width: 167px;
}
body #partners .inner ul li.logo2 p img {
  width: 113px;
}
body #partners .inner ul li.logo3 {
  padding-top: 25px;
}
body #partners .inner ul li.logo3 p img {
  width: 195px;
}
body #partners .inner ul li.logo4 p img {
  width: 90px;
}
body #voice {
  padding: 75px 0;
}
body #voice .inner {
  width: 850px;
  margin: 0 auto;
}
body #voice .inner h2 {
  margin-left: 335px;
}
body #voice .inner ul li {
  width: 255px;
}
body #voice .inner ul li dl.name dt {
  width: 113px;
  margin-bottom: -10px;
}
body #voice .inner ul li dl.name dd {
  font-size: 14px;
  line-height: 25px;
  font-weight: 500;
  padding: 0 0 20px 0;
}
body #voice .inner ul li dl.text dt {
  font-size: 18px;
  line-height: 40px;
  font-weight: 500;
  padding: 0 0 5px 0;
}
body #voice .inner ul li dl.text dd {
  font-size: 15px;
  line-height: 28px;
  font-weight: 400;
  text-align: justify;
}
body #flow {
  padding: 75px 0;
}
body #flow .inner {
  width: 524px;
  margin: 0 auto;
}
body #flow .inner h2 {
  margin-left: 180px;
}
body #flow .inner .nos {
  margin: 0 0 20px 0;
}
body #flow .inner .nos p {
  margin: 10px 0 0 0;
  width: 56px;
  background: url("../img/no_bg.png") top left no-repeat;
  background-size: 100%;
  color: #fff;
  height: 146px;
  line-height: 80px;
  font-size: 34px;
  font-weight: 400;
  text-align: center;
}
body #flow .inner .nos dl {
  width: 425px;
}
body #flow .inner .nos dl dt {
  font-size: 21px;
  line-height: 42px;
  font-weight: 500;
}
body #flow .inner .nos dl dd {
  font-size: 15px;
  line-height: 31px;
  font-weight: 400;
  text-align: justify;
}
body #contact {
  padding: 75px 0;
  background: linear-gradient(135deg, #eff1f3 0%, #eff1f3 50%, #e8ebed 50%, #e8ebed 100%);
  position: relative;
}
body #contact .inner {
  width: 685px;
  position: relative;
  margin: 0 auto;
}
body #contact .inner p#flow-ph {
  position: absolute;
  top: -500px;
  right: -190px;
}
body #contact .inner p#flow-ph img {
  width: 185px;
}
body #contact .inner h2 {
  margin-left: 260px;
}
body #contact .inner dl dt {
  width: 115px;
}
body #contact .inner dl dd {
  width: 570px;
  margin: 0 0 25px 0;
}
body #contact .inner dl dd input, body #contact .inner dl dd textarea {
  padding: 2% 1%;
  border: none;
  border-radius: 5px;
}
body #contact .inner dl dd input {
  width: 98%;
}
body #contact .inner dl dd textarea {
  width: 98.5%;
  height: 240px;
}
body #contact .inner p#submit input {
  width: 202px;
  background: #627a86;
  color: #fff;
  text-align: center;
  line-height: 42px;
  font-size: 15px;
  font-weight: 500;
  border-radius: 5px;
  border: none;
  margin: 0 auto;
  display: block;
}
body #logo {
  text-align: center;
  padding: 108px 0 50px 0;
}
body #logo img {
  width: 672px;
}
body footer {
  background: linear-gradient(135deg, #eff1f3 0%, #eff1f3 75%, #e8ebed 75%, #e8ebed 100%);
  padding: 30px 0 150px 0;
}
body footer .inner {
  width: 830px;
  margin: 0 auto;
}
body footer .inner p.logo {
  width: 254px;
  padding:0 0 55px 0;
}
body footer .inner ul.c-flex__sb{
  width:183px;
}
body footer .inner ul.c-flex__sb li{
  width:42px;
}
body footer .inner .texts strong {
  font-size: 16px;
  line-height: 25px;
  font-weight: 500;
  padding: 0 0 15px 0;
}
body footer .inner dl {
  width: 380px;
  font-size: 13px;
  line-height: 25px;
  font-weight: 400;
  padding: 0 0 40px 0;
}
body footer .inner dl dt {
  width: 55px;
  padding-right: 5px;
}
body footer .inner dl dd {
  width: 320px;
}
body footer .inner dl dd.long {
  width: 100%;
}
body footer .inner dl dd.long a {
  color: #627a86;
  font-weight: 500;
}
body footer .inner p.copy {
  width: 100%;
  text-align: right;
  font-size: 11px;
  line-height: 17px;
  font-weight: 500;
}
body #header-bg {
  width: 100%;
  background: linear-gradient(90deg, #eff1f3 0%, #eff1f3 50%, #e8ebed 50%, #e8ebed 100%);
}
body #header-bg .bg {
  background: url("../img/logo_mv.png") center center no-repeat;
  background-size: 2917px;
}

body#privacy #header-bg .bg {
  background: url("../img/logo_mv.png") 300px top no-repeat;
  background-size: 1000px;
}
body#privacy section#privacy {
  padding: 130px 0 90px 0;
  width: 540px;
  margin: 0 auto;
}
body#privacy section#privacy h2 {
  text-align: center;
}
body#privacy section#privacy .texts {
  font-size: 13px;
  line-height: 24px;
  font-weight: 400;
}
body#privacy section#privacy .texts p {
  padding: 0 0 2em 0;
  text-align: justify;
}

body#contact {
  background: linear-gradient(135deg, #eff1f3 0%, #eff1f3 70%, #e8ebed 70%, #e8ebed 100%);
}
body#contact #header-bg {
  background: none;
}
body#contact #header-bg .bg {
  background: none;
}
body#contact section#contact {
  background: none;
}
body#contact footer {
  background: none;
}

@media screen and (max-width: 750px) {
  body {
    font-size: 12px;
    line-height: 24px;
  }
  body .f-xs {
    font-size: 10px;
    line-height: 15px;
    font-weight: 400;
  }
  body h2 {
    font-size: 20px;
    line-height: 30px;
    margin: 0 0 15px 0;
  }
  body h2 small {
    padding-left: 1em;
    font-size: 14px;
    line-height: 30px;
  }
  body header .inner {
    width: 90%;
    padding: 15px 5%;
    align-items: center;
  }
  body header .inner p {
    width: 40%;
  }
  body header .inner nav {
    display: none;
  }
  body #mv .inner {
    width: 90%;
    margin: 0 auto;
    height: 100vh;
  }
  body #mv .inner h1 {
    padding: 40vh 0 40vh 0;
  }
  body #mv .inner h1 img {
    width: 90%;
  }
  body #mv .inner .f-xs {
    margin-left: 0;
    width: 310px;
  }
  body #section1to2 {
    width: 100%;
    padding: 50px 0 70px 0;
  }
  body #section1to2 #about-feature {
    width: 70%;
  }
  body #section1to2 #about-feature .texts {
    padding: 0 5% 40px 0;
  }
  body #section1to2 #about-feature .texts p {
    padding: 0 0 1em 0;
  }
  body #section1to2 #about-feature .texts p br {
    display: none;
  }
  body #section1to2 #about-feature #feature dl {
    padding: 0 5% 0 0;
  }
  body #section1to2 #about-feature #feature dl dt {
    font-size: 14px;
    line-height: 38px;
  }
  body #section1to2 #about-feature #feature dl dt strong {
    font-size: 17px;
    line-height: 35px;
  }
  body #section1to2 #about-feature #feature dl dd {
    padding: 0 0 18px 0;
  }
  body #section1to2 #about-feature #feature dl dd br {
    display: none;
  }
  body #section1to2 #about-feature-ph {
    width: 25%;
    padding: 55px 0 0 0;
  }
  body #section1to2 #about-feature-ph p:nth-child(2) {
    margin-top: -20px;
  }
  body #message {
    padding: 70px 0 30px 0;
  }
  body #message .inner {
    width: 100%;
  }
  body #message .inner #message-text {
    width: 70%;
  }
  body #message .inner #message-text h3 {
    font-size: 15px;
    line-height: 28px;
    margin: 0 5% 15px 0;
  }
  body #message .inner #message-text p.main-text {
    padding: 0 5% 1em 0;
  }
  body #message .inner #message-text dl.profile dt {
    font-size: 14px;
    line-height: 28px;
  }
  body #message .inner #message-text dl.profile dd {
    font-size: 12px;
    line-height: 24px;
    padding-right: 5%;
    text-align: justify;
  }
  body #message .inner #message-ph {
    width: 25%;
    padding: 45px 0 0 0;
  }
  body #partners {
    padding: 35px 0;
  }
  body #partners .inner {
    width: 90%;
    margin: 0 auto;
  }
  body #partners .inner h2 {
    margin-left: 0;
    text-align: center;
  }
  body #partners .inner ul {
    width: 90%;
    padding: 30px 0 0 0;
  }
  body #partners .inner ul li {
    margin: 0 auto 30px auto;
    width: 283px;
  }
  body #partners .inner ul li dl dt {
    font-size: 16px;
    line-height: 32px;
    padding: 0 0 5px 0;
  }
  body #partners .inner ul li dl dd {
    font-size: 12px;
    line-height: 23px;
    padding: 0 0 15px 0;
  }
  body #partners .inner ul li.logo1 {
    padding-top: 0px;
  }
  body #partners .inner ul li.logo1 p img {
    width: 167px;
  }
  body #partners .inner ul li.logo2 p img {
    width: 113px;
  }
  body #partners .inner ul li.logo3 {
    padding-top: 0px;
  }
  body #partners .inner ul li.logo3 p img {
    width: 195px;
  }
  body #partners .inner ul li.logo4 p img {
    width: 90px;
  }
  body #voice {
    padding: 30px 0;
  }
  body #voice .inner {
    width: 90%;
    margin: 0 auto;
  }
  body #voice .inner h2 {
    margin-left: 0;
    text-align: center;
  }
  body #voice .inner ul li {
    width: 255px;
    margin: 0 auto 30px auto;
  }
  body #voice .inner ul li dl.name dt {
    width: 113px;
    margin: 0 auto 0px auto;
  }
  body #voice .inner ul li dl.name dd {
    font-size: 12px;
    line-height: 23px;
    padding: 0 0 10px 0;
  }
  body #voice .inner ul li dl.text dt {
    font-size: 14px;
    line-height: 30px;
  }
  body #voice .inner ul li dl.text dd {
    font-size: 12px;
    line-height: 24px;
  }
  body #flow {
    padding: 30px 0;
  }
  body #flow .inner {
    width: 90%;
    margin: 0 auto;
  }
  body #flow .inner h2 {
    margin-left: 0;
    text-align: center;
  }
  body #flow .inner .nos {
    margin: 0 0 15px 0;
  }
  body #flow .inner .nos p {
    margin: 10px 0 0 0;
    width: 25px;
    height: 80px;
    line-height: 50px;
    font-size: 20px;
  }
  body #flow .inner .nos dl {
    width: 85%;
  }
  body #flow .inner .nos dl dt {
    font-size: 17px;
    line-height: 34px;
  }
  body #flow .inner .nos dl dd {
    font-size: 12px;
    line-height: 25px;
  }
  body #contact {
    padding: 30px 0;
  }
  body #contact .inner {
    width: 90%;
  }
  body #contact .inner p#flow-ph {
    display: none;
  }
  body #contact .inner h2 {
    margin-left: 0;
    text-align: center;
  }
  body #contact .inner dl dt {
    width: 100%;
  }
  body #contact .inner dl dd {
    width: 100%;
    margin: 0 0 15px 0;
  }
  body #logo {
    padding: 50px 0 25px 0;
  }
  body #logo img {
    width: 80%;
  }
  body footer {
    padding: 15px 0 120px 0;
  }
  body footer .inner {
    width: 90%;
  }
  body footer .inner p.logo {
    width: 50%;
  }
  body footer .inner .texts strong {
    font-size: 14px;
    line-height: 22px;
    padding: 0 0 10px 0;
  }
  body footer .inner dl {
    width: 100%;
    font-size: 11px;
    line-height: 20px;
    padding: 0 0 20px 0;
  }
  body footer .inner dl dt {
    width: 13.5%;
  }
  body footer .inner dl dd {
    width: 85%;
  }
  body footer .inner dl dd.long {
    width: 100%;
  }
  body footer .inner p.copy {
    font-size: 10px;
  }
  body #header-bg {
    width: 100%;
    background: linear-gradient(90deg, #eff1f3 0%, #eff1f3 50%, #e8ebed 50%, #e8ebed 100%);
  }
  body #header-bg .bg {
    background: url("../img/logo_mv.png") center center no-repeat;
    background-size: 400%;
  }
  body#privacy #header-bg .bg {
    background: linear-gradient(135deg, #eff1f3 0%, #eff1f3 75%, #e8ebed 75%, #e8ebed 100%);
  }
  body#privacy section#privacy {
    padding: 65px 0 45px 0;
    width: 90%;
  }
  body#privacy section#privacy .texts {
    font-size: 11px;
    line-height: 20px;
  }
}/*# sourceMappingURL=styles.css.map */