@import url(https://use.typekit.net/xnf6ued.css);

html,
body {
    margin: 0 auto;
    padding: 0;
    -webkit-text-size-adjust: 100%
}

html *,
body * {
    box-sizing: border-box
}

body {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 14px;
    font-weight: 400;
    color: #363636;
    line-height: 1.571428571;
    background: #fff
}

div,
span {
    margin: 0;
    padding: 0
}

address {
    font-style: normal
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0;
    padding: 0;
    font-size: 100%;
    font-weight: 900
}

div,
span,
p,
pre,
code,
blockquote,
q {
    margin: 0;
    padding: 0
}

article,
aside,
figure,
main,
figcaption,
footer,
header,
nav,
section {
    display: block
}

code {
    font-style: normal;
    font-weight: normal
}

cite,
dfn,
em,
strong,
var {
    font-style: normal;
    font-weight: normal
}

ins,
del {
    text-decoration: none
}

abbr,
acronym {
    border: 0;
    font-feature-settings: normal;
    font-variant: normal
}

sup {
    vertical-align: top
}

sub {
    vertical-align: baseline
}

figure {
    margin: 0;
    padding: 0
}

img {
    width: 100%;
    border: 0;
    vertical-align: bottom
}

.bold {
    font-weight: bold
}

a,
a:link,
a:visited,
a:hover,
a:active {
    outline: 0;
    text-decoration: none;
    color: inherit;
    transition: opacity .3s
}

@media screen and (min-width: 768px) {

    a:hover,
    a:link:hover,
    a:visited:hover,
    a:hover:hover,
    a:active:hover {
        opacity: .8
    }
}

a.over:hover img,
a.over:hover p {
    opacity: .8;
    filter: alpha(opacity=80);
    -ms-filter: "alpha(opacity=80)";
    -moz-opacity: .8;
    zoom: 1
}

p {
    margin: 0;
    padding: 0
}

ul,
ol,
dl,
dt,
dd {
    margin: 0;
    padding: 0
}

li {
    margin: 0;
    padding: 0;
    list-style: none
}

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

tr,
td,
thead,
tfoot,
tbody {
    margin: 0;
    padding: 0
}

th {
    margin: 0;
    padding: 0;
    font-weight: normal;
    text-align: left
}

caption {
    font-weight: normal;
    text-align: left
}

.clearfix:after {
    visibility: hidden;
    display: block;
    content: " ";
    clear: both;
    height: 0
}

.is-pc {
    display: block
}

.is-sp {
    display: none
}

@media screen and (max-width: 767px) {
    .is-pc {
        display: none
    }

    .is-sp {
        display: block
    }
}

header {
    position: fixed;
    top: 0;
    right: 0;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    max-width: 437.45px;
    width: 31.2464285714vw;
    border-radius: 0 0 0 10px;
    background: #fff6ea;
    z-index: 10
}

header .wrapper_tel {
    width: 59.0810378%;
    color: #f77b00;
    font-weight: bold;
    font-size: clamp(1px, 1.8571428571vw, 26px);
    line-height: 1
}

header .wrapper_tel span {
    display: block;
    width: 100%;
    margin-bottom: 3.4822983%;
    font-size: clamp(1px, 1.1428571429vw, 16px);
    text-align: center
}

header .wrapper_tel a {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    width: 100%
}

header .wrapper_tel a img {
    max-width: 24px;
    width: 1.7142857143vw;
    margin-right: 2.3215322%
}

header .wrapper_tel a p {
    white-space: nowrap
}

header .link_inquiry {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    color: #fff;
    width: 40.9189622%;
    max-height: 80px;
    height: 5.7142857143vw;
    font-size: clamp(1px, 1.2857142857vw, 18px);
    font-weight: bold;
    background: #d02828
}

footer small {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 41px;
    color: #fff;
    font-size: clamp(1px, 0.8571428571vw, 12px);
    font-weight: bold;
    line-height: 1;
    text-align: center;
    background: #392300
}

main h2 {
    font-size: 2.625em;
    text-align: center
}

main .mv {
    position: relative;
    height: 57.0714285714vw;
    padding: 1.9285714286vw 0 0.9285714286vw 5.3571428571vw;
    background: center no-repeat url("../img/client_img/mv.jpg");
    background-size: cover;
    overflow: hidden
}

main .mv .mask {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: #775520;
    opacity: .77;
    z-index: 0
}

main .mv .inner {
    position: relative;
    height: 100%;
    z-index: 1
}

main .mv h1 {
    margin-bottom: 2.1428571429vw;
    color: #fff;
    font-size: 1.0714285714vw;
    line-height: 1
}

main .mv h1 svg {
    max-width: 383px;
    width: 100%
}

main .mv h1 span {
    display: block;
    margin-top: 0.3571428571vw;
    font-size: 1.7857142857vw
}

main .mv .wrapper_detail {
    margin-left: 3.4285714286vw
}

main .mv .wrapper_detail .sb {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    width: 31.4285714286vw;
    height: 3.3571428571vw;
    margin-bottom: 1.7857142857vw;
    color: #f2a939;
    font-size: 1.7142857143vw;
    font-weight: bold;
    border-radius: 0.3571428571vw;
    background: #fff6ea
}

main .mv .wrapper_detail .sb:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 2.5714285714vw;
    height: 4.5vw;
    background: center no-repeat url("../img/sb_arrow.png");
    background-size: cover
}

main .mv .wrapper_detail .mv_img_small {
    display: block;
    width: 15.5vw;
    height: 15.5vw;
    border-radius: 50%;
    border: 0.5714285714vw solid #fff;
    background: center no-repeat url("../img/client_img/mv_img_small_pc.png");
    background-size: cover
}

main .mv .wrapper_detail .mv_copy {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
    margin-bottom: 1.4285714286vw
}

main .mv .wrapper_detail .mv_copy>div:last-of-type {
    margin-left: 0.7142857143vw
}

main .mv .wrapper_detail .mv_copy .large,
main .mv .wrapper_detail .mv_copy .small {
    color: #fff;
    font-weight: bold
}

main .mv .wrapper_detail .mv_copy .large {
    margin-bottom: 1vw;
    font-size: 2.8571428571vw;
    line-height: 1.125
}

