@charset "utf-8";

/*---------------------------------------------------------------------------------------------
  button
---------------------------------------------------------------------------------------------*/
.milto__btn {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 5rem;
    padding: 0 3rem;
    font-size: 1.5rem;
    font-weight: 600;
    color: #fff;
    border-radius: .4rem;
    background-color: #2264f1;
}
.milto__btn:hover {
    color: #fff;
}
.milto__btn.aplly__btn {
    font-size: 1.6rem;
    font-weight: normal;
}
.milto__btn.inquery__btn {
    position: relative;
    width: 38rem;
    height: 8rem;
    margin-right: 2rem;
    font-size: 2rem;
    font-weight: 600;
    letter-spacing: .1em;
    border-radius: 1rem;
}
.milto__btn.inquery__btn::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 2rem;
    transform: translateY(-50%);
    width: 2.3rem;
    height: 1.2rem;
    background: url(../image/yajirushi.png) no-repeat center center / contain;
}
.milto__btn.inquery__btn .fa {
    margin-right: 1rem;
    font-weight: bold;
}
.milto__btn.consent__btn {
    width: 37.5rem;
    height: 6rem;
    margin: 0 auto;
    border-radius: 1rem;
}
.milto__btn-type02 {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 4.5rem;
    padding: 0 3rem;
    font-size: 1.5rem;
    font-weight: 600;
    color: #fff;
    border-radius: 2.25rem;
}
.milto__btn-type02.login__btn {
    margin-right: 1.5rem;
    background-color: transparent;
    border: .1rem solid #fff;
}
.milto__btn-type02.login__btn:hover {
    background-color: #2264f1;
    border: .1rem solid #2264f1;
    color: #fff;
    opacity: 1;
}
.milto__btn-type02.inquery__btn {
    background-color: #2264f1;
    border: .1rem solid #2264f1;
    color: #fff;
}
.milto__btn-type02.inquery__btn .fa {
    margin-right: 0.5rem;
    color: #fff;
    font-size: 2rem;
    transition: all 300ms ease-out;
}
.milto__btn-type02.inquery__btn:hover {
    background-color: #fff;
    border-color: #fff;
    color: #2264f1;
    opacity: 1;
}
.milto__btn-type02.inquery__btn:hover .fa {
    color: #2264f1;
}

/*---------------------------------------------------------------------------------------------
  header
---------------------------------------------------------------------------------------------*/
.milto__header {
    position: absolute;
    z-index: 50;
    width: 100%;
    height: 10rem;
    margin: 0 auto;
    background-color: rgba(0,0,0,.75);
}

.milto__header-inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 112rem;
    height: 100%;
    margin: 0 auto;
}
.headre-logo__box img {
    max-width: 24rem;
}
.milto__navigation {}
.milto__navigation ul {
    display: flex;
    align-items: center;
}
.milto__navigation ul li {
    margin-right: 3rem;
}
.milto__navigation ul li:last-child {
    margin-right: 0;
}
.milto__navigation ul a {
    font-size: 1.5rem;
    font-weight: 600;
    color: #fff;
}
.milto__navigation ul a:hover {
    color: #fcc52e;
    opacity: 1;
}
.milto-sub__navigation {}
.milto-sub-navigation__list {
    display: flex;
    align-items: center;
}
.milto-sub-navigation__list li {}

.is-fixed {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 50;
    width: 100%;
}
.anchor {
    margin-top: -10rem;
    padding-top: 10rem;
}

