body {
  background: #fdedd9;
}

a {
  transition: 0.3s;
}
a img {
  transition: 0.3s;
}

.tb_xs {
  display: block;
}
@media screen and (min-width: 769px) {
  .tb_xs {
    display: none;
  }
}

.xs {
  display: block;
}
@media screen and (min-width: 641px) {
  .xs {
    display: none;
  }
}

.pc_tb {
  display: none;
}
@media screen and (min-width: 641px) {
  .pc_tb {
    display: block;
  }
}

.pc {
  display: none;
}
@media screen and (min-width: 769px) {
  .pc {
    display: block;
  }
}

.l-main {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 500;
  overflow: clip;
  letter-spacing: 0.02em;
  font-size: 28px;
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 769px) {
  .l-main {
    font-size: 16px;
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 1441px) {
  .l-main {
    font-size: 18px;
  }
}

.l-container {
  max-width: 1400px;
  padding: 0 4%;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .l-container {
    padding: 0 50px;
  }
}
@media screen and (min-width: 1081px) {
  .l-container {
    padding: 0 100px;
  }
}

.c-maincolor {
  color: #00a0e9;
}

.c-maincolordark {
  color: #006bba;
}

.c-title__border {
  color: #006bba;
  font-size: 50px;
  font-size: 6.6666666667vw;
  margin-bottom: 34px;
  text-align: center;
  font-weight: bold;
}
@media screen and (min-width: 641px) {
  .c-title__border {
    margin-bottom: 68px;
  }
}
@media screen and (min-width: 769px) {
  .c-title__border {
    font-size: 42px;
    margin-bottom: 68px;
  }
}

.c-title__border_inner {
  display: inline-block;
  line-height: 2;
  background: url(../img/line.png) repeat-x left bottom/auto 3px;
  padding-bottom: 1%;
}
@media screen and (min-width: 769px) {
  .c-title__border_inner {
    background-size: auto 6px;
  }
}

.p-bg__beige {
  background: #fdedd9;
}

.p-mainv {
  position: relative;
}

.p-mainv__inner {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.p-mainv__img img {
  width: 100%;
}

.p-mainv__title {
  max-width: 92%;
  margin: 40% auto 0;
}
@media screen and (min-width: 769px) {
  .p-mainv__title {
    margin: 13% auto 0;
    max-width: 51.3%;
  }
}

.p-mainv__text {
  text-align: center;
  margin: 5% auto 0;
  font-size: 36px;
  font-size: 4.8vw;
  width: 92%;
  line-height: 1.6;
}
@media screen and (min-width: 641px) {
  .p-mainv__text {
    width: 85%;
  }
}
@media screen and (min-width: 769px) {
  .p-mainv__text {
    line-height: 2.2;
    margin: 5% auto 0;
    font-size: 16px;
  }
}
@media screen and (min-width: 1081px) {
  .p-mainv__text {
    font-size: 18px;
  }
}
.p-mainv__text span {
  color: #0084d0;
  font-weight: 700;
  background: rgba(0, 0, 0, 0) repeat scroll 0 0;
  background-image: linear-gradient(transparent 72%, #fff 0%);
  background-image: -o-linear-gradient(transparent 72%, #fff 0%);
}

.p-mainv__marusanai {
  margin-top: 20px;
}
@media screen and (min-width: 769px) {
  .p-mainv__marusanai {
    margin-top: 90px;
  }
}

.p-tab__title {
  position: relative;
  text-align: center;
  margin: 50px 0 25px;
}
@media screen and (min-width: 769px) {
  .p-tab__title {
    margin: 120px 0 50px;
  }
}
.p-tab__title span {
  position: relative;
  display: inline-block;
  color: #006bba;
  font-weight: bold;
  font-size: 38px;
  font-size: 5.0666666667vw;
}
@media screen and (min-width: 769px) {
  .p-tab__title span {
    font-size: 24px;
  }
}
.p-tab__title span::before, .p-tab__title span::after {
  content: "";
  width: 2em;
  height: 3px;
  background: url(../img/line.png) repeat-x left center/auto 3px;
  display: block;
  position: absolute;
  top: 0.8em;
}
@media screen and (min-width: 769px) {
  .p-tab__title span::before, .p-tab__title span::after {
    background-size: auto 6px;
    height: 6px;
    width: 2.5em;
  }
}
.p-tab__title span::before {
  left: -2em;
  -webkit-transform: rotate(60deg);
          transform: rotate(60deg);
}
@media screen and (min-width: 769px) {
  .p-tab__title span::before {
    left: -2.5em;
  }
}
.p-tab__title span::after {
  right: -2em;
  -webkit-transform: rotate(-240deg);
          transform: rotate(-240deg);
}
@media screen and (min-width: 769px) {
  .p-tab__title span::after {
    right: -2.5em;
  }
}

.p-tab__menu {
  display: flex;
  justify-content: space-between;
}

.p-tab__menu_item {
  position: relative;
  z-index: 1;
  border-radius: 18px;
  color: #006bba;
  padding: 3% 3% 3% 5%;
  cursor: pointer;
  background: #fff url(../img/tab_carer.png) no-repeat top 26% left 6%/auto 30%;
  transition: 0.3s;
  width: 48%;
}
@media screen and (min-width: 641px) {
  .p-tab__menu_item {
    border-radius: 36px;
  }
}
@media screen and (min-width: 992px) {
  .p-tab__menu_item {
    background-size: auto 60%;
    background-position: center left 5%;
    border-radius: 32px;
    padding: 30px 5% 30px 10%;
    border: 4px solid #006bba;
    background-size: auto 60%;
    background-position: center left 5%;
    text-align: center;
  }
}
@media screen and (min-width: 1281px) {
  .p-tab__menu_item {
    background-size: auto 70%;
  }
}
@media screen and (min-width: 769px) {
  .p-tab__menu_item:hover {
    background-color: #006bba;
    color: #fff;
  }
  .p-tab__menu_item:hover svg path {
    stroke: #fff;
  }
}
.p-tab__menu_item svg {
  position: absolute;
  right: 7.5%;
  top: 71%;
  width: 9.7%;
  z-index: 2;
}
@media screen and (min-width: 992px) {
  .p-tab__menu_item svg {
    width: 5.7%;
    right: 4.5%;
    top: 47%;
  }
}
.p-tab__menu_item svg path {
  transition: 0.3s;
  stroke: #006bba;
}
.p-tab__menu_item.__worker {
  background-image: url(../img/tab_worker.png);
}
.p-tab__menu_item::before {
  content: "";
  display: block;
  width: 15%;
  height: 15%;
  background: url(../img/tab.svg) no-repeat center bottom/contain;
  position: absolute;
  bottom: -7%;
  left: 0;
  right: 0;
  margin: 0 auto;
  z-index: -1;
  opacity: 0;
  transition: 0.3s;
}
@media screen and (min-width: 769px) {
  .p-tab__menu_item::before {
    width: 60px;
    height: 60px;
    bottom: -20px;
    z-index: 0;
  }
}
.p-tab__menu_item.is_active {
  background-color: #006bba;
  color: #fff;
}
.p-tab__menu_item.is_active svg path {
  stroke: #fff;
}
.p-tab__menu_item.is_active::before {
  opacity: 1;
}

.p-tab__menu_item_text {
  font-size: 22px;
  font-size: 2.9333333333vw;
  width: 78%;
  margin: 0 0 0 auto;
}
@media screen and (min-width: 769px) {
  .p-tab__menu_item_text {
    width: 80%;
    font-size: 15px;
    font-size: 2vw;
  }
}
@media screen and (min-width: 992px) {
  .p-tab__menu_item_text {
    font-size: 15px;
    width: 87%;
  }
}
@media screen and (min-width: 1281px) {
  .p-tab__menu_item_text {
    font-size: 16px;
    width: 100%;
  }
}
@media screen and (min-width: 1441px) {
  .p-tab__menu_item_text {
    font-size: 18px;
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .p-tab__menu_item_text .pc {
    display: none;
  }
}
.p-tab__menu_item_text .__ml {
  display: none;
}

.p-tab__menu_item_title {
  font-size: 32px;
  font-size: 4.2666666667vw;
  font-weight: 700;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-tab__menu_item_title {
    font-size: 22px;
    font-size: 2.9333333333vw;
    width: 100%;
  }
}
@media screen and (min-width: 992px) {
  .p-tab__menu_item_title {
    font-size: 22px;
  }
}
@media screen and (min-width: 1441px) {
  .p-tab__menu_item_title {
    font-size: 26px;
  }
}
.p-tab__menu_item_title small {
  font-size: 0.8em;
}
@media screen and (max-width: 1280px) {
  .p-tab__menu_item_title small {
    display: block;
  }
}
@media screen and (min-width: 1281px) {
  .p-tab__menu_item_title small {
    font-size: 1em;
  }
}

.p-tab__content {
  margin-top: 35px;
}
@media screen and (min-width: 641px) {
  .p-tab__content {
    margin-top: 70px;
  }
}

.p-about {
  position: relative;
  padding: 60px 0;
}
@media screen and (min-width: 641px) {
  .p-about {
    padding: 80px 0;
  }
}
.p-about::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: #fffaf4;
  display: block;
  border-radius: 50px;
  margin: 0 auto;
  z-index: 1;
}
@media screen and (min-width: 769px) {
  .p-about::before {
    width: 94vw;
    border-radius: 114px;
  }
}
.p-about.__worker::before {
  background: #f9fcff;
}
.p-about .l-container {
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 769px) {
  .p-about .l-container {
    padding: 0 8%;
  }
}

.p-about__title {
  color: #006bba;
  font-weight: bold;
  text-align: center;
  line-height: 2;
  font-size: 56px;
  font-size: 7.4666666667vw;
}
@media screen and (min-width: 641px) {
  .p-about__title {
    font-size: 40px;
  }
}
@media screen and (min-width: 992px) {
  .p-about__title {
    font-size: 48px;
  }
}
.p-about__title span {
  display: inline-block;
}
.p-about__title .border {
  background: url(../img/line.png) repeat-x left bottom/auto 3px;
}
@media screen and (min-width: 769px) {
  .p-about__title .border {
    background-size: auto 6px;
  }
}
.p-about__title .color {
  color: #00a0e9;
}

.p-about__content {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 45px 0 0;
}
@media screen and (min-width: 641px) {
  .p-about__content {
    margin: 90px 0 0;
  }
}
.p-about__content.__bottom {
  margin-top: 50px;
}
@media screen and (min-width: 641px) {
  .p-about__content.__bottom {
    margin-top: 100px;
  }
}
@media screen and (min-width: 992px) {
  .p-about__content.__bottom {
    margin-top: 115px;
  }
}
.p-about__content.__bottom .__detail {
  order: 1;
}
@media screen and (min-width: 992px) {
  .p-about__content.__bottom .__detail {
    order: 2;
    padding-left: 20px;
  }
}
@media screen and (min-width: 1441px) {
  .p-about__content.__bottom .__detail {
    padding-left: 50px;
  }
}
.p-about__content.__bottom .__img {
  order: 2;
}
@media screen and (min-width: 992px) {
  .p-about__content.__bottom .__img {
    order: 1;
  }
}
.p-about__content.__bottom .__img img {
  width: 100%;
  max-width: 200%;
  margin-left: -7%;
}
@media screen and (min-width: 769px) {
  .p-about__content.__bottom .__img img {
    width: 80%;
  }
}
@media screen and (min-width: 992px) {
  .p-about__content.__bottom .__img img {
    margin-left: 0;
    width: 100%;
    -webkit-transform: translate(-18%, 13%) scale(1.22);
            transform: translate(-18%, 13%) scale(1.22);
  }
}
@media screen and (min-width: 1701px) {
  .p-about__content.__bottom .__img img {
    -webkit-transform: translate(-36%, 16%) scale(1.52);
            transform: translate(-36%, 16%) scale(1.52);
  }
}

.p-about__content_item.__detail {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .p-about__content_item.__detail {
    padding-left: 50px;
  }
}
@media screen and (min-width: 992px) {
  .p-about__content_item.__detail {
    width: 60%;
  }
}
@media screen and (min-width: 1281px) {
  .p-about__content_item.__detail {
    width: 50%;
  }
}
@media screen and (min-width: 1441px) {
  .p-about__content_item.__detail {
    padding-left: 50px;
  }
}
.p-about__content_item.__img {
  width: 100%;
}
@media screen and (min-width: 992px) {
  .p-about__content_item.__img {
    width: 40%;
  }
}
@media screen and (min-width: 1281px) {
  .p-about__content_item.__img {
    width: 50%;
  }
}
.p-about__content_item.__img img {
  display: block;
  width: 80%;
  margin: 35px auto 0;
}
@media screen and (min-width: 641px) {
  .p-about__content_item.__img img {
    margin-top: 70px;
    -webkit-transform: translate(5%, -1%) scale(1.02);
            transform: translate(5%, -1%) scale(1.02);
  }
}
@media screen and (min-width: 769px) {
  .p-about__content_item.__img img {
    width: 60%;
  }
}
@media screen and (min-width: 992px) {
  .p-about__content_item.__img img {
    width: 100%;
    margin: 0;
    -webkit-transform: translate(0%, -1%) scale(1);
            transform: translate(0%, -1%) scale(1);
  }
}
@media screen and (min-width: 1701px) {
  .p-about__content_item.__img img {
    -webkit-transform: translate(20%, -1%) scale(1.12);
            transform: translate(20%, -1%) scale(1.12);
  }
}

.p-about__content_title {
  font-weight: bold;
  font-size: 36px;
  font-size: 4.8vw;
  line-height: 1.8;
  margin-bottom: 25px;
  text-align: center;
}
@media screen and (min-width: 641px) {
  .p-about__content_title {
    margin-bottom: 40px;
    text-align: left;
  }
}
@media screen and (min-width: 769px) {
  .p-about__content_title {
    font-size: 22px;
    line-height: 2;
  }
}
@media screen and (min-width: 1441px) {
  .p-about__content_title {
    font-size: 26px;
    -webkit-font-feature-settings: "palt";
            font-feature-settings: "palt";
  }
}
.p-about__content_title span {
  color: #006bba;
}

.p-about__content_text {
  line-height: 2.2;
}
.p-about__content_text.__carer span {
  background: rgba(0, 0, 0, 0) repeat scroll 0 0;
  background-image: linear-gradient(transparent 55%, #fae1c0 0%);
  background-image: -o-linear-gradient(transparent 55%, #fae1c0 0%);
}
.p-about__content_text.__worker span {
  background: rgba(0, 0, 0, 0) repeat scroll 0 0;
  background-image: linear-gradient(transparent 55%, #d1ebf3 0%);
  background-image: -o-linear-gradient(transparent 55%, #d1ebf3 0%);
}
.p-about__content_text + .p-about__content_text {
  margin-top: 15px;
}
@media screen and (min-width: 1441px) {
  .p-about__content_text + .p-about__content_text {
    margin-top: 30px;
  }
}
.p-about__content_text small {
  margin-top: 15px;
}

.p-about__deco {
  position: absolute;
  z-index: 0;
  width: 42.4%;
}
.p-about__deco.__01 {
  right: -6%;
  top: -9%;
}
.p-about__deco.__02 {
  left: -10%;
  top: 42%;
}
.p-about__deco.__03 {
  right: -13%;
  bottom: -10%;
}

.p-donation {
  margin-top: 70px;
  position: relative;
  z-index: 10;
}
@media screen and (min-width: 641px) {
  .p-donation {
    margin-top: 140px;
  }
}

.p-donation__subtitle {
  margin-bottom: 5px;
  max-width: 700px;
}
@media screen and (min-width: 641px) {
  .p-donation__subtitle {
    margin-bottom: 15px;
  }
}
@media screen and (min-width: 769px) {
  .p-donation__subtitle {
    max-width: 100%;
    width: 63.9%;
    margin: 0 auto 15px;
  }
}

.p-donation__title {
  font-size: 50px;
  font-size: 6.6666666667vw;
  line-height: 1.6;
  color: #006bba;
  text-align: center;
  margin-bottom: 25px;
}
@media screen and (min-width: 641px) {
  .p-donation__title {
    margin-bottom: 110px;
  }
}
@media screen and (min-width: 769px) {
  .p-donation__title {
    font-size: 42px;
    margin-bottom: 60px;
  }
}

.p-donation__table {
  position: relative;
}
@media screen and (max-width: 769px) {
  .p-donation__table {
    width: 104vw;
    margin-left: -4vw;
    margin-right: -4vw;
    padding-right: 0;
    padding-left: 0;
  }
}

.p-donation__table_title {
  position: absolute;
  z-index: 1;
  left: 2%;
  top: 0;
  background: #fcf0d5;
  border: 2px solid #00a0e9;
  display: flex;
  justify-content: center;
  align-content: center;
  align-items: center;
  width: 22.4vw;
  height: 22.4vw;
  border-radius: 100%;
}
@media screen and (min-width: 641px) {
  .p-donation__table_title {
    width: 105px;
    height: 105px;
    left: 1%;
    top: -20px;
    border: 3px solid #00a0e9;
  }
}
@media screen and (min-width: 992px) {
  .p-donation__table_title {
    left: -20px;
  }
}
.p-donation__table_title span {
  font-size: 36px;
  font-size: 4.8vw;
  font-weight: bold;
  display: inline-block;
  color: #00a0e9;
  letter-spacing: 4px;
  line-height: 1.4;
}
@media screen and (min-width: 641px) {
  .p-donation__table_title span {
    font-size: 23px;
    line-height: 1.2;
  }
}

.p-donation__table_inner {
  position: relative;
  overflow-x: scroll;
}
@media screen and (max-width: 769px) {
  .p-donation__table_inner {
    padding-top: 30px;
  }
}

.p-donation__table_frame {
  border: 3px solid #00a0e9;
  border-radius: 20px;
  overflow: hidden;
}
@media screen and (max-width: 769px) {
  .p-donation__table_frame {
    min-width: 1200px;
    margin-left: 4%;
    margin-right: 8%;
  }
}
@media screen and (max-width: 641px) {
  .p-donation__table_frame {
    min-width: 800px;
  }
}
@media screen and (min-width: 769px) {
  .p-donation__table_frame {
    width: 100%;
  }
}

.p-donation__table_content {
  border-collapse: collapse;
  background: #fff;
  width: 100%;
}
.p-donation__table_content thead {
  background: #00a0e9;
  color: #fff;
  font-size: 32px;
  font-size: 4.2666666667vw;
}
@media screen and (min-width: 769px) {
  .p-donation__table_content thead {
    font-size: 20px;
  }
}
.p-donation__table_content thead th {
  padding: 20px 0;
}
@media screen and (min-width: 641px) {
  .p-donation__table_content thead th {
    padding: 30px 0;
  }
}
.p-donation__table_content tbody tr + tr {
  border-top: 1px solid #c7c7c7;
}
.p-donation__table_content tbody td {
  vertical-align: middle;
  padding: 25px 2.5%;
  line-height: 2;
}
@media screen and (min-width: 641px) {
  .p-donation__table_content tbody td {
    padding: 25px 5%;
  }
}
.p-donation__table_content tbody td:first-child {
  width: 37.9%;
}
@media screen and (min-width: 769px) {
  .p-donation__table_content tbody td:first-child {
    text-align: center;
  }
}
.p-donation__table_content tbody td + td {
  border-left: 1px solid #c7c7c7;
  width: 62.1%;
}
.p-donation__table_content tbody td img {
  max-width: 100%;
  width: 200px;
  margin: 0;
  display: block;
}
@media screen and (min-width: 1081px) {
  .p-donation__table_content tbody td img {
    max-width: 288px;
    width: 288px;
    margin: 0 auto;
  }
}
.p-donation__table_content a {
  display: inline-block;
  margin-top: 5px;
}
.p-donation__table_content a span {
  color: #006bba;
  border-bottom: 1px solid #006bba;
  line-height: 1.4;
}
.p-donation__table_content a::after {
  content: "";
  width: 12px;
  height: 12px;
  display: inline-block;
  background: url(../img/target_blank.png) no-repeat center center/contain;
  margin-left: 4px;
}
.p-donation__table_content .blue {
  color: #006bba;
  line-height: 1.4;
}

.p-movie {
  margin-top: 60px;
  padding-bottom: 180px;
  position: relative;
}
@media screen and (min-width: 641px) {
  .p-movie {
    padding-bottom: 330px;
  }
}
@media screen and (min-width: 769px) {
  .p-movie {
    margin-top: 115px;
    padding-bottom: 140px;
  }
}
.p-movie::before {
  content: "";
  position: absolute;
  top: -55%;
  left: 0;
  right: 0;
  width: 100%;
  height: 140%;
  display: block;
  margin: 0 auto;
  z-index: 1;
  background: url(../img/sp/movie_bg.png) no-repeat center top/100% auto;
}
@media screen and (min-width: 641px) {
  .p-movie::before {
    top: -37%;
  }
}
@media screen and (min-width: 769px) {
  .p-movie::before {
    top: -28.5%;
    background: url(../img/movie_bg.png) no-repeat center top/100% auto;
  }
}
@media screen and (min-width: 1701px) {
  .p-movie::before {
    top: -37.5%;
  }
}
.p-movie .l-container {
  position: relative;
  z-index: 10;
}

.p-movie__text {
  margin-bottom: 34px;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-movie__text {
    margin-bottom: 68px;
  }
}

.p-movie__frame {
  position: relative;
  overflow: hidden;
  border-radius: 20px;
  border: 2.5px solid #006bba;
  position: relative;
  z-index: 10;
  padding-top: 56.25%;
}
@media screen and (min-width: 769px) {
  .p-movie__frame {
    border-radius: 60px;
    border: 5px solid #006bba;
    background-size: 12% auto;
  }
}
@media screen and (min-width: 1441px) {
  .p-movie__frame {
    background-size: 18% auto;
  }
}
.p-movie__frame iframe {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.p-movie__frame_inner {
  display: block;
  width: 100%;
  height: 100%;
  z-index: 100;
  position: absolute;
  left: 0;
  top: 0;
}
.p-movie__frame_inner.is_active {
  display: none;
}

.p-movie__deco {
  position: absolute;
}
.p-movie__deco.__01 {
  z-index: 0;
  width: 24.4%;
  right: -9%;
  top: -5.5%;
  display: none;
}
@media screen and (min-width: 769px) {
  .p-movie__deco.__01 {
    display: block;
  }
}
.p-movie__deco.__02 {
  z-index: 1;
  width: 55.7%;
  left: -11%;
  bottom: -42.5%;
}
@media screen and (min-width: 769px) {
  .p-movie__deco.__02 {
    width: 42.1%;
    left: -22%;
    bottom: -31.5%;
  }
}
.p-movie__deco.__03 {
  z-index: 0;
  width: 42.4%;
  left: -11%;
  top: -72%;
}
@media screen and (min-width: 769px) {
  .p-movie__deco.__03 {
    top: -72%;
  }
}
@media screen and (min-width: 1701px) {
  .p-movie__deco.__03 {
    top: -62%;
  }
}

.p-project {
  position: relative;
}
.p-project::before {
  content: "";
  position: absolute;
  top: -4%;
  left: 0;
  right: 0;
  width: 100%;
  height: 120%;
  display: block;
  margin: 0 auto;
  z-index: 2;
  background: url(../img/sp/project_bg.png) no-repeat center top/100% auto;
}
@media screen and (min-width: 641px) {
  .p-project::before {
    top: -9%;
  }
}
@media screen and (min-width: 992px) {
  .p-project::before {
    top: -15%;
    background: url(../img/project_bg.png) no-repeat center top/100% auto;
  }
}
@media screen and (min-width: 1441px) {
  .p-project::before {
    top: -25%;
  }
}
.p-project .l-container {
  position: relative;
  z-index: 10;
}

.p-project__balloon {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media screen and (min-width: 992px) {
  .p-project__balloon {
    flex-wrap: nowrap;
  }
}
.p-project__balloon.__reverse .p-project__balloon_item.__img {
  order: 1;
}
@media screen and (min-width: 992px) {
  .p-project__balloon.__reverse .p-project__balloon_item.__img {
    order: 2;
  }
}
@media screen and (min-width: 992px) {
  .p-project__balloon.__reverse .p-project__balloon_item.__img figure {
    margin-right: 0;
    margin-left: -31.5%;
  }
}
.p-project__balloon.__reverse .p-project__balloon_item.__detail {
  order: 2;
}
@media screen and (min-width: 992px) {
  .p-project__balloon.__reverse .p-project__balloon_item.__detail {
    order: 1;
  }
}
.p-project__balloon.__reverse .p-project__balloon_arrow {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
  left: auto;
  right: -10%;
}
.p-project__balloon + .p-project__balloon {
  margin-top: 40px;
}
@media screen and (min-width: 641px) {
  .p-project__balloon + .p-project__balloon {
    margin-top: 80px;
  }
}

.p-project__balloon_item.__img {
  position: relative;
  z-index: 2;
  width: 36%;
  margin: 0 auto -19%;
}
@media screen and (min-width: 992px) {
  .p-project__balloon_item.__img {
    width: 22.8%;
    margin: 0;
  }
}
.p-project__balloon_item.__img figure {
  border-radius: 100%;
  overflow: hidden;
  border: 5px solid #fcf6e9;
}
@media screen and (min-width: 992px) {
  .p-project__balloon_item.__img figure {
    border: 10px solid #fcf6e9;
    width: 131.5%;
    margin: 0 -31.5% 0 0;
  }
}
.p-project__balloon_item.__img figure img {
  border-radius: 100%;
}
.p-project__balloon_item.__detail {
  width: 100%;
  background: #fcf6e9;
  border-radius: 45px;
  position: relative;
  padding: 24% 4% 5%;
}
@media screen and (min-width: 992px) {
  .p-project__balloon_item.__detail {
    width: 77.2%;
    padding: 50px 7.8% 20px;
    border-radius: 100px;
  }
}
@media screen and (min-width: 1081px) {
  .p-project__balloon_item.__detail {
    padding: 50px 10.8% 20px;
  }
}

.p-project__balloon_arrow {
  position: absolute;
  left: -10%;
  width: 10.2%;
  top: 35%;
  display: none;
}
@media screen and (min-width: 992px) {
  .p-project__balloon_arrow {
    display: block;
  }
}
@media screen and (min-width: 1081px) {
  .p-project__balloon_arrow {
    top: 25rem;
  }
}

.p-project__balloon_title {
  font-weight: bold;
  text-align: center;
}
.p-project__balloon_title small {
  color: #006bba;
  font-size: 26px;
  font-size: 3.4666666667vw;
}
@media screen and (min-width: 769px) {
  .p-project__balloon_title small {
    font-size: 20px;
  }
}
.p-project__balloon_title span {
  font-size: 44px;
  font-size: 5.8666666667vw;
  display: block;
  margin-top: 5px;
}
@media screen and (min-width: 641px) {
  .p-project__balloon_title span {
    font-size: 36px;
    font-size: 4.8vw;
  }
}
@media screen and (min-width: 769px) {
  .p-project__balloon_title span {
    font-size: 22px;
    font-size: 2.9333333333vw;
  }
}
@media screen and (min-width: 992px) {
  .p-project__balloon_title span {
    font-size: 32px;
  }
}
@media screen and (min-width: 1281px) {
  .p-project__balloon_title span {
    font-size: 36px;
  }
}

.p-project__balloon_faq {
  padding: 7.5% 0 5%;
  line-height: 2;
}
@media screen and (min-width: 769px) {
  .p-project__balloon_faq {
    padding: 35px 0;
  }
}
.p-project__balloon_faq dt {
  font-size: 32px;
  font-size: 4.2666666667vw;
  display: block;
  background: url(../img/balloon_faq.png) no-repeat top 0.4em left/16% auto;
  padding: 0 0 0 20%;
  min-height: 60px;
  color: #00a0e9;
  font-weight: bold;
  margin-bottom: 7%;
  line-height: 1.8;
}
@media screen and (min-width: 769px) {
  .p-project__balloon_faq dt {
    font-size: 18px;
    padding: 14px 0 0 80px;
    margin-bottom: 10px;
    background-size: 60px auto;
    background-position: top left;
  }
}
.p-project__balloon_faq dd {
  display: block;
  line-height: 2;
}
.p-project__balloon_faq + .p-project__balloon_faq {
  border-top: 5px dotted #e6e6e6;
}

.p-thanks {
  position: relative;
  z-index: 10;
  padding: 65px 0 80px;
}
@media screen and (min-width: 641px) {
  .p-thanks {
    padding: 130px 0 160px;
  }
}
@media screen and (min-width: 769px) {
  .p-thanks {
    padding: 160px 0 180px;
  }
}
.p-thanks .p-thanks__inner {
  position: relative;
}

.p-thanks__title {
  font-size: 56px;
  font-size: 7.4666666667vw;
  color: #006bba;
  text-align: center;
  margin-bottom: 3.5em;
  line-height: 1.8;
}
@media screen and (min-width: 641px) {
  .p-thanks__title {
    font-size: 36px;
    font-size: 4.8vw;
    margin-bottom: 40px;
  }
}
@media screen and (min-width: 992px) {
  .p-thanks__title {
    font-size: 48px;
    line-height: 1.6;
  }
}
.p-thanks__title .p-thanks__title_inner {
  position: relative;
  padding: 0 0.1em;
  display: inline-block;
}
@media screen and (min-width: 769px) {
  .p-thanks__title .p-thanks__title_inner {
    padding: 0 0.9em;
  }
}
.p-thanks__title .p-thanks__title_inner::before, .p-thanks__title .p-thanks__title_inner::after {
  content: "";
  width: 1.7em;
  height: 100%;
  position: absolute;
  bottom: 0.2em;
  display: block;
  background: url(../img/sp/thanks_title.png?01) no-repeat bottom center/contain;
}
@media screen and (min-width: 769px) {
  .p-thanks__title .p-thanks__title_inner::before, .p-thanks__title .p-thanks__title_inner::after {
    width: 55px;
    background: url(../img/thanks_title.png?01) no-repeat bottom center/contain;
  }
}
.p-thanks__title .p-thanks__title_inner::before {
  left: -1.7em;
}
@media screen and (min-width: 769px) {
  .p-thanks__title .p-thanks__title_inner::before {
    left: -55px;
  }
}
.p-thanks__title .p-thanks__title_inner::after {
  right: -1.7em;
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
}
@media screen and (min-width: 769px) {
  .p-thanks__title .p-thanks__title_inner::after {
    right: -55px;
  }
}

.p-thanks__list {
  position: relative;
  z-index: 1;
}
.p-thanks__list .swiper-wrapper {
  transition-timing-function: linear;
}
.p-thanks__list .swiper-slide {
  width: auto !important;
}
.p-thanks__list img {
  width: auto;
  height: 50.9vw;
  box-sizing: content-box;
}
@media screen and (min-width: 769px) {
  .p-thanks__list img {
    height: 25.6rem;
    width: auto;
  }
}

.p-thanks__deco {
  width: 22.4%;
  max-width: 93px;
  position: absolute;
  bottom: -84%;
  right: 0;
  z-index: 0;
}
@media screen and (min-width: 769px) {
  .p-thanks__deco {
    width: 93px;
    bottom: -63px;
  }
}

.p-product {
  border-radius: 45px 45px 0 0;
  padding: 70px 0 0;
  background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(255, 250, 244) 89%);
}
@media screen and (min-width: 641px) {
  .p-product {
    padding: 180px 0 0;
  }
}
@media screen and (min-width: 769px) {
  .p-product {
    background: #fff;
    border-radius: 101px 173px 0 0;
    padding: 180px 0 0;
  }
}

.p-product__inner {
  background: #fcf6e9;
  border-radius: 45px;
  padding: 0 5% 17%;
  margin: 18% 0 0;
}
@media screen and (min-width: 769px) {
  .p-product__inner {
    margin: 1% 0 0;
    border-radius: 80px;
    padding: 0 8.3% 100px;
  }
}

.p-product__maintitle {
  position: absolute;
  left: 0;
  right: 0;
  top: -60px;
  font-size: 30px;
  color: #fff;
  position: relative;
  width: 210px;
  margin: 0 auto;
}
.p-product__maintitle .p-product__maintitle_inner {
  position: absolute;
  left: 0;
  top: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  width: 100%;
}
.p-product__maintitle .p-product__maintitle_inner span {
  margin-top: -5px;
  display: inline-block;
}

.p-product__title {
  background: url(../img/border.png) repeat center center/11px;
  padding: 30px 0;
  text-align: center;
  width: 110.6%;
  margin: 0px -5.8%;
  color: #006bba;
}
@media screen and (min-width: 769px) {
  .p-product__title {
    width: 119.6%;
    margin: 0 -9.8%;
  }
}
.p-product__title small {
  font-size: 30px;
  font-size: 4vw;
  display: block;
  color: #00a0e9;
}
@media screen and (min-width: 769px) {
  .p-product__title small {
    font-size: 24px;
  }
}
.p-product__title span {
  font-size: 50px;
  font-size: 6.6666666667vw;
  display: block;
  margin-top: 0.2em;
}
@media screen and (min-width: 769px) {
  .p-product__title span {
    font-size: 36px;
    margin-top: 0;
  }
}

.p-product__about_title {
  text-align: center;
  margin: 5% 0 40px;
}
@media screen and (min-width: 769px) {
  .p-product__about_title {
    margin: 0 0 40px;
  }
}
.p-product__about_title .p-product__about_title_inner {
  position: relative;
  display: inline-block;
}
.p-product__about_title .p-product__about_title_inner::before {
  content: "";
  width: 70.7%;
  height: 2px;
  background: #006bba;
  border-radius: 1em;
  position: absolute;
  bottom: 0;
  left: 5%;
}
@media screen and (min-width: 769px) {
  .p-product__about_title .p-product__about_title_inner::before {
    height: 4px;
  }
}
.p-product__about_title .p-product__about_title_inner span {
  position: relative;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  color: #006bba;
  padding-bottom: 10px;
  font-size: 50px;
  font-size: 6.6666666667vw;
}
@media screen and (min-width: 769px) {
  .p-product__about_title .p-product__about_title_inner span {
    font-size: 36px;
  }
}
.p-product__about_title .p-product__about_title_inner span::before, .p-product__about_title .p-product__about_title_inner span::after {
  content: "";
  height: 2px;
  background: #006bba;
  border-radius: 1em;
  position: absolute;
  bottom: 0;
}
@media screen and (min-width: 769px) {
  .p-product__about_title .p-product__about_title_inner span::before, .p-product__about_title .p-product__about_title_inner span::after {
    height: 4px;
  }
}
.p-product__about_title .p-product__about_title_inner span::before {
  right: 16.9%;
  width: 4.8%;
}
@media screen and (min-width: 769px) {
  .p-product__about_title .p-product__about_title_inner span::before {
    right: 17.9%;
    width: 4.3%;
  }
}
.p-product__about_title .p-product__about_title_inner span::after {
  right: 1.5%;
  width: 12.5%;
}
@media screen and (min-width: 769px) {
  .p-product__about_title .p-product__about_title_inner span::after {
    right: 1.5%;
    width: 14.4%;
  }
}

.p-product__about_subtitle {
  text-align: center;
  margin: 5% 0 20px;
  font-size: 40px;
  font-size: 5.3333333333vw;
}
@media screen and (min-width: 769px) {
  .p-product__about_subtitle {
    font-size: 28px;
    margin: 0 0 20px;
  }
}

.p-product__about_text {
  line-height: 2;
}
@media screen and (min-width: 769px) {
  .p-product__about_text {
    text-align: center;
  }
}
.p-product__about_text .copyright {
  vertical-align: -0.4em;
}

.p-product__about_img {
  padding: 30px 6.4% 60px;
}
@media screen and (min-width: 641px) {
  .p-product__about_img {
    padding: 40px 12.4% 110px;
  }
}

.p-product__recommend_inner {
  margin: 15% 0;
}
@media screen and (min-width: 992px) {
  .p-product__recommend_inner {
    margin: 90px 0;
  }
}

@media screen and (min-width: 992px) {
  .p-product__recommend_list {
    display: flex;
    justify-content: space-between;
  }
}

.p-product__recommend_item {
  position: relative;
  width: 80%;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .p-product__recommend_item {
    width: 60%;
  }
}
@media screen and (min-width: 992px) {
  .p-product__recommend_item {
    width: 31.3%;
    margin: 0;
  }
}
.p-product__recommend_item + .p-product__recommend_item {
  margin-top: 50px;
}
@media screen and (min-width: 641px) {
  .p-product__recommend_item + .p-product__recommend_item {
    margin-top: 100px;
  }
}
@media screen and (min-width: 992px) {
  .p-product__recommend_item + .p-product__recommend_item {
    margin: 0;
  }
}

.p-product__recommend_number {
  font-size: 84px;
  font-size: 11.2vw;
  font-family: "Quicksand", sans-serif;
  font-weight: 700;
  color: #00a0e9;
  position: absolute;
  left: 0;
  top: 0;
  line-height: 1;
}
@media screen and (min-width: 769px) {
  .p-product__recommend_number {
    font-size: 52px;
  }
}

@media screen and (min-width: 769px) {
  .p-product__recommend_img {
    min-height: 288px;
  }
}

.p-product__recommend_title {
  font-size: 41.4px;
  font-size: 5.52vw;
  margin: 7% 0 3%;
  color: #006bba;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-product__recommend_title {
    font-size: 26px;
    margin: 15px 0;
  }
}

.p-product__recommend_text {
  line-height: 2;
}

.p-product__movie {
  position: relative;
  width: 91%;
  margin: 0 auto;
  height: auto;
  padding-top: 50.6%;
}
@media screen and (min-width: 992px) {
  .p-product__movie {
    width: 91%;
    height: auto;
  }
}
@media screen and (min-width: 1081px) {
  .p-product__movie {
    height: auto;
  }
}
.p-product__movie video {
  width: 100%;
  display: block;
}
.p-product__movie iframe {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.p-product__point {
  margin: 18% 0 0;
}
@media screen and (min-width: 992px) {
  .p-product__point {
    margin: 110px 0 0;
  }
}

.p-product__point_list {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: 20% 0 -20%;
}
@media screen and (min-width: 992px) {
  .p-product__point_list {
    margin: 95px 0 -50px;
  }
}

.p-product__point_item {
  position: relative;
  margin-bottom: 20%;
  background: #fff;
  border-radius: 20px;
  padding: 12% 5% 11%;
}
@media screen and (min-width: 992px) {
  .p-product__point_item {
    width: 48%;
    margin-bottom: 50px;
    padding: 40px 7%;
  }
}

.p-product__point_number {
  background: url(../img/point_number.png) no-repeat center center/contain;
  width: 22.9%;
  height: 75px;
  display: flex;
  justify-content: center;
  align-items: center;
  color: #fff;
  font-family: "Quicksand", sans-serif;
  font-weight: 700;
  font-size: 48px;
  font-size: 6.4vw;
  position: absolute;
  left: -4%;
  top: -36px;
}
@media screen and (min-width: 641px) {
  .p-product__point_number {
    font-size: 40px;
    font-size: 5.3333333333vw;
  }
}
@media screen and (min-width: 769px) {
  .p-product__point_number {
    width: 95px;
    left: -18px;
    font-size: 30px;
  }
}

.p-product__point_img {
  width: 50%;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .p-product__point_img {
    width: 40%;
  }
}
@media screen and (min-width: 992px) {
  .p-product__point_img {
    width: 62.7%;
  }
}

.p-product__point_title {
  margin: 5% 0 4%;
  font-size: 38px;
  font-size: 5.0666666667vw;
  font-weight: bold;
  color: #006bba;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-product__point_title {
    font-size: 24px;
    margin: 20px -10% 15px;
    width: 120%;
  }
}

.p-product__point_text {
  line-height: 2;
}
.p-product__point_text span {
  background: rgba(0, 0, 0, 0) repeat scroll 0 0;
  background-image: linear-gradient(transparent 72%, #fae1c0 0%);
  background-image: -o-linear-gradient(transparent 72%, #fae1c0 0%);
}

.p-banner {
  padding: 14% 0 120px;
  background: #fff;
}
@media screen and (min-width: 769px) {
  .p-banner {
    padding: 90px 0 200px;
  }
}
@media screen and (max-width: 767px) {
  .mc-breadcrumb {
    margin-top: -70px;
  }
}
@media screen and (min-width: 768px) {
  .gfooter__inner {
    margin-top: 0;
  }
}

@media screen and (min-width: 769px) {
  .p-banner__list {
    display: flex;
    justify-content: space-between;
  }
}
.p-banner__list li {
  width: 100%;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .p-banner__list li {
    width: 48%;
  }
}
.p-banner__list li + li {
  margin-top: 10%;
}
@media screen and (min-width: 769px) {
  .p-banner__list li + li {
    margin: 0;
  }
}

.p-banner__img {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 2%;
}
@media screen and (min-width: 769px) {
  .p-banner__img {
    border-radius: 20px;
    margin-bottom: 10px;
  }
}

.p-banner__link {
  display: inline-block;
}
@media screen and (min-width: 769px) {
  .p-banner__link {
    margin-top: 10px;
  }
}
.p-banner__link a {
  display: block;
}
.p-banner__link .p-banner__link_inner {
  color: #006bba;
  border-bottom: 1px solid #006bba;
  display: inline;
}
.p-banner__link::after {
  content: "";
  width: 11px;
  height: 11px;
  display: inline-block;
  background: url(../img/target_blank.png) no-repeat center center/contain;
  margin-left: 4px;
}
@media screen and (min-width: 769px) {
  .p-banner__link::after {
    width: 12px;
    height: 12px;
  }
}

footer .ftTop {
  margin-top: 0;
}