main .mv .wrapper_detail .mv_copy .small {
    width: 35.0714285714vw;
    font-size: 1.1428571429vw;
    line-height: 1.875
}

main .mv .wrapper_detail .mv_detail {
    width: 50.7142857143vw
}

main .mv .wrapper_detail .mv_detail .copy {
    position: relative;
    margin-bottom: 0.7142857143vw;
    color: #fff;
    font-size: 1.0714285714vw;
    font-weight: bold;
    text-align: center;
    z-index: 1
}

main .mv .wrapper_detail .mv_detail .copy:before {
    position: absolute;
    bottom: 0.5714285714vw;
    left: 0;
    content: "";
    display: block;
    width: 2.2142857143vw;
    height: 1.6071428571vw;
    background: center no-repeat url("../img/mv_title_deco01.png");
    background-size: cover;
    z-index: -1
}

main .mv .wrapper_detail .mv_detail .copy:after {
    position: absolute;
    right: 0;
    bottom: 0;
    content: "";
    display: block;
    width: 2.1071428571vw;
    height: 1.8214285714vw;
    background: center no-repeat url("../img/mv_title_deco02.png");
    background-size: cover;
    z-index: -1
}

main .mv .wrapper_detail .mv_detail .copy span {
    font-size: 1.8571428571vw
}

main .mv .wrapper_detail .mv_detail ul {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center
}

main .mv .wrapper_detail .mv_detail ul li {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: center;
    width: 12.1428571429vw;
    height: 7.1428571429vw;
    color: #fff;
    text-align: center;
    border-radius: 0.4285714286vw;
    background: #f77b00
}

main .mv .wrapper_detail .mv_detail ul li .ttl {
    margin-bottom: 0.4285714286vw;
    font-size: 1.1428571429vw;
    font-weight: bold;
    line-height: 1.25
}

main .mv .wrapper_detail .mv_detail ul li .text {
    font-size: 1vw;
    line-height: 1.428571429
}

main .mv .wrapper_detail .mv_detail ul li:nth-last-child(-n+4) {
    margin-top: 0.5vw
}

main .mv .mv_img_large {
    position: absolute;
    right: -7.9285714286vw;
    bottom: 0;
    width: 47.0714285714vw;
    border: 0.9285714286vw solid #fff;
    box-sizing: border-box;
    border-radius: 50%
}

main .future {
    position: relative;
    padding-top: 10.7142857143vw
}

main .future:before {
    position: absolute;
    top: 3.1428571429vw;
    left: 3.9285714286vw;
    content: "FUTURE";
    font-family: din-2014, sans-serif;
    font-style: normal;
    color: #ac731c;
    font-size: 11.4285714286vw;
    font-weight: bold;
    letter-spacing: .15em;
    opacity: .2
}

main .future .sec01 .text {
    width: 66.4285714286vw;
    padding: 5.8571428571vw 0 5.7142857143vw 9.5vw;
    background: #f2a939
}

main .future .sec01 .text h2,
main .future .sec01 .text p {
    color: #fff;
    font-weight: bold;
    text-align: left
}

main .future .sec01 .text h2 {
    margin-bottom: 1.4285714286vw;
    font-size: 2.5714285714vw;
    line-height: 1
}

main .future .sec01 .text p {
    width: 40.3571428571vw;
    font-size: 1.1428571429vw;
    line-height: 1.875
}

main .future .sec01 .future_img {
    position: absolute;
    top: 14.2142857143vw;
    right: 0;
    display: block;
    width: 44.4285714286vw
}

main .future .sec02 {
    display: flex;
    flex-flow: row nowrap;
    justify-content: space-between;
    align-items: flex-end;
    padding: 3.5714285714vw 8.4285714286vw 2.8571428571vw 9.5vw
}

main .future .sec02 .graph_img {
    width: 43.5714285714vw
}

main .future .sec02 .graph_img figcaption {
    color: #f2a939;
    font-size: 2.5714285714vw;
    font-weight: bold;
    text-align: center
}

main .future .sec02 .text {
    width: 35.0714285714vw;
    color: #f2a939;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-weight: bold;
    transform: translateY(-2.1428571429vw)
}

main .future .sec02 .text h3 {
    position: relative;
    margin-bottom: 4.2857142857vw;
    font-size: 2.5714285714vw;
    line-height: 1
}

main .future .sec02 .text h3 span {
    display: inline-block;
    font-size: 13.2857142857vw;
    color: #f77b00;
    transform: translateY(2.2857142857vw)
}

main .future .sec02 .text h3 small {
    position: absolute;
    bottom: 0;
    left: 14.2857142857vw;
    font-size: 1.1428571429vw
}

main .future .sec02 .text p {
    font-size: 1.1428571429vw;
    line-height: 2
}

main .human {
    position: relative;
    margin-bottom: 4.2857142857vw;
    z-index: 1
}

main .human:before {
    position: absolute;
    top: 3.2142857143vw;
    right: 1.7857142857vw;
    content: "HUMAN";
    font-family: din-2014, sans-serif;
    font-style: normal;
    color: #ac731c;
    font-size: 11.4285714286vw;
    font-weight: bold;
    letter-spacing: .15em;
    opacity: .2
}

main .human .sec01 .text {
    width: 50vw;
    padding: 7.1428571429vw 11.8571428571vw 16.5vw 9.8571428571vw;
    background: #f2a939
}

main .human .sec01 .text h2 {
    color: #fff;
    font-size: 2.5714285714vw;
    font-weight: bold;
    line-height: 1;
    text-align: left;
    white-space: nowrap
}

main .human .sec02 {
    margin-top: -13.6428571429vw;
    padding: 0 5.3571428571vw
}

main .human .sec02 .inner {
    padding: 2.8571428571vw 4.5vw 4.2142857143vw;
    background: #fff6ea
}

main .human .sec02 article {
    position: relative
}

main .human .sec02 .text {
    width: 39.5714285714vw;
    font-weight: bold
}

main .human .sec02 .text .num {
    display: block;
    margin-bottom: 0.7857142857vw;
    color: #f2a939;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 4.9285714286vw;
    line-height: 1
}

main .human .sec02 .text h3 {
    margin-bottom: 1.7857142857vw;
    font-size: 1.7142857143vw;
    line-height: 1
}

main .human .sec02 .text p {
    font-size: 1.1428571429vw;
    line-height: 1.625
}