/*---------------------------------------------------------------------------------------------
  main image
---------------------------------------------------------------------------------------------*/
/* header:not(.is-fixed) + main .anchor {
    margin-top: 0;
    padding-top: 0;
} */
.main-image__box {
    position: relative;
    z-index: 1;
    display: flex;
    /* justify-content: center; */
    align-items: center;
    height: 75rem;
    padding-top: 10rem;
    background: url(../image/haikei_top.jpg) no-repeat top 0 center / cover;
    overflow: hidden;
}
.main-image__box .header-background__line {
    position: absolute;
    left: -10px;
    z-index: 5;
    display: flex;
    align-items: center;
    width: 150vw;
    height: 7rem;
    background-color: #000;
    transform: rotate(-5deg);
}
.main__title {
    width: 55%;
    font-size:  3rem;
    font-weight: 600;
    color: #fff;
    text-align: left;
    letter-spacing: 1rem;
    margin-left: calc((100vw - 112rem) / 2 + 4px);
}
.main-image__box-inner {
    display: flex;
    max-width: 112rem;
    margin: 0 auto;
}
.main-image__box-inner .inner-left__box {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    /* width: 100%; */
    height: 52rem;
    margin: 1rem 0;
    padding: 0 5rem 3rem 5rem;
    background-color: rgba(255,255,255,.7);
}
.main-image__box-inner .inner-left__box .image-set__box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2rem;
}
.main-image__box-inner .inner-left__box .image-set__box img {
    height: auto;
    /* object-fit: cover; */
}
.main-image__box-inner .inner-left__box .image-set__box img:nth-of-type(1) {
    width: calc(58rem / 2);
    margin-right: 5rem;
}
.main-image__box-inner .inner-left__box .image-set__box img:nth-of-type(2) {
    width: calc(67.8rem / 2);
}
.main-image__box-inner .inner-left__box .sub__title {
    display: flex;
    justify-content: center;
    align-items: center;
    width: calc(100% + 10rem);
    height: 5rem;
    margin-left: -5rem;
    background-color: rgba(131,131,131,.8);
    font-size: 1.8rem;
    color: #fff;
}
.main-image__box-inner .inner-left__box .sub__copy {
    margin-top: 3rem;
    font-size: 2.3rem;
    font-weight: 600;
    text-align: center;
}
.main-image__box-inner .inner-right__box {
    position: relative;
    z-index: 10;
    padding: 3rem;
    background-color: #404040;
    border-radius: .2rem;
}

/* 申込フォーム（ヘッダー） */
.apply-form__box {
    color: #fff;
}
.apply-form__box h3 {
    margin-bottom: 3rem;
    font-size: 2.1rem;
    font-weight: 600;
    text-align: center;
}
.form-group__label {
    width: 100%;
    margin-bottom: 1rem;
    text-align: center;
}
.form-group__label dl dt {
    font-size: 1.2rem;
    font-weight: normal;
    line-height: 2;
    text-align: left;
}
.form-group__label input
, .form-group__label textarea {
    width: 100%;
    padding: .5rem;
    border-radius: .2rem;
    border: none;
}


/*---------------------------------------------------------------------------------------------
  contents01
---------------------------------------------------------------------------------------------*/
.contents01 {}
.section-arrow__title {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 15rem;
    background-color: #f4f4f4;
}
.section-arrow__title::after {
    position: absolute;
    left: 50%;
    top: 12rem;
    transform: translateX(-50%);
    content: "";
    width: 0;
    height: 0;
    border: 9rem solid transparent;
    border-top: 9rem solid #f4f4f4;
}
.section__title-type01 {
    display: inline-block;
    line-height: 5.7rem;
    vertical-align: middle;
    font-size: 3rem;
    text-align: center;
    letter-spacing: 0.6rem;
}
.section__title-type01::first-letter {
    display: inline-block;
    margin-right: 1.5rem;
    font-size: 5.4rem;
    color: #fcc52e;
}
.trouble__list {
    display: flex;
    justify-content: space-between;
    width: 112rem;
    margin: 0 auto;
    padding: 13.5rem 0;
}
.trouble__list li {
    width: 36.4rem;
    height: 35.4rem;
    padding: 4rem;
    background: url(../image/box.png) no-repeat center center / cover;
}
.trouble__list-item {
    display: flex;
    flex-direction: column;
    justify-content: center;
    /* align-items: center; */
}
.trouble__list-item dt {
    text-align: center;
}
.trouble__list-item dt h3 {
    font-size: 2rem;
    font-weight: 600;
    text-align: center;
}
.trouble__list-item dt img {
    width: calc(17.4rem / 2);
    height: auto; 
    padding: 4rem 0;
}
.trouble__list-item dd p {
    font-size: 1.6rem;
    line-height: 2;
}

/*---------------------------------------------------------------------------------------------
  contents02
---------------------------------------------------------------------------------------------*/
.contents02 {}
.section__title-type02 {
    display: inline-block;
    line-height: 5.7rem;
    vertical-align: middle;
    font-size: 3rem;
    /* font-weight: 600; */
    letter-spacing: 0.6rem;
}
.section__title-type02 img {
    width: 10.2rem;
    margin: 0 1rem 0 0;
}

.solution__box {
    width: 100%;
    padding: 15rem 0;
    overflow: hidden;
    box-shadow: 0px 10px 5px -3px #ddd;
}
.solution__box-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 112rem;
    margin: 0 auto;
}
.solution__box-inner.row-reverse {
    flex-direction: row-reverse;
}
.solution__box-inner .image__box {
    width: 39rem;
    height: auto;
}
.solution__box-inner .image__box img {
    width: 100%;
    height: auto;
}
.solution__box-inner .information__box {
    width: calc(100% - 47rem);
}
.solution__box-inner .information__box .information__title {
    margin-bottom: 5rem;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0.5rem;
}
.solution__box-inner .information__box .information__desc {
    font-size: 1.8rem;
    line-height: 2;
    text-align: left;
}
.solution-image__box {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 112rem;
    margin: 7rem auto 0;
}
.solution-image__box img {
    height: calc(70.8rem / 2);
}
.ad-agency__list {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: -1rem 0 4rem 0;
}
.ad-agency__list li {
    width: calc(50% - 1rem);
}
.ad-agency__item {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 3rem 1.5rem;
    border: 1px solid #bfbfbf;
}
.ad-agency__item img {
    width: 7rem;
    height: 7rem;
    margin-right: 1.5rem;
}
.ad-agency__item dd {
    font-size: 1.7rem;
    line-height: 2;
}
.ad-agency__item dd span {
    font-weight: 600;
}

/* 機能紹介 */
.function__list-box {
    display: flex;
    flex-wrap: wrap;
    width: calc(100% + 5.5rem);
    margin-bottom: -4rem;
}
.function__list-box .function__list {
    display: flex;
    align-items: center;
    width: calc(33.3% - (5rem / 3));
    margin: 0 2.5rem 4rem 0;
    padding-bottom: .5rem;
    border-bottom: 1px solid #fcc52e;
}
.function__list-box .function__list:nth-of-type(3n) {
    margin-right: 0;
}
.function__list-box .function__list dt {
    min-width: 6rem;
    text-align: center;
}
.function__list-box .function__list img {
    height: 3.5rem;
    /* margin-right: 1.5rem; */
}

.function__list-box .function__list dd {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.5;
}

/*---------------------------------------------------------------------------------------------
  contact
---------------------------------------------------------------------------------------------*/
.contact__section {
    display: flex;
    align-items: center;
    width: 100%;
    height: 38rem;
    background: url(../image/haikei_toiawase.png) no-repeat center center / cover;
}
.contact__section .contact__box {
    width: 112rem;
    margin: 0 auto;
}
.contact__section .contact__box .contact__title {
    font-size: 3.6rem;
    font-weight: 600;
    letter-spacing: .2em;
    color: #fff;
}
.contact__section .contact__box .contact__desc {
    margin: 4rem 0;
    font-size: 2.2rem;
    font-weight: 600;
    letter-spacing: .1em;
    color: #fff;
}
.contact__box .contact-btn__list {
    display: flex;
    justify-content: space-between;
}
.contact-box__tel {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 8rem;
    padding: 0 3rem;
    background-color: #fff;
    border-radius: 1rem;
}
.inner-left {
    height: 4.2rem;
    margin-right: 1rem;
}
.tel-contact {
    margin-bottom: .5rem;
    font-size: 1.4rem;
}
.tel-contact-note {
    margin-left: -1rem;
    font-size: 1.6rem;
    font-weight: 600;
    white-space: nowrap;
}
.tel-number {
    font-size: 3.9rem;
    font-weight: 600;
    letter-spacing: .1em;
    white-space: nowrap;
}