main .human .sec02 .img {
    position: absolute;
    top: 0;
    right: -9.8571428571vw;
    width: 40.5714285714vw
}

main .human .sec02 .article01 {
    margin-bottom: 9.0714285714vw
}

main .human .sec02 .article02 {
    margin-bottom: 6.4285714286vw
}

main .human .sec02 .article02 .text {
    position: absolute;
    top: 2.1428571429vw;
    right: 0
}

main .human .sec02 .article02 .img {
    position: relative;
    top: unset;
    right: unset;
    transform: translateX(-9.8571428571vw)
}

main .human .sec02 .article03 {
    margin-bottom: 9vw
}

main .unfitted {
    position: relative;
    padding: 5.5vw 5.3571428571vw 7.1428571429vw;
    background: #dec8a5
}

main .unfitted:before {
    position: absolute;
    top: -18.6428571429vw;
    right: 0;
    content: "";
    display: block;
    width: 50vw;
    height: 18.6428571429vw;
    background: #dec8a5
}

main .unfitted:after {
    position: absolute;
    top: 1.5714285714vw;
    left: 0;
    content: "UNFITTED";
    color: #ac731c;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 11.4285714286vw;
    font-weight: bold;
    letter-spacing: .2em;
    line-height: 1;
    opacity: .21
}

main .unfitted h2 {
    position: relative;
    margin-left: 4.5vw;
    margin-bottom: 2.1428571429vw;
    color: #fff;
    font-size: 2.2857142857vw;
    text-align: left;
    z-index: 1
}

main .unfitted ul {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: flex-start;
    padding: 5.2142857143vw 4.3571428571vw 3.5vw 5.3571428571vw;
    background: #fff
}

main .unfitted ul li {
    width: 38vw
}

main .unfitted ul li .num {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    width: 5vw;
    height: 5vw;
    color: #fff;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 2.5vw;
    font-weight: bold;
    line-height: 1;
    border-radius: 0.3571428571vw;
    background: #ac731c
}

main .unfitted ul li .num:after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 2vw;
    height: 5.8928571429vw;
    background: center no-repeat url("../img/sb_arrow02.png");
    background-size: cover
}

main .unfitted ul li .wrapper_text {
    display: block;
    width: 36.7857142857vw;
    min-height: 14.5vw;
    margin-top: -2.1428571429vw;
    margin-left: 1.2142857143vw;
    padding: 3.5714285714vw 1.4285714286vw 2.5vw;
    border-radius: 0.5714285714vw;
    background: #faf6ef
}

main .unfitted ul li .wrapper_text h3 {
    margin-bottom: 1.0714285714vw;
    font-size: 1.4285714286vw
}

main .unfitted ul li .wrapper_text p {
    font-size: 1.1428571429vw;
    line-height: 1.5
}

main .unfitted ul li:nth-last-child(-n+2) {
    margin-top: 5.6428571429vw
}

main .one_days {
    padding: 11.3571428571vw 0 10.7857142857vw
}

main .one_days h2 {
    position: relative;
    margin-bottom: 8.5714285714vw;
    color: #f77b00;
    font-size: 2.2857142857vw
}

main .one_days h2:before {
    position: absolute;
    top: 50%;
    left: 50%;
    content: "ONEDAYS";
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 10vw;
    letter-spacing: .15em;
    opacity: .2;
    transform: translate(-50%, -50%)
}

main .one_days article {
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-end;
    align-items: center;
    margin-top: -2.1428571429vw
}

main .one_days article:before {
    position: absolute;
    top: 0.7142857143vw;
    left: 50%;
    content: "";
    display: block;
    width: 0.2857142857vw;
    height: 11.4285714286vw;
    background: #f77b00;
    transform: translateY(-50%)
}

main .one_days article figure {
    position: absolute;
    top: 0;
    left: 0;
    width: 44vw;
    height: 21.7142857143vw;
    z-index: -1;
    overflow: hidden
}

main .one_days article figure img {
    width: auto;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover
}

main .one_days article .content {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center;
    width: 61.0714285714vw;
    min-height: 17.4285714286vw;
    margin: 2.1428571429vw 0;
    padding: 2.5714285714vw 11vw 2.5714285714vw 5.6428571429vw;
    border: 0.2857142857vw solid #f77b00;
    box-sizing: border-box;
    border-right: none;
    background: #fff
}

main .one_days article .content .time {
    color: #f77b00;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 4.2857142857vw;
    font-weight: bold;
    line-height: 1
}

main .one_days article .content .detail {
    margin-left: 2.2857142857vw
}

main .one_days article .content .detail h3 {
    margin-bottom: 0.5714285714vw;
    color: #f77b00;
    font-size: 1.7142857143vw;
    font-weight: bold;
    line-height: 1
}

main .one_days article .content .detail p {
    width: 31.5714285714vw;
    font-size: 1vw;
    line-height: 1.571428571
}

main .one_days article:first-of-type {
    margin-top: 0
}

main .one_days article:first-of-type:before {
    background: center bottom no-repeat url("../img/one_days_border.png");
    background-size: contain;
    transform: translateY(-50%)
}

main .one_days article:nth-of-type(2n) {
    justify-content: flex-start
}

main .one_days article:nth-of-type(2n) figure {
    right: 0;
    left: unset
}

main .one_days article:nth-of-type(2n) .content {
    display: flex;
    flex-flow: row-reverse nowrap;
    padding: 2.5714285714vw 5.7142857143vw 2.5714285714vw 9.8571428571vw;
    border: 0.2857142857vw solid #f77b00;
    border-left: none
}

main .one_days article:nth-of-type(2n) .content .detail {
    margin-left: 0;
    margin-right: 3.4285714286vw
}

main .one_days article:last-of-type:after {
    position: absolute;
    bottom: -10vw;
    left: 50%;
    content: "";
    display: block;
    width: 0.2857142857vw;
    height: 11.4285714286vw;
    background: center bottom no-repeat url("../img/one_days_border.png");
    background-size: contain;
    transform: translateY(-50%) rotateX(180deg)
}

main .description {
    position: relative;
    padding: 7.1428571429vw 5.3571428571vw 4.2857142857vw
}

main .description:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    display: block;
    width: 100vw;
    height: 43vw;
    background: #f2a939
}