/*---------------------------------------------------------------------------------------------
  contents03
---------------------------------------------------------------------------------------------*/
.contents03 {
    padding-top: 16rem;
}
.section__title-type03 {
    margin-bottom: 12.1rem;
    font-size: 3.6rem;
    font-weight: 600;
    letter-spacing: .1em;
    text-align: center;
}
.function-content__title {
    display: block;
    max-width: 112rem;
    margin: -2rem auto 13.1rem auto;
    font-size: 4.2rem;
    font-weight: 600;
    letter-spacing: .1em;
    text-align: left;
}

.fuction-contants__box {
    width: 100%;
    margin-bottom: 18rem;
    background: url(../image/haikei_kinou.png) repeat-x center bottom  / 100% 18rem;
}
.function-content__box-inner {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    max-width: 112rem;
    margin: 0 auto;
}

.box-inner-left {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-right: 2rem;
}
.box-inner-left > .function-content__title {
    margin: initial;

}
.box-inner-left .function-content__title span {
    color: #fcc52e;
}
.box-inner-left .fuction-content__desc {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    height: 18rem;
    font-size: 1.8rem;
    line-height: 2;
    letter-spacing: .05em;
    color: #fff;
}
_:-ms-lang(x)::-ms-backdrop, .box-inner-left .fuction-content__desc {
    max-width: 54rem;
}
.function-content__box-inner.row-reverse {
    flex-direction: row-reverse;
}
.function-content__box-inner.row-reverse .box-inner-left {
    padding: 0 0 0 2rem;
}
.function-content__box-inner.row-reverse .box-inner-left > .function-content__title {
    text-align: right;
}
.box-inner-right {}
.box-inner-right img {
    height: 35rem;
}

/* コンテンツページ */
.contents-page__box {
    max-width: 112rem;
    margin: 0 auto 18rem;
    padding: 4rem;
    background-color: #413f40;
    border-radius: 1.4rem;
}
.contents-page__box-inner {
    width: 100%;
    padding: 4rem;
    background-color: #fff;
    border-radius: 1.4rem;
}
.contents-page__list {
    display: flex;
    flex-wrap: wrap;
}
.contents-page__list li {
    width: calc(33.333% - (8rem / 3));
    margin: 0 4rem 4rem 0;
    padding: 2rem 2rem 0 2rem;
    background-color: #f1f1f1;
    border-radius: 1rem;
}
.contents-page__list li.flex {
    display: flex;
    flex-direction: column;
}
.contents-page__list li:last-child {
    display: flex;
    align-items: flex-end;
    width: 100%;
    margin: 0;
    padding: 6rem 5rem;
}
.contents-page__list li:last-child .contants-page__title {
    margin-bottom: 6rem;
    font-size: 2.3rem;
    text-align: left;
}
.contents-page__list li:last-child .contents-page__desc {
    font-size: 1.5rem;
}
.contents-page__list li:last-child img {
    width: 36rem;
    height: auto;
    margin: 0;
    padding-left: 5rem;
}
.contents-page__list li:nth-of-type(3n) {
    margin-right: 0;
}
.contants-page__title {
    margin-bottom: 2rem;
    font-size: 1.6rem;
    font-weight: 600;
    text-align: center;
}
.contents-page__desc {
    font-size: 1.6rem;
    line-height: 2;
    flex-grow: 1;
}
.contents-page__list li img {
    width: 100%;
    margin: 2rem 0;
}

/*---------------------------------------------------------------------------------------------
  contents04
---------------------------------------------------------------------------------------------*/
.contents04 {
    margin-top: -3rem;
}
.contents04-title__box {
    max-width: 112rem;
    margin: 0 auto;
}
.contents04-title__box .section__title-type03 {
    margin-bottom: initial;
}
.contents04-title__box .section__description-type01 {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 3.5rem auto;
    font-size: 2rem;
}
.contents04-title__box .section__description-type01::before
, .contents04-title__box .section__description-type01::after {
    content: "";
    display: block;
    width: 2rem;
    height: .1rem;
    background-color: #413f40;
}
.contents04-title__box .section__description-type01::before {
    margin-right: 1rem;
}
.contents04-title__box .section__description-type01::after {
    margin-left: 1rem;
}
.section-title__hr {
    width: 6rem;
    margin: 0 auto;
    border-top-color: #413f40;
}
.introduce-flow__box {
    max-width: 112rem;
    margin: 11.5rem auto 15rem;
}
.flow-icon__list
, .flow-info__list {
    display: flex;
    justify-content: space-between;
}
.flow-icon__list {
    align-items: center;
}
.flow-icon__list li
, .flow-info__list li {
    position: relative;
    width: 17rem;
}
.flow-icon__list li::after {
    content: "";
    position: absolute;
    top: 50%;
    right: -25%;
    transform: translateY(-50%);
    width: 1.4rem;
    height: 1.8rem;
    background: url(../image/yajirushi02.png) no-repeat center center / cover;
}
.flow-icon__list li:last-child::after {
    display: none;
}
.flow-icon__list li img {
    width: 100%;
}
.flow-info__item {}
.flow-info__item dt {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 3.6rem;
    margin: 3rem 0;
    font-size: 1.8rem;
    line-height: 1.8;
    text-align: center;
}
.flow-info__item dd {
    font-size: 1.5rem;
    line-height: 1.8;
}

/*---------------------------------------------------------------------------------------------
  contents05
---------------------------------------------------------------------------------------------*/
.contents05 {
    max-width: 112rem;
    margin: 0 auto;
    padding: 15rem 0;
}
.contents05 > table {
    width: 100%;
}
.contents05-title__box {
    margin-bottom: 8rem;
}
.contents05-title__box .section__title-type03 {
    margin-bottom: 3rem;
}
.price__title-type01 {
    display: flex;
    align-items: center;
    margin-bottom: 2rem;
    font-size: 2.2rem;
    font-weight: 600;
}
.price__title-type01::before {
    content: "";
    display: block;
    margin: -.4rem .6rem 0 0;
    width: 1.6rem;
    height: 1.6rem;
    background-color: #fcc52e;
}
.note + .price__title-type01 {
    margin-top: 8rem;
}
table + .price__title-type01 {
    margin-top: 8rem;
}

/* type01 */
.price__table-type01 {
    border-top: .1rem solid #3e3a39;
    border-left: .1rem solid #3e3a39;
}
.price__table-type01 th
, .price__table-type01 td {
    width: 16rem;
    height: 6.3rem;
    border-bottom: .1rem solid #3e3a39;
    border-right: .1rem solid #3e3a39;
    vertical-align: middle;
    text-align: center;
}
.price__table-type01 th {
    font-size: 1.7rem;
    font-weight: 600;
}
.price__table-type01 .number-tr td {
    padding: .4rem;
    font-size: 1.7rem;
}
.price__table-type01 .td-bg-color {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}
.price__table-type01 .number-tr td:nth-of-type(1) .td-bg-color {
    background-color: rgba(114,113,113 ,.1);
}
.price__table-type01 .number-tr td:nth-of-type(2) .td-bg-color {
    background-color: rgba(114,113,113 ,.2);
}
.price__table-type01 .number-tr td:nth-of-type(3) .td-bg-color {
    background-color: rgba(114,113,113 ,.3);
}
.price__table-type01 .number-tr td:nth-of-type(4) .td-bg-color {
    background-color: rgba(114,113,113 ,.4);
}
.price__table-type01 .number-tr td:nth-of-type(5) .td-bg-color {
    background-color: rgba(114,113,113 ,.5);
}
.price__table-type01 .number-tr td:nth-of-type(6) .td-bg-color {
    background-color: rgba(114,113,113 ,.6);
}
.price__table-type01 .number-tr td span {
    margin-top: .5rem;
    font-size: 1.3rem;
}
.price__table-type01 .price-tr td {
    font-size: 2.6rem;
    font-weight: 600;
}
.price__table-type01 .price-tr td span {
    font-size: 1.2rem;
}
.price__table-type01 + .note {
    font-size: 1.3rem;
    /* font-weight: 600; */
    line-height: 2;
}