main .description .inner {
    position: relative;
    z-index: 1
}

main .description h2 {
    position: relative;
    color: #fff;
    margin-bottom: 4.2142857143vw;
    font-size: 2.2857142857vw
}

main .description h2:before {
    position: absolute;
    top: 50%;
    left: 50%;
    content: "DESCRIPTION";
    color: #fff;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 10vw;
    letter-spacing: .14em;
    opacity: .21;
    transform: translate(-50%, -50%)
}

main .description .content {
    width: 89.2857142857vw;
    padding: 3.2142857143vw 0 4.2857142857vw;
    border-radius: 1.0714285714vw;
    background: #fff
}

main .description .content dl {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: stretch;
    font-size: 1.2857142857vw;
    font-weight: bold;
    line-height: 1.5
}

main .description .content dl dt {
    display: flex;
    flex-flow: column nowrap;
    justify-content: center;
    align-items: flex-start;
    width: 16.8571428571vw;
    padding: 1.7857142857vw 0.7142857143vw 1.3571428571vw;
    color: #f77b00;
    border-bottom: 0.1428571429vw solid #f77b00
}

main .description .content dl dd {
    width: 58.4285714286vw;
    padding: 1.7857142857vw 0.7142857143vw 1.3571428571vw;
    color: #363636;
    border-bottom: 0.1428571429vw solid #c7c7c7
}

main .description .content dl dd li {
    margin-bottom: .5em
}

main .flow {
    padding: 4.2857142857vw 5.3571428571vw 7.1428571429vw
}

main .flow h2 {
    position: relative;
    margin-bottom: 3.8571428571vw;
    color: #f77b00;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 2.2857142857vw
}

main .flow h2:before {
    position: absolute;
    top: 50%;
    left: 50%;
    content: "FLOW";
    color: #f77b00;
    font-size: 10vw;
    letter-spacing: .14em;
    opacity: .21;
    transform: translate(-50%, -50%)
}

main .flow .inner {
    background: #fff6ea
}

main .flow .inner ul {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: flex-start;
    padding: 3.2142857143vw 1.4285714286vw 5.3571428571vw
}

main .flow .inner ul li {
    width: 17.7857142857vw;
    text-align: center
}

main .flow .inner ul li .num {
    margin-bottom: 0.7142857143vw;
    color: #f77b00;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 1.2142857143vw;
    font-weight: bold;
    line-height: 1
}

main .flow .inner ul li .num span {
    display: block;
    font-size: 2.3571428571vw
}

main .flow .inner ul li .content {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    width: 100%;
    min-height: 23.0714285714vw;
    border-radius: 0.7142857143vw;
    background: #f77b00
}

main .flow .inner ul li .content p {
    color: #fff;
    font-size: 1.7142857143vw;
    font-weight: bold;
    line-height: 1.5
}

main .flow .inner ul li .content span {
    display: block;
    font-size: 1vw
}

main .flow .inner ul li+li {
    position: relative;
    margin-left: 5.2857142857vw
}

main .flow .inner ul li+li:before {
    position: absolute;
    top: 50%;
    left: -3.5vw;
    content: "";
    display: block;
    width: 1.7142857143vw;
    height: 2vw;
    background: center no-repeat url("../img/flow_arrow.png");
    background-size: cover
}

main .form {
    padding: 7.1428571429vw 5.3571428571vw;
    background: #f2a939
}

main .form h2 {
    position: relative;
    margin-bottom: 2.7142857143vw;
    color: #fff;
    font-size: 2.5714285714vw
}

main .form h2:before {
    position: absolute;
    top: 50%;
    left: 50%;
    content: "FORM";
    color: #fff;
    font-family: din-2014, sans-serif;
    font-style: normal;
    font-size: 10vw;
    letter-spacing: .14em;
    opacity: .21;
    transform: translate(-50%, -50%)
}

main .form .inner {
    width: 89.2857142857vw;
    margin: 0 auto;
    padding: 4.2857142857vw 0;
    border-radius: 1.0714285714vw;
    background: #fff
}

main .form .inner form {
    width: 58.9285714286vw;
    margin: 0 auto
}

main .form .inner form dl,
main .form .inner form dt,
main .form .inner form dd input {
    width: 100%;
    font-size: 1.2857142857vw
}

main .form .inner form dl+dl {
    margin-top: 2.2857142857vw
}

main .form .inner form dt {
    margin-bottom: 0.4285714286vw;
    font-weight: bold
}

main .form .inner form dt span {
    display: inline-flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    width: 3.4285714286vw;
    height: 1.4285714286vw;
    margin-left: 0.6428571429vw;
    color: #fff;
    font-size: 1vw;
    border-radius: 0.2857142857vw;
    background: #d02828;
    transform: translateY(-0.1428571429vw)
}

main .form .inner form dt .error-message {
    display: inline-block;
    margin-left: 1.4285714286vw;
    color: #d02828
}

main .form .inner form dt .formError+.formError {
    display: none !important
}

main .form .inner form dd input {
    width: 100%;
    padding: 0.8928571429vw;
    font-weight: normal;
    box-sizing: border-box;
    border: 0.1428571429vw solid #f2a939;
    border-radius: 0.6428571429vw;
    outline: none
}

main .form .inner form dd.select {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: center
}

main .form .inner form dd.select .wrapper_select {
    position: relative;
    width: 11.9285714286vw
}

main .form .inner form dd.select .wrapper_select:after {
    position: absolute;
    top: 50%;
    right: 0.7142857143vw;
    content: "";
    display: block;
    width: 1.2142857143vw;
    height: 1.0714285714vw;
    background: center no-repeat url("../img/select_icon.png");
    background-size: cover;
    transform: translateY(-50%);
    pointer-events: none
}

main .form .inner form dd.select .wrapper_select select {
    display: block;
    width: 100%;
    padding: 0.8928571429vw;
    font-size: 1.2857142857vw;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-sizing: border-box;
    border: 0.1428571429vw solid #f2a939;
    border-radius: 0.6428571429vw;
    outline: none;
    background: rgba(0, 0, 0, 0);
    cursor: pointer
}

main .form .inner form dd.select .wrapper_select:nth-last-of-type(-n+2) {
    width: 7.2142857143vw
}

main .form .inner form dd.select p {
    display: block;
    margin: 0 1.0714285714vw;
    font-weight: bold
}

main .form .inner form dd.radio {
    padding-left: 1.9285714286vw
}

main .form .inner form dd.radio>div {
    display: inline-block
}

main .form .inner form dd.radio>div+div {
    margin-left: 2.4285714286vw
}

main .form .inner form dd.radio label {
    position: relative;
    cursor: pointer;
    padding-left: 2.1428571429vw
}

main .form .inner form dd.radio label:before,
main .form .inner form dd.radio label:after {
    content: "";
    display: block;
    border-radius: 50%;
    position: absolute;
    transform: translateY(-50%);
    top: 50%
}

main .form .inner form dd.radio label:before {
    width: 2.6428571429vw;
    height: 2.6428571429vw;
    left: -0.7142857143vw;
    border: 0.1428571429vw solid #f2a939;
    border-radius: 50%;
    box-sizing: border-box
}

main .form .inner form dd.radio label:after {
    width: 1.5vw;
    height: 1.5vw;
    left: -0.1428571429vw;
    border-radius: 50%;
    opacity: 0;
    background-color: #f2a939
}

main .form .inner form dd.radio input:checked+label::after {
    opacity: 1
}

main .form .inner form dd.radio .visually_hidden {
    position: absolute;
    white-space: nowrap;
    border: 0;
    clip: rect(0 0 0 0);
    -webkit-clip-path: inset(50%);
    clip-path: inset(50%);
    overflow: hidden;
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0
}

main .form .inner form input[type=submit] {
    display: block;
    width: 20vw;
    height: 5.4285714286vw;
    margin: 2.8571428571vw auto 0;
    color: #fff;
    font-size: 1.2857142857vw;
    font-weight: bold;
    border: none;
    border-radius: 0.6428571429vw;
    outline: none;
    background: #d02828
}

main .form.confirm,
main .form.complete {
    min-height: 100vh;
    padding: 1.9285714286vw 5.3571428571vw 5vw
}

main .form.confirm h1,
main .form.complete h1 {
    margin-bottom: 1.9285714286vw;
    color: #fff;
    font-size: 1.0714285714vw;
    line-height: 1
}

main .form.confirm h1 svg,
main .form.complete h1 svg {
    max-width: 383px;
    width: 100%
}

main .form.confirm h1 span,
main .form.complete h1 span {
    display: block;
    margin-top: 0.3571428571vw;
    font-size: 1.7857142857vw
}

main .form.confirm .inner,
main .form.complete .inner {
    padding: 5.3571428571vw 0 5vw
}

main .form.confirm h2,
main .form.complete h2 {
    margin-bottom: 0.4285714286vw;
    color: #363636;
    z-index: 1
}

main .form.confirm h2:before,
main .form.complete h2:before {
    content: "CHECK";
    color: #f2a939;
    z-index: -1
}

main .form.confirm .text,
main .form.complete .text {
    position: relative;
    margin-bottom: 4.2857142857vw;
    font-size: 1.1428571429vw;
    font-weight: bold;
    text-align: center;
    z-index: 1
}

main .form.confirm .wrapper_btn,
main .form.complete .wrapper_btn {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center
}

main .form.confirm input[type=button],
main .form.confirm .btn,
main .form.complete input[type=button],
main .form.complete .btn {
    display: block;
    width: 20vw;
    height: 5.4285714286vw;
    margin: 0 1.4285714286vw 0 0;
    color: #fff;
    font-size: 1.2857142857vw;
    font-weight: bold;
    border: none;
    border-radius: 0.6428571429vw;
    outline: none;
    background: #bebebe
}

main .form.confirm input[type=submit],
main .form.complete input[type=submit] {
    margin: 0 !important
}

main .form.confirm .btn,
main .form.complete .btn {
    display: flex;
    flex-flow: row nowrap;
    justify-content: center;
    align-items: center;
    background: #d02828
}

main .form.confirm .formTable {
    width: 50.2857142857vw;
    margin: 0 auto 4.2857142857vw
}

main .form.confirm .formTable tr:last-of-type {
    display: none
}

main .form.confirm .formTable th,
main .form.confirm .formTable td {
    padding: 1.3571428571vw 0.7142857143vw;
    font-size: 1.2857142857vw;
    font-weight: bold;
    border-bottom: 0.0714285714vw solid #ebebeb
}

main .form.confirm .formTable th {
    width: 14.7142857143vw
}

main .form.confirm .formTable td {
    width: 35.5714285714vw
}

main .form.complete .inner {
    padding: 18.0714285714vw 0 11.8571428571vw
}

main .form.complete h2:before {
    content: "THANK YOU";
    width: 100%
}

.mv_logo {
    width: 180px;
}
.movie {
    max-width: 1000px;
    margin: 0 auto;
    padding: 60px 20px;
}

.movie video {
    width: 100%;
}