/* type02 */
.price__table-type02 {
    border-top: .1rem solid #3e3a39;
    border-left: .1rem solid #3e3a39;
}
.price__table-type02 th
, .price__table-type02 td {
    border-bottom: .1rem solid #3e3a39;
    border-right: .1rem solid #3e3a39;
}
.price__table-type02 th {
    width: 23.1rem;
    vertical-align: middle;
    font-size: 1.8rem;
    text-align: center;
}
.price__table-type02 th span {
    font-size: 1.2rem;
    font-weight: normal;
}
.price__table-type02 .th-bg-color {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    margin: .4rem;
    line-height: 1.7;
}
.price__table-type02 tr:nth-of-type(2) {
    height: 15rem;
}
.price__table-type02 tr:nth-of-type(3)
, .price__table-type02 tr:nth-of-type(4)
, .price__table-type02 tr:nth-of-type(5) {
    height: 11rem;
}
.price__table-type02 tr:nth-of-type(2) .th-bg-color {
    height: calc(15rem - .8rem);
    background-color: #fcc52e;
}
.price__table-type02 tr:nth-of-type(3) .th-bg-color
, .price__table-type02 tr:nth-of-type(4) .th-bg-color
, .price__table-type02 tr:nth-of-type(5) .th-bg-color {
    height: calc(11rem - .8rem);
    background-color: rgba(114,113,113 ,.2);
}
.type02-headding {
    position: relative;
    background-image: linear-gradient(23.5deg, transparent 49.5%, black 49.5%, #3E3A39 50%, transparent 50%, transparent);
}
.type02-headding p {
    position: absolute;
}
.type02-headding p.plan {
    bottom: 2rem;
    left: 3rem;
}
.type02-headding p.contents {
    top: 2rem;
    right: 2rem;
}
.price__table-type02-list {
    display: flex;
    justify-content: space-between;
    height: 100%;
}
.price__table-type02-list li {
    flex: 1;
    border-right: .1rem solid #3e3a39;
}
.price__table-type02-list li:last-child {
    border-right: none;
}
.price__table-type02-list dl {
    display: flex;
    justify-content: space-between;
    /* align-items: center; */
    flex-direction: column;
    height: 100%;
    padding: 1.5rem 0;
}
.price__table-type02-list dt {
    display: flex;
    justify-content: center;
    margin-bottom: .8rem;
    font-size: 1.6rem;
}
.price__table-type02-list dd {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 4rem;
    padding: 0 .5rem;
    font-size: 1.2rem;
    color: #878787;
    text-align: center;
}
.basic-package__list {
    display: flex;
    justify-content: space-between;
    height: 7.5rem;
    border-bottom: .1rem dashed #3e3a39;
}
.basic-package__list li {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    border-right: .1rem dashed #3e3a39;
    font-size: 3rem;
}
.basic-package__list li:last-child {
    border-right: none;
}

.basick-package-price {
    display: flex;
    justify-content: center;
    align-items: center;
}
.basick-package-price.price--type01 {
    height: 7.5rem;
    font-size: 2rem;
    font-weight: 600;
}
.basick-package-price.price--type02 {
    height: 11rem;
    font-size: 1.7rem;
    font-weight: 600;
}
.basick-package-price.price--type03 {
    height: 11rem;
    font-size: 2.6rem;
}
.basick-package-price.price--type03 span {
    font-weight: 600;
}
.basick-package-price .base-line {
    display: flex;
    align-items: baseline;
}

/* type03 */
.price__table-type03 {
    border-top: .1rem solid #3e3a39;
    border-left: .1rem solid #3e3a39;
}
.price__table-type03 th
, .price__table-type03 td {
    border-bottom: .1rem solid #3e3a39;
    border-right: .1rem solid #3e3a39;
    vertical-align: middle;
    text-align: center;
}
.price__table-type03 th {
    font-size: 1.8rem;
}
.price__table-type03 tr:nth-of-type(1) {
    height: 12.6rem;
}
.price__table-type03 tr:nth-of-type(2) {
    height: 24.6rem;
}
.price__table-type03 th[class^="plan"] div[class^="th-bg-color"] {
    display: flex;
    justify-content: center;
    align-items: center;
    height: calc(12.6rem - .8rem);
    margin: .4rem;
    line-height: 1.7;
}
.price__table-type03 th[class^="plan"] div[class^="th-bg-color"] span {
    margin-top: -.5rem;
    font-size: 2.6rem;
}
.price__table-type03 .plan-name-yellow .th-bg-color span {
    font-size: 3rem !important;
}
.price__table-type03 th[class^="plan"] .th-bg-color1 {
    background-color: rgba(114,113,113,.1);
}
.price__table-type03 .plan-name-yellow .th-bg-color {
    background-color: #fcc52e;
}
.price__table-type03 th[class^="plan"] .th-bg-color2 {
    background-color: rgba(114,113,113,.3);
}
.price__table-type03 th[class^="plan"] .th-bg-color3 {
    background-color: rgba(114,113,113,.5);
}
.ad-price__box {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 24.6rem;
    padding: 1.5rem 0;
    font-weight: 600;
}
.ad-price-type01
, .separately__price {
    display: flex;
    justify-content: center;
    align-items: baseline;
}
.separately__price .font-size12:nth-of-type(1) {
    margin-right: .5rem;
    font-weight: normal;
}
.separately__title {
    display: flex;
    justify-content: center;
    align-items: center;
}
.separately__title::before
, .separately__title::after {
    content: "";
    display: block;
    width: 37%;
    height: .1rem;
    background-color: #413f40;
}
.separately__title::before {
    margin-right: 1rem;
}
.separately__title::after {
    margin-left: 1rem;
}

/*---------------------------------------------------------------------------------------------
  お問合せ（フッター）
---------------------------------------------------------------------------------------------*/
.contact-form__section {
    width: 100%;
    padding: 20rem 0 10rem;
    background: url(../image/haikei_foam.png) no-repeat center center / cover;
}
.contact-form__box {
    max-width: 97rem;
    margin: 0 auto;
}
.contact-form__title {
    margin-bottom: 10rem;
    font-size: 3.4rem;
    font-weight: 600;
    letter-spacing: .1em;
    color: #fff;
    text-align: center;
}
.form-group__label-type02 {
    width: 100%;
    margin-bottom: 3rem;
}
.form-group__label-type02 input
, .form-group__label-type02 textarea {
    width: 100%;
    padding: .85rem;
    border-radius: .4rem;
    border: none;
}
.main-form .form-group__label-type02 input {
    width: 50%;
}
.form-group__label-type02 textarea {
    height: 8rem;
}
.form-title {
    display: flex;
    align-items: center;
    margin-bottom: 1.5rem;
    color: #fff;
    font-size: 1.7rem;
    font-weight: 600;
}
.form-title .form-label {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 2.4rem;
    margin-right: 1rem;
    padding: 0 .8rem;
    background-color: #949494;
    border-radius: .2rem;
    font-size: 1.3rem;
    font-weight: normal;
}
.form-title .form-label.required {
    background-color: #fe0003;
}
.radio-btn__list {
    margin: 3rem 0;
}
.contact-form__section .privacy-policy {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 4rem 0;
    color: #fff;
}
.contact-form__section .privacy-policy a {
    color: #276fbf;
    text-decoration: underline;
}

/*---------------------------------------------------------------------------------------------
  footer
---------------------------------------------------------------------------------------------*/
footer {
    width: 100%;
    background-color: #fff;
}
.footer__navigation {
    display: flex;
    justify-content: center;
    align-content: center;
    margin: 3.5rem 0;
}
.footer-nav__list {
    display: flex;
    justify-content: space-evenly;
    align-items: center;
}
.footer-nav__list li {
    display: flex;
    align-items: center;
}
.footer-nav__list li::after {
    content: "|";
    display: block;
    margin: 0 3rem;
}
.footer-nav__list li:last-child::after {
    display: none;
}
.coptyright {
    display: block;
    width: 100%;
    margin-bottom: 2rem;
    color: #666;
    font-size: 1.2rem;
    text-align: center;
}
/*---------------------------------------------------------------------------------------------
  font-size
---------------------------------------------------------------------------------------------*/
.font-size40 {
    font-size: 4rem;
}
.font-size36 {
    font-size: 3.6rem;
}
.font-size34 {
    font-size: 3.4rem;
}
.font-size30 {
    font-size: 3rem;
}
.font-size26 {
    font-size: 2.6rem;
}
.font-size21 {
    font-size: 2.1rem;
}
.font-size20 {
    font-size: 2rem;
}
.font-size18 {
    font-size: 1.8rem;
}
.font-size17 {
    font-size: 1.7rem;
}
.font-size13 {
    font-size: 1.3rem;
}
.font-size12 {
    font-size: 1.2rem;
}

/*---------------------------------------------------------------------------------------------
  forms
---------------------------------------------------------------------------------------------*/

/* radio btn */
.radio-btn__list {
    display: flex;
    align-items: center;
}
.radio-btn__list li {
    position: relative;
    display: flex;
    align-items: center;
    margin-right: 2rem;
}
.radio-btn__list li input[type=radio] {
    position: absolute;
    visibility: hidden;
}
.radio-btn__list li label {
    position: relative;
    z-index: 9;
    display: block;
    padding-left: 2rem;
    color: #fff;
    cursor: pointer;
    -webkit-transition: all 0.25s linear;
}
.radio-btn__list li .check{
    position: absolute;
    top: -.1rem;
    left: 0;
    z-index: 5;
    display: block;
    height: 1.5rem;
    width: 1.5rem;
    border: .1rem solid #fff;
    border-radius: 100%;
    transition: border .25s linear;
    -webkit-transition: border .25s linear;
}
.radio-btn__list li:hover .check {
    border: .1rem solid #fff;
}
.radio-btn__list li .check::before {
    position: absolute;
    top: 50%;
    left: 50%;
    display: block;
    content: '';
    width: .75rem;
    height: .75rem;
    margin: auto;
    border-radius: 100%;
    transform: translate(-50%,-50%);
}
input[type=radio]:checked ~ .check {
    border: .1rem solid #fff;
}
input[type=radio]:checked ~ .check::before{
    background: #fff;
}
input[type=radio]:checked ~ label{
    color: #fff;
}

/* checkbox */
.checkbox01-input{
    display: none;
}
.checkbox01-parts{
    padding-left: 2rem;
    position:relative;
    font-size: 1.8rem;
}
.checkbox01-parts::before{
    content: "";
    display: block;
    position: absolute;
    top: .5rem;
    left: 0;
    width: 1.5rem;
    height: 1.5rem;
    border: .1rem solid #fff;
    background-color: #fff;
    border-radius: .2rem;
}
.checkbox01-input:checked + .checkbox01-parts::after {
    content: "";
    display: block;
    position: absolute;
    top: .5rem;
    left: .5rem;
    width: .6rem;
    height: 1.2rem;
    transform: rotate(40deg);
    border-bottom: .3rem solid #413f40;
    border-right: .3rem solid #413f40;
}

.form-group__label .checkbox01-parts {
    display: inline-block;
    margin-bottom: 2rem;
    font-size: 1.2rem;
}
.form-group__label .checkbox01-parts::before {
    top: -.2rem;
}
.form-group__label .checkbox01-input:checked + .checkbox01-parts::after {
    top: -.2rem;
}
.form-group__label .checkbox01-parts a {
    color: #276fbf;
    text-decoration: underline;
}