@media screen and (max-width: 767px) {
    body {
        max-width: 100vw;
        font-size: 1.1428571429vw;
        font-feature-settings: "palt"
    }

    header {
        top: unset;
        bottom: 0;
        left: 0;
        max-width: unset;
        width: 100%;
        height: 17.3333333333vw;
        border-radius: 0 0 0 0
    }

    header .wrapper_tel {
        width: 47.2vw;
        margin-right: 2.6666666667vw;
        font-size: 5.3333333333vw
    }

    header .wrapper_tel span {
        margin-bottom: 1.0666666667vw;
        font-size: 3.2vw
    }

    header .wrapper_tel p {
        font-size: 5.3333333333vw
    }

    header .wrapper_tel a img {
        max-width: none;
        width: 5.6vw;
        margin-right: 0.8vw
    }

    header .link_inquiry {
        color: #fff;
        width: 26.4vw;
        max-height: 80px;
        height: 10.4vw;
        font-size: 2.6666666667vw
    }

    footer {
        margin-bottom: 17.3333333333vw
    }

    footer small {
        height: 6.6666666667vw;
        font-size: 2.6666666667vw
    }

    main {
        width: 100%;
        overflow: hidden
    }

    main h2 {
        font-size: 2.3571428571vw
    }

    main .mv {
        width: 100%;
        height: 200vw;
        margin-bottom: 180.5333333333vw;
        padding: 4vw 3.7333333333vw 0;
        overflow: visible
    }

    main .mv h1 {
        margin-bottom: 7.4666666667vw;
        font-size: 2.9333333333vw
    }

    main .mv h1 span {
        margin-top: 1.0666666667vw;
        font-size: 4.2666666667vw
    }

    main .mv .wrapper_detail {
        margin-left: 2.6666666667vw
    }

    main .mv .wrapper_detail .sb {
        width: 87.7333333333vw;
        height: 12.5333333333vw;
        margin-right: 0;
        margin-bottom: 6.1333333333vw;
        font-size: 5.3333333333vw;
        border-radius: 1.3333333333vw
    }

    main .mv .wrapper_detail .sb:after {
        left: 18.6666666667vw;
        width: 9.6vw;
        height: 16.8vw
    }

    main .mv .wrapper_detail .mv_img_small {
        width: 86.9333333333vw;
        height: 48.2666666667vw;
        margin-bottom: 3.2vw;
        border-radius: 6.4vw;
        border: 1.6vw solid #fff;
        background: center no-repeat url("../img/client_img/mv_img_small_sp.jpg");
        background-size: cover
    }

    main .mv .wrapper_detail .mv_copy {
        position: relative;
        display: flex;
        flex-flow: column nowrap;
        justify-content: flex-start;
        align-items: flex-start;
        margin-bottom: 0
    }

    main .mv .wrapper_detail .mv_copy>div:last-of-type {
        margin-left: 0
    }

    main .mv .wrapper_detail .mv_copy .large {
        margin-bottom: 2.4vw;
        font-size: 6.9333333333vw;
        line-height: 1.461538462;
        letter-spacing: -0.01em
    }

    main .mv .wrapper_detail .mv_copy .small {
        width: 86.9333333333vw;
        font-size: 3.7333333333vw;
        line-height: 1.714285714
    }

    main .mv .wrapper_detail .mv_detail {
        position: absolute;
        top: 194.6666666667vw;
        left: -3.7333333333vw;
        width: 100vw;
        padding: 44.8vw 0 10.6666666667vw;
        background: #ffbc55
    }

    main .mv .wrapper_detail .mv_detail .copy {
        margin-bottom: 3.7333333333vw;
        font-size: 3.7333333333vw
    }

    main .mv .wrapper_detail .mv_detail .copy:before {
        bottom: -0.5333333333vw;
        left: 3.7333333333vw;
        width: 9.7813333333vw;
        height: 7.9226666667vw;
        background: center no-repeat url("../img/mv_title_deco01_sp.png");
        background-size: cover
    }

    main .mv .wrapper_detail .mv_detail .copy:after {
        right: 3.7333333333vw;
        bottom: -2.1333333333vw;
        width: 11.16vw;
        height: 10.6666666667vw;
        background: center no-repeat url("../img/mv_title_deco02_sp.png");
        background-size: cover
    }

    main .mv .wrapper_detail .mv_detail .copy span {
        font-size: 5.8666666667vw;
        line-height: 1.227272727
    }

    main .mv .wrapper_detail .mv_detail ul {
        width: 81.1493333333vw;
        margin: 0 auto
    }

    main .mv .wrapper_detail .mv_detail ul li {
        width: 39.2vw;
        height: 21.8666666667vw;
        border-radius: 1.6vw
    }

    main .mv .wrapper_detail .mv_detail ul li .ttl {
        margin-bottom: 1.3333333333vw;
        font-size: 3.7333333333vw
    }

    main .mv .wrapper_detail .mv_detail ul li .text {
        font-size: 3.2vw;
        line-height: 1.5
    }

    main .mv .wrapper_detail .mv_detail ul li:nth-last-child(-n+6) {
        margin-top: 2.6666666667vw
    }

    main .mv .mv_img_large {
        right: 7.2vw;
        bottom: -39.0666666667vw;
        width: 78.1333333333vw;
        border: 1.6vw solid #fff
    }

    main .future {
        padding-top: 22.9333333333vw
    }

    main .future:before {
        top: 9.0666666667vw;
        left: 0;
        font-size: 17.6vw
    }

    main .future .sec01 {
        margin-bottom: 2.6666666667vw
    }

    main .future .sec01 .text {
        width: 93.3333333333vw;
        padding: 11.4666666667vw 0 15.7333333333vw 5.3333333333vw
    }

    main .future .sec01 .text h2 {
        margin-bottom: 5.6vw;
        font-size: 6.9333333333vw
    }

    main .future .sec01 .text p {
        width: 77.3333333333vw;
        font-size: 3.2vw;
        line-height: 2.083333333
    }

    main .future .sec01 .future_img {
        position: relative;
        top: -10.6666666667vw;
        right: -6.6666666667vw;
        display: block;
        width: 93.3333333333vw
    }

    main .future .sec02 {
        display: none
    }

    main .human {
        margin-bottom: 0;
        z-index: 0
    }

    main .human:before {
        top: -8vw;
        right: unset;
        left: 0;
        font-size: 18.9333333333vw
    }

    main .human:after {
        position: absolute;
        right: 0;
        bottom: 14.1333333333vw;
        content: "";
        display: block;
        width: 29.0666666667vw;
        height: 10.9333333333vw;
        background: #dec8a5
    }

    main .human .sec01 .text {
        width: 93.3333333333vw;
        padding: 7.7333333333vw 13.0666666667vw 6.1333333333vw 4vw
    }

    main .human .sec01 .text h2 {
        position: relative;
        z-index: 1;
        font-size: 6.9333333333vw
    }

    main .human .sec02 {
        margin-top: 0;
        padding: 0
    }

    main .human .sec02 .inner {
        padding: 0
    }

    main .human .sec02 .text {
        position: relative;
        width: 92vw;
        margin: -13.3333333333vw auto 0;
        z-index: 1
    }

    main .human .sec02 .text .num {
        margin-bottom: -1.3333333333vw;
        font-size: 27.2vw
    }

    main .human .sec02 .text h3 {
        margin-bottom: 2.6666666667vw;
        font-size: 6.4vw;
        line-height: 1.416666667
    }

    main .human .sec02 .text p {
        font-size: 3.2vw;
        line-height: 2
    }

    main .human .sec02 .img {
        position: relative;
        top: unset;
        right: unset;
        width: 100%
    }

    main .human .sec02 .article01,
    main .human .sec02 .article02 {
        margin-bottom: 7.7333333333vw
    }

    main .human .sec02 .article02 .text {
        position: relative;
        top: unset;
        right: unset
    }

    main .human .sec02 .article02 .img {
        position: relative;
        top: unset;
        right: unset;
        transform: unset
    }

    main .human .sec02 .article03 {
        margin-bottom: 0;
        padding-bottom: 29.8666666667vw
    }

    main .unfitted {
        padding: 15.7333333333vw 0 10.6666666667vw
    }

    main .unfitted:before {
        top: -14.1333333333vw;
        width: 59.4666666667vw;
        height: 14.1333333333vw
    }

    main .unfitted:after {
        top: 8.2666666667vw;
        font-size: 14.9333333333vw;
        opacity: .1
    }

    main .unfitted h2 {
        margin-left: 6.4vw;
        margin-bottom: 8vw;
        font-size: 6.9333333333vw
    }

    main .unfitted ul {
        flex-flow: column nowrap;
        justify-content: center;
        align-items: center;
        padding: 0;
        background: rgba(0, 0, 0, 0)
    }

    main .unfitted ul li {
        width: 86.1333333333vw
    }

    main .unfitted ul li .num {
        width: 13.3333333333vw;
        height: 13.3333333333vw;
        color: #fff;
        font-size: 6.4vw;
        border-radius: 1.3333333333vw
    }

    main .unfitted ul li .num:after {
        top: 0.8vw;
        width: 5.0666666667vw;
        height: 14.9333333333vw
    }

    main .unfitted ul li .wrapper_text {
        width: 82.9333333333vw;
        min-height: unset;
        margin-top: -2.6666666667vw;
        margin-left: 3.2vw;
        padding: 7.2vw 5.3333333333vw 9.3333333333vw;
        border-radius: 2.1333333333vw
    }

    main .unfitted ul li .wrapper_text h3 {
        margin-bottom: 2.6666666667vw;
        font-size: 5.3333333333vw
    }

    main .unfitted ul li .wrapper_text p {
        font-size: 3.7333333333vw;
        line-height: 1.714285714
    }

    main .unfitted ul li:nth-last-child(-n+3) {
        margin-top: 5.3333333333vw
    }

    main .one_days {
        padding: 10.6666666667vw 0
    }

    main .one_days h2 {
        position: relative;
        margin-bottom: 13.0666666667vw;
        padding-left: 4vw;
        color: #f77b00;
        font-size: 6.9333333333vw;
        text-align: left
    }

    main .one_days h2:before {
        top: unset;
        bottom: 0.5333333333vw;
        left: 0;
        font-size: 12.5333333333vw;
        transform: unset;
        opacity: .1
    }

    main .one_days article {
        display: block;
        margin-top: 5.3333333333vw
    }

    main .one_days article:before {
        top: unset;
        bottom: -5.3333333333vw;
        left: 6.9333333333vw;
        width: 0.2666666667vw;
        height: 140%;
        background: #f77b1d !important;
        transform: unset !important
    }

    main .one_days article figure {
        position: absolute;
        top: 6.9333333333vw;
        right: 0;
        left: unset;
        width: 41.0666666667vw;
        height: 24.2666666667vw;
        z-index: 0
    }

    main .one_days article figure img {
        transform: translateX(-4vw)
    }

    main .one_days article .content {
        display: block;
        width: 100%;
        margin: 0;
        padding: 6.9333333333vw 0 4.5333333333vw 12.8vw;
        border: none;
        background: #fff6ea
    }

    main .one_days article .content .time {
        position: relative;
        font-size: 16vw;
        z-index: 2
    }

    main .one_days article .content .time:before {
        position: absolute;
        top: 50%;
        left: -8.5333333333vw;
        content: "";
        display: block;
        width: 5.6vw;
        height: 5.6vw;
        background: center no-repeat url("../img/time_icon.png");
        background-size: cover;
        transform: translateY(-50%)
    }

    main .one_days article .content .detail {
        margin-top: 5.3333333333vw;
        margin-left: 0
    }

    main .one_days article .content .detail h3 {
        margin-bottom: 5.3333333333vw;
        font-size: 5.3333333333vw
    }

    main .one_days article .content .detail p {
        width: 75.7333333333vw;
        font-size: 3.7333333333vw
    }

    main .one_days article:first-of-type {
        margin-top: 0
    }

    main .one_days article:first-of-type:before {
        height: 88vw
    }

    main .one_days article:nth-of-type(2n) .content {
        display: block;
        padding: 6.9333333333vw 0 4.5333333333vw 12.8vw;
        border: none
    }

    main .one_days article:nth-of-type(2n) .content .detail {
        margin-left: 0;
        margin-right: 0
    }

    main .one_days article:last-of-type:before {
        top: unset;
        bottom: -10.6666666667vw;
        height: 140%
    }

    main .one_days article:last-of-type:after {
        display: none
    }

    main .description {
        padding: 12.8vw 0 10.6666666667vw;
        background: #f2a939
    }

    main .description:before {
        display: none
    }

    main .description h2 {
        margin-bottom: 5.3333333333vw;
        font-size: 6.9333333333vw
    }

    main .description h2:before {
        top: unset;
        bottom: 0;
        font-size: 12.5333333333vw;
        letter-spacing: .14em;
        transform: translate(-50%, 0);
        opacity: .1
    }

    main .description .content {
        width: 92vw;
        margin: 0 auto;
        padding: 2.6666666667vw 8vw 8vw;
        border-radius: 1.3333333333vw
    }

    main .description .content dl {
        flex-flow: column nowrap;
        justify-content: flex-start;
        align-items: flex-start;
        font-size: 4.8vw;
        line-height: 1.5
    }

    main .description .content dl dt {
        width: 100%;
        padding: 5.3333333333vw 0 0.2857142857vw;
        color: #f77b00;
        border-bottom: 0.2666666667vw solid #f77b00
    }

    main .description .content dl dd {
        width: 100%;
        padding: 2.6666666667vw 0 0;
        font-size: 3.7333333333vw;
        border-bottom: none
    }

    main .flow {
        padding: 8vw 0 10.6666666667vw
    }

    main .flow h2 {
        margin-bottom: 9.8666666667vw;
        font-size: 6.6666666667vw
    }

    main .flow h2:before {
        top: unset;
        bottom: -2.6666666667vw;
        left: 50%;
        font-size: 12.5333333333vw;
        transform: translate(-50%, 0);
        opacity: .1
    }

    main .flow .inner {
        background: rgba(0, 0, 0, 0)
    }

    main .flow .inner ul {
        flex-flow: column nowrap;
        justify-content: center;
        align-items: center;
        padding: 0
    }

    main .flow .inner ul li {
        width: 64.8vw
    }

    main .flow .inner ul li .num {
        width: 100%;
        margin-bottom: 0.7142857143vw;
        font-size: 4.5333333333vw;
        text-align: left
    }

    main .flow .inner ul li .num span {
        display: inline-block;
        margin-left: 1.3333333333vw;
        font-size: 8.8vw;
        transform: translateY(1.0666666667vw)
    }

    main .flow .inner ul li .content {
        min-height: 35.2vw;
        border-radius: 1.0666666667vw
    }

    main .flow .inner ul li .content p {
        font-size: 4.8vw
    }

    main .flow .inner ul li .content span {
        font-size: 3.2vw
    }

    main .flow .inner ul li+li {
        position: relative;
        margin-top: 5.3333333333vw;
        margin-left: 0
    }

    main .flow .inner ul li+li:before {
        top: -2.1333333333vw;
        left: 50%;
        width: 6.4vw;
        height: 7.4666666667vw;
        transform: translateX(-50%) rotate(90deg)
    }

    main .form {
        padding: 12.8vw 0 10.6666666667vw
    }

    main .form h2 {
        margin-bottom: 5.0666666667vw;
        font-size: 6.9333333333vw
    }

    main .form h2:before {
        top: 1.8666666667vw;
        font-size: 12.5333333333vw
    }

    main .form .inner {
        width: 92vw;
        padding: 8vw 0 10.6666666667vw;
        border-radius: 1.3333333333vw
    }

    main .form .inner form {
        width: 84.2666666667vw
    }

    main .form .inner form dl,
    main .form .inner form dt,
    main .form .inner form dd input {
        font-size: 4.8vw
    }

    main .form .inner form dl+dl {
        margin-top: 5.3333333333vw
    }

    main .form .inner form dt {
        margin-bottom: 0.5333333333vw
    }

    main .form .inner form dt span {
        width: 12.8vw;
        height: 5.3333333333vw;
        margin-left: 2.4vw;
        font-size: 3.7333333333vw;
        border-radius: 1.0666666667vw;
        transform: translateY(-0.5333333333vw)
    }

    main .form .inner form dt .error-message {
        margin-left: 0
    }

    main .form .inner form dd input {
        padding: 2.4vw;
        border: 0.5333333333vw solid #f2a939;
        border-radius: 2.1333333333vw
    }

    main .form .inner form dd.select .wrapper_select {
        width: 26.9333333333vw
    }

    main .form .inner form dd.select .wrapper_select:after {
        right: 2.6666666667vw;
        width: 2.4vw;
        height: 2.1333333333vw
    }

    main .form .inner form dd.select .wrapper_select select {
        padding: 2.4vw;
        font-size: 4.8vw;
        border: 0.5333333333vw solid #f2a939;
        border-radius: 2.1333333333vw
    }

    main .form .inner form dd.select .wrapper_select:nth-last-of-type(-n+2) {
        width: 18.1333333333vw
    }

    main .form .inner form dd.select p {
        margin: 0 1.3333333333vw
    }

    main .form .inner form dd.radio {
        padding-left: 6.6666666667vw
    }

    main .form .inner form dd.radio>div+div {
        margin-left: 8vw
    }

    main .form .inner form dd.radio label {
        padding-left: 11.2vw
    }

    main .form .inner form dd.radio label:before {
        width: 9.6vw;
        height: 9.6vw;
        left: 0;
        border: 0.5333333333vw solid #f2a939;
        border-radius: 50%;
        box-sizing: border-box
    }

    main .form .inner form dd.radio label:after {
        width: 5.6vw;
        height: 5.6vw;
        left: 2vw
    }

    main .form .inner form input[type=submit] {
        width: 49.8666666667vw;
        height: 18.1333333333vw;
        margin: 10.6666666667vw auto 0;
        font-size: 4.8vw;
        border-radius: 1.3333333333vw
    }

    main .form.confirm,
    main .form.complete {
        padding: 7.2vw 4vw 18.6666666667vw
    }

    main .form.confirm h1,
    main .form.complete h1 {
        margin-bottom: 7.4666666667vw;
        font-size: 2.9333333333vw
    }

    main .form.confirm h1 span,
    main .form.complete h1 span {
        margin-top: 1.0666666667vw;
        font-size: 4.2666666667vw
    }

    main .form.confirm .inner,
    main .form.complete .inner {
        padding: 20vw 0 18.6666666667vw
    }

    main .form.confirm h2,
    main .form.complete h2 {
        margin-bottom: 1.6vw;
        z-index: 1
    }

    main .form.confirm h2:before,
    main .form.complete h2:before {
        font-size: 12.5333333333vw;
        z-index: -1
    }

    main .form.confirm .text,
    main .form.complete .text {
        margin-bottom: 16vw;
        font-size: 4.2666666667vw
    }

    main .form.confirm input[type=button],
    main .form.confirm .btn,
    main .form.complete input[type=button],
    main .form.complete .btn {
        width: 49.8666666667vw;
        height: 18.1333333333vw;
        margin: 0 5.3333333333vw 0 0;
        font-size: 4.8vw;
        border-radius: 1.3333333333vw
    }

    main .form.confirm .formTable {
        width: 100%;
        margin: 0 auto 16vw
    }

    main .form.confirm .formTable th,
    main .form.confirm .formTable td {
        padding: 5.0666666667vw 1.3333333333vw;
        font-size: 3.2vw;
        border-bottom: 0.5333333333vw solid #ebebeb
    }

    main .form.confirm .formTable th {
        width: 31.7460317%
    }

    main .form.confirm .formTable td {
        width: 68.2539683%
    }

    main .form.complete .inner {
        padding: 20vw 0 18.6666666667vw
    }

    main .form.complete .btn {
        margin: 0 !important
    }

    .movie {
        padding: 0px 20px 40px;
    }
}